From 81dcb037f2ee0e19ebb2abd7234ddf0f117f2c10 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 07 六月 2023 09:55:51 +0800
Subject: [PATCH] 抽佣分成修改
---
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java | 248 ++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 193 insertions(+), 55 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..7ed7a93 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();
+ }
+ }
+
@@ -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