fixbug:41006

This commit is contained in:
zhangqinlin
2021-11-02 11:07:29 +08:00
parent 8a05016519
commit e606cea567
3 changed files with 118 additions and 116 deletions
@@ -180,118 +180,120 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
//变更5种项目的邮寄状态
LambdaQueryWrapper<PayMailBillProject> queryPayMailBillProject = new LambdaQueryWrapper<>();
queryPayMailBillProject.eq(PayMailBillProject::getBillId,payMailBill.getId());
PayMailBillProject one = payMailBillProjectService.getOne(queryPayMailBillProject,false);
if(ObjectUtils.isNotEmpty(one)){
LambdaQueryWrapper<PayMailBillProject> queryPayMailBillProjectTwo = new LambdaQueryWrapper<>();
queryPayMailBillProjectTwo.eq(PayMailBillProject::getProjectId,one.getProjectId());
List<PayMailBillProject> listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProjectTwo);
List<PayMailBillProject> list1 = payMailBillProjectService.list(queryPayMailBillProject);
for(PayMailBillProject one:list1) {
if (ObjectUtils.isNotEmpty(one)) {
LambdaQueryWrapper<PayMailBillProject> queryPayMailBillProjectTwo = new LambdaQueryWrapper<>();
queryPayMailBillProjectTwo.eq(PayMailBillProject::getProjectId, one.getProjectId());
List<PayMailBillProject> listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProjectTwo);
// 开票金额
BigDecimal invoice = new BigDecimal("0.00");
// 开票次数
int c = listPayMailBillProject.size();
// 邮寄次数
int y = 0;
if(!CollectionUtils.isEmpty(listPayMailBillProject)){
BigDecimal b = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
invoice = invoice.add(b);
List<String> list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList());
LambdaQueryWrapper<PayMailBill> queryPayMailBill = new LambdaQueryWrapper<>();
queryPayMailBill.in(PayMailBill::getId,list);
queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1);
List<PayMailBill> listPayMailBill = payMailBillService.list(queryPayMailBill);
y = listPayMailBill.size();
}
//获取项目应收金额
BigDecimal receivableAmount = new BigDecimal("0.00");
// 开票金额
BigDecimal invoice = new BigDecimal("0.00");
// 开票次数
int c = listPayMailBillProject.size();
// 邮寄次数
int y = 0;
if (!CollectionUtils.isEmpty(listPayMailBillProject)) {
BigDecimal b = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
invoice = invoice.add(b);
List<String> list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList());
LambdaQueryWrapper<PayMailBill> queryPayMailBill = new LambdaQueryWrapper<>();
queryPayMailBill.in(PayMailBill::getId, list);
queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1);
List<PayMailBill> listPayMailBill = payMailBillService.list(queryPayMailBill);
y = listPayMailBill.size();
}
//获取项目应收金额
BigDecimal receivableAmount = new BigDecimal("0.00");
//判断变更那个项目的邮寄状态
if(GlobalConstants.ONE.equals(one.getProjectType())){
receivableAmount= payCommonProjectService.getById(one.getProjectId()).getReceivableAmount();
//判断变更那个项目的邮寄状态
if (GlobalConstants.ONE.equals(one.getProjectType())) {
receivableAmount = payCommonProjectService.getById(one.getProjectId()).getReceivableAmount();
PayCommonProject payCommonProject = new PayCommonProject();
if(receivableAmount.compareTo(invoice)==0 && c==y){
if (receivableAmount.compareTo(invoice) == 0 && c == y) {
payCommonProject.setId(one.getProjectId());
payCommonProject.setMail(constant.ONE);
payCommonProjectService.updateById(payCommonProject);
}else if(y<=c&&y>0){
} else if (y <= c && y > 0) {
payCommonProject.setId(one.getProjectId());
payCommonProject.setMail(constant.TWO);
payCommonProjectService.updateById(payCommonProject);
}
}else if(GlobalConstants.TWO.equals(one.getProjectType())) {
receivableAmount=payWorkingGroupSubItemService.getById(one.getProjectId()).getReceivableAmount();
PayWorkingGroupSubItem payWorkingGroupSubItem = new PayWorkingGroupSubItem();
if(receivableAmount.compareTo(invoice)==0 && c==y){
payWorkingGroupSubItem.setId(one.getProjectId());
payWorkingGroupSubItem.setMail(constant.ONE);
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
}else if(y<=c&&y>0){
payWorkingGroupSubItem.setId(one.getProjectId());
payWorkingGroupSubItem.setMail(constant.TWO);
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
}
}else if (GlobalConstants.THERE.equals(one.getProjectType())) {
receivableAmount= payMeetingSituationService.getById(one.getProjectId()).getAmountReceivable();
PayMeetingSituation payMeetingSituation = new PayMeetingSituation();
if(receivableAmount.compareTo(invoice)==0 && c==y){
payMeetingSituation.setId(one.getProjectId());
payMeetingSituation.setMail(constant.ONE);
payMeetingSituationService.updateById(payMeetingSituation);
}else if(y<=c&&y>0){
payMeetingSituation.setId(one.getProjectId());
payMeetingSituation.setMail(constant.TWO);
payMeetingSituationService.updateById(payMeetingSituation);
}
}else if (GlobalConstants.FORE.equals(one.getProjectType())) {
receivableAmount= payMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable();
PayMemberProjectSubitem payMemberProjectSubitem = new PayMemberProjectSubitem();
if(receivableAmount.compareTo(invoice)==0 && c==y){
payMemberProjectSubitem.setId(one.getProjectId());
payMemberProjectSubitem.setMail(constant.ONE);
payMemberProjectSubitemService.updateById(payMemberProjectSubitem);
}else if(y<=c&&y>0){
payMemberProjectSubitem.setId(one.getProjectId());
payMemberProjectSubitem.setMail(constant.TWO);
payMemberProjectSubitemService.updateById(payMemberProjectSubitem);
}
}else if (GlobalConstants.FIVE.equals(one.getProjectType())){
receivableAmount=tbMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable();
TbMemberProjectSubitem tbMemberProjectSubitem = new TbMemberProjectSubitem();
if(receivableAmount.compareTo(invoice)==0 && c==y){
tbMemberProjectSubitem.setId(one.getProjectId());
tbMemberProjectSubitem.setMail(constant.ONE);
tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem);
}else if(y<=c&&y>0){
tbMemberProjectSubitem.setId(one.getProjectId());
tbMemberProjectSubitem.setMail(constant.TWO);
tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem);
}
} else if (GlobalConstants.TWO.equals(one.getProjectType())) {
receivableAmount = payWorkingGroupSubItemService.getById(one.getProjectId()).getReceivableAmount();
PayWorkingGroupSubItem payWorkingGroupSubItem = new PayWorkingGroupSubItem();
if (receivableAmount.compareTo(invoice) == 0 && c == y) {
payWorkingGroupSubItem.setId(one.getProjectId());
payWorkingGroupSubItem.setMail(constant.ONE);
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
} else if (y <= c && y > 0) {
payWorkingGroupSubItem.setId(one.getProjectId());
payWorkingGroupSubItem.setMail(constant.TWO);
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
}
} else if (GlobalConstants.THERE.equals(one.getProjectType())) {
receivableAmount = payMeetingSituationService.getById(one.getProjectId()).getAmountReceivable();
PayMeetingSituation payMeetingSituation = new PayMeetingSituation();
if (receivableAmount.compareTo(invoice) == 0 && c == y) {
payMeetingSituation.setId(one.getProjectId());
payMeetingSituation.setMail(constant.ONE);
payMeetingSituationService.updateById(payMeetingSituation);
} else if (y <= c && y > 0) {
payMeetingSituation.setId(one.getProjectId());
payMeetingSituation.setMail(constant.TWO);
payMeetingSituationService.updateById(payMeetingSituation);
}
} else if (GlobalConstants.FORE.equals(one.getProjectType())) {
receivableAmount = payMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable();
PayMemberProjectSubitem payMemberProjectSubitem = new PayMemberProjectSubitem();
if (receivableAmount.compareTo(invoice) == 0 && c == y) {
payMemberProjectSubitem.setId(one.getProjectId());
payMemberProjectSubitem.setMail(constant.ONE);
payMemberProjectSubitemService.updateById(payMemberProjectSubitem);
} else if (y <= c && y > 0) {
payMemberProjectSubitem.setId(one.getProjectId());
payMemberProjectSubitem.setMail(constant.TWO);
payMemberProjectSubitemService.updateById(payMemberProjectSubitem);
}
} else if (GlobalConstants.FIVE.equals(one.getProjectType())) {
receivableAmount = tbMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable();
TbMemberProjectSubitem tbMemberProjectSubitem = new TbMemberProjectSubitem();
if (receivableAmount.compareTo(invoice) == 0 && c == y) {
tbMemberProjectSubitem.setId(one.getProjectId());
tbMemberProjectSubitem.setMail(constant.ONE);
tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem);
} else if (y <= c && y > 0) {
tbMemberProjectSubitem.setId(one.getProjectId());
tbMemberProjectSubitem.setMail(constant.TWO);
tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem);
}
//推送邮寄数据到会员系统
payMailBillService.pushSendToStandards(payMailBill,one.getProjectId());
payMailBillService.pushSendToStandards(payMailBill, one.getProjectId());
}
}
}
PayMailBill payMailBillData = payMailBillService.getById(payMailBill.getId());
if(!Objects.isNull(payMailBillData)){
// 发送消息
SendMessageDTO sendMessageDTO = new SendMessageDTO();
if(!StringUtils.isBlank(payMailBillData.getEmail())){
sendMessageDTO.setEmail(PasswordUtil.decrypt(payMailBillData.getEmail()));
// PayMailBill payMailBillData = payMailBillService.getById(payMailBill.getId());
// if (!Objects.isNull(payMailBillData)) {
// // 发送消息
// SendMessageDTO sendMessageDTO = new SendMessageDTO();
// if (!StringUtils.isBlank(payMailBillData.getEmail())) {
// sendMessageDTO.setEmail(PasswordUtil.decrypt(payMailBillData.getEmail()));
// }
// if (!StringUtils.isBlank(payMailBillData.getContactMobile())) {
// sendMessageDTO.setToUser(PasswordUtil.decrypt(payMailBillData.getContactMobile()));
// sendMessageDTO.setPhone(PasswordUtil.decrypt(payMailBillData.getContactMobile()));
// }
// HashMap<String, String> map = new HashMap<>();
// map.put("projectName", payMailBillData.getProjectName());
// sendMessageDTO.setFromUser(sysUser.getUsername());
// sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG9.getCode());
// sendMessageDTO.setTemplateParam(map);
// sendMessageDTO.setBusType("C_OPEN_TYPE9");
// JSONObject jsonObject = new JSONObject();
// jsonObject.put("id", payMailBill.getPostNo());
// sendMessageDTO.setBusId(jsonObject.toJSONString());
// sendMessageService.SendMessageService(sendMessageDTO);
// }
}
if(!StringUtils.isBlank(payMailBillData.getContactMobile())){
sendMessageDTO.setToUser(PasswordUtil.decrypt(payMailBillData.getContactMobile()));
sendMessageDTO.setPhone(PasswordUtil.decrypt(payMailBillData.getContactMobile()));
}
HashMap<String,String> map = new HashMap<>();
map.put("projectName",payMailBillData.getProjectName());
sendMessageDTO.setFromUser(sysUser.getUsername());
sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG9.getCode());
sendMessageDTO.setTemplateParam(map);
sendMessageDTO.setBusType("C_OPEN_TYPE9");
JSONObject jsonObject = new JSONObject();
jsonObject.put("id",payMailBill.getPostNo());
sendMessageDTO.setBusId(jsonObject.toJSONString());
sendMessageService.SendMessageService(sendMessageDTO);
}
return Result.OK("编辑成功!");
}
@@ -158,20 +158,20 @@ public class PayMailContractController extends JeroController<PayMailContract, I
return Result.OK("操作成功!");
}
/**
* 票据邮寄打印
*
*/
@ApiOperation(value="合同邮寄打印", notes="合同邮寄打印")
@Transactional
@PostMapping(value = "/print")
public Result<?> print(@RequestParam(name="id") String id) {
PayMailContract payMailContract = payMailContractService.getById(id);
HashMap<String, PayMailContract> hashMap = new HashMap<>();
hashMap.put("payMailBill",payMailContract);
return Result.OK(hashMap);
}
//
// /**
// * 票据邮寄打印
// *
// */
// @ApiOperation(value="合同邮寄打印", notes="合同邮寄打印")
// @Transactional
// @PostMapping(value = "/print")
// public Result<?> print(@RequestParam(name="id") String id) {
// PayMailContract payMailContract = payMailContractService.getById(id);
// HashMap<String, PayMailContract> hashMap = new HashMap<>();
// hashMap.put("payMailBill",payMailContract);
// return Result.OK(hashMap);
// }
/**
* 导出excel
*/
@@ -434,7 +434,7 @@
SELECT
pms.id,
pm.meeting_name AS projectName,
pm.director_name as principalName,
su.realname as principalName,
pms.company_name AS chargeCompanyTemporaryName,
pms.amount_receivable as allMoney,
pms.paid_amount as comeAllMoney,
@@ -784,7 +784,7 @@
SELECT
pms.id,
pm.meeting_name AS projectName,
pm.director_name as principalName,
su.realname as principalName,
pms.company_name AS chargeCompanyTemporaryName,
pms.amount_receivable as allMoney,
pms.paid_amount as comeAllMoney,
@@ -2210,7 +2210,7 @@
</where>
union all
SELECT
tmps.create_time as createTime,
tmps.create_time as createTime
tmps.id AS projectId,
tmp.project_name AS projectName,
tmps.amount_receivable as allMoney,