xuhy
2025-02-14 96a10df5b7716122dbc2eb24cdfeb192694684fa
Merge branch 'xizang-changyun' of https://gitee.com/xiaochen991015/xizang
10个文件已修改
1个文件已添加
201 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TInvoiceController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/task/TbillTask.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TInvoiceQuery.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TInvoiceToBillQuery.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TBillService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TInvoiceService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TInvoiceToBillService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBillServiceImpl.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceToBillServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TInvoiceController.java
@@ -5,13 +5,16 @@
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.query.TInvoiceQuery;
import com.ruoyi.system.service.TBillService;
import com.ruoyi.system.service.TInvoiceService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
@@ -26,6 +29,8 @@
public class TInvoiceController {
    @Autowired
    private TInvoiceService invoiceService;
    @Autowired
    TBillService tBillService;
    @PreAuthorize("@ss.hasPermi('system:invoice:list')")
    @ApiOperation(value = "获取开票列表")
    @PostMapping("/list")
@@ -41,5 +46,22 @@
        return R.ok(invoiceService.removeById(id));
    }
    @ApiOperation(value = "关联账单信息")
    @GetMapping(value = "/getBillByInvoiceId")
    public R<PageInfo<TBill>> getBillByInvoiceId(String invoiceId){
        return R.ok(tBillService.getBillByInvoiceId(invoiceId));
    }
    @ApiOperation(value = "上传开票凭证")
    @PostMapping("/uploadVoucher")
    public R<Boolean> uploadVoucher(@RequestBody TInvoiceQuery query) {
        TInvoice tInvoice = new TInvoice();
        tInvoice.setId(query.getId());
        tInvoice.setInvoiceVoucher(query.getInvoiceVoucher());
        tInvoice.setInvoiceTime(query.getInvoiceTime());
        tInvoice.setStatus(2);
        return R.ok(invoiceService.updateById(tInvoice));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/task/TbillTask.java
@@ -26,78 +26,7 @@
    @Autowired
    TContractService tContractService;
    /**
     * 判断账单是否到期
     */
    public void checkBillOverdue(){
        try {
            int index = 1;
            int rows = 20;
            long pages = 0;
            TBillQuery query = new TBillQuery();
            query.setPageSize(rows);
            //查询未缴费的
            query.setPayFeesStatus(1);
            Calendar c = Calendar.getInstance();
            Date time = c.getTime();
            do {
                query.setPageNum(index);
                PageInfo<TBillDto> pageinfo = tBillService.queryPage(query);
                if (pages==0){
                    pages = pageinfo.getPages();
                }
                if (pageinfo.getRecords()!=null && pageinfo.getRecords().size()>0){
                    pageinfo.getRecords().forEach(tBill -> {
                        //todo 生成账单
                    });
                }
                index++;
            }while (index<=pages);
        }catch (Exception e){
            log.error("");
        }
    }
    /**
     * 计算违约金
     */
    public void caculatePenaltyFee(){
        try {
            int index = 1;
            int rows = 20;
            long pages = 0;
            TBillQuery query = new TBillQuery();
            query.setPageSize(rows);
            //查询已逾期的
            query.setPayFeesStatus(4);
            Calendar c = Calendar.getInstance();
            Date time = c.getTime();
            do {
                query.setPageNum(index);
                PageInfo<TBillDto> pageinfo = tBillService.queryPage(query);
                if (pages==0){
                    pages = pageinfo.getPages();
                }
                if (pageinfo.getRecords()!=null && pageinfo.getRecords().size()>0){
                    pageinfo.getRecords().forEach(tContract -> {
                        //todo 生成账单
                    });
                }
                index++;
            }while (index<=pages);
        }catch (Exception e){
            log.error("");
        }
    }
ruoyi-system/src/main/java/com/ruoyi/system/query/TInvoiceQuery.java
@@ -12,6 +12,8 @@
@Data
@ApiModel(value="开票查询列表Query")
public class TInvoiceQuery extends BasePage {
    @ApiModelProperty(value = "id")
    private String id;
    @ApiModelProperty(value = "申请编号")
    private String invoiceNumber;
ruoyi-system/src/main/java/com/ruoyi/system/query/TInvoiceToBillQuery.java
New file
@@ -0,0 +1,19 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value="开票查询列表Query")
public class TInvoiceToBillQuery extends BasePage {
    @ApiModelProperty(value = "开票申请id")
    private String invoiceId;
    @ApiModelProperty(value = "账单id")
    private String billId;
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TBillService.java
@@ -69,4 +69,11 @@
     * @return
     */
    PageInfo<TBillDto> invoiceList(TBillQuery query);
    /**
     * 根据发票编号查询账单列表
     * @param invoiceId
     * @return
     */
    PageInfo<TBill> getBillByInvoiceId(String invoiceId);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TInvoiceService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.query.TInvoiceQuery;
ruoyi-system/src/main/java/com/ruoyi/system/service/TInvoiceToBillService.java
@@ -2,6 +2,14 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.model.TInvoiceToBill;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.model.TInvoiceToBill;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.query.TInvoiceQuery;
import com.ruoyi.system.query.TInvoiceToBillQuery;
import java.util.List;
/**
 * <p>
@@ -13,4 +21,6 @@
 */
public interface TInvoiceToBillService extends IService<TInvoiceToBill> {
    List<TInvoiceToBill> makeQuery(TInvoiceToBillQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBillServiceImpl.java
@@ -1,10 +1,7 @@
package com.ruoyi.system.service.impl;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.constant.AmountConstant;
import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.redis.RedisCache;
@@ -18,6 +15,7 @@
import com.ruoyi.system.mapper.TBillMapper;
import com.ruoyi.system.model.*;
import com.ruoyi.system.query.TBillQuery;
import com.ruoyi.system.query.TInvoiceToBillQuery;
import com.ruoyi.system.service.*;
import com.taxi591.bankapi.dto.ChargeBillRequest;
import lombok.extern.slf4j.Slf4j;
@@ -27,18 +25,12 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
import java.math.BigDecimal;
import java.text.ParseException;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
 * <p>
@@ -75,6 +67,9 @@
    @Autowired
    TOrderBillService orderBillService;
    @Autowired
    TInvoiceToBillService tInvoiceToBillService;
    public PageInfo<TBillDto> queryPage(TBillQuery query){
        PageInfo<TBill> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
@@ -328,5 +323,26 @@
    }
    /**
     * 根据发票编号查询账单列表
     * @param invoiceId
     * @return
     */
    @Override
    public PageInfo<TBill> getBillByInvoiceId(String invoiceId){
        invoiceId = "1889552849671061505";
        PageInfo<TBill> pageInfo = new PageInfo<>();
        ArrayList<TBill> bills = new ArrayList<>();
        TInvoiceToBillQuery query = new TInvoiceToBillQuery();
        query.setInvoiceId(invoiceId);
        List<TInvoiceToBill> tInvoiceToBills = tInvoiceToBillService.makeQuery(query);
        for (TInvoiceToBill tInvoiceToBill : tInvoiceToBills) {
            TBill byId = getById(tInvoiceToBill.getBillId());
            bills.add(byId);
        }
        pageInfo.setRecords(bills);
        return pageInfo;
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceServiceImpl.java
@@ -4,12 +4,20 @@
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.mapper.TInvoiceMapper;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.model.TInvoiceToBill;
import com.ruoyi.system.query.TInvoiceQuery;
import com.ruoyi.system.query.TInvoiceToBillQuery;
import com.ruoyi.system.service.TBillService;
import com.ruoyi.system.service.TInvoiceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sun.org.apache.regexp.internal.RE;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.ArrayList;
import java.util.List;
/**
@@ -22,6 +30,10 @@
 */
@Service
public class TInvoiceServiceImpl extends ServiceImpl<TInvoiceMapper, TInvoice> implements TInvoiceService {
    @Autowired
    TInvoiceToBillServiceImpl tInvoiceToBillService;
    @Autowired
    TBillService tBillService;
    @Override
    public PageInfo<TInvoice> pageList(TInvoiceQuery query) {
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceToBillServiceImpl.java
@@ -1,5 +1,17 @@
package com.ruoyi.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.model.TInvoiceToBill;
import com.ruoyi.system.mapper.TInvoiceToBillMapper;
import com.ruoyi.system.query.TInvoiceToBillQuery;
import com.ruoyi.system.service.TInvoiceToBillService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.mapper.TInvoiceToBillMapper;
import com.ruoyi.system.model.TInvoiceToBill;
@@ -17,4 +29,11 @@
@Service
public class TInvoiceToBillServiceImpl extends ServiceImpl<TInvoiceToBillMapper, TInvoiceToBill> implements TInvoiceToBillService {
    @Override
    public List<TInvoiceToBill> makeQuery(TInvoiceToBillQuery query) {
        LambdaQueryWrapper<TInvoiceToBill> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(null != query.getInvoiceId(),TInvoiceToBill::getInvoiceId,query.getInvoiceId())
                .eq(null != query.getBillId(),TInvoiceToBill::getBillId,query.getBillId());
        return this.baseMapper.selectList(queryWrapper);
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TPayOrderServiceImpl.java
@@ -72,7 +72,7 @@
            //计算欠费金额:租金+违约金-实收金额
            long rent = caculateRentFee(bill);
            if (rent==0){
                throw new ServiceException("该订单已缴费");
                throw new ServiceException("该账单已缴费");
            }
            if (rent>dto.getAmount()){
                throw new ServiceException("支付金额超过了账单欠费金额");