diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml index cca68db9..2d604ac7 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml @@ -9,7 +9,7 @@ from pay_common_project c where (c.receivable_amount ]]> c.paid_amount - or c.paid_amount is null) + or (c.receivable_amount is not null and c.paid_amount is null)) AND c.principal_id = #{payCommonProject.principalId} @@ -23,10 +23,10 @@ UNION ALL select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2 from pay_working_group g - left join pay_working_group_subitem gsub on g.id = gsub.charge_company_id + inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id where (gsub.receivable_amount ]]> gsub.paid_amount - or gsub.paid_amount is null) + or (gsub.receivable_amount is not null and gsub.paid_amount is null)) AND g.principal_id_a = #{payCommonProject.principalId} @@ -40,10 +40,10 @@ UNION ALL select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3 from pay_meeting meeting - left join pay_meeting_situation sit on meeting.id = sit.meeting_id + inner join pay_meeting_situation sit on meeting.id = sit.meeting_id where (sit.amount_receivable ]]> sit.paid_amount - or sit.paid_amount is null) + or (sit.amount_receivable is not null and sit.paid_amount is null)) AND meeting.director_id = #{payCommonProject.principalId} @@ -57,10 +57,10 @@ UNION ALL select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4 from pay_member_project member - left join pay_member_project_subitem msub on member.id=msub.project_id + inner join pay_member_project_subitem msub on member.id=msub.project_id where (msub.amount_receivable ]]> msub.paid_amount - or msub.paid_amount is null) + or (msub.amount_receivable is not null and msub.paid_amount is null)) AND member.director_id = #{payCommonProject.principalId} @@ -74,10 +74,10 @@ UNION ALL select tmsub.id,tmember.project_name,tmsub.charge_use,'','',tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5 from tb_member_project tmember - left join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id + inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id where (tmsub.amount_receivable ]]> tmsub.paid_amount - or tmsub.paid_amount is null) + or (tmsub.amount_receivable is not null and tmsub.paid_amount)) AND tmember.project_name = #{payCommonProject.chargeProject} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java index 0374a850..c4ccf31a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java @@ -8,6 +8,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.vo.Result; import com.jero.common.exception.JeroBootException; import com.jero.contract.common.PayIncomeContractCommon; +import com.jero.meeting.entity.PayMeetingSituation; +import com.jero.meeting.mapper.PayMeetingSituationMapper; +import com.jero.member.entity.PayMemberProjectSubitem; +import com.jero.member.entity.TbMemberProjectSubitem; +import com.jero.member.mapper.PayMemberProjectSubitemMapper; +import com.jero.member.mapper.TbMemberProjectSubitemMapper; import com.jero.payment.entity.PayPaymentRecord; import com.jero.payment.mapper.PayPaymentRecordMapper; import com.jero.payment.service.IPayPaymentRecordService; @@ -15,6 +21,7 @@ import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroup; import com.jero.project.entity.PayWorkingGroupSubItem; import com.jero.project.mapper.PayCommonProjectMapper; +import com.jero.project.mapper.PayWorkingGroupSubItemMapper; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -39,6 +46,14 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl addPhase(PayPaymentRecord payPaymentRecord){ payPaymentRecordMapper.insert(payPaymentRecord); - + + BigDecimal receivableAmount; + Boolean isAdd; + BigDecimal newPaidAmount; //累加主列表实收金额 switch (String.valueOf(payPaymentRecord.getProjectType())){ @@ -66,19 +84,13 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl