|
|
@@ -9,8 +9,10 @@ import com.ydtech.core.page.PageRequest;
|
|
|
import com.ydtech.exception.SystemException;
|
|
|
import com.ydtech.modules.inv.model.InvAccountIncoice;
|
|
|
import com.ydtech.modules.inv.model.InvAccountIncoiceResult;
|
|
|
+import com.ydtech.modules.inv.model.InvAccountOperate;
|
|
|
import com.ydtech.modules.inv.model.vo.InvAccountIncoiceQueryVo;
|
|
|
import com.ydtech.modules.inv.service.InvAccountIncoiceService;
|
|
|
+import com.ydtech.modules.inv.service.InvAccountOperateService;
|
|
|
import com.ydtech.utils.StringUtils;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
@@ -21,6 +23,7 @@ import javax.annotation.Resource;
|
|
|
import java.io.Serializable;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import static com.ydtech.modules.inv.service.impl.InvAccountIncoiceServiceImpl.getBigDecimal;
|
|
|
import static com.ydtech.modules.inv.utils.TransferUtils.isProfitFull;
|
|
|
@@ -41,6 +44,9 @@ public class InvAccountIncoiceController {
|
|
|
@Resource
|
|
|
private InvAccountIncoiceService invAccountIncoiceService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private InvAccountOperateService invAccountOperateService;
|
|
|
+
|
|
|
|
|
|
@PostMapping("excel")
|
|
|
@ApiOperation("导出开票记录表")
|
|
|
@@ -57,11 +63,28 @@ public class InvAccountIncoiceController {
|
|
|
@PostMapping("page")
|
|
|
@ApiOperation("分页查询")
|
|
|
public HttpResult selectAll(@RequestBody InvAccountIncoiceQueryVo invAccountIncoice) {
|
|
|
+ /**
|
|
|
+ * 构造分页参数
|
|
|
+ */
|
|
|
PageRequest pageRequest = new PageRequest();
|
|
|
pageRequest.setPageNum(invAccountIncoice.getPageNo());
|
|
|
pageRequest.setPageSize(invAccountIncoice.getPageSize());
|
|
|
Page<InvAccountIncoice> page = PageRequest.buildPageRequest(pageRequest);
|
|
|
LambdaQueryWrapper<InvAccountIncoice> lambdaQuery = new LambdaQueryWrapper<>();
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 如果有开票时间范围,查询开票记录表
|
|
|
+ */
|
|
|
+ if (invAccountIncoice.getApplyTimeStart() != null && invAccountIncoice.getApplyTimeEnd() != null) {
|
|
|
+ LambdaQueryWrapper<InvAccountOperate> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.ge(InvAccountOperate::getApplyTime, invAccountIncoice.getApplyTimeStart());
|
|
|
+ lambdaQueryWrapper.le(InvAccountOperate::getApplyTime, invAccountIncoice.getApplyTimeEnd());
|
|
|
+ lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
|
|
|
+ List<InvAccountOperate> list = invAccountOperateService.list(lambdaQueryWrapper);
|
|
|
+ List<String> collect = list.stream().map(InvAccountOperate::getInvoiceId).collect(Collectors.toList());
|
|
|
+ //将开票id集合放入查询中
|
|
|
+ lambdaQueryWrapper.in(InvAccountOperate::getInvoiceId, collect);
|
|
|
+ }
|
|
|
lambdaQuery
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoice.getBiller()), InvAccountIncoice::getBiller, invAccountIncoice.getBiller())
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoice.getInvoiceBy()), InvAccountIncoice::getInvoiceBy,
|
|
|
@@ -72,7 +95,6 @@ public class InvAccountIncoiceController {
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoice.getOtherUnit()), InvAccountIncoice::getOtherUnit, invAccountIncoice.getOtherUnit())
|
|
|
.like(!StringUtils.isEmpty(invAccountIncoice.getClearFlag()), InvAccountIncoice::getClearFlag, invAccountIncoice.getClearFlag());
|
|
|
|
|
|
-
|
|
|
if (!ObjectUtils.isEmpty(invAccountIncoice.getInvoiceTimeStart()) && !ObjectUtils.isEmpty(invAccountIncoice.getInvoiceTimeEnd())) {
|
|
|
lambdaQuery.ge(InvAccountIncoice::getInvoiceTime, invAccountIncoice.getInvoiceTimeStart().toString());
|
|
|
lambdaQuery.le(InvAccountIncoice::getInvoiceTime, invAccountIncoice.getInvoiceTimeEnd().toString());
|
|
|
@@ -81,8 +103,11 @@ public class InvAccountIncoiceController {
|
|
|
|
|
|
Page<InvAccountIncoice> invAccountIncoicePage = this.invAccountIncoiceService.page(page, lambdaQuery);
|
|
|
|
|
|
+ /**
|
|
|
+ * 合计
|
|
|
+ */
|
|
|
InvAccountIncoiceResult invAccountIncoiceResult = this.invAccountIncoiceService.selectAccountIncoice(invAccountIncoice);
|
|
|
- if(invAccountIncoiceResult == null){
|
|
|
+ if (invAccountIncoiceResult == null) {
|
|
|
InvAccountIncoiceResult invAccountIncoiceResult1 = new InvAccountIncoiceResult();
|
|
|
invAccountIncoiceResult1.setRecords(invAccountIncoicePage.getRecords());
|
|
|
invAccountIncoiceResult1.setCurrent(invAccountIncoice.getPageNo());
|