|
@@ -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;
|
|
|
+ }
|
|
|
+
|
|
|
}
|