From 17f18c3d56a70327874aa7dda0adfa2f5e3dafce Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 14 六月 2023 20:57:38 +0800 Subject: [PATCH] 代理商修改优惠券展示 --- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java | 250 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 194 insertions(+), 56 deletions(-) diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java index a219bfc..11fe076 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java @@ -3,6 +3,7 @@ import cn.hutool.core.codec.Base64; import cn.hutool.core.util.ZipUtil; import cn.hutool.crypto.SecureUtil; +import cn.hutool.http.server.HttpServerResponse; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; @@ -134,10 +135,59 @@ */ @RequestMapping("/areaDetail") public String areaDetail(String area,String areaId,Model model) { +// String[] split1 = areaId.split("/"); +// List<TRegion> tRegions = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0)); +// model.addAttribute("provinceList",tRegions); +//// List<Integer> provinceIds = tRegions.stream().map(TRegion::getId).collect(Collectors.toList()); +//// // 查询市 +//// List<TRegion> tRegions1 = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", split1[0])); +//// model.addAttribute("cityList",tRegions1); +//// +//// // 查询区 +//// List<Integer> cityIds = tRegions1.stream().map(TRegion::getId).collect(Collectors.toList()); +//// List<TRegion> tRegions2 = tRegionService.selectList(new EntityWrapper<TRegion>().in("parent_id", cityIds)); +//// model.addAttribute("districtList",tRegions2); +// +// if(StringUtils.hasLength(area) && StringUtils.hasLength(areaId)){ +// String[] split = area.split("/"); +// model.addAttribute("provinceName",split[0]); +// model.addAttribute("cityName",split[1]); +// if(split.length>2){ +// model.addAttribute("districtName",split[2]); +// }else { +// model.addAttribute("districtName",""); +// } +// +// model.addAttribute("provinceId",split1[0]); +// model.addAttribute("cityId",split1[1]); +// if(split1.length>2) { +// model.addAttribute("districtId", split1[2]); +// }else { +// model.addAttribute("districtId", ""); +// } +// +// List<TRegion> tRegions1 = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", split1[0])); +// model.addAttribute("cityList",tRegions1); +// +// // 查询区 +// List<TRegion> tRegions2 = tRegionService.selectList(new EntityWrapper<TRegion>().in("parent_id", split1[1])); +// model.addAttribute("districtList",tRegions2); +// }else { +// model.addAttribute("cityList",new ArrayList<>()); +// model.addAttribute("districtList",new ArrayList<>()); +// +// model.addAttribute("provinceName",""); +// model.addAttribute("cityName",""); +// model.addAttribute("districtName",""); +// +// model.addAttribute("provinceId",""); +// model.addAttribute("cityId",""); +// model.addAttribute("districtId", ""); +// } String[] split1 = areaId.split("/"); List<TRegion> tRegions = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0)); - model.addAttribute("province",tRegions); - List<Integer> provinceIds = tRegions.stream().map(TRegion::getId).collect(Collectors.toList()); + model.addAttribute("provinceList",tRegions); +// List<Integer> provinceIds = tRegions.stream().map(TRegion::getId).collect(Collectors.toList()); // 查询市 List<TRegion> tRegions1 = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", split1[0])); model.addAttribute("cityList",tRegions1); @@ -189,7 +239,12 @@ String[] split1 = tAgent.getArea().split("/"); - int count = tAgentService.selectCount(new EntityWrapper<TAgent>().eq("provinceName", split1[0]).eq("cityName",split1[1])); +// int count = tAgentService.selectCount(new EntityWrapper<TAgent>() +// .eq("provinceName", split1[0]) +// .eq("cityName",split1[1]) +// .eq("districtName",sp)); + int count = tAgentService.selectCount(new EntityWrapper<TAgent>() + .eq("merchantName", tAgent.getMerchantName())); if(count>0){ return new SuccessTip(500,"该代理商已存在!"); } @@ -254,7 +309,7 @@ registerVO.setUserType("0"); registerVO.setUserName(tAgent.getMerchantName()); registerVO.setCertId(tAgent.getMerchantIDCode()); - registerVO.setNotifyUrl(callbackPath + "/base/driver/microenterpriseCallback"); + registerVO.setNotifyUrl(callbackPath + "/tAgent/microenterpriseCallback"); TrhRequest<Register> request = new TrhRequest(); InterfaceResponse execute = request.execute(registerVO, Register.SERVICE_CODE); if("0000".equals(execute.getCode())){ @@ -325,16 +380,10 @@ registerVO.setLegalPhone(tAgent.getLegalPhone()); registerVO.setLegalPerson(tAgent.getLegalPerson()); registerVO.setAddress(tAgent.getAddress()); - /** - * 省份编码(子商户类型非小微必填) 字段长度最长:4位 - */ - registerVO.setProvCode("0035"); - /** - * 地区编码(子商户类型非小微必填) 字段长度最长:4位 - */ - registerVO.setAreaCode("3501"); + registerVO.setProvCode(tAgent.getProvCodeEnterprise()); + registerVO.setAreaCode(tAgent.getAreaCodeEnterprise()); registerVO.setFileNo(tAgent.getFileNo()); - registerVO.setNotifyUrl(callbackPath + "/base/driver/microenterpriseCallback"); + registerVO.setNotifyUrl(callbackPath + "/tAgent/microenterpriseCallback"); registerVO.setParameter1(tAgent.getId().toString()); TrhRequest<Register> request = new TrhRequest(); @@ -367,14 +416,8 @@ bindAccount.setBankAcctType(tAgent.getBankAcctType().toString()); bindAccount.setPhone(tAgent.getPhone()); bindAccount.setBankCode(tAgent.getBankCode()); - /** - * 省份编码 - */ - bindAccount.setProvCode("0035"); - /** - * 地区编码 - */ - bindAccount.setAreaCode("3501"); + bindAccount.setProvCode(tAgent.getProvCodeBank()); + bindAccount.setAreaCode(tAgent.getAreaCodeBank()); TrhRequest<BindAccount> request1 = new TrhRequest(); InterfaceResponse execute = request1.execute(bindAccount, BindAccount.SERVICE_CODE); if("0000".equals(execute.getCode())){ @@ -405,6 +448,83 @@ } } } + + + + /** + * 注册商户回调 + */ + @ResponseBody + @PostMapping("/microenterpriseCallback") + public void microenterpriseCallback(@RequestBody InterfaceResponse interfaceResponse, HttpServletResponse response){ + try { + if("0000".equals(interfaceResponse.getCode())) { + JSONObject jsonObject = JSON.parseObject(interfaceResponse.getResult()); + String status = jsonObject.getString("status"); + String parameter1 = jsonObject.getString("parameter1"); + TAgent tAgent = tAgentService.selectById(parameter1); + if ("2".equals(status)) { + tAgent.setMerchantStatus(2); + tAgentService.updateById(tAgent); + System.err.println("注册代理商子商户失败"); + } + if ("0".equals(status)) { + tAgent.setMerchantStatus(0); + tAgentService.updateById(tAgent); + System.err.println("注册代理商子商户处理中"); + } + if ("1".equals(status)) { + String userId = jsonObject.getString("userId"); + tAgent.setMerchantNumber(userId); + tAgent.setMerchantStatus(1); + tAgentService.updateById(tAgent); + + //开始绑定结算账户 + BindAccount bindAccount = new BindAccount(); + bindAccount.setUserId(tAgent.getMerchantNumber()); + bindAccount.setCertId(tAgent.getMerchantIDCode()); + bindAccount.setCardName(tAgent.getCardName()); + bindAccount.setCardNo(tAgent.getCardNo()); + bindAccount.setBankAcctType(tAgent.getBankAcctType().toString()); + bindAccount.setPhone(tAgent.getPhone()); + bindAccount.setBankCode(tAgent.getBankCode()); + bindAccount.setProvCode(tAgent.getProvCodeBank()); + bindAccount.setAreaCode(tAgent.getAreaCodeBank()); + TrhRequest<BindAccount> request1 = new TrhRequest(); + InterfaceResponse execute = request1.execute(bindAccount, BindAccount.SERVICE_CODE); + if ("0000".equals(execute.getCode())) { + JSONObject jsonObject1 = JSON.parseObject(execute.getResult()); + String status1 = jsonObject1.getString("status"); + if ("2".equals(status1)) { + tAgent.setBankStatus(2); + tAgentService.updateById(tAgent); + System.err.println("绑定结算账户失败"); + } + if ("1".equals(status1)) { + tAgent.setBankStatus(1); + tAgentService.updateById(tAgent); + System.err.println("绑定结算账户成功"); + } + if ("0".equals(status1)) { + tAgent.setBankStatus(0); + tAgentService.updateById(tAgent); + System.err.println("绑定结算账户处理中"); + } + } else { + System.err.println("绑定结算账户失败:" + execute.getMsg()); + } + response.setStatus(200); + PrintWriter out = response.getWriter(); + out.print("OK"); + out.flush(); + out.close(); + } + } + }catch (Exception e){ + e.printStackTrace(); + } + } + @@ -643,7 +763,7 @@ model.addAttribute("roleType", roleType); model.addAttribute("item", tAgent); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - model.addAttribute("socialCreditCodeExpires", roleType == 1 ? "" : sdf.format(tAgent.getSocialCreditCodeExpires())); + model.addAttribute("socialCreditCodeExpires", roleType == 1 ? "" :Objects.isNull(tAgent.getSocialCreditCodeExpires())?"": sdf.format(tAgent.getSocialCreditCodeExpires())); model.addAttribute("certIdExpires", roleType == 1 ? "" : sdf.format(tAgent.getCertIdExpires())); Wrapper<SettlementRecord> settlementRecordWrapper = new EntityWrapper<SettlementRecord>().eq("type", roleType == 1 ? 1 : 2); if(roleType == 2){ @@ -752,23 +872,32 @@ */ @ResponseBody @PostMapping("/withdrawCashCallback") - public void withdrawCashCallback(@RequestBody InterfaceResponse interfaceResponse) { - if("0000".equals(interfaceResponse.getCode())){ - JSONObject jsonObject1 = JSON.parseObject(interfaceResponse.getResult()); - String merOrderId1 = jsonObject1.getString("merOrderId"); - Integer status = jsonObject1.getInteger("status");//0:待处理;1:成功;2:失败 - if(1 == status){ - String parameter1 = jsonObject1.getString("parameter1"); - SettlementRecord settlementRecord = settlementRecordService.selectById(parameter1); - settlementRecord.setOrderNumber(merOrderId1); - settlementRecord.setArrivalTime(new Date()); - settlementRecordService.updateById(settlementRecord); + public void withdrawCashCallback(@RequestBody InterfaceResponse interfaceResponse, HttpServletResponse response) { + try { + if("0000".equals(interfaceResponse.getCode())){ + JSONObject jsonObject1 = JSON.parseObject(interfaceResponse.getResult()); + String merOrderId1 = jsonObject1.getString("merOrderId"); + Integer status = jsonObject1.getInteger("status");//0:待处理;1:成功;2:失败 + if(1 == status){ + String parameter1 = jsonObject1.getString("parameter1"); + SettlementRecord settlementRecord = settlementRecordService.selectById(parameter1); + settlementRecord.setOrderNumber(merOrderId1); + settlementRecord.setArrivalTime(new Date()); + settlementRecordService.updateById(settlementRecord); + response.setStatus(200); + PrintWriter out = response.getWriter(); + out.print("OK"); + out.flush(); + out.close(); + } + if(2 == status){ + System.err.println("结算接口异常【提现】:" + jsonObject1.getString("statusMsg")); + } + }else{ + System.err.println("结算接口异常【提现】:" + interfaceResponse.getMsg()); } - if(2 == status){ - System.err.println("结算接口异常【提现】:" + jsonObject1.getString("statusMsg")); - } - }else{ - System.err.println("结算接口异常【提现】:" + interfaceResponse.getMsg()); + }catch (Exception e){ + e.printStackTrace(); } } @@ -881,25 +1010,34 @@ */ @ResponseBody @PostMapping("/accountRechargeCallback") - public void accountRechargeCallback(@RequestBody InterfaceResponse interfaceResponse){ - if("0000".equals(interfaceResponse.getCode())){ - JSONObject jsonObject = JSON.parseObject(interfaceResponse.getResult()); - Integer status = jsonObject.getInteger("status"); - if(2 == status){ - System.err.println("支付异常"); - return; + public void accountRechargeCallback(@RequestBody InterfaceResponse interfaceResponse, HttpServletResponse response){ + try { + if("0000".equals(interfaceResponse.getCode())){ + JSONObject jsonObject = JSON.parseObject(interfaceResponse.getResult()); + Integer status = jsonObject.getInteger("status"); + if(2 == status){ + System.err.println("支付异常"); + return; + } + if(1 == status){ + String parameter1 = jsonObject.getString("parameter1"); + RechargeRecord rechargeRecord = rechargeRecordService.selectById(parameter1); + rechargeRecord.setPayStatus(2); + rechargeRecord.setPayTime(new Date()); + rechargeRecord.setOrderNumber(jsonObject.getString("merOrderId")); + rechargeRecord.setSurplusDividedAmount(rechargeRecord.getAmount()); + rechargeRecordService.updateById(rechargeRecord); + response.setStatus(200); + PrintWriter out = response.getWriter(); + out.print("OK"); + out.flush(); + out.close(); + } + }else{ + System.err.println(interfaceResponse.getMsg()); } - if(1 == status){ - String parameter1 = jsonObject.getString("parameter1"); - RechargeRecord rechargeRecord = rechargeRecordService.selectById(parameter1); - rechargeRecord.setPayStatus(2); - rechargeRecord.setPayTime(new Date()); - rechargeRecord.setOrderNumber(jsonObject.getString("merOrderId")); - rechargeRecord.setSurplusDividedAmount(rechargeRecord.getAmount()); - rechargeRecordService.updateById(rechargeRecord); - } - }else{ - System.err.println(interfaceResponse.getMsg()); + }catch (Exception e){ + e.printStackTrace(); } } -- Gitblit v1.7.1