From 8b555d4682149b4ac07e7be4cce30aa99c2ff122 Mon Sep 17 00:00:00 2001 From: liuyingfang <1357764963@qq.com> Date: Thu, 16 Nov 2023 14:15:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=B0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/IntroduceController.java | 11 +- .../controller/ZfbAttestationController.java | 13 ++- .../callback/AuditCallbackController.java | 8 ++ .../mapper/MerchantChannelStatusMapper.xml | 2 +- .../cn/pluss/platform/enums/MccAndStore.java | 34 ++++++ .../pluss/platform/vo/OperationRecordVO.java | 2 +- pluss-service-bundle/pom.xml | 5 + .../impl/AppletStoreUserServiceImpl.java | 110 +++++++++++++++++- .../impl/UserMakerQuotaServiceImpl.java | 5 - .../impl/AppletStoreServiceImpl.java | 6 +- .../channel/ys/impl/YSAuditServiceV3.java | 2 +- .../impl/account/AccountServiceImpl.java | 29 +++-- .../MerchantChannelStatusService.java | 6 + .../platform/task/LklMerAuditHandler.java | 4 +- .../platform/task/SxfMerAuditHandler.java | 4 +- .../userApp/impl/UserAppServiceImpl.java | 9 +- .../controller/home/MerchantController.java | 2 +- 17 files changed, 205 insertions(+), 47 deletions(-) create mode 100644 pluss-model-bundle/src/main/java/cn/pluss/platform/enums/MccAndStore.java diff --git a/pluss-api-page/src/main/java/cn/pluss/platform/controller/IntroduceController.java b/pluss-api-page/src/main/java/cn/pluss/platform/controller/IntroduceController.java index 548fba1..d5bf0b8 100644 --- a/pluss-api-page/src/main/java/cn/pluss/platform/controller/IntroduceController.java +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/IntroduceController.java @@ -56,10 +56,11 @@ public class IntroduceController { if ("AG".equals(typeCode) || "FB".equals(typeCode) || "SB".equals(typeCode)){ return image.PROMOTION_IMAGE.getImageUrl(); } - if ("1".equals(merchantType)){ + //TODO 现在的逻辑是所有的都可以是创客 +// if ("1".equals(merchantType)){ return image.SMALL_IMAGE.getImageUrl(); - } - return image.OTHER_IMAGE.getImageUrl(); +// } +// return image.OTHER_IMAGE.getImageUrl(); } @PostMapping ("/common") @@ -97,13 +98,13 @@ public class IntroduceController { //安卓 if ("1".equals(type)){ if ("1".equals(entity.getAndroid())) { - return ResultGenerator.genSuccessResult(entity.getContent()); + return ResultGenerator.genSuccessResult(image(params.get("typeCode"), params.get("merchantType"))); } return ResultGenerator.genSuccessResult(""); //IOS }else if ("2".equals(type)){ if ("1".equals(entity.getIos())) { - return ResultGenerator.genSuccessResult(entity.getContent()); + return ResultGenerator.genSuccessResult(image(params.get("typeCode"), params.get("merchantType"))); } return ResultGenerator.genSuccessResult(""); } diff --git a/pluss-api-page/src/main/java/cn/pluss/platform/controller/ZfbAttestationController.java b/pluss-api-page/src/main/java/cn/pluss/platform/controller/ZfbAttestationController.java index aad51d2..9c0e429 100644 --- a/pluss-api-page/src/main/java/cn/pluss/platform/controller/ZfbAttestationController.java +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/ZfbAttestationController.java @@ -39,14 +39,15 @@ public class ZfbAttestationController { @PostMapping public Result Attestation(@RequestBody Map params) { - QueryWrapper QueryWrapper = new QueryWrapper() - .eq("userId", Integer.valueOf(params.get("userId"))) - .eq("valid", 1); - Account one = accountService.getOne(QueryWrapper); - if (one == null){ + QueryWrapper QueryWrapper = new QueryWrapper() + .eq("merchantCode", params.get("merchantCode")) + .eq("status", 3) + .ne("merchantId",""); + MerchantChannelStatus merchantCode = merchantChannelStatusService.getOne(QueryWrapper); + if (merchantCode == null){ throw new MsgException("账号异常"); } - MerchantChannelStatus merchantCode = merchantChannelStatusService.getMerchantCodeByInfo(params.get("merchantCode"), one.getChannelType()); + HashMap merchantCodeMap = new HashMap<>(); switch (merchantCode.getChannel()){ case 1: diff --git a/pluss-api-page/src/main/java/cn/pluss/platform/controller/merchant/callback/AuditCallbackController.java b/pluss-api-page/src/main/java/cn/pluss/platform/controller/merchant/callback/AuditCallbackController.java index d54eb82..fd4de65 100644 --- a/pluss-api-page/src/main/java/cn/pluss/platform/controller/merchant/callback/AuditCallbackController.java +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/merchant/callback/AuditCallbackController.java @@ -66,6 +66,14 @@ public class AuditCallbackController { return sxfMerchantAuditService.merchantAuditCallback(result); } + @PostMapping("updateSxf") + // TODO 后续需要接sxf的回调 + public Map updateSxfCallback(@RequestBody JSONObject result) throws Exception { + System.out.println("回调成功+++++++++\n"); + System.out.println(result); + return result; + } + @PostMapping("ys") public String ysAuditCallback(@RequestParam Map result) throws Exception { result = (JSONObject) JSON.toJSON(result); diff --git a/pluss-dao-bundle/src/main/resources/mapper/MerchantChannelStatusMapper.xml b/pluss-dao-bundle/src/main/resources/mapper/MerchantChannelStatusMapper.xml index 7c8ac2b..270c3cc 100644 --- a/pluss-dao-bundle/src/main/resources/mapper/MerchantChannelStatusMapper.xml +++ b/pluss-dao-bundle/src/main/resources/mapper/MerchantChannelStatusMapper.xml @@ -7,7 +7,7 @@ diff --git a/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/MccAndStore.java b/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/MccAndStore.java new file mode 100644 index 0000000..af92e53 --- /dev/null +++ b/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/MccAndStore.java @@ -0,0 +1,34 @@ +package cn.pluss.platform.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum MccAndStore { + + SUPERMARKET(1,"5411"), + + BARBER(2,"7230"), + + COSMETOLOGY(3,"7298"), + + GYM(4,"7997"), + + FOOT(5,"7297"), + + FAVITY(6,"8021"); + + private final Integer value; + + private final String desc; + + public static String findValueByStoreId(Integer storeId) { + for (MccAndStore store : MccAndStore.values()) { + if (store.getValue().equals(storeId)) { + return store.getDesc(); + } + } + return null; + } +} diff --git a/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/OperationRecordVO.java b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/OperationRecordVO.java index c366cff..e42c105 100644 --- a/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/OperationRecordVO.java +++ b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/OperationRecordVO.java @@ -15,7 +15,7 @@ import lombok.EqualsAndHashCode; " LEFT JOIN tb_pluss_user_app ua ON ua.userId = opr.userId WHERE ua.userType != 'staff' GROUP BY extension ->> '$.ip'" + ") t ON t.ip = opr.extension ->> '$.ip' WHERE ua.userType != 'staff') t1") @EqualsAndHashCode(callSuper = true) -public class OperationRecordVO extends OperationRecord { +public class OperationRecordVO extends OperationRecord { /** * 实名姓名 diff --git a/pluss-service-bundle/pom.xml b/pluss-service-bundle/pom.xml index f14a7ee..bfefc8a 100644 --- a/pluss-service-bundle/pom.xml +++ b/pluss-service-bundle/pom.xml @@ -38,6 +38,7 @@ 3.0.2 + org.springframework.boot spring-boot-starter-amqp @@ -49,6 +50,10 @@ + + org.springframework.boot + spring-boot-starter-webflux + org.springframework.amqp diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/AppletStoreUser/impl/AppletStoreUserServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/AppletStoreUser/impl/AppletStoreUserServiceImpl.java index 961487a..5797d30 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/AppletStoreUser/impl/AppletStoreUserServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/AppletStoreUser/impl/AppletStoreUserServiceImpl.java @@ -2,18 +2,31 @@ package cn.pluss.platform.AppletStoreUser.impl; import cn.pluss.platform.AppletStoreUser.AppletStoreUserService; import cn.pluss.platform.appletInfo.AppletInfoService; -import cn.pluss.platform.entity.AppletInfo; -import cn.pluss.platform.entity.AppletStore; -import cn.pluss.platform.entity.AppletStoreUser; +import cn.pluss.platform.entity.*; +import cn.pluss.platform.enums.MccAndStore; import cn.pluss.platform.exception.MsgException; import cn.pluss.platform.mapper.AppletInfoMapper; import cn.pluss.platform.mapper.AppletStoreMapper; import cn.pluss.platform.mapper.AppletStoreUserMapper; +import cn.pluss.platform.mapper.MerchantStoreMapper; +import cn.pluss.platform.merchant.MerchantBaseInfoService; +import cn.pluss.platform.userInfo.UserInfoService; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.reactive.function.client.WebClient; +import org.springframework.web.reactive.function.BodyInserters; +import cn.pluss.platform.enums.MccAndStore; + +import reactor.core.publisher.Mono; + import javax.annotation.Resource; import java.util.Date; @@ -27,6 +40,12 @@ public class AppletStoreUserServiceImpl extends ServiceImpl0){ + MerchantBaseInfo merchantBaseInfo = merchantBaseInfoService.getMerchantBaseInfoByUserId(String.valueOf(appletStoreUser.getUserId())); + if (merchantBaseInfo == null){ + throw new MsgException("未找到商户"); + } + // 设置请求地址 + String url = "https://door.sxczgkj.cn/api/javaapp/apple/registeredstore"; + + // 创建WebClient对象 + WebClient webClient = WebClient.builder().build(); + + // 构造请求头 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); + + // 构造请求参数 + StringBuilder params = new StringBuilder(); + + params.append("title=").append(merchantBaseInfo.getAlias()); + //判断mcc码 + params.append("&mcc=").append(MccAndStore.findValueByStoreId(appletStoreUser.getAppleStoreId())); + + UserInfo userInfo = userInfoService.getMainUserInfo(Long.valueOf(merchantBaseInfo.getUserId())); + params.append("&mobile=").append(userInfo.getPhone()); + + QueryWrapper storQueryWrapper= new QueryWrapper<>(); + storQueryWrapper.eq("merchantCode",merchantBaseInfo.getMerchantCode()); + MerchantStore merchantStore = merchantStoreMapper.selectOne(storQueryWrapper); + params.append("&syb_m_id=").append(merchantStore.getId()); + params.append("&type=1"); + + + // 发送POST请求并获取响应 + Mono response = webClient.post() + .uri(url) + .headers(httpHeaders -> httpHeaders.addAll(headers)) + .body(BodyInserters.fromObject(params.toString())) + .retrieve() + .bodyToMono(String.class); + // 响应结果判断 + String responseMsg = response.block(); + if (responseMsg.contains("\"code\":1")) { + // 返回1 + return 1; + }else { + throw new MsgException("添加失败"); + } + } + + throw new MsgException("店铺开通有误"); + } + + public static void main(String[] args) { + // 设置请求地址 + String url = "https://door.sxczgkj.cn/api/javaapp/apple/registeredstore"; + + // 创建WebClient对象 + WebClient webClient = WebClient.builder().build(); + + // 构造请求头 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); + + // 构造请求参数 + StringBuilder params = new StringBuilder(); + params.append("mobile=11111111111"); + params.append("&mcc=7997"); + params.append("&type=1"); + params.append("&title=测试测试"); + + // 发送POST请求并获取响应 + Mono response = webClient.post() + .uri(url) + .body(BodyInserters.fromObject(params.toString())) + .headers(httpHeaders -> httpHeaders.addAll(headers)) + .retrieve() + .bodyToMono(String.class); + + // 打印响应结果 + System.out.println(response.block()); } } diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/UserMakerQuota/impl/UserMakerQuotaServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/UserMakerQuota/impl/UserMakerQuotaServiceImpl.java index 28e9966..d95c2d6 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/UserMakerQuota/impl/UserMakerQuotaServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/UserMakerQuota/impl/UserMakerQuotaServiceImpl.java @@ -95,11 +95,6 @@ public class UserMakerQuotaServiceImpl extends ServiceImpl menuList(List appletStores, Integer userId, Integer storeId){ + private List menuList(List appletStores, Integer userId, Integer storeId,String phone){ List appletStoreByUser = appletStoreUserMapper.getAppletStoreByUser(userId); ArrayList appletStoreVOList = new ArrayList<>(); for (AppletStore appletStore : appletStores) { @@ -66,7 +66,7 @@ public class AppletStoreServiceImpl extends ServiceImpl 0) { +// throw new MsgException("当前结算人已在风控黑名单中,请更换结算信息"); +// } +// } delAccount(accountDTO.getUserId(), accountDTO.getChannelType()); @@ -408,6 +412,13 @@ public class AccountServiceImpl extends ServiceImpl impl bankCardService.save(accountDTO.getBankCard()); account.setBankCardId(accountDTO.getBankCard().getId() + ""); + //看一下之前默认 + if (accountOld.getValid() == 1) { + account.setValid(1); + } else { + account.setValid(0); + } + this.baseMapper.insert(account); //如果注册了一个通道给他默认 LambdaQueryWrapper qWrapperAccountD1 = Wrappers.lambdaQuery(); @@ -1066,7 +1077,7 @@ public class AccountServiceImpl extends ServiceImpl impl }); - MerchantChannelStatus mcs = mcsService.getByMerchantCodeAndChannelType(mbi.getMerchantCode(), account.getChannelType()); + MerchantChannelStatus mcs = mcsService.getByMerchantCodeAndChannelTypeV1(mbi.getMerchantCode(), account.getChannelType()); if (mcs == null || !MerchantChannelStatus.AUDIT_STATUS_DATA_EDIT.equals(mcs.getStatus())) { account.setBak(null); } diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantChannelStatus/MerchantChannelStatusService.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantChannelStatus/MerchantChannelStatusService.java index 12ead85..53d4428 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantChannelStatus/MerchantChannelStatusService.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantChannelStatus/MerchantChannelStatusService.java @@ -37,6 +37,12 @@ public interface MerchantChannelStatusService extends IService qWrapper = Wrappers.lambdaQuery(); + qWrapper.eq(MerchantChannelStatus::getVirChannelFlag, channelType); + qWrapper.eq(MerchantChannelStatus::getMerchantCode, merchantCode); + return getOne(qWrapper); + } default MerchantChannelStatus getByMerchantCodeAndChannelTypeNew(String merchantCode, String channelType) { LambdaQueryWrapper qWrapper = Wrappers.lambdaQuery(); qWrapper.eq(MerchantChannelStatus::getVirChannelFlag, channelType); diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/task/LklMerAuditHandler.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/task/LklMerAuditHandler.java index f1b6b63..b13a6c5 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/task/LklMerAuditHandler.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/task/LklMerAuditHandler.java @@ -380,8 +380,8 @@ public class LklMerAuditHandler { StringBuilder sb = new StringBuilder(baseUrl); sb.append("?title=").append(merchantBaseInfo.getAlias()); sb.append("&password=").append(userInfo.getPassword().toLowerCase()); - sb.append("?mcc=").append(merchantBaseInfo.getMcc()); - sb.append("?mccName=").append(merchantBaseInfo.getMccName()); + sb.append("&mcc=").append(merchantBaseInfo.getMcc()); + sb.append("&mccName=").append(merchantBaseInfo.getMccName()); sb.append("&mobile=").append(userInfo.getLoginName()); sb.append("&syb_m_id=").append(merchantStore.getId()); sb.append("&addressNo=").append(merchantBaseInfo.getAddressNo()); diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/task/SxfMerAuditHandler.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/task/SxfMerAuditHandler.java index 786053e..779cdf0 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/task/SxfMerAuditHandler.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/task/SxfMerAuditHandler.java @@ -370,8 +370,8 @@ public class SxfMerAuditHandler { String baseUrl = it.toString(); StringBuilder sb = new StringBuilder(baseUrl); sb.append("?title=").append(merchantBaseInfo.getAlias()); - sb.append("?mcc=").append(merchantBaseInfo.getMcc()); - sb.append("?mccName=").append(merchantBaseInfo.getMccName()); + sb.append("&mcc=").append(merchantBaseInfo.getMcc()); + sb.append("&mccName=").append(merchantBaseInfo.getMccName()); sb.append("&password=").append(userInfo.getPassword().toLowerCase()); sb.append("&mobile=").append(userInfo.getLoginName()); sb.append("&syb_m_id=").append(merchantStore.getId()); diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/userApp/impl/UserAppServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/userApp/impl/UserAppServiceImpl.java index c76b0ee..716a993 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/userApp/impl/UserAppServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/userApp/impl/UserAppServiceImpl.java @@ -1934,7 +1934,7 @@ public class UserAppServiceImpl extends ServiceImpl impl userInfo.setId(userApp.getUserId()); UserInfo userInfos = userInfoService.queryUserInfo(userInfo); if(ObjectUtil.isEmpty(userInfos)){ - MsgException.checkNull(null,"用户信息不存在"); + MsgException.checkNull(null,"商户信息不存在"); } PhoneValidateCode phoneValidateCode = new PhoneValidateCode(); @@ -1956,14 +1956,9 @@ public class UserAppServiceImpl extends ServiceImpl impl MerchantBaseInfo baseInfo= merchantBaseInfoService.getMerchantBaseInfoByUserId(userInfos.getId().toString()); if(ObjectUtil.isEmpty(baseInfo)){ - MsgException.checkNull(null,"商户信息不存在"); + MsgException.checkNull(null,"请先进行商户认证"); } - if(!"1".equals(baseInfo.getMerchantType())){ - MsgException.checkNull(null,"非小微不允许升级创客"); - } - - UserMarker marker= userMarkerMapper.selectById(userApp.getUserId()); if(ObjectUtil.isNotEmpty(marker)){ diff --git a/pluss-wap-page/src/main/java/cn/pluss/platform/controller/home/MerchantController.java b/pluss-wap-page/src/main/java/cn/pluss/platform/controller/home/MerchantController.java index 3f01190..4eb5fac 100644 --- a/pluss-wap-page/src/main/java/cn/pluss/platform/controller/home/MerchantController.java +++ b/pluss-wap-page/src/main/java/cn/pluss/platform/controller/home/MerchantController.java @@ -113,7 +113,7 @@ import java.util.regex.Pattern; /** * @author yuchen - * @Description (会员扫商户二维码 , 走正常的扣款流程 , 微信扫的话调微信支付接口 , 支付宝扫调支付宝支付接口) + * @Description (会员扫商户二维码 , 走正常的扣款流程 , 微信扫的话调微信支付接口 , 银收客扫调支付宝支付接口) */ @Controller @Slf4j