chenrui преди 7 месеца
родител
ревизия
25f1181f9a

+ 4 - 1
src/views/easyPassManagement/promotionalActivities/addPromotionModal.vue

@@ -185,6 +185,7 @@ export default {
       chooseDealerList: [], // 已选择的经销商列表
       chooseSnList: [], // 已选经销商sn集合
       openDealerModal: false, // 经销商弹窗
+      hasEq: null,
       form: {
         promoType: undefined, // 促销类型
         promoName: '', // '促销名称'
@@ -238,6 +239,8 @@ export default {
       const _this = this
       _this.chooseDealerList = list
       _this.openDealerModal = false
+      _this.hasEq = list.filter(item => !this.chooseDealerList.map(k => k.dealerSn).includes(item.dealerSn))
+      console.log('11111111:', _this.hasEq)
     },
     // 部分经销商 删除
     delBuyerName (row) {
@@ -279,7 +282,7 @@ export default {
           delete formData.time
           delete formData.shopPromoDealerList
           if (_this.itemSn && _this.itemSn.length > 0) {
-            if (_this.chooseProductNum > 0) {
+            if (_this.chooseProductNum > 0 && _this.hasEq && _this.hasEq.length > 0) {
               _this.$confirm({
                 title: '提示',
                 content: <div>变更【参与经销商】后将会【<span style="color:red">清空</span>】已选产品列表,确定变更吗?</div>,

+ 4 - 7
src/views/easyPassManagement/promotionalActivities/chooseProductsModal.vue

@@ -247,14 +247,11 @@ export default {
         const _this = this
         _this.resetData()
         if (_this.chooseData && _this.chooseData.length > 0) {
-          let selectedRows = []
-          const selectedRowKeys = []
-          _this.chooseData.forEach(item => {
-            selectedRowKeys.push(item.goodsSn)
-          })
-          selectedRows = _this.chooseData
+          let selectedRowKeys = _this.chooseData.map(item => {
+            return item.goodsSn
+            })
           this.$nextTick(() => { // 页面渲染完成后的回调
-            _this.$refs.table.setTableSelected(selectedRowKeys, selectedRows) // 设置表格选中项
+            _this.$refs.table.setTableSelected(selectedRowKeys, _this.chooseData) // 设置表格选中项
           })
         }
       }

+ 10 - 26
src/views/easyPassManagement/promotionalActivities/detailModal.vue

@@ -14,17 +14,16 @@
           id="promotion-basicInfo-form"
           ref="ruleForm"
           :model="form"
-          :rules="rules"
           :label-col="formItemLayout.labelCol"
           :wrapper-col="formItemLayout.wrapperCol" >
           <a-row>
             <a-col :xs="12" :sm="12">
-              <a-form-model-item label="促销名称" prop="promoName" :label-col="{span:8}" :wrapper-col="{span:14}">
+              <a-form-model-item label="促销名称" prop="promoName" required :label-col="{span:8}" :wrapper-col="{span:14}">
                 {{ form.promoName }}
               </a-form-model-item>
             </a-col>
             <a-col :xs="12" :sm="12">
-              <a-form-model-item label="促销时间" prop="promoName" :label-col="{span:8}" :wrapper-col="{span:14}">
+              <a-form-model-item label="促销时间" prop="promoName" required :label-col="{span:8}" :wrapper-col="{span:14}">
                 {{ form.promoStartDate }}~{{ form.promoEndDate }}
               </a-form-model-item>
             </a-col>
@@ -34,12 +33,12 @@
               </a-form-model-item>
             </a-col>
             <a-col :xs="12" :sm="12">
-              <a-form-model-item label="参与经销商" prop="allDealerFlag" :label-col="{span:8}" :wrapper-col="{span:14}">
+              <a-form-model-item label="参与经销商" required prop="allDealerFlag" :label-col="{span:8}" :wrapper-col="{span:14}">
                 {{ form.allDealerFlag=='1'?'全部经销商':'部分经销商' }}
               </a-form-model-item>
             </a-col>
             <a-col :xs="24" :sm="24">
-              <a-form-model-item label="封面图片" prop="imageUrl">
+              <a-form-model-item label="封面图片" required prop="imageUrl">
                 <img
                   :src="form.imageUrl"
                   alt="图片走丢了"
@@ -50,18 +49,18 @@
               </a-form-model-item>
             </a-col>
             <a-col :xs="24" :sm="24">
-              <a-form-model-item label="促销描述" prop="description" >
+              <a-form-model-item label="促销描述" prop="description" required>
                 {{ form.description||'--' }}
               </a-form-model-item>
             </a-col>
             <a-col :xs="24" :sm="24">
-              <a-form-model-item label="加盟商开关权限:" prop="dealerOpenFlag" >
+              <a-form-model-item label="加盟商开关权限:" prop="dealerOpenFlag" required>
                 {{ form.dealerOpenFlag?form.dealerOpenFlag==='1'?'是':'否':'--' }}
               </a-form-model-item>
             </a-col>
             <div v-if="form.promoType==='BUY_PROD_GIVE_VALID'">
               <a-col :xs="12" :sm="12">
-                <a-form-model-item label="券名称" prop="validName" :label-col="{span:8}" :wrapper-col="{span:14}">
+                <a-form-model-item label="券名称" prop="validName" required :label-col="{span:8}" :wrapper-col="{span:14}">
                   {{ form.validName }}
                 </a-form-model-item>
               </a-col>
@@ -76,14 +75,14 @@
                 </a-form-model-item>
               </a-col> -->
               <a-col :xs="24" :sm="24">
-                <a-form-model-item label="券有效期" prop="validType">
+                <a-form-model-item label="券有效期" prop="validType" required>
                   <span>{{ form.validType==='FIXED'?'固定日期':'领取后,立即生效' }}</span>
                   <span style="margin-left:10px;" v-if="form.validType==='FIXED'">{{ form.validStartDate }}~{{ form.validEndDate }}</span>
                   <span style="margin-left:10px;" v-else>有效期{{ form.validDays }}天</span>
                 </a-form-model-item>
               </a-col>
               <a-col :xs="24" :sm="24">
-                <a-form-model-item label="券适用范围" prop="validScope">
+                <a-form-model-item label="券适用范围" prop="validScope" required>
                   {{ form.validScope=='1'?'全部产品':'--' }}
                 </a-form-model-item>
               </a-col>
@@ -94,7 +93,7 @@
               </a-col>
             </div>
             <a-col :xs="24" :sm="24">
-              <a-form-model-item :label="form.promoType==='BUY_PROD_GIVE_PROD'?'满赠规则': form.promoType==='PROMO_PROD'?'优惠方式':'返券产品'" prop="promoName" >
+              <a-form-model-item required :label="form.promoType==='BUY_PROD_GIVE_PROD'?'满赠规则': form.promoType==='PROMO_PROD'?'优惠方式':'返券产品'" prop="promoName" >
                 <div class="productTable">
                   <s-table
                     class="sTable"
@@ -177,21 +176,6 @@ export default {
         validScope: '1', // 券适用范围标记 1-全部 0-指定  死值 1
         validInfo: '' // 使用说明
       },
-      // 表单验证规则
-      rules: {
-        promoName: [{ required: true, message: '请输入促销名称', trigger: 'blur' }],
-        time: [{ required: true, message: '请选择促销时间', trigger: 'change' }],
-        sort: [{ required: true, message: '请输入排序数字', trigger: 'blur' }],
-        allDealerFlag: [{ required: true, message: '请选择参与经销商', trigger: 'change' }],
-        imageUrl: [{ required: true, message: '请选择要上传的封面图片', trigger: 'change' }],
-        description: [{ required: true, message: '请输入促销描述内容', trigger: 'blur' }],
-        dealerOpenFlag: [{ required: true, message: '请选择加盟商开关权限', trigger: 'change' }],
-        rangeList: [{ required: true, message: '请选择促销产品', trigger: 'change' }],
-        validName: [{ required: true, message: '请输入券名称', trigger: ['change', 'blur'] }],
-        validBaseType: [{ required: true, message: '请选择生成方式', trigger: 'change' }],
-        validType: [{ required: true, message: '请选择券有效期类型', trigger: 'change' }],
-        validScope: [{ required: true, message: '请选择券适用范围', trigger: 'blur' }]
-      },
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
         this.disabled = true

+ 25 - 29
src/views/easyPassManagement/promotionalActivities/edit.vue

@@ -18,29 +18,31 @@
           </a-button>
         </template>
       </a-page-header>
-      <a-card size="small" :bordered="false" class="promotionEditInfo" v-show="showDetail">
-        <div slot="title">
-          <span>基础信息</span>
-        </div>
-        <div v-if="form">
-          <a-descriptions>
-            <a-descriptions-item label="促销名称">{{ form.promoName || '--' }}</a-descriptions-item>
-            <a-descriptions-item label="促销类型">{{ form.promoTypeDictValue || '--' }}</a-descriptions-item>
-            <a-descriptions-item label="促销时间">
-              {{ form.promoStartDate }}{{ form.promoStartDate?' ~ ':'' }}{{ form.promoEndDate }}
-            </a-descriptions-item>
-            <a-descriptions-item label="排序">{{ form.sort || '--' }}</a-descriptions-item>
-            <a-descriptions-item label="加盟商开关权限">{{ form.dealerOpenFlag=='0'?'否':'是' }}</a-descriptions-item>
-            <a-descriptions-item label="参与经销商" v-if="form.allDealerFlag=='1'">全部经销商</a-descriptions-item>
-            <a-descriptions-item label="参与经销商" v-else>
-              <span v-if="!form.shopPromoDealerList||(form.shopPromoDealerList&&form.shopPromoDealerList.length==0)">--</span>
-              <div v-else @click="handleSee">共<span class="link-bule">{{ form.shopPromoDealerList.length }}</span>个</div>
-            </a-descriptions-item>
-            <a-descriptions-item :span="3" label="封面图片"><img @click="handleCheckImg" :src="form.imageUrl" alt="图片走丢了" width="60" height="60" /></a-descriptions-item>
-            <a-descriptions-item :span="3" label="促销描述">{{ form.description || '--' }}</a-descriptions-item>
-          </a-descriptions>
-        </div>
-      </a-card>
+      <div ref="tableSearch">
+        <a-card size="small" :bordered="false" class="promotionEditInfo" v-show="showDetail">
+          <div slot="title">
+            <span>基础信息</span>
+          </div>
+          <div v-if="form">
+            <a-descriptions>
+              <a-descriptions-item label="促销名称">{{ form.promoName || '--' }}</a-descriptions-item>
+              <a-descriptions-item label="促销类型">{{ form.promoTypeDictValue || '--' }}</a-descriptions-item>
+              <a-descriptions-item label="促销时间">
+                {{ form.promoStartDate }}{{ form.promoStartDate?' ~ ':'' }}{{ form.promoEndDate }}
+              </a-descriptions-item>
+              <a-descriptions-item label="排序">{{ form.sort || '--' }}</a-descriptions-item>
+              <a-descriptions-item label="加盟商开关权限">{{ form.dealerOpenFlag=='0'?'否':'是' }}</a-descriptions-item>
+              <a-descriptions-item label="参与经销商" v-if="form.allDealerFlag=='1'">全部经销商</a-descriptions-item>
+              <a-descriptions-item label="参与经销商" v-else>
+                <span v-if="!form.shopPromoDealerList||(form.shopPromoDealerList&&form.shopPromoDealerList.length==0)">--</span>
+                <div v-else @click="handleSee">共<span class="link-bule">{{ form.shopPromoDealerList.length }}</span>个</div>
+              </a-descriptions-item>
+              <a-descriptions-item :span="3" label="封面图片"><img @click="handleCheckImg" :src="form.imageUrl" alt="图片走丢了" width="60" height="60" /></a-descriptions-item>
+              <a-descriptions-item :span="3" label="促销描述">{{ form.description || '--' }}</a-descriptions-item>
+            </a-descriptions>
+          </div>
+        </a-card>
+      </div>
       <!-- 表单 -->
       <a-card :bordered="false" class="promotionEdit-cont">
         <a-form-model
@@ -312,7 +314,6 @@ export default {
       promotionName: '', // 促销名称
       showProModal: false, // 打开产品弹窗
       openCustomerModal: false, // 打开参与经销商弹窗
-      tableHeight: false, // 表格高度变化
       // 表单验证规则
       rules: {
         rangeList: [{ required: true, message: '请选择促销产品', trigger: 'change' }],
@@ -324,11 +325,6 @@ export default {
       }
     }
   },
-  watch: {
-    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
-      this.heightFlag = true
-    }
-  },
   methods: {
     // 查看封面图片
     handleCheckImg () {

+ 2 - 2
src/views/easyPassManagement/promotionalActivities/lookUpCustomersModal.vue

@@ -165,8 +165,8 @@ export default {
         { title: '区域', dataIndex: 'subareaArea.subareaName', width: '15%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '分区', dataIndex: 'subareaArea.subareaAreaName', width: '15%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '经销商名称', dataIndex: 'dealerName', width: '20%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
-        { title: '商户类型', scopedSlots: { customRender: 'businessType' }, width: '15%', align: 'center' },
-        { title: '商户级别', scopedSlots: { customRender: 'businessLevel' }, width: '15%', align: 'center' }
+        { title: '商户类型', scopedSlots: { customRender: 'businessType' }, width: '20%', align: 'center' },
+        { title: '商户级别', scopedSlots: { customRender: 'businessLevel' }, width: '13%', align: 'center' }
       ]
     }
   },

+ 0 - 2
src/views/easyPassManagement/promotionalActivities/productTable.vue

@@ -11,8 +11,6 @@
         :row-selection="{ columnWidth: 40 }"
         @rowSelection="rowSelectionFun"
         :defaultLoadData="false"
-        :style="{ maxHeight: 390+'px' }"
-        :scroll="{ y:292 }"
         bordered>
         <!-- 买 -->
         <template slot="conditionValue" slot-scope="text,record">