| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498 |
- package com.ydtech.modules.inv.service.impl;
- import com.alibaba.fastjson.JSONObject;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
- import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.ydtech.constants.enums.inv.InvoiceTypeEnum;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.core.page.PageRequest;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.base.controller.BaseController;
- import com.ydtech.modules.inv.dao.InvAccountIncoiceMapper;
- import com.ydtech.modules.inv.model.*;
- import com.ydtech.modules.inv.model.vo.InvAccountIncoiceQueryVo;
- import com.ydtech.modules.inv.service.*;
- import com.ydtech.modules.inv.utils.EasyExcelUtils;
- import com.ydtech.utils.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Service;
- import org.springframework.util.ObjectUtils;
- import java.io.File;
- import java.math.BigDecimal;
- import java.math.RoundingMode;
- import java.time.LocalDateTime;
- import java.time.format.DateTimeFormatter;
- import java.util.ArrayList;
- import java.util.Comparator;
- import java.util.Date;
- import java.util.List;
- import java.util.stream.Collectors;
- import static com.ydtech.modules.inv.utils.TransferUtils.*;
- /**
- * 发票管理表(InvAccountIncoice)表服务实现类
- *
- * @author makejava
- * @since 2024-01-18 16:01:31
- */
- @Service("invAccountIncoiceService")
- public class InvAccountIncoiceServiceImpl extends ServiceImpl<InvAccountIncoiceMapper, InvAccountIncoice> implements InvAccountIncoiceService {
- @Autowired
- private InvAccountIncoiceMapper invAccountIncoiceMapper;
- @Autowired
- private InvAccountCardService invAccountCardService;
- @Autowired
- private InvAccountOperateService invAccountOperateService;
- @Autowired
- private InvAccountService invAccountService;
- @Autowired
- private InvAccountOpService invAccountOpService;
- @Value("${upload.file.path}")
- String uploadFilePath;
- @Override
- public HttpResult insertInvAccountIncoice(InvAccountIncoice invAccountIncoice) {
- if (invAccountIncoice.getRevBankCardNum().equals(invAccountIncoice.getOutBankCardNum())) {
- throw new SystemException("无法给本公司开票");
- }
- BigDecimal tax = getBigDecimal(invAccountIncoice);
- //不含税金额
- BigDecimal noHasTax = new BigDecimal(invAccountIncoice.getInvoiceMoney()).subtract(tax);
- invAccountIncoice.setNotPayoutMoney(invAccountIncoice.getInvoiceMoney());
- //税额
- invAccountIncoice.setTax(noHasTax.toString());
- //不含税金额
- invAccountIncoice.setNoHasTax(tax.toString());
- return HttpResult.ok(invAccountIncoiceMapper.insert(invAccountIncoice));
- }
- /**
- * 新增收入
- *
- * @param invAccountIncoice
- * @return
- */
- @Override
- public HttpResult updateInvAccountIncoice(InvAccountIncoice invAccountIncoice) {
- InvAccountIncoice invAccountIncoice1 = invAccountIncoiceMapper.selectById(invAccountIncoice.getInvoiceId());
- //支出卡号
- String outBankCardNum = invAccountIncoice1.getOutBankCardNum();
- //进账卡号
- String entBankCardNum = invAccountIncoice1.getRevBankCardNum();
- //收入卡
- InvAccountCard entCard = invAccountCardService.getById(invAccountIncoice1.getRevBankCardNum());
- //支出卡
- InvAccountCard outCard = invAccountCardService.getById(invAccountIncoice1.getOutBankCardNum());
- //收入账户
- InvAccount revInvAccount = invAccountService.getById(entCard.getAccountId());
- //支出账户
- InvAccount outInvAccount = invAccountService.getById(outCard.getAccountId());
- //收入金额
- String payoutMoney = invAccountIncoice.getPayoutMoney();
- //支出归属
- JSONObject outProfit = invAccountIncoice.getOutProfit();
- //收入归属
- JSONObject entProfit = invAccountIncoice.getEntProfit();
- if (new BigDecimal(invAccountIncoice1.getInvoiceMoney()).subtract(new BigDecimal(invAccountIncoice1.getPayoutMoney()).add(new BigDecimal(payoutMoney))).compareTo(new BigDecimal("0")) < 0) {
- throw new SystemException("进账金额大于开票金额");
- }
- //进账金额
- invAccountIncoice1.setPayoutMoney(new BigDecimal(invAccountIncoice1.getPayoutMoney()).add(new BigDecimal(payoutMoney)).toString());
- invAccountIncoice1.setNotPayoutMoney(new BigDecimal(invAccountIncoice1.getInvoiceMoney()).subtract(new BigDecimal(invAccountIncoice1.getPayoutMoney())).toString());
- if (new BigDecimal(invAccountIncoice1.getNotPayoutMoney()).compareTo(BigDecimal.ZERO) == 0) {
- invAccountIncoice1.setClearFlag("1");
- }
- //资金流出
- String fundFlow = invAccountIncoice1.getOtherUnit() + "→" + invAccountIncoice1.getInvoiceBy();
- Date date = new Date();
- BaseController baseController = new BaseController();
- //收入操作记录
- InvAccountOperate invAccountOperate = new InvAccountOperate();
- invAccountOperate.setEnterCardId(entBankCardNum);
- invAccountOperate.setApplyAmount(payoutMoney);
- invAccountOperate.setRevenueOutlay("0");
- invAccountOperate.setFundFlow(fundFlow);
- invAccountOperate.setPayMethod(invAccountIncoice.getPayMethod());
- invAccountOperate.setCompany(invAccountIncoice1.getOtherUnit());
- invAccountOperate.setFundUse(invAccountIncoice.getFundUse());
- invAccountOperate.setFundFen(invAccountIncoice.getFundFen());
- invAccountOperate.setInvoiceId(invAccountIncoice1.getInvoiceId());
- invAccountOperate.setCreateTime(LocalDateTime.now());
- invAccountOperate.setEntProfit(entProfit);
- invAccountOperate.setDel(String.valueOf(date.getTime()));
- invAccountOperate.setOutCardNum(outCard.getBankCardNum());
- invAccountOperate.setEnterCardNum(entCard.getBankCardNum());
- invAccountOperate.setCreateId(baseController.getUserId());
- invAccountOperate.setCreateBy(baseController.getUserName());
- //支出操作记录
- InvAccountOperate outInvAccountOperate = new InvAccountOperate();
- outInvAccountOperate.setOutCardNum(outBankCardNum);
- outInvAccountOperate.setApplyAmount(payoutMoney);
- outInvAccountOperate.setRevenueOutlay("1");
- outInvAccountOperate.setFundFlow(fundFlow);
- outInvAccountOperate.setPayMethod(invAccountIncoice.getPayMethod());
- outInvAccountOperate.setCompany(invAccountIncoice1.getOtherUnit());
- outInvAccountOperate.setFundUse(invAccountIncoice.getFundUse());
- outInvAccountOperate.setFundFen(invAccountIncoice.getFundFen());
- outInvAccountOperate.setInvoiceId(invAccountIncoice1.getInvoiceId());
- outInvAccountOperate.setCreateTime(LocalDateTime.now());
- outInvAccountOperate.setOutProfit(outProfit);
- outInvAccountOperate.setDel(String.valueOf(date.getTime()));
- outInvAccountOperate.setOutCardNum(outCard.getBankCardNum());
- outInvAccountOperate.setEnterCardNum(entCard.getBankCardNum());
- outInvAccountOperate.setCreateId(baseController.getUserId());
- outInvAccountOperate.setCreateBy(baseController.getUserName());
- //放入操作记录list中
- List<InvAccountOperate> invAccountOperateList = new ArrayList<>();
- invAccountOperateList.add(outInvAccountOperate);
- invAccountOperateList.add(invAccountOperate);
- //判断收款方是内部还是外部
- if (outInvAccount.getOuterFlag().equals("0")) {
- if (revInvAccount.getOuterFlag().equals("0")) {
- InvAccountExcel invAccountExcel = new InvAccountExcel();
- invAccountExcel.setApplyAmount(payoutMoney);
- List<InvAccountCard> invAccountCards = insideTransfer(outCard, outInvAccount, entCard, revInvAccount, payoutMoney);
- invAccountCardService.updateBatchById(invAccountCards);
- invAccountOperateService.saveBatch(invAccountOperateList);
- //归属列表
- List<InvAccountOp> list = new ArrayList<>();
- List<InvAccountOp> list1 = invAccountEntOpList(entProfit, revInvAccount, entCard, invAccountOperateList.get(0).getAccountOperateId());
- List<InvAccountOp> list2 = invAccountOutOpList(outProfit, outInvAccount, outCard, invAccountOperateList.get(0).getAccountOperateId());
- //将发票id放入 防止撤销发票时对应归属没删掉
- list1.forEach(invAccountOp -> {
- invAccountOp.setInvoiceId(invAccountIncoice1.getInvoiceId());
- });
- list2.forEach(invAccountOp -> {
- invAccountOp.setInvoiceId(invAccountIncoice1.getInvoiceId());
- });
- list.addAll(list1);
- list.addAll(list2);
- invAccountOpService.saveBatch(list);
- } else {
- InvAccountExcel invAccountExcel = new InvAccountExcel();
- invAccountExcel.setOutAccountQuality(revInvAccount.getOuterFlag());
- invAccountExcel.setApplyAmount(payoutMoney);
- List<InvAccountCard> invAccountCards = enterDeTransfer(outCard, outInvAccount, entCard, revInvAccount, payoutMoney);
- invAccountCardService.updateBatchById(invAccountCards);
- invAccountOperateService.saveBatch(invAccountOperateList);
- //归属列表
- List<InvAccountOp> list = new ArrayList<>();
- List<InvAccountOp> list1 = invAccountEntOpList(entProfit, revInvAccount, entCard, invAccountOperateList.get(0).getAccountOperateId());
- List<InvAccountOp> list2 = invAccountOutOpList(outProfit, outInvAccount, outCard, invAccountOperateList.get(0).getAccountOperateId());
- //将发票id放入 防止撤销发票时对应归属没删掉
- list1.forEach(invAccountOp -> {
- invAccountOp.setInvoiceId(invAccountIncoice1.getInvoiceId());
- });
- list2.forEach(invAccountOp -> {
- invAccountOp.setInvoiceId(invAccountIncoice1.getInvoiceId());
- });
- list.addAll(list1);
- list.addAll(list2);
- invAccountOpService.saveBatch(list);
- }
- } else {
- //转账给外部重新设置操作
- InvAccountOperate invAccountOperate1 = new InvAccountOperate();
- invAccountOperate1.setOutCardId(invAccountIncoice1.getOutBankCardNum());
- invAccountOperate1.setEnterCardId(invAccountIncoice1.getRevBankCardNum());
- invAccountOperate1.setApplyAmount(payoutMoney);
- invAccountOperate1.setRevenueOutlay("0");
- invAccountOperate1.setFundFlow(fundFlow);
- invAccountOperate1.setPayMethod(invAccountIncoice.getPayMethod());
- invAccountOperate1.setCompany(invAccountIncoice1.getOtherUnit());
- invAccountOperate1.setFundUse(invAccountIncoice.getFundUse());
- invAccountOperate1.setFundFen(invAccountIncoice.getFundFen());
- invAccountOperate1.setInvoiceId(invAccountIncoice1.getInvoiceId());
- invAccountOperate1.setOutProfit(outProfit);
- invAccountOperate1.setEntProfit(entProfit);
- invAccountOperateService.insert(invAccountOperate1);
- }
- return HttpResult.ok(invAccountIncoiceMapper.updateById(invAccountIncoice1));
- }
- public static BigDecimal getBigDecimal(InvAccountIncoice invAccountIncoice) {
- if (invAccountIncoice.getRate().isEmpty()) {
- throw new SystemException("请填写税率");
- }
- if (invAccountIncoice.getInvoiceMoney().isEmpty()) {
- throw new SystemException("请填写开票金额");
- }
- if (invAccountIncoice.getPayoutMoney().isEmpty()) {
- throw new SystemException("请填写进账金额");
- }
- //税率百分数转为小数
- BigDecimal divide = new BigDecimal(invAccountIncoice.getRate()).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
- //税额
- return new BigDecimal(invAccountIncoice.getInvoiceMoney()).divide((divide.add(new BigDecimal("1"))), 2, RoundingMode.HALF_UP);
- }
- @Override
- public HttpResult delInvAccountIncoice(InvAccountIncoice invAccountIncoice) {
- //发票信息
- InvAccountIncoice enInvAccountIncoice = invAccountIncoiceMapper.selectById(invAccountIncoice.getInvoiceId());
- //回滚收入
- InvAccountCard enterAccount = invAccountCardService.getById(enInvAccountIncoice.getRevBankCardNum());
- InvAccountCard outAccount = invAccountCardService.getById(enInvAccountIncoice.getOutBankCardNum());
- InvAccount entAccount = invAccountService.getById(enterAccount.getAccountId());
- //新增收入回滚操作
- List<InvAccountCard> invAccount = quashOutsideTransfer(outAccount, enterAccount, new BigDecimal(enInvAccountIncoice.getPayoutMoney()), entAccount);
- BaseController baseController = new BaseController();
- InvAccountOperate invAccountOperate = new InvAccountOperate();
- invAccountOperate.setInvoiceId(invAccountIncoice.getInvoiceId());
- invAccountOperate.setUpdateId(baseController.getUserId());
- invAccountOperate.setUpdateBy(baseController.getUserName());
- invAccountOperate.setUpdateTime(LocalDateTime.now());
- invAccountOperate.setDelFlag("1");
- LambdaUpdateWrapper<InvAccountOp> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
- lambdaUpdateWrapper.eq(InvAccountOp::getInvoiceId, invAccountIncoice.getInvoiceId());
- lambdaUpdateWrapper.set(InvAccountOp::getDelFlag, "1");
- try {
- invAccountIncoiceMapper.updateById(invAccountIncoice);
- invAccountCardService.updateBatchById(invAccount);
- invAccountOperateService.updateOperateByIncoiceId(invAccountOperate);
- invAccountOpService.update(lambdaUpdateWrapper);
- } catch (Exception e) {
- return HttpResult.error("撤销失败");
- }
- return HttpResult.ok("撤销成功");
- }
- /**
- * 统计总和
- *
- * @param invAccountIncoiceQueryVo
- * @return
- */
- @Override
- public InvAccountIncoiceResult selectAccountIncoice(InvAccountIncoiceQueryVo invAccountIncoiceQueryVo) {
- return invAccountIncoiceMapper.selectAccountIncoice(invAccountIncoiceQueryVo);
- }
- @Override
- public String excel(InvAccountIncoiceQueryVo invAccountIncoiceQueryVo) {
- LambdaQueryWrapper<InvAccountIncoice> lambdaQuery = new LambdaQueryWrapper<>();
- List<InvAccountIncoice> invAccountIncoices = new ArrayList<>();
- List<InvAccountOperate> list;
- /**
- * 如果有开票时间范围,查询开票记录表
- */
- if (invAccountIncoiceQueryVo.getApplyTimeStart() != null && invAccountIncoiceQueryVo.getApplyTimeEnd() != null) {
- LambdaQueryWrapper<InvAccountOperate> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.ge(InvAccountOperate::getCreateTime, invAccountIncoiceQueryVo.getApplyTimeStart());
- lambdaQueryWrapper.le(InvAccountOperate::getCreateTime, invAccountIncoiceQueryVo.getApplyTimeEnd());
- lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
- list = invAccountOperateService.list(lambdaQueryWrapper);
- List<String> collect = list.stream().map(InvAccountOperate::getInvoiceId).collect(Collectors.toList());
- //将开票id集合放入查询中
- if (!collect.isEmpty()) {
- lambdaQuery.in(InvAccountIncoice::getInvoiceId, collect);
- invAccountIncoices = selectExcel(lambdaQuery, invAccountIncoiceQueryVo);
- }
- } else {
- LambdaQueryWrapper<InvAccountOperate> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
- lambdaQuery
- .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getBiller()), InvAccountIncoice::getBiller, invAccountIncoiceQueryVo.getBiller())
- .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceBy()), InvAccountIncoice::getInvoiceBy,
- invAccountIncoiceQueryVo.getInvoiceBy())
- .eq(InvAccountIncoice::getDelFlag, "0")
- .eq(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceType()), InvAccountIncoice::getInvoiceType,
- invAccountIncoiceQueryVo.getInvoiceType())
- .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getOtherUnit()), InvAccountIncoice::getOtherUnit, invAccountIncoiceQueryVo.getOtherUnit())
- .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getClearFlag()), InvAccountIncoice::getClearFlag, invAccountIncoiceQueryVo.getClearFlag());
- if (!ObjectUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceTimeStart()) && !ObjectUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceTimeEnd())) {
- lambdaQuery.ge(InvAccountIncoice::getInvoiceTime, invAccountIncoiceQueryVo.getInvoiceTimeStart().toString());
- lambdaQuery.le(InvAccountIncoice::getInvoiceTime, invAccountIncoiceQueryVo.getInvoiceTimeEnd().toString());
- }
- lambdaQuery.orderByDesc(InvAccountIncoice::getInvoiceTime);
- invAccountIncoices = selectExcel(lambdaQuery, invAccountIncoiceQueryVo);
- }
- //解决时间格式报错问题
- DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
- invAccountIncoices.forEach(invAccountIncoice -> {
- List<InvAccountOperateResult> payoutTimeList = invAccountIncoiceMapper.selectAccountOperate(invAccountIncoice.getInvoiceId());
- if (payoutTimeList != null && !payoutTimeList.isEmpty()) {
- List<InvAccountOperateResult> filteredList = payoutTimeList.stream()
- .filter(result -> result.getPayoutTime() != null)
- .collect(Collectors.toList());
- if (!filteredList.isEmpty()) {
- filteredList.sort(Comparator.comparing(InvAccountOperateResult::getPayoutTime).reversed());
- invAccountIncoice.setPayoutDate(filteredList.get(0).getPayoutTime().format(formatter).toString());
- } else {
- invAccountIncoice.setPayoutDate("");
- }
- }
- if (invAccountIncoice.getInvoiceTime() != null) {
- invAccountIncoice.setInvoiceDate(invAccountIncoice.getInvoiceTime().toString());
- }
- if (invAccountIncoice.getInvoiceType() != null) {
- invAccountIncoice.setInvoiceType(InvoiceTypeEnum.getNameByCode(invAccountIncoice.getInvoiceType()));
- }
- if (invAccountIncoice.getRate() != null) {
- invAccountIncoice.setRate(invAccountIncoice.getRate() + "%");
- }
- });
- File folder = new File(uploadFilePath);
- if (folder.exists()) {
- return EasyExcelUtils.downExcel(uploadFilePath, InvAccountIncoice.class, invAccountIncoices);
- } else {
- if (folder.mkdirs()) {
- return EasyExcelUtils.downExcel(uploadFilePath, InvAccountIncoice.class, invAccountIncoices);
- } else {
- throw new SystemException("文件导出失败");
- }
- }
- }
- @Override
- public HttpResult selectPage(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::getCreateTime, invAccountIncoice.getApplyTimeStart());
- lambdaQueryWrapper.le(InvAccountOperate::getCreateTime, invAccountIncoice.getApplyTimeEnd());
- lambdaQueryWrapper.isNotNull(InvAccountOperate::getInvoiceId);
- List<InvAccountOperate> list = invAccountOperateService.list(lambdaQueryWrapper);
- List<String> collect = list.stream().map(InvAccountOperate::getInvoiceId).collect(Collectors.toList());
- //将开票id集合放入查询中
- if (!collect.isEmpty()) {
- lambdaQuery.in(InvAccountIncoice::getInvoiceId, collect);
- InvAccountIncoiceResult invAccountIncoiceResult = selectAccountIncoice(lambdaQuery, invAccountIncoice, page);
- return HttpResult.ok(invAccountIncoiceResult);
- }
- InvAccountIncoiceResult invAccountIncoiceResult1 = new InvAccountIncoiceResult();
- List<InvAccountIncoice> list1 = new ArrayList<>();
- invAccountIncoiceResult1.setRecords(list1);
- invAccountIncoiceResult1.setCurrent(invAccountIncoice.getPageNo());
- invAccountIncoiceResult1.setTotal(0);
- invAccountIncoiceResult1.setSize(invAccountIncoice.getPageSize());
- return HttpResult.ok(invAccountIncoiceResult1);
- } else {
- InvAccountIncoiceResult invAccountIncoiceResult = selectAccountIncoice(lambdaQuery, invAccountIncoice, page);
- return HttpResult.ok(invAccountIncoiceResult);
- }
- }
- private InvAccountIncoiceResult selectAccountIncoice(LambdaQueryWrapper<InvAccountIncoice> lambdaQuery, InvAccountIncoiceQueryVo invAccountIncoice, Page<InvAccountIncoice> page) {
- lambdaQuery
- .like(!StringUtils.isEmpty(invAccountIncoice.getBiller()), InvAccountIncoice::getBiller, invAccountIncoice.getBiller())
- .like(!StringUtils.isEmpty(invAccountIncoice.getInvoiceBy()), InvAccountIncoice::getInvoiceBy,
- invAccountIncoice.getInvoiceBy())
- .eq(InvAccountIncoice::getDelFlag, "0")
- .eq(!StringUtils.isEmpty(invAccountIncoice.getInvoiceType()), InvAccountIncoice::getInvoiceType,
- invAccountIncoice.getInvoiceType())
- .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());
- }
- lambdaQuery.orderByDesc(InvAccountIncoice::getInvoiceTime);
- Page<InvAccountIncoice> invAccountIncoicePage = page(page, lambdaQuery);
- /**
- * 合计
- */
- InvAccountIncoiceResult invAccountIncoiceResult = selectAccountIncoice(invAccountIncoice);
- if (invAccountIncoiceResult == null) {
- InvAccountIncoiceResult invAccountIncoiceResult1 = new InvAccountIncoiceResult();
- invAccountIncoiceResult1.setRecords(invAccountIncoicePage.getRecords());
- invAccountIncoiceResult1.setCurrent(invAccountIncoice.getPageNo());
- invAccountIncoiceResult1.setTotal(invAccountIncoicePage.getTotal());
- invAccountIncoiceResult1.setSize(invAccountIncoice.getPageSize());
- return invAccountIncoiceResult1;
- }
- invAccountIncoiceResult.setRecords(invAccountIncoicePage.getRecords());
- invAccountIncoiceResult.setCurrent(invAccountIncoice.getPageNo());
- invAccountIncoiceResult.setTotal(invAccountIncoicePage.getTotal());
- invAccountIncoiceResult.setSize(invAccountIncoice.getPageSize());
- return invAccountIncoiceResult;
- }
- private List<InvAccountIncoice> selectExcel(LambdaQueryWrapper<InvAccountIncoice> lambdaQuery, InvAccountIncoiceQueryVo invAccountIncoiceQueryVo) {
- // lambdaQuery
- // .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getBiller()), InvAccountIncoice::getBiller, invAccountIncoiceQueryVo.getBiller())
- // .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceBy()), InvAccountIncoice::getInvoiceBy,
- // invAccountIncoiceQueryVo.getInvoiceBy())
- // .eq(InvAccountIncoice::getDelFlag, "0")
- // .eq(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceType()), InvAccountIncoice::getInvoiceType,
- // invAccountIncoiceQueryVo.getInvoiceType())
- // .like(!StringUtils.isEmpty(invAccountIncoiceQueryVo.getOtherUnit()), InvAccountIncoice::getOtherUnit, invAccountIncoiceQueryVo.getOtherUnit());
- //
- //
- // if (!ObjectUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceTimeStart()) && !ObjectUtils.isEmpty(invAccountIncoiceQueryVo.getInvoiceTimeEnd())) {
- // lambdaQuery.ge(InvAccountIncoice::getInvoiceTime, invAccountIncoiceQueryVo.getInvoiceTimeStart().toString());
- // lambdaQuery.le(InvAccountIncoice::getInvoiceTime, invAccountIncoiceQueryVo.getInvoiceTimeEnd().toString());
- // }
- return invAccountIncoiceMapper.selectList(lambdaQuery);
- }
- }
|