From 753c4aede53b07041841d9aa94859b59e366bd5d Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 14 八月 2023 18:47:39 +0800
Subject: [PATCH] Merge branch '1.1' of http://120.76.84.145:10101/gitblit/r/java/SuperSaveDriving

---
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ApiController.java |  118 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 76 insertions(+), 42 deletions(-)

diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ApiController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ApiController.java
index c60adfa..ac01e1c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ApiController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ApiController.java
@@ -1,22 +1,26 @@
 package com.stylefeng.guns.modular.api;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.stylefeng.guns.core.base.controller.BaseController;
 import com.stylefeng.guns.core.base.tips.ErrorTip;
 import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.shiro.ShiroUser;
 import com.stylefeng.guns.core.util.JwtTokenUtil;
 import com.stylefeng.guns.modular.system.dao.UserMapper;
+import com.stylefeng.guns.modular.system.model.TAgent;
 import com.stylefeng.guns.modular.system.model.User;
+import com.stylefeng.guns.modular.system.service.ITAgentService;
+import com.stylefeng.guns.modular.system.util.MallBook.model.BindAccount;
+import com.stylefeng.guns.modular.system.util.MallBook.model.InterfaceResponse;
+import com.stylefeng.guns.modular.system.util.MallBook.util.TrhRequest;
 import org.apache.shiro.authc.SimpleAuthenticationInfo;
 import org.apache.shiro.authc.UsernamePasswordToken;
 import org.apache.shiro.authc.credential.HashedCredentialsMatcher;
 import org.apache.shiro.crypto.hash.Md5Hash;
 import org.apache.shiro.util.ByteSource;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.HashMap;
 
@@ -27,53 +31,83 @@
  * @Date 2018/7/20 23:39
  */
 @RestController
-@RequestMapping("/gunsApi")
+@RequestMapping("")
 public class ApiController extends BaseController {
 
     @Autowired
-    private UserMapper userMapper;
+    private ITAgentService tAgentService;
 
-    /**
-     * api登录接口,通过账号密码获取token
-     */
-    @RequestMapping("/auth")
-    public Object auth(@RequestParam("username") String username,
-                       @RequestParam("password") String password) {
 
-        //封装请求账号密码为shiro可验证的token
-        UsernamePasswordToken usernamePasswordToken = new UsernamePasswordToken(username, password.toCharArray());
 
-        //获取数据库中的账号密码,准备比对
-        User user = userMapper.getByAccount(username);
 
-        String credentials = user.getPassword();
-        String salt = user.getSalt();
-        ByteSource credentialsSalt = new Md5Hash(salt);
-        SimpleAuthenticationInfo simpleAuthenticationInfo = new SimpleAuthenticationInfo(
-                new ShiroUser(), credentials, credentialsSalt, "");
+    @ResponseBody
+    @PostMapping("/base/driver/microenterpriseCallback")
+    public void microenterpriseCallback(@RequestBody InterfaceResponse response){
+        if("0000".equals(response.getCode())){
+            JSONObject jsonObject = JSON.parseObject(response.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);
 
-        //校验用户账号密码
-        HashedCredentialsMatcher md5CredentialsMatcher = new HashedCredentialsMatcher();
-        md5CredentialsMatcher.setHashAlgorithmName(ShiroKit.hashAlgorithmName);
-        md5CredentialsMatcher.setHashIterations(ShiroKit.hashIterations);
-        boolean passwordTrueFlag = md5CredentialsMatcher.doCredentialsMatch(
-                usernamePasswordToken, simpleAuthenticationInfo);
-
-        if (passwordTrueFlag) {
-            HashMap<String, Object> result = new HashMap<>();
-            result.put("token", JwtTokenUtil.generateToken(String.valueOf(user.getId())));
-            return result;
-        } else {
-            return new ErrorTip(500, "账号密码错误!");
+                //开始绑定结算账户
+                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("0035");
+                /**
+                 * 地区编码
+                 */
+                bindAccount.setAreaCode("3501");
+                TrhRequest<BindAccount> request = new TrhRequest();
+                InterfaceResponse execute = request.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());
+                }
+            }
+        }else{
+            System.err.println("注册代理商子商户异常:" + response.getMsg());
         }
-    }
-
-    /**
-     * 测试接口是否走鉴权
-     */
-    @RequestMapping(value = "/test", method = RequestMethod.POST)
-    public Object test() {
-        return SUCCESS_TIP;
     }
 
 }

--
Gitblit v1.7.1