lilei 2 лет назад
Родитель
Сommit
3372a399e8
2 измененных файлов с 43 добавлено и 10 удалено
  1. 15 1
      src/api/dispatch.js
  2. 28 9
      src/views/salesManagement/salesQuery/list.vue

+ 15 - 1
src/api/dispatch.js

@@ -23,7 +23,13 @@ export const dispatchDetaillList = (params) => {
     method: 'post'
   })
 }
-
+// 根据销售单sn查询关联的所有发货单
+export const queryBySalesBillSn = (params) => {
+  return axios({
+    url: `/dispatch/queryBySalesBillSn/${params.salesBillSn}`,
+    method: 'get'
+  })
+}
 // 根据销售单SN查询发货单
 export const findBySalesBillSn = (params) => {
   return axios({
@@ -77,6 +83,14 @@ export const dispatchPrintStatus = (params) => {
     method: 'get'
   })
 }
+// 批量备货打印
+export const dispatchBatchPrintStatus = (params) => {
+  return axios({
+    url: `/dispatch/batchUpdatePrintStatus`,
+    data: params,
+    method: 'post'
+  })
+}
 // 下推 详情  打印
 export const dispatchDetailPrint = params => {
   const url = `/dispatch/print/${params.type}`

+ 28 - 9
src/views/salesManagement/salesQuery/list.vue

@@ -223,11 +223,14 @@
     <choose-custom-modal :show="openModal" @ok="chooseCustomOk" @cancel="openModal=false"></choose-custom-modal>
     <!-- 操作提示 -->
     <commonModal modalTit="操作提示" :openModal="showTipModal" @cancel="canselModal" @ok="updatePrintStatus">
-      <div style="text-align: center;">
+      <div style="text-align: center;" v-if="this.tipData&&this.tipData.length">
         <div style="margin-bottom: 15px;font-size: 14px;"><strong>确认允许此单进行备货打印吗?</strong></div>
-        <div style="line-height: 24px;">
-          <div>备货单号:{{ tipData&&tipData.dispatchBillNo }}</div>
-          <div>客户名称:{{ tipData&&tipData.buyerName }}</div>
+        <div style="line-height: 24px;" v-if="this.tipData.length == 1">
+          <div>备货单号:{{ tipData[0]&&tipData[0].dispatchBillNo }}</div>
+          <div>客户名称:{{ tipData[0]&&tipData[0].buyerName }}</div>
+        </div>
+        <div v-else>
+
         </div>
       </div>
     </commonModal>
@@ -246,7 +249,7 @@ import commonModal from '@/views/common/commonModal.vue'
 import chooseCustomModal from './chooseCustomModal.vue'
 import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue'
 import { salesList, salesDel, salesCount } from '@/api/sales'
-import { findBySalesBillSn, dispatchPrintStatus } from '@/api/dispatch'
+import { findBySalesBillSn, dispatchBatchPrintStatus, queryBySalesBillSn } from '@/api/dispatch'
 export default {
   name: 'SalesQueryList',
   mixins: [commonMixin],
@@ -317,7 +320,8 @@ export default {
       },
       addrProvinceList: [], //  省下拉
       showCancelNum: false, //  是否显示取消数量和待下推数量
-      tipData: null // 备货单信息
+      tipData: null, // 备货单信息
+      tempSalesBillSn: null
     }
   },
   computed: {
@@ -412,15 +416,30 @@ export default {
     },
     // 允许备货打印
     handlePrint (row) {
-      this.tipData = row
-      this.showTipModal = true
+      // 获取关联的下推单
+      this.tempSalesBillSn = row.salesBillSn
+      queryBySalesBillSn({ salesBillSn: row.salesBillSn }).then(res => {
+        this.tipData = res.data || []
+        this.showTipModal = true
+      })
     },
     canselModal () {
       this.tipData = null
       this.showTipModal = false
+      this.tempSalesBillSn = null
     },
+    // 允许备货打印状态
     updatePrintStatus () {
-      dispatchPrintStatus({ dispatchBillSn: this.tipData.dispatchBillSn, printStatus: 'NO_PRINT' }).then(res => {
+      const dispatchBillSnList = []
+      this.tipData.map(item => {
+        dispatchBillSnList.push(item.dispatchBillSn)
+      })
+      const params = {
+        'salesBillSn': this.tempSalesBillSn,
+        'dispatchBillSnList': dispatchBillSnList,
+        'printStatus': 'NO_PRINT'
+      }
+      dispatchBatchPrintStatus(params).then(res => {
         if (res.status == 200) {
           this.canselModal()
           this.$message.info(res.message)