ソースを参照

对接促销规则导入产品

chenrui 4 年 前
コミット
97a2c03632

+ 8 - 0
src/api/promoRule.js

@@ -40,3 +40,11 @@ export const promoRuleDetailD = (params) => {
     method: 'get'
   })
 }
+//  促销规则  获取可导入和不可导入列表数据
+export const promoRuleGoods = (params) => {
+  return axios({
+    url: '/promoRule/parseGoods',
+    data: params,
+    method: 'post'
+  })
+}

+ 2 - 6
src/components/UploadFile/index.vue

@@ -100,7 +100,7 @@ export default {
     setFileList (a) {
       const temp = []
       if (a && a.length > 0) {
-        if (this.uploadType == 'img') { // 图片
+        if (this.uploadType == 'img' || this.uploadType == 'import') { // 图片/导入
           a.split(',').map((item, index) => {
             if (item) {
               temp.push({
@@ -130,8 +130,6 @@ export default {
               })
             }
           })
-        } else if (this.uploadType == 'import') { // 导入
-
         }
       }
       this.fileList = temp
@@ -162,7 +160,7 @@ export default {
       let temp = []
       let obj = null
       if (a && a.length) {
-        if (this.uploadType == 'img') { // 图片    将接口的返回图片地址逗号拼接后返回页面
+        if (this.uploadType == 'img' || this.uploadType == 'import') { // 图片/导入    将接口的返回图片地址逗号拼接后返回页面
           a.map(item => {
             if (item.response && item.status == 'done') {
               temp.push(item.response.data)
@@ -176,8 +174,6 @@ export default {
             }
           })
           obj = JSON.stringify(temp)
-        } else if (this.uploadType == 'import') { // 导入
-
         }
       }
       return obj

+ 227 - 0
src/views/common/chooseImportModal.vue

@@ -0,0 +1,227 @@
+<template>
+  <a-modal
+    centered
+    class="chooseImport-modal"
+    :footer="null"
+    :maskClosable="false"
+    title="导入"
+    v-model="isShow"
+    @cancle="isShow=false"
+    :width="900">
+    <div class="chooseImport-con">
+      <!-- 可导入数据 -->
+      <p class="">可导入数据{{ loadData.length }}条</p>
+      <a-table
+        class="sTable"
+        ref="table"
+        size="small"
+        :rowKey="(record) => record.goodsSn"
+        :columns="nowColumns"
+        :dataSource="loadData"
+        :scroll="{ y: 200 }"
+        :pagination="false"
+        bordered>
+      </a-table>
+      <a-divider />
+      <!-- 不可导入数据 -->
+      <p class="red">不可导入数据{{ unLoadData.length }}条</p>
+      <a-table
+        class="unTable"
+        ref="unTable"
+        size="small"
+        :rowKey="(record) => record.goodsCode"
+        :columns="nowUnColumns"
+        :dataSource="unLoadData"
+        :scroll="{ y: 200 }"
+        :pagination="false"
+        bordered>
+      </a-table>
+      <!-- 按钮 -->
+      <div class="btn-con">
+        <a-button
+          type="primary"
+          id="chooseImport-submit"
+          size="large"
+          :class="loadData.length==0?'button-grey':'button-primary'"
+          @click="handleSubmit"
+          style="padding: 0 60px;">确认导入</a-button>
+        <a-button
+          id="chooseImport-cancel"
+          size="large"
+          class="button-cancel"
+          @click="isShow=false"
+          style="padding: 0 60px;margin-left: 15px;">取消</a-button>
+      </div>
+    </div>
+  </a-modal>
+</template>
+
+<script>
+import { promoRuleGoods } from '@/api/promoRule'
+export default {
+  name: 'ChooseImportModal',
+  props: {
+    openModal: { //  弹框显示状态
+      type: Boolean,
+      default: false
+    },
+    itemId: {
+      type: [Number, String],
+      default: ''
+    },
+    paramsData: {
+      type: Object,
+      default: () => {
+        return {}
+      }
+    }
+  },
+  computed: {
+    nowColumns () {
+      let columns = this.columns
+      if ((this.paramsData && this.paramsData.promoRuleType == 'BUY_PROD_GIVE_PROD') || (this.paramsData && this.paramsData.promoRuleType == 'BUY_PROD_GIVE_MONEY')) { //  买产品送产品/买产品送采购额
+        if (this.paramsData && this.paramsData.promoGoodsType == 'NORMAL_PROD') { //  正品
+          columns = this.columns
+        } else if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.promoColumns
+        }
+      } else if (this.paramsData && this.paramsData.promoRuleType == 'PROMO_PROD') { //  特价产品
+        if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.promoSpecialColumns
+        }
+      } else if (this.paramsData && this.paramsData.promoRuleType == 'ADD_PRICE_PURCH') { //  加价换购
+        if (this.paramsData && this.paramsData.promoGoodsType == 'NORMAL_PROD') { //  正品
+          columns = this.columns
+        } else if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.promoSpecialColumns
+        }
+      }
+      return columns
+    },
+    nowUnColumns () {
+      let columns = this.unColumns
+      if ((this.paramsData && this.paramsData.promoRuleType == 'BUY_PROD_GIVE_PROD') || (this.paramsData && this.paramsData.promoRuleType == 'BUY_PROD_GIVE_MONEY')) { //  买产品送产品/买产品送采购额
+        if (this.paramsData && this.paramsData.promoGoodsType == 'NORMAL_PROD') { //  正品
+          columns = this.unColumns
+        } else if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.unPromoColumns
+        }
+      } else if (this.paramsData && this.paramsData.promoRuleType == 'PROMO_PROD') { //  特价产品
+        if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.unPromoSpecialColumns
+        }
+      } else if (this.paramsData && this.paramsData.promoRuleType == 'ADD_PRICE_PURCH') { //  加价换购
+        if (this.paramsData && this.paramsData.promoGoodsType == 'NORMAL_PROD') { //  正品
+          columns = this.unColumns
+        } else if (this.paramsData && this.paramsData.promoGoodsType == 'PROMO_PROD') { //  促销
+          columns = this.unPromoSpecialColumns
+        }
+      }
+      return columns
+    }
+  },
+  data () {
+    return {
+      isShow: this.openModal, //  是否打开弹框
+      columns: [ //  正品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '起订量限制', dataIndex: 'orderGoodsUnitDictValue', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '起订数量', dataIndex: 'orderGoodsQty', align: 'center', customRender: function (text) { return text || '--' } }
+      ],
+      promoColumns: [ //  促销品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } }
+      ],
+      promoSpecialColumns: [ //  特价产品/加价促销品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: this.paramsData && this.paramsData.promoRuleType == 'PROMO_PROD' ? '特惠单价(¥)' : '换购单价(¥)', dataIndex: 'goodsPrice', width: 200, align: 'center' }
+      ],
+      loadData: [],
+      unColumns: [ //  不可导入产品 正品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '起订量限制', dataIndex: 'orderGoodsUnitDictValue', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '起订数量', dataIndex: 'orderGoodsQty', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '备注', dataIndex: 'remark', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true }
+      ],
+      unPromoColumns: [ //  不可导入产品 促销品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '备注', dataIndex: 'remark', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true }
+      ],
+      unPromoSpecialColumns: [ //  不可导入产品 特价产品/加价促销品
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
+        { title: '产品编码', dataIndex: 'goodsCode', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: this.paramsData && this.paramsData.promoRuleType == 'PROMO_PROD' ? '特惠单价(¥)' : '换购单价(¥)', dataIndex: 'goodsPrice', width: 200, align: 'center' },
+        { title: '备注', dataIndex: 'remark', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true }
+      ],
+      unLoadData: []
+    }
+  },
+  methods: {
+    getData () {
+      const _this = this
+      promoRuleGoods(this.paramsData).then(res => {
+        if (res.status == 200) {
+          if (res.data.okGoodsList && res.data.okGoodsList.length > 0) {
+            res.data.okGoodsList.map((item, index) => {
+              item.no = index + 1
+            })
+          }
+          if (res.data.erroGoodsList && res.data.erroGoodsList.length > 0) {
+            res.data.erroGoodsList.map((item, index) => {
+              item.no = index + 1
+            })
+          }
+          _this.loadData = res.data.okGoodsList || []
+          _this.unLoadData = res.data.erroGoodsList || []
+        }
+      })
+    },
+    // 确认导入
+    handleSubmit () {
+      if (this.loadData.length == 0) {
+        this.$message.warning('无可导入产品!')
+      } else {
+        this.$emit('ok', this.loadData)
+        this.isShow = false
+      }
+    }
+  },
+  watch: {
+    //  父页面传过来的弹框状态
+    openModal (newValue, oldValue) {
+      this.isShow = newValue
+    },
+    //  重定义的弹框状态
+    isShow (newValue, oldValue) {
+      if (!newValue) {
+        this.$emit('close')
+        this.loadData = []
+        this.unLoadData = []
+      } else {
+        this.getData()
+      }
+    }
+  }
+}
+</script>
+
+<style lang="less" scoped>
+  .chooseImport-modal{
+    .chooseImport-con{
+      .red{
+        color: #f30;
+      }
+      .btn-con{
+        text-align: center;
+        margin: 30px 0 20px;
+        .button-cancel{
+          font-size: 12px;
+        }
+      }
+    }
+  }
+</style>

+ 62 - 14
src/views/promotionRulesManagement/promotionRules/importGuideModal.vue → src/views/common/importGuideModal.vue

@@ -26,7 +26,18 @@
             <span>2</span>上传数据文件
           </div>
           <p>目前支持的文件类型*.xls,*.xlsx.</p>
-          <a-button type="primary" class="button-info" icon="plus-circle">添加文件</a-button>
+          <p>
+            <Upload
+              id="importGuide-attachList"
+              ref="importUpload"
+              :maxNums="1"
+              fileType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
+              uploadType="import"
+              :action="attachAction"
+              :uploadParams="uploadParams"
+              upText="添加文件"
+              @change="changeImport"></Upload>
+          </p>
         </div>
       </div>
       <!-- 按钮 -->
@@ -47,40 +58,76 @@
       </div>
     </div>
     <!-- 导入 -->
-    <chooseImportModal :openModal="openImportModal" @close="openImportModal=false" />
+    <chooseImportModal :openModal="openImportModal" :paramsData="paramsData" @close="handleClose" @ok="hanldeOk" />
   </a-modal>
 </template>
 
 <script>
-import ChooseImportModal from './chooseImportModal.vue'
+import ChooseImportModal from '@/views/common/chooseImportModal.vue'
+import { Upload } from '@/components'
 export default {
   name: 'ImportGuideModal',
-  components: { ChooseImportModal },
+  components: { ChooseImportModal, Upload },
   props: {
     openModal: { //  弹框显示状态
       type: Boolean,
       default: false
     },
-    itemId: {
-      type: [Number, String],
-      default: ''
-    },
-    nowData: {
+    params: {
       type: Object,
       default: null
+    },
+    type: { //  类型,促销promo
+      type: String,
+      default: ''
     }
   },
   data () {
     return {
       isShow: this.openModal, //  是否打开弹框
-      openImportModal: false //  导入
+      openImportModal: false, //  导入
+      attachAction: process.env.VUE_APP_API_BASE_URL + '/upload',
+      paramsData: null
+    }
+  },
+  computed: {
+    uploadParams () {
+      const obj = {
+        savePathType: 'local'
+      }
+      return obj
     }
   },
   methods: {
     // 下一步
     handlerNextStep () {
-      this.openImportModal = true
-      this.$emit('close')
+      if (this.paramsData) {
+        this.openImportModal = true
+      } else {
+        this.$message.warning('添加文件后再进行下一步操作!')
+      }
+    },
+    // 上传文件  change
+    changeImport (file) {
+      if (file) {
+        this.paramsData = {
+          promoRuleType: this.params.promoRuleType || '',
+          promoGoodsType: this.params.promoGoodsType || '',
+          path: file
+        }
+      }
+    },
+    // 导入
+    hanldeOk (obj) {
+      if (obj && obj.length > 0) {
+        this.$emit('ok', obj)
+        this.isShow = false
+      }
+    },
+    // 关闭
+    handleClose () {
+      this.openImportModal = false
+      this.isShow = false
     }
   },
   watch: {
@@ -92,6 +139,8 @@ export default {
     isShow (newValue, oldValue) {
       if (!newValue) {
         this.$emit('close')
+        this.paramsData = null
+        this.$refs.importUpload.setFileList('')
       }
     }
   }
@@ -133,8 +182,7 @@ export default {
         }
       }
       .btn-con{
-        text-align: center;
-        margin: 30px 0 20px;
+        margin: 60px 0 20px;
         .button-cancel{
           font-size: 12px;
         }

+ 0 - 151
src/views/promotionRulesManagement/promotionRules/chooseImportModal.vue

@@ -1,151 +0,0 @@
-<template>
-  <a-modal
-    centered
-    class="chooseImport-modal"
-    :footer="null"
-    :maskClosable="false"
-    title="导入"
-    v-model="isShow"
-    @cancle="isShow=false"
-    :width="900">
-    <div class="chooseImport-con">
-      <!-- 可导入数据 -->
-      <p class="">可导入数据32条</p>
-      <s-table
-        class="sTable"
-        ref="table"
-        size="small"
-        :rowKey="(record) => record.id"
-        :columns="columns"
-        :data="loadData"
-        :scroll="{ y: 200 }"
-        :showPagination="false"
-        bordered>
-      </s-table>
-      <a-divider />
-      <!-- 不可导入数据 -->
-      <p class="red">不可导入数据5条</p>
-      <s-table
-        class="unTable"
-        ref="unTable"
-        size="small"
-        :rowKey="(record) => record.id"
-        :columns="unColumns"
-        :data="unLoadData"
-        :scroll="{ y: 200 }"
-        :showPagination="false"
-        bordered>
-      </s-table>
-      <!-- 按钮 -->
-      <div class="btn-con">
-        <a-button
-          type="primary"
-          id="chooseImport-submit"
-          size="large"
-          class="button-primary"
-          style="padding: 0 60px;">确认导入</a-button>
-        <a-button
-          id="chooseImport-cancel"
-          size="large"
-          class="button-cancel"
-          @click="isShow=false"
-          style="padding: 0 60px;margin-left: 15px;">取消</a-button>
-      </div>
-    </div>
-  </a-modal>
-</template>
-
-<script>
-import { STable } from '@/components'
-// import { dealerProductList } from '@/api/dealerProduct'
-export default {
-  name: 'ChooseImportModal',
-  components: { STable },
-  props: {
-    openModal: { //  弹框显示状态
-      type: Boolean,
-      default: false
-    },
-    itemId: {
-      type: [Number, String],
-      default: ''
-    },
-    nowData: {
-      type: Object,
-      default: null
-    }
-  },
-  data () {
-    return {
-      isShow: this.openModal, //  是否打开弹框
-      columns: [
-        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
-        { title: '产品编码', dataIndex: 'code', align: 'center' },
-        { title: '起订量限制', dataIndex: 'nassme', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '起订数量', dataIndex: 'nasme', align: 'center', customRender: function (text) { return text || '--' } }
-      ],
-      // 加载数据方法 必须为 Promise 对象
-      loadData: parameter => {
-        return dealerProductList(Object.assign(parameter, this.queryParam)).then(res => {
-          const data = res.data
-          const no = (data.pageNo - 1) * data.pageSize
-          for (var i = 0; i < data.list.length; i++) {
-            data.list[i].no = no + i + 1
-          }
-          return data
-        })
-      },
-      unColumns: [
-        { title: '序号', dataIndex: 'no', width: 80, align: 'center' },
-        { title: '产品编码', dataIndex: 'code', align: 'center' },
-        { title: '起订量限制', dataIndex: 'namsse', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '起订数量', dataIndex: 'nasme', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '备注', dataIndex: 'remark', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true }
-      ],
-      // 加载数据方法 必须为 Promise 对象
-      unLoadData: parameter => {
-        return dealerProductList(Object.assign(parameter, this.queryParam)).then(res => {
-          const data = res.data
-          const no = (data.pageNo - 1) * data.pageSize
-          for (var i = 0; i < data.list.length; i++) {
-            data.list[i].no = no + i + 1
-          }
-          return data
-        })
-      }
-    }
-  },
-  methods: {
-
-  },
-  watch: {
-    //  父页面传过来的弹框状态
-    openModal (newValue, oldValue) {
-      this.isShow = newValue
-    },
-    //  重定义的弹框状态
-    isShow (newValue, oldValue) {
-      if (!newValue) {
-        this.$emit('close')
-      }
-    }
-  }
-}
-</script>
-
-<style lang="less" scoped>
-  .chooseImport-modal{
-    .chooseImport-con{
-      .red{
-        color: #f30;
-      }
-      .btn-con{
-        text-align: center;
-        margin: 30px 0 20px;
-        .button-cancel{
-          font-size: 12px;
-        }
-      }
-    }
-  }
-</style>

+ 49 - 7
src/views/promotionRulesManagement/promotionRules/choosePriceProductsModal.vue

@@ -20,7 +20,7 @@
         <div class="header-con">
           <div class="products-tit">
             参与产品:
-            <!-- <a-button id="choosePosPriceProducts-import" type="primary" class="button-info" @click="openGuideModal=true">导入产品</a-button> -->
+            <a-button id="choosePosPriceProducts-import" type="primary" class="button-info" @click="openGuideModal=true">导入产品</a-button>
           </div>
           <div class="products-operation" v-if="goodsType=='normal'">
             <a-row :gutter="15">
@@ -47,7 +47,7 @@
             </a-row>
           </div>
         </div>
-        <!-- <p><a-icon type="exclamation-circle" style="color: #f90;margin-right: 5px;" />提示:导入时会清空下方已选内容,只展示导出成功的产品,请谨慎使用。</p> -->
+        <p><a-icon type="exclamation-circle" style="color: #f90;margin-right: 5px;" />提示:导入时会清空下方已选内容,只展示导出成功的产品,请谨慎使用。</p>
       </div>
       <!-- 表格 -->
       <a-table
@@ -119,7 +119,7 @@
     <!-- 选择产品 -->
     <chooseProductsModal :openModal="openProductsModal" :chooseData="chooseProducts" @close="openProductsModal=false" @ok="handleProductsOk" />
     <!-- 导入产品 -->
-    <importGuideModal :openModal="openGuideModal" @close="openGuideModal=false" />
+    <importGuideModal :openModal="openGuideModal" type="promo" :params="importParams" @close="openGuideModal=false" @ok="hanldeOk" />
   </a-modal>
 </template>
 
@@ -127,7 +127,7 @@
 import ChooseProductsModal from '@/views/common/chooseProductsModal.vue'
 import ChooseBrandModal from '@/views/common/chooseBrandModal.vue'
 import ChooseTypeModal from '@/views/common/chooseTypeModal.vue'
-import ImportGuideModal from './importGuideModal.vue'
+import ImportGuideModal from '@/views/common/importGuideModal.vue'
 import { VSelect } from '@/components'
 import { getLookUpData } from '@/api/data'
 export default {
@@ -191,6 +191,7 @@ export default {
       chooseBrand: [], //  所选品牌
       chooseProducts: [], //  所选产品
       chooseType: [], //  所选分类
+      chooseImport: [], //  导入产品
       orderGoodsUnitData: []
     }
   },
@@ -215,6 +216,18 @@ export default {
         }
       }
       return columns
+    },
+    importParams () {
+      const obj = {
+        promoRuleType: this.ruleType,
+        promoGoodsType: ''
+      }
+      if (this.goodsType == 'normal') { //  正品
+        obj.promoGoodsType = 'NORMAL_PROD'
+      } else if (this.goodsType == 'promo') { //  促销
+        obj.promoGoodsType = 'PROMO_PROD'
+      }
+      return obj
     }
   },
   methods: {
@@ -223,8 +236,12 @@ export default {
       const productList = []
       const brandList = []
       const typeList = []
+      const importSnList = []
+      this.chooseImport.map(item => {
+        importSnList.push(item.goodsSn)
+      })
       this.loadData.map(item => {
-        if (item.goodsType == 'PRODUCT') {
+        if (item.goodsType == 'PRODUCT' && importSnList.indexOf(item.goodsSn) == -1) {
           productList.push(item)
         } else if (item.goodsType == 'BRAND') {
           brandList.push(item)
@@ -243,6 +260,27 @@ export default {
         this.openTypeModal = true
       }
     },
+    // 导入产品
+    hanldeOk (obj) {
+      console.log('----------处理导入产品', obj)
+      const _this = this
+      _this.loadData = []
+      if (obj && obj.length > 0) {
+        obj.map(item => {
+          _this.loadData.push({
+            goodsType: 'PRODUCT',
+            goodsTypeName: '产品',
+            goodsName: item.goodsName,
+            name: item.goodsName,
+            goodsCode: item.goodsCode,
+            goodsSn: item.goodsSn,
+            orderGoodsUnit: item.orderGoodsUnit,
+            orderGoodsQty: item.orderGoodsQty
+          })
+        })
+      }
+      _this.chooseImport = JSON.parse(JSON.stringify(_this.loadData))
+    },
     // 品牌
     handleBrandOk (obj) {
       this.chooseBrand = obj
@@ -291,7 +329,7 @@ export default {
     },
     changeData () {
       const _this = this
-      _this.loadData = []
+      _this.loadData = JSON.parse(JSON.stringify(_this.chooseImport))
       if (_this.chooseBrand.length > 0) {
         _this.chooseBrand.map(item => {
           const obj = {
@@ -317,7 +355,8 @@ export default {
             orderGoodsQty: ''
           }
           delete item.id
-          _this.loadData.push(Object.assign(obj, item))
+          // _this.loadData.push(Object.assign(obj, item))
+          _this.loadData.push({ ...obj, ...item })
         })
       }
       if (_this.chooseProducts.length > 0) {
@@ -336,6 +375,8 @@ export default {
           _this.loadData.push(Object.assign(obj, item))
         })
       }
+      console.log(_this.loadData, '-----liebiao')
+      console.log(_this.chooseImport, '-----导入')
     },
     // 批量复制
     handlerBulkCopy () {
@@ -391,6 +432,7 @@ export default {
         this.chooseBrand = []
         this.chooseProducts = []
         this.chooseType = []
+        this.chooseImport = []
         this.orderGoodsUnit = undefined //  起订量限制 批量
         this.orderGoodsQty = '' //  限制数量
         this.$emit('close')

+ 1 - 1
src/views/promotionRulesManagement/promotionRules/list.vue

@@ -128,7 +128,7 @@ export default {
       loadData: parameter => {
         this.disabled = true
         if (this.tableHeight == 0) {
-          this.tableHeight = window.innerHeight - 502
+          this.tableHeight = window.innerHeight - 450
         }
         // 创建时间
         if (this.createDate && this.createDate.length > 0) {