Jelajahi Sumber

销售报价单->生成合同时,自动带出客户简称到合同名称字段
(报价单只能单选)采购核价单->生成合同时,带出核价单名称,自动带出客户简称到合同名称字段(采购核价单可以多选,所以核价单字段用核价单名称逗号分隔)
核价管理详情产品清单不可以删除

Z 2 tahun lalu
induk
melakukan
b3d7d72e57

TEMPAT SAMPAH
dist.rar


+ 1 - 1
src/views/bpm/handleTask/components/inquiryManage/inquiryTable.vue

@@ -418,7 +418,7 @@
       label: '供应商产品名称',
       slot: 'supplierProductName'
     },
-    
+
     {
       width: 130,
       prop: 'modelType',

+ 13 - 7
src/views/bpm/handleTask/components/purchaseOrder/detailDialog.vue

@@ -367,6 +367,12 @@
             label: '型号',
             slot: 'modelType'
           },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            slot: 'supplierMark',
+          },
           {
             width: 120,
             prop: 'specification',
@@ -401,13 +407,13 @@
               return _row.totalPrice + '元';
             }
           },
-
-          {
-            width: 120,
-            prop: 'deliveryDays',
-            label: '交期(天)',
-            slot: 'deliveryDays'
-          },
+          //
+          // {
+          //   width: 120,
+          //   prop: 'deliveryDays',
+          //   label: '交期(天)',
+          //   slot: 'deliveryDays'
+          // },
           {
             width: 160,
             prop: 'deliveryDeadline',

+ 37 - 8
src/views/bpm/handleTask/components/purchaseOrder/inventoryTable.vue

@@ -49,6 +49,14 @@
             <el-input v-model="scope.row.productCode" disabled></el-input>
           </el-form-item>
         </template>
+        <template v-slot:supplierMark="scope">
+          <el-form-item
+            style="margin-bottom: 20px"
+            :prop="'datasource.' + scope.$index + '.productCode'"
+          >
+            <el-input v-model="scope.row.supplierMark"></el-input>
+          </el-form-item>
+        </template>
         <template v-slot:productCategoryName="scope">
           <el-form-item
             style="margin-bottom: 20px"
@@ -272,7 +280,21 @@
             </el-date-picker>
           </el-form-item>
         </template>
-
+        <template v-slot:headerDeadline="{ column }">
+          <span class="is-required">{{ column.label }}</span>
+        </template>
+        <template v-slot:headerSupplierMark="{ column }">
+          <span class="is-required">{{ column.label }}</span>
+        </template>
+        <template v-slot:headerProductName="{ column }">
+          <span class="is-required">{{ column.label }}</span>
+        </template>
+        <template v-slot:headerTotalCount="{ column }">
+          <span class="is-required">{{ column.label }}</span>
+        </template>
+        <template v-slot:headerSinglePrice="{ column }">
+          <span class="is-required">{{ column.label }}</span>
+        </template>
         <!-- 操作列 -->
         <template v-slot:action="{ row }">
           <el-popconfirm
@@ -372,6 +394,13 @@
             label: '型号',
             slot: 'modelType'
           },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            headerSlot: 'headerSupplierMark',
+            slot: 'supplierMark'
+          },
           {
             width: 120,
             prop: 'specification',
@@ -403,12 +432,12 @@
             label: '合计',
             slot: 'totalPrice'
           },
-          {
-            width: 80,
-            prop: 'deliveryDays',
-            label: '交期(天)',
-            slot: 'deliveryDays'
-          },
+          // {
+          //   width: 80,
+          //   prop: 'deliveryDays',
+          //   label: '交期(天)',
+          //   slot: 'deliveryDays'
+          // },
           {
             width: 160,
             prop: 'deliveryDeadline',
@@ -554,7 +583,7 @@
       changeParent(obj, idx) {
         console.log(obj, '33333');
         console.log(idx);
-       
+
         this.$set(this.form.datasource[idx], 'categoryName', obj.name);
         this.$set(
           this.form.datasource[idx],

+ 7 - 0
src/views/bpm/handleTask/components/purchaseOrder/invoice/detailDialog.vue

@@ -78,6 +78,7 @@
               </div>
             </el-form-item>
           </el-col>
+          <el-col :span="12">
 
 <!--          <el-col :span="12">-->
 <!--            <el-form-item-->
@@ -244,6 +245,12 @@
             label: '型号',
             slot: 'modelType'
           },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            slot: 'supplierMark',
+          },
           {
             width: 120,
             prop: 'specification',

+ 6 - 0
src/views/bpm/handleTask/components/purchaseOrder/invoice/inventoryTable.vue

@@ -203,6 +203,12 @@
             label: '型号',
             slot: 'modelType'
           },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            slot: 'supplierMark',
+          },
           {
             width: 120,
             prop: 'specification',

+ 88 - 85
src/views/bpm/handleTask/components/purchaseOrder/submit.vue

@@ -24,7 +24,7 @@
         type="success"
         size="mini"
         @click="handleAudit(1)"
-        >通过
+      >通过
       </el-button>
       <el-button
         icon="el-icon-circle-close"
@@ -32,7 +32,7 @@
         size="mini"
         @click="handleAudit(0)"
         v-if="!['starter', 'starterFillApprove'].includes(taskDefinitionKey)"
-        >驳回
+      >驳回
       </el-button>
 
       <!-- <el-button
@@ -63,101 +63,104 @@
 </template>
 
 <script>
-  import { UpdateInformation } from '@/api/bpm/components/purchasingManage/purchaseOrder';
-  import { approveTaskWithVariables } from '@/api/bpm/task';
-  import { listAllUserBind } from '@/api/system/organization';
+import {UpdateInformation} from '@/api/bpm/components/purchasingManage/purchaseOrder';
+import {approveTaskWithVariables} from '@/api/bpm/task';
+import {listAllUserBind} from '@/api/system/organization';
 
-  // 流程实例的详情页,可用于审批
-  export default {
-    name: '',
-    components: {
-      //   Parser
+// 流程实例的详情页,可用于审批
+export default {
+  name: '',
+  components: {
+    //   Parser
+  },
+  props: {
+    businessId: {
+      default: ''
     },
-    props: {
-      businessId: {
-        default: ''
-      },
-      taskId: {
-        default: ''
-      },
-      id: {
-        default: ''
-      },
-      id: {
-        default: ''
-      },
-      taskDefinitionKey: {
-        default: ''
-      }
+    taskId: {
+      default: ''
     },
-    data() {
-      return {
-        form: {
-          technicianId: '',
-          reason: ''
-        },
-        userOptions: []
-      };
+    id: {
+      default: ''
     },
-    created() {
-      this.userOptions = [];
-      listAllUserBind().then((data) => {
-        this.userOptions.push(...data);
-      });
+    id: {
+      default: ''
     },
-    methods: {
-      /** 处理转办审批人 */
-      handleUpdateAssignee() {
-        this.$emit('handleUpdateAssignee');
-      },
-      /** 退回 */
-      handleBackList() {
-        this.$emit('handleBackList');
+    taskDefinitionKey: {
+      default: ''
+    }
+  },
+  data() {
+    return {
+      form: {
+        technicianId: '',
+        reason: ''
       },
+      userOptions: []
+    };
+  },
+  created() {
+    this.userOptions = [];
+    listAllUserBind().then((data) => {
+      this.userOptions.push(...data);
+    });
+  },
+  methods: {
+    /** 处理转办审批人 */
+    handleUpdateAssignee() {
+      this.$emit('handleUpdateAssignee');
+    },
+    /** 退回 */
+    handleBackList() {
+      this.$emit('handleBackList');
+    },
 
-      async handleAudit(status) {
-        //发起人补充
-        if (this.taskDefinitionKey === 'starter') {
-          let arr = await this.getTableValue();
-          if (!arr) {
-            return;
-          }
-
-          let data = await UpdateInformation(arr);
-          if (data.code != '0') {
-            return;
-          }
+    async handleAudit(status) {
+      //发起人补充
+      if (this.taskDefinitionKey === 'starter') {
+        let arr = await this.getTableValue();
+        let isFlag = arr.productList.some(item => item.supplierMark == '')
+        if (isFlag) {
+          return this.$message.warning('请输入供应商代号')
         }
-        this._approveTaskWithVariables(status);
-      },
-      async _approveTaskWithVariables(status) {
-        let variables = {
-          pass: !!status
-        };
-
-        approveTaskWithVariables({
-          id: this.taskId,
-          reason: this.form.reason,
-          variables
-        }).then((res) => {
-          if (res.data.code != '-1') {
-            this.$emit('handleAudit', {
-              status,
-              title: status === 0 ? '驳回' : ''
-            });
-          }
-        });
-      },
+        if (!arr) {
+          return;
+        }
+        let data = await UpdateInformation(arr);
+        if (data.code != '0') {
+          return;
+        }
+      }
+      this._approveTaskWithVariables(status);
+    },
+    async _approveTaskWithVariables(status) {
+      let variables = {
+        pass: !!status
+      };
 
-      getTableValue() {
-        return new Promise((resolve, reject) => {
-          this.$emit('getTableValue', async (data) => {
-            resolve(await data);
+      approveTaskWithVariables({
+        id: this.taskId,
+        reason: this.form.reason,
+        variables
+      }).then((res) => {
+        if (res.data.code != '-1') {
+          this.$emit('handleAudit', {
+            status,
+            title: status === 0 ? '驳回' : ''
           });
+        }
+      });
+    },
+
+    getTableValue() {
+      return new Promise((resolve, reject) => {
+        this.$emit('getTableValue', async (data) => {
+          resolve(await data);
         });
-      }
+      });
     }
-  };
+  }
+};
 </script>
 
 <style lang="scss"></style>