|
@@ -9,9 +9,13 @@ import com.ruoyi.common.core.redis.RedisCache;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.framework.manager.AsyncManager;
|
|
|
+import com.ruoyi.framework.manager.factory.AsyncFactory;
|
|
|
import com.ruoyi.system.domain.projectV2.*;
|
|
|
import com.ruoyi.system.domain.projectV2.Vo.ZpVo;
|
|
|
+import com.ruoyi.system.domain.projectV2.common.SendSmsConfig;
|
|
|
import com.ruoyi.system.mapper.projectV2.*;
|
|
|
+import com.ruoyi.system.service.ISysUserService;
|
|
|
import com.ruoyi.system.service.projectV2.IZsyzProjectDeptService;
|
|
|
import com.ruoyi.system.service.projectV2.IZsyzSbbzbService;
|
|
|
import com.ruoyi.system.service.projectV2.IZsyzShyjService;
|
|
@@ -58,6 +62,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
|
|
|
@Autowired
|
|
|
private ZsyzLcjlMapper zsyzLcjlMapper;
|
|
|
+ @Autowired
|
|
|
+ private ISysUserService sysUserService;
|
|
|
|
|
|
|
|
|
//主要功能, 对线索进度进行控制
|
|
@@ -181,9 +187,11 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
//说明 没有都同意 项目回到 项目首谈已审核,清空承接地信息
|
|
|
zsyzSbbzb.setProgress(ONE);
|
|
|
zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
}
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
//说明没有指派要素部门
|
|
|
zsyzSbbzb.setXmStatus(TWO);
|
|
|
}
|
|
@@ -202,6 +210,8 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
zsyzSbbzb.setProgress(ONE);
|
|
|
zsyzSbbzb.setXmStatus(TWO);
|
|
|
zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -293,8 +303,18 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
//判断承接地是否回复过
|
|
|
if (TWO.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
|
|
|
//如果承接地同意/自然是回复过的
|
|
|
- // 项目回到 项目首谈已审核,清空承接地信息
|
|
|
+ // 全部同意 项目进入承接已审核
|
|
|
+ zsyzSbbzb.setProgress(TWO);
|
|
|
zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ } else if (THR.equals(zsyzProjectDeptsCjd.get(0).getShjg())) {
|
|
|
+ //要素同意承接地不同意 且要素部门就一个人
|
|
|
+ //说明都回复过 项目回到 项目首谈已审核,清空承接地信息
|
|
|
+ zsyzSbbzb.setProgress(ONE);
|
|
|
+ zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
@@ -303,15 +323,23 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
//判断除我外是否全部回复
|
|
|
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 (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(zsyzProjectDeptsCjd.get(0).getShjg())) {
|
|
|
+ //要素同意承接地不同意
|
|
|
+ //说明都回复过 项目回到 项目首谈已审核,清空承接地信息
|
|
|
+ zsyzSbbzb.setProgress(ONE);
|
|
|
+ zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ zsyzSbbzb.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -333,19 +361,24 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
// 项目回到 项目首谈已审核,清空承接地信息
|
|
|
zsyzSbbzb.setProgress(ONE);
|
|
|
zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- 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).getShjg())) {
|
|
|
- //如果承接地也不同意/自然是回复过的
|
|
|
- // 项目回到 项目首谈已审核,清空承接地信息
|
|
|
- zsyzSbbzb.setProgress(ONE);
|
|
|
- zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ } else {
|
|
|
+ //要素部门有多个
|
|
|
+ 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 ("Y".equals(zsyzProjectDeptsCjd.get(0).getIsHf())) {
|
|
|
+ // 项目回到 项目首谈已审核,清空承接地信息
|
|
|
+ zsyzSbbzb.setProgress(ONE);
|
|
|
+ zsyzSbbzb.setXmStatus(TWO);
|
|
|
+ //清空要素部门和引资单位中间表
|
|
|
+ projectDeptService.deleteZsyzProjectDeptByXmId(zsyzShyj.getXmId());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -585,6 +618,7 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
}
|
|
|
//把这个项目的指派中间表数据,全部删除
|
|
|
projectDeptService.deleteZsyzProjectDeptByXmId(cjdList.get(0).getXmId());
|
|
|
+ List<SendSmsConfig> sendSmsConfigs = new ArrayList<>();
|
|
|
for (ZsyzProjectDept zsyzProjectDept : cjdList) {
|
|
|
zsyzProjectDept.setDeptType(ONE);
|
|
|
//说明没有指派过承接地
|
|
@@ -596,20 +630,50 @@ public class ZsyzCommonServiceImpL implements IZsyzCommonService {
|
|
|
zsyzSbbzbCjd.setCjdName(zsyzProjectDept.getDeptName());
|
|
|
zsyzSbbzbCjd.setProgress(TWO);
|
|
|
zsyzSbbzbCjd.setXmStatus(ONE);
|
|
|
+ //发送短信
|
|
|
+ List<SysUser> sysUsers = sysUserService.selectUserByDeptId(zsyzProjectDept.getDeptId());
|
|
|
+ if (sysUsers != null) {
|
|
|
+ for (SysUser sysUser : sysUsers) {
|
|
|
+ if (StringUtils.isNotEmpty(sysUser.getPhonenumber())) {
|
|
|
+ SendSmsConfig sendSmsConfig = new SendSmsConfig();
|
|
|
+ sendSmsConfig.setPhone(sysUser.getPhonenumber());
|
|
|
+ sendSmsConfigs.add(sendSmsConfig);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (sendSmsConfigs.size() > 0) {
|
|
|
+ AsyncManager.me().execute(AsyncFactory.sendSms(sendSmsConfigs, "SMS_271465081"));
|
|
|
+ }
|
|
|
+ }
|
|
|
zsyzSbbzbMapper.updateZsyzSbbzbCjd(zsyzSbbzbCjd);
|
|
|
}
|
|
|
}
|
|
|
//要素部门
|
|
|
List<ZsyzProjectDept> ysbmList = zpVo.getYsbmList();
|
|
|
if (ysbmList != null) {
|
|
|
+ List<SendSmsConfig> sendSmsConfigs = new ArrayList<>();
|
|
|
for (ZsyzProjectDept zsyzProjectDept : ysbmList) {
|
|
|
zsyzProjectDept.setDeptType(TWO);
|
|
|
projectDeptService.insertZsyzProjectDept(zsyzProjectDept);
|
|
|
+ //发送短信
|
|
|
+ List<SysUser> sysUsers = sysUserService.selectUserByDeptId(zsyzProjectDept.getDeptId());
|
|
|
+ if (sysUsers != null) {
|
|
|
+ for (SysUser sysUser : sysUsers) {
|
|
|
+ if (StringUtils.isNotEmpty(sysUser.getPhonenumber())) {
|
|
|
+ SendSmsConfig sendSmsConfig = new SendSmsConfig();
|
|
|
+ sendSmsConfig.setPhone(sysUser.getPhonenumber());
|
|
|
+ sendSmsConfigs.add(sendSmsConfig);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (sendSmsConfigs.size() > 0) {
|
|
|
+ AsyncManager.me().execute(AsyncFactory.sendSms(sendSmsConfigs, "SMS_271465081"));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//引荐单位
|
|
|
List<ZsyzProjectDept> yqdwList = zpVo.getYjdwList();
|
|
|
if (yqdwList != null) {
|
|
|
+ List<SendSmsConfig> sendSmsConfigs = new ArrayList<>();
|
|
|
for (ZsyzProjectDept zsyzProjectDept : yqdwList) {
|
|
|
zsyzProjectDept.setDeptType(THR);
|
|
|
projectDeptService.insertZsyzProjectDept(zsyzProjectDept);
|