From 65b8f536055184559ad2c69af51704cede7e78a8 Mon Sep 17 00:00:00 2001 From: wgd <862422848@qq.com> Date: Fri, 1 Apr 2022 17:26:39 +0800 Subject: [PATCH] 运营后台-- 更改投保业务逻辑 --- src/main/java/cn/timer/api/controller/insure/CallBackContorll.java | 29 ++++++++++++++++++++++++++--- src/main/java/cn/timer/api/dto/insure/PolicyDto.java | 2 +- src/main/resources/mapping/insure/InsureUserMapper.xml | 2 +- 3 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/main/java/cn/timer/api/controller/insure/CallBackContorll.java b/src/main/java/cn/timer/api/controller/insure/CallBackContorll.java index 694cd8d..878c634 100644 --- a/src/main/java/cn/timer/api/controller/insure/CallBackContorll.java +++ b/src/main/java/cn/timer/api/controller/insure/CallBackContorll.java @@ -43,9 +43,31 @@ public class CallBackContorll { @PostMapping(value = "/insuredCallBack") @ApiOperation(value = "6.投保申请回调", httpMethod = "Post", notes = "投保申请回调") @ApiOperationSupport(order = 2) - private String insuredCallBack(@RequestParam String pid, @RequestParam String sign, @RequestParam String timestamp, @RequestBody CallBack callBack){ - log.info(String.valueOf(callBack)); - return "1"; + private Map insuredCallBack(HttpServletRequest request, @RequestParam String pid, @RequestParam String sign, @RequestParam String timestamp) throws IOException { + Map map = Maps.newHashMap(); + map.put("status","error"); + if(StringUtils.isNullOrEmpty(pid)||StringUtils.isNullOrEmpty(sign)&&StringUtils.isNullOrEmpty(timestamp)){ + return map; + } + if(!pid.equals(appidq)){ + return map; + } + InputStream is = null; + is = request.getInputStream(); + StringBuilder sb = new StringBuilder(); + byte[] b = new byte[4096]; + for (int n; (n = is.read(b)) != -1;) + { + sb.append(new String(b, 0, n)); + } + String value = DigestUtils.md5Hex(appidq + secretq + timestamp + sb.toString()); + if(!value.equals(sign)){ + return map; + } + CallBack callBack=JSONObject.parseObject(sb.toString(), CallBack.class); + Map trueMap = Maps.newHashMap(); + trueMap.put("status","1"); + return trueMap; } @PostMapping(value = "/CallBack") @@ -85,6 +107,7 @@ public class CallBackContorll { if(oldlist!=null||oldlist.size()>0) { oldlist.forEach(i -> { i.setInsureStatus(4); + i.setStatus("2"); i.updateById(); YgglMainEmp.builder().isInsure(3).build().update(new QueryWrapper<YgglMainEmp>().lambda().eq(YgglMainEmp::getId, i.getUserId())); }); diff --git a/src/main/java/cn/timer/api/dto/insure/PolicyDto.java b/src/main/java/cn/timer/api/dto/insure/PolicyDto.java index 7b4ed08..8862d15 100644 --- a/src/main/java/cn/timer/api/dto/insure/PolicyDto.java +++ b/src/main/java/cn/timer/api/dto/insure/PolicyDto.java @@ -36,5 +36,5 @@ public class PolicyDto { private String policyFile; private String benefitOccupationCategory; private Integer userId; - + private Integer insureStatus; } diff --git a/src/main/resources/mapping/insure/InsureUserMapper.xml b/src/main/resources/mapping/insure/InsureUserMapper.xml index dce56f1..88d20e8 100644 --- a/src/main/resources/mapping/insure/InsureUserMapper.xml +++ b/src/main/resources/mapping/insure/InsureUserMapper.xml @@ -277,7 +277,7 @@ </delete> <select id="selectPolicyList" resultType="cn.timer.api.dto.insure.PolicyDto"> - select iu.id,yme.`name`,yme.zj_type,yme.zj_num,iu.policy_no,iu.`status`,ip.scheme_name,iu.policy_date_start, + select iu.id,yme.`name`,yme.zj_type,yme.zj_num,iu.policy_no,iu.`status`,ip.scheme_name,iu.policy_date_start,iu.insure_status, iu.policy_date_end,ip.create_time,iu.insured_name,iu.benefit_basic_plan AS benefitBasicPlan,iu.price AS price, iu.user_id as userId from insure_user iu -- libgit2 0.26.0