Procházet zdrojové kódy

feat: 销售订单和客户管理详情增加受托收货详情

liujt před 8 měsíci
rodič
revize
a205f53cb0

+ 14 - 9
src/views/saleManage/contact/components/drawer.vue

@@ -85,7 +85,13 @@
           <el-tab-pane label="报价单" name="报价单">
             <quotation :key="row?.base?.id" :contactData="row.base"></quotation>
           </el-tab-pane>
-
+          <!-- 合同评审 -->
+          <el-tab-pane label="合同评审" name="合同评审">
+            <contractReview
+              :contractData="row"
+              ref="contractReviewRef"
+            ></contractReview>
+          </el-tab-pane>
           <el-tab-pane label="销售订单" name="销售订单">
             <saleOrder :key="row?.base?.id" :contactData="row.base"></saleOrder>
           </el-tab-pane>
@@ -96,6 +102,9 @@
               :contactData="row.base"
             ></contractBook>
           </el-tab-pane>
+          <el-tab-pane label="受托发货" name="受托发货">
+            <entrustedReceive :key="row?.base?.id" :contactData="row.base"></entrustedReceive>
+          </el-tab-pane>
           <el-tab-pane label="发货单" name="发货单">
             <invoice :key="row?.base?.id" :contactData="row.base"></invoice>
           </el-tab-pane>
@@ -149,13 +158,6 @@
           ref="saleOderAftersalesListRef"
           ></saleOderAftersalesList>
           </el-tab-pane>
-          <!-- 合同评审 -->
-          <el-tab-pane label="合同评审" name="合同评审">
-            <contractReview
-              :contractData="row"
-              ref="contractReviewRef"
-            ></contractReview>
-          </el-tab-pane>
         </el-tabs>
       </div>
 
@@ -232,6 +234,8 @@
   import contractBook from '@/views/contractManage/contractBook/index.vue';
   //销售订单
   import saleOrder from '@/views/saleManage/saleOrder/index.vue';
+  //受托收货
+  import entrustedReceive from '@/views/saleManage/saleOrder/entrustedReceive/index.vue';
   //发货单
   import invoice from '@/views/saleManage/saleOrder/invoice/index.vue';
   //退货单
@@ -283,7 +287,8 @@
       certificateManagement,
       applyList,
       supplyList,
-      saleOderAftersalesList
+      saleOderAftersalesList,
+      entrustedReceive
     },
     data() {
       return {

+ 7 - 1
src/views/saleManage/saleOrder/components/drawer.vue

@@ -64,6 +64,9 @@
         <el-tab-pane label="详细信息" name="详细信息">
           <saleOrderInfo ref="saleOrderInfoRef"></saleOrderInfo>
         </el-tab-pane>
+        <el-tab-pane label="受托收货" name="受托收货">
+          <entrustedReceive :saleOrderData="row" :key="row.id"></entrustedReceive>
+        </el-tab-pane>
         <el-tab-pane label="发货单" name="发货单">
           <invoice :saleOrderData="row" :key="row.id"></invoice>
         </el-tab-pane>
@@ -145,6 +148,8 @@ import dictMixins from '@/mixins/dictMixins';
 
 import bpmDetail from '@/views/bpm/processInstance/detail.vue';
 import saleOrderInfo from './darwerComponents/saleOrderInfo.vue';
+//受托收货
+import entrustedReceive from '@/views/saleManage/saleOrder/entrustedReceive/index.vue';
 //发货单
 import invoice from '@/views/saleManage/saleOrder/invoice/index.vue';
 //退货单
@@ -186,7 +191,8 @@ export default {
     warehousing,
     receivableManage,
     saleOrderReminderList,
-    saleOderAftersalesList
+    saleOderAftersalesList,
+    entrustedReceive
   },
   data() {
     return {

+ 19 - 1
src/views/saleManage/saleOrder/entrustedReceive/components/addOrEditDialog.vue

@@ -1,6 +1,7 @@
 <template>
   <ele-modal
     custom-class="ele-dialog-form long-dialog-form"
+    :append-to-body="true"
     :centered="true"
     :visible.sync="addOrEditDialogFlag"
     :title="title"
@@ -106,6 +107,7 @@
     <!--  采购订单  -->
     <orderListDialog
       :searchParams="orderSearchParams"
+      :contactData="contactData"
       ref="orderListDialogRef"
       @changeParent="changeOrder"
     ></orderListDialog>
@@ -142,7 +144,20 @@ import { getWarehouseListByIds } from '@/api/purchasingManage/returnGoods';
 
 export default {
   props: {
-    addOrEditDialogFlag: Boolean
+    addOrEditDialogFlag: Boolean,
+    //客户管理数据
+    contactData: {
+        type: Object,
+        default: () => {
+          return {};
+        }
+      },
+      saleOrderData: {
+        type: Object,
+        default: () => {
+          return {};
+        }
+      }
   },
   mixins: [dictMixins],
   components: {
@@ -214,6 +229,9 @@ export default {
       if (orderId) {
         await this.getOrderDetail(orderId);
       }
+      if (this.saleOrderData.id) {
+        await this.getOrderDetail([this.saleOrderData.id]);
+      }
       if (row && row?.id) {
         await this.getSendSaleOrderDetail(row?.id);
       }

+ 40 - 1
src/views/saleManage/saleOrder/entrustedReceive/index.vue

@@ -26,6 +26,10 @@
               icon="el-icon-plus"
               class="ele-btn-icon"
               @click="openEdit('add', {})"
+              v-if="
+                !saleOrderData.id ||
+                (saleOrderData.id && saleOrderData.orderStatus == 2)
+              "
             >
               新建
             </el-button>
@@ -133,6 +137,8 @@
       ref="addOrEditDialogRef"
       :add-or-edit-dialog-flag.sync="addOrEditDialogFlag"
       v-if="addOrEditDialogFlag"
+      :saleOrderData="saleOrderData"
+      :contactData="contactData"
       @done="reload"
     ></add-or-edit-dialog>
     <!--   详情 -->
@@ -156,6 +162,7 @@
 
     <addReturnGoodsDialog
       ref="addReturnGoodsRef"
+      :contactData="contactData"
       @done="reload"
     ></addReturnGoodsDialog>
     <process-submit-dialog
@@ -202,6 +209,21 @@
       detailDialog,
       addReturnGoodsDialog
     },
+    //客户管理数据
+    props: {
+      contactData: {
+        type: Object,
+        default: () => {
+          return {};
+        }
+      },
+      saleOrderData: {
+        type: Object,
+        default: () => {
+          return {};
+        }
+      }
+    },
     data() {
       return {
         activeComp: 'outSourceSend',
@@ -322,10 +344,27 @@
       };
     },
     computed: {},
-
+    watch: {
+      saleOrderData: {
+        handler(newVal, oldVal) {
+          if (newVal.id) {
+            this.reload();
+          }
+        },
+        deep: true
+      }
+    },
     methods: {
       /* 表格数据源 */
       datasource({ page, limit, where, order }) {
+        if (this.saleOrderData.id) {
+          //订单详情进入
+          where['orderId'] = this.saleOrderData.id;
+        }
+        // 客户详情进入
+        if (this.contactData.id) {
+          where['contactId'] = this.contactData.id;
+        }
         return getSaleEntrustedReceivePageAPI({
           pageNum: page,
           size: limit,