Эх сурвалжийг харах

Merge branch 'purchaseDev' into 'dev'

Purchase dev

See merge request new-business/drp-web!155
黄梓星 2 жил өмнө
parent
commit
2d53523191

+ 8 - 0
src/api/purchase/transferOrder.js

@@ -47,6 +47,14 @@ export function delOrder(ids) {
     method: 'delete',
     method: 'delete',
   })
   })
 }
 }
+// 调拨订单重传NC
+export function againToNC(data) {
+  return request({
+    url: `/pu/allot/toNC`,
+    method: 'post',
+    data: data
+  })
+}
 // 货权预留单详情
 // 货权预留单详情
 export function getResevedDetail(id) {
 export function getResevedDetail(id) {
   return request({
   return request({

+ 1 - 1
src/views/purchase/MaterialClassDivision/add.vue

@@ -351,7 +351,7 @@ export default {
       this.$emit('jugislist', true)
       this.$emit('jugislist', true)
       let queryParams = {
       let queryParams = {
         pageNum: 1,
         pageNum: 1,
-        pageSize: 5
+        pageSize: 10
       }
       }
       this.$emit('refresh', queryParams)
       this.$emit('refresh', queryParams)
     },
     },

+ 4 - 4
src/views/purchase/deliveryAddress/add.vue

@@ -19,7 +19,7 @@
               <el-input
               <el-input
                 v-model="basicForm.name"
                 v-model="basicForm.name"
                 size="mini"
                 size="mini"
-                :disabled="disable"
+                disabled
                 clearable
                 clearable
                 style="width: 200px"
                 style="width: 200px"
               />
               />
@@ -92,7 +92,7 @@
 
 
          <el-col :span="1.5">
          <el-col :span="1.5">
             <el-form-item label="启用">
             <el-form-item label="启用">
-              <el-select v-model="basicForm.status" size="mini" style="width: 200px" clearable :disabled="disable">
+              <el-select disabled v-model="basicForm.status" size="mini" style="width: 200px">
                 <el-option
                 <el-option
                   v-for="item in options"
                   v-for="item in options"
                   :key="item.value"
                   :key="item.value"
@@ -181,8 +181,8 @@ export default {
         contactsPhone: '',
         contactsPhone: '',
         materialClassify: '',
         materialClassify: '',
         materialClassifyName: '',
         materialClassifyName: '',
-        status: '',
-        sendStatus: '2',
+        status: 'Y',
+        sendStatus: 'N',
         remark: '',
         remark: '',
       },
       },
       referCondition: {
       referCondition: {

+ 76 - 34
src/views/purchase/purchase-order/add/index.vue

@@ -40,6 +40,7 @@ export default {
       },
       },
       tabColumns: NewTabColumns,
       tabColumns: NewTabColumns,
       tabName: "puOrderItemList",
       tabName: "puOrderItemList",
+      isCopy:false,
     };
     };
   },
   },
   computed: {},
   computed: {},
@@ -64,46 +65,56 @@ export default {
       },
       },
       deep: true,
       deep: true,
     },
     },
-    params: {
-      handler(nVal, oVal) {
-        // 组织变化
-        if (this.visible && nVal.puOrg != oVal.puOrg) {
-          for (const key in this.params) {
-            if (Array.isArray(this.params[key])) {
-              this.params[key] = [];
-            } else if (
-              key != "puOrg" &&
-              key != "puOrgName" &&
-              key != "buyer" &&
-              key != "buyerName" &&
-              key != "puDept" &&
-              key != "puDeptName" &&
-              key != "status"
-            ) {
-              this.params[key] = "";
-            } else {
-            }
-          }
-        }
-      },
-      deep: true,
-    },
+    // "params.puOrg": {
+    //   handler(nVal, oVal) {
+    //     console.log('nVal', nVal, 'oVal',oVal);
+    //     console.log(this.isCopy, 'this.isCopy');
+    //     // 组织变化
+    //     // if (this.visible && nVal.puOrg != oVal.puOrg) {
+    //     if (this.visible && oVal && nVal != oVal) {
+    //       for (const key in this.params) {
+    //         if (Array.isArray(this.params[key])) {
+    //           this.params[key] = [];
+    //         } else if (
+    //           key != "puOrg" &&
+    //           key != "puOrgName" &&
+    //           key != "buyer" &&
+    //           key != "buyerName" &&
+    //           key != "puDept" &&
+    //           key != "puDeptName" &&
+    //           key != "status"
+    //         ) {
+    //           this.params[key] = "";
+    //         } else {
+    //         }
+    //       }
+    //     }
+    //   },
+    //   deep: true,
+    // },
   },
   },
   methods: {
   methods: {
     beforeOpen() {
     beforeOpen() {
-      const { deptName, deptId, name, nickName, orgName, orgId } = this.$store.state.user;
-      this.params.puOrg = orgId;
-      this.params.puOrgName = orgName;
-      this.params.buyer = name;
-      this.params.buyerName = nickName;
-      this.params.puDept = deptId;
-      this.params.puDeptName = deptName;
-      this.params.billDate = new Date().Format('yyyy-MM-dd');
-      this.addTableRow();
+
+      if(!this.isCopy){
+
+        const { deptName, deptId, name, nickName, orgName, orgId } = this.$store.state.user;
+        this.params.puOrg = orgId;
+        this.params.puOrgName = orgName;
+        this.params.buyer = name;
+        this.params.buyerName = nickName;
+        this.params.puDept = deptId;
+        this.params.puDeptName = deptName;
+        this.params.billDate = new Date().Format('yyyy-MM-dd');
+        console.log(this.params,'this.params');
+        this.addTableRow();
+      }
     },
     },
-    setVisible(prop) {
+    setVisible(prop,iscopy) {
       this.visible = prop;
       this.visible = prop;
 
 
+      this.isCopy = iscopy;
+
       if(!this.visible){
       if(!this.visible){
         this.$refs['orderAddForm'].clearValidate();
         this.$refs['orderAddForm'].clearValidate();
       }
       }
@@ -372,6 +383,37 @@ export default {
         })
         })
         
         
       }
       }
+
+      // 组织
+      if(type === 'ORG_PARAM'){
+
+          for (const key in this.params) {
+
+            // if (Array.isArray(this.params[key])) {
+            if (key === 'puOrderItemList' || key === 'puOrderExecuteList') {
+
+              this.params[key] = [];
+
+            }
+            else if(key === 'sysFileRecordList'){
+              this.params[key] = [];
+            }
+             else if (
+              key != "puOrg" &&
+              key != "puOrgName" &&
+              key != "buyer" &&
+              key != "buyerName" &&
+              key != "puDept" &&
+              key != "puDeptName" &&
+              key != "status"
+            ) {
+              this.params[key] = "";
+            } else {
+            }
+          }
+        
+
+      }
     },
     },
 
 
     // 下拉框选择改变
     // 下拉框选择改变

+ 1 - 1
src/views/purchase/purchase-order/index.vue

@@ -117,7 +117,7 @@ export default {
     // 新增
     // 新增
     handleOpenAddDrawer(copyVal) {
     handleOpenAddDrawer(copyVal) {
       const { setVisible, setCopyParams } = this.$refs.addDrawerFef;
       const { setVisible, setCopyParams } = this.$refs.addDrawerFef;
-      setVisible(true);
+      setVisible(true,(copyVal.id && copyVal.id != '') ? true :false);
 
 
       copyVal.id && copyVal.id != '' && setCopyParams(copyVal.id);
       copyVal.id && copyVal.id != '' && setCopyParams(copyVal.id);
     },
     },

+ 1 - 1
src/views/purchase/task/close/index.vue

@@ -20,7 +20,7 @@ export default {
             try {
             try {
               this.loading = true;
               this.loading = true;
               const { demandItemId } = prop;
               const { demandItemId } = prop;
-              const { code } = await SHUTDOWN(demandItemId);
+              const { msg, code } = await SHUTDOWN(demandItemId);
               if (code === 200) {
               if (code === 200) {
                 resolve(true);
                 resolve(true);
                 this.$emit("success");
                 this.$emit("success");

+ 31 - 89
src/views/purchase/task/documents-return/index.vue

@@ -4,50 +4,42 @@ export default {
   name: "DocumentsReturnDialog",
   name: "DocumentsReturnDialog",
   components: {},
   components: {},
   data() {
   data() {
-    return {
-      size: "mini",
-      title: "退回需求",
-      visible: false,
-      loading: false,
-      params: { baskCause: "", documentIds: [] },
-    };
+    return {};
   },
   },
   computed: {},
   computed: {},
   watch: {},
   watch: {},
   methods: {
   methods: {
     //
     //
     open(prop) {
     open(prop) {
-      this.visible = true;
-      const documentIds = prop.map((item) => item.id);
-      this.params.documentIds = documentIds;
-    },
-    //
-    hide() {
-      this.visible = false;
-      this.params.baskCause = "";
-      this.params.documentIds = [];
-    },
-    //
-    async submit(prop) {
-      try {
-        // try
-        this.loading = true;
-        const { baskCause, documentIds } = prop;
-        const { msg, code } = await DOCUMENTSRETURN({
-          baskCause,
-          documentIds,
-        });
-        if (code === 200) {
-          this.hide();
-          this.$emit("success");
-          this.$notify.success({ title: msg });
-        }
-      } catch (err) {
-        // catch
-      } finally {
-        // finally
-        this.loading = false;
-      }
+      return new Promise((resolve, reject) => {
+        this.$prompt("请填写退单原因", "提示", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "info",
+        })
+          .then(async ({ value: baskCause }) => {
+            try {
+              this.loading = true;
+              const documentIds = prop.map((item) => item.id);
+              const { msg, code } = await DOCUMENTSRETURN({
+                baskCause,
+                documentIds,
+              });
+              if (code === 200) {
+                resolve(true);
+                this.$emit("success");
+                this.$notify.success(msg);
+              }
+            } catch (err) {
+              // catch
+              reject(false);
+              console.error(err);
+            } finally {
+              // finally
+            }
+          })
+          .catch(() => reject(false));
+      });
     },
     },
   },
   },
   created() {},
   created() {},
@@ -56,56 +48,6 @@ export default {
 };
 };
 </script>
 </script>
 
 
-<template>
-  <el-dialog
-    width="25%"
-    :show-close="false"
-    :visible.sync="visible"
-    @close="hide"
-  >
-    <div
-      slot="title"
-      style="display: flex; justify-content: space-between; align-items: center"
-    >
-      <span>{{ title }}</span>
-      <span>
-        <el-button
-          :size="size"
-          :disabled="loading"
-          circle
-          icon="el-icon-close"
-          @click="visible = false"
-        >
-        </el-button>
-        <el-button
-          :size="size"
-          :disabled="loading"
-          circle
-          icon="el-icon-check"
-          @click="submit(params)"
-        >
-        </el-button>
-      </span>
-    </div>
-    <el-alert
-      title="请填写退单原因"
-      type="info"
-      show-icon
-      :closable="false"
-      style="margin-bottom: 10px"
-    >
-    </el-alert>
-    <el-form
-      :size="size"
-      :model="params"
-      label-width="0px"
-      label-position="right"
-    >
-      <el-form-item prop="" label="">
-        <el-input v-model="params.baskCause" :size="size"></el-input>
-      </el-form-item>
-    </el-form>
-  </el-dialog>
-</template>
+<template></template>
 
 
 <style scoped></style>
 <style scoped></style>

+ 7 - 6
src/views/purchase/task/first-direct/index.vue

@@ -93,16 +93,17 @@ export default {
         <el-button
         <el-button
           :size="size"
           :size="size"
           circle
           circle
-          icon="el-icon-close"
-          @click="visible = false"
-        ></el-button>
-        <el-button
-          :size="size"
-          circle
           icon="el-icon-check"
           icon="el-icon-check"
           @click="submit(data)"
           @click="submit(data)"
         >
         >
         </el-button>
         </el-button>
+        <el-button
+          :size="size"
+          circle
+          type="danger"
+          icon="el-icon-close"
+          @click="visible = false"
+        ></el-button>
       </span>
       </span>
     </template>
     </template>
     <div v-for="(item, index) in data" :key="index" style="margin: 10px">
     <div v-for="(item, index) in data" :key="index" style="margin: 10px">

+ 5 - 4
src/views/purchase/task/modify-buyer/index.vue

@@ -76,16 +76,17 @@ export default {
           :size="size"
           :size="size"
           :disabled="loading"
           :disabled="loading"
           circle
           circle
-          icon="el-icon-close"
-          @click="visible = false"
+          icon="el-icon-check"
+          @click="submit(params)"
         >
         >
         </el-button>
         </el-button>
         <el-button
         <el-button
           :size="size"
           :size="size"
           :disabled="loading"
           :disabled="loading"
           circle
           circle
-          icon="el-icon-check"
-          @click="submit(params)"
+          type="danger"
+          icon="el-icon-close"
+          @click="visible = false"
         >
         >
         </el-button>
         </el-button>
       </span>
       </span>

+ 7 - 1
src/views/purchase/transferOrder/add.vue

@@ -596,6 +596,9 @@
         <el-button type="primary" size="mini" plain @click="copy" v-if="sonPageStu == 'check'">复制</el-button>
         <el-button type="primary" size="mini" plain @click="copy" v-if="sonPageStu == 'check'">复制</el-button>
       </el-col> -->
       </el-col> -->
       <el-col :span="1.5">
       <el-col :span="1.5">
+        <el-button type="danger" size="mini" plain @click="toNC" v-if="sonPageStu == 'check' && row.status == '2'">重传NC</el-button>
+      </el-col>
+      <el-col :span="1.5">
         <el-button type="primary" size="mini" plain @click="save" v-if="sonPageStu == 'add' || sonPageStu == 'edit'">保存</el-button>
         <el-button type="primary" size="mini" plain @click="save" v-if="sonPageStu == 'add' || sonPageStu == 'edit'">保存</el-button>
       </el-col>
       </el-col>
       <el-col :span="1.5" style="margin: 0 10px;">
       <el-col :span="1.5" style="margin: 0 10px;">
@@ -614,7 +617,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import {addOrder, getOrderDetail, editOrder, submitOrder} from '@/api/purchase/transferOrder.js'
+import {addOrder, getOrderDetail, editOrder, submitOrder, againToNC } from '@/api/purchase/transferOrder.js'
 import Refers from '@/components/Refers/refers.vue'
 import Refers from '@/components/Refers/refers.vue'
 // 用于回显参照框数据
 // 用于回显参照框数据
 import { getRefer } from '@/api/purchase/basic.js'
 import { getRefer } from '@/api/purchase/basic.js'
@@ -791,6 +794,9 @@ export default {
     copy() {
     copy() {
 
 
     },
     },
+    toNC() {
+      againToNC(this.row).then(res => {})
+    },
     submit() {
     submit() {
       this.basicForm.stAllotMaterialList = this.materialInfo
       this.basicForm.stAllotMaterialList = this.materialInfo
       this.basicForm.stAllotReceiveDeliverList = this.receiveInfo
       this.basicForm.stAllotReceiveDeliverList = this.receiveInfo