@ -3,18 +3,18 @@ package com.qs.serve.modules.pay.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper ;
import com.github.pagehelper.PageHelper ;
import com.qs.serve.common.model.annotation.SysLog ;
import com.qs.serve.common.model.consts.SysConfigKey ;
import com.qs.serve.common.model.dto.PageVo ;
import com.qs.serve.common.model.dto.R ;
import com.qs.serve.common.model.enums.BizType ;
import com.qs.serve.common.model.enums.SystemModule ;
import com.qs.serve.common.util.CollectionUtil ;
import com.qs.serve.common.util.PageUtil ;
import com.qs.serve.common.util.CopierUtil ;
import com.qs.serve.common.util.StringUtils ;
import com.qs.serve.common.util.* ;
import com.qs.serve.modules.bms.entity.BmsSupplier ;
import com.qs.serve.modules.bms.entity.so.BmsSupplierSo ;
import com.qs.serve.modules.bms.service.BmsSupplierService ;
import com.qs.serve.modules.excel.common.DataSupplierSo ;
import com.qs.serve.modules.excel.entity.DataCheckApplyMainInfo ;
import com.qs.serve.modules.excel.service.DateCheckApplyService ;
import com.qs.serve.modules.his.service.HisUserSupplierService ;
import com.qs.serve.modules.pay.common.PaymentType ;
import com.qs.serve.modules.pay.entity.PayPaymentItem ;
@ -24,6 +24,8 @@ import com.qs.serve.modules.pay.entity.dto.PaySupplierAmountDto;
import com.qs.serve.modules.pay.entity.vo.PaySupplierVo ;
import com.qs.serve.modules.pay.mapper.PaySupplierMapper ;
import com.qs.serve.modules.pay.service.PayPaymentItemService ;
import com.qs.serve.modules.sys.entity.SysConfig ;
import com.qs.serve.modules.sys.service.SysConfigService ;
import com.qs.serve.modules.sys.service.SysPostUserService ;
import com.qs.serve.modules.tbs.mapper.TbsCostApplySumAmountMapper ;
import lombok.AllArgsConstructor ;
@ -39,6 +41,7 @@ import com.qs.serve.modules.pay.service.PayPaymentService;
import javax.validation.Valid ;
import java.math.BigDecimal ;
import java.time.LocalDate ;
import java.util.ArrayList ;
import java.util.List ;
import java.util.stream.Collectors ;
@ -58,7 +61,8 @@ public class PayPaymentController {
private PayPaymentItemService paymentItemService ;
private BmsSupplierService bmsSupplierService ;
private PaySupplierMapper paySupplierMapper ;
private TbsCostApplySumAmountMapper tbsCostApplySumAmountMapper ;
private DateCheckApplyService dateCheckApplyService ;
private SysConfigService configService ;
/ * *
* 客户费用列表
@ -71,17 +75,35 @@ public class PayPaymentController {
PageUtil . startPage ( ) ;
List < BmsSupplier > list = bmsSupplierService . list ( lqw ) ;
if ( CollectionUtil . isNotEmpty ( list ) ) {
List < PaySupplierVo > supplierVoList = getPaySupplierVos ( paramSo , list ) ;
List < PaySupplierVo > supplierVoList = getPaySupplierVos ( paramSo , list , true ) ;
return R . byPageHelperList ( list , supplierVoList ) ;
}
return R . byEmptyList ( ) ;
}
@NotNull
public List < PaySupplierVo > getPaySupplierVos ( BmsSupplierSo paramSo , List < BmsSupplier > list ) {
public List < PaySupplierVo > getPaySupplierVos ( BmsSupplierSo paramSo , List < BmsSupplier > list , Boolean isAll ) {
List < PaySupplierVo > supplierVoList = new ArrayList < > ( ) ;
DataSupplierSo so = new DataSupplierSo ( ) ;
if ( ! isAll ) {
SysConfig config = configService . getByKey ( SysConfigKey . DateCheckApplyExcelYear ) ;
if ( config = = null ) {
Assert . throwEx ( "没有设置全局变量【导出明细时间段】" ) ;
}
String year = config . getConfigValue ( ) ;
Integer yearNum = Integer . parseInt ( year ) - 1 ;
LocalDate startDate = LocalDate . of ( LocalDate . now ( ) . getYear ( ) - yearNum , 1 , 1 ) ;
if ( paramSo . getQueryStartTime ( ) = = null | | startDate . isAfter ( paramSo . getQueryStartTime ( ) . toLocalDate ( ) ) ) {
so . setStartDate ( startDate ) ;
}
} else {
so . setStartDate ( paramSo . getQueryStartTime ( ) = = null ? null : paramSo . getQueryStartTime ( ) . toLocalDate ( ) ) ;
}
so . setEndDate ( paramSo . getQueryEndTime ( ) = = null ? LocalDate . now ( ) : paramSo . getQueryEndTime ( ) . toLocalDate ( ) ) ;
list . forEach ( supplier - > {
DataCheckApplyMainInfo mainInfo = tbsCostApplySumAmountMapper . selectDataCheckApplyMainInfo ( supplier . getId ( ) ) ;
so . setSupplierId ( supplier . getId ( ) ) ;
DataCheckApplyMainInfo mainInfo = dateCheckApplyService . getDataCheckApplyMainInfo ( so ) ;
PaySupplierVo supplierVo = new PaySupplierVo ( ) ;
supplierVo . setSupplierId ( Long . parseLong ( supplier . getId ( ) ) ) ;
supplierVo . setSupplierCode ( supplier . getCode ( ) ) ;