lilei 6 ay önce
ebeveyn
işleme
2ff08e8e24

+ 7 - 13
src/views/salesManagement/salesQueryNew/comps/detailProductList.vue

@@ -98,7 +98,7 @@ export default {
       type: Array,
       default: () => []
     },
-    transferQty: {// 发货经销商库存
+    transferQty: {// 发货经销商库存是否满足
       type: [String, Number],
       default: ''
     },
@@ -129,7 +129,6 @@ export default {
       outStockStr: '', // 产品库存不足提示信息
       showEmpty: false, // 是否显示空数据图片
       showTableHead: true, // 是否显示表格头部
-      colspanNums: 13, // 单元格合并列数
       hasOutStockOfActive: false, // 产品是否存在缺货
       simpleImage: Empty.PRESENTED_IMAGE_SIMPLE, // 空图片
       showStockCol: false, // 显示第三方库存
@@ -249,9 +248,8 @@ export default {
           arr.push({ title: '第三方库存', field: 'thirdStockQty', width: 80, key: 'mm', align: 'center', operationColumn: false, renderBodyCell: ({ row, column, rowIndex }, h) => { return numsFormat(row[column.field]) } })
         }
       }
-      if (this.showTransferDealer) {
+      if (this.showTransferDealer && this.type == 'normal') {
         arr.push({ title: '发货经销商库存', field: 'transferDealerStockQty', width: 100, key: 'tt', align: 'center', operationColumn: false, renderBodyCell: ({ row, column, rowIndex }, h) => { return transferDealerInfo(row, row[column.field], h) } })
-        this.colspanNums = this.colspanNums + 1
       }
       arr = arr.concat([
         { title: '待下推数', field: 'unpushedQty', width: 80, key: 'o', align: 'center', operationColumn: false, renderBodyCell: ({ row, column, rowIndex }, h) => { return numsFormat(row[column.field]) } },
@@ -307,8 +305,10 @@ export default {
           return (!item.transferDealerStockQty || (item.transferDealerStockQty && item.transferDealerStockQty * 1 < item.qty * 1))
         } else if (this.transferQty == '1') { // 满足
           return (item.transferDealerStockQty && item.transferDealerStockQty * 1 >= item.qty * 1)
+        } else {
+          return false
         }
-      })
+      }).filter(item => item.warehouseSn == this.warehouseSn)
     },
     // 查询表格数据
     async searchTable () {
@@ -329,21 +329,15 @@ export default {
       // 查询活动产品明细列表
       const activeList = this.type == 'active' ? await salesDetailExtPromoList({ salesPromoSnSet: [], ...params }).then(res => res.data) : []
       // 发货经销商时 查询
-
       if (this.type == 'normal') {
         if (this.chooseList && this.chooseList.length) {
-          this.dataSource = this.chooseList
-          if (this.transferQty) {
-            this.searchTableData(this.chooseList)
-          }
+          this.searchTableData(this.chooseList)
         } else {
           // 赋值
           this.dataSource = normalList
-          if (this.transferQty) {
-            this.searchTableData(normalList)
-          }
         }
       } else {
+        // 查询活动产品
         this.dataSource = activeList
       }
 

+ 9 - 0
src/views/salesManagement/salesQueryNew/detail.vue

@@ -171,6 +171,9 @@
             :promoFlag="promoFlag"
             :salesBillSn="$route.params.sn || bizSn"
             :authCode="authCode"
+            :chooseList="chooseDealerList"
+            :transferQty="transferQty"
+            :showTransferDealer="showTransferDealer"
             :showCityPrice="isCityPrice"
             @hideTable="v=>hideNormalTable=v">
           </detailProductList>
@@ -424,6 +427,10 @@ export default {
     showStock () {
       return this.detailData && (this.detailData.billStatus == 'WAIT_AUDIT' || this.detailData.billStatus == 'HQ_CHANGE') && this.$hasPermissions('B_salesAudit')
     },
+    // 是否显示发货经销商按钮  发货经销商库存
+    showTransferDealer () {
+      return this.$hasPermissions('B_salesTransfer') && this.$route.params.pageType != 'salesNewDetailAudit' && (this.detailData && this.detailData.promoFlag != 1 && (this.detailData.billStatus == 'WAIT_AUDIT' || this.detailData.billStatus == 'SUPERIOR_AUDIT_REJECT' || this.detailData.billStatus == 'TRANSFER_AUDIT_REJECT') && this.detailData.salesBillSource == 'PURCHASE' && this.detailData.orderType == 'TIRE')
+    },
     // 表格高度计算
     pageHeight () {
       if (!this.bizSn && (this.hideNormalTable || this.hideActiveTable || this.activeList.length == 0)) {
@@ -442,6 +449,7 @@ export default {
     openDealerModal () {
       this.openDealerStock = true
     },
+    // 确定选择经销商库存
     openDealerStockOk (val, data) {
       this.selectedDealer = val.dealerName
       this.selectedDealerSn = val.dealerSn
@@ -517,6 +525,7 @@ export default {
     resetSearchForm () {
       this.warehouseSn = undefined
       this.promoFlag = undefined
+      this.transferQty = undefined
       this.searchTable()
     },
     // 查询数据

+ 36 - 13
src/views/salesManagement/salesQueryNew/list.vue

@@ -95,6 +95,11 @@
                     allowClear></v-select>
                 </a-form-item>
               </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="发货经销商">
+                  <custList id="salesManagementList-transferDealerSn" :dataAuthFlag="0" placeholder="请输入发货经销商" ref="dealerTireScopeList" @change="custTireChange" />
+                </a-form-item>
+              </a-col>
               <a-col :md="6" :sm="24">
                 <a-form-item label="转费用报销单">
                   <a-select v-model="queryParam.expenseClainFlag" placeholder="请选择转费用报销单状态" allowClear>
@@ -181,10 +186,11 @@
           </template>
           <!-- 销售单号 -->
           <template slot="salesBillNo" slot-scope="text, record">
-            <span v-if="$hasPermissions('B_salesDetail')" class="link-bule" @click="handleDetail(record)">{{ record.salesBillNo }}</span>
+            <span v-if="$hasPermissions('B_salesDetail')" class="link-bule" @click="handleDetail(record,'salesNewDetail')">{{ record.salesBillNo }}</span>
             <span v-else>{{ record.salesBillNo }}</span>
             <a-badge :count="'改'+record.changeTimes" :number-style="{ zoom:'0.8' }" v-if="record.changeTimes>0"></a-badge>
             <a-badge count="促" v-if="record.promoFlag==1" :number-style="{ backgroundColor: '#52c41a', zoom:'0.8' }"></a-badge>
+            <a-badge count="转" v-if="record.transferFlag==1" :number-style="{ backgroundColor: '#ccb01e', zoom:'0.8' }"></a-badge>
           </template>
           <!-- 出库仓库 -->
           <template slot="warehouseBox" slot-scope="text, record">
@@ -205,8 +211,8 @@
                 size="small"
                 type="link"
                 class="button-warning"
-                v-if="(record.billStatus == 'WAIT_AUDIT'||record.billStatus=='WAIT_UP_AUDIT_PASS')&&$hasPermissions('B_salesAudit')"
-                @click="handleDetailAudit(record)"
+                v-if="(record.billStatus == 'WAIT_AUDIT' || record.billStatus == 'SUPERIOR_AUDIT_REJECT' || record.billStatus == 'TRANSFER_AUDIT_REJECT')&&$hasPermissions('B_salesAudit')"
+                @click="handleDetail(record,'salesNewDetailAudit')"
               >审核</a-button>
               <a-button
                 size="small"
@@ -228,11 +234,31 @@
                 size="small"
                 type="link"
                 class="button-info"
-                v-if="record.salesBillSource == 'PURCHASE' && (record.billStatus == 'WAIT_AUDIT' || record.billStatus == 'HQ_CHANGE') && $hasPermissions('B_salesEdit')"
+                v-if="record.salesBillSource == 'PURCHASE' && (record.billStatus == 'WAIT_AUDIT' || record.billStatus == 'HQ_CHANGE' || record.billStatus == 'SUPERIOR_AUDIT_REJECT' || record.billStatus == 'TRANSFER_AUDIT_REJECT') && $hasPermissions('B_salesEdit')"
                 @click="handleChangeOrder(record)"
               >
                 改单
               </a-button>
+              <!-- 转单显示条件: 业务状态  待审核;非促销单;下级提交,且产品类型是“轮胎产品”的销售单 -->
+              <a-button
+                size="small"
+                type="link"
+                class="button-success"
+                v-if="$hasPermissions('B_salesTransfer')&&record.promoFlag!=1&&(record.billStatus == 'WAIT_AUDIT'||record.billStatus == 'SUPERIOR_AUDIT_REJECT' || record.billStatus == 'TRANSFER_AUDIT_REJECT')&&record.salesBillSource=='PURCHASE'&&record.orderType==='TIRE'"
+                @click="handleDetail(record,'salesNewDetailTransfer')"
+              >
+                转单
+              </a-button>
+              <!-- 上级审核 -->
+              <a-button
+                size="small"
+                type="link"
+                class="button-info"
+                v-if="$hasPermissions('B_higherLevelAudit')&&record.billStatus == 'SUPERIOR_WAIT_AUDIT'"
+                @click="handleDetail(record,'salesNewDetailTransfer')"
+              >
+                上级审核
+              </a-button>
               <a-button
                 size="small"
                 type="link"
@@ -246,7 +272,7 @@
                 size="small"
                 type="link"
                 class="button-error"
-                v-if="record.salesBillSource == 'PURCHASE' && (record.billStatus == 'WAIT_AUDIT' || record.billStatus == 'HQ_CHANGE') && $hasPermissions('B_salesDel')"
+                v-if="record.salesBillSource == 'PURCHASE' && (record.billStatus == 'WAIT_AUDIT' || record.billStatus == 'HQ_CHANGE'||record.billStatus == 'SUPERIOR_AUDIT_REJECT' || record.billStatus == 'TRANSFER_AUDIT_REJECT') && $hasPermissions('B_salesDel')"
                 @click="handleDel(record)"
               >
                 取消
@@ -318,6 +344,7 @@ import reportModal from '@/views/common/reportModal.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
 import customerService from '@/views/common/customerService'
 import hideCellMenus from '@/views/common/hideCellMenus'
+import custList from '@/views/common/custList.vue'
 // 接口
 import { dispatchBatchPrintStatus, queryBySalesBillSn } from '@/api/dispatch'
 import { salesList, salesDel, salesCancle, salesCount, queryCreateBySalesBillSn, expenseAccountSave, changeBillCheckUpdatePrice, changeBillCheck } from '@/api/salesNew'
@@ -326,7 +353,7 @@ import { salesDetailExport } from '@/api/salesBillReport'
 export default {
   name: 'SalesQueryList',
   mixins: [commonMixin],
-  components: { VTable, VSelect, tipModal, hideCellMenus, chooseCustomModal, dealerSubareaScopeList, Area, rangeDate, subarea, commonModal, reportModal, chooseWarehouse, baseDataModal, customerService },
+  components: { VTable, VSelect, tipModal, custList, hideCellMenus, chooseCustomModal, dealerSubareaScopeList, Area, rangeDate, subarea, commonModal, reportModal, chooseWarehouse, baseDataModal, customerService },
   data () {
     return {
       spinning: false,
@@ -545,13 +572,9 @@ export default {
     handleDispatch (row) {
       this.$router.push({ name: 'waitDispatchNew', params: { salesBillSn: row.salesBillSn } })
     },
-    // 详情
-    handleDetail (row) {
-      this.$router.push({ name: 'salesNewDetail', params: { sn: row.salesBillSn } })
-    },
-    // 审核
-    handleDetailAudit (row) {
-      this.$router.push({ name: 'salesNewDetailAudit', params: { sn: row.salesBillSn } })
+    // 详情 审核  转单
+    handleDetail (row, name) {
+      this.$router.push({ name, params: { sn: row.salesBillSn, pageType: name } })
     },
     // 编辑
     handleEdit (row) {