diff --git a/db/update.sql b/db/update.sql index 39ec371..8cad7c6 100644 --- a/db/update.sql +++ b/db/update.sql @@ -13,3 +13,10 @@ alter table huzhou_contractinfo add flag varchar(128) null comment '标识符: INSERT INTO `guoyan_huzhou`.`huzhou_changefieldmanage`(`isshow`, `id`, `field_name`, `isChange`, `isuploadFile`, `isapproval`, `create_user`, `create_date`, `edit_user`, `edit_date`, `field_value`) VALUES ('1', '21', '项目负责人', '1', '0', '0', NULL, NULL, '1', NULL, 'manager'); INSERT INTO `guoyan_huzhou`.`huzhou_changefieldmanage`(`isshow`, `id`, `field_name`, `isChange`, `isuploadFile`, `isapproval`, `create_user`, `create_date`, `edit_user`, `edit_date`, `field_value`) VALUES ('1', '22', '项目负责人联系方式', '1', '0', '0', NULL, NULL, '1', NULL, 'managerPhone'); + +# 2025-03-06 增加项目计划修改标识用于限制修改次数 +ALTER TABLE huzhou_projectinfo + ADD COLUMN update_plan_flag VARCHAR(1) NOT NULL DEFAULT '0' COMMENT '项目计划修改标识 默认:0 审批中:1 审批通过:2"'; + +ALTER TABLE huzhou_sub_projectinfo + ADD COLUMN update_plan_flag VARCHAR(1) NOT NULL DEFAULT '0' COMMENT '项目计划修改标识 默认:0 审批中:1 审批通过:2"'; \ No newline at end of file diff --git a/huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java b/huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java index 8dc224d..c2ec7c3 100644 --- a/huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java +++ b/huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java @@ -138,6 +138,18 @@ public class HuzhouProjectController { return Result.OK(flag); } + /** + * 判断是否第一次更新项目计划 + * @param projectId + * @return + */ + @GetMapping("/queryUpdatePlanFlagById") + public Result queryUpdatePlanFlagById(String projectId){ + Boolean flag = projectinfoService.queryUpdatePlanFlagById(projectId); + return Result.OK(flag); + } + + /** * 判断是否有子项目 * @param projectid @@ -149,6 +161,8 @@ public class HuzhouProjectController { return Result.OK(flag); } + + /** * 判断项目 "合同签订阶段" 是否完成 * @param projectid diff --git a/huzhou/src/main/java/com/easy/admin/modules/huzhou/entity/HuzhouProjectinfo.java b/huzhou/src/main/java/com/easy/admin/modules/huzhou/entity/HuzhouProjectinfo.java index cbec6c6..06fc8e8 100644 --- a/huzhou/src/main/java/com/easy/admin/modules/huzhou/entity/HuzhouProjectinfo.java +++ b/huzhou/src/main/java/com/easy/admin/modules/huzhou/entity/HuzhouProjectinfo.java @@ -173,5 +173,11 @@ public class HuzhouProjectinfo extends BaseEntity { @TableField(exist = false) @ExcelProperty(value = "联系方式") private String managerPhone; + + + /** + * 项目计划修改表示: 只允许修改一次 + */ + private String updatePlanFlag; } diff --git a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java index ba4a7c2..8283418 100644 --- a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java +++ b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java @@ -223,5 +223,16 @@ public interface IHuzhouProjectinfoService extends IService { Boolean queryHasSubProject(String projectid); Boolean queryContractSignIsFinish(String projectid); + + /** + * 修改项目的修改计划标识 默认:0 审批中:1 审批完成:2 + * @param projectId + */ + void modifyPlanFlag1ById(String projectId); + + void modifyPlanFlag2ById(String projectId); + + + Boolean queryUpdatePlanFlagById(String projectId); } diff --git a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java index 3f6c9ef..69b372c 100644 --- a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java +++ b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java @@ -834,6 +834,8 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl huzhouPlaninfoArrayList) { diff --git a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java index 157b77f..f0c820d 100644 --- a/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java +++ b/huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java @@ -405,7 +405,6 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl projectAndChildInfoPageList; if (newStage != null) { List stageList = Arrays.stream(newStage.split(",")).collect(Collectors.toList()); @@ -2586,5 +2585,61 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(HuzhouProjectinfo::getId, projectId); + updateWrapper.set(HuzhouProjectinfo::getUpdatePlanFlag, "1"); + this.update(updateWrapper); + } else { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(HuzhouSubProjectinfo::getId, projectId); + updateWrapper.set(HuzhouProjectinfo::getUpdatePlanFlag, "1"); + subProjectinfoMapper.update(null, updateWrapper); + } + } + + @Override + public void modifyPlanFlag2ById(String projectId) { + HuzhouProjectinfo projectInfo = getById(projectId); + + if (null != projectInfo) { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(HuzhouProjectinfo::getId, projectId); + updateWrapper.set(HuzhouProjectinfo::getUpdatePlanFlag, "2"); + this.update(updateWrapper); + } else { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(HuzhouSubProjectinfo::getId, projectId); + updateWrapper.set(HuzhouProjectinfo::getUpdatePlanFlag, "2"); + subProjectinfoMapper.update(null, updateWrapper); + } + } + + @Override + public Boolean queryUpdatePlanFlagById(String projectId) { + HuzhouProjectinfo projectInfo = getById(projectId); + if (null != projectInfo) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(HuzhouProjectinfo::getId, projectId); + qw.eq(HuzhouProjectinfo::getUpdatePlanFlag, "2"); + List rs = this.list(qw); + if (rs.size() > 0){ + return false; + } + } else { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(HuzhouSubProjectinfo::getId, projectId); + qw.eq(HuzhouProjectinfo::getUpdatePlanFlag, "2"); + List rs = subProjectinfoMapper.selectList(qw); + if (rs.size() > 0){ + return false; + } + } + return true; + } }