Browse Source

Merge branch 'sit'

xiaodai2022 3 years ago
parent
commit
d782ad4e7f
72 changed files with 1305 additions and 10890 deletions
  1. 10 0
      dist/static/js/0.js
  2. 10 0
      dist/static/js/app.js
  3. 2 2
      src/apis/service/sellOut/sellAfterApply/index.js
  4. 4 0
      src/apis/service/sellOut/sellOutOrder/index.js
  5. 0 35
      src/apis/service/sellOut/zxOrder/detail.js
  6. 0 18
      src/apis/service/sellOut/zxOrder/index.js
  7. 0 21
      src/apis/service/sellOut/zxReturn/index.js
  8. 0 17
      src/apis/service/sellOut/zxoutOrder/index.js
  9. 7 3
      src/components/globalComponents/search-stock/main.vue
  10. 32 31
      src/views/purchaseIn/purchaseDiffOrder/addEditModel.vue
  11. 13 14
      src/views/purchaseIn/purchaseOrder/detail.vue
  12. 33 26
      src/views/purchaseIn/wsmInOrder/columns.js
  13. 15 7
      src/views/purchaseIn/wsmInOrder/index.vue
  14. 1 1
      src/views/sellOut/project/components/columnsForm.js
  15. 55 15
      src/views/sellOut/project/components/setPlan.vue
  16. 7 14
      src/views/sellOut/salesOrder/detail.vue
  17. 0 74
      src/views/sellOut/sellAfterApply/ShowDataTableColumns.js
  18. 202 97
      src/views/sellOut/sellAfterApply/columns.js
  19. 0 88
      src/views/sellOut/sellAfterApply/components/addEdit.vue
  20. 0 573
      src/views/sellOut/sellAfterApply/components/addEditForm.vue
  21. 76 41
      src/views/sellOut/sellAfterApply/components/express_feedback.vue
  22. 0 358
      src/views/sellOut/sellAfterApply/components/purchase_check.vue
  23. 226 0
      src/views/sellOut/sellAfterApply/components/purchase_exam.vue
  24. 178 140
      src/views/sellOut/sellAfterApply/detail.vue
  25. 19 28
      src/views/sellOut/sellAfterApply/index.vue
  26. 0 153
      src/views/sellOut/sellAfterApply/options.js
  27. 0 117
      src/views/sellOut/sellOutOrder/ShowDataTableColumns.js
  28. 205 7
      src/views/sellOut/sellOutOrder/columns.js
  29. 19 19
      src/views/sellOut/sellOutOrder/components/logisticsForm.vue
  30. 21 51
      src/views/sellOut/sellOutOrder/components/returnExpress.vue
  31. 164 41
      src/views/sellOut/sellOutOrder/detail.vue
  32. 2 2
      src/views/sellOut/sellOutOrder/index.vue
  33. 1 0
      src/views/sellOut/sellReturn/components/comExamForm.vue
  34. 1 0
      src/views/sellOut/stockApply/components/purchaseBack.vue
  35. 1 1
      src/views/sellOut/zixunOrder/detail.vue
  36. 1 1
      src/views/sellOut/zixunOrder/index.vue
  37. 0 235
      src/views/sellOut/zxOrder/addEdit.vue
  38. 0 80
      src/views/sellOut/zxOrder/columns.js
  39. 0 900
      src/views/sellOut/zxOrder/components/addEdit.vue
  40. 0 687
      src/views/sellOut/zxOrder/components/addForm.vue
  41. 0 288
      src/views/sellOut/zxOrder/components/feedback-form.vue
  42. 0 245
      src/views/sellOut/zxOrder/components/order-out-table.vue
  43. 0 367
      src/views/sellOut/zxOrder/components/out-order-add-model.vue
  44. 0 293
      src/views/sellOut/zxOrder/detail.vue
  45. 0 363
      src/views/sellOut/zxOrder/index.vue
  46. 0 0
      src/views/sellOut/zxOrder/咨询-订单管理
  47. 0 376
      src/views/sellOut/zxReturn/addEdit.vue
  48. 0 67
      src/views/sellOut/zxReturn/columns.js
  49. 0 278
      src/views/sellOut/zxReturn/components/addEdit.vue
  50. 0 39
      src/views/sellOut/zxReturn/components/columnsForm.js
  51. 0 449
      src/views/sellOut/zxReturn/components/purchase-exam.vue
  52. 0 351
      src/views/sellOut/zxReturn/components/purchase-feedback.vue
  53. 0 56
      src/views/sellOut/zxReturn/components/showForm.vue
  54. 0 281
      src/views/sellOut/zxReturn/detail.vue
  55. 0 335
      src/views/sellOut/zxReturn/index.vue
  56. 0 0
      src/views/sellOut/zxReturn/咨询-退货单
  57. 0 107
      src/views/sellOut/zxoutOrder/ShowDataTableColumns.js
  58. 0 63
      src/views/sellOut/zxoutOrder/columns.js
  59. 0 84
      src/views/sellOut/zxoutOrder/components/addEdit.vue
  60. 0 89
      src/views/sellOut/zxoutOrder/components/addEditA.vue
  61. 0 59
      src/views/sellOut/zxoutOrder/components/addEditForm.vue
  62. 0 513
      src/views/sellOut/zxoutOrder/components/addEditFormA.vue
  63. 0 26
      src/views/sellOut/zxoutOrder/components/columnsForm.js
  64. 0 275
      src/views/sellOut/zxoutOrder/components/express_feedback.vue
  65. 0 234
      src/views/sellOut/zxoutOrder/components/logisticsForm.vue
  66. 0 358
      src/views/sellOut/zxoutOrder/components/purchase_check.vue
  67. 0 323
      src/views/sellOut/zxoutOrder/components/returnExpress.vue
  68. 0 364
      src/views/sellOut/zxoutOrder/components/supplier_feedback.vue
  69. 0 239
      src/views/sellOut/zxoutOrder/detail.vue
  70. 0 439
      src/views/sellOut/zxoutOrder/index.vue
  71. 0 32
      src/views/sellOut/zxoutOrder/options.js
  72. 0 0
      src/views/sellOut/zxoutOrder/咨询-出库单

File diff suppressed because it is too large
+ 10 - 0
dist/static/js/0.js


File diff suppressed because it is too large
+ 10 - 0
dist/static/js/app.js


+ 2 - 2
src/apis/service/sellOut/sellAfterApply/index.js

@@ -16,8 +16,8 @@ export default {
   status: (data, params) => http(api + "afterstatus", data, "post", params),
   // 异常原因接口
   reasonList: (data, params) => http(api + "resultlist", data, "post", params),
-  // 物流反馈
-  afterFeed: (data, params) => http(api + "afterfeed", data, "post", params),  
+  // 设置退回仓库
+  aftersetwsm: (data, params) => http(api + "aftersetwsm", data, "post", params),  
   
  // 售后快递录入
   afterPost : (data, params) => http(api + "afterpost ", data, "post", params),  

+ 4 - 0
src/apis/service/sellOut/sellOutOrder/index.js

@@ -20,4 +20,8 @@ export default {
   salecustomer: (data, params) => http(api + "salecustomer", data, "post", params),
   // 异常原因接口
   reasonList: (data, params) => http(api + "resultlist", data, "post", params),
+  // 物流填写
+  setdelivery: (data, params) => http(api + "setdelivery", data, "post", params),
+   // 售后申请详情
+   afterinfo: (data, params) => http(api + "afterinfo", data, "post", params),
 };

+ 0 - 35
src/apis/service/sellOut/zxOrder/detail.js

@@ -1,35 +0,0 @@
-// 物业管理员
-import http from "@/apis/axios";
-const api = "admin/";
-export default {
-  // 添加
-  add: (data, params) => http(api + "salecreate", data, "post", params),
-  // 删除
-  delete: (data, params) => http(api + "saledelect", data, "post", params),
-  // 详情
-  detail: (data, params) => http(api + "saleinfo", data, "post", params),
-  // 更新
-  update: (data, params) => http(api + "salezxedit", data, "post", params),
-  // 修改状态
-  status: (data, params) => http(api + "salestatus", data, "post", params),
-  // 获取仓库商品列表
-  getGoodStock: (data, params) => http(api + "checkflist", data, "post", params),
-  // 采购反馈物流费用
-  salefee: (data, params) => http(api + "salefee", data, "post", params),
-  // 新建发货申请单
-  saleout: (data, params) => http(api + "saleout", data, "post", params),
-
-
-
-
-  // 新建入库单详情
-  orderininfo: (data, params) => http(api + "orderininfo", data, "post", params),
-  // 异常原因列表
-  resultlist: (data, params) => http(api + "resultlist", data, "post", params),
-  // 入库单验货
-  orderincheck: (data, params) => http(api + "orderincheck", data, "post", params),
-  // 入库单退货换货
-  orderinreturn: (data, params) => http(api + "orderinreturn", data, "post", params),
-  // 发货单状态修改
-  orderinstatus: (data, params) => http(api + "orderinstatus", data, "post", params),
-};

+ 0 - 18
src/apis/service/sellOut/zxOrder/index.js

@@ -1,18 +0,0 @@
-// 物业管理员
-import http from "@/apis/axios";
-const api = "admin/";
-export default {
-  // 添加
-  add: (data, params) => http(api + "add", data, "post", params),
-  // 删除
-  delete: (data, params) => http(api + "delete", data, "post", params),
-  // 分页查询
-  list: (data, params) => http(api + "salelist", data, "post", params),
-  // 详情
-  detail: (data, params) => http(api + "detail", data, "post", params),
-  // 更新
-  update: (data, params) => http(api + "update", data, "post", params),
-  // 修改状态
-  status: (data, params) => http(api + "accountstatus", data, "post", params),
-};
-   

+ 0 - 21
src/apis/service/sellOut/zxReturn/index.js

@@ -1,21 +0,0 @@
-// 物业管理员
-import http from "@/apis/axios";
-const api = "admin/";
-export default {
-  // 添加
-  add: (data, params) => http(api + "reorderzx", data, "post", params),
-  // 删除
-  delete: (data, params) => http(api + "reorderdel", data, "post", params),
-  // 分页查询
-  list: (data, params) => http(api + "reorderlist", data, "post", params),
-  // 详情
-  detail: (data, params) => http(api + "reorderinfo", data, "post", params),
-  // 更新
-  update: (data, params) => http(api + "update", data, "post", params),
-  // 修改状态
-  status: (data, params) => http(api + "reorderexam", data, "post", params),
-  // 获取原因
-  getReason: (data, params) => http(api + "resultlist", data, "post", params),
-
-};
-   

+ 0 - 17
src/apis/service/sellOut/zxoutOrder/index.js

@@ -1,17 +0,0 @@
-// 物业管理员
-import http from "@/apis/axios";
-const api = "admin/";
-export default {
-  // 详情
-  detail: (data, params) => http(api + "saleoutinfo", data, "post", params),
-
-  // 修改状态
-  status: (data, params) => http(api + "salecustomer", data, "post", params),
-  // 修改状态
-  list: (data, params) => http(api + "xsaleout", data, "post", params),
-
-  // 发货填写物流
-  salezxout: (data, params) => http(api + "salezxout", data, "post", params),
-
-
-};

+ 7 - 3
src/components/globalComponents/search-stock/main.vue

@@ -40,7 +40,7 @@ export default {
     "isRelation",
     "companyCode",
     "companyNo", //业务公司
-    "type",
+    "wsmtype",
     "names",
   ],
   /**
@@ -73,6 +73,7 @@ export default {
         end: "",
         mobile: "",
         contactor: "",
+        wsm_type: "",
       },
     };
   },
@@ -87,7 +88,7 @@ export default {
         this.remoteMethod(val);
       }
     },
-     names: function (val, old) {
+    names: function (val, old) {
       // console.log(val, old);
       this.searchName = val;
       if (this.isDetail && this.searchName) {
@@ -110,7 +111,9 @@ export default {
             label: this.options[index].name,
             contactor: this.options[index].wsm_name,
             mobile: this.options[index].mobile,
-            addr: this.options[index].addr_cn + this.options[index].wsm_addr,
+            addr: this.options[index].wsm_addr,
+            addr_code: this.options[index].addr_code,
+            addr_cn: this.options[index].addr_cn,
           };
           this.$emit("searchChange", model);
         } else {
@@ -125,6 +128,7 @@ export default {
       this.options = [];
       this.formValue.supplierNo = this.companyCode || "";
       this.formValue.companyNo = this.companyNo || "";
+      // this.formValue.wsm_type = this.wsmtype || "";
       const { code, data, message } = await asyncRequest.list(this.formValue);
       if (code === 0) {
         const { list } = data;

+ 32 - 31
src/views/purchaseIn/purchaseDiffOrder/addEditModel.vue

@@ -17,38 +17,41 @@
       <el-form
         :model="ruleForm"
         status-icon
+        :size="'mini'"
         :rules="rulesThis"
         ref="ruleForm"
-        label-width="110px"
+        label-width="100px"
         class="demo-ruleForm"
       >
-        <el-form-item label="采购单编号" prop="cgdNo">
-          <el-input v-model="ruleForm.cgdNo" disabled></el-input>
-        </el-form-item>
-        <el-form-item label="商品分类" prop="goods_class">
-          <el-input v-model="ruleForm.goods_class" disabled></el-input>
-        </el-form-item>
-        <el-form-item label="商品名称" prop="good_name">
-          <el-input v-model="ruleForm.good_name" disabled></el-input>
-        </el-form-item>
-        <el-form-item label="商品总克重" prop="weight">
-          <el-input v-model="ruleForm.weight" disabled>
-            <template slot="append">g</template></el-input
-          >
-        </el-form-item>
-        <el-form-item label="工差总克重" prop="num">
-          <el-input v-model="ruleForm.num" :disabled="isDetail"
-            ><template slot="append">g</template></el-input
-          >
-        </el-form-item>
-        <div style="text-align: right">
-          <el-button v-if="!isDetail" type="primary" @click="submitForm"
-            >保 存
-          </el-button>
-          <el-button @click="showModelThis = false">{{
-            isDetail ? "关 闭" : "取 消"
-          }}</el-button>
-        </div>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="商品总克重" prop="weight">
+              <el-input v-model="ruleForm.weight" disabled>
+                <template slot="append">g</template></el-input
+              >
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="工差总克重" prop="num">
+              <el-input v-model="ruleForm.num" :disabled="isDetail"
+                ><template slot="append">g</template></el-input
+              >
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="24" style="text-align: right">
+            <el-button
+              v-if="!isDetail"
+              :size="'mini'"
+              type="primary"
+              @click="submitForm"
+              >保 存
+            </el-button>
+            <el-button :size="'mini'" @click="showModelThis = false">{{
+              isDetail ? "关 闭" : "取 消"
+            }}</el-button>
+          </el-col>
+        </el-row>
       </el-form>
     </el-card>
   </el-dialog>
@@ -57,9 +60,7 @@
 import asyncRequest from "@/apis/service/purchaseIn/purchaseDiffOrder";
 import resToken from "@/mixins/resToken";
 import { isnumber, isnumber3 } from "@/utils/validate";
-import addEdit from "./addEdit";
 export default {
-  components: { addEdit },
   name: "purchaseDiffOrder",
   props: ["showModel", "id", "isDetail", "sitem"],
   mixins: [resToken],
@@ -106,6 +107,7 @@ export default {
   },
   watch: {
     showModel: function (val) {
+      console.log(val);
       this.showModelThis = val;
       if (val) {
         this.initForm();
@@ -118,7 +120,6 @@ export default {
     },
   },
   methods: {
-    
     async initForm() {
       this.loading = true;
       this.rulesThis = this.rules;

+ 13 - 14
src/views/purchaseIn/purchaseOrder/detail.vue

@@ -9,18 +9,21 @@
         <span>采购单编号:</span
         ><span
           >{{ queryId }}
+
           <!-- ---{{ sitem.bkcode }} -->
         </span>
-        <el-button
-          type="primary"
-          :size="'mini'"
-          class="fr"
-          v-if="
+
+        <!-- v-if="
             (status === '1' || status === '2') &&
             powers.some((item) => item == '007') &&
             sitem &&
             sitem.noble_name
-          "
+          " -->
+
+        <el-button
+          type="primary"
+          :size="'mini'"
+          class="fr"
           style="margin: 0 0 0 12px"
           @click="diffAdd = true"
           >填写总工差</el-button
@@ -161,14 +164,12 @@
           />
         </el-tab-pane>
       </el-tabs>
-      <diff-order-add
+      <add-edit-model
         :sitem="sitem"
         :show-model="diffAdd"
         @refresh="initData"
         @cancel="diffAdd = false"
       />
-
-   
     </div>
     <div v-else>
       <no-auth></no-auth>
@@ -182,11 +183,13 @@ import asyncRequest from "@/apis/service/purchaseIn/purchaseOrder";
 import orderInTable from "./components/order-in-table";
 import ShowDataTableColumns from "./components/ShowDataTableColumns";
 import { order_type_options, statusOptions } from "./columns";
+import addEditModel from "@/views/purchaseIn/purchaseDiffOrder/addEditModel";
 export default {
   name: "purchaseOrderDetail",
   mixins: [mixinPage, resToken],
   components: {
     orderInTable,
+    addEditModel,
   },
 
   computed: {
@@ -229,11 +232,7 @@ export default {
     getNewTime() {
       this.newTime = new Date().valueOf();
     },
-  
-    openModal() {
-      this.diffAdd = true;
-      this.ReturnAddModel = true;
-    },
+
     async examForm(e) {
       if (!this.loading) {
         let type = e.state === "1" ? "2" : "0";

+ 33 - 26
src/views/purchaseIn/wsmInOrder/columns.js

@@ -10,6 +10,12 @@ export default [
     label: "采购单编号",
     width: "155px",
   },
+  {
+    prop: "status",
+    label: "状态",
+    _slot_: "status",
+    width: "110px",
+  },
   // {
   //   prop: "bkcode",
   //   label: "备库单编号",
@@ -34,35 +40,30 @@ export default [
   {
     prop: "good_name",
     label: "商品名称",
+    _slot_: "good_name",
     'min-width': "145px",
   },
-  /**
-   *  */
-  {
-    prop: "apply_name",
-    label: "申请人",
-    width: "60px",
-  },
   {
-    prop: "sendtime",
-    label: "发货时间",
-    width: "140px",
+    prop: "brand_name",
+    label: "品牌",
+    'width': "95px",
   },
+ 
   {
     prop: "send_num",
     label: "发货数量",
     width: "80px",
   },
-  {
-    prop: "post_company",
-    label: "物流公司",
-    width: "140px",
-  },
-  {
-    prop: "post_code",
-    label: "物流单号",
-    width: "140px",
-  },
+  // {
+  //   prop: "post_company",
+  //   label: "物流公司",
+  //   width: "140px",
+  // },
+  // {
+  //   prop: "post_code",
+  //   label: "物流单号",
+  //   width: "140px",
+  // },
   {
     prop: "post_fee",
     label: "物流费用",
@@ -114,12 +115,7 @@ export default [
   //   label: "未发货数量",
   //   width: "105px",
   // },
-  {
-    prop: "status",
-    label: "状态",
-    _slot_: "status",
-    width: "110px",
-  },
+
   // {
   //   prop: "lasttime",
   //   label: "预计最晚入库时间",
@@ -145,6 +141,17 @@ export default [
     label: "仓库名称",
     width: "80px",
   },
+
+  {
+    prop: "apply_name",
+    label: "申请人",
+    width: "60px",
+  },
+  {
+    prop: "sendtime",
+    label: "发货时间",
+    width: "145px",
+  },
   // {
   //   prop: "addtime",
   //   label: "创建时间",

+ 15 - 7
src/views/purchaseIn/wsmInOrder/index.vue

@@ -41,7 +41,7 @@
                   "
                 >
                   <el-option
-                    v-for="item in  order_type_options"
+                    v-for="item in order_type_options"
                     :key="'order_type' + item.value"
                     :label="item.label"
                     :value="item.value"
@@ -191,6 +191,14 @@
             </el-row>
           </div>
         </template>
+        <template #good_name="{ scope }">
+          <span>{{ scope.row.good_name }}</span>
+          <span v-for="(si, sii) in scope.row.speclist" :key="si + sii"
+            >{{ sii === 0 ? "_" : "-" }}{{ si.spec_name }}[{{
+              si.spec_value
+            }}]</span
+          >
+        </template>
         <template #status="{ scope }">
           <el-tag
             :size="tablebtnSize"
@@ -265,7 +273,7 @@ export default {
       options: ["创建时间", "最晚入库时间"],
       sselect: "创建时间",
       order_type_options,
-   
+
       // 状态
       statusOptions: [
         {
@@ -281,18 +289,18 @@ export default {
           label: "待审核",
         },
         {
-         value: "3",
+          value: "3",
           label: "待入库",
         },
-         {
-         value: "4",
+        {
+          value: "4",
           label: "入库完成",
         },
-         {
+        {
           value: "5",
           label: "退货待物流",
         },
-           {
+        {
           value: "6",
           label: "退货完成",
         },

+ 1 - 1
src/views/sellOut/project/components/columnsForm.js

@@ -44,7 +44,7 @@ export default [
 
 
     {
-        prop: "expiry_day",
+        prop: "expire_day",
         label: "信息有效期",
         width: '85px'
     },

+ 55 - 15
src/views/sellOut/project/components/setPlan.vue

@@ -11,9 +11,9 @@
             stripe
             style="width: 100%"
           >
-            <el-table-column label="要求编码" prop="pgNo" width="155px" />
+            <el-table-column label="要求编码" prop="pgNo" width="155px"  show-overflow-tooltip/>
 
-            <el-table-column prop="good_type" label="商品类型" width="80px">
+            <el-table-column prop="good_type" label="商品类型" width="80px"  show-overflow-tooltip>
               <template slot-scope="scope">
                 <el-tag
                   :size="'mini'"
@@ -27,10 +27,10 @@
                 ></el-tag
               ></template>
             </el-table-column>
-            <el-table-column prop="budget_price" label="预算单价" width="110" />
-            <el-table-column prop="num" label="购买数量" width="110" />
-            <el-table-column prop="cat_name" label="商品分类" />
-            <el-table-column prop="good_img" label="图片" width="50">
+            <el-table-column prop="budget_price" label="预算单价" width="110"  show-overflow-tooltip />
+            <el-table-column prop="num" label="购买数量" width="110" show-overflow-tooltip />
+            <el-table-column prop="cat_name" label="商品分类"  show-overflow-tooltip />
+            <el-table-column prop="good_img" label="图片" width="50"  show-overflow-tooltip>
               <template slot-scope="scope">
                 <div
                   v-if="scope.row.good_img"
@@ -45,8 +45,8 @@
                   />
                 </div>
               </template>
-            </el-table-column>
-            <el-table-column prop="good_name" label="商品名称" />
+            </el-table-column >
+            <el-table-column prop="good_name" label="商品名称"   show-overflow-tooltip/>
           </el-table>
         </template>
       </div>
@@ -106,7 +106,7 @@
               </div>
             </template>
           </el-table-column>
-          <el-table-column prop="good_name" label="商品名称" min-width="120">
+          <el-table-column prop="good_name" label="商品名称" min-width="120"  show-overflow-tooltip>
             <template slot-scope="scope">
               <span>{{ scope.row.good_name }}</span>
               <span v-for="(si, sii) in scope.row.specinfo" :key="si.id + sii">
@@ -116,13 +116,25 @@
               </span>
             </template>
           </el-table-column>
+          <el-table-column prop="data_source" label="商品来源" width="85"  show-overflow-tooltip>
+            <template slot-scope="scope">
+              <el-tag
+                :size="'mini'"
+                :type="scope.row.data_source === '1' ? 'success' : ''"
+                >{{
+                  scope.row.data_source === "1" ? "平台商品" : "采反商品"
+                }}</el-tag
+              >
+            </template>
+          </el-table-column>
+
           <el-table-column
             prop="class_cat"
             label="商品分类"
             show-overflow-tooltip
           />
           <el-table-column
-            prop="expiry_day"
+            prop="expire_day"
             label="信息有效期"
             width="85"
             show-overflow-tooltip
@@ -143,7 +155,9 @@
       </div>
       <div class="project-setPlan-title">
         项目方案
-        <span style="margin:0 0 0 50px;font-size:13px;color:#e4393c" v-if="total !== 0 && table_type === 'list'"
+        <span
+          style="margin: 0 0 0 50px; font-size: 13px; color: #e4393c"
+          v-if="total !== 0 && table_type === 'list'"
           >{{ plan_show.status === "1" ? "已选定" : "" }}方案总金额:{{
             plan_show.sale_total
           }}元</span
@@ -298,6 +312,17 @@
               <span v-else>{{ scope.row.num }}</span>
             </template>
           </el-table-column>
+          <el-table-column prop="data_source" label="商品来源" width="85">
+            <template slot-scope="scope">
+              <el-tag
+                :size="'mini'"
+                :type="scope.row.data_source === '1' ? 'success' : ''"
+                >{{
+                  scope.row.data_source === "1" ? "平台商品" : "采反商品"
+                }}</el-tag
+              >
+            </template>
+          </el-table-column>
           <el-table-column
             prop="good_img"
             label="图片"
@@ -319,7 +344,12 @@
               </div>
             </template>
           </el-table-column>
-          <el-table-column prop="good_name" label="商品名称" min-width="120">
+          <el-table-column
+            prop="good_name"
+            label="商品名称"
+            min-width="120"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
               <span>{{ scope.row.good_name }}</span>
               <span v-for="(si, sii) in scope.row.specinfo" :key="si.id + sii">
@@ -334,7 +364,7 @@
             label="商品分类"
             show-overflow-tooltip
           />
-          <el-table-column
+          <!-- <el-table-column
             prop="expiry_day"
             label="信息有效期"
             width="85"
@@ -351,7 +381,7 @@
             label="物流时间"
             width="70"
             show-overflow-tooltip
-          />
+          /> -->
         </el-table>
       </div>
       <buy-good-modal
@@ -556,7 +586,7 @@ export default {
           v.class_cat = "";
           if (v.can && v.can.length > 0) {
             v.can.forEach((x, i) => {
-              v.class_cat += i === 0 ? x.name : "/" + x.name;
+              v.class_cat += i === 0 ? x.name : "_" + x.name;
             });
           }
           return v;
@@ -677,6 +707,16 @@ export default {
         status: status,
         feedback: JSON.parse(JSON.stringify(feedback)),
       };
+      this.plan_show.feedback.map((v) => {
+        v.class_cat = "";
+        if (v.cat_info && v.cat_info.length > 0) {
+          v.cat_info.forEach((x, i) => {
+            v.class_cat += i === 0 ? x.name : "_" + x.name;
+          });
+        }
+        return v;
+      });
+
       console.log(this.plan_show);
       for (let i = 0; i < this.plan_show.feedback.length; i++) {
         this.$set(this.plan_show.feedback[i], i, this.plan_show.feedback[i]);

+ 7 - 14
src/views/sellOut/salesOrder/detail.vue

@@ -7,22 +7,16 @@
       <div style="height: 30px">
         <span>订单编号:</span><span v-if="sitem">{{ sitem.orderCode }}</span>
         <!-- v-if="status === '4' && powers.some((item) => item == '051')" -->
-        <!-- <el-button
-          style="margin: 0 0 0 10px"
-          class="fr"
-          type="primary"
-          :size="'mini'"
-          @click="openModal()"
-          >新建销售退货单
-        </el-button> -->
+
         <el-button
           style="margin: 0 0 0 10px"
           class="fr"
           type="primary"
           :size="'mini'"
-          @click="setShowModel=true"
+          @click="setShowModel = true"
           >设置部分字段
         </el-button>
+     
       </div>
       <el-tabs v-model="activeTabs">
         <el-tab-pane label="新建销售订单" name="0" v-if="queryType === 'add'">
@@ -68,6 +62,7 @@
                     "
                   ></el-tag>
                 </template>
+                
 
                 <template slot="supplierName">
                   <span>{{ sitem.supplierName }}</span>
@@ -143,7 +138,7 @@
           />
         </el-tab-pane>
       </el-tabs>
-   
+
       <!-- <edit-add
         :id="modelId"
         :sitem="sitem"
@@ -177,7 +172,6 @@ export default {
   name: "salesOrderDetail",
   mixins: [mixinPage, resToken],
   components: {
-
     addForm,
     orderOutTable,
     setPartial,
@@ -201,7 +195,7 @@ export default {
       activeTabs: "1",
       activeNames: ["-1", "0", "1", "2", "3", "4", "5", "6"],
       showColumns: showColumns,
-      setShowModel:false,
+      setShowModel: false,
       orderOptions: [
         { id: "1", label: "线上商品销售" },
         { id: "2", label: "项目线上商品销售" },
@@ -215,7 +209,7 @@ export default {
         { value: "3", label: "订单已取消" },
       ],
       sitem: null,
-   
+
       orderCode: "",
       status: "",
       newTime: "",
@@ -318,7 +312,6 @@ export default {
       }
       this.loading = false;
     },
- 
   },
 };
 </script>

+ 0 - 74
src/views/sellOut/sellAfterApply/ShowDataTableColumns.js

@@ -1,74 +0,0 @@
-export default [
-  {
-    prop: "returnCode",
-    label: "售后申请单号",
-    span:6
-  },
-  {
-    prop: "status",
-    label: "售后申请单状态",
-    _slot_: "status",
-    span:6
-  },
-  {
-    prop: "outCode",
-    label: "发货申请单编号",
-    span:6
-  },
-
-  {
-    prop: "order_type",
-    label: "订单类别",
-    _slot_: "order_type",
-    span:6
-  },
-
-  {
-    prop: "orderCode",
-    label: "销售订单编号",
-    span:6
-  },
-  {
-    prop: "apply_name",
-    label: "申请人",
-    span:6
-  },
-
- 
-  {
-    prop: "total_num",
-    label: "发货总数量",
-    span:6
-  },
-
-  // {
-  //   prop: "sale_price",
-  //   label: "销售单价",
-  // },
-  // {
-  //   prop: "origin_price",
-  //   label: "采购单价",
-  // },
-
-  // {
-  //   prop: "sale_price",
-  //   label: "商品单价",
-  // },
-  // {
-  //   prop: "total_price",
-  //   label: "发货申请单总价",
-  // },
-
-  // {
-  //   prop: "updatetime",
-  //   label: "更新时间",
-  // },
-  {
-    prop: "addtime",
-    label: "创建时间",
-    span:6
-  },
-
-
-]
-

+ 202 - 97
src/views/sellOut/sellAfterApply/columns.js

@@ -1,97 +1,202 @@
-export default [
-    {
-          prop: "returnCode",
-          label: "售后申请单",
-          width:"160"
-        },
-        {
-          prop:"apply_name",
-          label:"申请人",
-        },
-        {
-          prop: "orderCode",
-          label: "销售订单编号",
-          width:"160"
-        },
-        {
-          prop: "outCode",
-          label: "发货申请单编号",
-          width:"160"
-        },
-        {
-          prop: "total_num",
-          label: "出库总数",
-        },
-        {
-          prop: "good_code",
-          label: "商品编码",
-          width:"140"
-        },
-        {
-            prop:"good_name",
-            label:"商品名称",
-            width:"150"
-        },
-        // {
-        //     prop:"error_num",
-        //     label:"异常数量",
-        // },
-        // {
-        //     prop:"error_msg",
-        //     label:"异常原因",
-        // },
-        {
-            prop:"except_code",
-            label:"期望意愿",
-          _slot_: "except_code",
-          width:100,
-
-        },
-    
-        {
-          prop: "status",
-          label: "状态",
-          _slot_: "status",
-          width: "120px",
-        },
-        {
-            prop:"addtime",
-            label:"添加时间",
-            width:150,
-        },
-        
-      
-        {
-          prop:"post_company",
-          label:"快递名称",
-        },
-        {
-          prop:"post_fee",
-          label:"物流费",
-        },
-        {
-          prop:"post_own",
-          label:"费用承担方",
-          width:"100",
-          _slot_: "post_own",
-
-        },
-        // {
-        //   prop:"customer_code",
-        //   label:"客户编码",
-        //   width:"150"
-        // },
-        {
-          prop:"customer_name",
-          label:"客户名称",
-          width:"200"
-        },
-        {
-          prop: "",
-          label: "操作",
-          fixed: "right",
-          _noset_: true,
-          _slot_: "operation",
-          width:50,
-        },
-]
+
+
+const columns = [
+  {
+    prop: "returnCode",
+    label: "售后申请单",
+    width: "160"
+  },
+  {
+    prop: "apply_name",
+    label: "申请人",
+  },
+  // {
+  //   prop: "orderCode",
+  //   label: "销售订单编号",
+  //   width:"160"
+  // },
+  {
+    prop: "outCode",
+    label: "发货申请单编号",
+    width: "160"
+  },
+  {
+    prop: "total_num",
+    label: "出库总数",
+  },
+  {
+    prop: "good_code",
+    label: "商品编码",
+    width: "140"
+  },
+  {
+    prop: "good_name",
+    label: "商品名称",
+    width: "150"
+  },
+  // {
+  //     prop:"error_num",
+  //     label:"异常数量",
+  // },
+  // {
+  //     prop:"error_msg",
+  //     label:"异常原因",
+  // },
+  // {
+  //     prop:"except_code",
+  //     label:"期望意愿",
+  //   _slot_: "except_code",
+  //   width:100,
+
+  // },
+
+  {
+    prop: "status",
+    label: "状态",
+    _slot_: "status",
+    width: "120px",
+  },
+  {
+    prop: "addtime",
+    label: "添加时间",
+    width: 150,
+  },
+
+
+  // {
+  //   prop:"post_company",
+  //   label:"快递名称",
+  // },
+  // {
+  //   prop:"post_fee",
+  //   label:"物流费",
+  // },
+  // {
+  //   prop:"post_own",
+  //   label:"费用承担方",
+  //   width:"100",
+  //   _slot_: "post_own",
+
+  // },
+  // {
+  //   prop:"customer_code",
+  //   label:"客户编码",
+  //   width:"150"
+  // },
+  {
+    prop: "customer_name",
+    label: "客户名称",
+    width: "200"
+  },
+  {
+    prop: "",
+    label: "操作",
+    fixed: "right",
+    _noset_: true,
+    _slot_: "operation",
+    width: 50,
+  },
+]
+const sellshowColumns = [
+  {
+    prop: "returnCode",
+    label: "售后申请单号",
+    span: 6
+  },
+  {
+    prop: "status",
+    label: "售后申请单状态",
+    _slot_: "status",
+    span: 6
+  },
+  {
+    prop: "outCode",
+    label: "发货申请单编号",
+    span: 6
+  },
+
+  {
+    prop: "order_type",
+    label: "订单类别",
+    _slot_: "order_type",
+    span: 6
+  },
+
+  {
+    prop: "is_receive",
+    label: "收货情况",
+    _slot_: "is_receive",
+    span: 6
+  },
+  {
+    prop: "addtime",
+    label: "创建时间",
+    span: 6
+  },
+  {
+    prop: "total_num",
+    label: "发货总数量",
+    span: 4
+  },
+  {
+    prop: "error_num",
+    label: "异常数量",
+    span: 4
+  },
+
+
+  {
+    prop: "apply_name",
+    label: "申请人",
+    span: 4
+  },
+
+  {
+    prop: "error_msg",
+    label: "异常原因",
+    span: 6
+  },
+  {
+    prop: "except_code",
+    label: "期望",
+    _slot_: "except_code",
+    span: 6
+  },
+  {
+    prop: "error_img",
+    label: "异常图片",
+    _slot_: "error_img",
+    span: 12
+  },
+  {
+    prop: "gys_remark",
+    label: "备注",
+    span: 24
+  },
+  // {
+  //   prop: "sale_price",
+  //   label: "销售单价",
+  // },
+  // {
+  //   prop: "origin_price",
+  //   label: "采购单价",
+  // },
+
+  // {
+  //   prop: "sale_price",
+  //   label: "商品单价",
+  // },
+  // {
+  //   prop: "total_price",
+  //   label: "发货申请单总价",
+  // },
+
+  // {
+  //   prop: "updatetime",
+  //   label: "更新时间",
+  // },
+
+
+
+]
+export { columns, sellshowColumns }

+ 0 - 88
src/views/sellOut/sellAfterApply/components/addEdit.vue

@@ -1,88 +0,0 @@
-<template>
-  <el-dialog
-    title="新建售后申请"
-    :center="true"
-    align="left"
-    top="14vh"
-    width="1000px"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-    @close="showModelThis = false"
-  >
-    <el-card style="margin-top: -20px" v-loading="loading">
-      <add-edit-form
-        v-if="showModel"
-        :id="id"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @closeModel="aaa(e)"
-        @refresh="refresh"
-      />
-    </el-card>
-  </el-dialog>
-</template>
-<script>
-import addEditForm from "./addEditForm.vue";
-export default {
-  name: "handover",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  components: {
-    addEditForm,
-  },
-  data() {
-    return {
-      sitem: null,
-      title: "",
-      showModelThis: this.showModel,
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-  methods: {
-    
-    async initForm() {
-      this.loading = true;
-
-      if (this.id === "add") {
-        this.title = "新建售后申请";
-        this.rulesThis = this.rules;
-      } else {
-        if (this.isDetail) {
-          this.rulesThis = {};
-        } else {
-          this.rulesThis = this.rules;
-        }
-      }
-      this.loading = false;
-    },
-    handClick(e) {
-      this.showModelThis = e;
-    },
-    aaa(e){
-      console.log(e);
-    },
-    refresh(e) {
-      this.showModelThis = e;
-      this.$emit("refresh", true);
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 573
src/views/sellOut/sellAfterApply/components/addEditForm.vue

@@ -1,573 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="80px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="异常数量" prop="error_num">
-          <el-input
-            :disabled="id !== 'add'"
-            v-model="ruleForm.error_num"
-            placeholder="异常数量"
-          >
-            <template slot="append"
-              >总发货数量:{{ ruleForm.send_num }}</template
-            >
-          </el-input>
-        </el-form-item>
-        <el-form-item label="期望意愿" prop="except_code">
-          <el-select
-            style="width: 100%"
-            :disabled="id !== 'add'"
-            v-model="ruleForm.except_code"
-            placeholder="期望意愿"
-          >
-            <el-option
-              v-for="item in expect_options"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="异常原因" prop="error_code">
-          <el-select
-            style="width: 100%"
-            :disabled="id !== 'add'"
-            v-model="ruleForm.error_code"
-            placeholder="异常原因"
-          >
-            <el-option
-              v-for="item in reason_options"
-              :key="item.id"
-              :label="item.result"
-              :value="item.result_code"
-              :disabled="item.status == 0"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="异常备注1" prop="error_remark">
-          <el-input
-            type="textarea"
-            :rows="7"
-            placeholder="请输入异常原因备注"
-            v-model="ruleForm.error_remark"
-            :disabled="id !== 'add'"
-            maxlength="250"
-            show-word-limit
-          />
-        </el-form-item>
-      </el-col>
-
-      <el-col :span="24">
-        <el-form-item label="异常图片" prop="error_img">
-          <div class="el-form-item-error-img clear">
-            <ul>
-              <li
-                class="images_li"
-                :style="getMargin_li()"
-                v-for="(item, index) in ruleForm.error_img"
-                :key="item"
-                v-viewer
-                style="margin: 0"
-              >
-                <img :src="item" alt="" style="width: 129px; height: 94px" />
-                <i
-                  class="el-icon-close"
-                  @click="imgClose(index)"
-                  v-if="ruleForm.error_img.length < 5 && id === 'add'"
-                ></i>
-              </li>
-            </ul>
-            <div
-              class="btnupload"
-              :style="getMargin()"
-              v-if="ruleForm.error_img.length < 5 && id === 'add'"
-              style="position: relative"
-              @click="open"
-            >
-              <i class="el-icon-plus avatar-uploader-icon"></i>
-              <file-upload
-                class="Upload"
-                :accept="'.jpg,.png,,.jpeg'"
-                :multiple="true"
-                :uploadcondition="beforeAvatarUpload"
-                @UploadErrorEvent="UploadErrorEvent"
-                @UploadSuccessEvent="UploadSuccessEvent"
-              />
-            </div>
-          </div>
-        </el-form-item>
-      </el-col>
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="id === 'add'"
-          >保 存</el-button
-        >
-        <el-button @click="closeAddEdit" v-if="id === 'add'">{{
-          isDetail ? "关 闭" : "取 消"
-        }}</el-button></el-col
-      >
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isnumber } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-export default {
-  name: "sellAfterApplyDetail",
-  props: ["id", "sitem", "showModelThis", "newTime", "orderCode", "outCode"],
-  mixins: [resToken],
-  data() {
-    const validatenumbers = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("异常数量不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("异常数量必须为数字"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      isShow: true,
-      loading: false,
-      disabled: true,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        send_num: "",
-        order_type: "1", //售后类型 1销售2咨询,
-        outCode: "", //发货申请单编号
-        error_num: "", //异常数量
-        error_img: [], //异常图片
-        error_remark: "", //异常备注
-        error_code: "", //异常原因code
-        except_code: [], //期望意愿
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        error_num: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validatenumbers,
-          },
-        ],
-        error_code: [
-          {
-            required: true,
-            message: "请选择异常原因",
-            trigger: "change",
-          },
-        ],
-        except_code: [
-          {
-            required: true,
-            message: "请选择期望意愿",
-            trigger: "change",
-          },
-        ],
-        error_img: [
-          {
-            type: "array",
-            required: true,
-            message: "异常图片不能为空!",
-            trigger: "change",
-          },
-        ],
-        error_remark: [
-          {
-            required: true,
-            message: "请输入异常原因备注",
-            trigger: "blur",
-          },
-        ],
-      },
-      reason_options: [],
-      reason_value: "", //异常原因
-      expect_options: [
-        {
-          value: "1",
-          label: "退货",
-        },
-        {
-          value: "2",
-          label: "换货",
-        },
-        {
-          value: "3",
-          label: "改变售价",
-        },
-      ],
-      code: "",
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "sellAfterApplyDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  mounted() {
-    this.getReason(); //获取异常原因
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    async closeAddEdit() {
-      this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      this.status = "";
-      this.rulesThis = this.rules;
-      this.disabled = false;
-      await this.resetForm();
-
-      this.loading = false;
-    },
-
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          let {
-            error_num,
-            error_img,
-            error_remark,
-            except_code,
-            error_code,
-            outCode,
-            send_num,
-            total_num,
-          } = this.sitem;
-          this.ruleForm = {
-            outCode: outCode || "", //发货申请单编号
-            error_num: error_num || "", //异常数量
-            error_code: error_code || "", //异常原因
-            except_code: except_code || "", //期望意愿
-            error_img: error_img ? error_img.split(",") : [],
-            error_remark: error_remark || "", //异常备注
-            send_num: send_num || total_num || "",
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          const { anomalous_numbers } = this.ruleForm;
-          if (this.sitem.send_num < anomalous_numbers) {
-            this.$message.warning("异常数量不能大于发货数量");
-            return false;
-          }
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          model.error_img = model.error_img.toString();
-          model.outCode = this.sitem.outCode;
-          model.orderCode = this.sitem.orderCode;
-          model.num = model.error_num;
-          model.remark = model.error_remark;
-          model.img = model.error_img;
-          model.errorCode = model.error_code;
-          delete model["error_num"];
-          delete model["error_remark"];
-          delete model["error_img"];
-          delete model["error_code"];
-
-          const res = await asyncRequest.add(model);
-
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-            this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    async statusConfirm(status, message) {
-      await this.$confirm(`确定要${message}?`, {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          if (status === "-1") {
-            await this.deleteById(message);
-          } else {
-            await this.setStatus(status, message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-
-    async deleteById(message) {
-      const res = await asyncRequest.delete({ id: this.id });
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-
-        this.routeGoto("handover", {});
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    async setStatus(status, message) {
-      let model = {
-        id: this.id,
-        remark: "",
-        status: status,
-      };
-      const res = await asyncRequest.status(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-        this.initForm();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    open() {
-      this.show = true;
-    },
-    // 获取异常原因
-    async getReason() {
-      let model = {
-        type: "2",
-        page: 1,
-        size: 100,
-      };
-      const res = await asyncRequest.reasonList(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.reason_options = res.data.list;
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    // 异常原因
-    handleAnomalousReason(e) {
-      if (e) {
-        this.ruleForm.error_code = e;
-      } else {
-        this.ruleForm.error_code = "";
-      }
-      this.$refs.ruleForm.validateField("error_code");
-    },
-    //图片上传失败
-    UploadErrorEvent(res) {
-      if (res !== "break") {
-        this.$message.error("图片上传失败!");
-        this.$refs.ruleForm.validateField("error_img");
-      }
-    },
-     //图片上传成功
-  async  UploadSuccessEvent(data) {
-      const { url } = data;
-      if (url === "noToken") {
-        await this.logout();
-      } else {
-        this.ruleForm.error_img.push(url);
-        this.$message.success("图片上传成功!");
-        this.$refs.ruleForm.validateField("error_img");
-      }
-    },
-    //判断图片规格
-    beforeAvatarUpload(file) {
-      let isJPG = false,
-        isLt2M = false;
-      if (file) {
-        if (
-          file.type === "image/jpg" ||
-          file.type === "image/png" ||
-          file.type === "image/jpeg"
-        ) {
-          isJPG = true;
-        }
-        isLt2M = file.size / 1024 / 1024 < 1;
-        if (!isJPG) {
-          this.$message.error("图片格式不正确!");
-        }
-        if (!isLt2M) {
-          this.$message.error("图片大小不能超过 1MB!");
-        }
-      }
-      return isJPG && isLt2M;
-    },
-    imgClose(index) {
-      this.ruleForm.error_img.splice(index, 1);
-      this.$refs.ruleForm.validateField("error_img");
-    },
-    getMargin() {
-      if (this.ruleForm.error_img.length == 0) {
-        return "margin:0;";
-      } else if (this.ruleForm.error_img.length < 3) {
-        return "margin:0px 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-    getMargin_li() {
-      if (this.ruleForm.error_img.length <= 3) {
-        return "margin:0 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.el-form-item-error-img {
-  width: 100%;
-  position: relative;
-  padding: 0;
-  margin: 0;
-  vertical-align: top;
-
-  //  float: left;
-  ul {
-    vertical-align: top;
-    width: 100%;
-    float: left;
-    padding: 0;
-    margin: 0;
-    margin: -40px 0 0 -10px;
-    li {
-      float: left;
-      border: 1px solid rgb(220, 223, 230);
-      // border-left: 0;
-      display: block;
-      box-sizing: border-box;
-      width: 129px;
-      height: 94px;
-      line-height: 94px;
-      position: relative;
-      img {
-        display: inline-block;
-        width: 100%;
-        height: 100%;
-      }
-      .el-icon-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        width: 25px;
-        height: 25px;
-        text-align: center;
-        line-height: 25px;
-        font-size: 19px;
-        &:hover {
-          color: #63cbe7;
-        }
-      }
-    }
-  }
-}
-.images_li {
-  // width: 129px;
-  // height: 94px;
-  float: left;
-  img {
-    &:hover {
-      cursor: pointer;
-    }
-  }
-}
-.btnupload {
-  float: left;
-  border: 1px solid rgb(220, 223, 230);
-  // border-left: 0;
-  box-sizing: border-box;
-  width: 129px;
-  height: 94px;
-  line-height: 94px;
-  text-align: center;
-}
-.Upload {
-  width: 129px;
-  height: 94px;
-  line-height: 94px;
-  text-align: center;
-  position: absolute;
-  line-height: 0px;
-  top: 0;
-  left: 0;
-  z-index: 2;
-  line-height: 94px;
-}
-.avatar-uploader-icon {
-  font-size: 33px;
-  color: #8c939d;
-  width: 50px;
-  height: 50px;
-  line-height: 50px;
-  text-align: center;
-}
-</style>

+ 76 - 41
src/views/sellOut/sellAfterApply/components/express_feedback.vue

@@ -4,6 +4,7 @@
     :loading="loading"
     :model="ruleForm"
     status-icon
+    :size="'mini'"
     :rules="rules"
     label-width="100px"
     style="width: 100%"
@@ -11,41 +12,39 @@
   >
     <el-row>
       <el-col :span="12">
-        <el-form-item label="公司" prop="wsm_supplierNo">
+        <el-form-item label="仓库信息" prop="wsm_supplierNo">
           <search-supplier
-            :size="searchSize"
+            :size="'mini'"
             :value="ruleForm.wsm_supplierNo"
-            :disabled="
-              !(status === '2' && powers.some((item) => item == '040'))
-            "
+            :disabled="false"
             :placeholder="'仓库所在公司'"
             :names="wsm_supplier_name"
-            :isDetail="
-              !(status === '2' && powers.some((item) => item == '040'))
-            "
+            :isDetail="true"
             @searchChange="supplierChange"
           />
         </el-form-item>
       </el-col>
-      <el-col :span="12">
-        <el-form-item label="仓库" prop="wsm_code">
+      <el-col :span="10">
+        <el-form-item prop="wsm_code" label-width="10px">
           <search-stock
-            :size="searchSize"
+            :size="'mini'"
             :value="ruleForm.wsm_code"
             :placeholder="'退库仓库'"
-            :disabled="
-              !(status === '2' && powers.some((item) => item == '040'))
-            "
-            :isDetail="
-              !(status === '2' && powers.some((item) => item == '040'))
-            "
+            :disabled="false"
+            :isDetail="true"
             :isRelation="true"
+            :wsmtype="'4'"
             :names="wsm_code_name"
             :companyCode="wsm_supplier_code"
             @searchChange="stockChange"
           />
         </el-form-item>
       </el-col>
+      <el-col :span="2" style="text-align: right">
+        <el-button type="primary" @click="submitForm" size="mini"
+          >保 存</el-button
+        >
+      </el-col>
       <el-col v-if="ruleForm.wsm_code && ruleForm.wsm_code.length === 1">
         <el-col :span="12">
           <el-form-item label="收件人">
@@ -65,8 +64,19 @@
             ></el-input>
           </el-form-item>
         </el-col>
-        <el-col :span="24">
+        <el-col :span="12">
           <el-form-item label="退回地址">
+            <select-area
+              :placeholder="'省/市/区'"
+              :value="ruleForm.addr_code"
+              :is-detail="true"
+              :size="'mini'"
+              :disabled="true"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label-width="10px">
             <el-input
               disabled
               v-model="ruleForm.addr"
@@ -76,21 +86,13 @@
           </el-form-item>
         </el-col>
       </el-col>
-      <el-col
-        :span="24"
-        style="text-align: right; margin: 0 0 20px 0"
-        v-if="status === '2' && powers.some((item) => item == '040')"
-      >
-        <el-button type="primary" @click="submitForm" size="mini"
-          >保 存</el-button
-        >
-      </el-col>
     </el-row>
   </el-form>
 </template>
 <script>
 import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
 import resToken from "@/mixins/resToken";
+import jsCookie from "js-cookie";
 export default {
   name: "sellAfterApplyDetail",
   props: ["id", "newTime", "sitem"],
@@ -107,6 +109,10 @@ export default {
         wsm_supplierNo: [],
         wsm_code: [],
         wsm_codeNo: "",
+        contactor: "",
+        mobile: "",
+        addr_code: [],
+        addr: "",
       },
       rulesThis: this.rules,
       // 验证规则
@@ -179,23 +185,36 @@ export default {
             return_wsm,
             addr,
             mobile,
-            contactor,
+            contactor_name,
             wsm_supplierNo,
             wsm_supplier,
             wsm_name,
+            addr_code,
+            addrs_code,
           } = this.sitem;
+
           this.status = status;
           this.wsm_supplier_name = wsm_supplier;
           this.wsm_code_name = wsm_name;
           this.wsm_supplier_code = wsm_supplierNo;
+
           this.ruleForm = {
             returnCode: returnCode || "",
             wsm_code: return_wsm ? [return_wsm] : [],
             wsm_supplierNo: wsm_supplierNo ? [wsm_supplierNo] : [],
-            contactor: contactor || "",
+            contactor: contactor_name || "",
             mobile: mobile || "",
             addr: addr || "",
+            addr_code: [],
           };
+          if (addrs_code) {
+            const { provice_code, city_code, area_code } = addrs_code;
+
+            this.ruleForm.addr_code =
+              addrs_code && provice_code && city_code && area_code
+                ? [provice_code, city_code, area_code]
+                : [];
+          }
         }
       });
     },
@@ -203,16 +222,26 @@ export default {
       await this.$refs.ruleForm.validate(async (valid) => {
         if (valid) {
           this.loading = true;
-
-          let model = {
-            returnCode: this.ruleForm.returnCode,
-            wsm_code: this.ruleForm.wsm_codeNo,
-          };
-          const res = await asyncRequest.afterFeed(model);
+          let model = JSON.parse(JSON.stringify(this.ruleForm));
+          model.addr_code = model.addr_code.toString();
+          model.wsm_code = model.wsm_code.toString();
+          delete model["wsm_codeNo"];
+          delete model["wsm_supplier"];
+          delete model["wsm_supplierNo"];
+          console.log(model);
+          // let model = {
+          //   returnCode: this.ruleForm.returnCode,
+          //   wsm_code: this.ruleForm.wsm_codeNo,
+          //   addr_code: "",
+          //   addr: "",
+          //   mobile: "",
+          //   contactor: "",
+          // };
+          const res = await asyncRequest.aftersetwsm(model);
           this.loading = false;
           if (res && res.code === 0) {
             this.$notify.success({
-              title: "物流已反馈",
+              title: "提交成功",
               message: "",
             });
             this.$emit("refresh", false);
@@ -243,11 +272,17 @@ export default {
       this.ruleForm.addr = "";
     },
     async stockChange(e) {
-      this.ruleForm.wsm_codeNo = e && e.id ? e.code : "";
-      this.ruleForm.wsm_code = e && e.id ? [e.code] : [];
-      this.ruleForm.contactor = e && e.id ? e.contactor : "";
-      this.ruleForm.mobile = e && e.id ? e.mobile : "";
-      this.ruleForm.addr = e && e.id ? e.addr : "";
+      const { code, contactor, mobile, addr, addr_code, addr_cn } = e;
+      console.log(e);
+      this.ruleForm.wsm_codeNo = code || "";
+      this.ruleForm.wsm_code = code ? [code] : [];
+      this.ruleForm.contactor = contactor || "";
+      this.ruleForm.mobile = mobile || "";
+      this.ruleForm.addr = addr || "";
+      const { provice_code, city_code, area_code } = addr_code;
+      this.ruleForm.addr_code = code
+        ? [provice_code, city_code, area_code]
+        : [];
     },
   },
 };

+ 0 - 358
src/views/sellOut/sellAfterApply/components/purchase_check.vue

@@ -1,358 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="退回仓库" prop="return_store">
-          <el-select
-            style="width: 100%"
-            v-model="ruleForm.return_value"
-            placeholder="请选择退回仓库"
-            @change="handleStore"
-          >
-            <el-option
-              v-for="item in return_store_options"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-      </el-col>
-    </el-row>
-    <el-row>
-      <el-row>
-        <el-col :span="12">
-          <el-form-item label="退回地址" prop="return_goods_addr">
-            <select-area
-              :placeholder="'请选择省/市/区'"
-              :value="ruleForm.return_goods_addr"
-              :is-detail="id !== 'add'"
-              @selectChange="selectAreaAddr_code"
-            />
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="详细地址" prop="addr_detail">
-            <el-input
-              v-model="ruleForm.addr_detail"
-              placeholder="请输入退货详细地址"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人" prop="addressee">
-            <el-input
-              v-model="ruleForm.addressee"
-              placeholder="请输入收件人"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人电话" prop="addressee_phone">
-            <el-input
-              v-model="ruleForm.addressee_phone"
-              placeholder="请输入收件人电话"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
-          >保 存</el-button
-        >
-        <!-- id === 'add' ||
-            (status === '0' && powers.some((item) => item == '005')) -->
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isMobile } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-import { isnumber } from "@/utils/validate.js";
-export default {
-  name: "sellAfterApplyDetail",
-  props: ["id", "showModelThis", "newTime"],
-  mixins: [resToken],
-  data() {
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      loading: false,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        return_store: "", //退回仓库
-        return_goods_addr: [], //退货地址
-        addr_detail: "", //退货详细地址
-        addressee: "", //收件人
-        addressee_phone: "", //收件人电话
-        express_require: "", //物流要求
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        return_store: [
-          {
-            required: true,
-            trigger: "change",
-            message: "请选择退回仓库",
-          },
-        ],
-        addressee: [
-          {
-            required: true,
-            message: "请输入收件人",
-            trigger: "blur",
-          },
-        ],
-        return_goods_addr: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择退回地址所在省/市/区",
-            trigger: "change",
-          },
-        ],
-        addr_detail: [
-          {
-            required: true,
-            message: "请输入详细退货地址",
-            trigger: "blur",
-          },
-        ],
-        addressee: [
-          {
-            required: true,
-            message: "请输入收件人",
-            trigger: "blur",
-          },
-        ],
-        addressee_phone: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validatemobile,
-          },
-        ],
-        express_require: [
-          {
-            required: true,
-            trigger: "blur",
-            message: "请输入物流信息",
-          },
-        ],
-      },
-      return_store_options: [
-        {
-          value: "value1",
-          label: "供应商仓库",
-          return_goods_addr: ["110000", "110100", "110101"],
-          addr_detail: "三河道",
-          addressee: "张三",
-          addressee_phone: "13223223230",
-        },
-        {
-          value: "value2",
-          label: "自建仓/部门仓1",
-        },
-        {
-          value: "value3",
-          label: "自建仓/部门仓2",
-        },
-        {
-          value: "value4",
-          label: "自建仓/部门仓3",
-        },
-      ],
-      return_value: "", //退回仓库
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "sellAfterApplyDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  mounted() {
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    // async closeAddEdit() {
-    //   this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    //
-    // },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.status = "";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-        // await this.initData();
-      }
-      this.loading = false;
-    },
-
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.ruleForm = {
-            return_store: "", //退回仓库
-            return_goods_addr: [], //退货地址
-            addr_detail: "", //退货详细地址
-            addressee: "", //收件人
-            addressee_phone: "", //收件人电话
-            express_require: "", //物流要求
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const model = {
-            id: this.id,
-            resign_uid: rUid,
-            hand_uid: hUid,
-          };
-          let res = {};
-          if (this.id === "add") {
-            delete model["id"];
-            res = await asyncRequest.add(model);
-          } else {
-            res = await asyncRequest.update(model);
-          }
-
-          this.loading = false;
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-
-             this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleStore(e) {
-      this.return_store_options.find((item) => {
-        if (item.value === e) {
-          this.ruleForm.return_goods_addr = item.return_goods_addr;
-          this.ruleForm.addr_detail = item.addr_detail;
-          this.ruleForm.addressee = item.addressee;
-          this.ruleForm.addressee_phone = item.addressee_phone;
-          this.$refs.ruleForm.validateField("addressee");
-          this.$refs.ruleForm.validateField("return_goods_addr");
-          this.$refs.ruleForm.validateField("addr_detail");
-          this.$refs.ruleForm.validateField("addressee_phone");
-        }
-      });
-      this.ruleForm.return_store = e;
-    },
-    //退货省市区
-    selectAreaAddr_code(e) {
-      console.log(e);
-      this.ruleForm.return_goods_addr = e;
-      console.log(this.ruleForm);
-      this.$refs.ruleForm.validateField("return_goods_addr");
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 226 - 0
src/views/sellOut/sellAfterApply/components/purchase_exam.vue

@@ -0,0 +1,226 @@
+<template>
+  <el-form
+    ref="ruleForm"
+    :loading="loading"
+    :model="ruleForm"
+    status-icon
+    :size="'mini'"
+    :rules="rules"
+    label-width="100px"
+    style="width: 100%"
+    class="demo-ruleForm"
+  >
+    <el-row>
+      <el-col :span="6"
+        ><el-form-item label="审核状态" prop="status">
+          <el-select
+            v-model="ruleForm.status"
+            placeholder="请选择审核状态"
+            style="width: 100%"
+            :size="'mini'"
+            @change="statusChange"
+          >
+            <el-option
+              v-for="item in statusList"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+      </el-col>
+      <el-col :span="6" v-if="ruleForm.status === '1'"
+        ><el-form-item label="承担物流费" prop="is_post">
+          <el-select
+            v-model="ruleForm.is_post"
+            style="width: 100%"
+            placeholder="是否承担物流费"
+            :size="'mini'"
+          >
+            <el-option
+              v-for="item in is_post_list"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+      </el-col>
+      <el-col :span="ruleForm.status === '1' ? 12 : 18">
+        <el-form-item
+          label="审核备注"
+          v-if="ruleForm.status === '0'"
+          prop="remark"
+        >
+          <el-input
+            type="textarea"
+            :size="'mini'"
+            placeholder="请输入审核备注"
+            v-model="ruleForm.remark"
+            :disabled="disabled"
+            maxlength="250"
+            :autosize="{ minRows: 2, maxRows: 2 }"
+            show-word-limit
+          />
+        </el-form-item>
+        <el-form-item class="fr">
+          <el-button
+            v-if="!isDetail"
+            :size="'mini'"
+            type="primary"
+            @click="submitForm"
+            >保 存
+          </el-button>
+        </el-form-item>
+      </el-col>
+    </el-row>
+  </el-form>
+</template>
+<script>
+import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
+import resToken from "@/mixins/resToken";
+export default {
+  name: "sellAfterApplyDetail",
+  mixins: [resToken],
+  props: ["id", "newTime", "sitem", "show"],
+  data() {
+    return {
+      loading: false,
+      statusList: [
+        {
+          value: "1",
+          label: "通过",
+        },
+        {
+          value: "0",
+          label: "驳回",
+        },
+      ],
+      is_post_list: [
+        {
+          value: "1",
+          label: "愿意承担",
+        },
+        {
+          value: "0",
+          label: "不愿承担",
+        },
+      ],
+      showModelThis: this.showModel,
+      ruleForm: {
+        status: "1", // 通过or驳回
+        is_post: "", //驳回至
+        remark: "",
+      },
+      rulesThis: this.rules,
+      rules: {
+        status: [
+          {
+            required: true,
+            message: "请选择审核状态",
+            trigger: "change",
+          },
+        ],
+        is_post: [
+          {
+            required: true,
+            message: "请选择是否承担物流费",
+            trigger: "change",
+          },
+        ],
+        remark: [
+          { required: true, message: "请输入审核备注", trigger: "blur" },
+          {
+            min: 1,
+            max: 250,
+            message: "长度在 1 到 250 个字符",
+            trigger: "blur",
+          },
+        ],
+      },
+    };
+  },
+  computed: {
+    powers() {
+      let tran =
+        this.$store.getters.btnList.find(
+          (item) => item.menu_route == "sellAfterApplyDetail"
+        ) || {};
+      if (tran && tran.action && tran.action.length > 0) {
+        return tran.action;
+      } else {
+        return [];
+      }
+    },
+  },
+  watch: {
+    newTime: function (val) {
+      if (val) {
+        this.initForm();
+      }
+    },
+  },
+  mounted() {
+    this.initForm();
+  },
+  methods: {
+    async initForm() {
+      this.loading = true;
+      this.rulesThis = this.rules;
+      await this.resetForm();
+      this.statusChange();
+      this.loading = false;
+    },
+
+    statusChange() {
+      this.rulesThis.is_post[0].required = this.ruleForm.status === "1";
+      this.rulesThis.remark[0].required = this.ruleForm.status !== "1";
+    },
+    async resetForm() {
+      // 重置
+      await this.$nextTick(() => {
+        if (this.$refs.ruleForm) {
+          this.$refs.ruleForm.resetFields();
+          this.$refs.ruleForm.clearValidate();
+          const { returnCode } = this.sitem;
+          this.ruleForm = {
+            status: "1", // 通过or驳回
+            is_post: "1", //驳回至
+            remark: "",
+            returnCode: returnCode || "",
+          };
+        }
+      });
+    },
+    async submitForm() {
+      await this.$refs.ruleForm.validate(async (valid) => {
+        if (valid) {
+          let model = JSON.parse(JSON.stringify(this.ruleForm));
+          model.status = model.status === "1" ? "3" : "6";
+          let res = await asyncRequest.status(model);
+
+          if (res && res.code === 0) {
+            this.$notify.success({
+              title: "提交成功!",
+              message: "",
+            });
+            this.$emit("refresh");
+          } else if (res && res.code >= 100 && res.code <= 104) {
+            await this.logout();
+          } else {
+            this.$message.warning(res.message);
+          }
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+</style>

+ 178 - 140
src/views/sellOut/sellAfterApply/detail.vue

@@ -6,109 +6,133 @@
     >
       <!-- <p>{{ status }}---{{ powers }}</p> -->
 
-      <div class="detail-page-title">
-        <span>销售售后申请编号:</span><span v-if="sitem">{{ sitem.returnCode}}</span>
-    
-      <!-- <el-button
-        style="margin: 10px 0 20px 0"
-        type="primary"
-        plain
-        class="fr"
-        :size="'mini'"
-        @click="statusConfirm('1', '发起审核流程', '')"
-        v-if="status === '0' && powers.some((item) => item == '012')"
-        >发起审核流程
-      </el-button> -->
- </div>
-      <!-- <status-bar
-        v-if="newTime !== ''"
-        :newTime="newTime"
-        :options="statusOptions"
-        :status="status"
-      /> -->
-       <el-tabs v-model="activeTabs">
+      <el-tabs v-model="activeTabs">
         <el-tab-pane label="业务详情" name="1">
-      <el-collapse v-model="activeNames" style="margin:-18px 0 0 0">
-        <el-collapse-item title="售后申请详情" name="1">
-          <show-data-table
-            :newTime="newTime"
-            v-if="newTime !== ''"
-            :sitem="sitem"
-            :columns="ShowDataTableColumns"
-          >
-            <template slot="status">
-              <el-tag
-                :size="'mini'"
-                :type="sitem.status == '0' ? 'warning' : ''"
-                v-text="
-                  (
-                    statusOptions.find((item) => item.value == sitem.status) ||
-                    {}
-                  ).label || '--'
-                "
-              ></el-tag>
-            </template>
-            <template slot="order_type">
-              <el-tag :size="'mini'" :type="''">{{
-                sitem.status === "1" ? "发货申请单" : sitem.status === "2" ?"咨询发货申请单":"--"
-              }}</el-tag>
-            </template>
-              <template slot="except_code">
-              <el-tag :size="'mini'" :type="''">{{
-                sitem.except_code === "1" ? "退货" : sitem.except_code === "2" ?"换货":sitem.except_code === "2" ?'改变售价':"--"
-              }}</el-tag>
-            </template>
-          </show-data-table>
-          <add-edit-form
-            :sitem="sitem"
-            :newTime="newTime"
-            v-if="newTime != ''"
-          ></add-edit-form>
-        </el-collapse-item>
-        <el-collapse-item
-          title="业务审核"
-          name="1"
-          v-if="status === '1' && powers.some((item) => item == '034')"
-        >
-          <exam-form
-            :statusList="statusList"
-            :newTime="newTime"
-            :disabled="false"
-            :isMust="false"
-            @searchChange="examForm"
-          />
-        </el-collapse-item>
-        <el-collapse-item
-          title="物流反馈"
-          name="2"
-          v-if="
-            (status == '2' && powers.some((item) => item == '040')) ||
-            status == '3' ||
-            status == '4' ||
-            status == '5'
-          "
-        >
-          <express-feedback
-            :sitem="sitem"
-            :newTime="newTime"
-            v-if="newTime != ''"
-            @refresh="initData"
-          ></express-feedback>
-        </el-collapse-item>
-        <el-collapse-item
-          title="退货物流"
-          name="4"
-          v-if="status == '3' || status == '4'"
-        >
-          <return-express
-            @refresh="initData(true)"
-            :sitem="sitem"
-            :newTime="newTime"
-            v-if="newTime != ''"
-          ></return-express>
-        </el-collapse-item>
-      </el-collapse>
-         </el-tab-pane>
+          <el-collapse v-model="activeNames" style="margin: -18px 0 0 0">
+            <el-collapse-item title="售后申请详情" name="1">
+              <show-data-table
+                :newTime="newTime"
+                v-if="newTime !== ''"
+                :sitem="sitem"
+                :columns="sellshowColumns"
+              >
+                <template slot="status">
+                  <el-tag
+                    :size="'mini'"
+                    :type="sitem.status == '0' ? 'warning' : ''"
+                    v-text="
+                      (
+                        statusOptions.find(
+                          (item) => item.value == sitem.status
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+                <template slot="order_type">
+                  <el-tag
+                    :size="'mini'"
+                    v-text="
+                      (
+                        orderOptions.find(
+                          (item) => item.id == sitem.order_type
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+                <template slot="is_receive">
+                  <el-tag :size="'mini'" :type="''">{{
+                    sitem.is_receive === "1"
+                      ? "已收到货"
+                      : sitem.is_receive === "0"
+                      ? "未收到"
+                      : "--"
+                  }}</el-tag>
+                </template>
+                <template slot="except_code">
+                  <el-tag
+                    :size="'mini'"
+                    v-text="
+                      (
+                        expect_options.find(
+                          (item) => item.value == sitem.except_code
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+
+                <template slot="error_img">
+                  <img
+                    class="fl hover"
+                    style="width: 23px; height: 23px; margin: 0 5px 0 0"
+                    v-viewer
+                    v-for="(si, i) in sitem.error_img"
+                    :src="si"
+                    :key="si + i"
+                  />
+                </template>
+              </show-data-table>
+            </el-collapse-item>
+            <el-collapse-item title="商品信息" name="2">
+              <show-goods-data-table
+                :newTime="newTime"
+                v-if="newTime !== ''"
+                :type="sitem.order_type"
+                :skucode="sitem.skuCode"
+                :spucode="sitem.good_code"
+              />
+            </el-collapse-item>
+            <el-collapse-item
+              title="业务审核"
+              name="3"
+              v-if="status === '1' && powers.some((item) => item == '034')"
+            >
+              <exam-form
+                :statusList="statusList"
+                :newTime="newTime"
+                :disabled="false"
+                :isMust="false"
+                @searchChange="examForm"
+              />
+            </el-collapse-item>
+            <el-collapse-item
+              title="采购审核"
+              name="4"
+              v-if="
+                (status == '2' && powers.some((item) => item == '040')) ||
+                status == '3' ||
+                status == '4' ||
+                status == '5'
+              "
+            >
+              <purchase-exam
+                :sitem="sitem"
+                :newTime="newTime"
+                v-if="newTime != ''"
+                @refresh="initData"
+              />
+            </el-collapse-item>
+            <el-collapse-item
+              title="物流反馈"
+              name="4"
+              v-if="
+                (status == '2' && powers.some((item) => item == '040')) ||
+                status == '3' ||
+                status == '4' ||
+                status == '5'
+              "
+            >
+              <express-feedback
+                :sitem="sitem"
+                :newTime="newTime"
+                v-if="newTime != ''"
+                @refresh="initData"
+              ></express-feedback>
+            </el-collapse-item>
+          </el-collapse>
+        </el-tab-pane>
         <el-tab-pane label="审批记录" name="2">
           <process-time-line
             v-if="newTime !== ''"
@@ -128,19 +152,17 @@
 import mixinPage from "@/mixins/elPaginationHandle";
 import resToken from "@/mixins/resToken";
 import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import addEditForm from "./components/addEditForm";
 import ExpressFeedback from "./components/express_feedback";
-import PurchaseCheck from "./components/purchase_check";
-import ReturnExpress from "./components/returnExpress";
-import ShowDataTableColumns from "./ShowDataTableColumns";
+
+import { sellshowColumns } from "./columns";
+import purchaseExam from "./components/purchase_exam";
+
 export default {
   name: "sellAfterApplyDetail",
   mixins: [mixinPage, resToken],
   components: {
-    addEditForm,
+    purchaseExam,
     ExpressFeedback,
-    PurchaseCheck,
-    ReturnExpress,
   },
   computed: {
     powers() {
@@ -157,21 +179,49 @@ export default {
   },
   data() {
     return {
-       activeTabs: "1",
+      orderOptions: [
+        { id: "1", label: "线上商品销售" },
+        { id: "2", label: "项目线上商品销售" },
+        { id: "3", label: "咨询单销售" },
+        { id: "4", label: "项目咨询单销售" },
+      ],
+      activeTabs: "1",
+      expect_options: [],
+      expect_options1: [
+        {
+          value: "1",
+          label: "退货",
+        },
+        {
+          value: "2",
+          label: "换货",
+        },
+      ],
+      expect_options0: [
+        {
+          value: "1",
+          label: "退货",
+        },
+        {
+          value: "2",
+          label: "补发",
+        },
+      ],
       activeNames: ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"],
       status: "", //存储详情接口状态
       statusList: [],
-      ShowDataTableColumns: ShowDataTableColumns,
+      sellshowColumns: sellshowColumns,
       sitem: null,
       newTime: "",
       loading: false,
       statusOptions: [
-        { value: "0", label: "业务审核" },
-        { value: "1", label: "物流信息反馈" },
-        // { value: "2", label: "反馈物流费" },
-        { value: "3", label: "填写退货信息" },
-        { value: "4", label: "已退货" },
-        // { value: "5", label: "已发货" },
+        { value: "1", label: "待业务审核" },
+        { value: "2", label: "待采购审核" },
+        { value: "3", label: "待设置仓库" },
+        { value: "4", label: "待退回" },
+        { value: "5", label: "业务已驳回" },
+        { value: "6", label: "采购已驳回" },
+        { value: "7", label: "售后已完成" },
       ],
       orderCode: "",
       return_code: "",
@@ -208,8 +258,8 @@ export default {
     async examForm(e) {
       console.log(e);
       if (!this.loading) {
-        let type = e.state === "1" ? "2" : "0";
-        let message = e.state === "1" ? "提交业务审核" : "驳回业务";
+        let type = e.state === "1" ? "2" : "5";
+        let message = e.state === "1" ? "提交业务审核" : "提交业务审核";
         await this.statusConfirm(type, message, e.remark);
       }
     },
@@ -234,7 +284,7 @@ export default {
         this.$message.warning(res.message);
       }
     },
-    async initData(type) {
+    async initData() {
       let model = {
         returnCode: this.code,
       };
@@ -244,27 +294,15 @@ export default {
         const { status, can, returnCode } = this.sitem;
         this.status = status;
         this.orderCode = returnCode;
-
-        if (can && can.length > 0) {
-          this.sitem.class_cat = "";
-          can.forEach((x, i) => {
-            this.sitem.class_cat += i === 0 ? x.name : "/" + x.name;
-          });
-        }
-
+        this.sitem.error_img = this.sitem.error_img.split(",");
+        this.expect_options = JSON.parse(
+          JSON.stringify(
+            this.sitem.is_receive === "1"
+              ? this.expect_options1
+              : this.expect_options0
+          )
+        );
         this.getNewTime();
-        if (type) {
-          this.$confirm("是否要跳转到销售售后退货单界面?", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-          })
-            .then(() => {
-              this.routeGoto("/sellOut/returnOrder");
-            })
-            .catch(() => {
-              console.log("取消");
-            });
-        }
       } else if (res && res.code >= 100 && res.code <= 104) {
         await this.logout();
       } else {

+ 19 - 28
src/views/sellOut/sellAfterApply/index.vue

@@ -82,7 +82,7 @@
             </el-row>
             <el-row style="padding-top: 10px">
               <!-- 期望意愿 -->
-              <el-col :span="4" style="width: 130px">
+              <!-- <el-col :span="4" style="width: 130px">
                 <el-select
                   :size="searchSize"
                   v-model="parmValue.except_code"
@@ -102,8 +102,9 @@
                   >
                   </el-option>
                 </el-select>
-              </el-col>
-              <el-col :span="4" style="width: 620px; padding: 0 0 0 10px">
+                padding: 0 0 0 10px
+              </el-col> -->
+              <el-col :span="4" style="width: 620px">
                 <el-input
                   clearable
                   :size="searchSize"
@@ -126,10 +127,10 @@
                       value="sellOutNum"
                     ></el-option>
 
-                    <el-option
+                    <!-- <el-option
                       label="销售订单编号"
                       value="sellOrderNum"
-                    ></el-option>
+                    ></el-option> -->
 
                     <el-option label="商品编号" value="goodsNum"></el-option>
                     <el-option label="商品名称" value="goodsName"></el-option>
@@ -209,14 +210,6 @@
           </el-tooltip>
         </template>
       </ex-table>
-      <add-edit
-        :id="modelId"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      />
     </div>
     <div v-else>
       <no-auth></no-auth>
@@ -226,18 +219,15 @@
    <script>
 import mixinPage from "@/mixins/elPaginationHandle";
 import resToken from "@/mixins/resToken";
-import {statusList} from "@/assets/js/statusList";
+import { statusList } from "@/assets/js/statusList";
 import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import addEdit from "./components/addEdit.vue";
-import columns from "./columns";
+import { columns } from "./columns";
 import { mapGetters } from "vuex";
 
 export default {
   name: "sellAfterApply",
   mixins: [mixinPage, resToken],
-  components: {
-    addEdit,
-  },
+
   computed: {
     ...mapGetters(["tablebtnSize", "searchSize", "size"]),
     powers() {
@@ -270,11 +260,12 @@ export default {
       sitem: null,
       // 状态
       statusOptions: [
-        { id: "0", label: "待审核" },
-        { id: "1", label: "待物流反馈" },
-        { id: "3", label: "待退货" },
-        { id: "4", label: "已退货" },
-        { id: "5", label: "待客户验收" },
+        { id: "1", label: "待业务审核" },
+        { id: "2", label: "待采购审核" },
+        { id: "3", label: "待设置仓库" },
+        { id: "4", label: "售后已完成" },
+        { id: "5", label: "业务已驳回" },
+        { id: "6", label: "采购已驳回" },
       ],
       statusList: statusList,
       loading: false,
@@ -289,7 +280,7 @@ export default {
         serviceValue: "", //处理状态
         start: "",
         end: "",
-        order_type: "1", //订单类型1为销售 2为咨询
+        order_type: "", //订单类型1为销售 2为咨询
         customer_code: "", //客户公司code
         returnCode: "", //售后单号
         apply_name: "", //申请人名称
@@ -356,10 +347,10 @@ export default {
   methods: {
     restSearch() {
       this.customerCode = [];
-       this.select = "serviceNum";
-       this.s_input=""
+      this.select = "serviceNum";
+      this.s_input = "";
       this.parmValue = {
-        order_type: "1", //订单类型1为销售 2为咨询
+        order_type: "", //订单类型1为销售 2为咨询
         customer_code: "", //客户公司code
         start: "",
         end: "",

+ 0 - 153
src/views/sellOut/sellAfterApply/options.js

@@ -1,153 +0,0 @@
-export default {
-    serviceOption: [//假数据
-        {
-          value: "选项1",
-          label: "待业务审核",
-        },
-        {
-          value: "选项2",
-          label: "待供应商反馈",
-        },
-        {
-          value: "选项3",
-          label: "待采购反馈",
-        },
-        {
-          value: "选项4",
-          label: "待采购审核",
-        },
-        {
-          value: "选项5",
-          label: "处理已结束",
-        },
-        {
-          value: "d",
-          label: "业务已驳回",
-        },
-        {
-          value: "d",
-          label: "采购已驳回",
-        },
-      ],
-    columns:[
-       {
-          prop: "returnCode",
-          label: "售后申请单",
-          width:"160"
-        },
-        {
-          prop:"apply_name",
-          label:"申请人",
-        },
-        {
-          prop: "orderCode",
-          label: "确认单编号",
-          width:"160"
-        },
-        {
-          prop: "outCode",
-          label: "发货申请单编号",
-          width:"160"
-        },
-        {
-          prop: "total_num",
-          label: "出库总数",
-        },
-        {
-          prop: "good_code",
-          label: "商品编码",
-          width:"140"
-        },
-        {
-            prop:"good_name",
-            label:"商品名称",
-            width:"150"
-        },
-        {
-            prop:"error_num",
-            label:"异常数量",
-        },
-        {
-            prop:"error_msg",
-            label:"异常原因",
-        },
-        // {
-        //   prop:"error_img",
-        //   label:"异常图片",
-        // },
-        {
-            prop:"error_remark",
-            label:"备注"
-        },
-        {
-            prop:"except_code",
-            label:"期望意愿",
-          _slot_: "except_code",
-          width:100,
-
-        },
-    
-        {
-          prop: "status",
-          label: "状态",
-          _slot_: "status",
-          width: "120px",
-        },
-        {
-            prop:"addtime",
-            label:"添加时间",
-            width:150,
-        },
-        
-        {
-          prop:"return_wsm",
-          label:"退回仓库编码",
-          width:"120"
-        },
-        {
-          prop:"contactor",
-          label:"联系人",
-        },
-        {
-          prop:"mobile",
-          label:"联系方式",
-        },
-        {
-          prop:"addr",
-          label:"退货地址",
-        },
-        {
-          prop:"post_company",
-          label:"快递名称",
-        },
-        {
-          prop:"post_fee",
-          label:"物流费",
-        },
-        {
-          prop:"post_own",
-          label:"费用承担方",
-          width:"100",
-          _slot_: "post_own",
-
-        },
-        {
-          prop:"customer_code",
-          label:"客户编码",
-          width:"150"
-        },
-        {
-          prop:"customer_name",
-          label:"客户名称",
-          width:"200"
-        },
-        {
-          prop: "",
-          label: "操作",
-          fixed: "right",
-          _noset_: true,
-          _slot_: "operation",
-          width:50,
-        },
-    ]  
-}

+ 0 - 117
src/views/sellOut/sellOutOrder/ShowDataTableColumns.js

@@ -1,117 +0,0 @@
-export default [
-  {
-    prop: "outCode",
-    label: "发货申请单号",
-    span: 6
-  },
-  {
-    prop: "status",
-    label: "发货申请单状态",
-    _slot_: "status",
-    span: 6
-  },
-  {
-    prop: "orderCode",
-    label: "订单编号",
-    span: 6
-  },
-  {
-    prop: "order_type",
-    label: "订单类别",
-    _slot_: "order_type",
-    span: 6
-  },
-
-
-  {
-    prop: "apply_name",
-    label: "申请人",
-    span: 6
-  },
-
-  {
-    prop: "post_name",
-    label: "快递公司",
-    span: 6
-  },
-  {
-    prop: "post_code",
-    label: "物流编号",
-    span: 6
-  },
-  {
-    prop: "post_fee",
-    label: "物流费用",
-    span: 6
-  },
-  {
-    prop: "sendtime",
-    label: "发货时间",
-    span: 6
-  },
-
-  {
-    prop: "send_num",
-    label: "发货数量",
-    span: 6
-  },
-  {
-    prop: "check_num",
-    label: "验收数量",
-    span: 6
-  },
-
-  {
-    prop: "error_num",
-    label: "异常数量",
-    span: 6
-  },
-  {
-    prop: "sale_price",
-    label: "商品单价",
-    span: 6
-  },
-  {
-    prop: "total_price",
-    label: "发货申请单总价",
-    span: 6
-  },
-  {
-    prop: "addtime",
-    label: "发货方式",
-    span: 6
-  },
-  {
-    prop: "addtime",
-    label: "创建时间",
-    span: 6
-  },
-  {
-    prop: "contactor",
-    label: "收货联系人",
-    span: 6
-  },
-  {
-    prop: "mobile",
-    label: "收货联系人电话",
-    span: 6
-  },
- 
-  {
-    prop: "addr",
-    label: "收货地址",
-    span: 12
-  },
-
-  // {
-  //   prop: "good_price",
-  //   label: "商品单价",
-  // },
-
-
-
-
-
-
-]
-

+ 205 - 7
src/views/sellOut/sellOutOrder/columns.js

@@ -1,4 +1,4 @@
-export default [
+const columns = [
   {
     prop: "outCode",
     label: "发货申请单编号",
@@ -8,11 +8,11 @@ export default [
     prop: "apply_name",
     label: "申请人",
   },
-  {
-    prop: "orderCode",
-    label: "销售订单编号",
-    width: "160"
-  },
+  // {
+  //   prop: "orderCode",
+  //   label: "销售订单编号",
+  //   width: "160"
+  // },
   {
     prop: "status",
     label: "状态",
@@ -99,4 +99,202 @@ export default [
     _slot_: "operation",
     width: 50,
   },
-]
+]
+
+const showColumns = [
+  {
+    prop: "outCode",
+    label: "发货申请单号",
+    span: 6
+  },
+  {
+    prop: "status",
+    label: "发货申请单状态",
+    _slot_: "status",
+    span: 6
+  },
+  {
+    prop: "orderCode",
+    label: "订单编号",
+    span: 6
+  },
+  {
+    prop: "order_type",
+    label: "订单类别",
+    _slot_: "order_type",
+    span: 6
+  },
+
+
+  {
+    prop: "apply_name",
+    label: "申请人",
+    span: 6
+  },
+
+  {
+    prop: "post_name",
+    label: "快递公司",
+    span: 6
+  },
+  {
+    prop: "post_code",
+    label: "物流编号",
+    span: 6
+  },
+  {
+    prop: "post_fee",
+    label: "物流费用",
+    span: 6
+  },
+  {
+    prop: "sendtime",
+    label: "发货时间",
+    span: 6
+  },
+
+  {
+    prop: "send_num",
+    label: "发货数量",
+    span: 6
+  },
+  {
+    prop: "check_num",
+    label: "验收数量",
+    span: 6
+  },
+
+  {
+    prop: "error_num",
+    label: "异常数量",
+    span: 6
+  },
+  {
+    prop: "sale_price",
+    label: "商品单价",
+    span: 6
+  },
+  {
+    prop: "total_price",
+    label: "发货申请单总价",
+    span: 6
+  },
+  {
+    prop: "addtime",
+    label: "发货方式",
+    span: 6
+  },
+  {
+    prop: "addtime",
+    label: "创建时间",
+    span: 6
+  },
+  {
+    prop: "contactor",
+    label: "收货联系人",
+    span: 6
+  },
+  {
+    prop: "mobile",
+    label: "收货联系人电话",
+    span: 6
+  },
+
+  {
+    prop: "addr",
+    label: "收货地址",
+    span: 12
+  },
+
+  // {
+  //   prop: "good_price",
+  //   label: "商品单价",
+  // },
+
+
+]
+const rshowColumns = [{
+  prop: "returnCode",
+  label: "售后申请单号",
+  span: 6
+},
+{
+  prop: "addtime",
+  label: "创建时间",
+  span: 6
+},
+
+
+{
+  prop: "apply_name",
+  label: "申请人",
+  span: 6
+},
+
+{
+  prop: "post_name",
+  label: "快递公司",
+  span: 6
+},
+{
+  prop: "post_code",
+  label: "物流编号",
+  span: 6
+},
+{
+  prop: "post_fee",
+  label: "物流费用",
+  span: 6
+},
+{
+  prop: "sendtime",
+  label: "发货时间",
+  span: 6
+},
+
+{
+  prop: "send_num",
+  label: "发货数量",
+  span: 6
+},
+{
+  prop: "check_num",
+  label: "验收数量",
+  span: 6
+},
+
+{
+  prop: "error_num",
+  label: "异常数量",
+  span: 6
+},
+{
+  prop: "sale_price",
+  label: "商品单价",
+  span: 6
+},
+{
+  prop: "total_price",
+  label: "发货申请单总价",
+  span: 6
+},
+{
+  prop: "addtime",
+  label: "发货方式",
+  span: 6
+},
+
+
+{
+  prop: "mobile",
+  label: "收货联系人电话",
+  span: 6
+},
+
+{
+  prop: "收货仓库信息",
+  label: "收货地址",
+  span: 24
+},
+]
+export { columns, showColumns, rshowColumns }

+ 19 - 19
src/views/sellOut/sellOutOrder/components/logisticsForm.vue

@@ -62,7 +62,7 @@
   </el-form>
 </template>
 <script>
-import asyncRequest from "@/apis/service/sellOut/zxoutOrder";
+// import asyncRequest from "@/apis/service/sellOut/zxoutOrder";
 import resToken from "@/mixins/resToken";
 import { isnumber, isnumber2, isAlphanumeric } from "@/utils/validate";
 export default {
@@ -181,24 +181,24 @@ export default {
     async submitForm() {
       await this.$refs.ruleForm.validate(async (valid) => {
         if (valid) {
-          this.loading = true;
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          model.post_name = model.post_name.toString();
-          delete model["send_num"];
-          delete model["page"];
-          const res = await asyncRequest.salezxout(model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "添加成功",
-              message: "",
-            });
-            this.$emit("refresh"); //抛出事件给详情页。
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
+          // this.loading = true;
+          // let model = JSON.parse(JSON.stringify(this.ruleForm));
+          // model.post_name = model.post_name.toString();
+          // delete model["send_num"];
+          // delete model["page"];
+          // const res = await asyncRequest.salezxout(model);
+          // this.loading = false;
+          // if (res && res.code === 0) {
+          //   this.$notify.success({
+          //     title: "添加成功",
+          //     message: "",
+          //   });
+          //   this.$emit("refresh"); //抛出事件给详情页。
+          // } else if (res && res.code >= 100 && res.code <= 104) {
+          //   await this.logout();
+          // } else {
+          //   this.$message.warning(res.message);
+          // }
         } else {
           console.log("error submit!!");
           return false;

+ 21 - 51
src/views/sellOut/sellOutOrder/components/returnExpress.vue

@@ -4,20 +4,20 @@
     :loading="loading"
     :model="ruleForm"
     status-icon
+    :size="'mini'"
     :rules="rulesThis"
     label-width="100px"
-    style="width: 100%"
+    style="width: 100%; padding: 20px 0 0 0"
     class="demo-ruleForm"
   >
-    {{ returnCode }}
     <el-row>
-      <el-col :span="12">
+      <el-col :span="6">
         <el-form-item label="费用承担方" prop="express_bear">
           <el-select
             clearable
             @change="handleChange"
             v-model="ruleForm.express_bear"
-            placeholder="请选择"
+            placeholder="费用承担方"
             style="width: 100%"
           >
             <el-option
@@ -29,74 +29,46 @@
             </el-option>
           </el-select>
         </el-form-item>
+      </el-col>
+      <el-col :span="6">
         <el-form-item label="物流公司" prop="express_company">
           <search-express
             :value="ruleForm.express_company"
-            :placeholder="'请选择退货物流'"
+            :placeholder="'物流公司'"
             :names="''"
+            :size="'mini'"
             :disabled="false"
             :is-detail="false"
             @searchChange="handleCompany"
           />
         </el-form-item>
       </el-col>
-      <el-col :span="12">
+      <el-col :span="6">
         <el-form-item label="物流单号" prop="express_numbres">
           <el-input
-            placeholder="请输入物流单号"
+            placeholder="物流单号"
             v-model="ruleForm.express_numbres"
           ></el-input>
         </el-form-item>
       </el-col>
-      <el-col :span="12" v-if="isShow">
+      <el-col :span="6" v-if="isShow">
         <el-form-item label="物流费用" prop="express_fee">
-          <el-input placeholder="请输入物流费用" v-model="ruleForm.express_fee">
+          <el-input placeholder="物流费用" v-model="ruleForm.express_fee">
             <template slot="append">元</template>
           </el-input>
         </el-form-item>
       </el-col>
-    </el-row>
-    <el-row>
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
+
+      <el-col :span="isShow ? 24 : 6" style="text-align: right">
+        <el-button type="primary" :size="'mini'" @click="submitForm" v-if="true"
           >保 存</el-button
         >
-        <!-- id === 'add' ||
-            (status === '0' && powers.some((item) => item == '005')) -->
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
       </el-col>
     </el-row>
   </el-form>
 </template>
 <script>
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
+import asyncRequest from "@/apis/service/sellOut/sellOutOrder";
 import resToken from "@/mixins/resToken";
 import { isAlphanumeric, isnumber } from "@/utils/validate.js";
 export default {
@@ -155,8 +127,6 @@ export default {
         express_company: [], //物流公司
         express_numbres: "", //物流单号
         express_fee: 0, //物流费用
-        page: 1,
-        size: 15,
       },
       rulesThis: this.rules,
       // 验证规则
@@ -174,7 +144,7 @@ export default {
             type: "array",
             required: true,
             trigger: "change",
-            message: "请选择退回仓库",
+            message: "请选择物流公司",
           },
         ],
         express_numbres: [
@@ -261,7 +231,7 @@ export default {
             post_company: "", //入参快递公司
             express_company: [], //物流公司
             express_numbres: "", //物流单号
-            express_fee: 0, //物流费用
+            express_fee: "0", //物流费用
             type: "",
             name: "",
           };
@@ -273,13 +243,13 @@ export default {
         if (valid) {
           let model = JSON.parse(JSON.stringify(this.ruleForm));
           let _model = {
-            returnCode: this.code, //退货单号
-            own: model.express_bear, //费用承担方
+            returnCode: this.returnCode, //退货单号
+            is_th: model.express_bear, //费用承担方
             company: model.post_company, //快递公司
             post_code: model.express_numbres, //快递编号
             post_fee: model.express_fee || 0, //快递费用
           };
-          const res = await asyncRequest.afterPost(_model);
+          const res = await asyncRequest.setdelivery(_model);
           this.loading = false;
           if (res && res.code === 0) {
             // const title = this.id === "add" ? "添加成功!" : "修改成功!";

+ 164 - 41
src/views/sellOut/sellOutOrder/detail.vue

@@ -15,11 +15,11 @@
           plain
           :size="'mini'"
           style="margin: 0 0 0 10px"
-          @click="showModel = true"
+          @click="wellReturnCode"
           >新建售后申请单
         </el-button>
       </div>
-<!-- 
+      <!-- 
       <status-bar
         v-if="newTime !== ''"
         :newTime="newTime"
@@ -34,7 +34,7 @@
                 :newTime="newTime"
                 v-if="newTime !== ''"
                 :sitem="sitem"
-                :columns="ShowDataTableColumns"
+                :columns="showColumns"
               >
                 <template slot="status">
                   <el-tag
@@ -77,14 +77,89 @@
                 @refresh="initData"
               />
             </el-collapse-item>
-            <!-- <el-collapse-item title="填写售后申请单" name="3" v-if="status === '4'">
-          <sell-return-apply
-            :sitem="sitem"
-            v-if="newTime != '' || true"
-            :newTime="newTime"
-            @refresh="updateStatus"
-          />
-        </el-collapse-item> -->
+
+            <el-collapse-item
+              title="售后申请单结果"
+              name="4"
+              v-if="
+                status === '2' &&
+                returnCode &&
+                returnCode_type &&
+                sitem &&
+                sitem.order_return
+              "
+            >
+              <show-data-table
+                :newTime="newTime"
+                v-if="newTime !== ''"
+                :sitem="resitem"
+                :border="returnCode_type === '4'"
+                :columns="rshowColumns"
+              >
+                <template slot="status">
+                  <el-tag
+                    :size="'mini'"
+                    :type="resitem.status == '0' ? 'warning' : ''"
+                    v-text="
+                      (
+                        returnStatusOptions.find(
+                          (item) => item.value == resitem.status
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+                <template slot="order_type">
+                  <el-tag
+                    :size="'mini'"
+                    v-text="
+                      (
+                        orderOptions.find(
+                          (item) => item.id == resitem.order_type
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+                <template slot="is_receive">
+                  <el-tag :size="'mini'" :type="''">{{
+                    resitem.is_receive === "1"
+                      ? "已收到货"
+                      : resitem.is_receive === "0"
+                      ? "未收到"
+                      : "--"
+                  }}</el-tag>
+                </template>
+                <template slot="except_code">
+                  <el-tag
+                    :size="'mini'"
+                    v-text="
+                      (
+                        expect_options.find(
+                          (item) => item.value == resitem.except_code
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag>
+                </template>
+
+                <template slot="error_img">
+                  <img
+                    class="fl hover"
+                    style="width: 23px; height: 23px; margin: 0 5px 0 0"
+                    v-viewer
+                    v-for="(si, i) in resitem.error_img"
+                    :src="si"
+                    :key="si + i"
+                  />
+                </template>
+              </show-data-table>
+              <return-express
+                :returnCode="returnCode"
+                :newTime="newTime"
+                v-if="newTime !== ''"
+              />
+            </el-collapse-item>
           </el-collapse>
         </el-tab-pane>
         <el-tab-pane label="审批记录" name="2">
@@ -118,7 +193,9 @@ import resToken from "@/mixins/resToken";
 import asyncRequest from "@/apis/service/sellOut/sellOutOrder";
 import addEditForm from "./components/addEditForm.vue"; //发货申请单详情
 import addEditA from "./components/addEditA";
-import ShowDataTableColumns from "./ShowDataTableColumns";
+import { showColumns } from "./columns";
+import { sellshowColumns } from "@/views/sellOut/sellAfterApply/columns";
+import returnExpress from "./components/returnExpress";
 import wantDeliver from "./components/want-deliver.vue";
 export default {
   name: "sellOutOrderDetail",
@@ -127,6 +204,7 @@ export default {
     addEditForm,
     addEditA,
     wantDeliver,
+    returnExpress,
   },
   computed: {
     powers() {
@@ -143,15 +221,25 @@ export default {
   },
   data() {
     return {
+      returnCode: "",
+      returnCode_type: "",
       activeTabs: "1",
       activeNames: ["0", "1", "2", "3", "4"],
       status: "", //存储详情接口状态
       statusList: [],
-      ShowDataTableColumns: ShowDataTableColumns,
+      showColumns: showColumns,
+      rshowColumns: sellshowColumns,
       sitem: null,
+      resitem: null,
       newTime: "",
       showModel: false,
       loading: false,
+      orderOptions: [
+        { id: "1", label: "线上商品销售" },
+        { id: "2", label: "项目线上商品销售" },
+        { id: "3", label: "咨询单销售" },
+        { id: "4", label: "项目咨询单销售" },
+      ],
       statusOptions: [
         { value: "0", label: "待发货" },
         { value: "1", label: "待库管发货" },
@@ -159,6 +247,35 @@ export default {
         { value: "3", label: "已收货" },
         { value: "4", label: "已全部退货" },
       ],
+      returnStatusOptions: [
+        { value: "1", label: "待业务审核" },
+        { value: "2", label: "待采购审核" },
+        { value: "3", label: "待设置仓库" },
+        { value: "4", label: "售后已完成" },
+        { value: "5", label: "业务已驳回" },
+        { value: "6", label: "采购已驳回" },
+      ],
+      expect_options: [],
+      expect_options1: [
+        {
+          value: "1",
+          label: "退货",
+        },
+        {
+          value: "2",
+          label: "换货",
+        },
+      ],
+      expect_options0: [
+        {
+          value: "1",
+          label: "退货",
+        },
+        {
+          value: "2",
+          label: "补发",
+        },
+      ],
       code: "",
       did: "", //详情页上的id
     };
@@ -199,16 +316,13 @@ export default {
       const res = await asyncRequest.detail(model);
       if (res && res.code === 0 && res.data) {
         this.sitem = res.data;
-        const { status, can, id } = this.sitem;
+        const { status, can, id, order_return } = this.sitem;
         this.status = status;
         this.did = id;
-        if (can && can.length > 0) {
-          this.sitem.class_cat = "";
-          can.forEach((x, i) => {
-            this.sitem.class_cat += i === 0 ? x.name : "/" + x.name;
-          });
-        }
 
+        this.returnCode = order_return.returnCode;
+        this.returnCode_type = order_return.status;
+        await this.receive_initData(this.returnCode);
         this.getNewTime();
       } else if (res && res.code >= 100 && res.code <= 104) {
         await this.logout();
@@ -217,29 +331,38 @@ export default {
       }
     },
 
-    async goodsCheck() {
+    wellReturnCode() {
+      console.log(this.returnCode_type);
+      if (
+        this.returnCode_type === "1" ||
+        this.returnCode_type === "2" ||
+        this.returnCode_type === "3"
+      ) {
+        this.$message.warning("当前售后申请单未完成审批!");
+        return;
+      }
+      this.showModel = true;
+    },
+    async receive_initData(code) {
       let model = {
-        outCode: this.code,
-        status: "2",
+        returnCode: code,
       };
-      this.$confirm("客户是否已收到货?", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          const res = await asyncRequest.salecustomer(model);
-          if (res && res.code === 0) {
-            await this.initData();
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
+      const res = await asyncRequest.afterinfo(model);
+      if (res && res.code === 0 && res.data) {
+        this.resitem = res.data;
+        this.resitem.error_img = this.resitem.error_img.split(",");
+        this.expect_options = JSON.parse(
+          JSON.stringify(
+            this.resitem.is_receive === "1"
+              ? this.expect_options1
+              : this.expect_options0
+          )
+        );
+      } else if (res && res.code >= 100 && res.code <= 104) {
+        await this.logout();
+      } else {
+        this.$message.warning(res.message);
+      }
     },
   },
 };

+ 2 - 2
src/views/sellOut/sellOutOrder/index.vue

@@ -134,7 +134,7 @@
             "
           ></el-tag>
         </template>
-        <template  #order_type="{ scope }">
+        <template #order_type="{ scope }">
           <el-tag
             :size="'mini'"
             v-text="
@@ -181,7 +181,7 @@ import mixinPage from "@/mixins/elPaginationHandle";
 import resToken from "@/mixins/resToken";
 import asyncRequest from "@/apis/service/sellOut/sellOutOrder";
 import addEdit from "./components/addEdit.vue";
-import columns from "./columns";
+import { columns } from "./columns";
 import { mapGetters } from "vuex";
 
 export default {

+ 1 - 0
src/views/sellOut/sellReturn/components/comExamForm.vue

@@ -63,6 +63,7 @@
             :placeholder="'仓库名称'"
             :isRelation="true"
             :isDetail="disabled"
+            :wsmtype="'5'"
             :companyNo="sitem.supplierNo"
             :companyCode="return_company"
             :names="disabled ? wsm_name : ''"

+ 1 - 0
src/views/sellOut/stockApply/components/purchaseBack.vue

@@ -42,6 +42,7 @@
             :value="ruleForm.wsm_code"
             :placeholder="'仓库名称'"
             :isRelation="true"
+               :wsmtype="'5'"
             :companyNo="sitem.companyNo"
             :companyCode="supplier_code"
             :names="''"

+ 1 - 1
src/views/sellOut/zixunOrder/detail.vue

@@ -146,7 +146,7 @@ export default {
         { id: "0", label: "待发布竞标" },
         { id: "1", label: "招标进行中" },
         { id: "2", label: "招标已结束" },
-        { id: "3", label: "等待议价结果" },
+        { id: "3", label: "待选择商品" },
         { id: "4", label: "已选商品待下单" },
         { id: "5", label: "已成功转单" },
         { id: "6", label: "已取消转单" },

+ 1 - 1
src/views/sellOut/zixunOrder/index.vue

@@ -221,7 +221,7 @@ export default {
         { id: "0", label: "待发布竞标" },
         { id: "1", label: "招标进行中" },
         { id: "2", label: "招标已结束" },
-        { id: "3", label: "等待议价结果" },
+        { id: "3", label: "待选择商品" },
         { id: "4", label: "已选商品待下单" },
         { id: "5", label: "已成功转单" },
         { id: "6", label: "已取消转单" },

+ 0 - 235
src/views/sellOut/zxOrder/addEdit.vue

@@ -1,235 +0,0 @@
-<template>
-  <el-dialog
-    :title="title"
-    :center="true"
-    align="left"
-    top="15vh"
-    width="600px"
-    @close="showModelThis = false"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    v-loading="loading"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-  >
-    <el-card style="margin: -20px 0 0 0">
-      <el-row :gutter="10">
-        <el-col :span="24">
-          <el-form
-            :model="ruleForm"
-            status-icon
-            :rules="rulesThis"
-            ref="ruleForm"
-            label-width="80px"
-            class="demo-ruleForm"
-          >
-            <el-form-item label="退货数量" prop="num">
-              <el-input
-                maxlength="250"
-                placeholder="退货数量"
-                v-model="ruleForm.num"
-              />
-            </el-form-item>
-            <el-form-item label="退货原因" prop="errorCode">
-              <el-select
-                style="width: 100%"
-                v-model="ruleForm.errorCode"
-                placeholder="退换货原因"
-              >
-                <el-option
-                  v-for="item in reason_options"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                />
-              </el-select>
-            </el-form-item>
-
-            <el-form-item label="退货备注" prop="remark">
-              <el-input
-                type="textarea"
-                maxlength="250"
-                show-word-limit
-                placeholder="请填写备注"
-                v-model="ruleForm.remark"
-              />
-            </el-form-item>
-          </el-form>
-        </el-col>
-        <el-col :span="24" style="text-align: right">
-          <el-button type="primary" @click="submitForm" v-if="!isDetail"
-            >保 存
-          </el-button>
-          <el-button @click="showModelThis = false">{{
-            isDetail ? "关 闭" : "取 消"
-          }}</el-button>
-        </el-col>
-      </el-row>
-    </el-card>
-  </el-dialog>
-</template>
-   <script>
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import resToken from "@/mixins/resToken";
-import { isnumber } from "@/utils/validate";
-export default {
-  name: "zxReturn",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  mixins: [resToken],
-  data() {
-    const validateWeight = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("退货数量不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("退货数量仅支持整数!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      noSendNumbers: "", //收货-未发货数量
-      noSendNum: "", //销售-未发货数量
-      reason_options: [], //退换货原因备选项
-      loading: false,
-      title: "添加销售退货单",
-      showModelThis: this.showModel,
-      ruleForm: {
-        num: "",
-        outCode: "", //发货申请单编号
-        remark: "", //退货备注
-        num: "", //退货数量
-        errorCode: "", //退货原因
-      },
-      rulesThis: this.rules,
-      rules: {
-        errorCode: [
-          {
-            required: true,
-            message: "请选择退货原因",
-            trigger: "change",
-          },
-        ],
-        num: [
-          {
-            required: true,
-            validator: validateWeight,
-            trigger: "blur",
-          },
-        ],
-        remark: [
-          {
-            required: true,
-            message: "请输入退货备注",
-            trigger: "blur",
-          },
-        ],
-      },
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-
-  methods: {
-    
-
-    async initForm() {
-      this.loading = true;
-      this.title = "添加销售退货单";
-      this.getReason(); //获取退还货原因
-      this.rulesThis = this.rules;
-      await this.resetForm();
-      this.loading = false;
-    },
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.outCode = this.sitem.orderCode;
-          this.ruleForm = {
-            orderCode: this.outCode,
-            remark: "", //退货备注
-            num: "", //退货数量
-            errorCode: "", //退货原因
-          };
-        }
-      });
-    },
-
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const model = JSON.parse(JSON.stringify(this.ruleForm));
-          const res = await asyncRequest.add(model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "创建成功!",
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    // 获取退换货原因
-    async getReason() {
-      this.loading = true;
-      let model = {
-        page: 1,
-        size: 100,
-        type: "5",
-      };
-      const res = await asyncRequest.getReason(model);
-      if (res && res.code === 0 && res.data) {
-        const { list } = res.data;
-        list.forEach((element) => {
-          let obj = {
-            value: element.result_code,
-            label: element.result,
-            id: element.id,
-          };
-          this.reason_options.push(obj);
-        });
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.zxReturn {
-}
-</style>
-   

+ 0 - 80
src/views/sellOut/zxOrder/columns.js

@@ -1,80 +0,0 @@
-export default [
-
-  {
-    prop: "orderCode",
-    label: "咨询订单编号",
-    width: "155px",
-  },
-  {
-    prop: "apply_name",
-    label: "申请人",
-    width: "60px",
-  },
-  {
-    prop: "status",
-    label: "状态",
-    _slot_: "status",
-    width: "110px",
-  },
-  {
-    prop: "good_code",
-    label: "商品编码",
-    width: "125px"
-  },
-  {
-    prop: "good_name",
-    label: "商品名称",
-    width: "125px"
-  },
-
-  {
-    prop: "customer_code",
-    label: "客户公司编码",
-    width: "125px"
-    // width: "215px",
-  },
-  {
-    prop: " customerName",
-    label: "客户公司名称",
-    width: "125px"
-    // width: "215px",
-  },
-  {
-    prop: "good_class",
-    label: "商品分类",
-    width: "125px"
-  },
-
-  {
-    prop: "good_num",
-    label: "商品数量",
-  },
-  {
-    prop: "sale_price",
-    label: "销售单价",
-  },
-  {
-    prop: "total_price",
-    label: "总价",
-  },
-  {
-    prop: "post_fee",
-    label: "总物流费",
-  },
-
-
-
-  {
-    prop: "addtime",
-    label: "创建时间",
-    width: "142px",
-  },
-  {
-    prop: "",
-    label: "操作",
-    fixed: "right",
-    _noset_: true,
-    width: "50px",
-    _slot_: "operation",
-  },
-]

+ 0 - 900
src/views/sellOut/zxOrder/components/addEdit.vue

@@ -1,900 +0,0 @@
-<template>
-  <el-dialog
-    :title="title"
-    :center="true"
-    align="left"
-    top="5vh"
-    width="1040px"
-    @close="showModelThis = false"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    v-loading="loading"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-    append-to-body
-  >
-    <el-card style="margin-top: -20px">
-      <el-row :gutter="10">
-        <el-col :span="24">
-          <el-form
-            ref="ruleForm"
-            :model="ruleForm"
-            status-icon
-            :rules="rulesThis"
-            label-width="95px"
-            class="demo-ruleForm"
-          >
-            <el-row>
-              <el-col :span="12">
-                <el-form-item label="商品分类" prop="goods_class">
-                  search-sort
-                  999
-                  <!-- <good-class
-                    :value="ruleForm.goods_class"
-                    @handleChange="goods_class_change"
-                    :disabled="
-                      !(
-                        id === 'add' ||
-                        (status === '0' && powers.some((item) => item == '005'))
-                      )
-                    "
-                    :placeholder="'商品分类'"
-                  /> -->
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="商品名称" prop="good_code">
-                  <el-input
-                    v-model="ruleForm.good_name"
-                    readonly
-                    @focus="hand"
-                  />
-                </el-form-item>
-              </el-col>
-              <el-col :span="24">
-                <el-form-item label="企业客户" prop="customer_code">
-                  <search-customer
-                    :value="ruleForm.customer_code"
-                    @searchChange="customer_code_change"
-                  />
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="24">
-                <search-stock-good-modal
-                  :once="true"
-                  :cat_id="cat_id"
-                  :show-model="showGoodsModel"
-                  @cancel="showGoodsModel = false"
-                  @searchChange="addGoodsRes"
-                />
-                <!-- <search-stock-good-modal
-                  :show-model="showGoodsModel"
-                  :code="stock_code"
-                  @cancel="showGoodsModel = false"
-                  @searchChange="addGoodsRes"
-                /> -->
-              </el-col>
-            </el-row>
-          </el-form>
-        </el-col>
-        <el-col :span="24" style="padding: 0 0 20px 0">
-          <el-form :model="stockForm" ref="stockForm" :size="'mini'">
-            <el-table
-              :data="stockForm.good_stock"
-              border
-              :size="'mini'"
-              style="width: 100%"
-              row-key="key"
-            >
-              <el-table-column
-                prop="wsm_supplierNo"
-                label="发货公司编号"
-                width="145"
-              />
-
-              <el-table-column
-                show-overflow-tooltip
-                prop="wsm_supplier"
-                label="发货公司名称"
-                min-width="145"
-              />
-              <el-table-column
-                prop="wsm_code"
-                label="发货仓库编码"
-                width="180"
-              />
-              <el-table-column
-                show-overflow-tooltip
-                prop="wsm_name"
-                label="发货仓库名称"
-                min-width="180"
-              />
-              <el-table-column
-                prop="usable_stock"
-                label="商品可用库存"
-                width="120"
-              />
-
-              <el-table-column prop="num" label="下单数量" width="150">
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'good_stock.' + scope.$index + '.' + 'num'"
-                    :rules="{}"
-                    :size="'mini'"
-                    style="margin-bottom: 0"
-                  >
-                    <el-input
-                      v-model="scope.row.num"
-                      :disabled="!scope.row.edit"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-              <el-table-column
-                prop="original_price"
-                label="销售价"
-                width="110"
-              />
-
-              <el-table-column fixed="right" width="80" label="操作">
-                <template slot-scope="scope">
-                  <el-tooltip
-                    effect="dark"
-                    content="编辑"
-                    v-if="!scope.row.edit"
-                    placement="top"
-                  >
-                    <i
-                      class="el-icon-edit tb-icon"
-                      @click="editRow(scope.$index)"
-                    ></i>
-                  </el-tooltip>
-
-                  <el-tooltip
-                    effect="dark"
-                    content="保存"
-                    v-if="scope.row.edit"
-                    placement="top"
-                  >
-                    <i
-                      class="el-icon-circle-check tb-icon"
-                      @click="checkStockRow(scope.$index)"
-                    ></i>
-                  </el-tooltip>
-
-                  <el-tooltip effect="dark" content="删除" placement="top">
-                    <i
-                      class="el-icon-delete tb-icon"
-                      @click="deleteRow(scope.$index, stockForm.good_stock)"
-                    ></i>
-                  </el-tooltip>
-                </template>
-              </el-table-column>
-            </el-table>
-          </el-form>
-        </el-col>
-        <el-col :span="24" style="padding: 0 0 22px 0">
-          <div style="height: 40px; margin: -10px 0 0 0" class="tr">
-            <download-addr />
-            <el-button
-              type="primary"
-              size="mini"
-              @click="addrmodel = true"
-              style="margin: 0 0 0 10px"
-              >导入收货地址</el-button
-            >
-          </div>
-          <el-form :model="addrForm" ref="addrForm" :size="'mini'">
-            <el-table
-              :data="addrForm.order_addr"
-              border
-              :size="'mini'"
-              style="width: 100%"
-              row-key="key"
-            >
-              <el-table-column
-                prop="receipt_quantity"
-                label="收货总数"
-                min-width="125"
-              >
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="
-                      'order_addr.' + scope.$index + '.' + 'receipt_quantity'
-                    "
-                    :rules="addrRules.receipt_quantity"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <el-input
-                      v-model="scope.row.receipt_quantity"
-                      :disabled="!scope.row.edit"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-
-              <el-table-column
-                prop="arrive_time"
-                label="最晚收货日期"
-                width="150"
-              >
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'order_addr.' + scope.$index + '.' + 'arrive_time'"
-                    :rules="addrRules.arrive_time"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <!-- type="datetime"
-                      style="width: 100%"
-                      value-format="yyyy-MM-dd HH:mm:ss" -->
-                    <el-date-picker
-                      :disabled="!scope.row.edit"
-                      v-model="scope.row.arrive_time"
-                      type="date"
-                      style="width: 100%"
-                      value-format="yyyy-MM-dd"
-                      :picker-options="pickerOptions"
-                    >
-                    </el-date-picker>
-                  </el-form-item>
-                </template>
-              </el-table-column>
-              <el-table-column
-                prop="contactor"
-                label="收件联系人"
-                min-width="110"
-              >
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'order_addr.' + scope.$index + '.' + 'contactor'"
-                    :rules="addrRules.contactor"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <el-input
-                      v-model="scope.row.contactor"
-                      :disabled="!scope.row.edit"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-
-              <el-table-column
-                prop="mobile"
-                label="收货联系电话"
-                min-width="130"
-              >
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'order_addr.' + scope.$index + '.' + 'mobile'"
-                    :rules="addrRules.mobile"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <el-input
-                      v-model="scope.row.mobile"
-                      :disabled="!scope.row.edit"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-
-              <el-table-column
-                prop="addr_code"
-                label="收货省市区"
-                min-width="230"
-              >
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'order_addr.' + scope.$index + '.' + 'addr_code'"
-                    :rules="addrRules.addr_code"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <select-area
-                      :value="scope.row.addr_code"
-                      :disabled="!scope.row.edit"
-                      :size="'mini'"
-                      @selectChange="select_area_change($event, scope.$index)"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-              <el-table-column prop="addr" label="详细地址" min-width="170">
-                <template slot-scope="scope">
-                  <el-form-item
-                    :prop="'order_addr.' + scope.$index + '.' + 'addr'"
-                    :rules="addrRules.addr"
-                    :size="'mini'"
-                    :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                  >
-                    <el-input
-                      v-model="scope.row.addr"
-                      :disabled="!scope.row.edit"
-                    />
-                  </el-form-item>
-                </template>
-              </el-table-column>
-
-              <el-table-column fixed="right" width="80">
-                <template slot="header" slot-scope="scope">
-                  <span>操作</span>
-
-                  <el-tooltip
-                    class="fr"
-                    style="margin: 3px 0 0 0"
-                    effect="dark"
-                    content="添加"
-                    placement="top"
-                  >
-                    <i
-                      class="el-icon-circle-plus-outline tb-icon"
-                      style="color: #63cbe7"
-                      @click="openHouseModal(-1)"
-                    ></i>
-                  </el-tooltip>
-                </template>
-                <template slot-scope="scope">
-                  <el-tooltip
-                    effect="dark"
-                    content="编辑"
-                    v-if="!scope.row.edit"
-                    placement="top"
-                  >
-                    <i
-                      class="el-icon-edit tb-icon"
-                      @click="openHouseModal(scope.$index)"
-                    ></i>
-                  </el-tooltip>
-
-                  <el-tooltip
-                    effect="dark"
-                    content="保存"
-                    v-if="scope.row.edit"
-                    placement="top"
-                  >
-                    <i
-                      class="el-icon-circle-check tb-icon"
-                      @click="checkRow(scope.$index)"
-                    ></i>
-                  </el-tooltip>
-
-                  <el-tooltip effect="dark" content="删除" placement="top">
-                    <i
-                      class="el-icon-delete tb-icon"
-                      @click="deleteRow(scope.$index, addrForm.order_addr)"
-                    ></i>
-                  </el-tooltip>
-                </template>
-              </el-table-column>
-            </el-table>
-          </el-form>
-        </el-col>
-
-        <el-col :span="24">
-          <in-addr-model
-            :show-model="addrmodel"
-            @cancel="addrmodel = false"
-            @refresh="addrRefresh"
-          />
-        </el-col>
-        <el-col :span="24" style="text-align: right">
-          <el-button :size="'mini'" type="primary" @click="submitForm"
-            >保 存
-          </el-button>
-        </el-col>
-      </el-row>
-    </el-card>
-  </el-dialog>
-</template>
-   <script>
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxOrder/detail";
-import searchStockGoodModal from "@/components/search-stock-good-modal";
-import { isnumber, isMobile } from "@/utils/validate";
-import inAddrModel from "@/components/in-addr-model";
-export default {
-  name: "allot",
-  props: ["showModel", "id"],
-  mixins: [resToken],
-  components: { searchStockGoodModal, inAddrModel },
-  data() {
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    const validateWeight = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("收货总数不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("收货总数仅支持整数!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      loading: false,
-      addrmodel: false,
-      title: "新建销售订单",
-      showModelThis: this.showModel,
-      showGoodsModel: false,
-      stock_code: "",
-      cat_id: "",
-      ruleForm: {
-        goods_class: [],
-        good_name: "",
-        good_code: "", // 商品选择
-        customer_code: [], // 企业客户选择
-      },
-      rulesThis: this.rules,
-      rules: {
-        goods_class: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择商品分类",
-            trigger: "change",
-          },
-        ],
-        good_code: [
-          {
-            required: true,
-            message: "请选择商品",
-            trigger: "blur",
-          },
-        ],
-        customer_code: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择企业客户",
-            trigger: "change",
-          },
-        ],
-      },
-      addrForm: {
-        order_addr: [], //收货地址
-      },
-      addrRules: {
-        arrive_time: [
-          {
-            required: true,
-            message: "最晚收货日期不能为空",
-            trigger: "change",
-          },
-        ],
-        receipt_quantity: [
-          {
-            required: true,
-            validator: validateWeight,
-            trigger: "blur",
-          },
-        ],
-
-        contactor: [
-          {
-            required: true,
-            trigger: "blur",
-            message: "联系人不能为空",
-          },
-        ],
-        mobile: [
-          {
-            required: true,
-            validator: validatemobile,
-            trigger: "blur",
-          },
-        ],
-
-        addr_code: [
-          {
-            type: "array",
-            required: true,
-            message: "收货省市区不能为空",
-            trigger: "change",
-          },
-        ],
-        addr: [
-          {
-            required: true,
-            message: "详细地址不能为空",
-            trigger: "blur",
-          },
-        ],
-      },
-      stockForm: {
-        good_stock: [], //出货仓库
-      },
-      loading: false,
-      id: "",
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.rulesThis = this.rules;
-        this.resetForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-  methods: {
-    closeModel() {
-      console.log("closeModel!!");
-      this.showModelThis = false;
-    },
-    hand() {
-      if (this.ruleForm.goods_class.length === 0) {
-        this.$message.warning("请选择商品分类!");
-        return;
-      }
-      this.showGoodsModel = true;
-    },
-    addrRefresh(e) {
-      const { list } = e;
-      this.addrForm.order_addr.push(...list);
-    },
-
-    goods_class_change(e) {
-      this.ruleForm.goods_class = e;
-      this.cat_id = e.length > 0 ? e[e.length - 1] : "";
-      this.$refs.ruleForm.validateField("goods_class");
-      this.ruleForm.good_code = "";
-      this.ruleForm.good_name = "";
-      this.$refs.ruleForm.validateField("good_code");
-    },
-    refresh(e) {
-      this.showModelThis = e;
-      this.$emit("refresh", true);
-    },
-    async getstock(code) {
-      this.loading = true;
-      let model = {
-        wsm_code: "",
-        page: 1,
-        size: 100,
-        type_code: code,
-        good_code: "",
-        good_name: "",
-        supplierNo: "",
-        stock_low: "",
-        stock_up: "",
-        warn_low: "",
-        warn_up: "",
-        stock_max: "1",
-      };
-      const res = await asyncRequest.getGoodStock(model);
-      if (res && res.code === 0 && res.data) {
-        this.stockForm = {
-          good_stock: [], //出货仓库
-        };
-        const { list } = res.data;
-        list.forEach((v) => {
-          let model = {
-            num: v.usable_stock,
-            usable_stock: v.usable_stock,
-            wsm_name: v.wsm_name,
-            wsm_supplier: v.wsm_supplier,
-            wsm_supplierNo: v.wsm_supplierNo,
-            wsm_code: v.wsm_code,
-            original_price: v.original_price,
-            edit: false,
-          };
-          this.stockForm.good_stock.push(model);
-        });
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-      this.loading = false;
-    },
-
-    getNewTime() {
-      this.newTime = new Date().valueOf();
-    },
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.cat_id = "";
-          this.ruleForm = {
-            goods_class: [],
-            good_code: "", // 商品选择
-            customer_code: [], // 企业客户选择
-          };
-        }
-        if (this.$refs.stockForm) {
-          this.$refs.stockForm.resetFields();
-          this.$refs.stockForm.clearValidate();
-
-          this.stockForm = {
-            good_stock: [], //出货仓库
-          };
-        }
-        if (this.$refs.addrForm) {
-          this.$refs.addrForm.resetFields();
-          this.$refs.addrForm.clearValidate();
-          this.addrForm = {
-            order_addr: [],
-          };
-        }
-      });
-    },
-    async addGoodsRes(e) {
-      if (e && e.length === 1) {
-        this.ruleForm.good_name = e[0].good_name;
-        this.ruleForm.good_code = e[0].type_code;
-      } else {
-        this.ruleForm.good_name = "";
-        this.ruleForm.good_code = "";
-      }
-      this.$refs.ruleForm.validateField("good_code");
-      if (this.ruleForm.good_code !== "" && this.id === "add") {
-        await this.getstock(this.ruleForm.good_code);
-      } else {
-        this.stockForm = {
-          good_stock: [], //出货仓库
-        };
-      }
-    },
-    editRow(index) {
-      let findex = this.stockForm.good_stock.findIndex((v) => v.edit === true);
-      if (findex !== -1) {
-        this.$message.warning("当前已有发货仓库信息在编辑,请保存后再试!");
-        return;
-      } else {
-        this.stockForm.good_stock[index].edit = true;
-      }
-    },
-    checkStockRow(index) {
-      let total = parseInt(this.stockForm.good_stock[index].usable_stock),
-        num = parseInt(this.stockForm.good_stock[index].num);
-      if (total === 0) {
-        this.$message.warning("该仓库已无该商品库存!不能销售!");
-        return;
-      } else {
-        if (num > total) {
-          this.$message.warning("销售数量不能大于可用库存!");
-          return;
-        } else {
-          this.stockForm.good_stock[index].edit = false;
-        }
-      }
-    },
-    customer_code_change(e) {
-      if (e && e.code) {
-        this.ruleForm.customer_code = [e.code];
-      } else {
-        this.ruleForm.customer_code = [];
-      }
-      this.$refs.ruleForm.validateField("customer_code");
-    },
-    openHouseModal(index) {
-      let findex = this.addrForm.order_addr.findIndex((v) => v.edit === true);
-      if (findex !== -1) {
-        this.$message.warning("当前已有地址在编辑,请保存后再试!");
-        return;
-      } else {
-        if (index === -1) {
-          this.addrForm.order_addr.push({
-            edit: true,
-            arrive_time: "",
-            receipt_quantity: "",
-            contactor: "",
-            mobile: "",
-            addr_code: [],
-            addr: "",
-          });
-        } else {
-          this.addrForm.order_addr[index].edit = true;
-        }
-      }
-    },
-    //省市区选择
-    select_area_change(e, index) {
-      this.addrForm.order_addr[index].addr_code = e;
-    },
-    //省市区保存某一行
-    checkRow(rowIndex) {
-      this.$refs.addrForm.validate((valid) => {
-        if (valid) {
-          this.addrForm.order_addr[rowIndex].edit = false;
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    // 省市区删除行操作
-    deleteRow(index, rows) {
-      rows.splice(index, 1);
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const { good_code, customer_code } = JSON.parse(
-            JSON.stringify(this.ruleForm)
-          );
-          const { good_stock } = JSON.parse(JSON.stringify(this.stockForm));
-          const { order_addr } = JSON.parse(JSON.stringify(this.addrForm));
-          let model = {
-            good_code,
-            customer_code: customer_code.join(","), // 账号
-            order_addr: [],
-            good_stock: [],
-          };
-          let stockT = 0,
-            addrT = 0,
-            isStockOk = true,
-            isSEdit = false,
-            isAEdit = false;
-          good_stock.forEach((v1) => {
-            if (v1.edit) {
-              isSEdit = true;
-            }
-            if (parseInt(v1.usable_stock) < parseInt(v1.num)) {
-              isStockOk = false;
-            }
-            stockT += parseInt(v1.num);
-            let model1 = {
-              num: v1.num,
-              wsm_code: v1.wsm_code,
-            };
-            model.good_stock.push(model1);
-          });
-          order_addr.forEach((v2) => {
-            if (v2.edit) {
-              isAEdit = true;
-            }
-            addrT += parseInt(v2.receipt_quantity);
-            let model2 = {
-              contactor: v2.contactor,
-              mobile: v2.mobile,
-              arrive_time: v2.arrive_time,
-              addr: v2.addr,
-              receipt_quantity: v2.receipt_quantity,
-              addr_code: v2.addr_code,
-            };
-            model.order_addr.push(model2);
-          });
-          if (isSEdit) {
-            this.$message.warning("请保存仓库信息!");
-            this.loading = false;
-            return;
-          }
-          if (isAEdit) {
-            this.$message.warning("请保存地址信息!");
-            this.loading = false;
-            return;
-          }
-          if (!isStockOk) {
-            this.$message.warning("部分仓库销售数量已大于可用数量!");
-            this.loading = false;
-            return;
-          }
-          if (stockT !== addrT) {
-            this.$message.warning(
-              "库存出库总数量,与收货地址信息中的总数量不一致!"
-            );
-            this.loading = false;
-            return;
-          }
-
-          let res = await asyncRequest.add(model);
-
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "添加成功",
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-
-   
-   <style lang="scss" scoped>
-// .capitalClaim {
-.excelUploadBox {
-  position: relative;
-  width: 100%;
-  height: 120px;
-  line-height: 120px;
-  box-sizing: border-box;
-  &:hover {
-    cursor: pointer;
-  }
-  .el-icon-receiving {
-    width: 100%;
-    text-align: center;
-    height: 50px;
-    display: block;
-    font-size: 32px;
-    line-height: 90px;
-    color: #d3d4d6;
-  }
-  .boxM {
-    width: 100%;
-    display: block;
-    text-align: center;
-    line-height: 65px;
-    height: 60px;
-    color: #909399;
-  }
-}
-.excelUpload {
-  top: 0;
-  left: 0;
-  position: absolute;
-  z-index: 2;
-  width: 100%;
-  height: 120px;
-  line-height: 120px;
-  box-sizing: border-box;
-}
-.excelUploadRes {
-  width: 100%;
-  height: 120px;
-  line-height: 120px;
-  box-sizing: border-box;
-  i {
-    width: 55px;
-    height: 120px;
-    line-height: 120px;
-    text-align: center;
-    font-size: 20px;
-    &.fl {
-      padding-left: 16px;
-    }
-    &.fr {
-      padding-right: 16px;
-      &:hover {
-        cursor: pointer;
-      }
-    }
-  }
-  span {
-    width: 386px;
-    line-height: 16px;
-    margin: 52px 0 0 0;
-    font-size: 16px;
-  }
-}
-// }
-</style>

+ 0 - 687
src/views/sellOut/zxOrder/components/addForm.vue

@@ -1,687 +0,0 @@
-<template>
-  <div class="salesOrderDetail">
-    <el-row>
-      <el-col :span="24">
-        <el-form
-          ref="ruleForm"
-          :model="ruleForm"
-          status-icon
-          :rules="rulesThis"
-          label-width="95px"
-          class="demo-ruleForm"
-        >
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="商品分类" prop="goods_class">
-
-                search-sort
-                1010101010
-                <!-- <good-class
-                  :value="ruleForm.goods_class"
-                  :disabled="true"
-                  :placeholder="'商品分类'"
-                /> -->
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="商品名称" prop="good_code">
-                <el-input v-model="ruleForm.good_name" disabled readonly />
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="销售方" prop="customer_code">
-                <search-supplier
-                  :value="ruleForm.supplierNo"
-                  :placeholder="'销售方公司'"
-                  :disabled="
-                    !(status === '0' && powers.some((item) => item == '005'))
-                  "
-                  :isDetail="true"
-                  :type="'1'"
-                  :names="supplierName"
-                  @searchChange="supplierChange"
-                />
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="购买方" prop="customer_code">
-                <search-customer
-                  :value="ruleForm.customer_code"
-                  :names="companyName"
-                  :placeholder="'购买方公司'"
-                  :disabled="true"
-                  :is-detail="true"
-                />
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="商品单价" prop="sale_fee">
-                <el-input
-                  v-model="ruleForm.sale_fee"
-                  placeholder="商品单价"
-                  disabled
-                  ><template slot="append">元</template></el-input
-                >
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="下单数量" prop="good_num">
-                <el-input
-                  v-model="ruleForm.good_num"
-                  :disabled="
-                    !(status === '0' && powers.some((item) => item == '005'))
-                  "
-                  placeholder="下单数量"
-                />
-              </el-form-item>
-            </el-col>
-
-            <el-col :span="6">
-              <el-form-item label="商品类型" prop="goodtype">
-                <el-select
-                  v-model="ruleForm.goodtype"
-                  style="width: 100%"
-                  :disabled="
-                    !(status === '0' && powers.some((item) => item == '005'))
-                  "
-                  placeholder="商品类型"
-                >
-                  <el-option
-                    v-for="item in goodtypeOptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="发货类型" prop="sendtype">
-                <el-select
-                  v-model="ruleForm.sendtype"
-                  style="width: 100%"
-                  :disabled="
-                    !(status === '0' && powers.some((item) => item == '005'))
-                  "
-                  placeholder="发货类型"
-                >
-                  <el-option
-                    v-for="item in options"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
-      </el-col>
-
-      <el-col
-        :span="24"
-        style="padding: 0 0 22px 0"
-        v-if="ruleForm.sendtype === '1'"
-      >
-        <div
-          style="height: 40px; margin: -10px 0 0 0"
-          class="tr"
-          v-if="status === '0' && powers.some((item) => item == '005')"
-        >
-          <download-addr />
-          <el-button
-            type="primary"
-            size="mini"
-            @click="addrmodel = true"
-            style="margin: 0 0 0 10px"
-            >导入收货地址</el-button
-          >
-        </div>
-        <el-form :model="addrForm" ref="addrForm" :size="'mini'">
-          <el-table
-            :data="addrForm.order_addr"
-            border
-            :size="'mini'"
-            style="width: 100%"
-            max-height="350px"
-            row-key="key"
-          >
-            <el-table-column
-              show-overflow-tooltip
-              prop="receipt_quantity"
-              label="收货总数"
-              min-width="125"
-            />
-
-            <el-table-column
-              prop="arrive_time"
-              show-overflow-tooltip
-              label="最晚收货日期"
-              min-width="110"
-            />
-            <el-table-column
-              prop="contactor"
-              label="收件联系人"
-              show-overflow-tooltip
-              min-width="110"
-            />
-
-            <el-table-column
-              prop="mobile"
-              show-overflow-tooltip
-              label="收货联系电话"
-              min-width="110"
-            />
-
-            <el-table-column
-              prop="addr_code_name"
-              label="收货省市区"
-              min-width="230"
-              show-overflow-tooltip
-            />
-            <el-table-column
-              prop="addr"
-              show-overflow-tooltip
-              label="详细地址"
-              min-width="170"
-            />
-
-            <el-table-column
-              fixed="right"
-              width="80"
-              v-if="status === '0' && powers.some((item) => item == '005')"
-            >
-              <template slot="header" slot-scope="scope">
-                <span>操作</span>
-                <el-tooltip
-                  class="fr"
-                  style="margin: 3px 0 0 0"
-                  effect="dark"
-                  content="添加"
-                  placement="top"
-                >
-                  <i
-                    class="el-icon-circle-plus-outline tb-icon"
-                    style="color: #63cbe7"
-                    @click="openHouseModal(-1)"
-                  ></i>
-                </el-tooltip>
-              </template>
-              <template slot-scope="scope">
-                <el-tooltip
-                  effect="dark"
-                  content="编辑"
-                  placement="top"
-                >
-                  <i
-                    class="el-icon-edit tb-icon"
-                    @click="openHouseModal(scope.$index)"
-                  ></i>
-                </el-tooltip>
-
-               
-
-                <el-tooltip effect="dark" content="删除" placement="top">
-                  <i
-                    class="el-icon-delete tb-icon"
-                    @click="deleteRow(scope.$index, addrForm.order_addr, 1)"
-                  ></i>
-                </el-tooltip>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-form>
-      </el-col>
-      <el-col :span="24">
-        <in-addr-model
-          :show-model="addrmodel"
-          @cancel="addrmodel = false"
-          @refresh="addrRefresh"
-        />
-        <addr-add-edit-modal
-          :showModel="showAddrAddEditModal"
-          :index="AddrAddEditModalIndex"
-          :sitem="AddrAddEditModalSitem"
-          @cancel="showAddrAddEditModal = false"
-          @refresh="showAddrAddEditModalRefresh"
-        />
-      </el-col>
-      <el-col
-        :span="24"
-        style="text-align: right; padding: 0 0 20px 0"
-        v-if="status === '0' && powers.some((item) => item == '005')"
-      >
-        <el-button :size="'mini'" type="primary" @click="submitForm"
-          >保 存
-        </el-button>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxOrder/detail";
-import { isnumber, isMobile } from "@/utils/validate";
-import inAddrModel from "@/components/in-addr-model";
-import AddrAddEditModal from "@/components/addr-add-edit-modal";
-export default {
-  name: "salesOrderDetail",
-  mixins: [mixinPage, resToken],
-  props: ["newTime", "id", "sitem"],
-  components: { inAddrModel, AddrAddEditModal },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  data() {
- 
-    const validateWeight = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("收货总数不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("收货总数仅支持整数!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      addrmodel: false,
-      showAddrAddEditModal: false,
-      AddrAddEditModalIndex: -1,
-      AddrAddEditModalSitem: {},
-      stock_code: "",
-      companyName: "",
-      supplierName: "",
-      ruleForm: {
-        zxNo: "",
-        customer_code: [],
-        supplierNo: [],
-        sendtype: "1",
-        good_num: "",
-        goodtype: "1",
-        goods_class: [],
-        goods_name: "",
-        sale_fee: "",
-        good_code: "", // 商品选择
-      },
-      options: [
-        {
-          value: "1",
-          label: "直接发货",
-        },
-        {
-          value: "2",
-          label: "延迟发货",
-        },
-      ],
-      goodtypeOptions: [
-        {
-          value: "1",
-          label: "普通商品",
-        },
-        {
-          value: "2",
-          label: "赠品",
-        },
-        {
-          value: "3",
-          label: "样品",
-        },
-      ],
-      rulesThis: this.rules,
-      rules: {
-        zxNo: [
-          {
-            required: true,
-            message: "咨询单号不能为空!",
-            trigger: "blur",
-          },
-        ],
-        customer_code: [
-          {
-            required: true,
-            message: "请选择购买方公司",
-            trigger: "change",
-          },
-        ],
-        class_cat: [
-          {
-            required: true,
-            message: "请选择商品分类",
-            trigger: "change",
-          },
-        ],
-        supplierNo: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择销售方公司",
-            trigger: "change",
-          },
-        ],
-        sendtype: [
-          {
-            required: true,
-            message: "请选择发货类型",
-            trigger: "change",
-          },
-        ],
-
-        good_num: [
-          {
-            required: true,
-            validator: validateWeight,
-            trigger: "blur",
-          },
-        ],
-        goodtype: [
-          {
-            required: true,
-            message: "请选择商品类型",
-            trigger: "change",
-          },
-        ],
-        sale_fee: [
-          {
-            required: true,
-            message: "请输入商品单价",
-            trigger: "blur",
-          },
-        ],
-      },
-      addrForm: {
-        order_addr: [], //收货地址
-      },
-      delAddrList: [],
-      delStockList: [],
-      loading: false,
-      queryId: "",
-      status: "",
-    };
-  },
-  mounted() {
-    this.initForm();
-  },
-  methods: {
-    async initForm() {
-      this.status = "";
-
-      this.rulesThis = this.rules;
-      this.resetForm();
-    },
-
-    async supplierChange(e) {
-      if (e && e.id) {
-        this.ruleForm.supplierNo = [e.code];
-      } else {
-        this.ruleForm.supplierNo = [];
-      }
-      this.$refs.ruleForm.validateField("supplierNo");
-    },
-
-    getNewTime() {
-      this.newTime = new Date().valueOf();
-    },
-    addrRefresh(e) {
-      const { list } = e;
-      this.addrForm.order_addr.push(...list);
-    },
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          const {
-            can,
-            good_code,
-            good_name,
-            customer_code,
-            companyName,
-            status,
-            supplierNo,
-            good_num,
-            good_type,
-            send_type,
-            sale_price,
-            supplierName,
-            id,
-          } = this.sitem;
-          this.queryId = id;
-          this.companyName = companyName;
-          this.supplierName = supplierName;
-          this.status = status;
-          let goods_class = [];
-          can.forEach((v) => {
-            goods_class.push(v.id);
-          });
-          this.ruleForm = {
-            good_num: good_num || "",
-            goodtype: good_type || "",
-            sendtype: send_type || "",
-            sale_fee: sale_price || "",
-            goods_class: goods_class || [],
-            good_code: good_code || "", // 商品选择
-            good_name: good_name || "",
-            customer_code: customer_code ? [customer_code] : [], // 企业客户选择
-            supplierNo: supplierNo ? [supplierNo] : [],
-          };
-        }
-
-        if (this.$refs.addrForm) {
-          this.$refs.addrForm.resetFields();
-          this.$refs.addrForm.clearValidate();
-          const { addrs } = this.sitem;
-          this.addrForm = {
-            order_addr: [],
-          };
-          this.delAddrList = [];
-
-          if (addrs && addrs.length > 0) {
-            addrs.forEach((v) => {
-              const { area_code, city_code, provice_code } = v.addr_code;
-              let model = {
-                edit: false,
-                arrive_time: v.arrive_time || "",
-                receipt_quantity: v.receipt_quantity || "",
-                contactor: v.contactor || "",
-                mobile: v.mobile || "",
-                addr_code:
-                  area_code && city_code && provice_code
-                    ? [provice_code, city_code, area_code]
-                    : [],
-                addr_code_name: v.addr_info,
-                addr: v.addr || "",
-                id: v.id,
-                is_del: 0,
-              };
-              this.delAddrList.push(model);
-              this.addrForm.order_addr.push(model);
-            });
-          }
-        }
-      });
-    },
-
-    openHouseModal(index) {
-      this.AddrAddEditModalIndex = index;
-
-      if (index === -1) {
-        this.AddrAddEditModalSitem = {};
-      } else {
-        this.AddrAddEditModalSitem = JSON.parse(
-          JSON.stringify(this.addrForm.order_addr[index])
-        );
-      }
-      this.showAddrAddEditModal = true;
-    },
- 
-   
-    // 删除收货地址操作
-    deleteRow(index, rows, type) {
-      const id = rows[index].id;
-      if (type === 0) {
-        if (id) {
-          this.delStockList.push(rows[index]);
-        }
-      } else {
-        if (id) {
-          this.delAddrList.push(rows[index]);
-        }
-      }
-      rows.splice(index, 1);
-    },
-    showAddrAddEditModalRefresh(e) {
-      const { index, item } = e;
-  // console.log(addr_code_name);
-         console.log(item);
-      if (index === -1) {
-        this.addrForm.order_addr.push(JSON.parse(JSON.stringify(item)));
-      } else {
-        const {
-          arrive_time,
-          receipt_quantity,
-          contactor,
-          mobile,
-          addr_code,
-          addr_code_name,
-          addr,
-          id,
-        } = JSON.parse(JSON.stringify(item));
-      
-        this.addrForm.order_addr[index].receipt_quantity = receipt_quantity;
-        this.addrForm.order_addr[index].arrive_time = arrive_time;
-        this.addrForm.order_addr[index].contactor = contactor;
-        this.addrForm.order_addr[index].mobile = mobile;
-        this.addrForm.order_addr[index].addr_code = addr_code;
-        this.addrForm.order_addr[index].addr_code_name = addr_code_name;
-        this.addrForm.order_addr[index].addr = addr;
-        this.addrForm.order_addr[index].id = id;
-      }
-      this.$refs.addrForm.validateField("order_addr");
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const { customer_code, sendtype, good_num, goodtype, supplierNo } =
-            JSON.parse(JSON.stringify(this.ruleForm));
-          const { order_addr } = JSON.parse(JSON.stringify(this.addrForm));
-          let model = {
-            id: this.queryId,
-            goodtype: goodtype || "",
-            good_num: good_num || "",
-            sendtype: sendtype || "",
-            customer_code: customer_code.join(","), // 账号
-            supplierNo: supplierNo.join(","), // 账号
-            remark: "",
-            addrlist: [],
-          };
-          if (sendtype === "1") {
-            if (order_addr.length === 0) {
-              this.$message.warning("请填写收货地址信息!");
-              this.loading = false;
-              return;
-            }
-
-            let addrT = 0,
-              isAEdit = false;
-            order_addr.forEach((v2) => {
-              if (v2.edit) {
-                isAEdit = true;
-              }
-              addrT += parseInt(v2.receipt_quantity);
-              let model2 = {
-                contactor: v2.contactor,
-                mobile: v2.mobile,
-                arrive_time: v2.arrive_time,
-                addr: v2.addr,
-                receipt_quantity: v2.receipt_quantity,
-                addr_code: v2.addr_code,
-                id: v2.id,
-                is_del: 0,
-              };
-              model.addrlist.push(model2);
-            });
-
-            if (isAEdit) {
-              this.$message.warning("请保存地址信息!");
-              this.loading = false;
-              return;
-            }
-
-            if (parseInt(good_num) !== addrT) {
-              this.$message.warning(
-                "库存出库总数量,与收货地址信息中的总数量不一致!"
-              );
-              this.loading = false;
-              return;
-            }
-            let dAList = JSON.parse(JSON.stringify(this.delAddrList));
-            order_addr.forEach((v) => {
-              let findex = dAList.findIndex(
-                (v1) => v1.id !== "" && v1.id === v.id
-              );
-              if (findex !== -1) {
-                dAList.splice(findex, 1);
-              }
-            });
-            dAList.forEach((v) => {
-              v.is_del = 1;
-            });
-            model.addrlist.push(...dAList);
-          }
-
-          let res = await asyncRequest.update(model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            const title = this.queryId === "add" ? "添加成功" : "修改成功";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.salesOrderDetail {
-}
-</style>
-   
-   

+ 0 - 288
src/views/sellOut/zxOrder/components/feedback-form.vue

@@ -1,288 +0,0 @@
-<template>
-  <div class="salesOrderDetail">
-    <el-row>
-      <el-col :span="24" style="padding: 0 0 22px 0">
-        <el-form :model="addrForm" ref="addrForm" :size="'mini'">
-          <el-table
-            :data="addrForm.order_addr"
-            border
-            :size="'mini'"
-            style="width: 100%"
-            row-key="key"
-          >
-            <el-table-column
-              show-overflow-tooltip
-              prop="receipt_quantity"
-              label="收货总数"
-              width="110"
-            />
-
-            <el-table-column
-              show-overflow-tooltip
-              prop="arrive_time"
-              label="最晚收货日期"
-              width="145"
-            />
-            <el-table-column
-              show-overflow-tooltip
-              prop="contactor"
-              label="收件联系人"
-              width="85"
-            />
-
-            <el-table-column
-              show-overflow-tooltip
-              prop="mobile"
-              label="收货联系电话"
-              width="110"
-            />
-
-            <el-table-column
-              show-overflow-tooltip
-              prop="addr"
-              label="收货地址"
-              min-width="200"
-            />
-
-            <el-table-column
-              prop="post_fee"
-              label="预计物流费用"
-              min-width="170"
-            >
-              <template slot-scope="scope">
-                <el-form-item
-                  :prop="'order_addr.' + scope.$index + '.' + 'post_fee'"
-                  :rules="addrRules.post_fee"
-                  :size="'mini'"
-                  :style="{ marginBottom: scope.row.edit ? '13px' : '0' }"
-                >
-                  <el-input
-                    v-model="scope.row.post_fee"
-                    :disabled="!scope.row.edit"
-                  />
-                </el-form-item>
-              </template>
-            </el-table-column>
-            <el-table-column
-              fixed="right"
-              width="80"
-              label="操作"
-              v-if="status === '1' && powers.some((item) => item == '033')"
-            >
-              <template slot-scope="scope">
-                <el-tooltip
-                  effect="dark"
-                  content="编辑"
-                  v-if="!scope.row.edit"
-                  placement="top"
-                >
-                  <i
-                    class="el-icon-edit tb-icon"
-                    @click="openHouseModal(scope.$index)"
-                  ></i>
-                </el-tooltip>
-
-                <el-tooltip
-                  effect="dark"
-                  content="保存"
-                  v-if="scope.row.edit"
-                  placement="top"
-                >
-                  <i
-                    class="el-icon-circle-check tb-icon"
-                    @click="checkRow(scope.$index)"
-                  ></i>
-                </el-tooltip>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-form>
-      </el-col>
-      <el-col
-        :span="24"
-        style="text-align: right"
-        v-if="status === '1' && powers.some((item) => item == '033')"
-      >
-        <el-button :size="'mini'" type="primary" @click="submitForm"
-          >保 存
-        </el-button>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxOrder/detail";
-import searchStockGoodModal from "@/components/search-stock-good-modal";
-import { isnumber2 } from "@/utils/validate";
-export default {
-  name: "salesOrderDetail",
-  mixins: [mixinPage, resToken],
-  props: ["newTime", "id", "sitem"],
-  components: { searchStockGoodModal },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "salesOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  data() {
-    const validateWeight = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("物流费用不能为空"));
-      } else {
-        if (isnumber(value)) {
-          callback();
-        } else if (isnumber2(value)) {
-          callback();
-        } else {
-          callback(new Error("物流费用仅支持整数或两位小数!"));
-        }
-      }
-    };
-
-    return {
-      showGoodsModel: false,
-      stock_code: "",
-      addrForm: {
-        order_addr: [], //收货地址
-      },
-      addrRules: {
-        post_fee: {
-          required: true,
-          validator: validateWeight,
-          trigger: "blur",
-        },
-      },
-      loading: false,
-      queryId: "",
-      status: "",
-    };
-  },
-  mounted() {
-    this.initForm();
-  },
-  methods: {
-    async initForm() {
-      this.status = "";
-      this.queryId = this.$route.query.id;
-      this.rulesThis = this.rules;
-      this.resetForm();
-    },
-
-    getNewTime() {
-      this.newTime = new Date().valueOf();
-    },
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.addrForm) {
-          this.$refs.addrForm.resetFields();
-          this.$refs.addrForm.clearValidate();
-          const { addrs, status } = this.sitem;
-          this.status = status;
-          this.addrForm = {
-            order_addr: [],
-          };
-          if (addrs && addrs.length > 0) {
-            addrs.forEach((v) => {
-              let model = {
-                edit: false,
-                arrive_time: v.arrive_time || "",
-                receipt_quantity: v.receipt_quantity || "",
-                contactor: v.contactor || "",
-                mobile: v.mobile || "",
-                addr: v.addr_info + v.addr || "",
-                id: v.id,
-                post_fee: v.post_fee || "",
-                is_del: 0,
-              };
-              this.addrForm.order_addr.push(model);
-            });
-          }
-        }
-      });
-    },
-
-    openHouseModal(index) {
-      let findex = this.addrForm.order_addr.findIndex((v) => v.edit === true);
-      if (findex !== -1) {
-        this.$message.warning("当前已有地址在编辑,请保存后再试!");
-        return;
-      } else {
-        this.addrForm.order_addr[index].edit = true;
-      }
-    },
-
-    //省市区保存某一行
-    checkRow(rowIndex) {
-      this.$refs.addrForm.validate((valid) => {
-        if (valid) {
-          this.addrForm.order_addr[rowIndex].edit = false;
-        } else {
-          return false;
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.addrForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const { order_addr } = JSON.parse(JSON.stringify(this.addrForm));
-          let model = {
-            id: this.queryId,
-            order_addr: [],
-          };
-          order_addr.forEach((v2) => {
-            let model2 = {
-              post_fee: v2.post_fee,
-              id: v2.id,
-            };
-            model.order_addr.push(model2);
-          });
-          let res = await asyncRequest.salefee(model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "反馈物流费用成功!",
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.salesOrderDetail {
-}
-</style>
-   
-   

+ 0 - 245
src/views/sellOut/zxOrder/components/order-out-table.vue

@@ -1,245 +0,0 @@
-<template>
-  <div class="outOrderTable">
-    <el-table
-      :data="tableData"
-      border
-      :size="'mini'"
-      style="width: 100%"
-      row-key="key"
-      max-height="400px"
-    >
-      <el-table-column
-        show-overflow-tooltip
-        prop="orderCode"
-        label="咨询订单号"
-        width="150"
-      />
-
-      <el-table-column
-        show-overflow-tooltip
-        prop="outCode"
-        label="发货申请单号"
-        width="150"
-      />
-      <el-table-column
-        show-overflow-tooltip
-        prop="apply_name"
-        label="申请人名称"
-        width="85"
-      />
-      <el-table-column
-        show-overflow-tooltip
-        prop="status"
-        label="状态"
-        width="80"
-      >
-        <template slot-scope="scope">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (statusOptions.find((item) => item.id == scope.row.status) || {})
-                .label || '--'
-            "
-          ></el-tag>
-        </template>
-      </el-table-column>
-
-      <el-table-column
-        show-overflow-tooltip
-        prop="sendtime"
-        label="发货时间"
-        min-width="170"
-      />
-      <el-table-column
-        show-overflow-tooltip
-        prop="send_num"
-        label="	发货数量"
-        width="80"
-      />
-      <el-table-column
-        show-overflow-tooltip
-        prop="contact"
-        label="联系人"
-        width="80"
-      />
-      <el-table-column
-        show-overflow-tooltip
-        prop="mobile"
-        label="联系电话"
-        width="110"
-      />
-      <!-- <el-table-column
-        show-overflow-tooltip
-        prop="addr_info"
-        label="省市区"
-        min-width="170"
-      /> -->
-      <el-table-column
-        show-overflow-tooltip
-        prop="addr"
-        label="收货地址"
-        min-width="200"
-      >
-        <template slot-scope="scope">
-          {{ scope.row.addr_info }} {{ scope.row.addr }}
-        </template></el-table-column
-      >
-
-      <el-table-column fixed="right" width="50">
-        <template slot="header" slot-scope="scope">
-          <el-tooltip
-            style="margin: 3px 0 0 5px"
-            effect="dark"
-            v-if="!isAll && powers.some((item) => item == '048')"
-            content="添加"
-            placement="top"
-          >
-            <i
-              class="el-icon-circle-plus-outline tb-icon"
-              style="color: #63cbe7"
-              @click="openHouseModal()"
-            ></i>
-          </el-tooltip>
-          <span v-else>操作</span>
-        </template>
-
-        <template slot-scope="scope">
-          <el-tooltip
-            effect="dark"
-            content="查看"
-            v-if="!scope.row.edit"
-            placement="top"
-          >
-            <i
-              class="el-icon-view tb-icon"
-              @click="routeGoto('zxoutOrderDetail', { id: scope.row.outCode })"
-            ></i>
-          </el-tooltip>
-        </template>
-      </el-table-column>
-    </el-table>
-    <out-order-add-model
-      :showModel="modelShowModel"
-      :id="modelId"
-      :sitem="modelItem"
-      @refresh="initForm"
-    />
-    <add-edit
-      :id="modelId"
-      :sitem="s_sitem"
-      :show-model="showModel"
-      :is-detail="isDetail"
-      @refresh="$emit('refresh')"
-      @cancel="showModel = false"
-    />
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import outOrderAddModel from "./out-order-add-model";
-import addEdit from "@/views/sellOut/sellAfterApply/components/addEdit";
-import { mapGetters } from "vuex";
-
-export default {
-  name: "zxOrderDetail",
-  mixins: [mixinPage, resToken],
-  props: ["newTime", "id", "sitem"],
-  components: { addEdit, outOrderAddModel },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  computed: {
-    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
-
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  data() {
-    return {
-      // 状态
-      statusOptions: [
-        { id: "0", label: "待发货" },
-        { id: "1", label: "已出库" },
-        { id: "2", label: "验收中" },
-        { id: "3", label: "验收完成" },
-      ],
-      showGoodsModel: false,
-      stock_code: "",
-      tableData: [],
-      loading: false,
-      queryId: "",
-      status: "",
-      showModel: null,
-      modelId: "",
-      isAll: true,
-      modelItem: null,
-      s_sitem: null,
-    };
-  },
-  mounted() {
-    this.initForm();
-  },
-  methods: {
-    async initForm() {
-      this.status = "";
-      this.queryId = this.$route.query.id;
-      this.resetForm();
-    },
-    getNewTime() {
-      this.newTime = new Date().valueOf();
-    },
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        const { orderout, status, good_num } = this.sitem;
-        if (status === "1" || status === "2") {
-          let total = 0;
-          orderout.forEach((v) => {
-            total += parseInt(v.send_num);
-          });
-          console.log(total);
-          if (total === parseInt(good_num)) {
-             this.isAll = true;
-          } else {
-             this.isAll = false;
-          }
-        } else {
-           this.isAll = false;
-        }
-        this.tableData = JSON.parse(JSON.stringify(orderout)) ;
-      });
-    },
-    openHouseModal() {
-      this.modelId = "add";
-      this.modelItem = this.sitem;
-      this.modelShowModel = true;
-    },
-
-    openModal(code, btn_code) {
-      this.s_sitem = btn_code;
-      this.btn_code = btn_code;
-      this.modelId = code;
-      this.showModel = true;
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-</style>
-   

+ 0 - 367
src/views/sellOut/zxOrder/components/out-order-add-model.vue

@@ -1,367 +0,0 @@
-<template>
-  <el-dialog
-    v-loading="loading"
-    :title="title"
-    :center="true"
-    align="left"
-    top="8vh"
-    width="900px"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-    @close="showModelThis = false"
-  >
-    <el-card style="margin-top: -20px" class="account">
-      <el-row :gutter="10">
-        <el-col :span="24" style="margin:-10px 0 0 0">
-          <el-divider>选择收货地址</el-divider>
-        </el-col>
-        <el-col :span="24">
-          <el-table
-            ref="multipleTable"
-            :data="tableData1"
-            border
-            :size="'mini'"
-            tooltip-effect="dark"
-            style="width: 100%"
-            @selection-change="handleSelectionChange($event, 1)"
-          >
-            <el-table-column type="selection" width="40" align="center" />
-            <el-table-column
-              prop="receipt_quantity"
-              label="总数量"
-              width="100"
-            />
-            <el-table-column prop="send_num" label="已发货数量" width="100" />
-            <el-table-column prop="wsend_num" label="未发货数量" width="100" />
-            <el-table-column
-              prop="arrive_time"
-              label="最晚到货时间"
-              width="145"
-            />
-            <el-table-column prop="contactor" label="收件人" width="60" />
-            <el-table-column prop="mobile" label="联系电话" width="105" />
-            <el-table-column
-              prop="contactor"
-              label="收件地址"
-              show-overflow-tooltip
-            >
-              <template slot-scope="scope">
-                {{ scope.row.addr_info }}{{ scope.row.addr }}
-              </template>
-            </el-table-column>
-            <!-- <el-table-column prop="post_fee" label="物流费" width="100" /> -->
-          </el-table>
-        </el-col>
-        <el-form
-        style="padding:15px 0 0 0"
-          ref="ruleForm"
-          :model="ruleForm"
-          status-icon
-          :rules="rulesThis"
-          label-width="90px"
-          class="demo-ruleForm"
-        >
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="发货数量" prop="send_num">
-                <el-input v-model="ruleForm.send_num" />
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="物流费用" prop="post_fee">
-                <el-input v-model="ruleForm.post_fee" />
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="物流公司" prop="post_name">
-                <search-express
-                  :value="ruleForm.post_name"
-                  :placeholder="'请输入物流公司'"
-                  :names="''"
-                  :disabled="false"
-                  :is-detail="false"
-                  @searchChange="handleCompany"
-                />
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="物流单号" prop="post_code">
-                <el-input v-model="ruleForm.post_code" />
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-col :span="24" style="text-align: right">
-            <el-button type="primary" @click="submitForm">保 存 </el-button>
-            <el-button @click="showModelThis = false">关 闭</el-button>
-          </el-col>
-        </el-form>
-      </el-row>
-    </el-card>
-  </el-dialog>
-</template>
-<script>
-import asyncRequest from "@/apis/service/sellOut/zxOrder/detail";
-import resToken from "@/mixins/resToken";
-import { isnumber, isnumber2, isAlphanumeric } from "@/utils/validate";
-export default {
-  name: "Account",
-  props: ["showModel", "id", "sitem"],
-  mixins: [resToken],
-  data() {
-    const validatePrice = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("不能为空!"));
-      } else {
-        if (isnumber2(value)) {
-          callback();
-        } else {
-          callback(new Error("仅支持整数或两位小数!"));
-        }
-      }
-    };
-    const validateWeight = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("仅支持整数!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    const validateCode = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("不能为空!"));
-      } else {
-        if (!isAlphanumeric(value)) {
-          callback(new Error("仅支持字母和数字!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      roleList: [],
-      tableData: [],
-      tableData1: [],
-      loading: false,
-      title: "新建发货申请单",
-      list1: [],
-      list0: [],
-      showModelThis: this.showModel,
-      rulesThis: {},
-      rules: {
-        send_num: {
-          required: true,
-          validator: validateWeight,
-          trigger: "blur",
-        },
-        post_name: {
-          type: "array",
-          required: true,
-          trigger: "change",
-          message: "请输入物流公司",
-        },
-        post_code: {
-          required: true,
-          validator: validateCode,
-          trigger: "blur",
-        },
-        post_fee: {
-          required: true,
-          validator: validatePrice,
-          trigger: "blur",
-        },
-      },
-      supplierName: "",
-      good_price: "0",
-      lasttime: "",
-      ruleForm: {
-        post_name: [], //裸价
-        post_code: "", //仓库
-        post_fee: "", //供应商
-        send_num: "", //采购供应商编码
-        addrid: "",
-        orderCode: "",
-        wsm_code: "",
-      },
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-  methods: {
-    
-
-    handleSelectionChange(e, type) {
-      if (type === 0) {
-        this.list0 = e;
-        this.ruleForm.wsm_code = e && e.length > 0 ? e[0].wsm_code : "";
-      } else {
-        this.list1 = e;
-        this.ruleForm.addrid = e && e.length > 0 ? e[0].id : "";
-      }
-    },
-    async initForm() {
-      this.loading = true;
-      this.list0 = [];
-      this.list1 = [];
-      this.rulesThis = this.rules;
-      await this.resetForm();
-      this.loading = false;
-    },
-
-    //初始化表单
-    async resetForm() {
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          const { addrs, info, orderCode } = this.sitem;
-          this.tableData = info;
-          this.tableData1 = addrs;
-          this.ruleForm = {
-            post_name: [],
-            post_code: "",
-            post_fee: "",
-            send_num: "",
-            addrid: "",
-            orderCode: orderCode || "",
-            wsm_code: "",
-          };
-        }
-      });
-    },
-    // 保存更改
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          const item = JSON.parse(JSON.stringify(this.ruleForm));
-          if (this.list0.length === 0) {
-            this.$message.warning("请选择发货仓库!");
-            return;
-          }
-          if (this.list1.length === 0) {
-            this.$message.warning("请选择收货地址!");
-            return;
-          }
-          if (this.list0.length !== 1) {
-            this.$message.warning("只能选择一个发货仓库!");
-            return;
-          }
-          if (this.list1.length !== 1) {
-            this.$message.warning("只能选择一个收货地址!");
-            return;
-          }
-          let cNum = parseInt(this.list0[0].wsend_num);
-          let aNum = parseInt(this.list1[0].wsend_num);
-          let num = parseInt(this.ruleForm.send_num);
-          if (num > cNum) {
-            this.$message.warning("发货数量不能大于仓库未发货数量!");
-            return;
-          }
-          if (num > aNum) {
-            this.$message.warning("发货数量不能大于收货地址未发货数量!");
-            return;
-          }
-          this.loading = true;
-          item.post_name = item.post_name.toString();
-          const res = await asyncRequest.saleout(item);
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "添加成功",
-              message: "",
-            });
-            this.showModelThis = false;
-            this.$emit("refresh"); //抛出事件给详情页。
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleCompany(e) {
-      if (e && e.code) {
-        this.ruleForm.post_name = [e.shortName];
-        this.ruleForm.page = 1;
-      }
-      this.$refs.ruleForm.validateField("post_name");
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.account {
-  .gongshi {
-    span {
-      vertical-align: top;
-      display: inline-block;
-      color: #000;
-    }
-    .icon-span {
-      padding: 0 5px;
-      height: 40px;
-      line-height: 40px;
-      font-size: 20px;
-      color: #606266;
-      display: inline-block;
-      // vertical-align: top;
-      // display: inline-block;
-    }
-    .label {
-      height: 40px;
-      line-height: 40px;
-    }
-    .tuan {
-      &.chu {
-        width: 60px;
-        height: 40px;
-        display: inline-block;
-        span {
-          width: 60px;
-          display: inline-block;
-          line-height: 20px;
-          text-align: center;
-          font-size: 12px;
-          height: 20px;
-          &:last-child {
-            border-top: 1px solid #606266;
-          }
-        }
-      }
-      &.cheng {
-        .name {
-          height: 40px;
-          line-height: 40px;
-        }
-        .icon-span {
-          line-height: 40px;
-          font-size: 16px;
-          padding: 0 1px;
-        }
-      }
-    }
-  }
-}
-</style>

+ 0 - 293
src/views/sellOut/zxOrder/detail.vue

@@ -1,293 +0,0 @@
-<template>
-  <div class="zxOrderDetail pagePadding">
-    <div
-      style="width: 100%"
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <!-- {{ status }}--{{ powers }} -->
-      <div class="tl" style="padding: 10px 0 50px 0">
-        <span>咨询订单编号:</span>
-        <span v-if="sitem">{{ sitem.orderCode }}</span>
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          class="fr"
-          :size="'mini'"
-          style="margin: 0 0 0 10px"
-          v-if="
-            (status == '0' || status == '1') &&
-            powers.some((item) => item == '007')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          v-if="
-            (status == '3' || status == '4' || status == '5') &&
-            powers.some((item) => item == '051')
-          "
-          style="margin: 0 0 0 10px"
-          class="fr"
-          type="primary"
-          plain
-          :size="'mini'"
-          @click="openModal('add', false, 'sell')"
-          >新建销售退货单
-        </el-button>
-
-        <!-- <el-button
-          type="primary"
-          plain
-          class="fr"
-          :size="'mini'"
-          style="margin: 0 0 0 10px"
-          @click="statusConfirm('3', '开始发货')"
-          v-if="status === '2' && powers.some((item) => item == '026')"
-          >开始发货
-        </el-button> -->
-      </div>
-      <!-- <status-bar
-        v-if="newTime !== ''"
-        :newTime="newTime"
-        :options="statusOptions"
-        :status="status"
-      /> -->
-      <el-tabs v-model="activeTabs">
-        <el-tab-pane label="业务详情" name="1">
-      <el-collapse v-model="activeNames" style="margin:-18px 0 0 0">
-        <el-collapse-item title="咨询订单信息" name="0">
-          <add-form
-            :newTime="newTime"
-            v-if="newTime !== ''"
-            :sitem="sitem"
-            :id="queryId"
-            @refresh="initData()"
-          />
-        </el-collapse-item>
-        <el-collapse-item
-          title="发起审核流程"
-          name="0"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-        >
-          <div style="height: 45px; padding: 0 20px 20px 0">
-            <el-button
-              type="primary"
-              plain
-              class="fr"
-              :size="'mini'"
-              style="margin: 0 0 0 10px"
-              @click="statusConfirm('1', '发起审核流程')"
-              >发起审核流程
-            </el-button>
-          </div>
-        </el-collapse-item>
-        <el-collapse-item title="发货申请单" name="3">
-          <order-out-table
-            :newTime="newTime"
-            v-if="newTime !== '' && status != '0'"
-            :sitem="sitem"
-            :id="queryId"
-            @refresh="initData()"
-          />
-        </el-collapse-item>
-
-        <!-- <el-collapse-item title="出库物流" name="3">
-          <add-edit1
-            :newTime="newTime"
-            v-if="newTime !== '' && status != '0'"
-            :sitem="sitem"
-            :id="queryId"
-            @refresh="initData()"
-          />
-        </el-collapse-item>  -->
-      </el-collapse>
-         </el-tab-pane>
-        <el-tab-pane label="审批记录" name="2">
-         <process-time-line
-            v-if="newTime !== ''"
-            :newTime="newTime"
-            :type="'ZXQRD'"
-            :orderCode="orderCode"
-          />
-        </el-tab-pane>
-      </el-tabs>
-      <add-edit
-        :id="modelId"
-        :sitem="s_sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      />
-      <!-- <edit-add
-        :id="modelId"
-        :sitem="sitem"
-        :show-model="showModell"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      /> -->
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxOrder/detail";
-import addForm from "./components/addForm";
-import feedbackForm from "./components/feedback-form";
-import orderOutTable from "./components/order-out-table";
-import addEdit from "./addEdit";
-export default {
-  name: "zxOrderDetail",
-  mixins: [mixinPage, resToken],
-
-  components: {
-    // addEdit1,
-    addEdit,
-    addForm,
-    feedbackForm,
-    orderOutTable,
-    // editAdd,
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    return {
-      activeTabs:"1",
-      finishStatus: "finish",
-      activeNames: ["-1", "0", "1", "2", "3", "4", "5", "10"],
-      statusOptions: [
-        { value: "0", label: "待发起流程" },
-        { value: "1", label: "待发货" },
-        { value: "2", label: "发货中" },
-        { value: "3", label: "部分发货" },
-        { value: "4", label: "发货已完成" },
-      ],
-      sitem: null,
-      s_sitem: null,
-      orderCode: "",
-      status: "",
-      newTime: "",
-      loading: false,
-      queryId: "",
-    };
-  },
-  mounted() {
-    this.status = "";
-    this.queryId = this.$route.query.id;
-    this.initData();
-  },
-  methods: {
-    async statusConfirm(status, message) {
-      await this.$confirm(`确定要${message}?`, {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          if (status === "-1") {
-            await this.deleteById(message);
-          } else {
-            await this.setStatus(status, message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-    getNewTime() {
-      this.newTime = new Date().valueOf() + "";
-    },
-
-    async deleteById(message) {
-      const res = await asyncRequest.delete({ id: this.queryId });
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-
-        this.routeGoto("check", {});
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    async setStatus(status, message, remark) {
-      let model = {
-        id: this.queryId,
-        remark: remark || "",
-        status: status,
-      };
-      const res = await asyncRequest.status(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-        this.initData();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async examForm(e) {
-      if (!this.loading) {
-        let type = e.state === "1" ? "2" : "0";
-        await this.setStatus(type, "提交入库方审核", e.remark);
-      }
-    },
-    async initData() {
-      this.loading = true;
-      const res = await asyncRequest.detail({ id: this.queryId });
-      if (res && res.code === 0 && res.data) {
-        this.sitem = res.data;
-        this.status = this.sitem.status;
-        this.orderCode = this.sitem.orderCode;
-        this.getNewTime();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-      this.loading = false;
-    },
-    openModal(id, isDetail, sitem) {
-      if (sitem == "sell") {
-        this.showModel = true;
-      } else {
-        this.showModell = true;
-      }
-
-      this.modelId = id;
-      this.isDetail = isDetail;
-      this.s_sitem = this.sitem;
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.zxOrderDetail {
-}
-</style>
-   
-   

+ 0 - 363
src/views/sellOut/zxOrder/index.vue

@@ -1,363 +0,0 @@
-<template>
-  <div class="zxOrder pagePadding">
-    <div
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <ex-table
-        v-loading="loading"
-        :table="table"
-        :data="tableData"
-        :columns="columns"
-        :page="pageInfo"
-        :size="size"
-        @page-curr-change="handlePageChange"
-        @page-size-change="handleSizeChange"
-        @screen-reset="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-        @screen-submit="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-      >
-        <template #table-header="{}">
-          <div style="width: 100%">
-            <el-row style="padding: 0 0 0 80px">
-              <el-col :span="4" style="width: 160px">
-                <el-select
-                  :size="searchSize"
-                  v-model="parmValue.status"
-                  filterable
-                  clearable
-                  placeholder="咨询订单状态"
-                  style="width: 100%"
-                  @change="
-                    pageInfo.curr = 1;
-                    parmValue.page = 1;
-                    searchList();
-                  "
-                >
-                  <el-option
-                    v-for="item in statusOptions"
-                    :key="'status' + item.id"
-                    :label="item.label"
-                    :value="item.id"
-                  />
-                </el-select>
-              </el-col>
-              <el-col :span="4" style="width: 325px; padding: 0 0 0 10px">
-                <search-supplier
-                  :size="searchSize"
-                  :value="parmValue.supplierNo"
-                  :placeholder="'销售方公司'"
-                  :disabled="false"
-                  :isDetail="false"
-                  :type="'1'"
-                  @searchChange="supplierChange"
-                />
-              </el-col>
-              <el-col :span="4" style="width: 325px; padding: 0 0 0 10px">
-                <search-customer
-                  :size="searchSize"
-                  :value="parmValue.customer_code"
-                  :placeholder="'购买方公司'"
-                  :disabled="false"
-                  :isDetail="false"
-                  @searchChange="customer_code_change"
-                />
-              </el-col>
-              <el-col :span="3" style="width: 66px; float: right">
-                <el-button
-                  :size="searchSize"
-                  type="primary"
-                  style="float: right; margin-left: 5px"
-                  @click="searchList"
-                >
-                  刷新
-                </el-button>
-              </el-col>
-            </el-row>
-            <el-row style="padding: 10px 0 0 0">
-              <el-col :span="6" style="width: 293px">
-                <period-date-picker
-                  :type="1"
-                  :width="'135px'"
-                  :size="searchSize"
-                  :start="parmValue.start"
-                  :end="parmValue.end"
-                  @timeReturned="handleTime"
-                />
-              </el-col>
-              <el-col :span="6" style="width: 500px; padding: 0 0 0 10px">
-                <el-input
-                  placeholder="关键字"
-                  v-model="input"
-                  :size="searchSize"
-                  class="input-with-select"
-                >
-                  <el-select
-                    v-model="select"
-                    style="width: 125px"
-                    slot="prepend"
-                    placeholder="请选择"
-                  >
-                    <el-option label="咨询订单编号" value="1"></el-option>
-                    <el-option label="商品属性编号" value="2"></el-option>
-                    <el-option label="商品名称" value="3"></el-option>
-                    <el-option label="申请人" value="4"></el-option>
-                  </el-select>
-                  <el-button slot="append" icon="el-icon-search"></el-button>
-                </el-input>
-              </el-col>
-
-              <el-col :span="4" style="width: 66px; float: right">
-                <el-button
-                  type="warning"
-                  class="fr"
-                  :size="searchSize"
-                  @click="restSearch"
-                >
-                  重置
-                </el-button>
-              </el-col>
-            </el-row>
-          </div>
-        </template>
-        <template #status="{ scope }">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (statusOptions.find((item) => item.id == scope.row.status) || {})
-                .label || '--'
-            "
-          ></el-tag>
-        </template>
-
-        <template
-          #operation="{ scope }"
-          v-if="powers.some((item) => item == '007')"
-        >
-          <el-tooltip effect="dark" content="详情" placement="top">
-            <i
-              class="el-icon-view tb-icon"
-              @click="routeGoto('zxOrderDetail', { id: scope.row.id })"
-            ></i>
-          </el-tooltip>
-        </template>
-      </ex-table>
-
-      <add-edit
-        :id="modelId"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      />
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxOrder";
-import columns from "./columns"; //表格列参数
-import addEdit from "./components/addEdit";
-import { mapGetters } from "vuex";
-
-export default {
-  name: "zxOrder",
-  mixins: [mixinPage, resToken],
-  components: {
-    addEdit,
-  },
-  computed: {
-    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxOrder"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    return {
-      sitem: null,
-      select: "1",
-      input: "",
-      sselect: "创建时间",
-      // 状态
-      statusOptions: [
-        { id: "0", label: "待发起流程" },
-        { id: "1", label: "待发货" },
-        { id: "2", label: "发货中" },
-        { id: "3", label: "部分发货" },
-        { id: "4", label: "发货已完成" },
-      ],
-      loading: false,
-      showModel: false,
-      isDetail: false,
-      modelId: 0,
-      parmValue: {
-        order_type: "2", //订单类型1销售2咨询
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-        status: "", //状态
-        orderCode: "", //咨询单编号
-        apply_name: "", // 申请人
-        good_name: "", // 产品名称
-        good_code: "", // 产品属性编号
-        start: "", //新建起始时间
-        end: "", // 新建结束时间
-        customer_code: [],
-        supplierNo: [],
-      },
-      passwordModel: false,
-      passwordModelId: 0,
-      isPasswordDetail: false,
-      // 表格 - 数据
-      tableData: [],
-      // 表格 - 参数
-      table: {
-        stripe: true,
-        border: true,
-        _defaultHeader_: ["setcol"],
-      },
-      // 表格 - 分页
-      pageInfo: {
-        size: 15,
-        curr: 1,
-        total: 0,
-      },
-      // 表格 - 列参数
-      columns: columns,
-    };
-  },
-  mounted() {
-    this.searchList();
-  },
-
-  methods: {
-    restSearch() {
-      this.select = "1";
-      this.input = "";
-      this.parmValue = {
-        order_type: "2", //订单类型1销售2咨询
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-        status: "", //状态
-        orderCode: "", //咨询单编号
-        apply_name: "", // 申请人
-        good_name: "", // 产品名称
-        good_code: "", // 产品属性编号
-        start: "", //新建起始时间
-        end: "", // 新建结束时间
-        customer_code: [],
-        supplierNo: [],
-      };
-      // 表格 - 分页
-      this.pageInfo = {
-        size: 15,
-        curr: 1,
-        total: 0,
-      };
-      this.searchList();
-    },
-
-    async supplierChange(e) {
-      if (e && e.id) {
-        this.parmValue.supplierNo = [e.code];
-      } else {
-        this.parmValue.supplierNo = [];
-      }
-      this.parmValue.page = 1;
-      this.pageInfo.curr = 1;
-      await this.searchList();
-    },
-    async customer_code_change(e) {
-      if (e && e.id) {
-        this.parmValue.customer_code = [e.code];
-      } else {
-        this.parmValue.customer_code = [];
-      }
-      this.parmValue.page = 1;
-      this.pageInfo.curr = 1;
-      await this.searchList();
-    },
-
-    async searchList() {
-      this.loading = true;
-      let model = Object.assign({}, this.parmValue);
-
-      model.customer_code =
-        model.customer_code.length == 1 ? model.customer_code[0] : "";
-      model.supplierNo =
-        model.supplierNo.length == 1 ? model.supplierNo[0] : "";
-      model.orderCode = this.select === "1" ? this.input : ""; // 采购单编码
-      model.good_code = this.select === "2" ? this.input : ""; // 产品属性编号
-      model.good_name = this.select === "3" ? this.input : ""; // 产品名称
-      model.apply_name = this.select === "4" ? this.input : ""; // 申请人
-      const res = await asyncRequest.list(model);
-      if (res && res.code === 0 && res.data) {
-        this.tableData = res.data.list;
-        this.tableData.forEach((v) => {
-          v.good_class = "";
-          if (v.can && v.can.length > 0) {
-            v.can.forEach((x, i) => {
-              v.good_class += i === 0 ? x.name : "/" + x.name;
-            });
-          }
-        });
-        this.pageInfo.total = Number(res.data.count);
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-    // 时间
-    async handleTime(e) {
-      if (e.startTime !== "") {
-        this.parmValue.start = e.startTime;
-      } else {
-        this.parmValue.start = "";
-      }
-      if (e.endTime !== "") {
-        this.parmValue.end = e.endTime;
-      } else {
-        this.parmValue.end = "";
-      }
-      if (
-        !(
-          (this.parmValue.start !== "" && this.parmValue.end === "") ||
-          (this.parmValue.start === "" && this.parmValue.end !== "")
-        )
-      ) {
-        this.parmValue.page = 1;
-        this.pageInfo.curr = 1;
-        await this.searchList();
-      }
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.zxOrder {
-  // text-align: right;
-}
-</style>
-   

+ 0 - 0
src/views/sellOut/zxOrder/咨询-订单管理


+ 0 - 376
src/views/sellOut/zxReturn/addEdit.vue

@@ -1,376 +0,0 @@
-<template>
-  <el-dialog
-    :title="title"
-    :center="true"
-    align="left"
-    top="5vh"
-    width="1040px"
-    @close="showModelThis = false"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    v-loading="loading"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-  >
-    id:{{ id }}isDetail:{{ isDetail }},sitem:{{ sitem }},入参:{{ ruleForm }}
-    <el-card>
-      <el-row :gutter="10">
-        <el-col :span="24">
-          <el-form
-            :model="ruleForm"
-            status-icon
-            :rules="rulesThis"
-            ref="ruleForm"
-            label-width="110px"
-            class="demo-ruleForm"
-          >
-            <el-form-item
-              label="退货原因"
-              prop="returnReason"
-              v-if="id === 'add' || isDetail"
-            >
-              <el-select
-                style="width: 100%"
-                v-model="ruleForm.returnReason"
-                placeholder="退换货原因"
-                @change="handleSelect"
-              >
-                <el-option
-                  v-for="item in reason_options"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-
-            <el-form-item label="退货备注" prop="return_remark">
-              <!-- <el-input v-model="ruleForm.tel" :disabled="isDetail"></el-input> -->
-              <el-input
-                type="textarea"
-                maxlength="250"
-                show-word-limit
-                placeholder="请填写备注"
-                v-model="ruleForm.return_remark"
-              />
-            </el-form-item>
-            <el-form-item label="密码" prop="password" v-if="id === 'add'">
-              <el-input
-                type="password"
-                placeholder="密码"
-                :maxlength="20"
-                v-model="ruleForm.password"
-              ></el-input>
-            </el-form-item>
-            <el-form-item label="确认密码" prop="password2" v-if="id === 'add'">
-              <el-input
-                type="password"
-                placeholder="再次输入密码"
-                :maxlength="20"
-                v-model="ruleForm.password2"
-              ></el-input>
-            </el-form-item>
-          </el-form>
-        </el-col>
-        <el-col :span="24" style="text-align: right">
-          <el-button type="primary" @click="submitForm" v-if="!isDetail"
-            >保 存
-          </el-button>
-          <el-button @click="showModelThis = false">{{
-            isDetail ? "关 闭" : "取 消"
-          }}</el-button>
-        </el-col>
-      </el-row>
-    </el-card>
-  </el-dialog>
-</template>
-   <script>
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import resToken from "@/mixins/resToken";
-import {
-  isnumber,
-  isMobile,
-  validEmail,
-  isAlphanumeric,
-  isChinese,
-  isEmoticon,
-  validAlphabets,
-} from "@/utils/validate";
-export default {
-  name: "sellReturn",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  mixins: [resToken],
-  data() {
-    const validateusername = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("账号不能为空!"));
-      } else {
-        if (value.length < 6 || value.length > 18) {
-          callback(new Error("账号规则为6~18位数字与字母组合!"));
-        } else {
-          if (isnumber(value)) {
-            callback(new Error("账号规则为6~18位数字与字母组合!"));
-          } else if (validAlphabets(value)) {
-            callback(new Error("账号规则为6~18位数字与字母组合!"));
-          } else if (!isAlphanumeric(value)) {
-            callback(new Error("账号规则为6~18位数字与字母组合!"));
-          } else {
-            callback();
-          }
-        }
-      }
-    };
-    const validatename = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("真实姓名不能为空!"));
-      } else {
-        if (value.length < 2 || value.length > 12) {
-          callback(new Error("真实姓名规则为2~12位汉字!"));
-        } else {
-          if (!isChinese(value)) {
-            callback(new Error("真实姓名规则为2~12位汉字!"));
-          } else if (isEmoticon(value)) {
-            callback(new Error("真实姓名规则为2~12位汉字!"));
-          } else {
-            callback();
-          }
-        }
-      }
-    };
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-
-    const validateEmail = (rule, value, callback) => {
-      if (value === "") {
-        callback();
-      } else {
-        if (!validEmail(value)) {
-          callback(new Error("邮箱格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      reason_options: [], //退换货原因备选项
-      loading: false,
-      title: "添加账号",
-      showModelThis: this.showModel,
-      ruleForm: {
-        return_remark: "", //退货备注
-        return_num: "", //退货数量
-        returnReason: [], //退货原因
-        email: "",
-        role_id: "",
-        status: "1",
-        item: [],
-      },
-      rulesThis: this.rules,
-      rules: {
-        returnReason: [
-          {
-            required: true,
-            message: "请选择退货原因",
-            type: "array",
-            trigger: "change",
-          },
-        ],
-        return_num: [
-          {
-            required: true,
-            validator: validatemobile,
-            trigger: "blur",
-          },
-        ],
-        return_remark: [
-          {
-            required: true,
-            message: "请输入退货备注",
-            trigger: "blur",
-          },
-        ],
-      },
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-
-  methods: {
-    
-    // 获取退换货原因
-    async getReason() {
-      this.loading = true;
-      let model = {
-        page: 1,
-        size: 15,
-        type: "5",
-      };
-      const res = await asyncRequest.getReason(model);
-      if (res && res.code === 0 && res.data) {
-        const {list}=res.data
-       
-        list.forEach((element) => {
-          let obj = {
-            value: element.result_code,
-            label: element.result,
-            id: element.id,
-          };
-          this.reason_options.push(obj);
-        });
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-    async initForm() {
-      this.loading = true;
-      // await this.getRole();
-      if (this.id === "add") {
-        this.title = "添加账号";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        if (this.isDetail) {
-          this.title = "账号详情";
-          this.rulesThis = {};
-        } else {
-          this.title = "修改账号";
-          this.rulesThis = this.rules;
-        }
-        await this.resetForm(this.sitem);
-        // await this.initData()
-      }
-      this.getReason(); //获取退还货原因
-
-      this.loading = false;
-    },
-    // async getRole() {
-    //   const model = {
-    //     status: "", // 状态
-    //     level: "", // 姓名
-    //     role_name: "",
-    //   };
-    //   const res = await asyncRequest.getRole(model);
-    //   if (res && res.code === 0 && res.data) {
-    //     this.roleList = res.data;
-    //     this.roleList.map((v1) => {
-    //       v1.id += "";
-    //       v1.status += "";
-    //       return v1;
-    //     });
-    //   }
-    // },
-    async initData() {
-      const res = await asyncRequest.detail({ id: this.id });
-      if (res && res.code === 0 && res.data) {
-        this.ruleForm = res.data;
-        this.ruleForm.role_id = this.ruleForm.role;
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async resetForm(sitem) {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          const { username, nickname, mobile, email, roleid, status, item } =
-            sitem;
-          this.ruleForm = {
-            returnReason: [],
-            username: username || "", // 账号
-            name: nickname || "", // 真实姓名
-            mobile: mobile || "",
-            email: email || "",
-            role_id: roleid || "",
-            status: status || "",
-            item: item || [],
-          };
-          if (this.id === "add" || this.isDetail) {
-            this.rules.username[0].required = false;
-          }
-        }
-      });
-    },
-
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const { username, name, mobile, email, role_id, status } = JSON.parse(
-            JSON.stringify(this.ruleForm)
-          );
-          const model = {
-            id: this.id,
-            username: username || "", // 账号
-            nickname: name || "", // 真实姓名
-            mobile: mobile || "",
-            email: email || "",
-            role: role_id || "",
-            status: status || "",
-          };
-          let res = {};
-          if (this.id === "add") {
-            delete model["id"];
-            res = await asyncRequest.add(model);
-          } else {
-            res = await asyncRequest.update(model);
-          }
-          this.loading = false;
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功" : "修改成功";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.sellReturn {
-}
-</style>
-   

+ 0 - 67
src/views/sellOut/zxReturn/columns.js

@@ -1,67 +0,0 @@
-export default [
-        {
-          prop: "returnCode",
-          label: "咨询退货编号",
-          width:"160"
-        },
-        {
-          prop: "orderCode",
-          label: "咨询单编号",
-          width:"160"
-        },
-        {
-          prop: "apply_name",   
-          label: "申请人",
-          width:"65"
-        },
-        {
-          prop: "status",
-          label: "状态",
-          _slot_: "status",
-          width: "125px",
-        },
-        {
-
-          prop: "num",
-          label: "退货数量",
-          width:"110"
-        },
-        {
-          
-          prop: "total_num",
-          label: "订单总数",
-          width:"110"
-        },
-        // {
-          
-        //   prop: "return_totle",
-        //   label: "退货总货款",
-        //   width:"100"
-        // },
-        {
-          prop: "good_code",   
-          label: "商品编码",
-          'width':"125"
-        },
-        {
-          prop: "good_name",   
-          label: "商品名称",
-          'min-width':"130"
-        },
-      
-        {
-          prop: "addtime",
-          label: "申请时间",
-          sortable: true,
-          width:145
-        },
-        {
-          prop: "",
-          label: "操作",
-          fixed: "right",
-          width:50,
-          _noset_: true,
-          _slot_: "operation",
-        },
-      
-]

+ 0 - 278
src/views/sellOut/zxReturn/components/addEdit.vue

@@ -1,278 +0,0 @@
-<template>
-  <el-form
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    ref="ruleForm"
-    label-width="95px"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="商品分类" prop="return_remark">
-          <el-input v-model="ruleForm.return_remark" disabled />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="商品名称" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-
-      <el-col :span="6">
-        <el-form-item label="销售总量" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-        <el-col :span="6">
-        <el-form-item label="已发货总量" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-         <el-col :span="6">
-        <el-form-item label="未发货总量" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-      <el-col :span="6">
-        <el-form-item label="退货总量" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="退货原因" prop="tel">
-          <el-input v-model="ruleForm.tel" disabled />
-        </el-form-item>
-      </el-col>
-      <el-col :span="24">
-        <el-form-item label="退货备注" prop="tel">
-          <el-input
-            v-model="ruleForm.tel"
-            type="textarea"
-            maxlength="250"
-            show-word-limit
-            disabled
-          />
-        </el-form-item>
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-   <script>
-import resToken from "@/mixins/resToken";
-export default {
-  name: "sellReturn",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  mixins: [resToken],
-  data() {
-    return {
-      reason_options: [], //退换货原因备选项
-      loading: false,
-      title: "添加账号",
-      showModelThis: this.showModel,
-      ruleForm: {
-        return_remark: "", //退货备注
-        return_num: "", //退货数量
-        returnReason: [], //退货原因
-        email: "",
-        role_id: "",
-        status: "1",
-        item: [],
-      },
-      rulesThis: this.rules,
-      rules: {
-        returnReason: [
-          {
-            required: true,
-            message: "请选择退货原因",
-            type: "array",
-            trigger: "change",
-          },
-        ],
-        return_num: [
-          {
-            required: true,
-            // validator: validatemobile,
-            trigger: "blur",
-          },
-        ],
-        return_remark: [
-          {
-            required: true,
-            message: "请输入退货备注",
-            trigger: "blur",
-          },
-        ],
-      },
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-
-  methods: {
-    
-    // 获取退换货原因
-    async getReason() {
-      this.loading = true;
-      let model = {
-        page: 1,
-        size: 100,
-        type: "5",
-      };
-      const res = await asyncRequest.getReason(model);
-      if (res && res.code === 0 && res.data) {
-        const {list}=res.data
-        list.forEach((element) => {
-          let obj = {
-            value: element.result_code,
-            label: element.result,
-            id: element.id,
-          };
-          this.reason_options.push(obj);
-        });
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-    async initForm() {
-      this.loading = true;
-      // await this.getRole();
-      if (this.id === "add") {
-        this.title = "添加账号";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        if (this.isDetail) {
-          this.title = "账号详情";
-          this.rulesThis = {};
-        } else {
-          this.title = "修改账号";
-          this.rulesThis = this.rules;
-        }
-        await this.resetForm(this.sitem);
-        // await this.initData()
-      }
-      this.getReason(); //获取退还货原因
-
-      this.loading = false;
-    },
-    // async getRole() {
-    //   const model = {
-    //     status: "", // 状态
-    //     level: "", // 姓名
-    //     role_name: "",
-    //   };
-    //   const res = await asyncRequest.getRole(model);
-    //   if (res && res.code === 0 && res.data) {
-    //     this.roleList = res.data;
-    //     this.roleList.map((v1) => {
-    //       v1.id += "";
-    //       v1.status += "";
-    //       return v1;
-    //     });
-    //   }
-    // },
-    async initData() {
-      const res = await asyncRequest.detail({ id: this.id });
-      if (res && res.code === 0 && res.data) {
-        this.ruleForm = res.data;
-        this.ruleForm.role_id = this.ruleForm.role;
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async resetForm(sitem) {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          const { username, nickname, mobile, email, roleid, status, item } =
-            sitem;
-          this.ruleForm = {
-            returnReason: [],
-            username: username || "", // 账号
-            name: nickname || "", // 真实姓名
-            mobile: mobile || "",
-            email: email || "",
-            role_id: roleid || "",
-            status: status || "",
-            item: item || [],
-          };
-          if (this.id === "add" || this.isDetail) {
-            this.rules.username[0].required = false;
-          }
-        }
-      });
-    },
-
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const { username, name, mobile, email, role_id, status } = JSON.parse(
-            JSON.stringify(this.ruleForm)
-          );
-          const model = {
-            id: this.id,
-            username: username || "", // 账号
-            nickname: name || "", // 真实姓名
-            mobile: mobile || "",
-            email: email || "",
-            role: role_id || "",
-            status: status || "",
-          };
-          let res = {};
-          if (this.id === "add") {
-            delete model["id"];
-            res = await asyncRequest.add(model);
-          } else {
-            res = await asyncRequest.update(model);
-          }
-          this.loading = false;
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功" : "修改成功";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-            this.showModelThis = false;
-            // 刷新
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.sellReturn {
-}
-</style>
-   

+ 0 - 39
src/views/sellOut/zxReturn/components/columnsForm.js

@@ -1,39 +0,0 @@
-export default [
-    {
-        prop: "orderCode",
-        label: "咨询订单编号",
-        col: "8",
-    },
-    {
-        prop: "class_cat",
-        label: "商品分类",
-        col: "16",
-    },
-    {
-        prop: "good_code",
-        label: "商品编号",
-        col: "8",
-    },
-    {
-        prop: "good_name",
-        label: "商品名称",
-        col: "16",
-    },
-
-
-    {
-        prop: "diff_price",
-        label: "工差总金额",
-        col: "8",
-    },
-    {
-        prop: "diff_weight",
-        label: "工差总重量",
-        col: "8",
-    },
-    {
-        prop: "gold_price",
-        label: "金价",
-        col: "8",
-    },
-]

+ 0 - 449
src/views/sellOut/zxReturn/components/purchase-exam.vue

@@ -1,449 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="110px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="24" style="margin: -10px 0 10px 0">
-        <el-divider>虚拟仓商品入库信息设置</el-divider>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="仓库所在公司" prop="return_company">
-          <search-supplier
-            :placeholder="'仓库所在公司'"
-            :type="'1'"
-            :value="ruleForm.return_company"
-            @searchChange="selectSupplier"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="入库仓库" prop="return_wsm">
-          <search-stock
-            :isDetail="true"
-            :value="ruleForm.return_wsm"
-            :disabled="supplier_code === ''"
-            :placeholder="'出库仓库'"
-            :isRelation="true"
-            :companyCode="supplier_code"
-            :names="''"
-            @searchChange="selectStock"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="退货总数量" prop="cgd_wsend" required>
-          <el-input
-            disabled
-            v-model="ruleForm.cgd_wsend"
-            placeholder="退货总数量"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-      <el-col :span="12" style="text-align: right">
-        <el-button type="primary" :size="'mini'" @click="submitForm"
-          >保 存</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import resToken from "@/mixins/resToken";
-export default {
-  name: "handover",
-  props: ["id", "sitem", "showModel", "newTime"],
-  mixins: [resToken],
-  data() {
-    return {
-      supplier_code: "",
-      return_wsm: "",
-      isShow: true,
-      loading: false,
-      disabled: true,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        order_type: "1", //售后类型 1销售2咨询,
-        outCode: "", //
-        stock_out_numbers: "", //发货申请单编号
-        anomalous_numbers: "", //异常数量
-        anomalous_reason: "", //异常原因
-        expect_wish: "", //期望意愿
-        anomalous_images: [],
-        anomalous_remark: "", //异常备注
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        return_wsm: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择入库仓库",
-            trigger: "change",
-          },
-        ],
-        return_company: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择仓库所在公司",
-            trigger: "change",
-          },
-        ],
-      },
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxReturnDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  mounted() {
-    // this.getReason(); //获取异常原因
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    async initForm() {
-      this.loading = true;
-      this.status = "";
-      this.rulesThis = this.rules;
-      await this.resetForm();
-      this.loading = false;
-    },
-    // 选择供应商
-    selectSupplier(e) {
-      if (e && e.id) {
-        this.ruleForm.return_company = [e.code];
-        this.supplier_code = e.code;
-      } else {
-        this.ruleForm.return_wsm = [];
-        this.ruleForm.return_company = [];
-        this.return_wsm = "";
-        this.supplier_code = "";
-      }
-    },
-    // 选择供应商仓库
-    selectStock(e) {
-      if (e && e.id) {
-        this.ruleForm.return_wsm = [e.code];
-        this.return_wsm = e.code;
-      } else {
-        this.ruleForm.return_wsm = [];
-        this.return_wsm = "";
-      }
-    },
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          let { cgd_wsend, status, return_wsm, returnCode, return_company } =
-            this.sitem;
-          this.status = status;
-          this.ruleForm = {
-            returnCode: returnCode || "",
-            cgd_wsend: cgd_wsend || "",
-            return_wsm: return_wsm ? [return_wsm] : [],
-            return_company: return_company ? [return_company] : [],
-          };
-          console.log(this.ruleForm);
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          const { anomalous_numbers } = this.ruleForm;
-          if (this.sitem.send_num < anomalous_numbers) {
-            this.$message.warning("异常数量不能大于发货数量");
-            return false;
-          }
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-
-          // console.log("调接口");
-          let _model = {
-            order_type: "1",
-            outCode: model.outCode,
-            errorCode: model.anomalous_reason, //异常原因
-            num: model.anomalous_numbers,
-            remark: model.anomalous_remark,
-            except_code: model.expect_wish,
-            img: model.anomalous_images.toString(),
-          };
-
-          const res = await asyncRequest.add(_model);
-
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-            this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    async statusConfirm(status, message) {
-      await this.$confirm(`确定要${message}?`, {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          if (status === "-1") {
-            await this.deleteById(message);
-          } else {
-            await this.setStatus(status, message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-
-    async deleteById(message) {
-      const res = await asyncRequest.delete({ id: this.id });
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-
-        this.routeGoto("handover", {});
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    async setStatus(status, message) {
-      let model = {
-        id: this.id,
-        remark: "",
-        status: status,
-      };
-      const res = await asyncRequest.status(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-        this.initForm();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    open() {
-      this.show = true;
-    },
-    // // 获取异常原因
-    // async getReason() {
-    //   let model = {
-    //     type: "2",
-    //     page: 1,
-    //     size: 100,
-    //   };
-    //   const res = await asyncRequest.reasonList(model);
-    //   this.loading = false;
-    //   if (res && res.code === 0) {
-    //     this.reason_options = res.data.list;
-    //   } else if (res && res.code >= 100 && res.code <= 104) {
-    //     await this.logout();
-    //   } else {
-    //     this.$message.warning(res.message);
-    //   }
-    // },
-    // 异常原因
-    handleAnomalousReason(e) {
-      if (e) {
-        this.ruleForm.anomalous_reason = e;
-      } else {
-        this.ruleForm.anomalous_reason = "";
-      }
-      this.$refs.ruleForm.validateField("company_img");
-    },
-    //图片上传失败
-    UploadErrorEvent(res) {
-      if (res !== "break") {
-        this.$message.error("图片上传失败!");
-        this.$refs.ruleForm.validateField("anomalous_images");
-      }
-    },
-    //图片上传成功
-    async UploadSuccessEvent(data) {
-      const { url } = data;
-      if (url === "noToken") {
-        await this.logout();
-      } else {
-        this.ruleForm.anomalous_images.push(url);
-        this.$message.success("图片上传成功!");
-        this.$refs.ruleForm.validateField("anomalous_images");
-      }
-    },
-    //判断图片规格
-    beforeAvatarUpload(file) {
-      let isJPG = false,
-        isLt2M = false;
-      if (file) {
-        if (
-          file.type === "image/jpg" ||
-          file.type === "image/png" ||
-          file.type === "image/jpeg"
-        ) {
-          isJPG = true;
-        }
-        isLt2M = file.size / 1024 / 1024 < 1;
-        if (!isJPG) {
-          this.$message.error("图片格式不正确!");
-        }
-        if (!isLt2M) {
-          this.$message.error("图片大小不能超过 1MB!");
-        }
-      }
-
-      return isJPG && isLt2M;
-    },
-    imgClose(index) {
-      this.ruleForm.anomalous_images.splice(index, 1);
-      this.$refs.ruleForm.validateField("anomalous_images");
-    },
-    getMargin() {
-      if (this.ruleForm.anomalous_images.length == 0) {
-        return "margin:0;";
-      } else if (this.ruleForm.anomalous_images.length < 3) {
-        return "margin:0px 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-    getMargin_li() {
-      if (this.ruleForm.anomalous_images.length <= 3) {
-        return "margin:0 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.el-form-item-error-img {
-  width: 100%;
-  ul {
-    width: 100%;
-    li {
-      float: left;
-      border: 1px solid rgb(220, 223, 230);
-      // border-left: 0;
-      box-sizing: border-box;
-      width: 254px;
-      height: 164px;
-      line-height: 164px;
-      position: relative;
-      img {
-        display: inline-block;
-        width: 100%;
-        height: 100%;
-      }
-      .el-icon-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        width: 25px;
-        height: 25px;
-        text-align: center;
-        line-height: 25px;
-        font-size: 19px;
-        &:hover {
-          color: #63cbe7;
-        }
-      }
-    }
-  }
-}
-.images_li {
-  // width: 254px;
-  // height: 164px;
-  float: left;
-}
-.btnupload {
-  float: left;
-  border: 1px solid rgb(220, 223, 230);
-  // border-left: 0;
-  box-sizing: border-box;
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-}
-.Upload {
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-  position: absolute;
-  line-height: 0px;
-  top: 0;
-  left: 0;
-  z-index: 2;
-  line-height: 164px;
-}
-.avatar-uploader-icon {
-  font-size: 33px;
-  color: #8c939d;
-  width: 50px;
-  height: 50px;
-  line-height: 50px;
-  text-align: center;
-}
-</style>

+ 0 - 351
src/views/sellOut/zxReturn/components/purchase-feedback.vue

@@ -1,351 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="135px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="8">
-        <el-form-item label="采购总数" prop="cgd_total" required>
-          <el-input
-            disabled
-            v-model="ruleForm.cgd_total"
-            placeholder="采购总数"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-      <el-col :span="8">
-        <el-form-item label="已入库商品数" prop="cgd_send" required>
-          <el-input
-            disabled
-            v-model="ruleForm.cgd_send"
-            placeholder="已入库商品数"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-      <el-col :span="8">
-        <el-form-item label="未入库商品数" prop="cgd_wsend" required>
-          <el-input
-            disabled
-            v-model="ruleForm.cgd_wsend"
-            placeholder="未入库商品数"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-      <el-col :span="8">
-        <el-form-item label="未入库数量可退否" prop="wsend_th">
-          <el-select
-            v-model="ruleForm.wsend_th"
-            style="width: 100%"
-            placeholder="未入库数量可退否"
-          >
-            <el-option
-              v-for="item in options"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-      </el-col>
-      <el-col :span="16">
-        <el-form-item label="备注" prop="remark">
-          <el-input
-            type="textarea"
-            placeholder="备注"
-            v-model="ruleForm.remark"
-            :disabled="disabled"
-            maxlength="250"
-            show-word-limit
-          />
-        </el-form-item>
-      </el-col>
-
-      <el-col :span="24" style="text-align: right; padding: 0 0 20px 0">
-        <el-button type="primary" :size="'mini'" @click="submitForm"
-          >保 存</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import resToken from "@/mixins/resToken";
-export default {
-  name: "handover",
-  props: ["id", "sitem", "showModel", "newTime"],
-  mixins: [resToken],
-  data() {
-    return {
-      options: [
-        {
-          value: "1",
-          label: "是",
-        },
-        {
-          value: "0",
-          label: "否",
-        },
-      ],
-      loading: false,
-
-      status: "",
-      showModelThis: this.showModel,
-
-      ruleForm: {
-        returnCode: "",
-        cgd_total: "",
-        cgd_wsend: "",
-        cgd_send: "",
-        wsend_th: "1",
-        remark: "",
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        wsend_th: [
-          {
-            required: true,
-            message: "请选择未入库数量可退否",
-            trigger: "change",
-          },
-        ],
-
-        remark: [
-          {
-            required: true,
-            message: "请输入备注",
-            trigger: "blur",
-          },
-        ],
-      },
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxReturnDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  mounted() {
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    async initForm() {
-      this.loading = true;
-      this.status = "";
-      this.rulesThis = this.rules;
-      await this.resetForm();
-      this.loading = false;
-    },
-
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          let {
-            cgd_wsend,
-            cgd_send,
-            status,
-            cgd_total,
-            wsend_th,
-            remark,
-            returnCode,
-          } = this.sitem;
-          this.status = status;
-          this.ruleForm = {
-            returnCode: returnCode || "",
-            cgd_total: cgd_total || "",
-            cgd_wsend: cgd_wsend || "",
-            cgd_send: cgd_send || "",
-            wsend_th: wsend_th || "1",
-            remark: remark || "",
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          model.status = model.wsend_th === "1" ? "3" : "4";
-          delete model["cgd_total"];
-          delete model[" cgd_wsend"];
-          delete model[" cgd_send"];
-          const res = await asyncRequest.status(model);
-
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "提交成功",
-              message: "",
-            });
-            this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    async statusConfirm(status, message) {
-      await this.$confirm(`确定要${message}?`, {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          if (status === "-1") {
-            await this.deleteById(message);
-          } else {
-            await this.setStatus(status, message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-
-    async deleteById(message) {
-      const res = await asyncRequest.delete({ id: this.id });
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-
-        this.routeGoto("handover", {});
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    async setStatus(status, message) {
-      let model = {
-        id: this.id,
-        remark: "",
-        status: status,
-      };
-      const res = await asyncRequest.status(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-        this.initForm();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.el-form-item-error-img {
-  width: 100%;
-  ul {
-    width: 100%;
-    li {
-      float: left;
-      border: 1px solid rgb(220, 223, 230);
-      // border-left: 0;
-      box-sizing: border-box;
-      width: 254px;
-      height: 164px;
-      line-height: 164px;
-      position: relative;
-      img {
-        display: inline-block;
-        width: 100%;
-        height: 100%;
-      }
-      .el-icon-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        width: 25px;
-        height: 25px;
-        text-align: center;
-        line-height: 25px;
-        font-size: 19px;
-        &:hover {
-          color: #63cbe7;
-        }
-      }
-    }
-  }
-}
-.images_li {
-  // width: 254px;
-  // height: 164px;
-  float: left;
-}
-.btnupload {
-  float: left;
-  border: 1px solid rgb(220, 223, 230);
-  // border-left: 0;
-  box-sizing: border-box;
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-}
-.Upload {
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-  position: absolute;
-  line-height: 0px;
-  top: 0;
-  left: 0;
-  z-index: 2;
-  line-height: 164px;
-}
-.avatar-uploader-icon {
-  font-size: 33px;
-  color: #8c939d;
-  width: 50px;
-  height: 50px;
-  line-height: 50px;
-  text-align: center;
-}
-</style>

+ 0 - 56
src/views/sellOut/zxReturn/components/showForm.vue

@@ -1,56 +0,0 @@
-<template>
-  <div class="modal-form-style">
-    <el-form
-      ref="sitem"
-      :model="sitem"
-      status-icon
-      :rules="rulesThis"
-      label-width="110px"
-      id="demo-sitem"
-    >
-      <el-row v-if="sitem !== null">
-        <template v-for="item in columns">
-          <el-col :key="item.prop" :span="item.col" v-if="sitem[item.prop]">
-            <el-form-item :label="item.label + ':'">
-              <div>{{ sitem[item.prop] }}{{ item.unit }}</div>
-            </el-form-item>
-          </el-col>
-        </template>
-      </el-row>
-    </el-form>
-  </div>
-</template>
-<script>
-import columns from "./columnsForm";
-export default {
-  name: "Account",
-  props: ["newTime", "sitem"],
-  data() {
-    return {
-      loading: false,
-      columns: columns,
-      sitem: null,
-    };
-  },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    
-
-    async initForm() {
-      this.loading = true;
-      this.loading = false;
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.account {
-}
-</style>

+ 0 - 281
src/views/sellOut/zxReturn/detail.vue

@@ -1,281 +0,0 @@
-<template>
-  <div class="zxReturnDetail pagePadding">
-    <div
-      style="width: 100%"
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <!-- {{ status }}--{{ powers }} -->
-      <div class="detail-page-title">
-        <span>咨询退货单编号:</span><span v-if="sitem">{{ sitem.id }}</span>
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          :size="'mini'"
-          v-if="
-            status !== '' &&
-            status !== '3' &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-      </div>
-      <!-- <status-bar
-        v-if="newTime !== ''"
-        :newTime="newTime"
-        :options="statusOptions"
-        :status="status"
-      /> -->
-      <el-tabs v-model="activeTabs">
-        <el-tab-pane label="业务详情" name="1">
-          <el-collapse v-model="activeNames" style="margin:-18px 0 0 0">
-            <el-collapse-item title="咨询退货单信息" name="-1">
-              <show-form
-                :newTime="newTime"
-                v-if="newTime !== ''"
-                :sitem="sitem"
-                :id="queryId"
-                @refresh="initData()"
-              />
-            </el-collapse-item>
-            <!-- v-if="status === '0' && powers.some((item) => item == '012')" -->
-            <el-collapse-item title="发起审核流程" name="0">
-              <div style="height: 45px; padding: 0 20px 20px 0">
-                <el-button
-                  type="primary"
-                  plain
-                  class="fr"
-                  :size="'mini'"
-                  style="margin: 0 0 0 10px"
-                  @click="statusConfirm('2', '发起审核流程')"
-                  >发起审核流程
-                </el-button>
-              </div>
-            </el-collapse-item>
-
-            <el-collapse-item title="采购反馈" name="1">
-              <purchase-feedback
-                :newTime="newTime"
-                v-if="newTime !== ''"
-                :sitem="sitem"
-                :id="queryId"
-                @refresh="initData()"
-              />
-            </el-collapse-item>
-            <el-collapse-item title="采购审核" name="1">
-              <purchase-exam
-                :newTime="newTime"
-                v-if="newTime !== ''"
-                :sitem="sitem"
-                :id="queryId"
-                @refresh="initData()"
-              />
-            </el-collapse-item>
-
-            <el-collapse-item title="通知采购部门" name="1">
-              <div style="height: 45px; padding: 0 20px 20px 0">
-                <el-button
-                  type="primary"
-                  plain
-                  class="fr"
-                  :size="'mini'"
-                  style="margin: 0 0 0 10px"
-                  @click="statusConfirm('2', '通知采购部门')"
-                  >我已知晓
-                </el-button>
-              </div>
-            </el-collapse-item>
-
-            <el-collapse-item title="通知财务部门" name="1">
-              <div style="height: 45px; padding: 0 20px 20px 0">
-                <el-button
-                  type="primary"
-                  plain
-                  class="fr"
-                  :size="'mini'"
-                  style="margin: 0 0 0 10px"
-                  @click="statusConfirm('2', '通知财务部门')"
-                  >我已知晓
-                </el-button>
-              </div>
-            </el-collapse-item>
-          </el-collapse>
-        </el-tab-pane>
-        <el-tab-pane label="审批记录" name="2">
-          <process-time-line
-            v-if="newTime !== ''"
-            :newTime="newTime"
-            :type="'ZXTHD'"
-            :orderCode="queryId"
-          />
-        </el-tab-pane>
-      </el-tabs>
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import showForm from "./components/showForm";
-import purchaseFeedback from "./components/purchase-feedback";
-import purchaseExam from "./components/purchase-exam";
-export default {
-  name: "zxReturnDetail",
-  mixins: [mixinPage, resToken],
-
-  components: {
-    purchaseFeedback,
-    purchaseExam,
-    // addEdit1,
-    showForm,
-    // addForm,
-    // feedbackForm,
-    // orderOutTable,
-    // editAdd,
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxReturnDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  data() {
-    return {
-      activeNames: ["-1", "0", "1", "2", "3", "4", "5", ],
-      statusOptions: [
-        { value: "0", label: "待发起流程" },
-        // { value: "1", label: "待业务审核" },
-        { value: "2", label: "待采购反馈" },
-        { value: "3", label: "待采购审核" },
-        { value: "4", label: "待通知采购部门" },
-        { value: "5", label: "待通知财务部门" },
-        { value: "6", label: "退货已完成" },
-      ],
-      sitem: null,
-      s_sitem: null,
-      orderCode: "",
-      status: "",
-      newTime: "",
-      loading: false,
-      queryId: "",
-    };
-  },
-  mounted() {
-    this.status = "";
-    this.queryId = this.$route.query.id;
-    this.initData();
-  },
-  methods: {
-    async statusConfirm(status, message) {
-      await this.$confirm(`确定要${message}?`, {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          if (status === "-1") {
-            await this.deleteById(message);
-          } else {
-            await this.setStatus(status, message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-    getNewTime() {
-      this.newTime = new Date().valueOf() + "";
-    },
-
-    async deleteById(message) {
-      const res = await asyncRequest.delete({ returnCode: this.queryId });
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-
-        this.routeGoto("check", {});
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-
-    async setStatus(status, message, remark) {
-      let model = {
-        returnCode: this.queryId,
-        remark: remark || "",
-        status: status,
-      };
-      const res = await asyncRequest.status(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: message + "成功!",
-          message: "",
-        });
-        this.initData();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async examForm(e) {
-      if (!this.loading) {
-        let type = e.state === "1" ? "2" : "0";
-        await this.setStatus(type, "提交入库方审核", e.remark);
-      }
-    },
-    async initData() {
-      this.loading = true;
-      const res = await asyncRequest.detail({ returnCode: this.queryId });
-      if (res && res.code === 0 && res.data) {
-        this.sitem = res.data;
-        this.status = this.sitem.status;
-        this.orderCode = this.sitem.orderCode;
-        this.getNewTime();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-      this.loading = false;
-    },
-    openModal(id, isDetail, sitem) {
-      if (sitem == "sell") {
-        this.showModel = true;
-      } else {
-        this.showModell = true;
-      }
-      console.log(id, isDetail, sitem);
-
-      this.modelId = id;
-      this.isDetail = isDetail;
-      // this.sitem = sitem;
-      // this.sitem.info[0].edit = false;
-      this.s_sitem = this.sitem;
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.zxReturnDetail {
-}
-</style>
-   
-   

+ 0 - 335
src/views/sellOut/zxReturn/index.vue

@@ -1,335 +0,0 @@
-<template>
-  <div class="zxReturn pagePadding">
-    <div
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <ex-table
-        v-loading="loading"
-        :table="table"
-        :data="tableData"
-        :columns="columns"
-        :page="pageInfo"
-        :size="size"
-        @page-curr-change="handlePageChange"
-        @page-size-change="handleSizeChange"
-        @screen-reset="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-        @screen-submit="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-      >
-        <template #table-header="{}">
-          <div style="width: 100%">
-            <el-row style="padding: 0 0 0 80px">
-              <el-col :span="4" style="width: 170px">
-                <el-select
-                  :size="searchSize"
-                  v-model="parmValue.status"
-                  filterable
-                  clearable
-                  placeholder="退货单状态"
-                  style="width: 100%"
-                  @change="
-                    pageInfo.curr = 1;
-                    parmValue.page = 1;
-                    searchList();
-                  "
-                >
-                  <el-option
-                    v-for="item in statusOptions"
-                    :key="'status' + item.id"
-                    :label="item.label"
-                    :value="item.id"
-                  />
-                </el-select>
-              </el-col>
-              <!-- 时间区间 -->
-              <el-col :span="6" style="width: 303px; padding: 0 0 0 10px">
-                <period-date-picker
-                  :type="1"
-                  :width="'135px'"
-                  :size="searchSize"
-                  :start="parmValue.start"
-                  :end="parmValue.end"
-                  @timeReturned="handleTime"
-                />
-              </el-col>
-
-              <el-col :span="3" style="width: 66px; float: right">
-                <el-button
-                  :size="searchSize"
-                  type="primary"
-                  style="float: right; margin-left: 5px"
-                  @click="searchList"
-                >
-                  刷新
-                </el-button>
-              </el-col>
-            </el-row>
-            <el-row style="padding: 10px 0 0 0">
-              <el-col :span="6" style="width: 450px">
-                <el-input
-                  placeholder="关键字"
-                  v-model="s_input"
-                  :size="searchSize"
-                  class="input-with-select"
-                >
-                  <el-select
-                    v-model="select"
-                    style="width: 125px"
-                    slot="prepend"
-                    placeholder="请选择"
-                  >
-                    <el-option label="退货单编号" value="1" />
-                    <el-option label="咨询订单编号" value="2" />
-                    <el-option label="申请人" value="3" />
-                  </el-select>
-                  <el-button
-                    slot="append"
-                    icon="el-icon-search"
-                    @click="
-                      pageInfo.curr = 1;
-                      parmValue.page = 1;
-                      searchList();
-                    "
-                  ></el-button>
-                </el-input>
-              </el-col>
-              <el-col :span="4" style="width: 66px; float: right">
-                <el-button
-                  type="warning"
-                  class="fr"
-                  :size="searchSize"
-                  @click="restSearch"
-                >
-                  重置
-                </el-button>
-              </el-col>
-            </el-row>
-          </div>
-        </template>
-        <template #status="{ scope }">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (statusOptions.find((item) => item.id == scope.row.status) || {})
-                .label || '--'
-            "
-          ></el-tag>
-        </template>
-        <template #operation="{ scope }">
-          <el-tooltip
-            v-if="powers.some((item) => item == '007')"
-            effect="dark"
-            content="详情"
-            placement="top"
-          >
-            <i
-              class="el-icon-view tb-icon"
-              @click="routeGoto('zxReturnDetail', { id: scope.row.returnCode })"
-            ></i>
-          </el-tooltip>
-        </template>
-      </ex-table>
-      <add-edit
-        :id="modelId"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      />
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import columns from "./columns";
-import asyncRequest from "@/apis/service/sellOut/zxReturn";
-import addEdit from "./addEdit";
-import { mapGetters } from "vuex";
-
-export default {
-  name: "zxReturn",
-  mixins: [mixinPage, resToken],
-  components: {
-    addEdit,
-  },
-  computed: {
-    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxReturn"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    return {
-      select: "1",
-      s_input: "",
-      sitem: null,
-      // 状态
-      statusOptions: [
-        { id: "0", label: "待业务部门审核" },
-        { id: "1", label: "待告知业务部门" },
-        { id: "2", label: "待告知财务部门" },
-        { id: "3", label: "退货已完成" },
-      ],
-      loading: true,
-      showModel: false,
-      isDetail: false,
-      modelId: 0,
-      parmValue: {
-        order_type: "2",
-        returnCode: "", //采购单号
-        orderCode: "", //退货单编号
-        apply_name: "", //申请人
-        start: "",
-        end: "",
-        status: "", //节点状态
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-      },
-      tableData: [],
-      passwordModel: false,
-      passwordModelId: 0,
-      isPasswordDetail: false,
-      // 表格 - 数据
-      tableData: [],
-      // 表格 - 参数
-      table: {
-        stripe: true,
-        border: true,
-        _defaultHeader_: ["setcol"],
-      },
-      // 表格 - 分页
-      pageInfo: {
-        size: 15,
-        curr: 1,
-        total: 0,
-      },
-      // 表格 - 列参数
-      columns: columns,
-    };
-  },
-  mounted() {
-    this.searchList();
-  },
-
-  methods: {
-    restSearch() {
-      this.s_input = "";
-      this.select = "1";
-      this.parmValue = {
-        order_type: "2",
-        returnCode: "", //采购单号
-        orderCode: "", //退货单编号
-        returnStoreNum: "", //退货仓库编号
-        returnCompanyNum: "", //退货公司编号
-        apply_name: "", //申请人
-        start: "",
-        end: "",
-        status: "", //节点状态
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-      };
-      // 表格 - 分页
-      this.pageInfo = {
-        size: 15,
-        curr: 1,
-        total: 0,
-      };
-      this.searchList();
-    },
-
-    openModal(id, isDetail, sitem) {
-      this.showModel = true;
-      this.modelId = id;
-      this.isDetail = isDetail;
-      this.sitem = sitem;
-    },
-
-    async searchList() {
-      this.loading = true;
-      let model = JSON.parse(JSON.stringify(this.parmValue));
-      model.returnCode = this.select === "1" ? this.s_input : "";
-      model.orderCode = this.select === "2" ? this.s_input : "";
-      model.apply_name = this.select === "3" ? this.s_input : "";
-      const res = await asyncRequest.list(model);
-      if (res && res.code === 0 && res.data) {
-        this.tableData = res.data.list;
-        this.pageInfo.total = Number(res.data.count);
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-
-    async statusConfirm(id, status) {
-      let str = status === "1" ? "禁用" : "启用";
-      await this.$confirm("确定要改为" + str + "?", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          this.loading = true;
-          const model = {
-            id: id,
-            status: status === "1" ? "0" : "1",
-          };
-          const res = await asyncRequest.status(model);
-          if (res && res.code === 0) {
-            this.loading = false;
-            this.$notify.success({
-              title: "状态修改成功!",
-              message: "",
-            });
-            await this.searchList();
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-    //物流公司查询
-    async handleCompany(e) {
-      console.log(e, "要求传快递简称,不传id"); //
-      if (e && e.code) {
-        this.parmValue.postCompany = [e.shortName];
-        this.parmValue.page = 1;
-      }
-      await this.searchList();
-    },
-  
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.zxReturn {
-}
-</style>
-   

+ 0 - 0
src/views/sellOut/zxReturn/咨询-退货单


+ 0 - 107
src/views/sellOut/zxoutOrder/ShowDataTableColumns.js

@@ -1,107 +0,0 @@
-export default [
-  {
-    prop: "outCode",
-    label: "发货申请单号",
-  },
-  {
-    prop: "status",
-    label: "发货申请单状态",
-    _slot_: "status",
-  },
-  {
-    prop: "orderCode",
-    label: "销售订单编号",
-  },
-  {
-    prop: "order_type",
-    label: "订单类别",
-    _slot_: "order_type",
-  },
-  {
-    prop: "apply_name",
-    label: "申请人"
-  },
-  {
-    prop: "class_cat",
-    label: "商品分类",
-  },
-
-  {
-    prop: "good_code",
-    label: "商品编码",
-  },
-
-  {
-    prop: "good_name",
-    label: "商品名称",
-  },
-
-  {
-    prop: "post_name",
-    label: "快递公司",
-  },
-  {
-    prop: "post_code",
-    label: "物流编号",
-  },
-  {
-    prop: "post_fee",
-    label: "物流费用",
-  },
-  {
-    prop: "sendtime",
-    label: "发货时间",
-  },
-
-  {
-    prop: "send_num",
-    label: "发货数量",
-  },
- {
-    prop: "check_num",
-    label: "验收数量",
-  },
-
-  {
-    prop: "error_num",
-    label: "异常数量",
-  },
-  {
-    prop: "sale_price",
-    label: "商品单价",
-  },
-  {
-    prop: "total_price",
-    label: "发货申请单总价",
-  },
-  {
-    prop: "contactor",
-    label: "收货联系人",
-  },
-  {
-    prop: "mobile",
-    label: "收货联系人电话",
-  },
-  {
-    prop: "addr",
-    label: "收货地址",
-  },
-
-  // {
-  //   prop: "good_price",
-  //   label: "商品单价",
-  // },
-
- 
-  {
-    prop: "updatetime",
-    label: "更新时间",
-  },
-  {
-    prop: "addtime",
-    label: "创建时间",
-  },
-
-
-]
-

+ 0 - 63
src/views/sellOut/zxoutOrder/columns.js

@@ -1,63 +0,0 @@
-export default [
-  {
-    prop: "outCode",
-    label: "发货申请单编号",
-    width: "160"
-  },
-  {
-    prop: "apply_name",
-    label: "申请人",
-  },
-  {
-    prop: "orderCode",
-    label: "销售订单编号",
-    width: "160"
-  },
-  {
-    prop: "status",
-    label: "状态",
-    _slot_: "status",
-    width: "120px",
-  },
- 
-  {
-    prop: "send_num",
-    label: "出库总数",
-  },
-  {
-    prop: "good_code",
-    label: "商品编码",
-    width: "140"
-  },
-  {
-    prop: "good_name",
-    label: "商品名称",
-    width: "150"
-  },
-
-
-
-  {
-    prop: "customer_code",
-    label: "客户编码",
-    width: "150"
-  },
-  {
-    prop: "customer_name",
-    label: "客户名称",
-    width: "200"
-  },
-  {
-    prop: "addtime",
-    label: "添加时间",
-    width: 150,
-  },
-  {
-    prop: "",
-    label: "操作",
-    fixed: "right",
-    _noset_: true,
-    _slot_: "operation",
-    width: 50,
-  },
-]

+ 0 - 84
src/views/sellOut/zxoutOrder/components/addEdit.vue

@@ -1,84 +0,0 @@
-<template>
-  <el-dialog
-    title="新建售后申请"
-    :center="true"
-    align="left"
-    top="22vh"
-    width="1000px"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-    @close="showModelThis = false"
-  >
-  <el-card style="margin-top: -20px" v-loading="loading">
-      <add-edit-form
-        v-if="showModel"
-        :id="id"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @closeModel="handClick"
-        @refresh="refresh"
-      />
-    </el-card>
-  </el-dialog>
-</template>
-<script>
-import addEditForm from "./addEditForm.vue";
-export default {
-  name: "handover",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  components: {
-    addEditForm,
-  },
-  data() {
-    return {
-      sitem: null,
-      title: "",
-      showModelThis: this.showModel,
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-  methods: {
-    
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.title = "新建售后申请";
-        this.rulesThis = this.rules;
-      } else {
-        if (this.isDetail) {
-          this.rulesThis = {};
-        } else {
-          this.rulesThis = this.rules;
-        }
-      }
-      this.loading = false;
-    },
-    handClick(e) {
-      this.showModelThis = e;
-    },
-    refresh(e) {
-      this.showModelThis = e;
-      this.$emit("refresh", true);
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 89
src/views/sellOut/zxoutOrder/components/addEditA.vue

@@ -1,89 +0,0 @@
-<template>
-  <el-dialog
-    title="新建售后申请"
-    :center="true"
-    align="left"
-    top="14vh"
-    width="1000px"
-    :close-on-click-modal="false"
-    :visible.sync="showModelThis"
-    element-loading-text="拼命加载中"
-    element-loading-spinner="el-icon-loading"
-    element-loading-background="rgba(0, 0, 0, 0.8)"
-    @close="showModelThis = false"
-  >
-    <!-- <p>orderCode{{ sitem }}</p> -->
-    <!-- <p>outCode{{ outCode }}</p> -->
-
-
-    <el-card style="margin-top: -20px" v-loading="loading">
-      <add-edit-form-a
-        v-if="showModel"
-        :id="id"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @closeModel="handClick"
-        @refresh="refresh"
-      />
-    </el-card>
-  </el-dialog>
-</template>
-<script>
-import addEditFormA from "./addEditFormA";
-export default {
-  name: "handover",
-  props: ["showModel", "id", "isDetail", "sitem"],
-  components: {
-    addEditFormA,
-  },
-  data() {
-    return {
-      sitem: null,
-      title: "",
-      showModelThis: this.showModel,
-    };
-  },
-  watch: {
-    showModel: function (val) {
-      this.showModelThis = val;
-      if (val) {
-        this.initForm();
-      }
-    },
-    showModelThis(val) {
-      if (!val) {
-        this.$emit("cancel");
-      }
-    },
-  },
-  methods: {
-    
-    async initForm() {
-      this.loading = true;
-
-      if (this.id === "add") {
-        this.title = "新建售后申请";
-        this.rulesThis = this.rules;
-      } else {
-        if (this.isDetail) {
-          this.rulesThis = {};
-        } else {
-          this.rulesThis = this.rules;
-        }
-      }
-      this.loading = false;
-    },
-    handClick(e) {
-      this.showModelThis = e;
-    },
-    refresh(e) {
-      this.showModelThis = e;
-      this.$emit("refresh", true);
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 59
src/views/sellOut/zxoutOrder/components/addEditForm.vue

@@ -1,59 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row v-if="ruleForm">
-      <el-col :span="12" v-for="item in columnsForm" :key="item.label">
-        <el-form-item :label="item.label">
-          <el-input
-            disabled
-            v-model="ruleForm[item.prop]"
-            :placeholder="item.label"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import resToken from "@/mixins/resToken";
-import columnsForm from "./columnsForm";
-export default {
-  name: "handover",
-  props: ["id", "sitem", "newTime"],
-  mixins: [resToken],
-  data() {
-    return {
-      columnsForm: columnsForm,
-      loading: false,
-      ruleForm: null,
-      code: "",
-    };
-  },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  mounted() {
-    this.initForm();
-  },
-  methods: {
-    async initForm() {
-      this.loading = true;
-      this.ruleForm = this.sitem;
-      this.loading = false;
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 513
src/views/sellOut/zxoutOrder/components/addEditFormA.vue

@@ -1,513 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="80px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <!-- <p>orderCode{{ sitem }}</p> -->
-
-    <el-row>
-      <el-row>
-        <el-col :span="8">
-          <el-form-item label="发货总量" prop="send_num" required>
-            <el-input
-              disabled
-              v-model="ruleForm.send_num"
-              placeholder="发货总量"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="8">
-          <el-form-item label="异常数量" prop="anomalous_numbers">
-            <el-input
-              :disabled="disabled"
-              v-model="ruleForm.anomalous_numbers"
-              placeholder="异常数量"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="8">
-          <el-form-item label="期望意愿" prop="expect_wish">
-            <el-select
-              style="width: 100%"
-              :disabled="disabled"
-              v-model="ruleForm.expect_wish"
-              placeholder="期望意愿"
-            >
-              <el-option
-                v-for="item in expect_options"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-col>
-        <el-col :span="8">
-          <el-form-item label="异常原因" prop="anomalous_reason">
-            <el-select
-              style="width: 100%"
-              :disabled="disabled"
-              v-model="ruleForm.anomalous_reason"
-              placeholder="异常原因"
-            >
-              <el-option
-                v-for="item in reason_options"
-                :key="item.id"
-                :label="item.result"
-                :value="item.result_code"
-                :disabled="item.status == 0"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-col>
-        <el-col :span="16">
-          <el-form-item label="异常备注" prop="anomalous_remark">
-            <el-input
-              type="textarea"
-              placeholder="请输入异常原因备注"
-              v-model="ruleForm.anomalous_remark"
-              :disabled="disabled"
-              maxlength="250"
-              show-word-limit
-            />
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-      <el-col :span="24">
-        <el-form-item label="异常图片" prop="anomalous_images">
-          <div class="el-form-item-error-img">
-            <ul>
-              <li
-                class="images_li"
-                :style="getMargin_li()"
-                v-for="(item, index) in ruleForm.anomalous_images"
-                :key="item"
-              >
-                <img :src="item" alt="" style="width: 254px; height: 164px" />
-                <i
-                  class="el-icon-close"
-                  v-if="
-                    id === 'add' ||
-                    (status === '0' && powers.some((item) => item == '005'))
-                  "
-                  @click="imgClose(index)"
-                ></i>
-              </li>
-            </ul>
-            <div
-              class="btnupload"
-              :style="getMargin()"
-              v-if="ruleForm.anomalous_images.length < 5 && isShow"
-              style="position: relative"
-              @click="show = true"
-            >
-              <i class="el-icon-plus avatar-uploader-icon"></i>
-              <file-upload
-                class="Upload"
-                :accept="'.jpg,.png,.jpeg'"
-                :multiple="true"
-                :uploadcondition="beforeAvatarUpload"
-                @UploadErrorEvent="UploadErrorEvent"
-                @UploadSuccessEvent="UploadSuccessEvent"
-              />
-            </div>
-          </div>
-        </el-form-item>
-      </el-col>
-
-      <el-col :span="24" style="text-align: right">
-        <el-button
-          type="primary"
-          @click="submitForm"
-          v-if="
-            id === 'add' ||
-            (status === '0' && powers.some((item) => item == '005'))
-          "
-          >保 存</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isnumber } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-export default {
-  name: "handover",
-  props: ["id", "sitem", "showModelThis", "newTime", "orderCode", "outCode"],
-  mixins: [resToken],
-  data() {
-    const validatenumbers = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("异常数量不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("异常数量必须为数字"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      isShow: true,
-      loading: false,
-      disabled: true,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        send_num: "",
-        order_type: "1", //售后类型 1销售2咨询,
-        outCode: "", //
-        stock_out_numbers: "", //发货申请单编号
-        anomalous_numbers: "", //异常数量
-        anomalous_reason: "", //异常原因
-        expect_wish: "", //期望意愿
-        anomalous_images: [],
-        anomalous_remark: "", //异常备注
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        anomalous_numbers: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validatenumbers,
-          },
-        ],
-        anomalous_reason: [
-          {
-            required: true,
-            message: "请选择异常原因",
-            trigger: "change",
-          },
-        ],
-        expect_wish: [
-          {
-            required: true,
-            message: "请选择期望意愿",
-            trigger: "change",
-          },
-        ],
-        anomalous_images: [
-          {
-            type: "array",
-            required: true,
-            message: "异常图片不能为空!",
-            trigger: "change",
-          },
-        ],
-        anomalous_remark: [
-          {
-            required: true,
-            message: "请输入异常原因备注",
-            trigger: "blur",
-          },
-        ],
-      },
-      reason_options: [],
-      reason_value: "", //异常原因
-      expect_options: [
-        {
-          value: "1",
-          label: "退货",
-        },
-        {
-          value: "2",
-          label: "换货",
-        },
-        {
-          value: "3",
-          label: "改变售价",
-        },
-      ],
-      expect_value: "", //期望意愿
-      code: "",
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "handoverDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  mounted() {
-    this.getReason(); //获取异常原因
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    // async closeAddEdit() {
-    //   this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    //
-    // },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      this.status = "";
-      this.rulesThis = this.rules;
-      this.disabled = false;
-      await this.resetForm();
-      this.loading = false;
-    },
-
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          let { send_num } = this.sitem;
-          this.ruleForm = {
-            send_num: send_num || "",
-            anomalous_numbers: "", //异常数量
-            anomalous_reason: "", //异常原因
-            expect_wish: "", //期望意愿
-            anomalous_images: [],
-            outCode: this.code,
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          const { anomalous_numbers, send_num } = this.ruleForm;
-          if (parseInt(send_num) < parseInt(anomalous_numbers)) {
-            this.$message.warning("异常数量不能大于发货数量");
-            return false;
-          }
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          let _model = {
-            order_type: "1",
-            outCode: this.sitem.outCode,
-            orderCode: this.sitem.orderCode,
-            errorCode: model.anomalous_reason, //异常原因
-            num: model.anomalous_numbers,
-            remark: model.anomalous_remark,
-            except_code: model.expect_wish,
-            img: model.anomalous_images.toString(),
-          };
-
-          const res = await asyncRequest.add(_model);
-
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-
-        this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-
-    // 获取异常原因
-    async getReason() {
-      let model = {
-        type: "2",
-        page: 1,
-        size: 100,
-      };
-      const res = await asyncRequest.reasonList(model);
-      this.loading = false;
-      if (res && res.code === 0) {
-        this.reason_options = res.data.list;
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    // 异常原因
-    handleAnomalousReason(e) {
-      if (e) {
-        this.ruleForm.anomalous_reason = e;
-      } else {
-        this.ruleForm.anomalous_reason = "";
-      }
-      this.$refs.ruleForm.validateField("company_img");
-    },
-    //图片上传失败
-    UploadErrorEvent(res) {
-       if (res !== "break") {
-      this.$message.error("图片上传失败!");
-      this.$refs.ruleForm.validateField("anomalous_images");
-       }
-    },
-                   //图片上传成功
-  async  UploadSuccessEvent(data) {
-      const { url } = data;
-      if (url === "noToken") {
-        await this.logout();
-      } else {
-        this.ruleForm.anomalous_images.push(url);
-        this.$message.success("图片上传成功!");
-        this.$refs.ruleForm.validateField("anomalous_images");
-      }
-    },
-    //判断图片规格
-    beforeAvatarUpload(file) {
-      let isJPG = false,
-        isLt2M = false;
-      if (file) {
-        if (
-          file.type === "image/jpg" ||
-          file.type === "image/png" ||
-          file.type === "image/jpeg"
-        ) {
-          isJPG = true;
-        }
-        isLt2M = file.size / 1024 / 1024 < 1;
-        if (!isJPG) {
-          this.$message.error("图片格式不正确!");
-        }
-        if (!isLt2M) {
-          this.$message.error("图片大小不能超过 1MB!");
-        }
-      }
-
-      return isJPG && isLt2M;
-    },
-    imgClose(index) {
-      this.ruleForm.anomalous_images.splice(index, 1);
-      this.$refs.ruleForm.validateField("anomalous_images");
-    },
-    getMargin() {
-      if (this.ruleForm.anomalous_images.length == 0) {
-        return "margin:0;";
-      } else if (this.ruleForm.anomalous_images.length < 3) {
-        return "margin:0px 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-    getMargin_li() {
-      if (this.ruleForm.anomalous_images.length <= 3) {
-        return "margin:0 0 0 10px";
-      } else {
-        return "margin:10px 0 0 10px";
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.el-form-item-error-img {
-  width: 100%;
-  ul {
-    width: 100%;
-    li {
-      float: left;
-      border: 1px solid rgb(220, 223, 230);
-      // border-left: 0;
-      box-sizing: border-box;
-      width: 254px;
-      height: 164px;
-      line-height: 164px;
-      position: relative;
-      img {
-        display: inline-block;
-        width: 100%;
-        height: 100%;
-      }
-      .el-icon-close {
-        position: absolute;
-        top: 0;
-        right: 0;
-        z-index: 2;
-        width: 25px;
-        height: 25px;
-        text-align: center;
-        line-height: 25px;
-        font-size: 19px;
-        &:hover {
-          color: #63cbe7;
-        }
-      }
-    }
-  }
-}
-.images_li {
-  // width: 254px;
-  // height: 164px;
-  float: left;
-}
-.btnupload {
-  float: left;
-  border: 1px solid rgb(220, 223, 230);
-  // border-left: 0;
-  box-sizing: border-box;
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-}
-.Upload {
-  width: 254px;
-  height: 164px;
-  line-height: 164px;
-  text-align: center;
-  position: absolute;
-  line-height: 0px;
-  top: 0;
-  left: 0;
-  z-index: 2;
-  line-height: 164px;
-}
-.avatar-uploader-icon {
-  font-size: 33px;
-  color: #8c939d;
-  width: 50px;
-  height: 50px;
-  line-height: 50px;
-  text-align: center;
-}
-</style>

+ 0 - 26
src/views/sellOut/zxoutOrder/components/columnsForm.js

@@ -1,26 +0,0 @@
-export default [
-  {
-    prop: "class_cat",
-    label: "商品分类",
-  },
-  {
-    prop: "good_name",
-    label: "商品名称",
-  },
-  {
-    prop: "good_num",
-    label: "发货数量",
-  },
-  {
-    prop: "contactor",
-    label: "收货人",
-  },
-  {
-    prop: "mobile",
-    label: "收货联系电话",
-  },
-  {
-    prop: "addr",
-    label: "收货地址",
-  },
-]

+ 0 - 275
src/views/sellOut/zxoutOrder/components/express_feedback.vue

@@ -1,275 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-form-item label="退回仓库" prop="return_stock">
-        <el-col :span="4" style="width: 370px; padding: 0 0 0 10px">
-          <search-supplier
-            :size="searchSize"
-            :value="wsm_supplierNo"
-            :placeholder="'入库公司名称'"
-            :disabled="false"
-            :isDetail="false"
-            @searchChange="supplierChange"
-          />
-        </el-col>
-        <el-col :span="4" style="width: 220px; padding: 0 0 0 10px">
-          <search-stock
-            :size="searchSize"
-            :value="wsm_code"
-            :placeholder="'入库仓库名称'"
-            :disabled="false"
-            :isDetail="false"
-            :isRelation="true"
-            :companyCode="ruleForm.wsm_supplierNo"
-            @searchChange="stockChange"
-          />
-        </el-col>
-      </el-form-item>
-
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
-          >保 存</el-button
-        >
-        <!-- id === 'add' || (status === '0' && powers.some((item) => item == '005')) -->
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isMobile } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-import { isnumber } from "@/utils/validate.js";
-export default {
-  name: "purchase_check",
-  props: ["id", "showModelThis", "newTime", "returnCode"],
-  mixins: [resToken],
-  data() {
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      wsm_code: [],
-      wsm_supplierNo: [],
-      loading: false,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        wsm_supplierNo: "",
-        wsm_code: "",
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        return_stock: [
-          {
-            required: true,
-            trigger: "change",
-            message: "",
-          },
-        ],
-      },
-      pageInfo: {
-        size: 15,
-        curr: 1,
-        total: 0,
-      },
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "purchase_check"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  mounted() {
-    // this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    // async closeAddEdit() {
-    //   this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    //
-    // },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.status = "";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-        // await this.initData();
-      }
-      this.loading = false;
-    },
-
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.wsm_supplierNo = [];
-          this.ruleForm = {
-            return_store: "", //退回仓库
-            return_goods_addr: [], //退货地址
-            addr_detail: "", //退货详细地址
-            addressee: "", //收件人
-            addressee_phone: "", //收件人电话
-            express_require: "", //物流要求
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          let model = {
-            returnCode: this.returnCode,
-            wsm_code: this.ruleForm.wsm_code,
-          };
-          const res = await asyncRequest.afterFeed(model);
-
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "物流已反馈",
-              message: "",
-            });
-            this.$emit("refresh", false);
-            //   this.initForm();
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleStore(e) {
-      this.return_store_options.find((item) => {
-        if (item.value === e) {
-          this.ruleForm.return_goods_addr = item.return_goods_addr;
-          this.ruleForm.addr_detail = item.addr_detail;
-          this.ruleForm.addressee = item.addressee;
-          this.ruleForm.addressee_phone = item.addressee_phone;
-          this.$refs.ruleForm.validateField("addressee");
-          this.$refs.ruleForm.validateField("return_goods_addr");
-          this.$refs.ruleForm.validateField("addr_detail");
-          this.$refs.ruleForm.validateField("addressee_phone");
-        }
-      });
-      this.ruleForm.return_store = e;
-    },
-    async supplierChange(e) {
-      if (e && e.id) {
-        this.ruleForm.wsm_supplierNo = e.code;
-        this.wsm_supplierNo = [e.code];
-      } else {
-        this.ruleForm.wsm_supplierNo = "";
-        this.wsm_supplierNo = [];
-      }
-      this.ruleForm.wsm_code = "";
-      this.wsm_code = [];
-      // this.ruleForm.page = 1;
-      // this.pageInfo.curr = 1;
-      // await this.searchList();
-    },
-    async stockChange(e) {
-      if (e && e.id) {
-        this.ruleForm.wsm_code = e.code;
-        this.wsm_code = [e.code];
-      } else {
-        this.ruleForm.wsm_code = "";
-        this.wsm_code = [];
-      }
-      console.log(e);
-      // this.ruleForm.page = 1;
-      // this.pageInfo.curr = 1;
-      // await this.searchList();
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 234
src/views/sellOut/zxoutOrder/components/logisticsForm.vue

@@ -1,234 +0,0 @@
-<template>
-  <el-form
-    v-loading="loading"
-    :model="ruleForm"
-    :rules="rules"
-    status-icon
-    ref="ruleForm"
-    label-width="100px"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="发货总数" prop="send_num" required>
-          <el-input
-            disabled
-            placeholder="发货总数"
-            v-model="ruleForm.send_num"
-            maxlength="100"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="物流公司" prop="post_name">
-          <search-express
-            :value="ruleForm.post_name"
-            :placeholder="'物流公司'"
-            :names="''"
-            :disabled="
-              !(status === '0' && powers.some((item) => item == '045'))
-            "
-            :is-detail="false"
-            @searchChange="handleCompany"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="物流单号" prop="post_code">
-          <el-input
-            placeholder="物流单号"
-            :disabled="
-              !(status === '0' && powers.some((item) => item == '045'))
-            "
-            v-model="ruleForm.post_code"
-            maxlength="100"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="物流费用" prop="post_fee">
-          <el-input
-            placeholder="物流费用"
-            :disabled="
-              !(status === '0' && powers.some((item) => item == '045'))
-            "
-            v-model="ruleForm.post_fee"
-            maxlength="100"
-          >
-            <template slot="append">元</template>
-          </el-input>
-        </el-form-item>
-      </el-col>
-
-      <el-col
-        :span="24"
-        style="text-align: right"
-        v-if="status === '0' && powers.some((item) => item == '045')"
-      >
-        <el-button type="primary" :size="'mini'" @click="submitForm"
-          >保 存
-        </el-button>
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import asyncRequest from "@/apis/service/sellOut/zxoutOrder";
-import resToken from "@/mixins/resToken";
-import { isnumber, isnumber2, isAlphanumeric } from "@/utils/validate";
-export default {
-  name: "wsmInOrderAdd",
-  props: ["id", "sitem", "newTime"],
-  mixins: [resToken],
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxoutOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    const validatePrice = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("不能为空!"));
-      } else {
-        if (isnumber(value)) {
-          callback();
-        } else if (isnumber2(value)) {
-          callback();
-        } else {
-          callback(new Error("仅支持整数或两位小数!"));
-        }
-      }
-    };
-    const validateCode = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("不能为空!"));
-      } else {
-        if (!isAlphanumeric(value)) {
-          callback(new Error("仅支持字母和数字!"));
-        } else {
-          callback();
-        }
-      }
-    };
-
-    return {
-      loading: true,
-      status: "",
-      ruleForm: {
-        outCode: "",
-        send_num: "",
-        post_name: [],
-        post_code: "",
-        post_fee: "",
-        sendtime: "",
-      },
-      rules: {
-        post_name: {
-          type: "array",
-          required: true,
-          trigger: "change",
-          message: "请输入物流公司",
-        },
-        post_code: {
-          required: true,
-          validator: validateCode,
-          trigger: "blur",
-        },
-        post_fee: {
-          required: true,
-          validator: validatePrice,
-          trigger: "blur",
-        },
-      },
-    };
-  },
-  watch: {
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  mounted() {
-    this.initForm();
-  },
-  methods: {
-    async initForm() {
-      this.loading = true;
-      this.status = "";
-      await this.resetForm();
-      this.loading = false;
-    },
-
-    //初始化表单
-    async resetForm() {
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-
-          const { outCode, send_num, post_code, post_name, post_fee, status } =
-            this.sitem;
-          this.status = status;
-          this.ruleForm = {
-            outCode: outCode || "",
-            send_num: send_num || "",
-            post_name: post_name ? [post_name] : [],
-            post_code: post_code || "",
-            post_fee: post_fee || "",
-            sendtime: "",
-          };
-        }
-      });
-    },
-    // 保存更改
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          model.post_name = model.post_name.toString();
-          delete model["send_num"];
-          const res = await asyncRequest.salezxout(model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            this.$notify.success({
-              title: "添加成功",
-              message: "",
-            });
-            this.$emit("refresh"); //抛出事件给详情页。
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleCompany(e) {
-      if (e && e.code) {
-        this.ruleForm.post_name = [e.label];
-      } else {
-        this.ruleForm.post_name = [];
-      }
-      this.$refs.ruleForm.validateField("post_name");
-    },
-  },
-};
-</script>
-
-   <style lang="scss" scoped>
-.account {
-}
-</style>

+ 0 - 358
src/views/sellOut/zxoutOrder/components/purchase_check.vue

@@ -1,358 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="退回仓库" prop="return_store">
-          <el-select
-            style="width: 100%"
-            v-model="ruleForm.return_value"
-            placeholder="请选择退回仓库"
-            @change="handleStore"
-          >
-            <el-option
-              v-for="item in return_store_options"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-      </el-col>
-    </el-row>
-    <el-row>
-      <el-row>
-        <el-col :span="12">
-          <el-form-item label="退回地址" prop="return_goods_addr">
-            <select-area
-              :placeholder="'请选择省/市/区'"
-              :value="ruleForm.return_goods_addr"
-              :is-detail="id !== 'add'"
-              @selectChange="selectAreaAddr_code"
-            />
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="详细地址" prop="addr_detail">
-            <el-input
-              v-model="ruleForm.addr_detail"
-              placeholder="请输入退货详细地址"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人" prop="addressee">
-            <el-input
-              v-model="ruleForm.addressee"
-              placeholder="请输入收件人"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人电话" prop="addressee_phone">
-            <el-input
-              v-model="ruleForm.addressee_phone"
-              placeholder="请输入收件人电话"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
-          >保 存</el-button
-        >
-        <!-- id === 'add' ||
-            (status === '0' && powers.some((item) => item == '005')) -->
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isMobile } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-import { isnumber } from "@/utils/validate.js";
-export default {
-  name: "purchase_check",
-  props: ["id", "showModelThis", "newTime"],
-  mixins: [resToken],
-  data() {
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      loading: false,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        return_store: "", //退回仓库
-        return_goods_addr: [], //退货地址
-        addr_detail: "", //退货详细地址
-        addressee: "", //收件人
-        addressee_phone: "", //收件人电话
-        express_require: "", //物流要求
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        return_store: [
-          {
-            required: true,
-            trigger: "change",
-            message: "请选择退回仓库",
-          },
-        ],
-        addressee: [
-          {
-            required: true,
-            message: "请输入收件人",
-            trigger: "blur",
-          },
-        ],
-        return_goods_addr: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择退回地址所在省/市/区",
-            trigger: "change",
-          },
-        ],
-        addr_detail: [
-          {
-            required: true,
-            message: "请输入详细退货地址",
-            trigger: "blur",
-          },
-        ],
-        addressee: [
-          {
-            required: true,
-            message: "请输入收件人",
-            trigger: "blur",
-          },
-        ],
-        addressee_phone: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validatemobile,
-          },
-        ],
-        express_require: [
-          {
-            required: true,
-            trigger: "blur",
-            message: "请输入物流信息",
-          },
-        ],
-      },
-      return_store_options: [
-        {
-          value: "value1",
-          label: "供应商仓库",
-          return_goods_addr: ["110000", "110100", "110101"],
-          addr_detail: "三河道",
-          addressee: "张三",
-          addressee_phone: "13223223230",
-        },
-        {
-          value: "value2",
-          label: "自建仓/部门仓1",
-        },
-        {
-          value: "value3",
-          label: "自建仓/部门仓2",
-        },
-        {
-          value: "value4",
-          label: "自建仓/部门仓3",
-        },
-      ],
-      return_value: "", //退回仓库
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "purchase_check"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  mounted() {
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    // async closeAddEdit() {
-    //   this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    //
-    // },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.status = "";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-        // await this.initData();
-      }
-      this.loading = false;
-    },
-
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.ruleForm = {
-            return_store: "", //退回仓库
-            return_goods_addr: [], //退货地址
-            addr_detail: "", //退货详细地址
-            addressee: "", //收件人
-            addressee_phone: "", //收件人电话
-            express_require: "", //物流要求
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          this.loading = true;
-          const model = {
-            id: this.id,
-            resign_uid: rUid,
-            hand_uid: hUid,
-          };
-          let res = {};
-          if (this.id === "add") {
-            delete model["id"];
-            res = await asyncRequest.add(model);
-          } else {
-            res = await asyncRequest.update(model);
-          }
-
-          this.loading = false;
-          if (res && res.code === 0) {
-            const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title,
-              message: "",
-            });
-
-            this.$emit("refresh", false);
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleStore(e) {
-      this.return_store_options.find((item) => {
-        if (item.value === e) {
-          this.ruleForm.return_goods_addr = item.return_goods_addr;
-          this.ruleForm.addr_detail = item.addr_detail;
-          this.ruleForm.addressee = item.addressee;
-          this.ruleForm.addressee_phone = item.addressee_phone;
-          this.$refs.ruleForm.validateField("addressee");
-          this.$refs.ruleForm.validateField("return_goods_addr");
-          this.$refs.ruleForm.validateField("addr_detail");
-          this.$refs.ruleForm.validateField("addressee_phone");
-        }
-      });
-      this.ruleForm.return_store = e;
-    },
-    //退货省市区
-    selectAreaAddr_code(e) {
-      console.log(e);
-      this.ruleForm.return_goods_addr = e;
-      console.log(this.ruleForm);
-      this.$refs.ruleForm.validateField("return_goods_addr");
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 323
src/views/sellOut/zxoutOrder/components/returnExpress.vue

@@ -1,323 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    {{ returnCode }}
-    <el-row>
-      <el-col :span="12">
-        <el-form-item label="费用承担方" prop="express_bear">
-          <el-select
-            clearable
-            @change="handleChange"
-            v-model="ruleForm.express_bear"
-            placeholder="请选择"
-            style="width: 100%"
-          >
-            <el-option
-              v-for="item in options"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="物流公司" prop="express_company">
-          <search-express
-            :value="ruleForm.express_company"
-            :placeholder="'请选择退货物流'"
-            :names="''"
-            :disabled="false"
-            :is-detail="false"
-            @searchChange="handleCompany"
-          />
-        </el-form-item>
-      </el-col>
-      <el-col :span="12">
-        <el-form-item label="物流单号" prop="express_numbres">
-          <el-input
-            placeholder="请输入物流单号"
-            v-model="ruleForm.express_numbres"
-          ></el-input>
-        </el-form-item>
-      </el-col>
-      <el-col :span="12" v-if="isShow">
-        <el-form-item label="物流费用" prop="express_fee">
-          <el-input placeholder="请输入物流费用" v-model="ruleForm.express_fee">
-            <template slot="append">元</template>
-          </el-input>
-        </el-form-item>
-      </el-col>
-    </el-row>
-    <el-row>
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
-          >保 存</el-button
-        >
-        <!-- id === 'add' ||
-            (status === '0' && powers.some((item) => item == '005')) -->
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-import { isAlphanumeric, isnumber } from "@/utils/validate.js";
-export default {
-  name: "purchase_check",
-  props: ["id", "showModelThis", "newTime", "returnCode"],
-  mixins: [resToken],
-  data() {
-    const validateexpress = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("物流单号不能为空!"));
-      } else {
-        if (!isAlphanumeric(value)) {
-          callback(new Error("物流单号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    const validateexpressFee = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("物流费用不能为空!"));
-      } else {
-        if (!isnumber(value)) {
-          callback(new Error("物流费用只能为数字!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      options: [
-        {
-          value: "1",
-          label: "个人承担",
-        },
-        {
-          value: "2",
-          label: "公司承担",
-        },
-        {
-          value: "3",
-          label: "供应商承担",
-        },
-      ],
-      code: "",
-      isShow: false,
-      loading: false,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      resign_name: "", //离职人
-      hand_name: "", //交接人
-      ruleForm: {
-        post_company: "", //入参快递公司
-
-        express_bear: "", //物流费用承担方
-        express_company: [], //物流公司
-        express_numbres: "", //物流单号
-        express_fee: 0, //物流费用
-        page: 1,
-        size: 15,
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        express_bear: [
-          {
-            // type: "array",
-            required: true,
-            trigger: "change",
-            message: "请选择物流费用承担方",
-          },
-        ],
-        express_company: [
-          {
-            type: "array",
-            required: true,
-            trigger: "change",
-            message: "请选择退回仓库",
-          },
-        ],
-        express_numbres: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validateexpress,
-          },
-        ],
-        express_fee: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validateexpressFee,
-          },
-        ],
-      },
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "purchase_check"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-
-  mounted() {
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    //   关闭弹窗,直接隐藏表单
-    // async closeAddEdit() {
-    //   this.$emit("closeModel", false); //抛出一个事件,关闭弹窗
-    //
-    // },
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.status = "";
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-        // await this.initData();
-      }
-      this.loading = false;
-    },
-
-    async resetForm() {
-      this.resign_name = "";
-      this.hand_name = "";
-      this.status = "";
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.code = this.returnCode;
-          this.ruleForm = {
-            express_bear: "",
-            post_company: "", //入参快递公司
-            express_company: [], //物流公司
-            express_numbres: "", //物流单号
-            express_fee: 0, //物流费用
-            type: "",
-            name: "",
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        if (valid) {
-          let model = JSON.parse(JSON.stringify(this.ruleForm));
-          let _model = {
-            returnCode: this.code, //退货单号
-            own: model.express_bear, //费用承担方
-            company: model.post_company, //快递公司
-            post_code: model.express_numbres, //快递编号
-            post_fee: model.express_fee || 0, //快递费用
-          };
-          const res = await asyncRequest.afterPost(_model);
-          this.loading = false;
-          if (res && res.code === 0) {
-            // const title = this.id === "add" ? "添加成功!" : "修改成功!";
-            this.$notify.success({
-              title: res.message,
-              message: "",
-            });
-            console.log("抛出事件");
-            this.$emit("refresh");
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        } else {
-          console.log("error submit!!");
-          return false;
-        }
-      });
-    },
-    handleCompany(e) {
-      console.log(e);
-      if (e && e.code) {
-        this.ruleForm.post_company = e.shortName;
-        this.ruleForm.express_company = [e.code];
-        this.ruleForm.page = 1;
-      }
-    },
-    handleChange(e) {
-      if (e && e == "2") {
-        this.isShow = true;
-      } else {
-        this.isShow = false;
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 364
src/views/sellOut/zxoutOrder/components/supplier_feedback.vue

@@ -1,364 +0,0 @@
-<template>
-  <el-form
-    ref="ruleForm"
-    :loading="loading"
-    :model="ruleForm"
-    status-icon
-    :rules="rulesThis"
-    label-width="100px"
-    style="width: 100%"
-    class="demo-ruleForm"
-  >
-    <el-row>
-      <el-row>
-        <el-col :span="12">
-          <el-form-item label="是否同意" prop="whether_back">
-            <el-select
-              style="width: 100%"
-              v-model="ruleForm.whether_back"
-              placeholder="请选择是否同意退回"
-              @change="handleView"
-            >
-              <el-option
-                v-for="item in whether_back_options"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="反馈备注" prop="feedback_remark">
-            <el-input
-              type="textarea"
-              placeholder="请输入反馈备注"
-              v-model="ruleForm.feedback_remark"
-              maxlength="250"
-              show-word-limit
-            />
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-row v-if="ruleForm.whether_back === 'value1'">
-        <el-col :span="12">
-          <el-form-item label="退回地址" prop="return_goods_addr">
-            <select-area
-              :placeholder="'请选择省/市/区'"
-              :value="ruleForm.return_goods_addr"
-              :is-detail="id !== 'add'"
-              @selectChange="selectAreaAddr_code"
-            />
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="详细地址" prop="addr_detail">
-            <el-input
-              v-model="ruleForm.addr_detail"
-              placeholder="请输入退货详细地址"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人" prop="addressee">
-            <el-input
-              v-model="ruleForm.addressee"
-              placeholder="请输入收件人"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="收件人电话" prop="addressee_phone">
-            <el-input
-              v-model="ruleForm.addressee_phone"
-              placeholder="请输入收件人电话"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="物流要求" prop="express_require">
-            <el-input
-              v-model="ruleForm.express_require"
-              placeholder="请输入物流"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-      <el-col :span="24" style="text-align: right">
-        <el-button type="primary" @click="submitForm" v-if="true"
-          >保 存</el-button
-        >
-        <el-button
-          type="primary"
-          @click="statusConfirm('1', '发起审核流程')"
-          v-if="status === '0' && powers.some((item) => item == '012')"
-          >发起审核流程
-        </el-button>
-        <el-button
-          @click="statusConfirm('0', '取消审核流程')"
-          plain
-          v-if="status === '1' && powers.some((item) => item == '014')"
-          >取消审核流程</el-button
-        >
-        <el-button
-          @click="statusConfirm('-1', '作废该条信息')"
-          type="danger"
-          plain
-          v-if="
-            (status === '0' || status === '1') &&
-            powers.some((item) => item == '015')
-          "
-          >作废该条信息</el-button
-        >
-        <el-button
-          @click="statusConfirm('2', '通过审核')"
-          type="primary"
-          v-if="status === '1' && powers.some((item) => item == '016')"
-          >通过审核</el-button
-        >
-      </el-col>
-    </el-row>
-  </el-form>
-</template>
-<script>
-import { isMobile } from "@/utils/validate.js";
-import asyncRequest from "@/apis/service/sellOut/sellAfterApply";
-import resToken from "@/mixins/resToken";
-export default {
-  name: "supplier_feedback",
-  props: ["id", "showModelThis", "newTime"],
-  mixins: [resToken],
-  data() {
-    const validatemobile = (rule, value, callback) => {
-      if (value === "") {
-        callback(new Error("手机号不能为空!"));
-      } else {
-        if (!isMobile(value)) {
-          callback(new Error("手机号格式不正确!"));
-        } else {
-          callback();
-        }
-      }
-    };
-    return {
-      loading: false,
-      status: "", //存储详情接口返的状态
-      showModelThis: this.showModel,
-      ruleForm: {
-        whether_back: "", //是否同意退回
-        feedback_remark: "", //反馈备注
-        return_goods_addr: [], //退货地址
-        addr_detail: "", //退货详细地址
-        addressee: "", //收件人
-        addressee_phone: "", //收件人电话
-        express_require: "", //物流要求
-      },
-      rulesThis: this.rules,
-      // 验证规则
-      rules: {
-        whether_back: [
-          {
-            required: true,
-            trigger: "change",
-            message: "请选择是否同意退回",
-          },
-        ],
-        feedback_remark: [
-          {
-            required: true,
-            message: "请输入反馈备注",
-            trigger: "blur",
-          },
-        ],
-        return_goods_addr: [
-          {
-            type: "array",
-            required: true,
-            message: "请选择退回地址所在省/市/区",
-            trigger: "change",
-          },
-        ],
-        addr_detail: [
-          {
-            required: true,
-            message: "请输入详细退货地址",
-            trigger: "blur",
-          },
-        ],
-        addressee: [
-          {
-            required: true,
-            message: "请输入收件人",
-            trigger: "blur",
-          },
-        ],
-        addressee_phone: [
-          {
-            required: true,
-            trigger: "blur",
-            validator: validatemobile,
-          },
-        ],
-        express_require: [
-          {
-            required: true,
-            trigger: "blur",
-            message: "请输入物流信息",
-          },
-        ],
-      },
-      whether_back_options: [
-        {
-          value: "value1",
-          label: "同意退回",
-        },
-        {
-          value: "value2",
-          label: "拒绝退回",
-        },
-      ],
-    };
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "supplier_feedback"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  mounted() {
-    this.initForm();
-  },
-  watch: {
-    id: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-    newTime: function (val) {
-      if (val) {
-        this.initForm();
-      }
-    },
-  },
-  methods: {
-    closeAdd() {
-      this.showModelThis = false;
-    },
-    async initForm() {
-      this.loading = true;
-      if (this.id === "add") {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-      } else {
-        this.rulesThis = this.rules;
-        await this.resetForm();
-        // await this.initData();
-      }
-      this.loading = false;
-    },
-    // async initData() {
-    //   const res = await asyncRequest.detail({ id: this.id });
-    //   if (res && res.code === 0 && res.data) {
-    //     let { hand_name, resign_name, hand_uid, resign_uid, status } = res.data;
-    //     this.resign_name = resign_name;
-    //     this.hand_name = hand_name;
-    //     this.status = status;
-    //     this.ruleForm = {
-    //       hand_uid: hand_uid.split(","),
-    //       resign_uid: resign_uid.split(","),
-    //     };
-    //   } else if (res && res.code >= 100 && res.code <= 104) {
-    //     await this.logout();
-    //   } else {
-    //     this.$message.warning(res.message);
-    //   }
-    // },
-
-    async resetForm() {
-      // 重置
-      await this.$nextTick(() => {
-        if (this.$refs.ruleForm) {
-          this.$refs.ruleForm.resetFields();
-          this.$refs.ruleForm.clearValidate();
-          this.ruleForm = {
-            whether_back: "", //是否同意退回
-            feedback_remark: "", //反馈备注
-            return_goods_addr: [], //退货地址
-            addr_detail: "", //退货详细地址
-            addressee: "", //收件人
-            addressee_phone: "", //收件人电话
-            express_require: "", //物流要求
-          };
-        }
-      });
-    },
-    async submitForm() {
-      await this.$refs.ruleForm.validate(async (valid) => {
-        // if (valid) {
-        //   const { resign_uid, hand_uid } = this.ruleForm;
-        //   let rUid = resign_uid.toString(),
-        //     hUid = hand_uid.toString();
-        //   if (rUid === hUid) {
-        //     this.$message.error("离职人和接收人不能相同");
-        //     return;
-        //   }
-        //   this.loading = true;
-        //   const model = {
-        //     id: this.id,
-        //     resign_uid: rUid,
-        //     hand_uid: hUid,
-        //   };
-        //   let res = {};
-        //   if (this.id === "add") {
-        //     delete model["id"];
-        //     res = await asyncRequest.add(model);
-        //   } else {
-        //     res = await asyncRequest.update(model);
-        //   }
-
-        //   this.loading = false;
-        //   if (res && res.code === 0) {
-        //     const title = this.id === "add" ? "添加成功!" : "修改成功!";
-        //     this.$notify.success({
-        //       title,
-        //       message: "",
-        //     });
-
-        //     if (this.id === "add") {
-        //       this.showModelThis = false;
-        //       this.$emit("refresh", false);
-        //     } else {
-        //       this.initForm();
-        //     }
-        //   } else if (res && res.code >= 100 && res.code <= 104) {
-        //     await this.logout();
-        //   } else {
-        //     this.$message.warning(res.message);
-        //   }
-        // } else {
-        //   console.log("error submit!!");
-        //   return false;
-        // }
-      });
-    },
-    handleView(e) {
-      this.ruleForm.whether_back = e;
-      this.$refs.ruleForm.validateField("return_goods_addr");
-    },
-    //退货省市区
-    selectAreaAddr_code(e) {
-      this.ruleForm.return_goods_addr = e;
-      this.$refs.ruleForm.validateField("return_goods_addr");
-    },
-  },
-};
-</script>

+ 0 - 239
src/views/sellOut/zxoutOrder/detail.vue

@@ -1,239 +0,0 @@
-<template>
-  <div class="purchaseOrderDetail pagePadding">
-    <div
-      style="width: 100%"
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <!-- <p>{{ status }}---{{ powers }}</p> -->
-      <div class="detail-page-title">
-        <span>咨询发货申请单编号:</span><span v-if="sitem">{{ sitem.outCode }}</span>
-        <el-button
-          class="fr"
-          v-if="status === '2' && powers.some((item) => item == '049')"
-          type="primary"
-          plain
-          :size="'mini'"
-          style="margin: 0 0 0 10px"
-          @click="showModel = true"
-          >新建售后申请单
-        </el-button>
-      </div>
-      <!-- <status-bar
-        v-if="newTime !== ''"
-        :newTime="newTime"
-        :options="statusOptions"
-        :status="status"
-      /> -->
-       <el-tabs v-model="activeTabs">
-        <el-tab-pane label="业务详情" name="1">
-      <el-collapse v-model="activeNames" style="margin:-18px 0 0 0">
-        <el-collapse-item title="咨询发货申请单详情" name="1">
-            <show-data-table
-            :newTime="newTime"
-            v-if="newTime !== ''"
-            :sitem="sitem"
-            :columns="ShowDataTableColumns"
-          >
-            <template slot="status">
-              <el-tag
-                :size="'mini'"
-                :type="sitem.status == '0' ? 'warning' : ''"
-                v-text="
-                  (
-                          statusOptions.find((item) => item.value == sitem.status) ||
-                    {}
-                  ).label || '--'
-                "
-              ></el-tag>
-            </template>
-                <template slot="order_type">
-              <el-tag
-                :size="'mini'"
-                :type="''" >{{sitem.status==='1'?'发货申请单':"咨询发货申请单"}}</el-tag>
-            </template>
-          </show-data-table>
-          <!-- <add-edit-form
-            :sitem="sitem"
-            :newTime="newTime"
-            v-if="newTime != ''"
-          ></add-edit-form> -->
-        </el-collapse-item>
-        <el-collapse-item
-          title="填写物流"
-          name="2"
-          v-if="
-            (status === '0' && powers.some((item) => item == '045')) ||
-            status === '1' ||
-            status === '2'
-          "
-        >
-          <logistics-form
-            :sitem="sitem"
-            :newTime="newTime"
-            v-if="newTime != ''"
-            @refresh="initData()"
-          />
-        </el-collapse-item>
-        <el-collapse-item
-          title="客户验收"
-          name="3"
-          v-if="status === '1' && powers.some((item) => item == '052')"
-        >
-          <div class="tr" style="padding: 0 20px 20px 0">
-            <el-button
-              type="primary"
-              plain
-              :size="'mini'"
-              @click="customerCheck"
-              >客户已收到货</el-button
-            >
-          </div>
-        </el-collapse-item>
-      </el-collapse>
-      </el-tab-pane>
-        <el-tab-pane label="审批记录" name="2">
-          <process-time-line
-            v-if="newTime !== ''"
-            :newTime="newTime"
-            :type="'ZXCKD'"
-            :orderCode="sitem.outCode"
-          />
-        </el-tab-pane>
-      </el-tabs>
-      <div>
-        <add-Edit-A
-          :id="'add'"
-          :sitem="sitem"
-          :show-model="showModel"
-          :is-detail="false"
-          @refresh="initData"
-          @cancel="showModel = false"
-        />
-      </div>
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxoutOrder";
-import addEditForm from "./components/addEditForm.vue";
-import logisticsForm from "./components/logisticsForm";
-import addEditA from "./components/addEditA";
-import ShowDataTableColumns from "./ShowDataTableColumns";
-export default {
-  name: "zxoutOrderDetail",
-  mixins: [mixinPage, resToken],
-  components: {
-    addEditForm,
-    addEditA,
-    logisticsForm,
-  },
-  computed: {
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxoutOrderDetail"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    return {
-      activeTabs:"1",
-      activeNames: ["0", "1", "2", "3", "4", "10"],
-      status: "", //存储详情接口状态
-      statusList: [],
-      ShowDataTableColumns: ShowDataTableColumns,
-      sitem: null,
-      newTime: "",
-      showModel: false,
-      loading: false,
-      statusOptions: [
-        { value: "0", label: "待发货" },
-        { value: "1", label: "待验收" },
-        { value: "2", label: "已完成" },
-        // { value: "3", label: "已完成" },
-      ],
-      code: "",
-    };
-  },
-  mounted() {
-    this.code = this.$route.query.id;
-    this.initData();
-  },
-  methods: {
-    getNewTime() {
-      this.newTime = new Date().valueOf();
-    },
-    async setstatus() {
-      const model = {
-        orderCode: "",
-        status: "",
-        outCode: this.code,
-      };
-      let res = await asyncRequest.status(model);
-
-      if (res && res.code === 0) {
-        this.$notify.success({
-          title: "修改成功!",
-          message: "",
-        });
-        await this.initData();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async initData() {
-      let model = {
-        outCode: this.code,
-      };
-      const res = await asyncRequest.detail(model);
-      if (res && res.code === 0 && res.data) {
-        this.sitem = res.data;
-        const { can } = this.sitem;
-        this.sitem.class_cat = "";
-        if (can && can.length > 0) {
-          can.forEach((x, i) => {
-            this.sitem.class_cat += i === 0 ? x.name : "/" + x.name;
-          });
-        }
-        const { status } = res.data;
-        this.status = status;
-        this.getNewTime();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-    async customerCheck() {
-      let model = {
-        outCode: this.code,
-        orderCode: this.sitem.orderCode,
-        status: "3",
-      };
-
-      const res = await asyncRequest.status(model);
-      if (res && res.code === 0) {
-        await this.initData();
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.$message.warning(res.message);
-      }
-    },
-  },
-};
-</script>
-   
-   

+ 0 - 439
src/views/sellOut/zxoutOrder/index.vue

@@ -1,439 +0,0 @@
-<template>
-  <div class="zxoutOrder pagePadding">
-    <div
-      v-if="powers && powers.length > 0 && powers.some((item) => item == '001')"
-    >
-      <ex-table
-        v-loading="loading"
-        :table="table"
-        :data="tableData"
-        :columns="columns"
-        :page="pageInfo"
-        :size="size"
-        @page-curr-change="handlePageChange"
-        @page-size-change="handleSizeChange"
-        @screen-reset="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-        @screen-submit="
-          pageInfo.curr = 1;
-          parmValue.page = 1;
-          searchList();
-        "
-      >
-        <template #table-header="{}">
-          <div style="width: 100%">
-            <el-row style="padding: 0 0 0 80px">
-              <el-col :span="4" style="width: 291px">
-                <period-date-picker
-                  :width="'134px'"
-                  :size="searchSize"
-                  @timeReturned="handleTime"
-                />
-              </el-col>
-              <el-col :span="4" style="width: 400px; padding: 0px 0 0 10px">
-                <search-customer
-                  :value="customerCode"
-                  :size="searchSize"
-                  :placeholder="'客户公司名称'"
-                  @searchChange="customerChange"
-                />
-              </el-col>
-              <el-col :span="3" style="width: 66px; float: right">
-                <el-button
-                  :size="searchSize"
-                  type="primary"
-                  style="float: right; margin-left: 5px"
-                  @click="searchList"
-                >
-                  刷新
-                </el-button>
-              </el-col>
-            </el-row>
-            <el-row style="padding-top: 10px">
-              <el-col :span="4" style="width: 160px">
-                <el-select
-                  :size="searchSize"
-                  v-model="serviceValue"
-                  clearable
-                  placeholder="发货申请单状态"
-                  @change="
-                    pageInfo.curr = 1;
-                    parmValue.page = 1;
-                    searchList();
-                  "
-                >
-                  <el-option
-                    v-for="item in statusOptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-col>
-              <el-col :span="4" style="width: 450px; padding: 0 0 0 10px">
-                <el-input
-                  clearable
-                  :size="searchSize"
-                  placeholder="关键字"
-                  v-model="s_input"
-                  class="input-with-select"
-                >
-                  <el-select
-                    style="width: 140px"
-                    v-model="select"
-                    slot="prepend"
-                    placeholder="请选择"
-                  >
-                    <el-option label="发货申请单编号" value="1" />
-                    <el-option label="销售订单编号" value="2" />
-                    <el-option label="商品编号" value="3" />
-                    <el-option label="商品名称" value="4" />
-                    <el-option label="申请人" value="5" />
-                  </el-select>
-                  <el-button
-                    slot="append"
-                    icon="el-icon-search"
-                    @click="
-                      pageInfo.curr = 1;
-                      parmValue.page = 1;
-                      searchList();
-                    "
-                  ></el-button>
-                </el-input>
-              </el-col>
-              <el-col :span="4" style="width: 66px" class="fr">
-                <el-button
-                  type="warning"
-                  class="fr"
-                  :size="searchSize"
-                  @click="restSearch"
-                >
-                  重置
-                </el-button>
-              </el-col>
-            </el-row>
-          </div>
-        </template>
-        <template #status="{ scope }">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (statusOptions.find((item) => item.id == scope.row.status) || {})
-                .label || '--'
-            "
-          ></el-tag>
-        </template>
-        <!-- 费用承担方 -->
-        <template #post_own="{ scope }">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (
-                post_ownOptions.find((item) => item.id == scope.row.post_own) ||
-                {}
-              ).label || '--'
-            "
-          ></el-tag>
-        </template>
-        <!-- 期望意愿 -->
-        <template #except_code="{ scope }">
-          <el-tag
-            :size="tablebtnSize"
-            :type="scope.row.status == '0' ? 'warning' : ''"
-            v-text="
-              (
-                except_codeOptions.find(
-                  (item) => item.id == scope.row.except_code
-                ) || {}
-              ).label || '--'
-            "
-          ></el-tag>
-        </template>
-        <template #operation="{ scope }">
-          <el-tooltip
-            v-if="powers.some((item) => item == '007')"
-            effect="dark"
-            content="详情"
-            placement="top"
-          >
-            <i
-              class="el-icon-view tb-icon"
-              @click="routeGoto('zxoutOrderDetail', { id: scope.row.outCode })"
-            ></i>
-          </el-tooltip>
-        </template>
-      </ex-table>
-      <add-edit
-        :id="modelId"
-        :sitem="sitem"
-        :show-model="showModel"
-        :is-detail="isDetail"
-        @refresh="searchList"
-        @cancel="showModel = false"
-      />
-    </div>
-    <div v-else>
-      <no-auth></no-auth>
-    </div>
-  </div>
-</template>
-   <script>
-import mixinPage from "@/mixins/elPaginationHandle";
-import resToken from "@/mixins/resToken";
-import asyncRequest from "@/apis/service/sellOut/zxoutOrder";
-import addEdit from "./components/addEdit.vue";
-import columns from "./columns";
-import { mapGetters } from "vuex";
-
-export default {
-  name: "zxoutOrder",
-  mixins: [mixinPage, resToken],
-  components: {
-    addEdit,
-  },
-  computed: {
-    ...mapGetters(["tablebtnSize", "searchSize", "size"]),
-    powers() {
-      let tran =
-        this.$store.getters.btnList.find(
-          (item) => item.menu_route == "zxoutOrder"
-        ) || {};
-      if (tran && tran.action && tran.action.length > 0) {
-        return tran.action;
-      } else {
-        return [];
-      }
-    },
-  },
-  data() {
-    return {
-      select: "1",
-      s_input: "",
-      customerCode: [], //客户公司code
-      except_codeOptions: [
-        { id: "1", label: "退货" },
-        { id: "2", label: "换货" },
-        { id: "3", label: "改变售价" },
-      ],
-      post_ownOptions: [
-        { id: "1", label: "客户承担" },
-        { id: "2", label: "公司承担" },
-        { id: "3", label: "供应商承担" },
-      ],
-      sitem: null,
-      // 状态
-      statusOptions: [
-        { id: "0", label: "待发货" },
-        { id: "1", label: "已出库" },
-        { id: "2", label: "待验收" },
-        { id: "3", label: "已完成" },
-      ],
-      loading: true,
-      showModel: false,
-      isDetail: false,
-      modelId: 0,
-      parmValue: {
-        order_type: "2",
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-        orderCode: "",
-        apply_name: "",
-        status: "",
-        customer_code: "", //客户公司code
-        start: "",
-        end: "",
-        outCode: "",
-        good_name: "",
-        good_code: "",
-      },
-      tableData: [],
-      // 表格 - 数据
-      // tableData: [],
-      // 表格 - 参数
-      table: {
-        stripe: true,
-        border: true,
-        _defaultHeader_: ["setcol"],
-      },
-      // 表格 - 分页
-      pageInfo: {
-        size: 15,
-        curr: 1,
-        total: 0,
-      },
-      // 表格 - 列参数
-      columns: columns,
-      serviceOptions: [
-        //假数据
-        {
-          value: "0",
-          label: "待审核",
-        },
-        {
-          value: "1",
-          label: "待物流反馈",
-        },
-        {
-          value: "2",
-          label: "待退货",
-        },
-        {
-          value: "3",
-          label: "已退货",
-        },
-      ],
-      serviceValue: "", //售后申请处理状态
-      expectOptions: [
-        //假数据
-
-        {
-          value: "1",
-          label: "退货",
-        },
-        {
-          value: "2",
-          label: "换货",
-        },
-        {
-          value: "3",
-          label: "改变售价",
-        },
-      ],
-    };
-  },
-  mounted() {
-    this.searchList();
-  },
-
-  methods: {
-    restSearch() {
-      this.customerCode = [];
-
-      this.parmValue = {
-        order_type: "2",
-        page: 1, // 页码
-        size: 15, // 每页显示条数
-        orderCode: "",
-        apply_name: "",
-        status: "",
-        customer_code: "", //客户公司code
-        start: "",
-        end: "",
-        outCode: "",
-        good_name: "",
-        good_code: "",
-      };
-      // 表格 - 分页
-      this.pageInfo = {
-        size: 15,
-        curr: 1,
-        total: 0,
-      };
-      this.searchList();
-    },
-
-    openModal(id, isDetail, sitem) {
-      this.showModel = true;
-      this.modelId = id;
-      this.isDetail = isDetail;
-      this.sitem = sitem;
-    },
-
-    // 列表搜索
-    async searchList() {
-      this.loading = true;
-      let model = JSON.parse(JSON.stringify(this.parmValue));
-      model.outCode = this.select === "1" ? this.s_input : "";
-      model.orderCode = this.select === "2" ? this.s_input : "";
-      model.good_code = this.select === "3" ? this.s_input : "";
-      model.good_name = this.select === "4" ? this.s_input : "";
-      model.apply_name = this.select === "5" ? this.s_input : "";
-
-      const res = await asyncRequest.list(model);
-      if (res && res.code === 0 && res.data) {
-        this.tableData = res.data.list;
-        this.pageInfo.total = Number(res.data.count);
-      } else if (res && res.code >= 100 && res.code <= 104) {
-        await this.logout();
-      } else {
-        this.tableData = [];
-        this.pageInfo.total = 0;
-      }
-      this.loading = false;
-    },
-
-    async statusConfirm(id, status) {
-      let str = status === "1" ? "禁用" : "启用";
-      await this.$confirm("确定要改为" + str + "?", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(async () => {
-          this.loading = true;
-          const model = {
-            id: id,
-            status: status === "1" ? "0" : "1",
-          };
-          const res = await asyncRequest.status(model);
-          if (res && res.code === 0) {
-            this.loading = false;
-            this.$notify.success({
-              title: "状态修改成功!",
-              message: "",
-            });
-            await this.searchList();
-          } else if (res && res.code >= 100 && res.code <= 104) {
-            await this.logout();
-          } else {
-            this.$message.warning(res.message);
-          }
-        })
-        .catch(() => {
-          console.log("取消");
-        });
-    },
-    // 时间选择事件
-    async handleTime(e) {
-      if (e.startTime !== "") {
-        this.parmValue.start = e.startTime;
-      } else {
-        this.parmValue.start = "";
-      }
-      if (e.endTime !== "") {
-        this.parmValue.end = e.endTime;
-      } else {
-        this.parmValue.end = "";
-      }
-      if (this.parmValue.start !== "" && this.parmValue.end !== "") {
-        this.pageInfo.curr = 1;
-        this.parmValue.page = 1;
-        await this.searchList();
-      }
-    },
-    async customerChange(e) {
-      if (e && e.id) {
-        this.customerCode = [e.code];
-        this.parmValue.customer_code = e.code;
-      } else {
-        this.customerCode = [];
-        this.parmValue.customer_code = "";
-      }
-      this.pageInfo.curr = 1;
-      this.parmValue.page = 1;
-      await this.searchList();
-    },
-  },
-};
-</script>
-   <style lang="scss" scoped>
-.zxoutOrder {
-}
-</style>
-   

+ 0 - 32
src/views/sellOut/zxoutOrder/options.js

@@ -1,32 +0,0 @@
-export default {
-    serviceOption: [//假数据
-        {
-          value: "选项1",
-          label: "待业务审核",
-        },
-        {
-          value: "选项2",
-          label: "待供应商反馈",
-        },
-        {
-          value: "选项3",
-          label: "待采购反馈",
-        },
-        {
-          value: "选项4",
-          label: "待采购审核",
-        },
-        {
-          value: "选项5",
-          label: "处理已结束",
-        },
-        {
-          value: "d",
-          label: "业务已驳回",
-        },
-        {
-          value: "d",
-          label: "采购已驳回",
-        },
-      ],
-}

+ 0 - 0
src/views/sellOut/zxoutOrder/咨询-出库单


Some files were not shown because too many files changed in this diff