Parcourir la source

同一个计划内的核价单才能合并生成合同
去掉采购收货单中的收货单类型
采购订单中的采购类型改为采购订单类型
采购收货单根据采购的需求类型,确定走生产还是非生产的流程
采购收货单驳回到发起人后,点击通过,无反应
采购需求、采购计划、采购询价单增加名称字段,必填

Z il y a 2 ans
Parent
commit
628d4bfe72

+ 1 - 1
src/enum/dict.js

@@ -52,7 +52,7 @@ export default {
   销售类型: 'order_type',
   退货类型: 'sale_return_type',
   需求来源类型: 'requirement_source_type',
-  采购类型: 'purchase_type',
+  采购订单类型: 'purchase_type',
   退货类型: 'sale_return_order_type',
   质检状态: 'quality_control_code',
   质检结果: 'Qc_results_code',

+ 16 - 2
src/views/bpm/handleTask/components/businessOpportunity/submit.vue

@@ -203,7 +203,19 @@ export default {
       //技术员修改
       if ((this.taskDefinitionKey === 'technicianApprove' || this.taskDefinitionKey === 'techLeaderApprove') && status === 1) {
         let data = await this.getTableValue();
+        let requiredFiled = [
+          {
+            filed:'singleWeight',
+            name:'单重'
+          }
+        ]
+        let list = []
         let arr = data.map((item) => {
+          requiredFiled.forEach(i=>{
+            if(!item[i.filed]){
+              list.push(i.name)
+            }
+          })
           return {
             ...item,
             id: item.id,
@@ -217,11 +229,13 @@ export default {
             technicalAnswerName: item.technicalAnswerName
           };
         });
-        // console.log(arr,'dasdasd')
-        // return
+        console.log(arr);
         if (!arr) {
           return;
         }
+        if(list.length){
+          return this.$message.warning('请输入' + list.join(','))
+        }
         await updateProduct(arr);
       }
       //和销售主管审批

+ 295 - 267
src/views/bpm/handleTask/components/contact/contactDetailDialog.vue

@@ -1,6 +1,6 @@
 <template>
   <ele-modal
-  custom-class="ele-dialog-form long-dialog-form"
+    custom-class="ele-dialog-form long-dialog-form"
     :centered="true"
     v-if="visible"
     :visible.sync="visible"
@@ -25,7 +25,7 @@
                 label="客户分类:"
                 prop="categoryId"
               >
-                {{form.categoryName}}
+                {{ form.categoryName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
@@ -34,47 +34,57 @@
                 prop="deptId"
                 style="margin-bottom: 22px"
               >
-                {{otherForm.deptName}}
+                {{ otherForm.deptName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="业务员:" prop="salesmanId">
-                {{otherForm.salesmanName}}
+                {{ otherForm.salesmanName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="客户名称:" prop="name">
-                {{form.name}}
+                {{ form.name }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="客户代号:" prop="serialNo">
-                {{form.serialNo}}
+                {{ form.serialNo }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="客户简称:" prop="simpleName">
-                {{form.simpleName}}
+                {{ form.simpleName }}
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="法定代表人:" prop="legalPerson">
+                {{ form.legalPerson }}
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="注册资金:" prop="registeredCapital">
+                {{ form.registeredCapital }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="授信额度:" prop="authorizationLimit">
-                {{form.authorizationLimit}}
+                {{ form.authorizationLimit }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="单位电话:" prop="phone">
-                {{form.phone}}
+                {{ form.phone }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="地址:" prop="addressId">
-                {{form.addressName}}
+                {{ form.addressName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="详细地址:" prop="address">
-                {{form.address}}
+                {{ form.address }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
@@ -82,54 +92,60 @@
                 label="统一社会信用代码:"
                 prop="unifiedSocialCreditCode"
               >
-                {{form.unifiedSocialCreditCode}}
+                {{ form.unifiedSocialCreditCode }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="所属行业:" prop="industry">
-                {{form.industryFullName}}
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="企业类型:" prop="companyCategoryId">
-                {{form.companyCategoryName}}
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="登记日期:" prop="registerDate">
-                {{form.registerDate}}
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="经营范围:" prop="businessScope">
-                {{form.businessScope}}
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="主营产品:" prop="mainProduct">
-                {{form.mainProduct}}
+                {{ form.industryFullName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
-              <el-form-item
-                label="上级单位:"
-                prop="hasParentGroup"
-              >
-                {{ form.parentName }}
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item prop="businessLicenseFile" label="营业执照附件:">
-                <el-link v-if="form.businessLicenseFile && form.businessLicenseFile !== ''"
-                         type="primary" :underline="false"
-                         @click="downloadFile(form.businessLicenseFile)"> {{ form.businessLicenseFile.name }}</el-link>
-              </el-form-item>
-            </el-col>
-            <el-col :span="16">
-              <el-form-item label="备注:" prop="remark">
-                {{form.remark}}
+              <el-form-item label="营业类型:" prop="companyCategoryId">
+                {{ form.companyCategoryName }}
               </el-form-item>
             </el-col>
+              <el-col :span="8">
+                <el-form-item label="企业类型:" prop="companyCategoryId">
+                  {{ form.enterpriseTypeName }}
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="登记日期:" prop="registerDate">
+                  {{ form.registerDate }}
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="经营范围:" prop="businessScope">
+                  {{ form.businessScope }}
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="主营产品:" prop="mainProduct">
+                  {{ form.mainProduct }}
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item
+                  label="上级单位:"
+                  prop="hasParentGroup"
+                >
+                  {{ form.parentName }}
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item prop="businessLicenseFile" label="营业执照附件:">
+                  <el-link v-if="form.businessLicenseFile && form.businessLicenseFile !== ''"
+                           type="primary" :underline="false"
+                           @click="downloadFile(form.businessLicenseFile)"> {{ form.businessLicenseFile.name }}
+                  </el-link>
+                </el-form-item>
+              </el-col>
+              <el-col :span="16">
+                <el-form-item label="备注:" prop="remark">
+                  {{ form.remark }}
+                </el-form-item>
+              </el-col>
           </el-row>
         </el-form>
       </el-tab-pane>
@@ -147,16 +163,16 @@
           </template>
 
           <template v-slot:accountName="{ row }">
-            {{row.accountName}}
+            {{ row.accountName }}
           </template>
           <template v-slot:accountNo="{ row }">
-            {{row.accountNo}}
+            {{ row.accountNo }}
           </template>
           <template v-slot:bankName="{ row }">
-            {{row.bankName}}
+            {{ row.bankName }}
           </template>
           <template v-slot:interbankNo="{ row }">
-            {{row.interbankNo}}
+            {{ row.interbankNo }}
           </template>
         </ele-pro-table>
       </el-tab-pane>
@@ -180,19 +196,22 @@
           </template>
 
           <template v-slot:linkName="{ row }">
-            {{row.linkName}}
+            {{ row.linkName }}
           </template>
           <template v-slot:mobilePhone="{ row }">
-            {{row.mobilePhone}}
+            {{ row.mobilePhone }}
           </template>
           <template v-slot:phone="{ row }">
-            {{row.phone}}
+            {{ row.phone }}
           </template>
           <template v-slot:email="{ row }">
-            {{row.email}}
+            {{ row.email }}
+          </template>
+          <template v-slot:deptName="{ row }">
+            {{ row.deptName }}
           </template>
           <template v-slot:post="{ row }">
-            {{row.post}}
+            {{ row.post }}
           </template>
           <template v-slot:ifChief="{ row, $index }">
             <el-select v-model="row.ifChief" class="w100" disabled>
@@ -212,7 +231,7 @@
             ></DictSelection>
           </template>
           <template v-slot:remark="{ row }">
-            {{row.remark}}
+            {{ row.remark }}
           </template>
         </ele-pro-table>
       </el-tab-pane>
@@ -226,39 +245,39 @@
           <el-row>
             <el-col :span="8">
               <el-form-item label="结算方式:" prop="settlementMode">
-                {{otherForm.settlementModeName}}
+                {{ otherForm.settlementModeName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="税率:" prop="taxRate">
-                {{otherForm.taxRate}} %
+                {{ otherForm.taxRate }} %
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="折扣率:" prop="discount">
-                {{otherForm.discount}} %
+                {{ otherForm.discount }} %
               </el-form-item>
             </el-col>
-     
+
 
             <el-col :span="8">
               <el-form-item label="收件人:" prop="sender">
-                {{otherForm.sender}}
+                {{ otherForm.sender }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="收件人电话:" prop="senderPhone">
-                {{otherForm.senderPhone}}
+                {{ otherForm.senderPhone }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item label="收件人地址:" prop="addressId">
-                {{otherForm.addressName}}
+                {{ otherForm.addressName }}
               </el-form-item>
             </el-col>
             <el-col :span="8">
-              <el-form-item label="收件人详细地址:" prop="address" >
-                {{otherForm.address}}
+              <el-form-item label="收件人详细地址:" prop="address">
+                {{ otherForm.address }}
               </el-form-item>
             </el-col>
           </el-row>
@@ -273,217 +292,226 @@
 </template>
 
 <script>
-import {contactDetail,getInfoById} from '@/api/bpm/components/saleManage/contact';
+import {contactDetail, getInfoById} from '@/api/bpm/components/saleManage/contact';
 import {getFile} from '@/api/system/file';
 import dictMixins from '@/mixins/dictMixins';
 import {copyObj} from '@/utils/util';
 
 
 export default {
-    props: {
-      categoryTreeList: Array
-    },
-    mixins: [dictMixins],
-    components: {
-    },
-    data() {
-      let formDef = {
-          address: '',
-          addressId: 0,
-          addressName: '',
-          authorizationLimit: 0,
-          businessLicenseFile: {},
-          businessScope: '',
-          categoryId: '',
-          categoryName: '',
-          companyCategoryId: '',
-          companyCategoryName: '',
-          hasParentGroup: 0,
-          industry: '',
-          industryCode: '',
-          industryFullName: '',
-          mainProduct: '',
-          name: '',
-          officialIndustry: '',
-          phone: '',
-          registerDate: '',
-          remark: '',
-          serialNo: '',
-          simpleName: '',
-          type: 1,
-          unifiedSocialCreditCode: ''
-        };
-      let otherFormDef = {
-        settlementMode: '',
-        settlementModeName: '',
-        taxRate: 0,
-        address: '',
-        addressId: '',
-        deptId: '',
-        deptName: '',
-        discount: 0,
-        salesmanId: '',
-        salesmanName: '',
-        sender: '',
-        senderPhone: ''
-      };
-      return {
-        visible: false,
-        title: '客户详情',
-        row: {},
-        activeName: 'base',
-        formDef,
-        otherFormDef,
-        form: copyObj(formDef),
-        otherForm: copyObj(otherFormDef),
-        tableBankData: [],
-        tableLinkData: [],
-        ifChiefList: [
-          {
-            value: 0,
-            label: '否'
-          },
-          {
-            value: 1,
-            label: '是'
-          }
-        ],
-        bankColumns: [
-          {
-            type: 'index',
-            width: 55,
-            align: 'center'
-          },
-          {
-            label: '单位名称',
-            prop: 'accountName',
-            slot: 'accountName',
-            action: 'accountName',
-            headerSlot: 'accountNameHeader'
-          },
-          {
-            label: '银行账号',
-            prop: 'accountNo',
-            slot: 'accountNo',
-            action: 'accountNo'
-          },
-          {
-            label: '开户行',
-            prop: 'bankName',
-            slot: 'bankName',
-            action: 'bankName'
-          },
-          {
-            label: '银行银联号',
-            prop: 'interbankNo',
-            slot: 'interbankNo',
-            action: 'interbankNo'
-          },
-        ],
-        linkColumns: [
-          {
-            type: 'index',
-            width: 55,
-            align: 'center'
-          },
-          {
-            label: '姓名',
-            prop: 'linkName',
-            slot: 'linkName',
-            action: 'linkName',
-            headerSlot: 'linkNameHeader'
-          },
-          {
-            label: '手机',
-            prop: 'mobilePhone',
-            slot: 'mobilePhone',
-            action: 'mobilePhone',
-            headerSlot: 'mobilePhoneHeader'
-          },
-          {
-            label: '电话',
-            prop: 'phone',
-            slot: 'phone',
-            action: 'phone'
-          },
-          {
-            label: '微信号',
-            prop: 'wechat',
-            slot: 'wechat',
-            action: 'wechat'
-          },
-          {
-            label: '邮箱',
-            prop: 'email',
-            slot: 'email',
-            action: 'email'
-          },
-          {
-            label: '职务',
-            prop: 'post',
-            slot: 'post',
-            action: 'post'
-          },
-          {
-            label: '状态',
-            prop: 'status',
-            slot: 'status',
-            action: 'status',
-            headerSlot: 'statusHeader'
-          },
-          {
-            label: '是否首要',
-            prop: 'ifChief',
-            slot: 'ifChief',
-            action: 'ifChief'
-          },
-          {
-            label: '备注',
-            prop: 'remark',
-            slot: 'remark',
-            action: 'remark'
-          },
-        ],
-      };
+  props: {
+    categoryTreeList: Array
+  },
+  mixins: [dictMixins],
+  components: {},
+  data() {
+    let formDef = {
+      address: '',
+      addressId: 0,
+      addressName: '',
+      authorizationLimit: 0,
+      businessLicenseFile: {},
+      businessScope: '',
+      categoryId: '',
+      categoryName: '',
+      companyCategoryId: '',
+      companyCategoryName: '',
+      enterpriseTypeName: '',
+      enterpriseTypeId: '',
+      hasParentGroup: 0,
+      industry: '',
+      industryCode: '',
+      industryFullName: '',
+      mainProduct: '',
+      name: '',
+      officialIndustry: '',
+      phone: '',
+      registerDate: '',
+      remark: '',
+      serialNo: '',
+      simpleName: '',
+      legalPerson: '',
+      registeredCapital: '',
+      type: 1,
+      unifiedSocialCreditCode: ''
+    };
+    let otherFormDef = {
+      settlementMode: '',
+      settlementModeName: '',
+      taxRate: 0,
+      address: '',
+      addressId: '',
+      deptId: '',
+      deptName: '',
+      discount: 0,
+      salesmanId: '',
+      salesmanName: '',
+      sender: '',
+      senderPhone: ''
+    };
+    return {
+      visible: false,
+      title: '客户详情',
+      row: {},
+      activeName: 'base',
+      formDef,
+      otherFormDef,
+      form: copyObj(formDef),
+      otherForm: copyObj(otherFormDef),
+      tableBankData: [],
+      tableLinkData: [],
+      ifChiefList: [
+        {
+          value: 0,
+          label: '否'
+        },
+        {
+          value: 1,
+          label: '是'
+        }
+      ],
+      bankColumns: [
+        {
+          type: 'index',
+          width: 55,
+          align: 'center'
+        },
+        {
+          label: '单位名称',
+          prop: 'accountName',
+          slot: 'accountName',
+          action: 'accountName',
+          headerSlot: 'accountNameHeader'
+        },
+        {
+          label: '银行账号',
+          prop: 'accountNo',
+          slot: 'accountNo',
+          action: 'accountNo'
+        },
+        {
+          label: '开户行',
+          prop: 'bankName',
+          slot: 'bankName',
+          action: 'bankName'
+        },
+        {
+          label: '银行银联号',
+          prop: 'interbankNo',
+          slot: 'interbankNo',
+          action: 'interbankNo'
+        },
+      ],
+      linkColumns: [
+        {
+          type: 'index',
+          width: 55,
+          align: 'center'
+        },
+        {
+          label: '姓名',
+          prop: 'linkName',
+          slot: 'linkName',
+          action: 'linkName',
+          headerSlot: 'linkNameHeader'
+        },
+        {
+          label: '手机',
+          prop: 'mobilePhone',
+          slot: 'mobilePhone',
+          action: 'mobilePhone',
+          headerSlot: 'mobilePhoneHeader'
+        },
+        {
+          label: '电话',
+          prop: 'phone',
+          slot: 'phone',
+          action: 'phone'
+        },
+        {
+          label: '微信号',
+          prop: 'wechat',
+          slot: 'wechat',
+          action: 'wechat'
+        },
+        {
+          label: '邮箱',
+          prop: 'email',
+          slot: 'email',
+          action: 'email'
+        },
+        {
+          label: '部门',
+          prop: 'deptName',
+          slot: 'deptName',
+          action: 'deptName'
+        },
+        {
+          label: '职务',
+          prop: 'post',
+          slot: 'post',
+          action: 'post'
+        },
+        {
+          label: '状态',
+          prop: 'status',
+          slot: 'status',
+          action: 'status',
+          headerSlot: 'statusHeader'
+        },
+        {
+          label: '是否首要',
+          prop: 'ifChief',
+          slot: 'ifChief',
+          action: 'ifChief'
+        },
+        {
+          label: '备注',
+          prop: 'remark',
+          slot: 'remark',
+          action: 'remark'
+        },
+      ],
+    };
+  },
+  methods: {
+    async open(row) {
+      this.row = row;
+      this.visible = true;
+      await this._getById(row.id);
     },
-    methods: {
-      async open(row) {
-        this.row = row;
-        this.visible = true;
-        await this._getById(row.id);
-      },
 
-      cancel() {
-        this.$nextTick(() => {
-          // 关闭后,销毁所有的表单数据
-          this.form = copyObj(this.formDef),
+    cancel() {
+      this.$nextTick(() => {
+        // 关闭后,销毁所有的表单数据
+        this.form = copyObj(this.formDef),
           this.otherForm = copyObj(this.otherFormDef),
           this.tableBankData = []
-          this.tableLinkData = []
-          this.visible = false;
-        })
-      },
+        this.tableLinkData = []
+        this.visible = false;
+      })
+    },
 
-      async _getById(id) {
-        const data = await contactDetail(id);
-        this.form = data.base;
-        this.otherForm = data.other;
-        this.tableBankData = data.bankList;
-        this.tableLinkData = data.linkList;
+    async _getById(id) {
+      const data = await contactDetail(id);
+      this.form = data.base;
+      this.otherForm = data.other;
+      this.tableBankData = data.bankList;
+      this.tableLinkData = data.linkList;
 
-        if(this.tableLinkData && this.tableLinkData.length > 0){
-          this.tableLinkData.forEach(e => e.status = e.status+"");
-        }
+      if (this.tableLinkData && this.tableLinkData.length > 0) {
+        this.tableLinkData.forEach(e => e.status = e.status + "");
+      }
 
-        await getInfoById(this.form.categoryId).then((res) => {
-          this.$set(this.form,'categoryName', res.data.name)
-        });
-      },
+      await getInfoById(this.form.categoryId).then((res) => {
+        this.$set(this.form, 'categoryName', res.data.name)
+      });
+    },
 
-      downloadFile(file){
-        getFile({ objectName: file.storePath }, file.name);
-      },
+    downloadFile(file) {
+      getFile({objectName: file.storePath}, file.name);
+    },
 
-    }
-  };
+  }
+};
 </script>

+ 20 - 3
src/views/bpm/handleTask/components/inquiryManage/addDialog.vue

@@ -5,17 +5,28 @@
       <el-row>
         <el-col :span="12">
           <el-form-item
-            label="采购计划"
+            label="采购计划单名称"
             prop="planCode"
             style="margin-bottom: 22px"
           >
             <el-input
               @click.native="handParent"
-              v-model="form.planCode"
+              v-model="form.planName"
               placeholder="请选择"
             ></el-input>
           </el-form-item>
         </el-col>
+        <el-col :span="12">
+          <el-form-item
+            label="询价单名称"
+            prop="inquiryName"
+            style="margin-bottom: 22px"
+          >
+            <el-input
+              v-model="form.inquiryName"
+            ></el-input>
+          </el-form-item>
+        </el-col>
         <el-col :span="12">
           <el-form-item prop="remark" label="是否接受拆单" label-width="120px">
             <el-select
@@ -129,6 +140,8 @@
       let formDef = {
         id: '',
         planCode: null,
+        planName: null,
+        inquiryName: null,
         remark: null,
         planId: '',
         detailList: '',
@@ -166,7 +179,10 @@
           ],
           requireDeptId: [
             { required: true, message: '请选择需求部门', trigger: 'change' }
-          ]
+          ],
+          inquiryName: [
+            { required: true, message: '请输入询价单名称', trigger: 'blur' }
+          ],
         },
 
         // 提交状态
@@ -224,6 +240,7 @@
           this.$set(this.form, 'acceptUnpack', data.acceptUnpack);
           this.form.planId = data.id;
           this.form.planCode = data.planCode;
+          this.form.planName = data.planName;
 
           if (type == 'change') {
             this.supplierList.forEach((item) => {

+ 4 - 4
src/views/bpm/handleTask/components/inquiryManage/detailDialog.vue

@@ -24,13 +24,13 @@
       </headerTitle>
       <el-row>
         <el-col :span="12" style="height: 46px;">
-          <el-form-item label="采购计划:" prop="planCode">
+          <el-form-item label="采购计划单名称:" prop="planName">
             <el-link
               type="primary"
               :underline="false"
               @click="openPlanDetail(form)"
             >
-              {{ form.planCode }}
+              {{ form.planName }}
               </el-link
             >
           </el-form-item>
@@ -74,7 +74,7 @@
       style="margin-top: 15px;"
       status="Detail"
       :obj="item"
-      
+
     ></inquiryTable>
 
     <div slot="footer" class="footer">
@@ -237,7 +237,7 @@
         }
         // await this.getDetailData(data.requirementId);
       },
-     
+
     }
   };
 </script>

+ 12 - 1
src/views/bpm/handleTask/components/purchaseNeedManage/addDialog.vue

@@ -18,7 +18,14 @@
             </DictSelection>
           </el-form-item>
         </el-col>
-
+        <el-col :span="12" style="height: 58px">
+          <el-form-item label="需求单名称" prop="requirementName">
+            <el-input
+              v-model="form.requirementName"
+              placeholder="请输入"
+            ></el-input>
+          </el-form-item>
+        </el-col>
         <el-col :span="12">
           <el-form-item
             label="需求部门"
@@ -145,6 +152,7 @@
         requireDeptId: '',
         requireUserId: '',
         sourceCode: '',
+        requirementName: '',
         sourceId: '',
         sourceType: '',
         files: [],
@@ -174,6 +182,9 @@
           requireUserId: [
             { required: true, message: '请选择需求人', trigger: 'change' }
           ],
+          requirementName: [
+            { required: true, message: '请输入需求单名称', trigger: 'blur' }
+          ],
           useTo: [{ required: true, message: '请输入用途', trigger: 'change' }],
           sourceType: [
             { required: true, message: '请选择需求类型', trigger: 'change' }

+ 5 - 1
src/views/bpm/handleTask/components/purchaseNeedManage/detailDialog.vue

@@ -18,7 +18,11 @@
             {{ form.sourceTypeName }}
           </el-form-item>
         </el-col>
-
+        <el-col :span="12">
+          <el-form-item label="需求单名称:" prop="requirementName">
+            {{ form.requirementName }}
+          </el-form-item>
+        </el-col>
         <el-col :span="12">
           <el-form-item label="需求部门:" prop="requireDeptName">
             {{ detailData.requireDeptName }}

+ 43 - 6
src/views/bpm/handleTask/components/purchaseOrder/addDialog.vue

@@ -16,12 +16,12 @@
             />
           </el-form-item>
           <el-form-item
-            label="采购类型"
+            label="采购订单类型"
             prop="purchaseType"
             style="margin-bottom: 22px"
           >
             <DictSelection
-              dictName="采购类型"
+              dictName="采购订单类型"
               clearable
               v-model="form.purchaseType"
             >
@@ -44,6 +44,21 @@
               default-expand-all
             />
           </el-form-item>
+          <el-form-item
+            label="需求类型"
+            prop="sourceType"
+            style="margin-bottom: 22px"
+          >
+            <DictSelection
+              dictName="需求来源类型"
+              clearable
+              v-model="form.sourceType"
+              :disabled="isFlag"
+
+            >
+              <!--  v-if="form.sourceType != 1" -->
+            </DictSelection>
+          </el-form-item>
           <el-form-item prop="orderFiles" label="附件">
             <fileUpload
               v-model="form.orderFiles"
@@ -327,6 +342,7 @@
   import contractListDialog from '@/views/bpm/handleTask/components/saleOrder/contractListDialog.vue';
   import { listOrganizations } from '@/api/system/organization';
   import { copyObj } from '@/utils/util';
+  import {getpurchaseinquiry} from "@/api/bpm/components/purchasingManage/inquiryManage";
   export default {
     mixins: [dictMixins],
     components: {
@@ -357,7 +373,8 @@
         saleType: '',
         saleTypeName: '',
         totalAmount: '',
-
+        sourceType:'',
+        sourceTypeName:'',
         partaUnifiedSocialCreditCode: '',
         partbUnifiedSocialCreditCode: '',
         partaAddress: '',
@@ -382,6 +399,7 @@
 
       return {
         clearing: false, //是否清除合同
+        isFlag: false, //需求类型是否可以修改
         payWayOptions: [],
         delDetailIds: [],
         linkNameOptions: [],
@@ -401,7 +419,7 @@
             { required: true, message: '请选择交货日期', trigger: 'change' }
           ],
           purchaseType: [
-            { required: true, message: '请选择采购类型', trigger: 'change' }
+            { required: true, message: '请选择采购订单类型', trigger: 'change' }
           ],
           settlementMode: [
             { required: true, message: '请选择结算方式', trigger: 'change' }
@@ -415,6 +433,9 @@
           acceptUnpack: [
             { required: true, message: '请选择是否接受', trigger: 'change' }
           ],
+          sourceType: [
+            { required: true, message: '请选择需求类型', trigger: 'change' }
+          ],
           partaTel: [
             {
               required: true,
@@ -669,10 +690,21 @@
           contractName: obj.contractName,
           contractNo: obj.contractNo
         });
+
         this.getDetailData(obj.id);
+        //采购询价表
+        this.getPurchaseinquiry(obj.sourceId);
         this.$store.commit('order/setContractId', obj.id);
       },
-
+      //通过合同获取需求类型
+      async getPurchaseinquiry(sourceId){
+        let data = await getpurchaseinquiry(sourceId)
+        this.isFlag = !!data.sourceType
+        this.form = Object.assign({}, this.form, {
+          sourceType: data.sourceType,
+          sourceTypeName: data.sourceTypeName,
+        });
+      },
       //选择合同弹框
       handleContractBtn() {
         console.log('5556666');
@@ -685,6 +717,7 @@
       //清除合同
       clearContrcat() {
         this.clearing = true;
+        this.isFlag = false;
         let {
           id,
           projectName,
@@ -768,8 +801,12 @@
           let commitData = Object.assign({}, this.form, {
             productList: this.$refs.inventoryTable.getTableValue(),
             purchaseTypeName: this.getDictValue(
-              '采购类型',
+              '采购订单类型',
               this.form.purchaseType
+            ),
+            sourceTypeName: this.getDictValue(
+              '需求来源类型',
+              this.form.sourceType
             )
           });
           return commitData;

+ 8 - 1
src/views/bpm/handleTask/components/purchaseOrder/detailDialog.vue

@@ -26,7 +26,14 @@
             {{ form.requireDeptName }}
           </el-form-item>
           <el-form-item
-            label="采购类型:"
+            label="需求类型:"
+            prop="requireDeptName"
+            style="margin-bottom: 16px"
+          >
+            {{ form.sourceTypeName }}
+          </el-form-item>
+          <el-form-item
+            label="采购订单类型:"
             prop="purchaseTypeName"
             style="margin-bottom: 16px"
           >

+ 27 - 15
src/views/bpm/handleTask/components/purchaseOrder/invoice/addInvoiceDialog.vue

@@ -23,6 +23,12 @@
           >
             <span>{{ form.supplierName }}</span>
           </el-form-item>
+          <el-form-item
+            label="需求类型"
+            style="margin-bottom: 22px"
+          >
+            <span>{{ form.sourceTypeName }}</span>
+          </el-form-item>
           <el-form-item
             label="供应商联系人"
             prop="linkName"
@@ -42,18 +48,18 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item
-            label="收货单类型"
-            prop="receiveType"
-            style="margin-bottom: 22px"
-          >
-            <DictSelection
-              dictName="采购收货单类型"
-              clearable
-              v-model="form.receiveType"
-            >
-            </DictSelection>
-          </el-form-item>
+<!--          <el-form-item-->
+<!--            label="收货单类型"-->
+<!--            prop="receiveType"-->
+<!--            style="margin-bottom: 22px"-->
+<!--          >-->
+<!--            <DictSelection-->
+<!--              dictName="采购收货单类型"-->
+<!--              clearable-->
+<!--              v-model="form.receiveType"-->
+<!--            >-->
+<!--            </DictSelection>-->
+<!--          </el-form-item>-->
           <el-form-item
             label="供应商车辆号"
             prop="carNo"
@@ -68,7 +74,7 @@
               style="margin-bottom: 22px"
             >
             <span>{{form.orderNo}}</span>
-              
+
             </el-form-item> -->
 
           <el-form-item
@@ -141,7 +147,9 @@
         orderNo: '',
         orderId: '',
         sendNoteNo: '',
-        receiveType: ''
+        receiveType: '',
+        sourceTypeName: '',
+        sourceType: '',
       };
 
       return {
@@ -205,7 +213,9 @@
               orderNo,
               id,
               partbLinkName,
-              productList
+              productList,
+              sourceTypeName,
+              sourceType
             } = data;
             if (productList && productList.length > 0) {
               productList.forEach((v) => {
@@ -218,6 +228,8 @@
               linkName: partbLinkName,
               linkPhone: partbTel,
               orderNo,
+              sourceTypeName,
+              sourceType,
               orderId: id,
               productList
             });

+ 14 - 9
src/views/bpm/handleTask/components/purchaseOrder/invoice/detailDialog.vue

@@ -40,7 +40,12 @@
             >
               {{ form.linkPhone }}
             </el-form-item>
-
+            <el-form-item
+              label="需求类型:"
+              style="margin-bottom: 16px"
+            >
+              {{ form.sourceTypeName }}
+            </el-form-item>
             <!-- <el-form-item
             label="客户地址:"
             prop="partaAddress"
@@ -74,14 +79,14 @@
             </el-form-item>
           </el-col>
 
-          <el-col :span="12">
-            <el-form-item
-              label="采购单类型:"
-              prop="receiveTypeName"
-              style="margin-bottom: 16px"
-            >
-              {{ form.receiveTypeName }}
-            </el-form-item>
+<!--          <el-col :span="12">-->
+<!--            <el-form-item-->
+<!--              label="采购单类型:"-->
+<!--              prop="receiveTypeName"-->
+<!--              style="margin-bottom: 16px"-->
+<!--            >-->
+<!--              {{ form.receiveTypeName }}-->
+<!--            </el-form-item>-->
             <el-form-item
               label="车牌号:"
               prop="carNo"

+ 1 - 1
src/views/bpm/handleTask/components/purchaseOrder/invoice/orderListDialog.vue

@@ -93,7 +93,7 @@
           // },
           {
             prop: 'purchaseTypeName',
-            label: '采购类型',
+            label: '采购订单类型',
             align: 'center',
             showOverflowTooltip: true,
             minWidth: 140

+ 2 - 2
src/views/bpm/handleTask/components/purchaseOrder/invoice/submit.vue

@@ -200,10 +200,10 @@
         //发起人补充
         if (this.taskDefinitionKey === 'starter') {
           let arr = await this.getTableValue();
-          if (!arr.form) {
+          if (!arr) {
             return;
           }
-          let data = await UpdateReceiveInformation(arr.form);
+          let data = await UpdateReceiveInformation(arr);
           if (data.code != '0') {
             return;
           }

+ 8 - 3
src/views/bpm/handleTask/components/purchasePlanManage/detailDialog.vue

@@ -14,18 +14,23 @@
       </headerTitle>
       <el-row>
         <el-col :span="12" style="height: 40px">
-          <el-form-item label="采购需求:" prop="requirementCode">
+          <el-form-item label="需求单名称:" prop="requirementName">
             <el-link
               type="primary"
               :underline="false"
               @click="openDetail(form)"
             >
-              {{ form.requirementCode }}
+              {{ form.requirementName }}
             </el-link>
             <!-- {{ form.requirementCode }} -->
           </el-form-item>
         </el-col>
-
+        <el-col :span="12" style="height: 46px">
+          <el-form-item label="计划单名称:" prop="planName">
+            {{ form.planName }}
+            <!-- {{ form.requirementCode }} -->
+          </el-form-item>
+        </el-col>
         <el-col :span="12">
           <el-form-item label="负责人:" prop="responsibleName">
             {{ detailData.responsibleName }}