package pwc.taxtech.atms.service.impl; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import org.springframework.stereotype.Service; import pwc.taxtech.atms.dpo.RevenueDetailDto; import pwc.taxtech.atms.dto.revenueDetail.RevenueDetailParam; import pwc.taxtech.atms.dto.revenueDetail.RevenueDetailResult; import pwc.taxtech.atms.vat.dao.TrialBalanceFinalMapper; import javax.annotation.Resource; import java.util.List; import java.util.stream.Collectors; @Service public class RevenueDetailService extends BaseService { @Resource private TrialBalanceFinalMapper trialBalanceFinalMapper; /** * @param param * @return */ public PageInfo<RevenueDetailResult> queryPage(RevenueDetailParam param) { Page page = PageHelper.startPage(param.getPageInfo().getPageIndex(), param.getPageInfo().getPageSize()); List<RevenueDetailDto> dataList = trialBalanceFinalMapper.queryBalanceWithRevenueConfig(param.getAccountCode(), param.getAccountName(), param.getType(), param.getProfitCenterCode(), param.getProfitCenterName(), param.getTaxOn(), param.getProductCode(), param.getProductName(), param.getCategory(), param.getProjectId(), param.getPeriod(), param.getQueryDate()); PageInfo<RevenueDetailResult> pageInfo = new PageInfo<>(dataList.stream() .map(o -> beanUtil.copyProperties(o, new RevenueDetailResult())).collect(Collectors.toList())); pageInfo.setTotal(page.getTotal()); return pageInfo; } }