diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java new file mode 100644 index 00000000..cba0e661 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java @@ -0,0 +1,21 @@ +//package com.jero.contract.vo; +// +//import com.jero.contract.entity.PayIncomeContract; +//import io.swagger.annotations.ApiModelProperty; +//import lombok.Data; +// +//import java.io.Serializable; +// +//@Data +//public class PayIncomeContractOutput extends PayIncomeContract implements Serializable { +// /** +// * 来款状态 0:全部 1:到期未付款 +// */ +// @ApiModelProperty(value = "来款状态 0:全部 1:到期未付款") +// private Integer chargeStatus; +// /** +// * 关联项目 +// */ +// @ApiModelProperty(value = "关联项目") +// private String associatedProject; +//} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java new file mode 100644 index 00000000..e17efbc0 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java @@ -0,0 +1,20 @@ +package com.jero.contract.vo; + +import com.jero.contract.entity.PaySpendingContract; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.io.Serializable; +/** +// * @Description: pay_spending_contract +// * @Author: jeecg-boot +// * @Date: 2021-09-07 +// * @Version: V1.0 +// */ +//@Data +//public class PaySpendingContractOutput extends PaySpendingContract implements Serializable { +// /** +// * 来款状态 0:全部 1:到期未付款 +// */ +// @ApiModelProperty(value = "来款状态 0:全部 1:到期未付款") +// private Integer chargeStatus; +//} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java index 7455169d..725ffd98 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java @@ -39,6 +39,7 @@ import com.jero.project.service.IPayWorkingGroupSubItemService; import com.jero.util.AmountUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -183,94 +184,95 @@ public class PayMailBillController extends JeroController queryPayMailBillProject = new LambdaQueryWrapper<>(); queryPayMailBillProject.eq(PayMailBillProject::getBillId,payMailBill.getId()); - PayMailBillProject one = payMailBillProjectService.getOne(queryPayMailBillProject); + PayMailBillProject one = payMailBillProjectService.getOne(queryPayMailBillProject,false); + if(ObjectUtils.isEmpty(one)){ + LambdaQueryWrapper queryPayMailBillProject2 = new LambdaQueryWrapper<>(); + queryPayMailBillProject2.eq(PayMailBillProject::getProjectId,one.getProjectId()); + List listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject2); - LambdaQueryWrapper queryPayMailBillProject2 = new LambdaQueryWrapper<>(); - queryPayMailBillProject2.eq(PayMailBillProject::getProjectId,one.getProjectId()); - List listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject2); + // 开票金额 + 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 list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList()); + LambdaQueryWrapper queryPayMailBill = new LambdaQueryWrapper<>(); + queryPayMailBill.in(PayMailBill::getId,list); + queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1); + List 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 list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList()); - LambdaQueryWrapper queryPayMailBill = new LambdaQueryWrapper<>(); - queryPayMailBill.in(PayMailBill::getId,list); - queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1); - List 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(); - PayCommonProject payCommonProject = new PayCommonProject(); - if(receivableAmount.compareTo(invoice)==0 && c==y){ - payCommonProject.setId(one.getProjectId()); - payCommonProject.setMail(constant.ONE); - payCommonProjectService.updateById(payCommonProject); - }else if(y<=c&&y>0){ - payCommonProject.setId(one.getProjectId()); - payCommonProject.setMail(constant.TWO); - payCommonProjectService.updateById(payCommonProject); + //判断变更那个项目的邮寄状态 + if(GlobalConstants.ONE.equals(one.getProjectType())){ + receivableAmount= payCommonProjectService.getById(one.getProjectId()).getReceivableAmount(); + PayCommonProject payCommonProject = new PayCommonProject(); + if(receivableAmount.compareTo(invoice)==0 && c==y){ + payCommonProject.setId(one.getProjectId()); + payCommonProject.setMail(constant.ONE); + payCommonProjectService.updateById(payCommonProject); + }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); + } + //推送邮寄数据到会员系统 + payMailBillService.pushSendToStandards(payMailBill,one.getProjectId()); } - }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()); } return Result.OK("编辑成功!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/PayMeetingSituationMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/PayMeetingSituationMapper.java index 42895da1..8c76f654 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/PayMeetingSituationMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/PayMeetingSituationMapper.java @@ -2,6 +2,11 @@ package com.jero.meeting.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; import com.jero.meeting.entity.PayMeetingSituation; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -13,5 +18,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * @Version: V1.0 */ public interface PayMeetingSituationMapper extends BaseMapper { - -} + /** + * 全所统计 + * @param + * @param allProjectStatisticsSearch + * @return + */ + List queryPageList3(@Param("allProjectStatisticsSearch") AllProjectStatisticsSearch allProjectStatisticsSearch); + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/xml/PayMeetingSituationMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/xml/PayMeetingSituationMapper.xml index a6889edc..08c79279 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/xml/PayMeetingSituationMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/mapper/xml/PayMeetingSituationMapper.xml @@ -50,4 +50,55 @@ + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java index 515d612d..5e67e933 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java @@ -1,11 +1,16 @@ package com.jero.meeting.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.meeting.entity.PayMeetingSituation; import com.baomidou.mybatisplus.extension.service.IService; import com.jero.meeting.vo.AddDockVO; import com.jero.meeting.vo.MergePayBillVO; import com.jero.meeting.vo.CheckVO; import com.jero.meeting.vo.PayMeetingSituationVO; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import java.util.List; @@ -54,4 +59,6 @@ public interface IPayMeetingSituationService extends IService queryPageList3( AllProjectStatisticsSearch allProjectStatisticsSearch); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java index 02d45313..5d6c2eb3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java @@ -2,6 +2,8 @@ package com.jero.meeting.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.vo.LoginUser; @@ -25,7 +27,10 @@ import com.jero.meeting.vo.*; import com.jero.payment.entity.PayPaymentRecord; import com.jero.payment.service.IPayPaymentRecordService; import com.jero.project.common.PayProjectCommon; +import com.jero.project.entity.PayWorkGroupSubletStatistics; import com.jero.standards.memberinfo.service.IMemberInfoService; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.entity.PayContactsManagementTemporary; import com.jero.temporary.service.IPayCompanyManagementTemporaryService; @@ -71,6 +76,8 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryPageList3( AllProjectStatisticsSearch allProjectStatisticsSearch) { + return payMeetingSituationMapper.queryPageList3(allProjectStatisticsSearch); + } + /** * 更新 */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/PayMemberProjectMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/PayMemberProjectMapper.java index 0eaf381c..6fee53b9 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/PayMemberProjectMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/PayMemberProjectMapper.java @@ -4,8 +4,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.member.entity.PayMemberProject; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * @Description: 会员项目表 * @Author: jero-boot @@ -13,6 +18,13 @@ import org.apache.ibatis.annotations.Param; * @Version: V1.0 */ public interface PayMemberProjectMapper extends BaseMapper { + /** + * 全所统计 + * @param + * @param allProjectStatisticsSearch + * @return + */ + List queryPageList3( @Param("allProjectStatisticsSearch") AllProjectStatisticsSearch allProjectStatisticsSearch); /** * @Description 查询与收入合同企业一致的数据 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectMapper.java index f3209f19..a73d272e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectMapper.java @@ -2,6 +2,11 @@ package com.jero.member.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; import com.jero.member.entity.TbMemberProject; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -14,4 +19,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface TbMemberProjectMapper extends BaseMapper { + List queryPageList3(@Param("allProjectStatisticsSearch") AllProjectStatisticsSearch allProjectStatisticsSearch); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/PayMemberProjectMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/PayMemberProjectMapper.xml index 1bfe66e8..05a5a945 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/PayMemberProjectMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/PayMemberProjectMapper.xml @@ -16,6 +16,57 @@ + + + SELECT + tmp.project_name AS projectName, +-- tmp.principal_name as principalName, + tmps.company_name AS chargeCompanyTemporaryName, + tmps.allMoney, + tmps.comeAllMoney, + tmps.charge_use as chargeUse + FROM tb_member_project tmp left join (select id,project_id,company_name,charge_use,in_account,SUM(amount_receivable) AS allMoney,SUM(paid_amount) AS comeAllMoney + from tb_member_project_subitem GROUP BY project_id) tmps on(tmp.id=tmps.project_id) + left join pay_payment_record ppr on(tmps.id=ppr.project_id) + + + AND tmp.project_name LIKE + concat('%',concat(#{allProjectStatisticsSearch.projectName},'%')) + + + AND tmps.charge_use=#{allProjectStatisticsSearch.chargeUse} + + + AND tmps.company_name LIKE + concat('%',concat(#{allProjectStatisticsSearch.chargeCompanyTemporaryName},'%')) + + + AND tmps.in_account=#{allProjectStatisticsSearch.inAccountStatue} + + + AND date_format(ppr.payment_date,'%Y-%m-%d') LIKE concat('%',concat(#{allProjectStatisticsSearch.year},'%')) + + + + + + AND tmps.pack=#{allProjectStatisticsSearch.pack} + + + + AND tmps.allMoney > #{allProjectStatisticsSearch.allMoney} and tmps.allMoney #{allProjectStatisticsSearch.allMoneyTwo} + + + + AND tmps.allMoney > #{allProjectStatisticsSearch.allMoney} + + + AND tmps.allMoney #{allProjectStatisticsSearch.allMoneyTwo} + + + + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectService.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectService.java index 3d20abc9..d9bec7c5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectService.java @@ -5,6 +5,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.member.entity.PayMemberProject; import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; + import com.jero.project.common.PayProjectCommon; import java.util.List; @@ -72,6 +76,8 @@ public interface IPayMemberProjectService extends IService { */ IPage getPage(Page page, QueryWrapper queryWrapper); + List queryPageList3(AllProjectStatisticsSearch allProjectStatisticsSearch); + /** * @Description 查询与收入合同企业一致的数据 * @Author lqt diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/ITbMemberProjectService.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/ITbMemberProjectService.java index 1b00492f..bc32ef39 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/ITbMemberProjectService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/ITbMemberProjectService.java @@ -1,7 +1,13 @@ package com.jero.member.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.member.entity.TbMemberProject; import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; + import java.util.List; /** @@ -58,4 +64,12 @@ public interface ITbMemberProjectService extends IService { * @return */ List queryList(); + + /** + * 全所统计 + * @param + * @param allProjectStatisticsSearch + * @return + */ + List queryPageList3(AllProjectStatisticsSearch allProjectStatisticsSearch); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java index fb7f036e..ec962ab9 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java @@ -14,6 +14,9 @@ import com.jero.member.service.IPayMemberProjectService; import com.jero.member.service.IPayMemberProjectSubitemService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysUserMapper; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import com.jero.project.entity.PayWorkingGroupSubItem; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -34,10 +37,11 @@ import javax.annotation.Resource; */ @Service public class PayPayMemberProjectServiceImpl extends ServiceImpl implements IPayMemberProjectService { - @Resource - private PayMemberProjectMapper payMemberProjectMapper; @Resource private SysUserMapper userMapper; + + @Resource + private PayMemberProjectMapper payMemberProjectMapper; @Autowired private IPayIncomeContractAssociatedService payIncomeContractAssociatedService; @Resource @@ -163,6 +167,17 @@ public class PayPayMemberProjectServiceImpl extends ServiceImpl queryPageList3( AllProjectStatisticsSearch allProjectStatisticsSearch) { + return payMemberProjectMapper.queryPageList3(allProjectStatisticsSearch); + } + @Override public IPage queryListByCompany(Page page,String companyId, String memberName, String projectType,Integer pack,String packYear) { return payMemberProjectMapper.queryListByCompany(page,companyId,memberName,projectType, pack, packYear); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java index 9a42d2f8..0ca8ddc1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java @@ -5,6 +5,8 @@ import com.jero.common.exception.JeroBootException; import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.service.IPayIncomeContractAssociatedService; import com.jero.member.entity.PayMemberProjectSubitem; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.member.entity.TbMemberProject; import com.jero.member.entity.TbMemberProjectSubitem; import com.jero.member.mapper.TbMemberProjectMapper; @@ -12,6 +14,9 @@ import com.jero.member.service.ITbMemberProjectService; import com.jero.member.service.ITbMemberProjectSubitemService; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.springframework.stereotype.Service; import java.util.List; import java.util.stream.Collectors; @@ -33,6 +38,8 @@ public class TbMemberProjectServiceImpl extends ServiceImpl queryList() { return list(); } + + /** + * 全所查询 + * @param + * @param allProjectStatisticsSearch + * @return + */ + @Override + public List queryPageList3( AllProjectStatisticsSearch allProjectStatisticsSearch) { + return tbMemberProjectMapper.queryPageList3(allProjectStatisticsSearch); + } } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupStatisticsController.java similarity index 95% rename from jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java rename to jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupStatisticsController.java index cbe7c9c4..61af0540 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupStatisticsController.java @@ -1,4 +1,4 @@ -package com.jero.statistics.controller; +package com.jero.project.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -21,7 +21,7 @@ import com.jero.util.AmountUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang.ObjectUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.poi.hssf.record.DVALRecord; import org.apache.shiro.SecurityUtils; import org.springframework.beans.BeanUtils; @@ -94,10 +94,12 @@ public class PayWorkingGroupStatisticsController { List records = pageList.getRecords(); //去除项目下来款金额为零的工作组 ArrayList list = new ArrayList<>(); - for(PayWorkingGroupStatistics payWorkingGroupStatistics:records){ - if (!(payWorkingGroupStatistics.getComeAllMoney().equals("0") || payWorkingGroupStatistics.getComeAllMoney() == null)) { - list.add(payWorkingGroupStatistics); - } + for(PayWorkingGroupStatistics payWorkingGroupStatistics:records) { + if (ObjectUtils.isNotEmpty(payWorkingGroupStatistics)) { + if (!("0".equals(payWorkingGroupStatistics.getComeAllMoney()) || payWorkingGroupStatistics.getComeAllMoney() == null)) { + list.add(payWorkingGroupStatistics); + } + } } //计算应收和实收总金额 double sum = list.stream().mapToDouble(t -> Double.parseDouble(t.getAllMoney()==null ? "0.00" : t.getAllMoney())).sum(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSerach.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSerach.java new file mode 100644 index 00000000..e50e8540 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSerach.java @@ -0,0 +1,31 @@ +package com.jero.project.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.DecimalMax; +import java.math.BigDecimal; + +/** + * @author zql + * @date 2021/9/13 10:45 + */ +@Data +public class PayWorkingGroupSerach { + + @ApiModelProperty(value = "工作组") + private String workGroup; + @DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误") + @JsonFormat(shape = JsonFormat.Shape.STRING) + @ApiModelProperty(value = "应收总金额") + private BigDecimal allMoney; + @DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误") + @JsonFormat(shape = JsonFormat.Shape.STRING) + @ApiModelProperty(value = "应收总金额范围") + private BigDecimal allMoneyTwo; + + @ApiModelProperty(value = "来款年份") + private int year; + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupStatistics.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupStatistics.java index dbf7f105..2b3585c5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupStatistics.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupStatistics.java @@ -17,7 +17,7 @@ public class PayWorkingGroupStatistics { @ApiModelProperty(value = "主键") private String id; @Excel(name = "负责人", width = 15) - @ApiModelProperty(value = "负责人") + @ApiModelProperty(value = "工作组") private String workGroup; @Excel(name = "应收总金额", width = 15) @ApiModelProperty(value = "应收总金额") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java index 5d5f817c..185b5d5c 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java @@ -4,8 +4,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.project.entity.PayCommonProject; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * @Description: pay_common_project * @Author: jeecg-boot @@ -23,4 +28,12 @@ public interface PayCommonProjectMapper extends BaseMapper { */ IPage queryPageList(Page page, @Param("payCommonProject") PayCommonProject payCommonProject, @Param("paymentDate") String paymentDate); + + /** + * 全所统计 + * @param + * @param allProjectStatisticsSearch + * @return + */ + List queryPageList3(@Param("allProjectStatisticsSearch")AllProjectStatisticsSearch allProjectStatisticsSearch); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java index 165e778f..e46dbfea 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java @@ -2,11 +2,14 @@ package com.jero.project.mapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.entity.PayWorkGroupSubletStatistics; import com.jero.project.entity.PayWorkingGroupSearch; import com.jero.project.entity.PayWorkingGroupStatistics; import com.jero.project.vo.PayWorkingGroupVO; import com.jero.project.entity.PayWorkingGroup; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -71,4 +74,14 @@ public interface PayWorkingGroupMapper extends BaseMapper { List getGroupList(); + + /** + * @Description 全所统计导出 + * @Author zql + * @Date 2021/9/17 + * @Param + * @Return + * @Exception + */ + List queryPageList3(@Param(value = "allProjectStatisticsSearch") AllProjectStatisticsSearch allProjectStatisticsSearch); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupSubItemMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupSubItemMapper.java index d9c4d1af..958bc7bd 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupSubItemMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupSubItemMapper.java @@ -7,6 +7,8 @@ import com.jero.project.entity.PayWorkingGroupSubItem; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.jero.project.entity.PayWorkingGroupSubletSearch; import com.jero.project.vo.SetChargeInput; +import com.jero.statistics.entity.AllProjectStatistics; +import com.jero.statistics.entity.AllProjectStatisticsSearch; import org.apache.ibatis.annotations.Param; import java.util.List; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml index 851660b2..bc8b306a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml @@ -67,4 +67,53 @@ GROUP BY pcp.id ORDER BY pcp.create_time DESC + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml index 63cf8269..56eaf885 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml @@ -110,10 +110,11 @@ CONCAT(CAST(ROUND((pwgs.comeAllMoney/pwgs.allMoney)*100,2) AS CHAR),'%') AS moneyRate FROM pay_working_group pwg left join (select id,working_group_id,SUM(receivable_amount) AS allMoney,SUM(paid_amount) AS comeAllMoney from pay_working_group_subitem - where - - working_group_id in (joint) - + + + working_group_id in (joint) + + GROUP BY working_group_id) pwgs on(pwg.id=pwgs.working_group_id) left join pay_payment_record ppr on(pwgs.id=ppr.project_id) @@ -139,6 +140,58 @@ group by pwg.id + +