zhouwx
2024-08-09 25988ffefd8448c6ea770489b77c89a07d00190d
src/views/safetyReview/projectManage/components/evaluatePlan.vue
@@ -43,7 +43,7 @@
      </el-row>
      <el-row>
        <el-col :span="18">
          <div style="display: flex;align-items: center">评价日程安排</div>
          <div style="display: flex;align-items: center">评价日程安排<el-icon style="margin-left: 10px;margin-right: 4px"><InfoFilled /></el-icon><span style="font-size: 13px">不涉及的日程安排日期可不填</span></div>
        </el-col>
      </el-row>
      <el-table :data="state.formData.estimateSchedules" :border="true" style="margin: 20px 0">
@@ -86,7 +86,12 @@
      </el-row>
      <el-table  :data="state.planPersons" :border="true" style="margin: 20px 0">
        <el-table-column label="序号" width="60" align="center" type="index"></el-table-column>
        <el-table-column label="评价组成员" prop="person.name" align="center" :show-overflow-tooltip="true"/>
        <el-table-column label="评价组成员" prop="person.name" align="center" :show-overflow-tooltip="true">
          <template #default="scope">
            <span v-if="scope.row.jobType === 2">{{ scope.row.person.name }} (组长)</span>
            <span v-else>{{scope.row.person.name}}</span>
          </template>
        </el-table-column>
        <el-table-column label="专业能力/资格证书" prop="person.certificateNo" align="center" :show-overflow-tooltip="true">
          <template #default="scope">
            {{ getCertNo(scope.row) }}
@@ -311,7 +316,49 @@
      }
      if(type === 'add'){
        const {id, ...data} = JSON.parse(JSON.stringify(state.formData))
        console.log(data)
        const params = Object.assign({}, state.formData.estimateSchedules);
        let i = 0
        for (const key in params) {
          if ((params[key].startDate == '' || params[key].startDate == null ) && (params[key].endDate == '' || params[key].endDate == null)) {
            delete params[key].startDate;
            delete params[key].endDate;
            i++
          }
        }
        console.log('data',params)
        const finData =  Object.entries(params).map(([key, value]) => ({
          ...value,
        }));
        if(i == finData.length){
          ElMessage.warning("请选择至少一个的日程安排日期");
          return;
        }
        try {
          finData.forEach(item =>{
            // debugger
            console.log(item.endDate,'item.endDate')
            if(item.startDate && (item.startDate !='' || item.startDate !=null)){
              if(item.endDate =='' || item.endDate ==null){
                ElMessage.warning("请完善涉及的日程安排结束日期");
                throw new Error('Loop stopped')
              }
            }
            if(item.endDate && (item.endDate !='' || item.endDate !=null)){
              if(item.startDate =='' || item.startDate ==null){
                ElMessage.warning("请完善涉及的日程安排开始日期");
                throw new Error('Loop stopped')
              }
            }
          })
        }catch (e) {
          throw new Error(e)
        }
        data.estimateSchedules = finData
        const res = await addRecord(data);
        if (res.code == 200) {
          ElMessage.success('保存成功')
@@ -323,6 +370,44 @@
        }
      }else if(type === 'clickEdit'){
        const { ...data} = JSON.parse(JSON.stringify(state.formData))
        const params = Object.assign({}, state.formData.estimateSchedules);
        let i = 0
        for (const key in params) {
          if (params[key].startDate == '' && params[key].endDate == '') {
            delete params[key].startDate;
            delete params[key].endDate;
            i++;
          }
        }
        const finData =  Object.entries(params).map(([key, value]) => ({
          ...value,
        }));
        if(i == finData.length){
          ElMessage.warning("请选择至少一个的日程安排日期");
          return;
        }
        try {
          finData.forEach(item =>{
            // debugger
            console.log(item.endDate,'item.endDate')
            if(item.startDate && (item.startDate !='' || item.startDate !=null)){
              if(item.endDate =='' || item.endDate ==null){
                ElMessage.warning("请完善涉及的日程安排结束日期");
                throw new Error('Loop stopped')
              }
            }
            if(item.endDate && (item.endDate !='' || item.endDate !=null)){
              if(item.startDate =='' || item.startDate ==null){
                ElMessage.warning("请完善涉及的日程安排开始日期");
                throw new Error('Loop stopped')
              }
            }
          })
        }catch (e) {
          throw new Error(e)
        }
        data.estimateSchedules = finData
        const res = await editRecord(data);
        if (res.code == 200) {
          ElMessage.success('变更成功')