From 28aaf2ffa1dbb860a292ba330a7e9362e60e7832 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: 星期五, 12 七月 2024 16:41:03 +0800
Subject: [PATCH] update

---
 assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssProjectServiceImpl.java |   20 ++++++++++++++------
 1 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssProjectServiceImpl.java b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssProjectServiceImpl.java
index deb847c..2346449 100644
--- a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssProjectServiceImpl.java
+++ b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssProjectServiceImpl.java
@@ -86,10 +86,11 @@
         if(user.getAgencyId()==null){
             throw new ApiException("用户机构id为空");
         }
+        project.setAgencyId(user.getAgencyId());
         if(!checkNameUnique(project)){
             throw new ApiException("项目名已存在");
         }
-        project.setAgencyId(user.getAgencyId());
+
         project.setReportProgress(ReportProgressEnum.ADD.getCode());
         project.setCreateBy(ShiroUtils.getSysUser().getUsername());
         int row=baseMapper.insert(project);
@@ -101,7 +102,14 @@
         //todo  权限校验
         SysUser user= ShiroUtils.getSysUser();
         checkUserAllowed(projectId);
-        AssProject project=new AssProject()
+        //判断项目流转状态
+        AssProject project=getById(projectId);
+        if(project.getReportProgress().equals(ReportProgressEnum.CONFIRM_FINAL.getCode())){
+            if(!user.getIdentity().equals(UserIdentityEnum.MONITOR.getCode())){
+                throw new ApiException("没有权限删除确认完结的项目,请联系监管用户删除");
+            }
+        }
+        project=new AssProject()
                 .setId(projectId)
                 .setDelFlag(DeleteFlagEnum.DELETED.getCode());
         project.setUpdateBy(user.getUsername());
@@ -115,9 +123,9 @@
             throw new ApiException("项目id不能为空");
         }
         checkUserAllowed(projectId);
-        if(!checkNameUnique(project)){
-            throw new ApiException("项目名已存在");
-        }
+//        if(!checkNameUnique(project)){
+//            throw new ApiException("项目名已存在");
+//        }
         project.setAgencyId(null);//机构id不能修改
         project.setReportProgress(null);//项目状态不能修改
         project.setUpdateBy(ShiroUtils.getSysUser().getUsername());
@@ -140,7 +148,7 @@
     @Override
     public boolean checkNameUnique(AssProject project) {
         Long projectId = project.getId()==null? -1L : project.getId();
-        AssProject pro = baseMapper.getProjectByName(project.getName());
+        AssProject pro = baseMapper.getProjectByName(project.getName(),project.getAgencyId());
         if (pro!=null && pro.getId().longValue() != projectId.longValue())
         {
             return false;

--
Gitblit v1.9.2