|
@@ -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();
|
|
|
}
|
|
|
|