浏览代码

搭建页面

chenrui 2 年之前
父节点
当前提交
2096888ce5

+ 176 - 0
src/views/numsGoodsShelves/recallManagement/addRecallBillModal.vue

@@ -0,0 +1,176 @@
+<template>
+  <a-modal
+    centered
+    class="shelfSet-basicInfo-modal"
+    :footer="null"
+    :maskClosable="false"
+    title="新增回调单--[数字货架]名吃环境啥的技术附件"
+    v-model="isShow"
+    @cancel="isShow = false"
+    :width="600">
+    <a-spin :spinning="spinning" tip="Loading...">
+      <a-form-model
+        id="shelfSet-basicInfo-form"
+        ref="ruleForm"
+        :model="form"
+        :rules="rules"
+        :label-col="formItemLayout.labelCol"
+        :wrapper-col="formItemLayout.wrapperCol">
+        <a-form-model-item label="货架名称" prop="shelfName">
+          <shelfSList v-model="form.shelfName" @change="shelfChange"></shelfSList>
+        </a-form-model-item>
+      </a-form-model>
+      <div class="btn-cont">
+        <a-button type="primary" id="importGuide-nextStep" @click="handlerNextStep">下一步</a-button>
+        <a-button id="shelfSet-basicInfo-modal-back" @click="isShow = false" style="margin-left: 15px;">取消</a-button>
+      </div>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { commonMixin } from '@/utils/mixin'
+import { VSelect } from '@/components'
+import custList from '@/views/common/custList.vue'
+import shelfSList from '@/views/common/shelfList'
+import { shelfSave } from '@/api/shelf'
+export default {
+  name: 'ShelfSetRecallBillModal',
+  components: { VSelect, custList, shelfSList },
+  mixins: [commonMixin],
+  props: {
+    openModal: {
+      //  弹框显示状态
+      type: Boolean,
+      default: false
+    },
+    nowData: {
+      type: Object,
+      default: () => {
+        return {}
+      }
+    },
+    type: {
+      type: [String, Number],
+      default: '1'
+    }
+  },
+  data () {
+    return {
+      spinning: false,
+      isShow: this.openModal, //  是否打开弹框
+      formItemLayout: {
+        labelCol: { span: 5 },
+        wrapperCol: { span: 17 }
+      },
+      form: {
+        shelfName: ''
+      },
+      rules: {
+        shelfName: [{ required: true, message: '请选择货架名称', trigger: 'change' }]
+      },
+      showRecallBill: false
+    }
+  },
+  methods: {
+    shelfChange (v, row) {
+      this.shelfName = row ? row.shelfName : ''
+    },
+    // 下一步 保存货架信息
+    handlerNextStep () {
+      this.showRecallBill = true
+    },
+    // 客户 change
+    custChange (obj, row) {
+      this.form.customerSn = row && row.customerSn || undefined
+    },
+    //  保存
+    handleSave () {
+      const _this = this
+      this.$refs.ruleForm.validate(valid => {
+        if (valid) {
+          const form = JSON.parse(JSON.stringify(_this.form))
+          form.shelfSn = _this.nowData && _this.nowData.shelfSn
+          _this.spinning = true
+          shelfSave(form).then(res => {
+            if (res.status == 200) {
+              _this.$message.success(res.message)
+              setTimeout(() => {
+                _this.isShow = false
+                _this.$emit('ok', res.data)
+                _this.spinning = false
+              }, 100)
+              // 更新价格显示
+              // updateShelfPriceShow({
+              //   shelfSn: form.shelfSn,
+              //   paramValue: form.showPrice
+              // }).then(ret => {
+              //   if (ret.status == 200) {
+              //     _this.$message.success(ret.message)
+              //     setTimeout(() => {
+              //       _this.isShow = false
+              //       _this.$emit('ok', res.data)
+              //       _this.spinning = false
+              //     }, 100)
+              //   } else {
+              //     _this.spinning = false
+              //   }
+              // })
+            } else {
+              _this.spinning = false
+            }
+          })
+        } else {
+          console.log('error submit!!')
+          return false
+        }
+      })
+    }
+  },
+  watch: {
+    //  父页面传过来的弹框状态
+    openModal (newValue, oldValue) {
+      this.isShow = newValue
+    },
+    //  重定义的弹框状态
+    isShow (newValue, oldValue) {
+      if (!newValue) {
+        this.$emit('close')
+        this.$refs.ruleForm.resetFields()
+        // this.$refs.custList.resetForm()
+      } else {
+        // const _this = this
+        // this.$nextTick(() => {
+        //   _this.form.shelfName = _this.nowData.shelfName
+        //   _this.form.showPrice = _this.nowData.showPrice
+        //   const custome = _this.nowData.customerEntity
+        //   if (custome) {
+        //     _this.form.customerSn = custome.customerSn || ''
+        //     _this.$refs.custList.fetchUser(custome.customerName || '')
+        //     _this.$refs.custList.dealerName = {
+        //       key: custome.customerSn,
+        //       label: custome.customerName,
+        //       row: _this.nowData
+        //     }
+        //   }
+        // })
+      }
+    }
+  }
+}
+</script>
+
+<style lang="less">
+.shelfSet-basicInfo-modal {
+	.ant-modal-body {
+		padding: 40px 40px 24px;
+	}
+  .ant-form-item{
+    margin-bottom: 15px;
+  }
+	.btn-cont {
+		text-align: center;
+		margin: 35px 0 10px;
+	}
+}
+</style>

+ 179 - 0
src/views/numsGoodsShelves/recallManagement/basicInfoModal.vue

@@ -0,0 +1,179 @@
+<template>
+  <a-modal
+    centered
+    class="shelfSet-basicInfo-modal"
+    :footer="null"
+    :maskClosable="false"
+    title="新增回调单"
+    v-model="isShow"
+    @cancel="isShow = false"
+    :width="600">
+    <a-spin :spinning="spinning" tip="Loading...">
+      <a-form-model
+        id="shelfSet-basicInfo-form"
+        ref="ruleForm"
+        :model="form"
+        :rules="rules"
+        :label-col="formItemLayout.labelCol"
+        :wrapper-col="formItemLayout.wrapperCol">
+        <a-form-model-item label="货架名称" prop="shelfName">
+          <shelfSList v-model="form.shelfName" @change="shelfChange"></shelfSList>
+        </a-form-model-item>
+      </a-form-model>
+      <div class="btn-cont">
+        <a-button type="primary" id="importGuide-nextStep" @click="handlerNextStep">下一步</a-button>
+        <a-button id="shelfSet-basicInfo-modal-back" @click="isShow = false" style="margin-left: 15px;">取消</a-button>
+      </div>
+    </a-spin>
+    <!-- 新增回调单(实现新增) -->
+    <add-recall-bill-modal :openModal="showRecallBill" @close="showRecallBill=false"></add-recall-bill-modal>
+  </a-modal>
+</template>
+
+<script>
+import { commonMixin } from '@/utils/mixin'
+import { VSelect } from '@/components'
+import custList from '@/views/common/custList.vue'
+import shelfSList from '@/views/common/shelfList'
+import { shelfSave } from '@/api/shelf'
+import addRecallBillModal from './addRecallBillModal.vue'
+export default {
+  name: 'ShelfSetBasicInfoModal',
+  components: { VSelect, custList, shelfSList, addRecallBillModal },
+  mixins: [commonMixin],
+  props: {
+    openModal: {
+      //  弹框显示状态
+      type: Boolean,
+      default: false
+    },
+    nowData: {
+      type: Object,
+      default: () => {
+        return {}
+      }
+    },
+    type: {
+      type: [String, Number],
+      default: '1'
+    }
+  },
+  data () {
+    return {
+      spinning: false,
+      isShow: this.openModal, //  是否打开弹框
+      formItemLayout: {
+        labelCol: { span: 5 },
+        wrapperCol: { span: 17 }
+      },
+      form: {
+        shelfName: ''
+      },
+      rules: {
+        shelfName: [{ required: true, message: '请选择货架名称', trigger: 'change' }]
+      },
+      showRecallBill: false
+    }
+  },
+  methods: {
+    shelfChange (v, row) {
+      this.shelfName = row ? row.shelfName : ''
+    },
+    // 下一步 保存货架信息
+    handlerNextStep () {
+      this.showRecallBill = true
+    },
+    // 客户 change
+    custChange (obj, row) {
+      this.form.customerSn = row && row.customerSn || undefined
+    },
+    //  保存
+    handleSave () {
+      const _this = this
+      this.$refs.ruleForm.validate(valid => {
+        if (valid) {
+          const form = JSON.parse(JSON.stringify(_this.form))
+          form.shelfSn = _this.nowData && _this.nowData.shelfSn
+          _this.spinning = true
+          shelfSave(form).then(res => {
+            if (res.status == 200) {
+              _this.$message.success(res.message)
+              setTimeout(() => {
+                _this.isShow = false
+                _this.$emit('ok', res.data)
+                _this.spinning = false
+              }, 100)
+              // 更新价格显示
+              // updateShelfPriceShow({
+              //   shelfSn: form.shelfSn,
+              //   paramValue: form.showPrice
+              // }).then(ret => {
+              //   if (ret.status == 200) {
+              //     _this.$message.success(ret.message)
+              //     setTimeout(() => {
+              //       _this.isShow = false
+              //       _this.$emit('ok', res.data)
+              //       _this.spinning = false
+              //     }, 100)
+              //   } else {
+              //     _this.spinning = false
+              //   }
+              // })
+            } else {
+              _this.spinning = false
+            }
+          })
+        } else {
+          console.log('error submit!!')
+          return false
+        }
+      })
+    }
+  },
+  watch: {
+    //  父页面传过来的弹框状态
+    openModal (newValue, oldValue) {
+      this.isShow = newValue
+    },
+    //  重定义的弹框状态
+    isShow (newValue, oldValue) {
+      if (!newValue) {
+        this.$emit('close')
+        this.$refs.ruleForm.resetFields()
+        // this.$refs.custList.resetForm()
+      } else {
+        // const _this = this
+        // this.$nextTick(() => {
+        //   _this.form.shelfName = _this.nowData.shelfName
+        //   _this.form.showPrice = _this.nowData.showPrice
+        //   const custome = _this.nowData.customerEntity
+        //   if (custome) {
+        //     _this.form.customerSn = custome.customerSn || ''
+        //     _this.$refs.custList.fetchUser(custome.customerName || '')
+        //     _this.$refs.custList.dealerName = {
+        //       key: custome.customerSn,
+        //       label: custome.customerName,
+        //       row: _this.nowData
+        //     }
+        //   }
+        // })
+      }
+    }
+  }
+}
+</script>
+
+<style lang="less">
+.shelfSet-basicInfo-modal {
+	.ant-modal-body {
+		padding: 40px 40px 24px;
+	}
+  .ant-form-item{
+    margin-bottom: 15px;
+  }
+	.btn-cont {
+		text-align: center;
+		margin: 35px 0 10px;
+	}
+}
+</style>

+ 136 - 0
src/views/numsGoodsShelves/recallManagement/detailModal.vue

@@ -0,0 +1,136 @@
+<template>
+  <a-modal
+    centered
+    class="vinRecord-modal"
+    :footer="null"
+    :maskClosable="false"
+    title="调回单详情——[数字货架]"
+    v-model="isShow"
+    @cancel="isShow=false"
+    width="60%">
+    <!-- 详情 -->
+    <div v-if="itemData">
+      <a-descriptions :column="3" size="default">
+        <a-descriptions-item label="调货单号">123456789</a-descriptions-item>
+        <a-descriptions-item label="创建时间">2022-11-4 10:00:02</a-descriptions-item>
+        <a-descriptions-item label="状态" :span="1">已完成</a-descriptions-item>
+        <a-descriptions-item label="退库时间">1</a-descriptions-item>
+        <a-descriptions-item label="关联销售退货单">
+          <span class="recallBillNo" @click="seeRecallBill">DH221104000008,</span>
+          <span class="recallBillNo">DH221104000008</span>
+          <a-button type="primary" ghost class="recallBillBtn">生成销售退货单</a-button>
+        </a-descriptions-item>
+      </a-descriptions>
+    </div>
+    <!-- 表格 -->
+    <div class="table-body">
+      <table>
+        <tr>
+          <th width="10%">序号</th>
+          <th width="10%">产品编码</th>
+          <th width="50%">产品名称</th>
+          <th width="10%">调回数量</th>
+          <th width="10%">实退数量</th>
+          <th width="10%">单位</th>
+        </tr>
+        <tr v-for="(item,index) in 5" :key="item.productSn">
+          <td>{{ index + 1 }}</td>
+          <td>JA-11070N</td>
+          <td>名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字</td>
+          <td>2</td>
+          <td>2</td>
+          <td>个</td>
+        </tr>
+      </table>
+    </div>
+    <div class="btn-cont"><a-button id="vinRecord-modal-back" @click="isShow = false">关闭</a-button></div>
+    <!-- 回调单号提示窗 -->
+    <a-modal v-model="tipVisible" @ok="handleOk">
+      <p>内容</p>
+      <p>Some contents...</p>
+      <p>Some contents...</p>
+    </a-modal>
+  </a-modal>
+</template>
+
+<script>
+export default {
+  name: 'DetailModal',
+  props: {
+    openModal: { //  弹框显示状态
+      type: Boolean,
+      default: false
+    },
+    itemData: {
+      type: Object,
+      default: function () {
+        return []
+      }
+    }
+  },
+  data () {
+    return {
+      isShow: this.openModal, //  是否打开弹框
+      tipVisible: false
+    }
+  },
+  watch: {
+    //  父页面传过来的弹框状态
+    openModal (newValue, oldValue) {
+      this.isShow = newValue
+    },
+    //  重定义的弹框状态
+    isShow (newValue, oldValue) {
+      if (!newValue) {
+        this.$emit('close')
+      }
+      // else {
+      //   this.getDetailList()
+      // }
+    }
+  },
+  methods: {
+    seeRecallBill () {
+      this.tipVisible = true
+    }
+
+  }
+}
+</script>
+
+<style lang="less">
+  .vinRecord-modal{
+    .ant-modal-body {
+      padding: 40px 40px 24px;
+    }
+    .btn-cont {
+      text-align: center;
+      margin: 35px 0 10px;
+    }
+    .table-body{
+      table{
+        th,td{
+          text-align: center;
+          padding: 5px;
+          border:1px solid #ddd;
+        }
+        th{
+          background:#f8f8f8;
+        }
+      }
+    }
+    .recallBillNo{
+      color:#39f;
+     font-weight: 600;
+    }
+    .recallBillBtn{
+      border-color:#39f;
+      color:#39f;
+      margin-left: 20px;
+      &:hover, &:focus {
+        border-color: #52a6fb;
+        color: #52a6fb;
+      }
+    }
+  }
+</style>

+ 28 - 2
src/views/numsGoodsShelves/recallManagement/list.vue

@@ -48,6 +48,7 @@
           </a-row>
           </a-row>
         </a-form>
         </a-form>
       </div>
       </div>
+      <div class="btnStyle"><a-button type="primary" class="button-primary" @click="openInfoModal = true">新增调回单</a-button></div>
       <s-table
       <s-table
         class="sTable fixPagination"
         class="sTable fixPagination"
         ref="table"
         ref="table"
@@ -62,6 +63,11 @@
         :expandRowByClick="true"
         :expandRowByClick="true"
         :defaultLoadData="false"
         :defaultLoadData="false"
         bordered>
         bordered>
+        <template slot="recallBillNo" slot-scope="text, record">
+          <div class="table-td-link" @click.stop="handleDetail(record)">
+            {{ record.recallBillNo || '--' }}
+          </div>
+        </template>
         <template slot="action" slot-scope="text, record">
         <template slot="action" slot-scope="text, record">
           <a-button
           <a-button
             size="small"
             size="small"
@@ -102,6 +108,10 @@
       <!-- 退库 -->
       <!-- 退库 -->
       <recallModal :isOpenModal="showModal" :currentData="currentData" @close="showModal=false" @refresh="$refs.table.refresh(true)"></recallModal>
       <recallModal :isOpenModal="showModal" :currentData="currentData" @close="showModal=false" @refresh="$refs.table.refresh(true)"></recallModal>
     </a-spin>
     </a-spin>
+    <!-- 新增回调单(选择货架) -->
+    <basic-info-modal :openModal="openInfoModal" @ok="handleInfoOk" @close="openInfoModal=false" />
+    <!-- 调回单详情 -->
+    <detailModal :openModal="showDetail" :itemData="detailContent" @close="showDetail=false"></detailModal>
   </a-card>
   </a-card>
 </template>
 </template>
 
 
@@ -114,9 +124,11 @@ import recallModal from './recallModal.vue'
 import getDate from '@/libs/getDate.js'
 import getDate from '@/libs/getDate.js'
 import { toThousands } from '@/libs/tools.js'
 import { toThousands } from '@/libs/tools.js'
 import shelfList from '@/views/common/shelfList'
 import shelfList from '@/views/common/shelfList'
+import basicInfoModal from './basicInfoModal.vue'
+import detailModal from './detailModal'
 import { shelfRecallList, shelfRecallDetailList, shelfRecallCancel, shelfRecallStateCount, shelfRecallDelete } from '@/api/shelfRecall.js'
 import { shelfRecallList, shelfRecallDetailList, shelfRecallCancel, shelfRecallStateCount, shelfRecallDelete } from '@/api/shelfRecall.js'
 export default {
 export default {
-  components: { STable, recallModal, rangeDate, shelfList },
+  components: { STable, recallModal, rangeDate, shelfList, basicInfoModal, detailModal },
   mixins: [commonMixin],
   mixins: [commonMixin],
   data () {
   data () {
     return {
     return {
@@ -140,10 +152,11 @@ export default {
         shelfSn: undefined, // 数字货架sn
         shelfSn: undefined, // 数字货架sn
         bizType: 'ALL'
         bizType: 'ALL'
       },
       },
+      openInfoModal: false,
       columns: [
       columns: [
         { title: '序号', dataIndex: 'no', width: '5%', align: 'center' },
         { title: '序号', dataIndex: 'no', width: '5%', align: 'center' },
         { title: '创建时间', dataIndex: 'createDate', width: '15%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '创建时间', dataIndex: 'createDate', width: '15%', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '调回单号', dataIndex: 'recallBillNo', width: '20%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '调回单号', scopedSlots: { customRender: 'recallBillNo' }, width: '20%', align: 'center' },
         { title: '货架名称', dataIndex: 'shelfInfo.shelfName', width: '25%', align: 'left', customRender: function (text) { return text || '--' }, ellipsis: true },
         { title: '货架名称', dataIndex: 'shelfInfo.shelfName', width: '25%', align: 'left', customRender: function (text) { return text || '--' }, ellipsis: true },
         { title: '状态', dataIndex: 'billStateDictValue', width: '7%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '状态', dataIndex: 'billStateDictValue', width: '7%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '调回总量', dataIndex: 'totalQty', width: '9%', align: 'center', customRender: function (text) { return (text || text == 0) ? toThousands(text) : '--' } },
         { title: '调回总量', dataIndex: 'totalQty', width: '9%', align: 'center', customRender: function (text) { return (text || text == 0) ? toThousands(text) : '--' } },
@@ -159,6 +172,8 @@ export default {
         { title: '单位', dataIndex: 'product.unit', width: '15%', align: 'center', customRender: function (text) { return text || '--' } }
         { title: '单位', dataIndex: 'product.unit', width: '15%', align: 'center', customRender: function (text) { return text || '--' } }
       ],
       ],
       innerData: [],
       innerData: [],
+      showDetail: false,
+      detailContent: null,
       // 加载数据方法 必须为 Promise 对象
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
       loadData: parameter => {
         this.disabled = true
         this.disabled = true
@@ -323,6 +338,14 @@ export default {
         _this.setTableH()
         _this.setTableH()
       })
       })
       this.getSumByType()
       this.getSumByType()
+    },
+    // 详情
+    handleDetail (con) {
+      this.detailContent = con
+      this.showDetail = true
+    },
+    handleInfoOk () {
+
     }
     }
   },
   },
   mounted () {
   mounted () {
@@ -385,4 +408,7 @@ export default {
       height: 30px!important;
       height: 30px!important;
     }
     }
   }
   }
+  .btnStyle{
+    margin:10px 0 20px;
+  }
 </style>
 </style>

+ 9 - 1
src/views/numsGoodsShelves/recallStockManagement/editStock.vue

@@ -38,6 +38,14 @@
               placeholder="请选择仓库仓位"
               placeholder="请选择仓库仓位"
               style="width: 100%;" />
               style="width: 100%;" />
           </template>
           </template>
+          <template slot="putCost" slot-scope="text, record">
+            <a-input
+              size="small"
+              placeholder="请输入入库单价"
+              style="width: 100%;"
+              v-model="record.putCost" >
+            </a-input>
+          </template>
         </s-table>
         </s-table>
         <div style="text-align: center;margin-top: 20px;">
         <div style="text-align: center;margin-top: 20px;">
           <a-button size="small" class="button-primary" type="primary" @click="handleBack(1)">确认入库</a-button>
           <a-button size="small" class="button-primary" type="primary" @click="handleBack(1)">确认入库</a-button>
@@ -82,7 +90,7 @@ export default {
         { title: '产品名称', dataIndex: 'productName', width: '20%', align: 'left', customRender: function (text) { return text || '--' } },
         { title: '产品名称', dataIndex: 'productName', width: '20%', align: 'left', customRender: function (text) { return text || '--' } },
         { title: '入库数量', dataIndex: 'putQty', width: '7.5%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '入库数量', dataIndex: 'putQty', width: '7.5%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '单位', dataIndex: 'productUnit', width: '5%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '单位', dataIndex: 'productUnit', width: '5%', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '入库单价', dataIndex: 'putCost', width: '7.5%', align: 'center', customRender: function (text) { return (text || text == 0) ? text : '--' } },
+        { title: '入库单价', scopedSlots: { customRender: 'putCost' }, width: '7.5%', align: 'center' },
         { title: '入库成本', dataIndex: 'putTotalCost', width: '25%', align: 'center', customRender: function (text) { return (text || text == 0) ? text : '--' } },
         { title: '入库成本', dataIndex: 'putTotalCost', width: '25%', align: 'center', customRender: function (text) { return (text || text == 0) ? text : '--' } },
         { title: '操作', width: '15%', align: 'left', scopedSlots: { customRender: 'action' } }
         { title: '操作', width: '15%', align: 'left', scopedSlots: { customRender: 'action' } }
       ],
       ],

+ 13 - 1
src/views/numsGoodsShelves/shelfMonitoring/list.vue

@@ -79,6 +79,13 @@
             <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
             <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
               <a-button type="primary" @click="handleSearch" :disabled="disabled" id="shelfMonitoringList-refresh">查询</a-button>
               <a-button type="primary" @click="handleSearch" :disabled="disabled" id="shelfMonitoringList-refresh">查询</a-button>
               <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shelfMonitoringList-reset">重置</a-button>
               <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shelfMonitoringList-reset">重置</a-button>
+              <a-button
+                type="primary"
+                class="button-warning"
+                @click="handleExport"
+                :disabled="disabled"
+                :loading="exportLoading"
+                id="salesManagementList-export">导出</a-button>
               <a @click="advanced=!advanced" style="margin-left: 5px">
               <a @click="advanced=!advanced" style="margin-left: 5px">
                 {{ advanced ? '收起' : '展开' }}
                 {{ advanced ? '收起' : '展开' }}
                 <a-icon :type="advanced ? 'up' : 'down'"/>
                 <a-icon :type="advanced ? 'up' : 'down'"/>
@@ -178,7 +185,8 @@ export default {
       rules: {
       rules: {
         'shelfSn': [{ required: true, message: '请选择货架', trigger: 'change' }]
         'shelfSn': [{ required: true, message: '请选择货架', trigger: 'change' }]
       },
       },
-      disabled: false, //  查询、重置按钮是否可操作
+      disabled: false, //  查询、重置、导出按钮是否可操作
+      exportLoading: false, // 导出loading
       columns: [
       columns: [
         { title: '货位号', dataIndex: 'shelfPlaceCode', width: '10%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '货位号', dataIndex: 'shelfPlaceCode', width: '10%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '绑定产品编码', dataIndex: 'productCode', width: '12%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '绑定产品编码', dataIndex: 'productCode', width: '12%', align: 'center', customRender: function (text) { return text || '--' } },
@@ -290,6 +298,10 @@ export default {
       this.queryParam.unsalableDaysBegin = undefined
       this.queryParam.unsalableDaysBegin = undefined
       this.queryParam.unsalableDaysEnd = undefined
       this.queryParam.unsalableDaysEnd = undefined
       this.handleSearch()
       this.handleSearch()
+    },
+    // 导出
+    handleExport () {
+
     },
     },
     // 新增调回单
     // 新增调回单
     handleAddBack () {
     handleAddBack () {