浏览代码

修改一个单位对应多个联系人、结项、临时保存等问题

yuhan 1 年之前
父节点
当前提交
84d01025fe

+ 9 - 1
itdmWeb/src/views/module-iTDM/weituo/ItdmWeituoInfoList.vue

@@ -80,7 +80,10 @@
         </template>
         </template>
 
 
         <span slot="action" slot-scope="text, record">
         <span slot="action" slot-scope="text, record">
-          <a @click="handleEdit(record)">编辑</a>
+          <!-- <a-popconfirm :title="record.completeStatus == 0 ? '确定该委托项目已完结吗,完结后不可修改': '该委托项目已完结,不可修改'" @confirm="() => handleWancheng(record)">
+            <a>{{record.completeStatus == 0 ? '未完结': '已完结'}}</a>
+          </a-popconfirm> -->
+          <a @click="handleEdit(record)" :disabled="record.shenheStatus === '0' || record.shenheStatus === '1'">编辑</a>
 
 
           <a-divider type="vertical" />
           <a-divider type="vertical" />
           <a-dropdown>
           <a-dropdown>
@@ -193,6 +196,11 @@ export default {
           scopedSlots: {customRender: 'fileSlot'}
           scopedSlots: {customRender: 'fileSlot'}
         },
         },
         {
         {
+          title:'审核状态',
+          align:"center",
+          dataIndex: 'shenheStatus_dictText',
+        },
+        {
           title: '操作',
           title: '操作',
           dataIndex: 'action',
           dataIndex: 'action',
           align:"center",
           align:"center",

+ 45 - 13
itdmWeb/src/views/module-iTDM/weituo/ItdmWeituoInfoWanchengList.vue

@@ -130,7 +130,23 @@ export default {
         {
         {
           title:'委托编号',
           title:'委托编号',
           align:"center",
           align:"center",
-          dataIndex: 'weituoNo'
+          dataIndex: 'weituoNo',
+          customRender: (value, row, index) => {
+            console.log(value, row, index)
+            const obj = {
+              children: value,
+              attrs: {},
+            };
+            let arr = this.dataSource.filter((res) => {
+              return res.weituoNo == row.weituoNo;
+            });
+            if(row.weituoNo !== this.dataSource[index - 1].weituoNo){
+              obj.attrs.rowSpan = arr.length
+            } else {
+              obj.attrs.rowSpan = 0
+            }
+            return obj
+          },
         },
         },
         {
         {
           title:'委托单位名称',
           title:'委托单位名称',
@@ -138,25 +154,41 @@ export default {
           dataIndex: 'weituoClient'
           dataIndex: 'weituoClient'
         },
         },
         {
         {
-          title:'委托单位地址',
+          title:'试验项目',
           align:"center",
           align:"center",
-          dataIndex: 'weituoAddress'
+          dataIndex: 'testItems'
         },
         },
         {
         {
-          title:'委托项目状态',
+          title:'样品名称',
           align:"center",
           align:"center",
-          dataIndex: 'completeStatus_dictText'
+          dataIndex: 'sampleName'
         },
         },
         {
         {
-          title:'委托联系人',
+          title:'项目经理',
           align:"center",
           align:"center",
-          dataIndex: 'weituoLxr'
-        },
-        {
-          title:'委托电话',
-          align:"center",
-          dataIndex: 'weituoPhone'
+          dataIndex: 'pm'
         },
         },
+
+        // {
+        //   title:'委托单位地址',
+        //   align:"center",
+        //   dataIndex: 'weituoAddress'
+        // },
+        // {
+        //   title:'委托项目状态',
+        //   align:"center",
+        //   dataIndex: 'completeStatus_dictText'
+        // },
+        // {
+        //   title:'委托联系人',
+        //   align:"center",
+        //   dataIndex: 'weituoLxr'
+        // },
+        // {
+        //   title:'委托电话',
+        //   align:"center",
+        //   dataIndex: 'weituoPhone'
+        // },
         {
         {
           title: '操作',
           title: '操作',
           dataIndex: 'action',
           dataIndex: 'action',
@@ -167,7 +199,7 @@ export default {
         }
         }
       ],
       ],
       url: {
       url: {
-        list: "/weituo/itdmWeituoInfo/list",
+        list: "/weituo/itdmWeituoInfo/list1",
         delete: "/weituo/itdmWeituoInfo/delete",
         delete: "/weituo/itdmWeituoInfo/delete",
         deleteBatch: "/weituo/itdmWeituoInfo/deleteBatch",
         deleteBatch: "/weituo/itdmWeituoInfo/deleteBatch",
         exportXlsUrl: "/weituo/itdmWeituoInfo/exportXls",
         exportXlsUrl: "/weituo/itdmWeituoInfo/exportXls",

+ 4 - 2
itdmWeb/src/views/module-iTDM/weituo/modules/ItdmWeituoInfoModal.vue

@@ -7,7 +7,8 @@
     @ok="handleOk"
     @ok="handleOk"
     :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
     :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
     @cancel="handleCancel"
     @cancel="handleCancel"
-    cancelText="关闭">
+    cancelText="关闭"
+    okText="保存">
     <itdm-weituo-info-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></itdm-weituo-info-form>
     <itdm-weituo-info-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></itdm-weituo-info-form>
   </j-modal>
   </j-modal>
 </template>
 </template>
@@ -65,7 +66,8 @@
         this.visible = false;
         this.visible = false;
       },
       },
       handleOk () {
       handleOk () {
-        this.$refs.realForm.submitForm();
+        console.log(1111)
+        // this.$refs.realForm.submitForm();
       },
       },
       submitCallback(){
       submitCallback(){
         this.$emit('ok');
         this.$emit('ok');

+ 11 - 3
itdmWeb/src/views/module-iTDM/weituo/modules/step/Step1.vue

@@ -9,11 +9,17 @@
             :disabled="formDisabled"
             :disabled="formDisabled"
             v-model="model.weituoClient"
             v-model="model.weituoClient"
             placeholder="请输入委托单位名称"
             placeholder="请输入委托单位名称"
+            option-label-prop="label"
             @change="handleSelect"
             @change="handleSelect"
             @search="querySearch"
             @search="querySearch"
           >
           >
           <template slot="dataSource">
           <template slot="dataSource">
-            <a-select-option v-for="(item, index) in weituoClients" :key="index" :value="item.weituiClient">{{item.weituiClient}}</a-select-option>
+            <a-select-option v-for="(item, index) in weituoClients" :key="index" :value="item.id" :label="item.weituiClient">
+              <el-row>
+                <el-col :span="12">{{item.weituiClient}}</el-col>
+                <el-col :span="12">{{ item.weituiLxr }}</el-col>
+              </el-row>
+            </a-select-option>
           </template>
           </template>
 
 
 
 
@@ -168,12 +174,14 @@ export default {
     },
     },
     createFilter(queryString) {
     createFilter(queryString) {
       return (restaurant) => {
       return (restaurant) => {
-        return (restaurant.weituiClient.toLowerCase().indexOf(queryString.toLowerCase()) !== -1)
+        return (restaurant.weituiClient.toLowerCase().indexOf(queryString.toLowerCase()) !== -1) || (restaurant.weituiLxr.toLowerCase().indexOf(queryString.toLowerCase()) !== -1)
       }
       }
     },
     },
     // 选择委托单位
     // 选择委托单位
     handleSelect(item) {
     handleSelect(item) {
-      var v = this.restaurants.find(i => i.weituiClient === item)
+      console.log(item)
+      
+      var v = this.restaurants.find(i => i.id === item)
       // var v = this.restaurants.find(i => i.weituiClient === item)
       // var v = this.restaurants.find(i => i.weituiClient === item)
       if(v){
       if(v){
         this.$set(this.model, "weituoAddress", v.weituiAddress)
         this.$set(this.model, "weituoAddress", v.weituiAddress)

+ 19 - 5
itdmWeb/src/views/module-iTDM/weituo/modules/step/Step3.vue

@@ -9,7 +9,7 @@
 
 
       <template slot="yangpinKeyId" slot-scope="text, record,index">
       <template slot="yangpinKeyId" slot-scope="text, record,index">
         <a-form-model-item :prop="'list.'+index+'.yangpinKeyId'" :rules="validatorRules.yangpinKeyId">
         <a-form-model-item :prop="'list.'+index+'.yangpinKeyId'" :rules="validatorRules.yangpinKeyId">
-          <a-select :disabled="formDisabled" v-model="record.yangpinKeyId">
+          <a-select :disabled="formDisabled" v-model="record.yangpinKeyId" allowClear :dropdownMatchSelectWidth="false">
             <a-select-option v-for="d in yangpins" :key="d.sampleName">
             <a-select-option v-for="d in yangpins" :key="d.sampleName">
               {{ d.sampleName }}
               {{ d.sampleName }}
             </a-select-option>
             </a-select-option>
@@ -26,8 +26,13 @@
 
 
       <template slot="standardRequirement" slot-scope="text, record,index">
       <template slot="standardRequirement" slot-scope="text, record,index">
         <a-form-model-item :prop="'list.'+index+'.standardRequirement'" :rules="validatorRules.standardRequirement">
         <a-form-model-item :prop="'list.'+index+'.standardRequirement'" :rules="validatorRules.standardRequirement">
-          <j-multi-select-tag :disabled="formDisabled" v-model="record.standardRequirement"
-                              dictCode="itdm_weituo_yiju,name,name" />
+          <!-- <j-multi-select-tag :disabled="formDisabled" v-model="record.standardRequirement" :dropdownMatchSelectWidth="false" dictCode="itdm_weituo_yiju,name,name" /> -->
+          <!-- 为了解决下拉框显示不全的问题,原来的没有对应参数配置 -->
+          <a-select :disabled="formDisabled" v-model="record.standardRequirement" allowClear :dropdownMatchSelectWidth="false">
+            <a-select-option v-for="(item, index) in yijuLists" :key="index">
+              {{ item.name }}
+            </a-select-option>
+          </a-select>    
         </a-form-model-item>
         </a-form-model-item>
       </template>
       </template>
 
 
@@ -85,7 +90,7 @@
 
 
 <script>
 <script>
 
 
-
+import {getAction} from '@/api/manage'
 export default {
 export default {
   name: 'step3',
   name: 'step3',
 
 
@@ -115,6 +120,7 @@ export default {
         ]
         ]
 
 
       },
       },
+      yijuLists: [],
       // table
       // table
       columns: [
       columns: [
         {
         {
@@ -126,7 +132,7 @@ export default {
           scopedSlots: { customRender: 'yangpinKeyId' }
           scopedSlots: { customRender: 'yangpinKeyId' }
         },
         },
         {
         {
-          title: '检测标准',
+          title: '检测项目',
           dataIndex: 'testItems',
           dataIndex: 'testItems',
           key: 'testItems',
           key: 'testItems',
           align: 'center',
           align: 'center',
@@ -182,6 +188,7 @@ export default {
     }
     }
   },
   },
   created() {
   created() {
+    this.getYijuLists()
     const data = JSON.parse(sessionStorage.getItem('yangpinkz'))
     const data = JSON.parse(sessionStorage.getItem('yangpinkz'))
     if (data != null) {
     if (data != null) {
       this.model.list=data
       this.model.list=data
@@ -201,6 +208,13 @@ export default {
 
 
   },
   },
   methods: {
   methods: {
+    // 获取所有依据列表
+    getYijuLists(){
+      getAction('/weituoyiju/itdmWeituoYiju/getAllList').then((res) => {
+        // console.log(res)
+        this.yijuLists = res.result
+      })
+    },
 
 
     newMember() {
     newMember() {
       this.model.list.push({
       this.model.list.push({

+ 35 - 2
itdmWeb/src/views/module-iTDM/weituokehu/ItdmWtkehuList.vue

@@ -151,12 +151,45 @@
           {
           {
             title:'委托单位名称',
             title:'委托单位名称',
             align:"center",
             align:"center",
-            dataIndex: 'weituiClient'
+            dataIndex: 'weituiClient',
+            customRender: (value, row, index) => {
+              console.log(value, row, index)
+              const obj = {
+                children: value,
+                attrs: {},
+              };
+              let arr = this.dataSource.filter((res) => {
+                return res.weituiClient == row.weituiClient;
+              });
+              if(row.weituiClient !== this.dataSource[index - 1].weituiClient){
+                obj.attrs.rowSpan = arr.length
+              } else {
+                obj.attrs.rowSpan = 0
+              }
+              return obj
+            },
+            
           },
           },
           {
           {
             title:'委托单位地址',
             title:'委托单位地址',
             align:"center",
             align:"center",
-            dataIndex: 'weituiAddress'
+            dataIndex: 'weituiAddress',
+            customRender: (value, row, index) => {
+              console.log(value, row, index)
+              const obj = {
+                children: value,
+                attrs: {},
+              };
+              let arr = this.dataSource.filter((res) => {
+                return res.weituiAddress == row.weituiAddress;
+              });
+              if(row.weituiAddress !== this.dataSource[index - 1].weituiAddress){
+                obj.attrs.rowSpan = arr.length
+              } else {
+                obj.attrs.rowSpan = 0
+              }
+              return obj
+            },
           },
           },
           {
           {
             title:'委托联系人',
             title:'委托联系人',

+ 3 - 0
itdmWeb/src/views/module-iTDM/weituokehu/modules/ItdmWtkehuForm.vue

@@ -68,6 +68,9 @@
            weituiClient: [
            weituiClient: [
               { required: true, message: '请输入委托单位名称!'},
               { required: true, message: '请输入委托单位名称!'},
            ],
            ],
+           weituiAddress: [
+              { required: true, message: '请输入委托单位地址!'},
+           ],
            weituiLxr: [
            weituiLxr: [
               { required: true, message: '请输入委托联系人!'},
               { required: true, message: '请输入委托联系人!'},
            ],
            ],