|
@@ -801,42 +801,45 @@ public class SubInfoServiceImpl implements SubInfoService {
|
|
|
//当前项目状态
|
|
|
String status = String.valueOf(data.get("status"));
|
|
|
ProjectStatusEnum statusEnum = ProjectStatusEnum.getEnumByKey(status);
|
|
|
- switch (statusEnum) {
|
|
|
- case DKG:
|
|
|
- //待开工
|
|
|
- String startQueryHql = "FROM SubStart WHERE logicDeleteFlag = ? AND subId = ? ";
|
|
|
- Long startCount = subInfoDao.getCount(startQueryHql, 0, id);
|
|
|
- if (startCount == 0) {
|
|
|
- data.put("statusName", ProjectStatusEnum.DKG.getDesc() + ":未提交审核");
|
|
|
- } else {
|
|
|
- data.put("statusName", ProjectStatusEnum.DKG.getDesc() + ":待审核");
|
|
|
- }
|
|
|
- break;
|
|
|
- case YKG:
|
|
|
- //已开工
|
|
|
- String completedQueryHql = "FROM SubCompleted WHERE logicDeleteFlag = ? AND subId = ? ";
|
|
|
- Long completedCount = subInfoDao.getCount(completedQueryHql, 0, id);
|
|
|
- if (completedCount == 0) {
|
|
|
- data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":无竣工申请");
|
|
|
- } else {
|
|
|
- if (data.get("status_sp") == null || Objects.equals(data.get("status_sp"), ApprovalStatusEnum.DSP.getKey())) {
|
|
|
- data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":待审核");
|
|
|
- } else if (Objects.equals(data.get("status_sp"), ApprovalStatusEnum.YSP.getKey())) {
|
|
|
- data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":竣工申请已审核");
|
|
|
+ if(statusEnum != null){
|
|
|
+ switch (statusEnum) {
|
|
|
+ case DKG:
|
|
|
+ //待开工
|
|
|
+ String startQueryHql = "FROM SubStart WHERE logicDeleteFlag = ? AND subId = ? ";
|
|
|
+ Long startCount = subInfoDao.getCount(startQueryHql, 0, id);
|
|
|
+ if (startCount == 0) {
|
|
|
+ data.put("statusName", ProjectStatusEnum.DKG.getDesc() + ":未提交审核");
|
|
|
+ } else {
|
|
|
+ data.put("statusName", ProjectStatusEnum.DKG.getDesc() + ":待审核");
|
|
|
}
|
|
|
- }
|
|
|
- break;
|
|
|
- default:
|
|
|
- data.put("statusName", statusEnum.getDesc());
|
|
|
+ break;
|
|
|
+ case YKG:
|
|
|
+ //已开工
|
|
|
+ String completedQueryHql = "FROM SubCompleted WHERE logicDeleteFlag = ? AND subId = ? ";
|
|
|
+ Long completedCount = subInfoDao.getCount(completedQueryHql, 0, id);
|
|
|
+ if (completedCount == 0) {
|
|
|
+ data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":无竣工申请");
|
|
|
+ } else {
|
|
|
+ if (data.get("status_sp") == null || Objects.equals(data.get("status_sp"), ApprovalStatusEnum.DSP.getKey())) {
|
|
|
+ data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":待审核");
|
|
|
+ } else if (Objects.equals(data.get("status_sp"), ApprovalStatusEnum.YSP.getKey())) {
|
|
|
+ data.put("statusName", ProjectStatusEnum.YKG.getDesc() + ":竣工申请已审核");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ data.put("statusName", statusEnum.getDesc());
|
|
|
// //如果是项目单位, 并且项目在前期过程中。 能点击项目前期 按钮。
|
|
|
//
|
|
|
// if (ProjectStatusEnum.PRE.getKey().equals(status)){
|
|
|
// // 判断是否能 点击项目前期。 20231219
|
|
|
// data.put("preCheck",true);
|
|
|
// }
|
|
|
- break;
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+
|
|
|
if (!Objects.equals("0", data.get("status_fgw"))) {
|
|
|
//显示红绿灯,且不是绿灯
|
|
|
SubquestionInfo subquestionInfo = subquestioninfoservice.findByColor(String.valueOf(data.get("id")), (Date) data.get("date_fgw"));
|
|
@@ -849,11 +852,14 @@ public class SubInfoServiceImpl implements SubInfoService {
|
|
|
|
|
|
@Override
|
|
|
public SubInfoVO getById(String id) {
|
|
|
- SubInfo subInfo = subInfoDao.findById(id);
|
|
|
- //List<SubPlan> list = subPlanDao.getPlanListBySubId(id);
|
|
|
- List<SubSourceVO> subSourceVOs = subSourceService.findBySubId(id);
|
|
|
- // List<SubSourceVO> subSourceVOs = subSourceDao.findBySubId(id);
|
|
|
- return new SubInfoVO(subInfo, null, subSourceVOs);
|
|
|
+ return Optional.ofNullable(id)
|
|
|
+ .filter(StringUtils::isNotEmpty)
|
|
|
+ .map(i -> {
|
|
|
+ SubInfo subInfo = subInfoDao.findById(i);
|
|
|
+ List<SubSourceVO> subSourceVOs = subSourceDao.findBySubId(i);
|
|
|
+ return new SubInfoVO(subInfo, null, subSourceVOs);
|
|
|
+ })
|
|
|
+ .orElse(new SubInfoVO());
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -1021,6 +1027,9 @@ public class SubInfoServiceImpl implements SubInfoService {
|
|
|
} else {
|
|
|
subInfo = subInfoDao.findById(subId);
|
|
|
}
|
|
|
+ if(subInfo == null){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
return new SubInfoJsonForm(subInfo, plans, subSourceVOs);
|
|
|
}
|
|
|
|