package com.qtzl.alterSales.manager.service; import cn.com.taiji.common.manager.net.http.ServiceHandleException; import cn.com.taiji.common.model.dao.Pagination; import cn.com.taiji.common.pub.BeanTools; import cn.hutool.core.bean.BeanUtil; import com.qtzl.alterSales.dao.repo.jpa.primary.FssPaccountFinalbillRepo; import com.qtzl.alterSales.manager.model.protocol.UcServiceError; import com.qtzl.alterSales.manager.model.protocol.sales.FssPaccountFinalbillFindCountRequest; import com.qtzl.alterSales.manager.model.protocol.sales.FssPaccountFinalbillFindCountResponse; import com.qtzl.alterSales.manager.model.protocol.sales.FssPaccountFinalbillFindPageRequest; import com.qtzl.alterSales.manager.vo.FssPaccountFinalbillVo; import org.springframework.stereotype.Service; import javax.annotation.Resource; @Service public class FssPaccountFinalbillServiceImpl implements FssPaccountFinalbillService{ @Resource FssPaccountFinalbillRepo fssPaccountFinalbillRepo; @Override public FssPaccountFinalbillFindCountResponse findByNaturalDateCount(FssPaccountFinalbillFindCountRequest request) throws ServiceHandleException { Pagination pagination = select(request); return toResponse(pagination); } private FssPaccountFinalbillFindCountResponse toResponse(Pagination pagination) { final FssPaccountFinalbillFindCountResponse response = new FssPaccountFinalbillFindCountResponse(); BeanTools.copyProperties(pagination, response); if (pagination.getResult()==null||pagination.getResult().size()<1) { return response; } response.setData(pagination.getResult(FssPaccountFinalbillVo.class)); return response; } private Pagination select(FssPaccountFinalbillFindCountRequest request) throws ServiceHandleException { if (request.getPageSize() > 100) { throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求每页数量过大 " + request.getPageSize()); } FssPaccountFinalbillFindPageRequest queryRequest = new FssPaccountFinalbillFindPageRequest(); BeanUtil.copyProperties(request, queryRequest); return fssPaccountFinalbillRepo.page(queryRequest); } }