1004749546@qq.com 4 lat temu
rodzic
commit
07672d9ab1

+ 31 - 9
package-lock.json

@@ -1148,6 +1148,22 @@
       "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==",
       "dev": true
     },
+    "@simonwep/pickr": {
+      "version": "1.7.4",
+      "resolved": "https://registry.npmjs.org/@simonwep/pickr/-/pickr-1.7.4.tgz",
+      "integrity": "sha512-fq7jgKJT21uWGC1mARBHvvd1JYlEf93o7SuVOB4Lr0x/2UPuNC9Oe9n/GzVeg4oVtqMDfh1wIEJpsdOJEZb+3g==",
+      "requires": {
+        "core-js": "^3.6.5",
+        "nanopop": "^2.1.0"
+      },
+      "dependencies": {
+        "core-js": {
+          "version": "3.8.1",
+          "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.1.tgz",
+          "integrity": "sha512-9Id2xHY1W7m8hCl8NkhQn5CufmF/WuR30BTRewvCXc1aZd3kMECwNZ69ndLbekKfakw9Rf2Xyc+QR6E7Gg+obg=="
+        }
+      }
+    },
     "@soda/friendly-errors-webpack-plugin": {
       "version": "1.7.1",
       "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.1.tgz",
@@ -2313,12 +2329,13 @@
       "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
     },
     "ant-design-vue": {
-      "version": "1.5.2",
-      "resolved": "https://registry.npmjs.org/ant-design-vue/-/ant-design-vue-1.5.2.tgz",
-      "integrity": "sha512-DmlOl+ld4hSQdEG1c2wAV+v9/Bl2aG+wBEnd1GJYV0LeOXaSrBGiIkZrmUrTrUL92yBdFO+OF25aFNb0UFMZOA==",
+      "version": "1.7.2",
+      "resolved": "https://registry.npmjs.org/ant-design-vue/-/ant-design-vue-1.7.2.tgz",
+      "integrity": "sha512-iVskTSG62OSiptyGQkvyhoeLlLMiqKtAOTcWZ7MmsMrj38h0TCpGtqSYS4/fwq4yYgyzloYSteBo8U8TrV99RA==",
       "requires": {
         "@ant-design/icons": "^2.1.1",
         "@ant-design/icons-vue": "^2.0.0",
+        "@simonwep/pickr": "~1.7.0",
         "add-dom-event-listener": "^1.0.2",
         "array-tree-filter": "^2.1.0",
         "async-validator": "^3.0.3",
@@ -2571,9 +2588,9 @@
       "dev": true
     },
     "async-validator": {
-      "version": "3.3.0",
-      "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-3.3.0.tgz",
-      "integrity": "sha512-cAHGD9EL8aCqWXjnb44q94MWiDFzUo1tMhvLb2WzcpWqGiKugsjWG9cvl+jPgkPca7asNbsBU3fa0cwkI/P+Xg=="
+      "version": "3.5.1",
+      "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-3.5.1.tgz",
+      "integrity": "sha512-DDmKA7sdSAJtTVeNZHrnr2yojfFaoeW8MfQN8CeuXg8DDQHTqKk9Fdv38dSvnesHoO8MUwMI2HphOeSyIF+wmQ=="
     },
     "asynckit": {
       "version": "0.4.0",
@@ -8990,9 +9007,9 @@
       "integrity": "sha512-wW/SXnYJkTjs++tVK5b6kVITZpAZPtUrt9SF80vvxGiF/Oywal+COk1jlRkiVq15RFNEQKQY31TkV24/1T5cVg=="
     },
     "is-negative-zero": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz",
-      "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE="
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
+      "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w=="
     },
     "is-number": {
       "version": "3.0.0",
@@ -11886,6 +11903,11 @@
         }
       }
     },
+    "nanopop": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/nanopop/-/nanopop-2.1.0.tgz",
+      "integrity": "sha512-jGTwpFRexSH+fxappnGQtN9dspgE2ipa1aOjtR24igG0pv6JCxImIAmrLRHX+zUF5+1wtsFVbKyfP51kIGAVNw=="
+    },
     "natural-compare": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",

+ 1 - 1
package.json

@@ -15,7 +15,7 @@
   },
   "dependencies": {
     "@antv/data-set": "^0.10.2",
-    "ant-design-vue": "^1.5.2",
+    "ant-design-vue": "^1.6.5",
     "axios": "^0.19.0",
     "core-js": "2.6.9",
     "echarts": "^4.9.0",

+ 28 - 23
src/api/power-role.js

@@ -1,52 +1,57 @@
 import { axios } from '@/utils/request'
 
-// 分页查询角色
+// 获取列表数据
 export const getPowerRoleList = params => {
-  const url = `scrole/queryLike/${params.pageNo}/${params.pageSize}`
+  const url = `/yyrole/queryLike/${params.pageNo}/${params.pageSize}`
   delete params.pageNo
   delete params.pageSize
-  return axios({
+  return axios.request({
     url: url,
     data: params,
     method: 'POST'
   })
 }
-// 保存角色
-export const saveRolePower = params => {
-  return axios({
-    url: 'scrole/save',
-    data: params,
-    method: 'POST'
-  })
-}
-// flag 0:禁用 1:启用  启禁用角色
+
+// 改变权限状态接口 flag 0:禁用 1:启用
 export const updateEnableStatus = params => {
-  return axios({
-    url: `scrole/enable/${params.id}/${params.flag}`,
+  return axios.request({
+    url: `/yyrole/enable/${params.id}/${params.flag}`,
     data: {},
     method: 'get'
   })
 }
-// 删除角色
+
+// 删除用户接口
 export const delectRolePower = params => {
-  return axios({
-    url: `scrole/delete/${params.id}`,
+  return axios.request({
+    url: `/yyrole/delete/${params.id}`,
     data: {},
     method: 'get'
   })
 }
-// 查询可用所有菜单
+
+// 新增/编辑保存接口
+export const saveRolePower = params => {
+  return axios.request({
+    url: '/yyrole/save',
+    data: params,
+    method: 'POST'
+  })
+}
+
+// 获取菜单树数据
 export const getMenuList = params => {
-  const url = `scrole/findAllMenu/${params.id}`
-  return axios({
+  const url = `/yyrole/findAllMenu/${params.id}`
+  return axios.request({
     url: url,
     method: 'get'
   })
 }
-// 保存角色菜单关系
+
+// 保存权限分配
 export const addMenuPower = params => {
-  const url = `scrole/saveRoleMenu`
-  return axios({
+  const url = `/yyrole/saveRoleMenu`
+  return axios.request({
     url: url,
     data: params,
     method: 'post'

+ 28 - 24
src/api/power-user.js

@@ -1,52 +1,56 @@
 import { axios } from '@/utils/request'
-
 // 重置密码
 export const resetPSD = params => {
-  return axios({
-    url: 'scuser/resetPwd',
+  return axios.request({
+    url: '/yyuser/resetPwd',
     data: params,
     method: 'POST'
   })
 }
-// 启用禁用
-export const updateEnableStatus = params => {
-  return axios({
-    url: `scuser/enable/${params.id}/${params.flag}`,
-    data: {},
-    method: 'get'
-  })
-}
-// 分页查询用户
+
+// 获取列表数据
 export const getPowerUserList = params => {
-  const url = `scuser/queryLike/${params.pageNo}/${params.pageSize}`
+  const url = `/yyuser/queryLike/${params.pageNo}/${params.pageSize}`
   delete params.pageNo
   delete params.pageSize
-  return axios({
+  return axios.request({
     url: url,
     data: params,
     method: 'POST'
   })
 }
+
+// 改变权限状态接口
+export const updateEnableStatus = params => {
+  return axios.request({
+    url: `/yyuser/enable/${params.id}/${params.flag}`,
+    data: {},
+    method: 'get'
+  })
+}
+
 // 删除用户接口
 export const delectUserPower = params => {
-  return axios({
-    url: `scuser/delete/${params.id}`,
+  return axios.request({
+    url: `/yyuser/delete/${params.id}`,
     data: {},
     method: 'get'
   })
 }
-// 查询所有角色
-export const getRoleList = params => {
-  return axios({
-    url: 'scrole/findAll',
+
+// 新增/编辑保存接口
+export const saveUserPower = params => {
+  return axios.request({
+    url: '/yyuser/save',
     data: params,
     method: 'POST'
   })
 }
-// 保存用户
-export const saveUserPower = params => {
-  return axios({
-    url: 'scuser/save',
+
+// 获取角色列表接口
+export const getRoleList = params => {
+  return axios.request({
+    url: '/yyrole/findAll',
     data: params,
     method: 'POST'
   })

+ 8 - 0
src/api/storeManagement.js

@@ -44,6 +44,14 @@ export const storeFindAll = params => {
     method: 'post'
   })
 }
+// 根据名称精确查询所有门店
+export const storeQueryAll = params => {
+  return axios.request({
+    url: '/store/query',
+    data: params,
+    method: 'post'
+  })
+}
 /**
  * 配件信息
  */

+ 8 - 0
src/api/supplierManagement.js

@@ -19,6 +19,14 @@ export const supplierFindAll = params => {
     method: 'post'
   })
 }
+// 根据供应商名称查询所有供应商
+export const supplierQueryAll = params => {
+  return axios.request({
+    url: '/supplier/query',
+    data: params,
+    method: 'post'
+  })
+}
 // 供应商编辑
 export const supplierEdit = params => {
   return axios.request({

+ 1 - 1
src/components/Table/index.js

@@ -159,7 +159,7 @@ export default {
           // console.log(r, 'rrrrrrrrrr')
           this.localPagination = this.showPagination && Object.assign({}, this.localPagination, {
             current: r.pageNo, // 返回结果中的当前分页数
-            total: r.count, // 返回结果中的总记录数
+            total: Number(r.count), // 返回结果中的总记录数
             showSizeChanger: this.showSizeChanger,
             pageSize: (pagination && pagination.pageSize) ||
               this.localPagination.pageSize

+ 2 - 2
src/utils/request.js

@@ -16,7 +16,7 @@ const err = (error) => {
   console.log(error.response.data.message, 'error')
   if (error.response) {
     const status = error.response.status
-    if ((status == 503 || status == 500 || status == 900) && window.location.pathname != '/user/login') {
+    if ((status == 503 || status == 500) && window.location.pathname != '/user/login') {
       notification.destroy()
       notification.error({
         message: '提示',
@@ -49,7 +49,7 @@ service.interceptors.request.use(config => {
 service.interceptors.response.use((response) => {
   console.log(response, 'response.data.status')
   if (window.location.pathname != '/user/login') {
-    if (response.data.status == '500') {
+    if (response.data.status == '500' || response.data.status == '900') {
       notification.destroy()
       notification.error({
         message: '提示',

+ 1 - 1
src/views/storehouseManagement/customerInfo/CustomerList.vue

@@ -78,7 +78,7 @@ export default {
         align: 'center',
         width: 150,
         customRender: (text, record, index) => {
-          return record.addrProvinceName + record.addrCityName + record.addrDistrictName + record.addrDetail
+          return record.row.addrProvinceName + record.row.addrCityName + record.row.addrDistrictName + record.row.addrDetail
         }
       }
       ],

+ 1 - 2
src/views/storehouseManagement/storeBind/StoreBindList.vue

@@ -70,7 +70,7 @@
       </s-table>
     </div>
     <!-- 绑定弹窗 -->
-    <store-bind-modal :openStoreBindModal="openStoreBindModal" :supplierList="supplierList" :storeList="storeList" @close="openStoreBindModal=false" @refresh="refresh"></store-bind-modal>
+    <store-bind-modal :openStoreBindModal="openStoreBindModal" @close="openStoreBindModal=false" @refresh="refresh"></store-bind-modal>
   </a-card>
 </template>
 
@@ -193,7 +193,6 @@ export default {
     // 查询
     refresh () {
       this.$refs.table.refresh(true)
-      this.getStoreList() // 刷新门店列表更新门店绑定标识
     },
     // 重置
     resetSearchForm () {

+ 73 - 46
src/views/storehouseManagement/storeBind/StoreBindModal.vue

@@ -14,10 +14,12 @@
             id="storeBindModal-supplierName"
             show-search
             allowClear
-            placeholder="请选择供应商"
+            placeholder="请输入供应商"
+            :show-arrow="false"
+            :filter-option="false"
             option-filter-prop="children"
-            v-model="form.supplierName"
-          >
+            @search="handleSupplierSearch"
+            v-model="form.supplierName">
             <a-select-option v-for="item in supplierList" :key="item.supplierSn" :value="item.supplierSn">
               {{ item.name }}
             </a-select-option>
@@ -28,12 +30,13 @@
             id="storeBindModal-storeName"
             show-search
             allowClear
-            placeholder="请选择关联客户"
-            option-filter-prop="children"
+            placeholder="请输入关联客户"
+            :show-arrow="false"
+            :filter-option="false"
             optionLabelProp="value"
+            @search="storeSearchRequest"
             @change="storeChange"
-            v-model="form.storeName"
-          >
+            v-model="form.storeName">
             <a-select-option :disabled="item.bindFlag=='BIND'" v-for="item in storeList" :key="item.name" :value="item.name">
               {{ item.name }}
               <span style="float: right;">{{ item.bindFlag=='BIND'?'已绑定':'未绑定' }}</span>
@@ -57,51 +60,75 @@
 </template>
 
 <script>
-import { supplierStoreBind } from '@/api/storeManagement.js'
+import {
+  supplierStoreBind,
+  storeQueryAll
+} from '@/api/storeManagement.js'
+import { supplierQueryAll } from '@/api/supplierManagement.js'
 export default {
   props: {
     openStoreBindModal: {
       type: Boolean,
       default: false
-    },
-    // 供应商列表
-    supplierList: {
-      type: Array,
-      default: function () {
-        return []
-      }
-    },
-    // 门店列表
-    storeList: {
-      type: Array,
-      default: function () {
-        return []
-      }
     }
   },
   data () {
     return {
       isshow: this.openStoreBindModal,
+      supplierList: [], // 供应商列表
+      storeList: [], // 门店列表
       form: {
         supplierName: undefined, // 供应商名称
         storeName: undefined, // 门店名称
         storeAddress: '' // 门店地址
       },
       rules: {
-        supplierName: [{ required: true, message: '请选择供应商', trigger: ['change', 'blur'] }],
-        storeName: [{ required: true, message: '请选择关联客户', trigger: ['change', 'blur'] }]
+        supplierName: [{
+          required: true,
+          message: '请选择供应商',
+          trigger: ['change', 'blur']
+        }],
+        storeName: [{
+          required: true,
+          message: '请选择关联客户',
+          trigger: ['change', 'blur']
+        }]
       }
     }
   },
-  computed: {
-  },
+  computed: {},
   methods: {
+    // 门店搜索查询
+    storeSearchRequest (val) {
+      if (val) {
+        storeQueryAll({
+          name: val
+        }).then(res => {
+          this.storeList = res.data || []
+        })
+      } else {
+        this.storeList = []
+      }
+    },
+    // 供应商搜索查询
+    handleSupplierSearch (val) {
+      if (val) {
+        supplierQueryAll({
+          name: val
+        }).then(res => {
+          this.supplierList = res.data || []
+        })
+      } else {
+        this.supplierList = []
+      }
+    },
     // 关联客户选择修改
     storeChange (val) {
       console.log(val, 'vvvvvvv')
       if (val) {
         const has = this.storeList.find(item => item.name == val)
-        this.form.storeAddress = has ? has.addrProvinceName + has.addrCityName + has.addrDistrictName + has.addrDetail : ''
+        this.form.storeAddress = has ? has.addrProvinceName + has.addrCityName + has.addrDistrictName + has.addrDetail
+          : ''
       }
     },
     // 提交
@@ -127,36 +154,36 @@ export default {
         }
       })
     },
-	  // 关闭弹窗
-	  cancel () {
-	    this.$refs['ruleForm'].resetFields()
-	    this.$emit('close')
-	  }
+    // 关闭弹窗
+    cancel () {
+      this.$refs['ruleForm'].resetFields()
+      this.$emit('close')
+    }
   },
   watch: {
-	  openStoreBindModal (newValue, oldValue) {
-	  		  this.isshow = newValue
-	  },
-	  isshow (val) {
-	    if (!val) {
-	      this.$emit('close')
-	    } else {
+    openStoreBindModal (newValue, oldValue) {
+      this.isshow = newValue
+    },
+    isshow (val) {
+      if (!val) {
+        this.$emit('close')
+      } else {
         setTimeout(() => {
           this.$refs['ruleForm'].resetFields()
         }, 100)
       }
-	  },
-	  settleId (newValue, oldValue) {
-	    if (newValue && this.isshow) {
-	       this.$refs.table.refresh(newValue)
-	    }
-	  }
+    },
+    settleId (newValue, oldValue) {
+      if (newValue && this.isshow) {
+        this.$refs.table.refresh(newValue)
+      }
+    }
   }
 }
 </script>
 
 <style scoped="scoped">
-  .submit-cont{
+  .submit-cont {
     padding-top: 50px;
   }
 </style>

+ 4 - 6
src/views/supplierManagement/Organization.vue

@@ -135,11 +135,8 @@ export default {
       this.$refs.ruleForm.validate(valid => {
         if (valid) {
           const formData = this.form
-          if(this.nowId) {
-            formData.id = this.nowId
-          } else {
-            formData.pid = this.nowPid
-          }
+          formData.id = this.nowId
+          formData.pid = this.nowPid
           saveAtorg(formData).then(res => {
             if (res.status == 200) {
               this.$message.success(res.message)
@@ -161,10 +158,11 @@ export default {
     delOrg (item) {
       const _this = this
       _this.nowId = item.id
+      const message = item.children && item.children.length ? '删除后子级将一起被删除,确认删除?' : '删除后原数据不可恢复,是否删除?'
       _this.$confirm({
         title: '提示',
         centered: true,
-        content: '删除后原数据不可恢复,是否删除?',
+        content: message,
         onOk () {
           delAtorg({ id: _this.nowId }).then(res => {
             if (res.status == 200) {

+ 4 - 2
src/views/supplierManagement/SupplierList.vue

@@ -45,6 +45,7 @@
           {{ item }}
           <strong v-if="index != record.codeNameArr.length-1">></strong>
         </span>
+        <span v-if="record.codeNameArr.length==0">--</span>
       </template>
       <!-- 负责人名称 -->
       <template slot="managerName" slot-scope="text, record">
@@ -101,8 +102,8 @@ export default {
               _item.no = no + i + 1
               // 重组组织机构
               let codeNameArr = []
-              if (_item.orgPCodeName) { //  父级组织机构名称
-                const orgPCodeNameArr = _item.orgPCodeName.split(',')
+              if (_item.orgParentNamePaths) { //  父级组织机构名称
+                const orgPCodeNameArr = _item.orgParentNamePaths.split(',')
                 codeNameArr = orgPCodeNameArr.splice(0, orgPCodeNameArr.length - 1)
               }
               if (_item.orgCodeName) { //  当前组织机构名称
@@ -126,6 +127,7 @@ export default {
       findOrgTree().then(res => {
         if (res.status == 200) {
           this.treeData = res.data
+          console.log(this.treeData, 'this.treeData')
         } else {
           this.treeData = []
         }

+ 1 - 1
src/views/supplierManagement/SupplierModal.vue

@@ -115,7 +115,7 @@ export default {
       this.$refs.ruleForm.validate(valid => {
         if (valid) {
           const formData = JSON.parse(JSON.stringify(this.form))
-          formData.id = this.storeId
+          formData.supplierSn = this.supplierSn
           formData.orgCodePaths = this.parentCodePaths
           formData.orgPid = this.orgPid
           supplierEdit(formData).then(res => {

+ 3 - 3
src/views/user/ResetPwd.vue

@@ -1,6 +1,6 @@
 <template>
   <a-row :gutter="24" class="change-pwd">
-    <a-col span="8" offset="8">
+    <a-col span="12" offset="5">
       <a-form @submit="handleSubmit" :form="form">
         <!-- 原始密码 -->
         <a-form-item
@@ -85,11 +85,11 @@ export default {
       formLayout: {
         labelCol: {
           xs: { span: 24 },
-          sm: { span: 6 }
+          sm: { span: 8 }
         },
         wrapperCol: {
           xs: { span: 24 },
-          sm: { span: 18 }
+          sm: { span: 16 }
         }
       },
       form: this.$form.createForm(this),