yupeng
2025-02-07 f0181cd4f035e8317d6f70b74192dcafd28f79fe
新增支付订单、定时任务
11个文件已修改
2个文件已添加
228 ■■■■■ 已修改文件
bankapi/src/main/java/com/taxi591/bankapi/service/BankService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/BankOutController.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/task/TbillTask.java 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-prod.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-test.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-applet/pom.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/PayController.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TBillQuery.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TBillService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBillServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
bankapi/src/main/java/com/taxi591/bankapi/service/BankService.java
@@ -97,6 +97,7 @@
            result.setResult(chargeBillRequest);
            result.setBack(createResponse(chargeBillRequest,dealBack));
        }catch (ServiceException e){
            result.setBack(e.getMessage());
            throw e;
        }catch (Exception e){
            log.error("解析异常:{}",requestContent,e);
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/BankOutController.java
@@ -11,14 +11,17 @@
import javax.servlet.http.HttpServletRequest;
@RestController
@RequestMapping("out/bank")
@RequestMapping("open/bank")
public class BankOutController {
    @Autowired
    BankService bankService;
    @PostMapping(value = "payCallback")
    public @ResponseBody String payCallback(HttpServletRequest request){
        CovertPayBackResult result = bankService.covertPayCallBack(request, (billRequest) -> {
            return true;
        });
        return result.getBack();
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java
@@ -1,6 +1,14 @@
package com.ruoyi.web.controller.api;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.query.TBillQuery;
import com.ruoyi.system.service.TBillService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -16,5 +24,15 @@
@RequestMapping("/t-bill")
public class TBillController {
    @Autowired
    TBillService tBillService;
    @PostMapping("list")
    public R<PageInfo<TBill>> list(@RequestBody TBillQuery query){
        PageInfo<TBill> pageInfo = tBillService.queryPage(query);
        return R.ok(pageInfo);
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/task/TbillTask.java
New file
@@ -0,0 +1,135 @@
package com.ruoyi.web.task;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.model.TContract;
import com.ruoyi.system.query.TBillQuery;
import com.ruoyi.system.query.TContractQuery;
import com.ruoyi.system.service.TBillService;
import com.ruoyi.system.service.TContractService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Calendar;
import java.util.Collections;
import java.util.Date;
@Slf4j
@Component("billTask")
public class TbillTask {
    @Autowired
    TBillService tBillService;
    @Autowired
    TContractService tContractService;
    public void generateBill(){
        try {
            int index = 1;
            int rows = 20;
            long pages = 0;
            TContractQuery query = new TContractQuery();
            query.setPageSize(rows);
            query.setStatus(4);
            Calendar c = Calendar.getInstance();
            Date time = c.getTime();
            do {
                query.setPageNum(index);
                PageInfo<TContract> pageinfo = tContractService.contractList(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("");
        }
    }
    /**
     * 判断账单是否到期
     */
    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<TBill> 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<TContract> pageinfo = tContractService.contractList(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-admin/src/main/resources/application-prod.yml
@@ -21,7 +21,7 @@
  port: 8081
  servlet:
    # 应用的访问路径
    context-path: /
    context-path: /admin
  tomcat:
    # tomcat的URI编码
    uri-encoding: UTF-8
ruoyi-admin/src/main/resources/application-test.yml
@@ -21,7 +21,7 @@
  port: 8081
  servlet:
    # 应用的访问路径
    context-path: /
    context-path: /admin
  tomcat:
    # tomcat的URI编码
    uri-encoding: UTF-8
ruoyi-applet/pom.xml
@@ -16,7 +16,11 @@
    </description>
    <dependencies>
        <dependency>
            <groupId>org.taxi591</groupId>
            <artifactId>bankapi</artifactId>
            <version>1.0.0-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun.oss</groupId>
            <artifactId>aliyun-sdk-oss</artifactId>
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/PayController.java
New file
@@ -0,0 +1,25 @@
package com.ruoyi.web.controller.api;
import com.ruoyi.common.core.domain.AjaxResult;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/t-pay")
public class PayController {
    @PostMapping("makeOrder")
    public AjaxResult makeOrder(){
        return null;
    }
}
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -111,8 +111,15 @@
                // 过滤请求
                .authorizeRequests()
                // 对于登录login 注册register 验证码captchaImage 允许匿名访问
                .antMatchers("/getPrivacyAgreement/{agreementType}","/applet/queryProtocolConfigByType","/applet/login","/login","/applet/queryProtocolConfigByType", "/register","/applet/getCode","/applet/loginCode","/applet/changepwd", "/captchaImage","/getCode","/loginCode","/operations/getBySingleNum/**",
                        "/user/getUserInfoByNumber/**").permitAll()
                .antMatchers("/getPrivacyAgreement/{agreementType}",
                        "/applet/queryProtocolConfigByType","/applet/login",
                        "/login","/applet/queryProtocolConfigByType",
                        "/register","/applet/getCode","/applet/loginCode",
                        "/applet/changepwd", "/captchaImage","/getCode","/loginCode",
                        "/operations/getBySingleNum/**",
                        "/user/getUserInfoByNumber/**",
                        "/open/**"
                ).permitAll()
                // 静态资源,可匿名访问
                .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
                .antMatchers("/swagger-ui.html","/doc.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -25,4 +25,10 @@
    {
        System.out.println("执行无参方法");
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/query/TBillQuery.java
@@ -5,7 +5,10 @@
@Data
public class TBillQuery extends BasePage {
    /**
     * 缴费状态 1=未缴费 2=待确认 3=已缴费 4=已逾期
     */
    private Integer payFeesStatus;
ruoyi-system/src/main/java/com/ruoyi/system/service/TBillService.java
@@ -1,7 +1,9 @@
package com.ruoyi.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.query.TBillQuery;
/**
 * <p>
@@ -13,4 +15,6 @@
 */
public interface TBillService extends IService<TBill> {
    PageInfo<TBill> queryPage(TBillQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TBillServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.system.mapper.TBillMapper;
@@ -25,8 +26,11 @@
    @Autowired
    RedisCache redisCache;
    public AjaxResult queryPage(TBillQuery query){
        return AjaxResult.success();
    @Autowired
    TBillMapper tBillMapper;
    public PageInfo<TBill> queryPage(TBillQuery query){
        return null;
    }