Forráskód Böngészése

fix:"优化汇付入网"

soobin 2 hónapja
szülő
commit
bb4bb0dd13

+ 1 - 2
src/main/java/com/szwl/controller/ADIndexController.java

@@ -112,7 +112,6 @@ public class ADIndexController {
                 adVo.setPlayTimeStatus(ad.getPlayTimeStatus());
                 list.add(adVo);
             }
-
         }
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("code", 0);
@@ -140,7 +139,7 @@ public class ADIndexController {
         List<TAd> ads = aDService.list(query1);
         ArrayList<AdVo> list = new ArrayList<>();
         for (TAd ad : ads) {
-            if (adminId.equals(ad.getAdminId()) || ad.getAdminId() == null) {
+            if (adminId.equals(ad.getAdminId()) || StringUtils.isEmpty(ad.getAdminId())) {
                 AdVo adVo = new AdVo();
                 adVo.setAdType(String.valueOf(ad.getAdType()));
                 adVo.setLocationType(String.valueOf(ad.getLocationType()));

+ 0 - 9
src/main/java/com/szwl/controller/IndexController.java

@@ -483,15 +483,6 @@ public class IndexController {
                             } else {
                                 equipment.setEquimentType(equipmentApply.getEquimentType());
                             }
-//                            if (equipmentApply.getEquimentType().equals("MG330")) {
-//                                equipment.setEquimentType("MG330");
-//                            }
-//                            if (equipmentApply.getEquimentType().equals("P30")) {
-//                                equipment.setEquimentType(equipmentApply.getEquimentType());
-//                            }
-//                            if (equipmentApply.getEquimentType().equals("SI320")) {
-//                                equipment.setEquimentType(equipmentApply.getEquimentType());
-//                            }
                             equipmentService.updateById(equipment);
                             LambdaQueryWrapper<TProportion> queryProportion = Wrappers.lambdaQuery();
                             queryProportion.eq(TProportion::getEquipmentId, equipment.getId());

+ 2 - 2
src/main/java/com/szwl/controller/TAdminController.java

@@ -431,7 +431,7 @@ public class TAdminController {
     @ApiOperation(value = "注册账号/用户注册")
     @PostMapping("/save")
     @Transactional
-    @Audit(type = AuditEnum.INSERT, content = "#loginUser.name + '注册账号'")
+    @Audit(type = AuditEnum.INSERT, content = "#registerParam.username + '注册账号'")
     public ResponseModel<?> save(@RequestBody RegisterParamDTO registerParam) {
         if (StringUtils.isEmpty(registerParam.getUsername()) || StringUtils.isEmpty(registerParam.getName()) || StringUtils.isEmpty(registerParam.getPassword())) {
             return R.fail(ResponseCodesEnum.A0001);
@@ -685,7 +685,7 @@ public class TAdminController {
 
     @ApiOperation(value = "登录")
     @PostMapping("/loginSys")
-    @Audit(type = AuditEnum.LOGIN, content = "#username + '请求登录'")
+    @Audit(type = AuditEnum.LOGIN, content = "#loginParam.username + '请求登录'")
     public ResponseModel<UserDetailBO> loginSys(@RequestBody LoginParam loginParam, HttpServletRequest request) {
         String username = loginParam.getUsername();
         String password = loginParam.getPassword();

+ 86 - 0
src/main/java/com/szwl/controller/THuifuMchController.java

@@ -2,11 +2,14 @@ package com.szwl.controller;
 
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.copier.CopyOptions;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.huifu.bspay.sdk.opps.core.exception.BasePayException;
 import com.szwl.constant.HuifuConstant;
+import com.szwl.constant.JoinpayConstant;
 import com.szwl.constant.ResponseCodesEnum;
 import com.szwl.exception.BizException;
 import com.szwl.manager.TokenManager;
@@ -15,6 +18,7 @@ import com.szwl.model.bo.ResponseModel;
 import com.szwl.model.bo.UserDetailBO;
 import com.szwl.model.entity.THuifuMch;
 import com.szwl.model.entity.THuifuMchCheck;
+import com.szwl.model.entity.TJoinpayMch;
 import com.szwl.model.param.UploadParms;
 import com.szwl.service.THuifuMchCheckService;
 import com.szwl.service.THuifuMchService;
@@ -30,6 +34,8 @@ import javax.validation.Valid;
 import java.util.Date;
 import java.util.Optional;
 
+import static com.szwl.constant.ResponseCodesEnum.B0001;
+
 /**
  * <p>
  * 前端控制器
@@ -75,6 +81,85 @@ public class THuifuMchController {
         return R.ok();
     }
 
+    @ApiOperation(value = "商户入网")
+    @PostMapping("/createMch")
+    public ResponseModel<?> createMch(@RequestBody THuifuMchCheck huifuMchCheck) {
+        // 步骤
+        Integer steps = huifuMchCheck.getBindingSteps();
+        LambdaQueryWrapper<THuifuMchCheck> query = Wrappers.lambdaQuery();
+        query.eq(THuifuMchCheck::getAdminId, huifuMchCheck.getAdminId());
+        THuifuMchCheck tHuifuMchCheck = tHuifuMchCheckService.getOne(query);
+        switch (steps) {
+            case 0:
+                // 提交证件信息
+                huifuMchCheck.setBindingSteps(1);
+                if (tHuifuMchCheck == null) {
+                    // 没有,直接保存
+                    huifuMchCheck.setCreateDate(new Date());
+                    huifuMchCheck.setModifyDate(new Date());
+                    tHuifuMchCheckService.save(huifuMchCheck);
+                } else {
+                    // 有,更新
+                    huifuMchCheck.setModifyDate(new Date());
+                    BeanUtil.copyProperties(huifuMchCheck, tHuifuMchCheck,
+                            CopyOptions.create()
+                                    .setIgnoreNullValue(true)  // 忽略源对象中的 null 值
+                                    .setIgnoreError(true)     // 忽略类型不匹配等错误
+                    );
+                    tHuifuMchCheckService.updateById(tHuifuMchCheck);
+                }
+                return R.ok();
+            case 1:
+                // 提交结算信息
+                tHuifuMchCheck.setCardType(huifuMchCheck.getCardType());
+                tHuifuMchCheck.setCardName(huifuMchCheck.getCardName());
+                tHuifuMchCheck.setCardNo(huifuMchCheck.getCardNo());
+                tHuifuMchCheck.setBranchCode(huifuMchCheck.getBranchCode());
+                tHuifuMchCheck.setSettType(huifuMchCheck.getSettType());
+                tHuifuMchCheck.setBindingSteps(2);
+                tHuifuMchCheck.setModifyDate(new Date());
+                tHuifuMchCheckService.updateById(tHuifuMchCheck);
+                return R.ok();
+            case 2:
+                // 提交信息审核
+                tHuifuMchCheck.setModifyDate(new Date());
+                tHuifuMchCheck.setBindingSteps(3);
+                String result = "";
+                String huifuId = tHuifuMchCheck.getHuifuId();
+                try {
+                    if (StringUtils.isEmpty(huifuId)) {
+                        // 没入网,创建接口
+                        result = tHuifuMchService.openAccount(tHuifuMchCheck);
+                    } else {
+                        // 已入网,修改接口
+                        result = HuifuConstant.SUCCESS;
+                        tHuifuMchCheck.setStatus("4");
+                        tHuifuMchCheckService.updateById(tHuifuMchCheck);
+                    }
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+                if (HuifuConstant.SUCCESS.equals(result)) {
+                    return R.ok();
+                }
+                return R.fail(result);
+        }
+        return R.fail(B0001);
+    }
+
+    @ApiOperation(value = "汇付业务开通(签约)")
+    @GetMapping("/signCon")
+    public ResponseModel<?> signCon(Long id) throws Exception {
+        // 找到用户id对应的审核信息
+        THuifuMchCheck huifuMchCheck = tHuifuMchCheckService.getById(id);
+        String data = tHuifuMchService.openBusiness(huifuMchCheck);
+        // 判断是否开户成功或业务开通成功
+        if (data.equals(HuifuConstant.SUCCESS)) {
+            return R.ok();
+        }
+        return R.fail(ResponseCodesEnum.A0001, data);
+    }
+
     @ApiOperation(value = "汇付用户开户或业务开通")
     @GetMapping("/openAccount")
     public ResponseModel<?> openAccount(Long id) throws Exception {
@@ -265,5 +350,6 @@ public class THuifuMchController {
         return R.ok(result);
     }
 
+
 }
 

+ 1 - 1
src/main/java/com/szwl/mapper/THuifuMchCheckMapper.java

@@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * </p>
  *
  * @author wuhs
- * @since 2025-04-17
+ * @since 2025-06-20
  */
 public interface THuifuMchCheckMapper extends BaseMapper<THuifuMchCheck> {
 

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 2 - 1
src/main/java/com/szwl/mapper/xml/THuifuMchCheckMapper.xml


+ 47 - 0
src/main/java/com/szwl/model/bean/CoinOrderVO.java

@@ -0,0 +1,47 @@
+package com.szwl.model.bean;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class CoinOrderVO {
+
+
+    /**
+     * 订单
+     */
+    private String sn;
+
+    private String createDate;
+
+    /**
+     * 订单名字
+     */
+    private String name;
+
+    private String no;
+    /**
+     * 个推
+     */
+    private String clientId;
+    /**
+     * 价格
+     */
+    private BigDecimal price;
+
+    /**
+     * 支付类型
+     * 0代表无需支付
+     * 1代表投币支付
+     */
+
+    private Integer payType;
+
+    private Integer productNumber;
+
+    /**
+     * 税费
+     */
+    private BigDecimal tax;
+}

+ 4 - 1
src/main/java/com/szwl/model/entity/THuifuMchCheck.java

@@ -15,7 +15,7 @@ import lombok.EqualsAndHashCode;
  * </p>
  *
  * @author wuhs
- * @since 2025-04-17
+ * @since 2025-06-20
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -181,5 +181,8 @@ public class THuifuMchCheck implements Serializable {
     @ApiModelProperty(value = "结算方式:1:自动结算,2:手动提现")
     private Integer settType;
 
+    @ApiModelProperty(value = "绑定步骤,0:证件信息,1:结算信息,2:信息审核,3:签约")
+    private Integer bindingSteps;
+
 
 }

+ 0 - 81
src/main/java/com/szwl/model/utils/PushUtils.java

@@ -103,87 +103,6 @@ public class PushUtils {
      * @param json        业务id
      */
     public static void push(String clientId, String title, String information, String json) {
-//        String type = "1";
-//        if(StringUtils.isNotEmpty(title)){
-//            type = title;
-//        }
-////        List<Filter> filters = new ArrayList<>();
-////        filters.add(Filter.eq("gtClientId", clientId));
-////        List<Equipment> list = equipmentService.findList(null, filters, null);
-////        if(list.size()>0){
-////            for(Equipment equipment:list){
-////                String channel = equipment.getChannel();
-////                String equimentType = equipment.getEquimentType();
-////                String client = equipment.getClientId();
-////                String substring = client.substring(client.length() - 1);
-////                if(substring.equals("x")){
-////                    break;
-////                }
-////                if(StringUtils.isEmpty(channel)||channel.equals("1")||StringUtils.isEmpty(equimentType)){
-////                    //用个推
-////                    type = "1";
-////                }
-////                if(channel.equals("2")||StringUtils.isNotEmpty(equimentType)){
-////                    //用mq
-////                    type = "2";
-////                    //1 创建消息
-////                    MessageProperties messageProperties = new MessageProperties();
-////                    messageProperties.setContentType("text/plain");
-////                    //设置消息的过期时间,60秒
-//////        messageProperties.setExpiration("60000");
-////                    Message message = new Message(json.getBytes(), messageProperties);
-////
-////                    rabbitTemplate.send(equimentType, client, message);
-////                }
-////            }
-////        }
-//        if(type.equals("2")){
-//            String[] split = information.split(":");
-//            String equimentType = split[0];
-//            String client = split[1];
-//            //1 创建消息
-//            MessageProperties messageProperties = new MessageProperties();
-//            messageProperties.setContentType("text/plain");
-//            //设置消息的过期时间,60秒
-////        messageProperties.setExpiration("60000");
-//            Message message = new Message(json.getBytes(), messageProperties);
-//            rabbitTemplate.convertAndSend(equimentType, client, message);
-////            rabbitTemplate.send(equimentType, client, message);
-//        }
-//
-//        if(type.equals("1")){
-//            TransmissionTemplate transmissionTemplate = getTemplate(title, information, json);
-//            //推送ios
-//            final SingleMessage iMessage = new SingleMessage();
-//            iMessage.setOffline(true);
-//            // 离线有效时间,单位为毫秒,可选
-//            iMessage.setOfflineExpireTime(24 * 3600 * 1000);
-//            iMessage.setData(transmissionTemplate);
-//            // 可选,1为wifi,0为不限制网络环境。根据手机处于的网络情况,决定是否下发
-//            iMessage.setPushNetWorkType(0);
-//
-//
-//            //个推
-//            final Target target = new Target();
-//            target.setAppId(appId);
-//            target.setClientId(clientId);
-//            try {
-//
-//                new Thread(new Runnable() {
-//
-//                    @Override
-//                    public void run() {
-//                        push.pushMessageToSingle(iMessage, target);
-//                    }
-//
-//
-//                }).start();
-//
-//            } catch (RequestException e) {
-//                e.printStackTrace();
-//                push.pushMessageToSingle(iMessage, target, e.getRequestId());
-//            }
-//        }
         TransmissionTemplate transmissionTemplate = getTemplate(title, information, json);
         //推送ios
         final SingleMessage iMessage = new SingleMessage();

+ 4 - 3
src/main/java/com/szwl/service/impl/TJoinpayMchServiceImpl.java

@@ -69,8 +69,9 @@ public class TJoinpayMchServiceImpl extends ServiceImpl<TJoinpayMchMapper, TJoin
 
         JSONObject requestData = new JSONObject(new LinkedHashMap());
 
-        String login_name = "test1_" + adminId + "@mianhuatang.com";
-        mch.setLoginName(login_name);
+//        String login_name = "test1_" + adminId + "@mianhuatang.com";
+        String loginName = "sunzee" + RandomUtil.randomNumbers(10) + "@mianhuatang.com";
+        mch.setLoginName(loginName);
         String alt_mch_name = mch.getBankAccountName();
         mch.setAltMchName(alt_mch_name);
         mch.setAltMchShortName("");
@@ -80,7 +81,7 @@ public class TJoinpayMchServiceImpl extends ServiceImpl<TJoinpayMchMapper, TJoin
         String aes_key1 = getRandomString(16);
         String aes_key2 = getRandomString(16);
 
-        requestData.put("login_name", login_name);
+        requestData.put("login_name", loginName);
         requestData.put("alt_mch_name", alt_mch_name);
         requestData.put("alt_mch_short_name", "");
         requestData.put("alt_merchant_type", mch.getAltMerchantType());