diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/LastSignEnum.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/LastSignEnum.java new file mode 100644 index 00000000..12982ba9 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/LastSignEnum.java @@ -0,0 +1,20 @@ +package com.jero.common.enums; + +/** + * 是否是本阶段最新一条标记 + */ +public enum LastSignEnum { + + LAST("LAST"),//本阶段最新一条 + OLD("OLD");//过去的 + + private String code; + + private LastSignEnum(String code) { + this.code = code; + } + + public String getCode() { + return code; + } +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java index e79ea331..859580d2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java @@ -121,14 +121,14 @@ public class PayPaymentCheckController extends JeroController getLastRecord(String projectId) { - List list; + List list; try{ - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(PayPaymentRecord::getProjectId, projectId); - wrapper.eq(PayPaymentRecord::getPaymentStatus, PaymentStatusEnum.TO_BE_REVIEWED.getCode()); - wrapper.orderByDesc(PayPaymentRecord::getCreateTime); + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(PayPaymentRecordSub::getProjectId, projectId); + wrapper.eq(PayPaymentRecordSub::getPaymentStatus, PaymentStatusEnum.TO_BE_REVIEWED.getCode()); + wrapper.orderByDesc(PayPaymentRecordSub::getCreateTime); wrapper.last("limit 1"); - list = payPaymentRecordService.list(wrapper); + list = payPaymentCheckService.list(wrapper); }catch (Exception e){ log.error("审核异常",e); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/entity/PayPaymentRecordSub.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/entity/PayPaymentRecordSub.java index a5cf633d..77bc0ff1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/entity/PayPaymentRecordSub.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/entity/PayPaymentRecordSub.java @@ -40,9 +40,9 @@ public class PayPaymentRecordSub implements Serializable { /**项目id*/ @ApiModelProperty(value = "项目id") private java.lang.String projectId; - /**主记录id*/ - @ApiModelProperty(value = "主记录id") - private java.lang.String recordId; + /**LAST:本阶段最新一条OLD:过去的*/ + @ApiModelProperty(value = "LAST:本阶段最新一条OLD:过去的") + private java.lang.String lastSign; /**项目类型*/ @ApiModelProperty(value = "项目类型") private Integer projectType; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java index b988beaa..55061386 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java @@ -9,6 +9,7 @@ import com.jero.common.common.ProjectCommon; import com.jero.common.common.RoleCommon; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; +import com.jero.common.enums.LastSignEnum; import com.jero.common.enums.ManagementMessageEnums; import com.jero.common.enums.PaymentStatusEnum; import com.jero.common.exception.JeroBootException; @@ -106,10 +107,11 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl amountReceivedList(String id, String projectType){ //列表 - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(PayPaymentRecord::getProjectId, id); - wrapper.orderByAsc(PayPaymentRecord::getPaymentDate); - List list = payPaymentRecordService.list(wrapper); + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(PayPaymentRecordSub::getProjectId, id); + wrapper.eq(PayPaymentRecordSub::getLastSign, LastSignEnum.LAST.getCode());//只查每个阶段最新的那条 + wrapper.orderByAsc(PayPaymentRecordSub::getPaymentDate); + List list = payPaymentCheckService.list(wrapper); list.forEach(p-> { if(StringUtils.isNotBlank(p.getPaymentStatus())){ p.setPaymentStatus_dictText(sysBaseAPI.translateDict("payment_record_status", String.valueOf(p.getPaymentStatus()))); @@ -237,18 +239,20 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl payPaymentRecords = new ArrayList<>(); + payPaymentRecords.add(payPaymentRecord); + payPaymentRecordService.addAmountReceived(payPaymentRecords,ProjectCommon.PAYMENT_FLAG2); }else{ paymentStatus = getPaymentStatus(payCommonProject.getReceivableAmount(), payCommonProject.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态 + payCommonProject.setPaymentStatus(paymentStatus); + //更新主列表 + payCommonProjectMapper.updateById(payCommonProject); //发消息 + principalId = payCommonProject.getPrincipalId(); + project = payCommonProject.getChargeProject(); checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, String.valueOf(payPaymentRecord.getProjectType())); } - payCommonProject.setPaymentStatus(paymentStatus); - //更新主列表 - payCommonProjectMapper.updateById(payCommonProject); - break; // 工作组项目 case PayIncomeContractCommon.PROJECT_TYPE2: @@ -484,27 +486,22 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl payPaymentRecords = new ArrayList<>(); + payPaymentRecords.add(payPaymentRecord); + payPaymentRecordService.addAmountReceived(payPaymentRecords,ProjectCommon.PAYMENT_FLAG2); }else{ paymentStatus = getPaymentStatus(payWorking.getReceivableAmount(), payWorking.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态 + payWorking.setPaymentStatus(paymentStatus); + //更新主列表 + payWorkingGroupSubItemMapper.updateById(payWorking); //发消息 + principalId = payWorkingGroup.getPrincipalIdA(); + project = payWorkingGroup.getWorkingGroupProject(); checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, String.valueOf(payPaymentRecord.getProjectType())); } - payWorking.setPaymentStatus(paymentStatus); - //更新主列表 - payWorkingGroupSubItemMapper.updateById(payWorking); - break; //会员项目 case PayIncomeContractCommon.PROJECT_TYPE4: @@ -515,26 +512,22 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl payPaymentRecords = new ArrayList<>(); + payPaymentRecords.add(payPaymentRecord); + payPaymentRecordService.addAmountReceived(payPaymentRecords,ProjectCommon.PAYMENT_FLAG2); }else{ paymentStatus = getPaymentStatus(member.getAmountReceivable(), member.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态 + member.setPaymentStatus(paymentStatus); + //更新主列表 + payMemberProjectSubitemMapper.updateById(member); + //发消息 + principalId = payMemberProject.getDirectorId(); + project = payMemberProject.getProjectName(); + checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, String.valueOf(payPaymentRecord.getProjectType())); } - member.setPaymentStatus(paymentStatus); - //更新主列表 - payMemberProjectSubitemMapper.updateById(member); - break; //标协会员 case PayIncomeContractCommon.PROJECT_TYPE5: @@ -565,11 +558,18 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl wrapper = new LambdaUpdateWrapper<>(); - wrapper.eq(PayPaymentRecordSub::getRecordId,payPaymentRecord.getId()); - wrapper.eq(PayPaymentRecordSub::getProjectId,payPaymentRecord.getProjectId()); - wrapper.orderByDesc(PayPaymentRecordSub::getCreateTime); - PayPaymentRecordSub sub = payPaymentCheckMapper.selectList(wrapper).get(0); - +// LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); +// wrapper.eq(PayPaymentRecordSub::getRecordId,payPaymentRecord.getId()); +// wrapper.eq(PayPaymentRecordSub::getProjectId,payPaymentRecord.getProjectId()); +// wrapper.orderByDesc(PayPaymentRecordSub::getCreateTime); +// PayPaymentRecordSub sub = payPaymentCheckMapper.selectList(wrapper).get(0); + PayPaymentRecordSub sub = new PayPaymentRecordSub(); + sub.setId(payPaymentRecord.getId()); sub.setRemark(payPaymentRecord.getRemark()); sub.setPaymentStatus(payPaymentRecord.getPaymentStatus()); sub.setReviewerId(payPaymentRecord.getReviewerId()); @@ -664,7 +667,6 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl