|
@@ -118,6 +118,11 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
if (shareholderFjs != null && shareholderFjs.size() > 0) {
|
|
if (shareholderFjs != null && shareholderFjs.size() > 0) {
|
|
loanApplication.setShareholderFjList(shareholderFjs);
|
|
loanApplication.setShareholderFjList(shareholderFjs);
|
|
}
|
|
}
|
|
|
|
+ //会议状态
|
|
|
|
+ loanApplication.setVotingResult(FOR);
|
|
|
|
+ if(redisCache.getCacheObject(loanApplication.getLoanApplicationNumber()+"tp")!=null){
|
|
|
|
+ loanApplication.setVotingResult(redisCache.getCacheObject(loanApplication.getLoanApplicationNumber()+"tp"));
|
|
|
|
+ }
|
|
return loanApplication;
|
|
return loanApplication;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -148,11 +153,11 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
public List<LoanApplication> conferenceList(LoanApplication loanApplication) {
|
|
public List<LoanApplication> conferenceList(LoanApplication loanApplication) {
|
|
//查询人员id
|
|
//查询人员id
|
|
SysUser user = SecurityUtils.getLoginUser().getUser();
|
|
SysUser user = SecurityUtils.getLoginUser().getUser();
|
|
- //判断当前角色是否是管理员和admin
|
|
|
|
|
|
+ //判断当前角色是否是管理员和admin,董事长
|
|
List<SysRole> roles = user.getRoles();
|
|
List<SysRole> roles = user.getRoles();
|
|
Boolean bl = false;
|
|
Boolean bl = false;
|
|
for (SysRole role : roles) {
|
|
for (SysRole role : roles) {
|
|
- if (role.getRoleKey().equals("admin") || role.getRoleKey().equals("manager")) {
|
|
|
|
|
|
+ if (role.getRoleKey().equals("admin") || role.getRoleKey().equals("manager")|| role.getRoleKey().equals("sensible")) {
|
|
bl = true;
|
|
bl = true;
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -161,6 +166,12 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
loanApplication.setUserId(user.getUserId());
|
|
loanApplication.setUserId(user.getUserId());
|
|
}
|
|
}
|
|
List<LoanApplication> loanApplications = loanApplicationMapper.conferenceList(loanApplication);
|
|
List<LoanApplication> loanApplications = loanApplicationMapper.conferenceList(loanApplication);
|
|
|
|
+ for (LoanApplication application : loanApplications) {
|
|
|
|
+ application.setVotingResult(FOR);
|
|
|
|
+ if(redisCache.getCacheObject(application.getLoanApplicationNumber()+"tp")!=null){
|
|
|
|
+ application.setVotingResult(redisCache.getCacheObject(application.getLoanApplicationNumber()+"tp"));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
return loanApplications;
|
|
return loanApplications;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -689,7 +700,10 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
loanSchedule.setLoanScheduleTime(DateUtils.getNowDate());
|
|
loanSchedule.setLoanScheduleTime(DateUtils.getNowDate());
|
|
loanScheduleMapper.insertLoanSchedule(loanSchedule);
|
|
loanScheduleMapper.insertLoanSchedule(loanSchedule);
|
|
//插入审核通过的待办提醒
|
|
//插入审核通过的待办提醒
|
|
- waitRemindMapper.batchWaitRemind(waitRemindList);
|
|
|
|
|
|
+ if(waitRemindList.size()>0){
|
|
|
|
+ waitRemindMapper.batchWaitRemind(waitRemindList);
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|
|
return AjaxResult.success();
|
|
return AjaxResult.success();
|
|
}
|
|
}
|
|
@@ -707,74 +721,74 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
Long userId = SecurityUtils.getUserId();
|
|
Long userId = SecurityUtils.getUserId();
|
|
Long aLong = loanApplication.getaUserId();
|
|
Long aLong = loanApplication.getaUserId();
|
|
Long bLong = loanApplication.getbUserId();
|
|
Long bLong = loanApplication.getbUserId();
|
|
- if (!Objects.equals(userId, aLong) || !Objects.equals(userId, bLong)) {
|
|
|
|
- return AjaxResult.error("当前您无权限申诉,请联系管理员");
|
|
|
|
- }
|
|
|
|
- //判断当前项目是否是在申诉状态
|
|
|
|
- String auditType = loanApplication.getAuditType();
|
|
|
|
- if (!FOR.equals(auditType)) {
|
|
|
|
- return AjaxResult.error("当前项目无需申诉或状态异常");
|
|
|
|
- }
|
|
|
|
- //判断是否是放弃申诉 如果AB角色都放弃申诉则项目结束 = 放到回收站
|
|
|
|
- String ssType = loanApplication.getSsType();
|
|
|
|
- if (ONE.equals(ssType)) {
|
|
|
|
- //申诉中判断评审会进度不是1等待上会,则重置为1
|
|
|
|
- loanApplication.setReviewSchedule(ONE);
|
|
|
|
- //进入待审核
|
|
|
|
- loanApplication.setAuditType(ONE);
|
|
|
|
- loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
- //删除基础附件外的所有附件
|
|
|
|
- //loanApplicationFjMapper.deleteLoanApplicationFjByLoanApplicationIdAndBigType(loanApplication.getLoanApplicationId());
|
|
|
|
-
|
|
|
|
- //业务审核意见
|
|
|
|
- ReviewComments reviewComments = new ReviewComments();
|
|
|
|
- reviewComments.setLoanApplicationId(loanApplicationId);
|
|
|
|
- reviewComments.setLoanApplicationNumber(loanApplication.getLoanApplicationNumber());
|
|
|
|
- reviewComments.setAuditSchedule(TWO);
|
|
|
|
- reviewComments.setAuditType(FOR);
|
|
|
|
- reviewComments.setAuditTime(DateUtils.getNowDate());
|
|
|
|
- reviewComments.setCreateBy(SecurityUtils.getUsername());
|
|
|
|
- reviewCommentsMapper.insertReviewComments(reviewComments);
|
|
|
|
- } else if (TWO.equals(ssType)) {
|
|
|
|
- //放弃申诉需要AB角色都要放弃
|
|
|
|
- //先判断是A还是B角色
|
|
|
|
- String key = loanApplicationId + ":ss:";
|
|
|
|
- if (Objects.equals(userId, aLong)) {
|
|
|
|
- Object cacheObjectA = redisCache.getCacheObject(key + A);
|
|
|
|
- if (ObjectUtils.isNotEmpty(cacheObjectA)) {
|
|
|
|
- //
|
|
|
|
- return AjaxResult.error("请勿重复放弃");
|
|
|
|
- } else {
|
|
|
|
- //A是空则查询B
|
|
|
|
- Object cacheObjectB = redisCache.getCacheObject(key + B);
|
|
|
|
- if (ObjectUtils.isNotEmpty(cacheObjectB)) {
|
|
|
|
- //修改项目状态到回收站
|
|
|
|
- loanApplication.setLoanApplicationType(THR);
|
|
|
|
- loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
- } else {
|
|
|
|
- redisCache.setCacheObject(key + A, aLong);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ if (Objects.equals(userId, aLong) || Objects.equals(userId, bLong)) {
|
|
|
|
+ //判断当前项目是否是在申诉状态
|
|
|
|
+ String auditType = loanApplication.getAuditType();
|
|
|
|
+ if (!FOR.equals(auditType)) {
|
|
|
|
+ return AjaxResult.error("当前项目无需申诉或状态异常");
|
|
}
|
|
}
|
|
- if (Objects.equals(userId, bLong)) {
|
|
|
|
- Object cacheObjectB = redisCache.getCacheObject(key + B);
|
|
|
|
- if (ObjectUtils.isNotEmpty(cacheObjectB)) {
|
|
|
|
- //
|
|
|
|
- return AjaxResult.error("请勿重复放弃");
|
|
|
|
- } else {
|
|
|
|
- //B是空则查询A
|
|
|
|
|
|
+ //判断是否是放弃申诉 如果AB角色都放弃申诉则项目结束 = 放到回收站
|
|
|
|
+ String ssType = loanApplication.getSsType();
|
|
|
|
+ if (ONE.equals(ssType)) {
|
|
|
|
+ //申诉中判断评审会进度不是1等待上会,则重置为1
|
|
|
|
+ loanApplication.setReviewSchedule(ONE);
|
|
|
|
+ //进入待审核
|
|
|
|
+ loanApplication.setAuditType(ONE);
|
|
|
|
+ loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
+ //删除基础附件外的所有附件
|
|
|
|
+ //loanApplicationFjMapper.deleteLoanApplicationFjByLoanApplicationIdAndBigType(loanApplication.getLoanApplicationId());
|
|
|
|
+
|
|
|
|
+ //业务审核意见
|
|
|
|
+ ReviewComments reviewComments = new ReviewComments();
|
|
|
|
+ reviewComments.setLoanApplicationId(loanApplicationId);
|
|
|
|
+ reviewComments.setLoanApplicationNumber(loanApplication.getLoanApplicationNumber());
|
|
|
|
+ reviewComments.setAuditSchedule(TWO);
|
|
|
|
+ reviewComments.setAuditType(FOR);
|
|
|
|
+ reviewComments.setAuditTime(DateUtils.getNowDate());
|
|
|
|
+ reviewComments.setCreateBy(SecurityUtils.getUsername());
|
|
|
|
+ reviewCommentsMapper.insertReviewComments(reviewComments);
|
|
|
|
+ } else if (TWO.equals(ssType)) {
|
|
|
|
+ //放弃申诉需要AB角色都要放弃
|
|
|
|
+ //先判断是A还是B角色
|
|
|
|
+ String key = loanApplicationId + ":ss:";
|
|
|
|
+ if (Objects.equals(userId, aLong)) {
|
|
Object cacheObjectA = redisCache.getCacheObject(key + A);
|
|
Object cacheObjectA = redisCache.getCacheObject(key + A);
|
|
if (ObjectUtils.isNotEmpty(cacheObjectA)) {
|
|
if (ObjectUtils.isNotEmpty(cacheObjectA)) {
|
|
- //修改项目状态到回收站
|
|
|
|
- loanApplication.setLoanApplicationType(THR);
|
|
|
|
- loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
|
|
+ //
|
|
|
|
+ return AjaxResult.error("请勿重复放弃");
|
|
} else {
|
|
} else {
|
|
- redisCache.setCacheObject(key + B, aLong);
|
|
|
|
|
|
+ //A是空则查询B
|
|
|
|
+ Object cacheObjectB = redisCache.getCacheObject(key + B);
|
|
|
|
+ if (ObjectUtils.isNotEmpty(cacheObjectB)) {
|
|
|
|
+ //修改项目状态到回收站
|
|
|
|
+ loanApplication.setLoanApplicationType(THR);
|
|
|
|
+ loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
+ } else {
|
|
|
|
+ redisCache.setCacheObject(key + A, aLong);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (Objects.equals(userId, bLong)) {
|
|
|
|
+ Object cacheObjectB = redisCache.getCacheObject(key + B);
|
|
|
|
+ if (ObjectUtils.isNotEmpty(cacheObjectB)) {
|
|
|
|
+ //
|
|
|
|
+ return AjaxResult.error("请勿重复放弃");
|
|
|
|
+ } else {
|
|
|
|
+ //B是空则查询A
|
|
|
|
+ Object cacheObjectA = redisCache.getCacheObject(key + A);
|
|
|
|
+ if (ObjectUtils.isNotEmpty(cacheObjectA)) {
|
|
|
|
+ //修改项目状态到回收站
|
|
|
|
+ loanApplication.setLoanApplicationType(THR);
|
|
|
|
+ loanApplicationMapper.updateLoanApplication(loanApplication);
|
|
|
|
+ } else {
|
|
|
|
+ redisCache.setCacheObject(key + B, aLong);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ return AjaxResult.success();
|
|
}
|
|
}
|
|
- return AjaxResult.success();
|
|
|
|
|
|
+ return AjaxResult.error("当前您无权限申诉,请联系管理员");
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -932,7 +946,7 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
//删掉参会人员
|
|
//删掉参会人员
|
|
sysUserConferenceMapper.deleteSysUserConferenceByTime(loanApplicationOld.getReviewTime(), loanApplicationOld.getLoanApplicationId());
|
|
sysUserConferenceMapper.deleteSysUserConferenceByTime(loanApplicationOld.getReviewTime(), loanApplicationOld.getLoanApplicationId());
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
|
|
+ }else {
|
|
//进入待审核
|
|
//进入待审核
|
|
loanApplication.setAuditType(ONE);
|
|
loanApplication.setAuditType(ONE);
|
|
}
|
|
}
|
|
@@ -1264,8 +1278,11 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
@Override
|
|
@Override
|
|
public AjaxResult exportMb(LoanApplication loanApplication) {
|
|
public AjaxResult exportMb(LoanApplication loanApplication) {
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
|
+ //导出的附件
|
|
String type = loanApplication.getType();
|
|
String type = loanApplication.getType();
|
|
|
|
+ //附件小类
|
|
String fileType = loanApplication.getFileType();
|
|
String fileType = loanApplication.getFileType();
|
|
|
|
+ //附件大类
|
|
String bigType = loanApplication.getBigType();
|
|
String bigType = loanApplication.getBigType();
|
|
if (loanApplication.getLoanApplicationId() != null && loanApplication.getLoanApplicationId() != 0L) {
|
|
if (loanApplication.getLoanApplicationId() != null && loanApplication.getLoanApplicationId() != 0L) {
|
|
loanApplication = loanApplicationMapper.selectLoanApplicationByLoanApplicationId(loanApplication.getLoanApplicationId());
|
|
loanApplication = loanApplicationMapper.selectLoanApplicationByLoanApplicationId(loanApplication.getLoanApplicationId());
|
|
@@ -1291,6 +1308,9 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
String year = DateUtils.getDate();
|
|
String year = DateUtils.getDate();
|
|
String month = DateUtils.getMonth();
|
|
String month = DateUtils.getMonth();
|
|
String day = DateUtils.getDay();
|
|
String day = DateUtils.getDay();
|
|
|
|
+ params.put("year", year);
|
|
|
|
+ params.put("month", month);
|
|
|
|
+ params.put("day", day);
|
|
|
|
|
|
String path = "/profile/mb/temporarily/" + loanApplicationNumber;
|
|
String path = "/profile/mb/temporarily/" + loanApplicationNumber;
|
|
//查询公司信息
|
|
//查询公司信息
|
|
@@ -1306,8 +1326,6 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
chineseNum = StringUtils.convert(Integer.parseInt(loanApplication.getLoanApplicationNumber()));
|
|
chineseNum = StringUtils.convert(Integer.parseInt(loanApplication.getLoanApplicationNumber()));
|
|
}
|
|
}
|
|
params.put("chineseNum", chineseNum);
|
|
params.put("chineseNum", chineseNum);
|
|
- //获取当前年、月、日
|
|
|
|
-
|
|
|
|
|
|
|
|
String templatePath = RuoYiConfig.getProfile();
|
|
String templatePath = RuoYiConfig.getProfile();
|
|
String fileDir = RuoYiConfig.getProfile();
|
|
String fileDir = RuoYiConfig.getProfile();
|
|
@@ -1508,8 +1526,28 @@ public class LoanApplicationServiceImpl implements ILoanApplicationService {
|
|
path = path + "/" + fileNameHz;
|
|
path = path + "/" + fileNameHz;
|
|
break;
|
|
break;
|
|
case "15":
|
|
case "15":
|
|
|
|
+ //查询评审人员信息
|
|
|
|
+ //查询所有人员的投票结果
|
|
|
|
+ SysUserConference sysUserConference = new SysUserConference();
|
|
|
|
+ sysUserConference.setLoanApplicationId(loanApplication.getLoanApplicationId());
|
|
|
|
+ sysUserConference.setConferenceTime(loanApplication.getReviewTime());
|
|
|
|
+ List<SysUserConference> sysUserConferences = sysUserConferenceMapper.selectSysUserConferenceList(sysUserConference);
|
|
|
|
+ //拼接姓名
|
|
|
|
+ StringBuilder sb = new StringBuilder();
|
|
|
|
+ for (SysUserConference userConference : sysUserConferences) {
|
|
|
|
+ if(sb.length()>0){
|
|
|
|
+ sb.append(" ").append(userConference.getRealName());
|
|
|
|
+ }else{
|
|
|
|
+ sb.append(userConference.getRealName());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
//评审会时间
|
|
//评审会时间
|
|
|
|
+ params.put("time", loanApplication.getReviewTime());
|
|
|
|
+ //评审会公司
|
|
params.put("enterpriseName", loanApplication.getEnterpriseName());
|
|
params.put("enterpriseName", loanApplication.getEnterpriseName());
|
|
|
|
+ //评审会人员
|
|
|
|
+ params.put("user", sb.toString());
|
|
//path = path + "/委托担保申请书.doc";
|
|
//path = path + "/委托担保申请书.doc";
|
|
templatePath = templatePath + "/mb/评审会通知.docx";
|
|
templatePath = templatePath + "/mb/评审会通知.docx";
|
|
fileDir = fileDir + "/mb/temporarily/" + loanApplicationNumber;
|
|
fileDir = fileDir + "/mb/temporarily/" + loanApplicationNumber;
|