浏览代码

Merge remote-tracking branch 'origin/master'

LIVE_YE 2 年之前
父节点
当前提交
7496bfb3f9

+ 4 - 3
ruoyi-system/src/main/java/com/ruoyi/system/domain/projectV2/ZsyzShyj.java

@@ -7,6 +7,7 @@ import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
 import javax.xml.crypto.Data;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -58,7 +59,7 @@ public class ZsyzShyj extends BaseEntity
     /** 审核时间 */
     @Excel(name = "审核时间")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private String shsj;
+    private Date shsj;
 
     /**
      * 审核意见列表
@@ -147,11 +148,11 @@ public class ZsyzShyj extends BaseEntity
         return shyj;
     }
 
-    public String getShsj() {
+    public Date getShsj() {
         return shsj;
     }
 
-    public void setShsj(String shsj) {
+    public void setShsj(Date shsj) {
         this.shsj = shsj;
     }
 

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/projectV2/ZsyzProjectDeptMapper.java

@@ -45,6 +45,7 @@ public interface ZsyzProjectDeptMapper
      */
     public int updateZsyzProjectDept(ZsyzProjectDept zsyzProjectDept);
     public int updateZsyzProjectDeptByXmId(ZsyzProjectDept zsyzProjectDept);
+    public int deleteZsyzProjectDeptByXmId(Long xmId);
 
     /**
      * 删除招商引资_项目和部门关联

+ 5 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzProjectDeptServiceImpl.java

@@ -67,6 +67,11 @@ public class ZsyzProjectDeptServiceImpl implements IZsyzProjectDeptService
         return zsyzProjectDeptMapper.insertZsyzProjectDept(zsyzProjectDept);
     }
 
+    @Override
+    public int deleteZsyzProjectDeptByXmId(Long xmId) {
+        return zsyzProjectDeptMapper.deleteZsyzProjectDeptByXmId(xmId);
+    }
+
     /**
      * 修改招商引资_项目和部门关联
      * 

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzSbbzbServiceImpl.java

@@ -173,6 +173,7 @@ public class ZsyzSbbzbServiceImpl implements IZsyzSbbzbService {
     public int updateZsyzSbbzb(ZsyzSbbzb zsyzSbbzb) {
 
         zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
+        zsyzSbbzb.setXmStatus(ONE);
         int count = zsyzSbbzbMapper.updateZsyzSbbzb(zsyzSbbzb);
         //修改附件
         if (zsyzSbbzb.getZsyzFjList() != null && zsyzSbbzb.getZsyzFjList().size() > 0) {

+ 1 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/ZsyzShyjServiceImpl.java

@@ -45,7 +45,6 @@ public class ZsyzShyjServiceImpl implements IZsyzShyjService
      * @return 招商引资_审核意见
      */
     @Override
-    @DataScope(deptAlias = "s")
     public List<ZsyzShyj> selectZsyzShyjList(ZsyzShyj zsyzShyj)
     {
         return zsyzShyjMapper.selectZsyzShyjList(zsyzShyj);
@@ -78,7 +77,7 @@ public class ZsyzShyjServiceImpl implements IZsyzShyjService
         zsyzShyj.setDeptId(dept.getDeptId());
         zsyzShyj.setShrxm(dept.getDeptName());
         zsyzShyj.setCreateTime(DateUtils.getNowDate());
-        zsyzShyj.setShsj(DateUtils.getTime());
+        zsyzShyj.setShsj(DateUtils.getNowDate());
         return zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
     }
 

+ 72 - 25
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/projectV2/common/ZsyzCommonServiceImpL.java

@@ -90,6 +90,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
             zsyzShyj.setDeptId(dept.getDeptId());
             zsyzShyj.setShrxm(dept.getDeptName());
             zsyzShyj.setXmjd(xmjd(zsyzSbbzb.getProgress()));
+            zsyzShyj.setShsj(DateUtils.getNowDate());
             zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
             //插入流程记录表
             ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
@@ -158,8 +159,10 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         zsyzProjectDept.setDeptType(TWO);
         zsyzProjectDept.setIsDel("N");
         List<ZsyzProjectDept> zsyzProjectDeptsYsbm = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
-
+        //修改中间表数据
+        projectDeptService.updateZsyzProjectDept(zsyzProjectDept1);
         if (TWO.equals(shjg)) {
+            //默认通过
             zsyzSbbzb.setProgress(TWO);
             //承接地审核通过去查询中间表 是否所有指派的要素部门都回复且通过
             if (zsyzProjectDeptsYsbm != null) {
@@ -174,13 +177,15 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                         zsyzSbbzb.setProgress(TWO);
                         zsyzSbbzb.setXmStatus(TWO);
                         zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
-                    } else {
-                        //说明都回复过 没有都同意 项目回到 项目首谈已审核,清空承接地信息
+                    } else if (shjpMap != null && shjpMap.size() > 1) {
+                        //说明 没有都同意 项目回到 项目首谈已审核,清空承接地信息
                         zsyzSbbzb.setProgress(ONE);
-                        zsyzSbbzb.setXmStatus(THR);
                         zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
                     }
                 }
+            }else {
+                //说明没有指派要素部门
+                zsyzSbbzb.setXmStatus(TWO);
             }
         } else if (THR.equals(shjg)) {
             //承接地不通过 不改变项目进度 改变项目状态为3:被退回.
@@ -201,8 +206,6 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
             }
         }
 
-        //修改中间表数据
-        projectDeptService.updateZsyzProjectDept(zsyzProjectDept1);
         //修改主表数据
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
 
@@ -212,6 +215,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         zsyzShyj.setDeptId(dept.getDeptId());
         zsyzShyj.setShrxm(dept.getDeptName());
         zsyzShyj.setXmjd(xmjd(progress));
+        zsyzShyj.setShsj(DateUtils.getNowDate());
         zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
         //插入流程记录表
         ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
@@ -275,25 +279,43 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         List<ZsyzProjectDept> zsyzProjectDeptsYsbm = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
         zsyzProjectDept.setDeptType(ONE);
         List<ZsyzProjectDept> zsyzProjectDeptsCjd = projectDeptService.selectZsyzProjectDeptList(zsyzProjectDept);
-
+        //修改中间表数据
+        projectDeptService.updateZsyzProjectDept(zsyzProjectDept1);
+        Long deptId = SecurityUtils.getDeptId();
         if (TWO.equals(shjg)) {
             //如果承接地也同意/自然是回复过的
             zsyzSbbzb.setProgress(TWO);
             //审核通过
-            //判断是否全部回复
-            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 (zsyzProjectDeptsYsbm != null && zsyzProjectDeptsYsbm.size() == 1) {
+                if (zsyzProjectDeptsYsbm.get(0).getDeptId().equals(deptId)) {
+                    //说明是我自己在回复且要素部门就我一个
+                    //判断承接地是否回复过
                     if (TWO.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
-                        //如果承接地同意/自然是回复过的
-                        zsyzSbbzb.setProgress(TWO);
+                        //如果承接地同意/自然是回复过的
+                        // 项目回到 项目首谈已审核,清空承接地信息
                         zsyzSbbzb.setXmStatus(TWO);
                     }
                 }
+            } else {
+                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()-1) == 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)) {
             //如果不同意,判断是否都回复过
@@ -301,12 +323,25 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
             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 (zsyzProjectDeptsYsbm.size() == 1) {
+                    if (zsyzProjectDeptsYsbm.get(0).getDeptId().equals(deptId)) {
+                        //说明是我自己在回复且要素部门就我一个
+                        //判断承接地是否回复过
+                        if (THR.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
+                            //如果承接地也不同意/自然是回复过的
+                            // 项目回到 项目首谈已审核,清空承接地信息
+                            zsyzSbbzb.setProgress(ONE);
+                            zsyzSbbzb.setXmStatus(TWO);
+                        }
+                    }
+                }
+                Map<String, List<ZsyzProjectDept>> collect = zsyzProjectDeptsYsbm.stream().collect(Collectors.groupingBy(ZsyzProjectDept::getIsHf));
+                List<ZsyzProjectDept> yList = collect.get("Y");
+                if (yList != null && (zsyzProjectDeptsYsbm.size() -1 )== yList.size()) {
+                    //说明出我之外都回复过
                     //判断承接地是否回复过
-                    if (THR.equals(zsyzProjectDeptsCjd.get(0).getIsHf())) {
+                    if (THR.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
                         //如果承接地也不同意/自然是回复过的
                         // 项目回到 项目首谈已审核,清空承接地信息
                         zsyzSbbzb.setProgress(ONE);
@@ -315,9 +350,6 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                 }
             }
         }
-
-        //修改中间表数据
-        projectDeptService.updateZsyzProjectDept(zsyzProjectDept1);
         //修改主表数据
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
 
@@ -327,6 +359,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         zsyzShyj.setDeptId(dept.getDeptId());
         zsyzShyj.setShrxm(dept.getDeptName());
         zsyzShyj.setXmjd(xmjd(progress));
+        zsyzShyj.setShsj(DateUtils.getNowDate());
         zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
         //插入流程记录表
         ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
@@ -550,6 +583,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
                     return AjaxResult.error("该线索已指派了承接地,请勿重复指派");
                 }
             }
+            //把这个项目的指派中间表数据,全部删除
+            projectDeptService.deleteZsyzProjectDeptByXmId(cjdList.get(0).getXmId());
             for (ZsyzProjectDept zsyzProjectDept : cjdList) {
                 zsyzProjectDept.setDeptType(ONE);
                 //说明没有指派过承接地
@@ -614,6 +649,18 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
         }
         zsyzSbbzb.setXmStatus(ONE);
         zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
+
+        //插入流程记录表
+        SysDept dept = SecurityUtils.getLoginUser().getUser().getDept();
+        ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
+        zsyzLcjl.setXmId(zsyzSbbzb.getId());
+        zsyzLcjl.setDeptId(dept.getDeptId());
+        String deptName = dept.getDeptName();
+        zsyzLcjl.setDeptName(deptName);
+        zsyzLcjl.setProgress(progress);
+        zsyzLcjl.setXmStatus(zsyzSbbzb.getXmStatus());
+        zsyzLcjl.setRemark("撤回操作");
+        zsyzLcjlMapper.insertZsyzLcjl(zsyzLcjl);
         return AjaxResult.success();
     }
 

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/projectV2/IZsyzProjectDeptService.java

@@ -38,6 +38,8 @@ public interface IZsyzProjectDeptService
      */
     public int insertZsyzProjectDept(ZsyzProjectDept zsyzProjectDept);
 
+    public int deleteZsyzProjectDeptByXmId(Long xmId);
+
     /**
      * 修改招商引资_项目和部门关联
      * 

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

@@ -131,6 +131,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         update zsyz_project_dept set is_hf = 'Y' where xm_id = #{xmId} and dept_id = #{deptId}
     </update>
 
+    <update id="deleteZsyzProjectDeptByXmId" parameterType="Long">
+        update zsyz_project_dept set is_del = 'Y' where xm_id = #{xmId}
+    </update>
     <delete id="deleteZsyzProjectDeptById" parameterType="Long">
         delete from zsyz_project_dept where id = #{id}
     </delete>

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

@@ -61,8 +61,6 @@
             <if test="shyj != null  and shyj != ''">and s.shyj = #{shyj}</if>
             <if test="shsj != null ">and s.shsj = #{shsj}</if>
         </where>
-        <!-- 数据范围过滤 -->
-        ${params.dataScope}
         order by s.shsj desc
     </select>