Ver código fonte

修改审批,指派流程

Administrator 2 anos atrás
pai
commit
c17c7efc02

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/projectV2/common/ZsyzCommonController.java

@@ -181,7 +181,7 @@ public class ZsyzCommonController extends BaseController {
 
 
     /**
-     * 项目审核/驳回接口
+     * 招商中心项目审核/驳回接口
      * 参数是审核建议
      * @return
      */

+ 10 - 0
ruoyi-common/src/main/java/com/ruoyi/common/constant/CommonConstants.java

@@ -37,6 +37,8 @@ public class CommonConstants {
     public static final String  ADMIN= "admin";
     //平台管理员
     public static final String  MANAGE= "manage";
+    //市级领导
+    public static final String  LEADER= "leader";
     //承接地
     public static final String  CJD= "cjd";
     //市直部门
@@ -48,6 +50,14 @@ public class CommonConstants {
     //错误表述
     public static final String  ERROR= "error";
 
+    //首谈/承接/签约/开工/投产/省库
+    public static final String  ST= "st";
+    public static final String  CJ= "cj";
+    public static final String  QY= "qy";
+    public static final String  KG= "kg";
+    public static final String  TC= "tc";
+    public static final String  SK= "sk";
+
 
 
 

+ 6 - 6
ruoyi-system/src/main/java/com/ruoyi/system/domain/projectV2/Vo/ZpVo.java

@@ -31,7 +31,7 @@ public class ZpVo extends BaseEntity {
     private List<ZsyzProjectDept> cjdList;
 
     //招商引荐单位
-    private List<ZsyzProjectDept> yqdwList;
+    private List<ZsyzProjectDept> yjdwList;
 
     public String getXmmc() {
         return xmmc;
@@ -73,12 +73,12 @@ public class ZpVo extends BaseEntity {
         this.cjdList = cjdList;
     }
 
-    public List<ZsyzProjectDept> getYqdwList() {
-        return yqdwList;
+    public List<ZsyzProjectDept> getYjdwList() {
+        return yjdwList;
     }
 
-    public void setYqdwList(List<ZsyzProjectDept> yqdwList) {
-        this.yqdwList = yqdwList;
+    public void setYjdwList(List<ZsyzProjectDept> yjdwList) {
+        this.yjdwList = yjdwList;
     }
 
     @Override
@@ -89,7 +89,7 @@ public class ZpVo extends BaseEntity {
                 ", xmmc='" + xmmc + '\'' +
                 ", ysbmList=" + ysbmList +
                 ", cjdList=" + cjdList +
-                ", yqdwList=" + yqdwList +
+                ", yjdwList=" + yjdwList +
                 '}';
     }
 }

+ 35 - 35
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzKgxxServiceImpl.java

@@ -19,13 +19,12 @@ import static com.ruoyi.common.constant.CommonConstants.*;
 
 /**
  * 招商引资_开工信息Service业务层处理
- * 
+ *
  * @author boman
  * @date 2023-02-22
  */
 @Service
-public class ZsyzKgxxServiceImpl implements IZsyzKgxxService
-{
+public class ZsyzKgxxServiceImpl implements IZsyzKgxxService {
     @Autowired
     private ZsyzKgxxMapper zsyzKgxxMapper;
 
@@ -37,23 +36,23 @@ public class ZsyzKgxxServiceImpl implements IZsyzKgxxService
 
     @Autowired
     private ZsyzLcjlMapper zsyzLcjlMapper;
+
     /**
      * 查询招商引资_开工信息
-     * 
+     *
      * @param id 招商引资_开工信息ID
      * @return 招商引资_开工信息
      */
     @Override
     @Transactional
-    public ZsyzKgxx selectZsyzKgxxById(Long id)
-    {
+    public ZsyzKgxx selectZsyzKgxxById(Long id) {
         ZsyzKgxx zsyzKgxx = zsyzKgxxMapper.selectZsyzKgxxById(id);
-        if (zsyzKgxx != null){
+        if (zsyzKgxx != null) {
             ZsyzFj zsyzFj = new ZsyzFj();
             zsyzFj.setSourceId(id);
             zsyzFj.setType(THR);
             List<ZsyzFj> zsyzFjList = zsyzFjMapper.selectZsyzFjList(zsyzFj);
-            if (zsyzFjList != null && zsyzFjList.size() > 0){
+            if (zsyzFjList != null && zsyzFjList.size() > 0) {
                 zsyzKgxx.setZsyzFjList(zsyzFjList);
             }
         }
@@ -62,35 +61,37 @@ public class ZsyzKgxxServiceImpl implements IZsyzKgxxService
 
     /**
      * 查询招商引资_开工信息列表
-     * 
+     *
      * @param zsyzKgxx 招商引资_开工信息
      * @return 招商引资_开工信息
      */
     @Override
-    public List<ZsyzKgxx> selectZsyzKgxxList(ZsyzKgxx zsyzKgxx)
-    {
+    public List<ZsyzKgxx> selectZsyzKgxxList(ZsyzKgxx zsyzKgxx) {
         return zsyzKgxxMapper.selectZsyzKgxxList(zsyzKgxx);
     }
 
     /**
      * 新增招商引资_开工信息
-     * 
+     *
      * @param zsyzKgxx 招商引资_开工信息
      * @return 结果
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int insertZsyzKgxx(ZsyzKgxx zsyzKgxx)
-    {
+    public int insertZsyzKgxx(ZsyzKgxx zsyzKgxx) {
         zsyzKgxx.setCreateTime(DateUtils.getNowDate());
         int count = zsyzKgxxMapper.insertZsyzKgxx(zsyzKgxx);
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzKgxx.getXmId());
-        zsyzSbbzb.setProgress(EIG);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzKgxx.getXmId());
+        if (zsyzSbbzb == null || (!THR.equals(zsyzSbbzb.getProgress()) && !TWO.equals(zsyzSbbzb.getXmStatus()))) {
+            return 0;
+        }
+        zsyzSbbzb.setProgress(FOR);
+        zsyzSbbzb.setXmStatus(ONE);
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         //保存附件信息
         List<ZsyzFj> zsyzFjList = zsyzKgxx.getZsyzFjList();
-        if (zsyzFjList != null){
+        if (zsyzFjList != null) {
             for (ZsyzFj zsyzFj : zsyzFjList) {
                 zsyzFj.setSourceId(zsyzKgxx.getId());
                 zsyzFj.setType(THR);
@@ -108,33 +109,34 @@ public class ZsyzKgxxServiceImpl implements IZsyzKgxxService
         zsyzLcjl.setDeptId(dept.getDeptId());
         String deptName = dept.getDeptName();
         zsyzLcjl.setDeptName(deptName);
-        zsyzLcjl.setProgress(EIG);
+        zsyzLcjl.setProgress(FOR);
+        zsyzLcjl.setXmStatus(ONE);
         zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
         return count;
     }
 
     /**
      * 修改招商引资_开工信息
-     * 
+     *
      * @param zsyzKgxx 招商引资_开工信息
      * @return 结果
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int updateZsyzKgxx(ZsyzKgxx zsyzKgxx)
-    {
+    public int updateZsyzKgxx(ZsyzKgxx zsyzKgxx) {
 
         zsyzKgxx.setUpdateTime(DateUtils.getNowDate());
         int count = zsyzKgxxMapper.updateZsyzKgxx(zsyzKgxx);
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzKgxx.getXmId());
-        ZsyzSbbzb zsyzSbbzbOld = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzKgxx.getXmId());
-        if (zsyzSbbzbOld != null && zsyzSbbzbOld.getProgress().equals(SEV)){
-            zsyzSbbzb.setProgress(EIG);
-            zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzKgxx.getXmId());
+        if (zsyzSbbzb == null || (!FOR.equals(zsyzSbbzb.getProgress()) && TWO.equals(zsyzSbbzb.getXmStatus()))) {
+            return 0;
         }
+        zsyzSbbzb.setProgress(FOR);
+        zsyzSbbzb.setXmStatus(ONE);
+        zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         //修改附件
-        if(zsyzKgxx.getZsyzFjList()!=null && zsyzKgxx.getZsyzFjList().size()>0){
+        if (zsyzKgxx.getZsyzFjList() != null && zsyzKgxx.getZsyzFjList().size() > 0) {
             ZsyzFj zsyzFjDelete = new ZsyzFj();
             zsyzFjDelete.setSourceId(zsyzKgxx.getId());
             zsyzFjDelete.setType(THR);
@@ -155,25 +157,23 @@ public class ZsyzKgxxServiceImpl implements IZsyzKgxxService
 
     /**
      * 批量删除招商引资_开工信息
-     * 
+     *
      * @param ids 需要删除的招商引资_开工信息ID
      * @return 结果
      */
     @Override
-    public int deleteZsyzKgxxByIds(Long[] ids)
-    {
+    public int deleteZsyzKgxxByIds(Long[] ids) {
         return zsyzKgxxMapper.deleteZsyzKgxxByIds(ids);
     }
 
     /**
      * 删除招商引资_开工信息信息
-     * 
+     *
      * @param id 招商引资_开工信息ID
      * @return 结果
      */
     @Override
-    public int deleteZsyzKgxxById(Long id)
-    {
+    public int deleteZsyzKgxxById(Long id) {
         return zsyzKgxxMapper.deleteZsyzKgxxById(id);
     }
 }

+ 25 - 17
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzQyxxServiceImpl.java

@@ -82,9 +82,13 @@ public class ZsyzQyxxServiceImpl implements IZsyzQyxxService {
     @Transactional(rollbackFor = Exception.class)
     public int insertZsyzQyxx(ZsyzQyxx zsyzQyxx) {
         zsyzQyxx.setCreateTime(DateUtils.getNowDate());
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzQyxx.getXmId());
-        zsyzSbbzb.setProgress(SIX);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzQyxx.getXmId());
+        if (zsyzSbbzb == null || (!TWO.equals(zsyzSbbzb.getProgress()) &&  !TWO.equals(zsyzSbbzb.getXmStatus()))){
+            return 0;
+        }
+        zsyzSbbzb.setProgress(THR);
+        zsyzSbbzb.setXmStatus(ONE);
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         int count = zsyzQyxxMapper.insertZsyzQyxx(zsyzQyxx);
         //保存附件信息
@@ -107,7 +111,8 @@ public class ZsyzQyxxServiceImpl implements IZsyzQyxxService {
         zsyzLcjl.setDeptId(dept.getDeptId());
         String deptName = dept.getDeptName();
         zsyzLcjl.setDeptName(deptName);
-        zsyzLcjl.setProgress(zsyzSbbzb.getProgress());
+        zsyzLcjl.setProgress(THR);
+        zsyzLcjl.setXmStatus(ONE);
         zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
         return count;
 
@@ -122,16 +127,17 @@ public class ZsyzQyxxServiceImpl implements IZsyzQyxxService {
     @Override
     @Transactional(rollbackFor = Exception.class)
     public int updateZsyzQyxx(ZsyzQyxx zsyzQyxx) {
-
+        zsyzQyxx.setUpdateBy(SecurityUtils.getLoginUser().getUser().getDept().getDeptName());
         zsyzQyxx.setUpdateTime(DateUtils.getNowDate());
         int count = zsyzQyxxMapper.updateZsyzQyxx(zsyzQyxx);
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzQyxx.getXmId());
-        ZsyzSbbzb zsyzSbbzbOld = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzQyxx.getXmId());
-        if (zsyzSbbzbOld != null && zsyzSbbzbOld.getProgress().equals(FIV)){
-            zsyzSbbzb.setProgress(SIX);
-            zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzQyxx.getXmId());
+        if (zsyzSbbzb == null || (!THR.equals(zsyzSbbzb.getProgress()) && TWO.equals(zsyzSbbzb.getXmStatus()))){
+            return 0;
         }
+        zsyzSbbzb.setProgress(THR);
+        zsyzSbbzb.setXmStatus(ONE);
+        zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         //修改附件
         if (zsyzQyxx.getZsyzFjList() != null && zsyzQyxx.getZsyzFjList().size() > 0) {
             ZsyzFj zsyzFjDelete = new ZsyzFj();
@@ -141,12 +147,14 @@ public class ZsyzQyxxServiceImpl implements IZsyzQyxxService {
             zsyzFjMapper.deleteZsyzFjBySourceId(zsyzFjDelete);
             //再将文件新增进数据库
             List<ZsyzFj> zsyzFjList = zsyzQyxx.getZsyzFjList();
-            for (ZsyzFj zsyzFj : zsyzFjList) {
-                zsyzFj.setSourceId(zsyzQyxx.getId());
-                zsyzFj.setType(TWO);
-                zsyzFj.setXmId(zsyzQyxx.getXmId());
-                zsyzFj.setXmbh(zsyzQyxx.getXmbh());
-                zsyzFjMapper.insertZsyzFj(zsyzFj);
+            if (zsyzFjList != null){
+                for (ZsyzFj zsyzFj : zsyzFjList) {
+                    zsyzFj.setSourceId(zsyzQyxx.getId());
+                    zsyzFj.setType(TWO);
+                    zsyzFj.setXmId(zsyzQyxx.getXmId());
+                    zsyzFj.setXmbh(zsyzQyxx.getXmbh());
+                    zsyzFjMapper.insertZsyzFj(zsyzFj);
+                }
             }
         }
         return count;

+ 10 - 8
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzSbbzbServiceImpl.java

@@ -92,7 +92,7 @@ public class ZsyzSbbzbServiceImpl implements IZsyzSbbzbService {
             for (SysRole role : roles) {
                 String roleKey = role.getRoleKey();
                 if (YSBM.equals(roleKey)){
-                    //如果是市值部门角色只能看到分派给市值部门的
+                    //如果是要素部门角色只能看到分派给要素部门的
                     flag = false;
                     break;
                 }
@@ -146,6 +146,7 @@ public class ZsyzSbbzbServiceImpl implements IZsyzSbbzbService {
         String deptName = user.getDept().getDeptName();
         zsyzLcjl.setDeptName(deptName);
         zsyzLcjl.setProgress(ONE);
+        zsyzLcjl.setXmStatus(ONE);
         zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
         return count;
     }
@@ -171,15 +172,16 @@ public class ZsyzSbbzbServiceImpl implements IZsyzSbbzbService {
             zsyzFjMapper.deleteZsyzFjBySourceId(zsyzFjDelete);
             //再将文件新增进数据库
             List<ZsyzFj> zsyzFjList = zsyzSbbzb.getZsyzFjList();
-            for (ZsyzFj zsyzFj : zsyzFjList) {
-                zsyzFj.setSourceId(zsyzSbbzb.getId());
-                zsyzFj.setType(ONE);
-                zsyzFj.setXmId(zsyzSbbzb.getId());
-                zsyzFj.setXmbh(zsyzSbbzb.getXmbh());
-                zsyzFjMapper.insertZsyzFj(zsyzFj);
+            if (zsyzFjList != null){
+                for (ZsyzFj zsyzFj : zsyzFjList) {
+                    zsyzFj.setSourceId(zsyzSbbzb.getId());
+                    zsyzFj.setType(ONE);
+                    zsyzFj.setXmId(zsyzSbbzb.getId());
+                    zsyzFj.setXmbh(zsyzSbbzb.getXmbh());
+                    zsyzFjMapper.insertZsyzFj(zsyzFj);
+                }
             }
         }
-
         return count;
     }
 

+ 24 - 18
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzTcxxServiceImpl.java

@@ -82,10 +82,13 @@ public class ZsyzTcxxServiceImpl implements IZsyzTcxxService {
 
         zsyzTcxx.setCreateTime(DateUtils.getNowDate());
         int count = zsyzTcxxMapper.insertZsyzTcxx(zsyzTcxx);
-
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzTcxx.getXmId());
-        zsyzSbbzb.setProgress(TEN);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzTcxx.getXmId());
+        if (zsyzSbbzb == null || (!FOR.equals(zsyzSbbzb.getProgress()) && !TWO.equals(zsyzSbbzb.getXmStatus()))) {
+            return 0;
+        }
+        zsyzSbbzb.setProgress(FIV);
+        zsyzSbbzb.setXmStatus(ONE);
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         //保存附件信息
         List<ZsyzFj> zsyzFjList = zsyzTcxx.getZsyzFjList();
@@ -107,7 +110,8 @@ public class ZsyzTcxxServiceImpl implements IZsyzTcxxService {
         zsyzLcjl.setDeptId(dept.getDeptId());
         String deptName = dept.getDeptName();
         zsyzLcjl.setDeptName(deptName);
-        zsyzLcjl.setProgress(TEN);
+        zsyzLcjl.setProgress(FIV);
+        zsyzLcjl.setXmStatus(ONE);
         zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
         return count;
 
@@ -125,13 +129,14 @@ public class ZsyzTcxxServiceImpl implements IZsyzTcxxService {
 
         zsyzTcxx.setUpdateTime(DateUtils.getNowDate());
         int count = zsyzTcxxMapper.updateZsyzTcxx(zsyzTcxx);
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzTcxx.getXmId());
-        ZsyzSbbzb zsyzSbbzbOld = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzTcxx.getXmId());
-        if (zsyzSbbzbOld != null && zsyzSbbzbOld.getProgress().equals(NIN)) {
-            zsyzSbbzb.setProgress(TEN);
-            zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+        //先去判断项目状态
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbMapper.selectZsyzSbbzbById(zsyzTcxx.getXmId());
+        if (zsyzSbbzb == null || (!FIV.equals(zsyzSbbzb.getProgress()) && TWO.equals(zsyzSbbzb.getXmStatus()))) {
+            return 0;
         }
+        zsyzSbbzb.setProgress(FIV);
+        zsyzSbbzb.setXmStatus(ONE);
+        zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
         //修改附件
         if (zsyzTcxx.getZsyzFjList() != null && zsyzTcxx.getZsyzFjList().size() > 0) {
             ZsyzFj zsyzFjDelete = new ZsyzFj();
@@ -141,16 +146,17 @@ public class ZsyzTcxxServiceImpl implements IZsyzTcxxService {
             zsyzFjMapper.deleteZsyzFjBySourceId(zsyzFjDelete);
             //再将文件新增进数据库
             List<ZsyzFj> zsyzFjList = zsyzTcxx.getZsyzFjList();
-            for (ZsyzFj zsyzFj : zsyzFjList) {
-                zsyzFj.setSourceId(zsyzTcxx.getId());
-                zsyzFj.setType(FOR);
-                zsyzFj.setXmId(zsyzTcxx.getXmId());
-                zsyzFj.setXmbh(zsyzTcxx.getXmbh());
-                zsyzFjMapper.insertZsyzFj(zsyzFj);
+            if (zsyzFjList != null){
+                for (ZsyzFj zsyzFj : zsyzFjList) {
+                    zsyzFj.setSourceId(zsyzTcxx.getId());
+                    zsyzFj.setType(FOR);
+                    zsyzFj.setXmId(zsyzTcxx.getXmId());
+                    zsyzFj.setXmbh(zsyzTcxx.getXmbh());
+                    zsyzFjMapper.insertZsyzFj(zsyzFj);
+                }
             }
         }
         return count;
-
     }
 
     /**

+ 182 - 137
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/common/ZsyzCommonServiceImpL.java

@@ -16,8 +16,10 @@ import com.ruoyi.system.service.projectV2.IZsyzProjectDeptService;
 import com.ruoyi.system.service.projectV2.IZsyzSbbzbService;
 import com.ruoyi.system.service.projectV2.IZsyzShyjService;
 import com.ruoyi.system.service.projectV2.common.IZsyzCommonService;
+import org.jacoco.agent.rt.internal_035b120.core.internal.flow.IFrame;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -61,60 +63,47 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
     //主要功能, 对线索进度进行控制
     @Override
     public AjaxResult xssh(ZsyzShyj zsyzShyj) {
-        //先获取角色
-        List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
-        String roleName = "";
-        if (roles != null && roles.size() > 0) {
-            roleName = roles.get(0).getRoleKey();
-        }
+
         //获取审核结果
         String shjg = zsyzShyj.getShjg();
-        //判断项目阶段
-        String progress = zsyzShyj.getXmjd();
-        //根据角色和项目进度来判断能不能审核,判断是否通过
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzShyj.getXmId());
-
-        if (ONE.equals(shjg)) {
-            //通过
-            //审核通过需要进入下一阶段/要素部门审核通过,不进行进度前进
-            //判断项目进度
-            String progressResult = changeProgress(progress, roleName);
-            if (ERROR.equals(progressResult)) {
-                return AjaxResult.error("当前状态下您没有审核权限");
-            }
-            zsyzSbbzb.setProgress(progressResult);
-            zsyzSbbzb.setShjg(ONE);
-            zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
-        } else if (TWO.equals(shjg)) {
-            String progressResult = changeProgressBack(progress, roleName);
-            if (ERROR.equals(progressResult)) {
-                return AjaxResult.error("当前状态下您没有审核权限");
+        //查询该项目
+        ZsyzSbbzb zsyzSbbzb = zsyzSbbzbService.selectZsyzSbbzbById(zsyzShyj.getXmId());
+        if (zsyzSbbzb != null && TWO.equals(zsyzSbbzb.getProgress())) {
+            //如果项目进度是2,项目承接,招商中心不能审核
+            return AjaxResult.error("当前项目已被指派,等待相关部门审核");
+        }
+        if (zsyzSbbzb != null) {
+            if (ONE.equals(shjg)) {
+                //通过更改项目状态
+                zsyzSbbzb.setXmStatus(TWO);
+                zsyzSbbzb.setShjg(ONE);
+                zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+            } else if (TWO.equals(shjg)) {
+                //驳回
+                zsyzSbbzb.setXmStatus(THR);
+                zsyzSbbzb.setShjg(TWO);
+                zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
             }
-            //驳回
-            zsyzSbbzb.setProgress(progressResult);
-            zsyzSbbzb.setShjg(TWO);
-            zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+            //往审核意见表插入数据
+            LoginUser loginUser = SecurityUtils.getLoginUser();
+            SysDept dept = loginUser.getUser().getDept();
+            zsyzShyj.setDeptId(dept.getDeptId());
+            zsyzShyj.setShrxm(dept.getDeptName());
+            zsyzShyj.setXmjd(xmjd(zsyzSbbzb.getProgress()));
+            zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
+            //插入流程记录表
+            ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
+            zsyzLcjl.setXmId(zsyzSbbzb.getId());
+            zsyzLcjl.setXmmc(zsyzShyj.getXmmc());
+            zsyzLcjl.setXmbh(zsyzShyj.getXmbh());
+            zsyzLcjl.setDeptId(dept.getDeptId());
+            String deptName = dept.getDeptName();
+            zsyzLcjl.setDeptName(deptName);
+            zsyzLcjl.setProgress(zsyzSbbzb.getProgress());
+            zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
+            return AjaxResult.success();
         }
-
-        //往审核意见表插入数据
-        LoginUser loginUser = SecurityUtils.getLoginUser();
-        SysDept dept = loginUser.getUser().getDept();
-        zsyzShyj.setDeptId(dept.getDeptId());
-        zsyzShyj.setShrxm(dept.getDeptName());
-        zsyzShyj.setXmjd(xmjd(progress));
-        zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
-        //插入流程记录表
-        ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
-        zsyzLcjl.setXmId(zsyzSbbzb.getId());
-        zsyzLcjl.setXmmc(zsyzShyj.getXmmc());
-        zsyzLcjl.setXmbh(zsyzShyj.getXmbh());
-        zsyzLcjl.setDeptId(dept.getDeptId());
-        String deptName = dept.getDeptName();
-        zsyzLcjl.setDeptName(deptName);
-        zsyzLcjl.setProgress(zsyzSbbzb.getProgress());
-        zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
-        return AjaxResult.success();
+        return AjaxResult.error("未查询到当前项目信息");
     }
 
     /**
@@ -173,21 +162,21 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
 
         if (TWO.equals(shjg)) {
             //承接地审核通过去查询中间表 是否所有指派的要素部门都回复且通过
-            if (zsyzProjectDeptsYsbm != null){
+            if (zsyzProjectDeptsYsbm != null) {
                 Map<String, List<ZsyzProjectDept>> collect = zsyzProjectDeptsYsbm.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getIsHf));
                 List<ZsyzProjectDept> yList = collect.get("Y");
-                if (yList != null && zsyzProjectDeptsYsbm.size() == yList.size()){
+                if (yList != null && zsyzProjectDeptsYsbm.size() == yList.size()) {
                     //说明都回复过
                     Map<String, List<ZsyzProjectDept>> shjpMap = yList.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getShjg));
                     // 判断是否都同意
-                    if (shjpMap != null && shjpMap.size()  == 1 && shjpMap.get(TWO) != null){
-                        // 全部同意 项目进入承接已审核,清空承接地信息
+                    if (shjpMap != null && shjpMap.size() == 1 && shjpMap.get(TWO) != null) {
+                        // 全部同意 项目进入承接已审核
                         zsyzSbbzb.setProgress(TWO);
                         zsyzSbbzb.setXmStatus(TWO);
-                    }else {
+                    } else {
                         //说明都回复过 没有都同意 项目回到 项目首谈已审核,清空承接地信息
                         zsyzSbbzb.setProgress(ONE);
-                        zsyzSbbzb.setXmStatus(TWO);
+                        zsyzSbbzb.setXmStatus(THR);
                     }
                 }
             }
@@ -241,8 +230,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
      * @return
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public AjaxResult xsshYsbm(ZsyzShyj zsyzShyj) {
-
         //先获取角色
         List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
         String roleName = "";
@@ -254,20 +243,77 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         }
         //判断项目阶段
         String progress = zsyzShyj.getXmjd();
-        //根据角色和项目进度来判断能不能审核,判断是否通过
-        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
-        zsyzSbbzb.setId(zsyzShyj.getXmId());
-        //如果是要素部门处理,需要修改中间表的回复字段
-
+        if (!TWO.equals(progress)) {
+            return AjaxResult.error("当前项目进度异常,要素部门无法审核");
+        }
+        //判断是否回复过
         ZsyzProjectDept zsyzProjectDept = new ZsyzProjectDept();
         zsyzProjectDept.setXmId(zsyzShyj.getXmId());
         zsyzProjectDept.setDeptId(SecurityUtils.getDeptId());
-        //查询是否回复过最新的一条
-        ZsyzProjectDept zsyzProjectDeptOld = projectDeptService.selectZsyzProjectDeptByXmId(zsyzProjectDept);
-        if (zsyzProjectDeptOld != null && "Y".equals(zsyzProjectDeptOld.getIsHf())) {
-            return AjaxResult.error("当前已审核");
+        zsyzProjectDept.setDeptType(TWO);
+        zsyzProjectDept.setIsDel("N");
+        List<ZsyzProjectDept> zsyzProjectDepts = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
+        ZsyzProjectDept zsyzProjectDept1 = zsyzProjectDepts.get(0);
+        if (zsyzProjectDept1 != null && "Y".equals(zsyzProjectDept1.getIsHf())) {
+            return AjaxResult.error("当前项目已经回复过");
         }
-        projectDeptService.updateZsyzProjectDeptByXmId(zsyzProjectDept);
+        //审核结果
+        String shjg = zsyzShyj.getShjg();
+        zsyzProjectDept1.setIsHf("Y");
+        zsyzProjectDept1.setShjg(shjg);
+        zsyzProjectDept1.setShyj(zsyzShyj.getShyj());
+        //定义主表修改对象
+        ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
+        zsyzSbbzb.setId(zsyzShyj.getXmId());
+
+        //需要去中间表查询该项目 要素部门和承接地的信息
+        zsyzProjectDept.setDeptId(null);
+        List<ZsyzProjectDept> zsyzProjectDeptsYsbm = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
+        zsyzProjectDept.setDeptType(ONE);
+        List<ZsyzProjectDept> zsyzProjectDeptsCjd = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
+
+        if (TWO.equals(shjg)) {
+            //审核通过
+            //判断是否全部回复
+            Map<String, List<ZsyzProjectDept>> collect = zsyzProjectDeptsYsbm.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getIsHf));
+            List<ZsyzProjectDept> yList = collect.get("Y");
+            if (yList != null && zsyzProjectDeptsYsbm.size() == yList.size()) {
+                Map<String, List<ZsyzProjectDept>> shjpMap = yList.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getShjg));
+                // 判断是否都同意
+                if (shjpMap != null && shjpMap.size() == 1 && shjpMap.get(TWO) != null) {
+                    //要素部门都同意/判断承接地是否同意
+                    if (TWO.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
+                        //如果承接地也同意/自然是回复过的
+                        zsyzSbbzb.setProgress(TWO);
+                        zsyzSbbzb.setXmStatus(TWO);
+                    }
+                }
+            }
+        } else if (THR.equals(shjg)) {
+            //如果不同意,判断是否都回复过
+            zsyzSbbzb.setXmStatus(THR);
+            zsyzSbbzb.setShjg(TWO);
+            //需要去中间表zsyz_project_dept判断要素部门是否都回复过
+            if (zsyzProjectDeptsYsbm != null) {
+                Map<String, List<ZsyzProjectDept>> collect = zsyzProjectDeptsYsbm.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getShjg));
+                List<ZsyzProjectDept> yList = collect.get(THR);
+                if (yList != null && zsyzProjectDeptsYsbm.size() == yList.size()) {
+                    //说明都不同意
+                    //判断承接地是否回复过
+                    if (THR.equals(zsyzProjectDeptsCjd.get(0).getIsHf())) {
+                        //如果承接地也不同意/自然是回复过的
+                        // 项目回到 项目首谈已审核,清空承接地信息
+                        zsyzSbbzb.setProgress(ONE);
+                        zsyzSbbzb.setXmStatus(TWO);
+                    }
+                }
+            }
+        }
+
+        //修改中间表数据
+        projectDeptService.updateZsyzProjectDept(zsyzProjectDept1);
+        //修改主表数据
+        zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
 
         //往审核意见表插入数据
         LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -297,9 +343,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
     @Override
     public AjaxResult census(ZsyzSbbzb zsyzSbbzb) {
         Long deptId = SecurityUtils.getDeptId();
-        //先去redis 中查询
         Map<String, Object> map = new HashMap<>();
-        map = new HashMap<>();
         //定义返回值
         int sk = 0;
         SysUser currentUser = SecurityUtils.getLoginUser().getUser();
@@ -308,30 +352,22 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         // 如果是超级管理员/管理员,则不过滤数据
         List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
         if (roles != null && roles.size() > 0) {
-            for (SysRole role : roles) {
-                //获取角色的权限字符串
-                roleKey = roleKey + "," + role.getRoleKey();
-                if (MANAGE.equals(roleKey)) {
-                    roleKey = MANAGE;
-                    break;
-                }
-            }
+            roleKey = roles.get(0).getRoleKey();
         }
-        boolean flag = true;
-        if (StringUtils.isNotNull(currentUser) && (!currentUser.isAdmin() || MANAGE.equals(roleKey))) {
-            //如果不是admin/或者平台管理员 判断是什么角色
-            if (StringUtils.isNotEmpty(roleKey)) {
-                String[] split = roleKey.split(",");
-                for (int i = 0; i < split.length; i++) {
-                    if (YSBM.equals(split[i])) {
-                        //如果是市直部门则包含承接地数据
-                        flag = false;
-                        break;
-                    }
-                }
+        if (StringUtils.isNotNull(currentUser) && (currentUser.isAdmin() || MANAGE.equals(roleKey) || LEADER.equals(roleKey))) {
+            //如果是admin/或者平台管理员/或者领导 获取到所有数据
+            zsyzSbbzbs = zsyzSbbzbMapper.selectZsyzSbbzbList(zsyzSbbzb);
+            //查询省库数据
+            ZsyzSkxm zsyzSkxm = new ZsyzSkxm();
+            zsyzSkxm.setDeptId(deptId);
+            List<ZsyzSkxm> zsyzSkxms = zsyzSkxmMapper.selectZsyzSkxmList(zsyzSkxm);
+            if (zsyzSkxms != null && zsyzSkxms.size() > 0) {
+                sk = zsyzSkxms.size();
             }
+        } else {
+            //如果不是admin/或者平台管理员 判断是什么角色
             //如果是FALSE 则包含承接地
-            if (flag) {
+            if (CJD.equals(roleKey)) {
                 //只查询承接地数据
                 zsyzSbbzb.setCjdId(deptId);
                 zsyzSbbzbs = zsyzSbbzbMapper.selectZsyzSbbzbCjdList(zsyzSbbzb);
@@ -340,43 +376,45 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                 //查询指派给要素
                 zsyzSbbzbs = zsyzSbbzbMapper.selectZsyzSbbzbListByZp(zsyzSbbzb);
             }
-        } else {
-            //如果是admin/或者平台管理员 获取到所有数据
-            zsyzSbbzbs = zsyzSbbzbMapper.selectZsyzSbbzbList(zsyzSbbzb);
-            //查询省库数据
-            ZsyzSkxm zsyzSkxm = new ZsyzSkxm();
-            zsyzSkxm.setDeptId(deptId);
-            List<ZsyzSkxm> zsyzSkxms = zsyzSkxmMapper.selectZsyzSkxmList(zsyzSkxm);
-            if (zsyzSkxms != null && zsyzSkxms.size() > 0) {
-                sk = zsyzSkxms.size();
-            }
         }
         //对数据进行分组统计
-        int xs = 0;
+        int st = 0;
+        int cj = 0;
         int qy = 0;
         int kg = 0;
         int tc = 0;
         int all = 0;
         if (zsyzSbbzbs != null && zsyzSbbzbs.size() > 0) {
-            for (ZsyzSbbzb sbbzb : zsyzSbbzbs) {
-                String progress = sbbzb.getProgress();
-                if (ONE.equals(progress) || TWO.equals(progress) || THR.equals(progress) || FOR.equals(progress) || FIV.equals(progress)) {
-                    xs = xs + 1;
-                } else if (SIX.equals(progress) || SEV.equals(progress)) {
-                    qy = qy + 1;
-                } else if (EIG.equals(progress) || NIN.equals(progress)) {
-                    kg = kg + 1;
-                } else if (TEN.equals(progress) || ELE.equals(progress)) {
-                    tc = tc + 1;
-                }
+            Map<String, List<ZsyzSbbzb>> collect = zsyzSbbzbs.stream().collect(Collectors.groupingBy(ZsyzSbbzb::getProgress));
+
+            List<ZsyzSbbzb>  stList =  collect.get(ST);
+            if (stList != null){
+                st = stList.size();
+            }
+            List<ZsyzSbbzb>  cjList =  collect.get(CJ);
+            if (stList != null){
+                cj = cjList.size();
+            }
+            List<ZsyzSbbzb>  qyList =  collect.get(QY);
+            if (stList != null){
+                qy = qyList.size();
+            }
+            List<ZsyzSbbzb>  kgList =  collect.get(KG);
+            if (stList != null){
+                kg = kgList.size();
+            }
+            List<ZsyzSbbzb>  tcList =  collect.get(TC);
+            if (stList != null){
+                tc = tcList.size();
             }
             all = zsyzSbbzbs.size();
         }
-        map.put("xs", xs);
-        map.put("qy", qy);
-        map.put("kg", kg);
-        map.put("tc", tc);
-        map.put("sk", sk);
+        map.put(ST, st);
+        map.put(CJ, cj);
+        map.put(QY, qy);
+        map.put(KG, kg);
+        map.put(TC, tc);
+        map.put(SK, sk);
         //todo 问题项目  只有要素部门意见不通过和承接地不承接的是问题项目
         ZsyzShyj zsyzShyj = new ZsyzShyj();
         String xmxsmc = zsyzSbbzb.getXmxsmc();
@@ -449,20 +487,26 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                 int qyNub = 0;
                 int kgNub = 0;
                 int tcNub = 0;
-                for (ZsyzSbbzb sbbzb : zsyzSbbzbs) {
-                    String progress = sbbzb.getProgress();
-                    String xmjd = xmjd(progress);
-                    if (XMJD_ST.equals(xmjd)) {
-                        stNub = stNub + 1;
-                    } else if (XMJD_CJ.equals(xmjd)) {
-                        cjNub = cjNub + 1;
-                    } else if (XMJD_QY.equals(xmjd)) {
-                        qyNub = qyNub + 1;
-                    } else if (XMJD_KG.equals(xmjd)) {
-                        kgNub = kgNub + 1;
-                    } else if (XMJD_TC.equals(xmjd)) {
-                        tcNub = tcNub + 1;
-                    }
+                Map<String, List<ZsyzSbbzb>> collect = zsyzSbbzbs.stream().collect(Collectors.groupingBy(ZsyzSbbzb::getProgress));
+                List<ZsyzSbbzb>  stList =  collect.get(ST);
+                if (stList != null){
+                    stNub = stList.size();
+                }
+                List<ZsyzSbbzb>  cjList =  collect.get(CJ);
+                if (stList != null){
+                    cjNub = cjList.size();
+                }
+                List<ZsyzSbbzb>  qyList =  collect.get(QY);
+                if (stList != null){
+                    qyNub = qyList.size();
+                }
+                List<ZsyzSbbzb>  kgList =  collect.get(KG);
+                if (stList != null){
+                    kgNub = kgList.size();
+                }
+                List<ZsyzSbbzb>  tcList =  collect.get(TC);
+                if (stList != null){
+                    tcNub = tcList.size();
                 }
                 st.add(stNub);
                 cj.add(cjNub);
@@ -471,11 +515,11 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                 tc.add(tcNub);
             }
         }
-        yMpa.put("st", st);
-        yMpa.put("cj", cj);
-        yMpa.put("qy", qy);
-        yMpa.put("kg", kg);
-        yMpa.put("tc", tc);
+        yMpa.put(ST, st);
+        yMpa.put(CJ, cj);
+        yMpa.put(QY, qy);
+        yMpa.put(KG, kg);
+        yMpa.put(TC, tc);
         map.put("y", yMpa);
         return AjaxResult.success(map);
     }
@@ -522,7 +566,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                 projectDeptService.insertZsyzProjectDept(zsyzProjectDept);
             }
         }
-        List<ZsyzProjectDept> yqdwList = zpVo.getYqdwList();
+        //引荐单位
+        List<ZsyzProjectDept> yqdwList = zpVo.getYjdwList();
         if (yqdwList != null) {
             for (ZsyzProjectDept zsyzProjectDept : yqdwList) {
                 zsyzProjectDept.setDeptType(THR);

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/projectV2/ZsyzSbbzbMapper.xml

@@ -459,7 +459,7 @@
         from zsyz_project_dept d
         left join zsyz_sbbzb s on s.id = d.xm_id
         where s.is_del = 'N'
-        and d.dept_id = #{deptId}
+        and d.dept_id = #{deptId} and d.is_del = 'N' and d.dept_type = '2'
         <if test="xmxsmc != null  and xmxsmc != ''">and s.xmxsmc = #{xmxsmc}</if>
         <if test="progress != null  and progress != ''">and find_in_set(s.progress , #{progress})</if>
         <if test="xmStatus != null  and xmStatus != ''">and s.xm_status = #{xmStatus}</if>

+ 3 - 3
ruoyi-system/src/main/resources/mapper/system/projectV2/ZsyzShyjMapper.xml

@@ -72,7 +72,7 @@
     </select>
 
 
-    <!--<select id="selectZsyzShyjListByWt" resultMap="ZsyzShyjResult">
+<!--    <select id="selectZsyzShyjListByWt" resultMap="ZsyzShyjResult">
         SELECT
         ANY_VALUE ( s.id ) as id,
         ANY_VALUE ( s.xm_id ) as xm_id ,
@@ -87,7 +87,7 @@
         FROM
         zsyz_shyj s
         <where>
-            s.shjg = '2'
+            s.shjg = '3'
             <if test="xmmc != null  and xmmc != ''">and s.xmmc like concat( #{xmmc}, '%') </if>
             <if test="params.beginTime != null and params.beginTime != ''">&lt;!&ndash; 开始时间检索 &ndash;&gt;
                 AND date_format(s.create_time,'%Y%m%d') &gt;= date_format(#{params.beginTime},'%Y%m%d')
@@ -117,7 +117,7 @@
         FROM
         zsyz_shyj s
         <where>
-            s.shjg = '2'
+            s.shjg = '3'
             <if test="xmmc != null  and xmmc != ''">and s.xmmc like concat( #{xmmc}, '%') </if>
             <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
                 AND date_format(s.create_time,'%Y%m%d') &gt;= date_format(#{params.beginTime},'%Y%m%d')