snow 2 年 前
コミット
3e554ce61e

ファイルの差分が大きいため隠しています
+ 0 - 0
dist/static/js/0.js


+ 16 - 17
src/views/sellOut/deliveryWorkOrder/detail.vue

@@ -1,6 +1,6 @@
 <template>
-  <div class="sellReturnDetail pagePadding">
-    <div style="width: 100%" v-if="powers.some((i) => i == '007')">
+  <div class="sellReturnDetail pagePadding" > 
+    <div style="width: 100%"  v-if="powers.some((i) => i == '007')">
       <el-tabs v-model="activeTabs">
         <el-tab-pane label="业务详情" name="1">
           <el-collapse v-model="activeNames" style="margin: -18px 0 0 0">
@@ -95,6 +95,7 @@
               />
             </el-collapse-item>
 
+            <!--   -->
             <el-collapse-item title="待库管发货" name="2"  v-if="sitem.status === '1' && !isSupertube && ppowers.includes('1') && canSend">
               <express-node @refresh="() => initData()" :sitem="sitem" />
             </el-collapse-item>
@@ -128,21 +129,6 @@ export default {
   name: "deliveryWorkOrderDetail",
   mixins: [mixinPage, resToken],
   components: { ExpressNode },
-  computed: {
-    ...mapGetters(['isSupertube','userInfo']),
-    powers() {
-      const { btnList } = this.$store.getters;
-      const tran = btnList.find((item) => item.menu_route == "deliveryWorkOrderDetail" ) || {};
-      const { action } = tran ?? {};
-      return action ?? [];
-    },
-    ppowers() {
-      const tran =
-        this.$store.getters.roleProcess.find((i) => i.process_type === "FHGD") || {};
-      const { action } = tran ?? {};
-      return action ?? [];
-    }
-  },
   data() {
     return {
       showColumns,
@@ -188,6 +174,19 @@ export default {
       const { contactor:manangerUserId } = this.sitem || {};
       if(!userId || !manangerUserId) return false
       return userId === manangerUserId
+    },
+    ...mapGetters(['isSupertube','userInfo']),
+    powers() {
+      const { btnList } = this.$store.getters;
+      const tran = btnList.find((item) => item.menu_route == "deliveryWorkOrderDetail" ) || {};
+      const { action } = tran ?? {};
+      return action ?? [];
+    },
+    ppowers() {
+      const tran =
+        this.$store.getters.roleProcess.find((i) => i.process_type === "FHGD") || {};
+      const { action } = tran ?? {};
+      return action ?? [];
     }
   },
   methods: {

+ 0 - 4
src/views/sellOut/deliveryWorkOrder/index.vue

@@ -275,10 +275,6 @@
           ></el-tag>
         </template>
 
-        <!-- <template #has_account="{scope}">
-          <el-tag>{{scope.row.has_account}}</el-tag>
-        </template> -->
-
         <template #order_type="{ scope }">
           <el-tag
             :size="tablebtnSize"

+ 1 - 0
src/views/sellOut/salesOrder/components/addForm.vue

@@ -1145,6 +1145,7 @@ export default {
       this.$refs.ruleForm.validateField(key);
       if (key === "good_num") {
         await this.get_new_price();
+        await this.get_goods_active();
       }
     },
     async get_new_price() {

+ 0 - 4
src/views/sellOut/sellReturn/detail.vue

@@ -38,10 +38,6 @@
                   ></el-tag>
                 </template>
 
-                <template slot="is_addr">
-                  {{String(sitem.is_addr) === '1' ? '有地址退货' : '无地址退货'}}
-                </template>
-
                 <template slot="supplierName">
                   <span>{{ sitem.supplierName }}</span>
                   <el-popover placement="top" width="300" trigger="hover">

+ 40 - 13
src/views/supplierSellOut/supplierSellReturn/components/ShowDataTableColumns.js

@@ -3,25 +3,30 @@ const showColumns = [
   {
     prop: 'returnCode',
     label: '退货单编号',
-    span: 7
+    span: 6
+  },
+  {
+    prop: 'orderCode',
+    label: '销售订单编码',
+    span: 6
   },
   {
     prop: 'status',
     label: '退货单状态',
     _slot_: 'status',
-    span: 5
+    span: 4
   },
   {
     prop: 'order_type',
     label: '订单来源',
     _slot_: 'order_type',
-    span: 6
-  }, {
+    span: 4
+  },
+  {
     prop: 'apply_name',
     label: '创建人',
-    span: 6
+    span: 4
   },
-
   {
     prop: 'supplierName',
     label: '销售方公司',
@@ -65,13 +70,19 @@ const showColumns = [
   {
     prop: 'addtime',
     label: '创建时间',
-    span: 7
+    span: 4
+  },
+  {
+    prop: 'is_addr',
+    label: '退货类型',
+    _slot_: 'is_addr',
+    span: 4
   },
   {
     prop: 'send_type',
     label: '下单方式',
     _slot_: 'send_type',
-    span: 5
+    span: 4
   },
   {
     prop: 'loop_total',
@@ -88,14 +99,30 @@ const showColumns = [
     prop: 'remark',
     label: '备注',
     span: 24
+  }
+]
+
+export const setWorkOrderColumns = [
+  {
+    prop: 'orderCode',
+    label: '销售单编号',
+    span: 7
   },
   {
-    prop: 'addrinfo',
-    label: '发货信息',
-    _slot_: 'addrinfo',
-    span: 24
+    prop: 'outCode',
+    label: '发货单编号',
+    span: 7
+  },
+  {
+    prop: 'return_num',
+    label: '退货数量',
+    span: 5
+  },
+  {
+    prop: 'currentWorkOrder',
+    label: '已设置工单数量',
+    span: 5
   }
-
 ]
 
 export { showColumns }

+ 199 - 0
src/views/supplierSellOut/supplierSellReturn/components/child-list.vue

@@ -0,0 +1,199 @@
+<template>
+  <div class="outOrderTable" v-loading="loading">
+    <el-table
+      ref="addrForm"
+      :data="tableData"
+      border
+      :size="'mini'"
+      style="width: 100%"
+      row-key="key"
+      @selection-change="handleSelectionChange"
+    >
+      <el-table-column
+        show-overflow-tooltip
+        prop="outCode"
+        label="发货单号"
+        width="160"
+      />s
+
+      <el-table-column
+        show-overflow-tooltip
+        prop="send_num"
+        label="发货数量"
+        width="80"
+      />
+
+
+      <el-table-column
+        show-overflow-tooltip
+        prop="return_num"
+        label="退货数量"
+        width="80"
+      />
+
+      <el-table-column show-overflow-tooltip prop="is_sale_return_child" label="是否设置售前退货工单" width="145">
+        <template slot-scope="scope">
+          <el-tag size="mini">{{scope.row.is_sale_return_child === '0' ? '未设置' : '已设置'}}</el-tag>
+        </template>
+      </el-table-column>
+
+      <el-table-column show-overflow-tooltip prop="contactor" label="联系人" width="120" />
+      <el-table-column show-overflow-tooltip prop="mobile" label="手机号" width="140" />
+      <el-table-column show-overflow-tooltip prop="addr_code_cn" label="省市区" min-width="140" />
+      <el-table-column show-overflow-tooltip prop="addr" label="详细地址" min-width="140" />
+    </el-table>
+    <div
+      v-if="tableData && tableData.length > 0"
+      class="Pagination"
+      style="text-align: right; margin-top: 10px"
+    >
+      <el-pagination
+        :current-page="parmValue.page"
+        :page-size="15"
+        :size="'mini'"
+        layout="total, prev, pager, next, jumper"
+        :total="pageInfo.total"
+        @current-change="page_curr_change"
+      />
+    </div>
+  </div>
+</template>
+<script>
+import mixinPage from "@/mixins/elPaginationHandle";
+import resToken from "@/mixins/resToken";
+import asyncRequest from "@/apis/service/sellOut/sellReturn";
+import { mapGetters } from "vuex";
+
+export default {
+  name: "salesOrderDetail",
+  mixins: [mixinPage, resToken],
+  props: ["newTime", "id", "sitem"],
+  watch: {
+    newTime: function (val) {
+      if (val) {
+        this.initForm();
+      }
+    },
+  },
+  computed: {
+    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
+    isStock() {
+      const { order_type } = this.sitem || {}
+      return order_type === '1'
+    },
+    powers() {
+      const tran =
+        this.$store.getters.btnList.find(
+          (item) => item.menu_route == "salesOrderDetail"
+        ) || {};
+      const { action } = tran ?? {};
+      return action ?? [];
+    },
+  },
+
+  data() {
+    return {
+      orderCode: "",
+      outCode: "",
+      addr_res: 0,
+      batch_num: 0,
+      addrmodel: false,
+      // 状态
+      statusOptions: [
+        { id: "1", label: "待发货" },
+        { id: "2", label: "发货完成" },
+        { id: "3", label: "已收货" },
+        { id: "4", label: "已全部退货" },
+      ],
+      showGoodsModel: false,
+      stock_code: "",
+      tableData: [],
+      loading: false,
+      queryId: "",
+      status: "",
+      showModel: null,
+      modelId: "",
+      modelItem: null,
+      s_sitem: null,
+      returnId: "",
+      returnItem: null,
+      returnModel: false,
+      wsend_num: "",
+      orderCode: "",
+      returnAllId: "",
+      returnAllSitem: null,
+      returnAllShowModel: false,
+      parmValue: {},
+      pageInfo: {
+        size: 15,
+        curr: 1,
+        total: 0,
+      },
+      multipleSelection: [],
+      resModel: null,
+    };
+  },
+  watch:{
+    sitem:{
+      handler(){
+        if(!this.sitem) return
+        this.initForm();
+      },
+      immediate:true
+    },
+  },
+  methods: {
+    handleSelectionChange(val) {
+      this.multipleSelection = val;
+    },
+    closeModel() {
+      this.modelId = "";
+      this.modelShowModel = false;
+    },
+    refresh() {
+      this.$emit("refresh");
+      this.modelId = "";
+      this.modelShowModel = false;
+    },
+    async initForm() {
+      this.status = "";
+      this.queryId = this.$route.query.id;
+      // this.rulesThis = this.rules;
+      this.resetForm();
+    },
+    async resetForm() {
+      // 重置
+      await this.$nextTick(async () => {
+        await this.searchList();
+      });
+    },
+    page_curr_change(page){
+      console.log(page)
+      this.pageInfo.curr = page;
+      this.searchList();
+    },
+    // 列表搜索
+    async searchList() {
+      this.loading = true
+      const { code, data } = await asyncRequest.reorderRool({returnCode: this.sitem.returnCode,page : this.pageInfo.curr,size : 15});
+      this.loading = false
+      if (code === 0) {
+        const { list ,count, is_sale_return_child_count} = data;
+        this.tableData = list;
+        this.pageInfo.total = count 
+        this.$emit("getWorkOrderCount", count)
+        this.$emit("getCurrentWorkOrderCount", is_sale_return_child_count)
+        /* 从发货信息中拿到第一条数据 **/
+        this.$emit('getSendInfoFirst', list[0])
+      } else if (code >= 100 && code <= 104) {
+        await this.logout();
+      } else {
+        this.tableData = [];
+        this.pageInfo.total = 0;
+      }
+      this.loading = false;
+    },
+  },
+};
+</script>
+<style lang="scss" scoped></style>

+ 13 - 2
src/views/supplierSellOut/supplierSellReturn/detail.vue

@@ -37,6 +37,10 @@
                   <div class="ql-editor" v-html="sitem.record" />
                 </template>
 
+                <template slot="is_addr">
+                  <el-tag size="mini">{{sitem.is_addr === '0' ? '无地址退货' : sitem.is_addr === '1' ? '有地址退货' : '--'}}</el-tag>
+                </template>
+
                 <template slot="supplierName">
                   <span>{{ sitem.supplierName }}</span>
                   <el-popover placement="top" width="300" trigger="hover">
@@ -139,6 +143,11 @@
                 </template>
               </show-data-table>
             </el-collapse-item>
+
+            <el-collapse-item title="申请退货的发货单" name="8" v-if="sitem && sitem.is_addr === '1'">
+              <child-list :sitem="sitem" />
+            </el-collapse-item>
+
             <el-collapse-item title="商品信息" name="2">
               <show-goods-data-table
                 :newTime="newTime"
@@ -202,13 +211,15 @@ import { showColumns } from "./components/ShowDataTableColumns";
 import { xs_order_type_options } from "@/assets/js/statusList";
 import SetWorkOrder from "@/views/sellOut/sellAfterApply/components/set-work-order.vue";
 import { mapGetters } from "vuex";
+import ChildList from "./components/child-list.vue"
 export default {
   name: "sellReturnDetail",
   mixins: [mixinPage, resToken],
   components: {
     comExamForm,
     SetWorkOrder,
-    ApprovalResults
+    ApprovalResults,
+    ChildList
   },
   computed: {
     ...mapGetters(['isSupertube']),
@@ -244,7 +255,7 @@ export default {
       ],
       xs_order_type_options,
       sitem: null, //传给组件
-      activeNames: ["0", "1", "2", "3", "4", "5", "6", "7"],
+      activeNames: ["0", "1", "2", "3", "4", "5", "6", "7", "8"],
       sitem: null,
       status: "", //存储详情接口状态
       statusList: [

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません