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; }