Browse Source

PSSR:
-添加盲板创建流程

jiangbiao 11 months ago
parent
commit
c7296fa034

+ 2 - 0
master/src/main/java/com/ruoyi/project/pssr/controller/TPssrApproveController.java

@@ -410,6 +410,8 @@ public class TPssrApproveController extends BaseController {
         Set<String> remover = new HashSet<>();
         for (TPssrBlind item : tPssrBlindService.selectTPssrBlindList(tPssrBlind)) {
             item.setApproveStatus(1L);
+            item.setInstallStatus("0,0,0,0,0");
+            item.setRemoveStatus("0,0,0,0,0");
             item.setUpdatedate(new Date());
             item.setUpdaterCode(userId);
             tPssrBlindService.updateTPssrBlind(item);

+ 99 - 59
master/src/main/java/com/ruoyi/project/pssr/controller/TPssrBlindController.java

@@ -8,16 +8,16 @@ import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.framework.web.page.TableDataInfo;
 import com.ruoyi.project.pssr.domain.TPssrApprove;
 import com.ruoyi.project.pssr.domain.TPssrBlind;
+import com.ruoyi.project.pssr.domain.TPssrSubcontent;
 import com.ruoyi.project.pssr.service.ITPssrApproveService;
 import com.ruoyi.project.pssr.service.ITPssrBlindService;
+import com.ruoyi.project.pssr.service.ITPssrSubcontentService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Date;
-import java.util.HashSet;
 import java.util.List;
-import java.util.Set;
 
 /**
  * 盲板Controller
@@ -34,6 +34,9 @@ public class TPssrBlindController extends BaseController {
     @Autowired
     private ITPssrApproveService tPssrApproveService;
 
+    @Autowired
+    private ITPssrSubcontentService tPssrSubcontentService;
+
     /**
      * 查询盲板列表
      */
@@ -99,32 +102,19 @@ public class TPssrBlindController extends BaseController {
 
 
     /**
-     * 确认检修项目-换热器
+     * 确认盲板
      */
     @PreAuthorize("@ss.hasPermi('pssr:blind:edit')")
     @Log(title = "盲板", businessType = BusinessType.UPDATE)
     @PutMapping("/confirmBlind")
     public AjaxResult confirmBlind(@RequestBody TPssrBlind tPssrBlind) {
+        // 修改盲板状态
         if (tPssrBlind.getIds() != null && tPssrBlind.getIds().length > 0) {
             for (Long id : tPssrBlind.getIds()) {
-                TPssrBlind blind = tPssrBlindService.selectTPssrBlindById(id);
-                if (tPssrBlind.getTaskType() == 0) {
-                    if (blind.getInstallDate() == null) {
-                        blind.setInstallDate(new Date());
-                    }
-                    blind.setApproveStatus(2L);
-                    blind.setUpdatedate(new Date());
-                    blind.setUpdaterCode(String.valueOf(getUserId()));
-                    tPssrBlindService.updateTPssrBlind(blind);
-                } else if (tPssrBlind.getTaskType() == 1) {
-                    if (blind.getRemovedDate() == null) {
-                        blind.setRemovedDate(new Date());
-                    }
-                    blind.setApproveStatus(3L);
-                    blind.setUpdatedate(new Date());
-                    blind.setUpdaterCode(String.valueOf(getUserId()));
-                    tPssrBlindService.updateTPssrBlind(blind);
-                }
+                TPssrBlind item = tPssrBlindService.selectTPssrBlindById(id);
+                item.setTaskType(tPssrBlind.getTaskType());
+                setEntity(item);
+                tPssrBlindService.updateTPssrBlind(item);
             }
         } else {
             TPssrBlind blind = new TPssrBlind();
@@ -132,53 +122,47 @@ public class TPssrBlindController extends BaseController {
             blind.setCurrentUser(getUserId().toString());
             blind.setApproveStatus(1L);
             for (TPssrBlind item : tPssrBlindService.selectTPssrBlindList(blind)) {
-                if (tPssrBlind.getTaskType() == 0) {
-                    if (blind.getInstallDate() == null) {
-                        blind.setInstallDate(new Date());
-                    }
-                    blind.setApproveStatus(2L);
-                    blind.setUpdatedate(new Date());
-                    blind.setUpdaterCode(String.valueOf(getUserId()));
-                    tPssrBlindService.updateTPssrBlind(blind);
-                } else if (tPssrBlind.getTaskType() == 1) {
-                    if (blind.getRemovedDate() == null) {
-                        blind.setRemovedDate(new Date());
-                    }
-                    blind.setApproveStatus(3L);
-                    blind.setUpdatedate(new Date());
-                    blind.setUpdaterCode(String.valueOf(getUserId()));
-                    tPssrBlindService.updateTPssrBlind(blind);
-                }
+                item.setTaskType(tPssrBlind.getTaskType());
+                setEntity(item);
+                tPssrBlindService.updateTPssrBlind(item);
             }
         }
         //查询当前待审批的确认人
         TPssrBlind entity = new TPssrBlind();
         entity.setSubId(tPssrBlind.getSubId());
         entity.setApproveStatus(1L);
-        Set<String> installer = new HashSet<>();
-        Set<String> remover = new HashSet<>();
+        long status=1;
+        boolean flag = false;
         for (TPssrBlind item : tPssrBlindService.selectTPssrBlindList(entity)) {
-            // 安装人员
-            installer.add(item.getInConfirm1());
-            installer.add(item.getInConfirm2());
-            installer.add(item.getInContractor());
-            installer.add(item.getInProcess());
-            installer.add(item.getInCoordinator());
-
-            //拆除人员
-            remover.add(item.getReConfirm1());
-            remover.add(item.getReConfirm2());
-            remover.add(item.getReContractor());
-            remover.add(item.getReProcess());
-            remover.add(item.getReCoordinator());
-        }
-        //如果当前用户还有待审批任务
-        if (installer.contains(getUserId().toString())) {
-            return AjaxResult.success();
+            item.setTaskType(tPssrBlind.getTaskType());
+            if (tPssrBlind.getTaskType() == 0) {
+                if (item.getInstallStatus().split(",")[setEntity(item)].equals("0")) {
+                    return AjaxResult.success();
+                }
+            } else {
+                if (item.getRemoveStatus().split(",")[setEntity(item)].equals("0")) {
+                    return AjaxResult.success();
+                }
+            }
+            if (item.getInstallStatus().equals("1,1,1,1,1")) {
+                item.setApproveStatus(3L);//已确认安装
+                status=3L;
+                tPssrBlindService.updateTPssrBlind(item);
+            }
+            if (item.getRemoveStatus().equals("1,1,1,1,1")) {
+                item.setApproveStatus(2L);//已确认拆除
+                status=2L;
+                tPssrBlindService.updateTPssrBlind(item);
+            }
         }
-        if (remover.contains(getUserId().toString())) {
-            return AjaxResult.success();
+
+        if (flag) {
+            TPssrSubcontent tPssrSubcontent = new TPssrSubcontent();
+            tPssrSubcontent.setId(tPssrBlind.getSubId());
+            tPssrSubcontent.setApproveStatus(status);
+            tPssrSubcontentService.updateTPssrSubcontent(tPssrSubcontent);
         }
+
         //无待审批任务结束当前用户流程
         TPssrApprove approve = new TPssrApprove();
         approve.setSubId(tPssrBlind.getSubId());
@@ -187,4 +171,60 @@ public class TPssrBlindController extends BaseController {
         TPssrApproveController.handleConfirmApprove(tPssrApprove, getUserId().toString());
         return AjaxResult.success();
     }
+
+    private int setEntity(TPssrBlind tPssrBlind) {
+        //安装人员
+        String inProcess = tPssrBlind.getInProcess();
+        String inCoordinator = tPssrBlind.getInCoordinator();
+        String inContractor = tPssrBlind.getInContractor();
+        String inConfirm1 = tPssrBlind.getInConfirm1();
+        String inConfirm2 = tPssrBlind.getInConfirm2();
+
+        //拆除人员
+        String reProcess = tPssrBlind.getReProcess();
+        String reCoordinator = tPssrBlind.getReCoordinator();
+        String reContractor = tPssrBlind.getReContractor();
+        String reConfirm1 = tPssrBlind.getReConfirm1();
+        String reConfirm2 = tPssrBlind.getReConfirm2();
+
+        //获取当前人员操作下标
+        int current = -1;
+        if (inProcess.equals(getUserId().toString()) || reProcess.equals(getUserId().toString())) {
+            current = 0;
+        } else if (inCoordinator.equals(getUserId().toString()) || reCoordinator.equals(getUserId().toString())) {
+            current = 1;
+        } else if (inContractor.equals(getUserId().toString()) || reContractor.equals(getUserId().toString())) {
+            current = 2;
+        } else if (inConfirm1.equals(getUserId().toString()) || reConfirm1.equals(getUserId().toString())) {
+            current = 3;
+        } else if (inConfirm2.equals(getUserId().toString()) || reConfirm2.equals(getUserId().toString())) {
+            current = 4;
+        }
+        //修改状态
+        if (current != -1) {
+            if (tPssrBlind.getTaskType() == 0) {
+                if (tPssrBlind.getInstallDate() == null) {
+                    tPssrBlind.setInstallDate(new Date());
+                }
+                String[] is = tPssrBlind.getInstallStatus().split(",");
+                is[current] = "1";
+                tPssrBlind.setInstallStatus(String.join(",", is));
+                if (tPssrBlind.getInstallDate() == null) {
+                    tPssrBlind.setInstallDate(new Date());
+                }
+            } else if (tPssrBlind.getTaskType() == 1) {
+                if (tPssrBlind.getRemovedDate() == null) {
+                    tPssrBlind.setRemovedDate(new Date());
+                }
+                String[] rs = tPssrBlind.getRemoveStatus().split(",");
+                rs[current] = "1";
+                tPssrBlind.setRemoveStatus(String.join(",", rs));
+                if (tPssrBlind.getRemovedDate() == null) {
+                    tPssrBlind.setRemovedDate(new Date());
+                }
+            }
+        }
+        return current;
+    }
+
 }

+ 19 - 0
master/src/main/java/com/ruoyi/project/pssr/domain/TPssrBlind.java

@@ -175,6 +175,25 @@ public class TPssrBlind extends BaseEntity
     private Long[] ids;
 
     private Long taskType;
+    private String installStatus;
+    private String removeStatus;
+
+    public String getInstallStatus() {
+
+        return installStatus;
+    }
+
+    public void setInstallStatus(String installStatus) {
+        this.installStatus = installStatus;
+    }
+
+    public String getRemoveStatus() {
+        return removeStatus;
+    }
+
+    public void setRemoveStatus(String removeStatus) {
+        this.removeStatus = removeStatus;
+    }
 
     public String getCurrentUser() {
         return currentUser;

+ 9 - 1
master/src/main/resources/mybatis/pssr/TPssrBlindMapper.xml

@@ -40,11 +40,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="deptId"    column="dept_id"    />
         <result property="remarks"    column="remarks"    />
         <result property="approveStatus"    column="approve_status"    />
+        <result property="installStatus"    column="install_status"    />
+        <result property="removeStatus"    column="remove_status"    />
         <result property="deptName" column="dept_name" />
     </resultMap>
 
     <sql id="selectTPssrBlindVo">
-        select d.id, d.sub_id, d.approve_id, d.unit_no, d.pid_no, d.pipeline_no, d.medium, d.blind_no, d.location, d.iso_type, d.tag_no, d.blind_size, d.pressure_rate, d.pressurized, d.figure, d.install_date, d.in_process, d.in_coordinator, d.in_contractor, d.in_confirm1, d.in_confirm2, d.removed_date, d.re_process, d.re_coordinator, d.re_contractor, d.re_confirm1, d.re_confirm2, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id, d.remarks, d.approve_status ,s.dept_name from t_pssr_blind d
+        select d.INSTALL_STATUS,d.REMOVE_STATUS,d.id, d.sub_id, d.approve_id, d.unit_no, d.pid_no, d.pipeline_no, d.medium, d.blind_no, d.location, d.iso_type, d.tag_no, d.blind_size, d.pressure_rate, d.pressurized, d.figure, d.install_date, d.in_process, d.in_coordinator, d.in_contractor, d.in_confirm1, d.in_confirm2, d.removed_date, d.re_process, d.re_coordinator, d.re_contractor, d.re_confirm1, d.re_confirm2, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id, d.remarks, d.approve_status ,s.dept_name from t_pssr_blind d
       left join sys_dept s on s.dept_id = d.dept_id
     </sql>
 
@@ -147,6 +149,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="deptId != null">dept_id,</if>
             <if test="remarks != null">remarks,</if>
             <if test="approveStatus != null">approve_status,</if>
+            <if test="installStatus != null">install_status,</if>
+            <if test="removeStatus != null">remove_status,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
@@ -184,6 +188,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="deptId != null">#{deptId},</if>
             <if test="remarks != null">#{remarks},</if>
             <if test="approveStatus != null">#{approveStatus},</if>
+            <if test="installStatus != null">#{installStatus},</if>
+            <if test="removeStatus != null">#{removeStatus},</if>
          </trim>
     </insert>
 
@@ -224,6 +230,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="deptId != null">dept_id = #{deptId},</if>
             <if test="remarks != null">remarks = #{remarks},</if>
             <if test="approveStatus != null">approve_status = #{approveStatus},</if>
+            <if test="installStatus != null">install_status = #{installStatus},</if>
+            <if test="removeStatus != null">remove_status = #{removeStatus},</if>
         </trim>
         where id = #{id}
     </update>

+ 6 - 0
ui/src/views/approve/approveDetail/pssrApprove-detail.vue

@@ -72,6 +72,12 @@ export default {
         if (taskName=='检查内容负责人'){
           this.isApprove=2;
         }
+        if (taskName=='确认人1'){
+          this.isApprove=4;
+        }
+        if (taskName=='确认人2'){
+          this.isApprove=5;
+        }
         console.log(res)
         this.sn = res.data.serialNumber
         this.subId = id;

+ 1 - 1
ui/src/views/approve/myapprove/index.vue

@@ -276,7 +276,7 @@
           this.$nextTick(() => {
             this.$refs.dsdtNopassDetail.init(row.approveObject.id, row.taskId, row.processId, row.taskName)
           })
-        } else if (row.processName.contains('PSSR')) {
+        } else if (row.processName.includes("PSSR")) {
           this.pssrApproveDetailVisible = true
           this.$nextTick(() => {
             this.$refs.pssrApproveDetail.init(row.approveObject.subId, row.taskId, row.processId, row.taskName)

+ 1 - 1
ui/src/views/approve/pending/index.vue

@@ -453,7 +453,7 @@
           this.$nextTick(() => {
             this.$refs.dsdtNopassDetail.init(row.approveObject.id, row.taskId, row.processId, row.taskName)
           })
-        }  else if (row.processName == "PSSR单确认人确认流程"||row.processName == "PSSR双确认人确认流程") {
+        }  else if (row.processName.includes('PSSR')) {
           this.pssrApproveDetailVisible = true
           this.$nextTick(() => {
             this.$refs.pssrApproveDetail.init(row.approveObject.subId, row.taskId, row.processId, row.taskName)

+ 1 - 1
ui/src/views/approve/taskdone/index.vue

@@ -288,7 +288,7 @@
           this.$nextTick(() => {
             this.$refs.dsdtNopassDetail.init(row.approveObject.id, row.taskId, row.processId, row.taskName)
           })
-        } else if (row.processName == "PSSR单确认人确认流程"||row.processName == "PSSR双确认人确认流程") {
+        } else if (row.processName.includes('PSSR')) {
           this.pssrApproveDetailVisible = true
           this.$nextTick(() => {
             this.$refs.pssrApproveDetail.init(row.approveObject.subId, row.taskId, row.processId, row.taskName)

+ 83 - 28
ui/src/views/pssr/blind/index.vue

@@ -41,6 +41,7 @@
           icon="el-icon-plus"
           size="mini"
           @click="handleAdd"
+          v-if="isApprove==0"
           v-hasPermi="['pssr:blind:add']"
         >新增
         </el-button>
@@ -52,6 +53,7 @@
           size="mini"
           :disabled="single"
           @click="handleUpdate"
+          v-if="isApprove==0"
           v-hasPermi="['pssr:blind:edit']"
         >修改
         </el-button>
@@ -63,6 +65,7 @@
           size="mini"
           :disabled="multiple"
           @click="handleDelete"
+          v-if="isApprove==0"
           v-hasPermi="['pssr:blind:remove']"
         >删除
         </el-button>
@@ -73,6 +76,7 @@
           icon="el-icon-upload2"
           size="mini"
           @click="handleImport"
+          v-if="isApprove==0"
           v-hasPermi="['pssr:blind:edit']"
         >导入
         </el-button>
@@ -83,6 +87,7 @@
           icon="el-icon-download"
           size="mini"
           @click="handleExport"
+          v-if="isApprove==0"
           v-hasPermi="['pssr:blind:export']"
         >导出
         </el-button>
@@ -94,7 +99,7 @@
           size="mini"
           @click="handleApprove"
           v-if="isApprove==0"
-          v-hasPermi="['pssr:overhaulExchanger:edit']"
+          v-hasPermi="['pssr:blind:edit']"
         >发起审批
         </el-button>
       </el-col>
@@ -103,9 +108,9 @@
           type="danger"
           icon="el-icon-check"
           size="mini"
-          v-if="isApprove==1"
+          v-if="isApprove==4||isApprove==5"
           @click="handleConfirmApprove"
-          v-hasPermi="['pssr:overhaulExchanger:edit']"
+          v-hasPermi="['pssr:blind:edit']"
         >确认
         </el-button>
       </el-col>
@@ -117,8 +122,10 @@
       <el-table-column type="selection" width="55" align="center"/>
       <el-table-column label="审批状态" align="center" prop="approveStatus" :show-overflow-tooltip="true" width="80">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.pssr_approve_status" :value="scope.row.approveStatus"
-                    :show-type="getTagType(scope.row.approveStatus)"/>
+          <el-tag v-if="scope.row.approveStatus==0">未审批</el-tag>
+          <el-tag v-if="scope.row.approveStatus==1" type="warning">待确认</el-tag>
+          <el-tag v-if="scope.row.approveStatus==3" type="success">已确认安装</el-tag>
+          <el-tag v-if="scope.row.approveStatus==2" type="success">已确认拆除</el-tag>
         </template>
       </el-table-column>
       <el-table-column label="单元/系统号" align="center" prop="unitNo" :show-overflow-tooltip="true" width="150"/>
@@ -141,13 +148,33 @@
           </template>
         </el-table-column>
         <el-table-column label="工艺操作人员" align="center" prop="inProcess" :show-overflow-tooltip="true"
-                         width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.inProcess) }}</span>
+          </template>
+        </el-table-column>
         <el-table-column label="设备/仪表协调员" align="center" prop="inCoordinator" :show-overflow-tooltip="true"
-                         width="150"/>
-        <el-table-column label="承包商" align="center" prop="inContractor" :show-overflow-tooltip="true" width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.inCoordinator) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="承包商" align="center" prop="inContractor" :show-overflow-tooltip="true" width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.inContractor) }}</span>
+          </template>
+        </el-table-column>
         <el-table-column label="片区盲板司令" align="center" prop="inConfirm1" :show-overflow-tooltip="true"
-                         width="150"/>
-        <el-table-column label="盲板总司令" align="center" prop="inConfirm2" :show-overflow-tooltip="true" width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.inConfirm1) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="盲板总司令" align="center" prop="inConfirm2" :show-overflow-tooltip="true" width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.inConfirm2) }}</span>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="已经拆除" align="center">
         <el-table-column label="拆装时间" align="center" prop="removedDate" width="100">
@@ -156,13 +183,33 @@
           </template>
         </el-table-column>
         <el-table-column label="工艺操作人员" align="center" prop="reProcess" :show-overflow-tooltip="true"
-                         width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.reProcess) }}</span>
+          </template>
+        </el-table-column>
         <el-table-column label="设备/仪表协调员" align="center" prop="reCoordinator" :show-overflow-tooltip="true"
-                         width="150"/>
-        <el-table-column label="承包商" align="center" prop="reContractor" :show-overflow-tooltip="true" width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.reCoordinator) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="承包商" align="center" prop="reContractor" :show-overflow-tooltip="true" width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.reCoordinator) }}</span>
+          </template>
+        </el-table-column>
         <el-table-column label="片区盲板司令" align="center" prop="reConfirm1" :show-overflow-tooltip="true"
-                         width="150"/>
-        <el-table-column label="盲板总司令" align="center" prop="reConfirm2" :show-overflow-tooltip="true" width="150"/>
+                         width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.reConfirm1) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="盲板总司令" align="center" prop="reConfirm2" :show-overflow-tooltip="true" width="150">
+          <template slot-scope="scope">
+            <span>{{ userFormat(scope.row.reConfirm2) }}</span>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip="true" width="150"/>
       <el-table-column label="操作" align="center" fixed="right" width="120" class-name="small-padding fixed-width">
@@ -414,9 +461,9 @@
             </el-form-item>
           </el-col>
         </el-row>
-            <el-form-item label="备注" prop="remarks">
-              <el-input v-model="form.remarks" placeholder="请输入备注"/>
-            </el-form-item>
+        <el-form-item label="备注" prop="remarks">
+          <el-input v-model="form.remarks" placeholder="请输入备注"/>
+        </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -571,16 +618,16 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        inProcess:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        inCoordinator:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        inContractor:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        inConfirm1:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        inConfirm2:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        reProcess:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        reCoordinator:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        reContractor:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        reConfirm1:[ { required: true, message: "人员不可为空", trigger: "blur" }],
-        reConfirm2:[ { required: true, message: "人员不可为空", trigger: "blur" }],
+        inProcess: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        inCoordinator: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        inContractor: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        inConfirm1: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        inConfirm2: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        reProcess: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        reCoordinator: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        reContractor: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        reConfirm1: [{required: true, message: "人员不可为空", trigger: "blur"}],
+        reConfirm2: [{required: true, message: "人员不可为空", trigger: "blur"}],
       }
     };
   },
@@ -602,6 +649,13 @@ export default {
     });
   },
   methods: {
+    userFormat(userId) {
+      for (let item of this.userOptions) {
+        if (item.userId == userId) {
+          return item.nickName
+        }
+      }
+    },
     getTagType(val) {
       if (val == 0) {
         return ''
@@ -625,6 +679,7 @@ export default {
       let data = {
         ids: this.ids,
         subId: this.subId,
+        taskType: this.isApprove == 4 ? 0 : 1
       }
       handleConfirmApprove(data).then(res => {
         this.msgSuccess("确认成功");