|
@@ -15,13 +15,11 @@ import com.ruoyi.system.mapper.projectV2.ZsyzSbbzbMapper;
|
|
import com.ruoyi.system.mapper.projectV2.ZsyzShyjMapper;
|
|
import com.ruoyi.system.mapper.projectV2.ZsyzShyjMapper;
|
|
import com.ruoyi.system.mapper.projectV2.ZsyzSkxmMapper;
|
|
import com.ruoyi.system.mapper.projectV2.ZsyzSkxmMapper;
|
|
import com.ruoyi.system.service.projectV2.IZsyzProjectDeptService;
|
|
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.IZsyzShyjService;
|
|
import com.ruoyi.system.service.projectV2.common.IZsyzCommonService;
|
|
import com.ruoyi.system.service.projectV2.common.IZsyzCommonService;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
-
|
|
|
|
-import java.time.LocalDate;
|
|
|
|
-import java.time.format.DateTimeFormatter;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -44,6 +42,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private ZsyzSbbzbMapper zsyzSbbzbMapper;
|
|
private ZsyzSbbzbMapper zsyzSbbzbMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IZsyzSbbzbService zsyzSbbzbService;
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private ZsyzSkxmMapper zsyzSkxmMapper;
|
|
private ZsyzSkxmMapper zsyzSkxmMapper;
|
|
@@ -61,47 +61,62 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
//主要功能, 对线索进度进行控制
|
|
//主要功能, 对线索进度进行控制
|
|
@Override
|
|
@Override
|
|
public AjaxResult xssh(ZsyzShyj zsyzShyj) {
|
|
public AjaxResult xssh(ZsyzShyj zsyzShyj) {
|
|
|
|
+ //先获取角色
|
|
|
|
+ List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
|
|
|
|
+ String roleName = "";
|
|
|
|
+ if (roles != null && roles.size() > 0){
|
|
|
|
+ for (SysRole role : roles) {
|
|
|
|
+ roleName = role.getRoleKey();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
//获取审核结果
|
|
//获取审核结果
|
|
String shjg = zsyzShyj.getShjg();
|
|
String shjg = zsyzShyj.getShjg();
|
|
- //往审核意见表插入数据
|
|
|
|
- LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
|
- SysDept dept = loginUser.getUser().getDept();
|
|
|
|
- zsyzShyj.setDeptId(dept.getDeptId());
|
|
|
|
- zsyzShyj.setShrxm(dept.getDeptName());
|
|
|
|
//判断项目阶段
|
|
//判断项目阶段
|
|
String progress = zsyzShyj.getXmjd();
|
|
String progress = zsyzShyj.getXmjd();
|
|
- zsyzShyj.setXmjd(xmjd(progress));
|
|
|
|
|
|
+ //根据角色和项目进度来判断能不能审核,判断是否通过
|
|
|
|
+ ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
|
|
|
|
+ zsyzSbbzb.setId(zsyzShyj.getXmId());
|
|
//如果是要素部门处理,需要修改中间表的回复字段
|
|
//如果是要素部门处理,需要修改中间表的回复字段
|
|
- List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
|
|
|
|
- if (roles != null && roles.size() > 0){
|
|
|
|
- for (SysRole role : roles) {
|
|
|
|
- if (SZBM.equals(role.getRoleKey())){
|
|
|
|
- ZsyzProjectDept zsyzProjectDept = new ZsyzProjectDept();
|
|
|
|
- zsyzProjectDept.setXmId(zsyzShyj.getXmId());
|
|
|
|
- zsyzProjectDept.setDeptId(dept.getDeptId());
|
|
|
|
- projectDeptService.updateZsyzProjectDeptByXmId(zsyzProjectDept);
|
|
|
|
- break;
|
|
|
|
|
|
+ if (SZBM.equals(roleName)){
|
|
|
|
+ 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("当前已审核");
|
|
|
|
+ }
|
|
|
|
+ projectDeptService.updateZsyzProjectDeptByXmId(zsyzProjectDept);
|
|
|
|
+ }else {
|
|
|
|
+ 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 = changeProgress(progress, roleName);
|
|
|
|
+ if (ERROR.equals(progressResult)){
|
|
|
|
+ return AjaxResult.error("当前状态下您没有审核权限");
|
|
|
|
+ }
|
|
|
|
+ //驳回
|
|
|
|
+ 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(progress));
|
|
zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
|
|
zsyzShyjMapper.insertZsyzShyj(zsyzShyj);
|
|
- ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
|
|
|
|
- zsyzSbbzb.setId(zsyzShyj.getXmId());
|
|
|
|
-
|
|
|
|
- if (ONE.equals(shjg)) {
|
|
|
|
- //通过
|
|
|
|
- //审核通过需要进入下一阶段/要素部门审核通过,不进行进度前进
|
|
|
|
- //判断项目进度
|
|
|
|
- zsyzSbbzb.setProgress(changeProgress(progress));
|
|
|
|
- zsyzSbbzb.setShjg(ONE);
|
|
|
|
- zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
|
|
|
|
- } else if (TWO.equals(shjg)) {
|
|
|
|
- //驳回
|
|
|
|
- zsyzSbbzb.setProgress(changeProgressBack(progress));
|
|
|
|
- zsyzSbbzb.setShjg(TWO);
|
|
|
|
- zsyzSbbzbMapper.updateZsyzSbbzbProgress(zsyzSbbzb);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
//插入流程记录表
|
|
//插入流程记录表
|
|
ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
|
|
ZsyzLcjl zsyzLcjl = new ZsyzLcjl();
|
|
zsyzLcjl.setXmId(zsyzSbbzb.getId());
|
|
zsyzLcjl.setXmId(zsyzSbbzb.getId());
|
|
@@ -260,7 +275,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
for (int i = 0; i < 4; i++) {
|
|
for (int i = 0; i < 4; i++) {
|
|
ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
|
|
ZsyzSbbzb zsyzSbbzb = new ZsyzSbbzb();
|
|
zsyzSbbzb.setParams(dateList.get(i));
|
|
zsyzSbbzb.setParams(dateList.get(i));
|
|
- List<ZsyzSbbzb> zsyzSbbzbs = zsyzSbbzbMapper.selectZsyzSbbzbList(zsyzSbbzb);
|
|
|
|
|
|
+ List<ZsyzSbbzb> zsyzSbbzbs = zsyzSbbzbService.selectZsyzSbbzbList(zsyzSbbzb);
|
|
if (zsyzSbbzbs != null && zsyzSbbzbs.size() > 0) {
|
|
if (zsyzSbbzbs != null && zsyzSbbzbs.size() > 0) {
|
|
int xsNub = 0;
|
|
int xsNub = 0;
|
|
int qyNub = 0;
|
|
int qyNub = 0;
|
|
@@ -294,34 +309,40 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
}
|
|
}
|
|
|
|
|
|
//更改项目进度前进
|
|
//更改项目进度前进
|
|
- public String changeProgress(String progress) {
|
|
|
|
- if (ONE.equals(progress)) {
|
|
|
|
|
|
+ public String changeProgress(String progress,String roleName) {
|
|
|
|
+ if (ONE.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = TWO;
|
|
progress = TWO;
|
|
- } else if (FOR.equals(progress)) {
|
|
|
|
|
|
+ } else if (FOR.equals(progress) && (CJD.equals(roleName)|| ADMIN.equals(roleName))) {
|
|
progress = FIV;
|
|
progress = FIV;
|
|
- } else if (SIX.equals(progress)) {
|
|
|
|
|
|
+ } else if (SIX.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = SEV;
|
|
progress = SEV;
|
|
- } else if (EIG.equals(progress)) {
|
|
|
|
|
|
+ } else if (EIG.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = NIN;
|
|
progress = NIN;
|
|
- } else if (TEN.equals(progress)) {
|
|
|
|
|
|
+ } else if (TEN.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = ELE;
|
|
progress = ELE;
|
|
}//项目入归暂时保留
|
|
}//项目入归暂时保留
|
|
|
|
+ else {
|
|
|
|
+ progress = ERROR;
|
|
|
|
+ }
|
|
return progress;
|
|
return progress;
|
|
}
|
|
}
|
|
|
|
|
|
//更改项目进度后退
|
|
//更改项目进度后退
|
|
- public String changeProgressBack(String progress) {
|
|
|
|
- if (TWO.equals(progress)) {
|
|
|
|
|
|
+ public String changeProgressBack(String progress,String roleName) {
|
|
|
|
+ if (TWO.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = ONE;
|
|
progress = ONE;
|
|
- } else if (FOR.equals(progress)) {
|
|
|
|
|
|
+ } else if (FOR.equals(progress) && (CJD.equals(roleName)|| ADMIN.equals(roleName))) {
|
|
progress = TWO;
|
|
progress = TWO;
|
|
- } else if (SIX.equals(progress)) {
|
|
|
|
|
|
+ } else if (SIX.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = FIV;
|
|
progress = FIV;
|
|
- } else if (EIG.equals(progress)) {
|
|
|
|
|
|
+ } else if (EIG.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = SEV;
|
|
progress = SEV;
|
|
- } else if (TEN.equals(progress)) {
|
|
|
|
|
|
+ } else if (TEN.equals(progress) && (MANAGE.equals(roleName)||ADMIN.equals(roleName))) {
|
|
progress = NIN;
|
|
progress = NIN;
|
|
}//项目入归暂时保留
|
|
}//项目入归暂时保留
|
|
|
|
+ else {
|
|
|
|
+ progress = ERROR;
|
|
|
|
+ }
|
|
return progress;
|
|
return progress;
|
|
}
|
|
}
|
|
|
|
|