Selaa lähdekoodia

Merge branch 'develop_yh48-2' of http://git.chelingzhu.com/jianguan-web/qpls-md-html into develop_yh48-2

chenrui 8 kuukautta sitten
vanhempi
commit
de8124b7dc

+ 1 - 1
public/version.json

@@ -1,5 +1,5 @@
 {
   "message": "发现有新版本发布,确定更新系统?",
   "vendorJsVersion": "",
-  "version": 1728700858480
+  "version": 1728895035513
 }

+ 10 - 10
src/config/router.config.js

@@ -3377,7 +3377,7 @@ export const asyncRouterMap = [
               {
                 path: 'list',
                 name: 'promotionInfoList',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/promotionManagement/promotionInfo/list.vue'),
+                component: () => import(/* webpackChunkName: "promotionManagement" */ '@/views/promotionManagement/promotionInfo/list.vue'),
                 meta: {
                   title: '促销活动列表',
                   icon: 'contacts',
@@ -3388,7 +3388,7 @@ export const asyncRouterMap = [
               {
                 path: 'edit/:sn/:pageType',
                 name: 'promotionInfoEdit',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/promotionManagement/promotionInfo/edit.vue'),
+                component: () => import(/* webpackChunkName: "promotionManagement" */ '@/views/promotionManagement/promotionInfo/edit.vue'),
                 meta: {
                   title: '编辑促销',
                   icon: 'contacts',
@@ -3405,20 +3405,20 @@ export const asyncRouterMap = [
             component: BlankLayout,
             meta: {
               title: '促销产品',
-              icon: 'contacts'
-              // permission: 'M_promotionalProductsList'
+              icon: 'contacts',
+              permission: 'M_promotionalProduct'
             },
             hideChildrenInMenu: true,
             children: [
               {
                 path: 'list',
                 name: 'promotionalProductsList',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/promotionManagement/promotionalProducts/list.vue'),
+                component: () => import(/* webpackChunkName: "promotionManagement" */ '@/views/promotionManagement/promotionalProducts/list.vue'),
                 meta: {
                   title: '促销产品列表',
                   icon: 'contacts',
-                  hidden: true
-                  // permission: 'M_promotionalProductsList'
+                  hidden: true,
+                  permission: 'M_promotionalProductList'
                 }
               }
             ]
@@ -3438,7 +3438,7 @@ export const asyncRouterMap = [
               {
                 path: 'list',
                 name: 'couponDetailsList',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/promotionManagement/couponDetails/list.vue'),
+                component: () => import(/* webpackChunkName: "promotionManagement" */ '@/views/promotionManagement/couponDetails/list.vue'),
                 meta: {
                   title: '优惠券详情',
                   icon: 'contacts',
@@ -3476,7 +3476,7 @@ export const asyncRouterMap = [
               {
                 path: 'list',
                 name: 'storeManagementBindList',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/storeManagement/bind/list.vue'),
+                component: () => import(/* webpackChunkName: "storeManagement" */ '@/views/storeManagement/bind/list.vue'),
                 meta: {
                   title: '中心店/配送店绑定列表',
                   icon: 'link',
@@ -3501,7 +3501,7 @@ export const asyncRouterMap = [
               {
                 path: 'list',
                 name: 'storeManagementUserAuthList',
-                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/storeManagement/userAuthorization/list.vue'),
+                component: () => import(/* webpackChunkName: "storeManagement" */ '@/views/storeManagement/userAuthorization/list.vue'),
                 meta: {
                   title: '中心店用户授权列表',
                   icon: 'link',

+ 11 - 1
src/views/productManagement/productBrand/editModal.vue

@@ -67,6 +67,15 @@ export default {
     }
   },
   data () {
+    const checkName = (rule, value, callback) => {
+      if (value === '') {
+        callback(new Error('请输入产品品牌名称'))
+      } else if (value.indexOf('箭冠') >= 0 || value.indexOf('冠牌') >= 0 || value.indexOf('箭牌') >= 0) {
+        callback(new Error('产品品牌名称不能含有”箭冠“、”冠牌“、”箭牌“字段!'))
+      } else {
+        callback()
+      }
+    }
     return {
       spinning: false,
       isShow: this.openModal, //  是否打开弹框
@@ -79,7 +88,8 @@ export default {
       },
       rules: {
         brandName: [
-          { required: true, message: '请输入产品品牌名称', trigger: 'blur' }
+          { required: true, message: '请输入产品品牌名称', trigger: 'blur' },
+          { validator: checkName, trigger: ['change', 'blur'] }
         ]
       }
     }

+ 53 - 25
src/views/purchasingManagement/purchaseReturnOutSync/edit.vue

@@ -96,7 +96,7 @@
                   size="small"
                   type="link"
                   class="button-primary"
-                  @click="handleAdd(record)"
+                  @click="handleAddNew(record)"
                   :id="'purchaseReturnEdit-add-'+record.id"
                 >添加</a-button>
               </template>
@@ -343,17 +343,35 @@ export default {
       this.chooseQueryParam.productName = ''
       this.$refs.chooseTable.refresh(true)
     },
-    //  添加/编辑
-    handleAdd (row, isEdit) {
-      // 添加时退货数量字段名为returnQty,编辑时退货数量字段名为qty
-      if (!isEdit && !row.returnPrice) {
-        this.$message.warning('请输入退货价格')
+    // 添加
+    handleAddNew (record) {
+      const _this = this
+      if (record.returnQty === null || record.returnQty === undefined || Number(record.returnQty).toString().trim().length === 0) {
+        this.$message.warning('请输入退货数量')
         return
       }
-      if (!isEdit && !row.returnQty) {
-        this.$message.warning('请输入退货数量')
+      if (record.returnPrice === '' || record.returnPrice === null || record.returnPrice === undefined || Number(record.returnPrice).toString().trim().length === 0) {
+        this.$message.warning('请输入退货价格')
         return
       }
+      if (record.returnPrice === 0) {
+        this.$confirm({
+          title: '提示',
+          content: '退货单价为0,确定添加?',
+          centered: true,
+          onOk () {
+            _this.handleAdd(record)
+          },
+          onCancel () {
+            record.returnPrice = ''
+          }
+        })
+      } else {
+        _this.handleAdd(record)
+      }
+    },
+    //  添加/编辑
+    handleAdd (row, isEdit) {
       const params = {
         id: isEdit ? row.id : undefined,
         purchaseReturnSn: this.$route.params.sn,
@@ -373,17 +391,6 @@ export default {
         remarks: row.remarks,
         promotionFlag: row.promotionFlag
       }
-      if (isEdit) { // 编辑
-        // 清空退货数量时,值应保持未清空前的值,因退货数量都不可为空
-        if (!row.qty) {
-          row.qty = row.qtyBackups
-          return
-        }
-        if (!row.cost) {
-          row.cost = row.costBackups
-          return
-        }
-      }
       this.spinning = true
       purchaseReturnDetailSave(params).then(res => {
         if (res.status == 200) {
@@ -397,10 +404,8 @@ export default {
         }
       })
     },
-    // 双击快速添加
-    handleClickRow (record) {
-      this.handleAdd(record)
-    },
+    // 导入明细
+    handleImport () {},
     //  删除
     handleDel (row, isAll) {
       const _this = this
@@ -460,6 +465,10 @@ export default {
     },
     // 已选产品 退货数量  blur
     qtyBlur (val, record) {
+      if (val === '') {
+        record.qty = record.qtyBackups
+        return
+      }
       //  光标移出,值发生改变再调用编辑接口
       if (val != record.qtyBackups) {
         this.handleAdd(record, 'edit')
@@ -467,8 +476,27 @@ export default {
     },
     // 已选产品 退货单价  blur
     costBlur (val, record) {
-      if (val && (val != record.costBackups)) {
-        this.handleAdd(record, 'edit')
+      const _this = this
+      if (val === '') {
+        record.cost = record.costBackups
+        return
+      }
+      if (Number(val) !== record.costBackups) {
+        if (Number(val) === 0) {
+          this.$confirm({
+            title: '提示',
+            content: '确定将退货单价修改为0?',
+            centered: true,
+            onOk () {
+              _this.handleAdd(record, 'edit')
+            },
+            onCancel () {
+              record.cost = record.costBackups
+            }
+          })
+        } else {
+          _this.handleAdd(record, 'edit')
+        }
       }
     },
     // 仓库

+ 51 - 21
src/views/purchasingManagement/purchaseReturnOutSync/grapEdit.vue

@@ -86,7 +86,7 @@
                   size="small"
                   type="link"
                   class="button-primary"
-                  @click="handleAdd(record)"
+                  @click="handleAddNew(record)"
                   :id="'purchaseReturnEdit-add-'+record.id"
                 >添加</a-button>
               </template>
@@ -345,17 +345,35 @@ export default {
       this.chooseQueryParam.productName = ''
       this.$refs.chooseTable.refresh(true)
     },
-    //  添加/编辑
-    handleAdd (row, isEdit) {
-      // 添加时退货数量字段名为returnQty,编辑时退货数量字段名为qty
-      if (!isEdit && !row.returnPrice) {
-        this.$message.warning('请输入退货价格')
+    // 添加
+    handleAddNew (record) {
+      const _this = this
+      if (record.returnQty === null || record.returnQty === undefined || Number(record.returnQty).toString().trim().length === 0) {
+        this.$message.warning('请输入退货数量')
         return
       }
-      if (!isEdit && !row.returnQty) {
-        this.$message.warning('请输入退货数量')
+      if (record.returnPrice === '' || record.returnPrice === null || record.returnPrice === undefined || Number(record.returnPrice).toString().trim().length === 0) {
+        this.$message.warning('请输入退货价格')
         return
       }
+      if (record.returnPrice === 0) {
+        this.$confirm({
+          title: '提示',
+          content: '退货单价为0,确定添加?',
+          centered: true,
+          onOk () {
+            _this.handleAdd(record)
+          },
+          onCancel () {
+            record.returnPrice = ''
+          }
+        })
+      } else {
+        _this.handleAdd(record)
+      }
+    },
+    //  添加/编辑
+    handleAdd (row, isEdit) {
       const params = {
         id: isEdit ? row.id : undefined,
         purchaseReturnSn: this.$route.params.sn,
@@ -368,17 +386,6 @@ export default {
         remarks: row.remarks,
         promotionFlag: row.promotionFlag
       }
-      if (isEdit) { // 编辑
-        // 清空退货数量时,值应保持未清空前的值,因退货数量都不可为空
-        if (!row.qty) {
-          row.qty = row.qtyBackups
-          return
-        }
-        if (!row.cost) {
-          row.cost = row.costBackups
-          return
-        }
-      }
       this.spinning = true
       purchaseReturnDetailSave(params).then(res => {
         if (res.status == 200) {
@@ -451,6 +458,10 @@ export default {
     },
     // 已选产品 退货数量  blur
     qtyBlur (val, record) {
+      if (val === '') {
+        record.qty = record.qtyBackups
+        return
+      }
       //  光标移出,值发生改变再调用编辑接口
       if (val != record.qtyBackups) {
         this.handleAdd(record, 'edit')
@@ -458,8 +469,27 @@ export default {
     },
     // 已选产品 退货单价  blur
     costBlur (val, record) {
-      if (val && (val != record.costBackups)) {
-        this.handleAdd(record, 'edit')
+      const _this = this
+      if (val === '') {
+        record.cost = record.costBackups
+        return
+      }
+      if (Number(val) !== record.costBackups) {
+        if (Number(val) === 0) {
+          this.$confirm({
+            title: '提示',
+            content: '确定将退货单价修改为0?',
+            centered: true,
+            onOk () {
+              _this.handleAdd(record, 'edit')
+            },
+            onCancel () {
+              record.cost = record.costBackups
+            }
+          })
+        } else {
+          _this.handleAdd(record, 'edit')
+        }
       }
     },
     // 获取详情