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 new file mode 100644 index 0000000..f21abd1 --- /dev/null +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/ZfbAttestationController.java @@ -0,0 +1,71 @@ +package cn.pluss.platform.controller; + +import cn.pluss.platform.api.Result; +import cn.pluss.platform.api.ResultGenerator; +import cn.pluss.platform.entity.MerchantChannelStatus; +import cn.pluss.platform.enums.ZfbChannel; +import cn.pluss.platform.exception.MsgException; +import cn.pluss.platform.merchantChannelStatus.MerchantChannelStatusService; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author lyf + */ +@RestController +@RequestMapping("/zxfAttestation") +public class ZfbAttestationController { + @Resource + private MerchantChannelStatusService merchantChannelStatusService; + + /** + * 支付认证 + * @param params + * @return + */ + @PostMapping + public Result Attestation(@RequestBody Map params) { + List merchantCode = merchantChannelStatusService.getMerchantCodeByInfo(params.get("merchantCode")); + List result = new ArrayList<>(); + for (MerchantChannelStatus channelStatus : merchantCode) { + switch (channelStatus.getChannel()){ + case 1: + HashMap merchantCodeMap = new HashMap<>(); + merchantCodeMap.put("virChannelFlag", channelStatus.getVirChannelFlag()); + merchantCodeMap.put("url", ZfbChannel.SXF_CHANNEL.getUrl()); + merchantCodeMap.put("nameChannel",ZfbChannel.SXF_CHANNEL.getName()); + result.add(merchantCodeMap); + break; + case 4: + HashMap merchantCodeMap4 = new HashMap<>(); + merchantCodeMap4.put("virChannelFlag", channelStatus.getVirChannelFlag()); + merchantCodeMap4.put("url", ZfbChannel.YS_CHANNEL.getUrl()); + merchantCodeMap4.put("nameChannel",ZfbChannel.YS_CHANNEL.getName()); + result.add(merchantCodeMap4); + break; + case 5: + HashMap merchantCodeMap5 = new HashMap<>(); + merchantCodeMap5.put("virChannelFlag", channelStatus.getVirChannelFlag()); + merchantCodeMap5.put("url", ZfbChannel.LKL_CHANNEL.getUrl()); + merchantCodeMap5.put("nameChannel",ZfbChannel.LKL_CHANNEL.getName()); + result.add(merchantCodeMap5); + break; + case 6: + HashMap merchantCodeMap6 = new HashMap<>(); + merchantCodeMap6.put("virChannelFlag", channelStatus.getVirChannelFlag()); + merchantCodeMap6.put("url", ZfbChannel.YS_CHANNEL.getUrl()); + merchantCodeMap6.put("nameChannel",ZfbChannel.YS_CHANNEL.getName()); + result.add(merchantCodeMap6); + break; + default: + throw new MsgException("未知通道"); + } + } + return ResultGenerator.genSuccessResult(result); + } +} diff --git a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserPromotionMapper.java b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserPromotionMapper.java index 36a37e7..463ee1a 100644 --- a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserPromotionMapper.java +++ b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserPromotionMapper.java @@ -2,9 +2,14 @@ package cn.pluss.platform.mapper; import cn.pluss.platform.entity.UserManageProfit; import cn.pluss.platform.entity.UserPromotion; +import cn.pluss.platform.vo.MerchantChannelStatusVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; @Mapper public interface UserPromotionMapper extends BaseMapper { + List selectListByUserId(@Param("userIdList") List userIdList); } diff --git a/pluss-dao-bundle/src/main/resources/mapper/UserPromotionMapper.xml b/pluss-dao-bundle/src/main/resources/mapper/UserPromotionMapper.xml new file mode 100644 index 0000000..581fed8 --- /dev/null +++ b/pluss-dao-bundle/src/main/resources/mapper/UserPromotionMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + diff --git a/pluss-manage-page/src/main/java/cn/pluss/platform/controller/promoter/PromoterController.java b/pluss-manage-page/src/main/java/cn/pluss/platform/controller/promoter/PromoterController.java index 387ad01..aa0a645 100644 --- a/pluss-manage-page/src/main/java/cn/pluss/platform/controller/promoter/PromoterController.java +++ b/pluss-manage-page/src/main/java/cn/pluss/platform/controller/promoter/PromoterController.java @@ -620,11 +620,14 @@ public class PromoterController { request.setAttribute("listMerchantRejectDesc", listMerchantRejectDesc); UserApp appInfo = uaService.queryUserAppJoinById(userId); + QueryWrapper qWrapper = new QueryWrapper() + .eq("userId", userId).eq("valid", 1); + Account accountOne = accountService.getOne(qWrapper); request.setAttribute("ppStatus", appInfo.getPpStatus()); request.setAttribute("ppThirdStatus", appInfo.getPpThirdStatus()); request.setAttribute("userId", userId); request.setAttribute("mbi", mbi); - + request.setAttribute("account", accountOne == null?"null":accountOne.getChannelType()); return "promoter/channelAuditInfo"; } diff --git a/pluss-manage-page/src/main/webapp/WEB-INF/jsp/promoter/channelAuditInfo.jsp b/pluss-manage-page/src/main/webapp/WEB-INF/jsp/promoter/channelAuditInfo.jsp index 6e08695..ab1233a 100644 --- a/pluss-manage-page/src/main/webapp/WEB-INF/jsp/promoter/channelAuditInfo.jsp +++ b/pluss-manage-page/src/main/webapp/WEB-INF/jsp/promoter/channelAuditInfo.jsp @@ -84,6 +84,16 @@ +
+ +
+ +
+
+ + +
diff --git a/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/ZfbChannel.java b/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/ZfbChannel.java new file mode 100644 index 0000000..88e658a --- /dev/null +++ b/pluss-model-bundle/src/main/java/cn/pluss/platform/enums/ZfbChannel.java @@ -0,0 +1,29 @@ +package cn.pluss.platform.enums; + +import lombok.Getter; + +/** + * @author 12847 + */ + +public enum ZfbChannel { + SXF_CHANNEL("随行付","https://czg-oss.oss-cn-hangzhou.aliyuncs.com/app/statics/%E9%9A%8F%E8%A1%8C%E4%BB%98.png"), + YS_CHANNEL("银盛","https://czg-oss.oss-cn-hangzhou.aliyuncs.com/app/statics/%E9%93%B6%E7%9B%9B.png"), + LKL_CHANNEL("拉卡拉","https://czg-oss.oss-cn-hangzhou.aliyuncs.com/app/statics/%E6%8B%89%E5%8D%A1%E6%8B%89.jpg"); + /** + * 通道值 + */ + @Getter + String name; + + /** + * 图片url + */ + @Getter + String url; + + ZfbChannel(String name, String url){ + this.name = name; + this.url = url; + } +} diff --git a/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/UserInfoVO.java b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/UserInfoVO.java index d30460a..a20de06 100644 --- a/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/UserInfoVO.java +++ b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/UserInfoVO.java @@ -130,6 +130,7 @@ public class UserInfoVO { */ private String isPushWxMessage; + private String typeCode; /** * 是否在黑名单中 */ diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/AccountService.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/AccountService.java index bcb28cc..18c2d78 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/AccountService.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/AccountService.java @@ -122,6 +122,7 @@ public interface AccountService extends IService { * @return */ AccountDTO getRealAccount(String userId); + AccountDTO getReaLAccountD0(String userId); /** * 获取用户指定结算通道类型下的结算信息 diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/impl/account/AccountServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/impl/account/AccountServiceImpl.java index b031fc2..e3333ce 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/impl/account/AccountServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchant/impl/account/AccountServiceImpl.java @@ -395,8 +395,15 @@ public class AccountServiceImpl extends ServiceImpl impl bankCardService.save(accountDTO.getBankCard()); account.setBankCardId(accountDTO.getBankCard().getId() + ""); - save(account); - + this.baseMapper.insert(account); + //如果注册了一个通道给他默认 + LambdaQueryWrapper qWrapperAccountD1 = Wrappers.lambdaQuery(); + qWrapperAccountD1.eq(Account::getUserId, accountDTO.getUserId()); + int count = baseMapper.selectCount(qWrapperAccountD1); + if (count == 1) { + account.setValid(1); + this.baseMapper.updateById(account); + } // if (!accountDTO.getChannelType().equals(Account.CHANNEL_TYPE_D1)) { // return; // } @@ -565,8 +572,14 @@ public class AccountServiceImpl extends ServiceImpl impl AccountDTO d0 = getRealAccount(userId, Account.CHANNEL_TYPE_D0); storeSummaryVO.setD0(d0); //现在只要进件一个通道就是已录入 - if (d1 != null || d0 != null){ - storeSummaryVO.setD0Status("1"); + if ("1".equals(merchantType)) { + if (d1.getBankCard() != null || d0.getBankCard() != null) { + storeSummaryVO.setD0Status("1"); + } + }else { + if (d1 != null || d0 != null) { + storeSummaryVO.setD0Status("1"); + } } MerchantChannelStatus mcsCurrent = mcsService.getValidData(mbi.getMerchantCode()); @@ -1063,6 +1076,10 @@ public class AccountServiceImpl extends ServiceImpl impl public AccountDTO getRealAccount(String userId) { return getRealAccount(userId, Account.CHANNEL_TYPE_D1); } + @Override + public AccountDTO getReaLAccountD0(String userId){ + return getRealAccount(userId, Account.CHANNEL_TYPE_D0); + } @Override public void delAccount(String userId, String channelType) { 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 f7bb616..e951d67 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 @@ -52,6 +52,12 @@ public interface MerchantChannelStatusService extends IService getMerchantCodeByInfo(String merchantCode) { + QueryWrapper qWrapper = new QueryWrapper<>(); + qWrapper.eq("merchantCode", merchantCode) + .eq("status",3); + return getBaseMapper().selectList(qWrapper); + } /** * 获取当前启用的渠道下商户的渠道信息 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 d09e955..2da0dbd 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 @@ -248,14 +248,14 @@ public class UserAppServiceImpl extends ServiceImpl impl return pageResult; } List merchantCodeList = new ArrayList<>(); + List userIdList = new ArrayList<>(); for (UserInfoVO userInfoVO : result) { merchantCodeList.add(userInfoVO.getMerchantCode() + ""); + userIdList.add(Integer.valueOf(userInfoVO.getUserId() + "")); } List channelStatusList = mcsService.listByMerchantCodeList(merchantCodeList); - Map mapMerchantId = new HashMap<>(); - for (UserInfoVO userInfoVO : result) { List statusList = userInfoVO.getChannelStatusList(); if (statusList == null) { @@ -271,7 +271,6 @@ public class UserAppServiceImpl extends ServiceImpl impl statusList.add(item); mapMerchantId.put(item.getChannel() + item.getMerchantId() + item.getMerchantCode(), 1); } - if (Objects.equals(4, item.getChannel())) { if (userInfoVO.getWxMercNoD0() == null) { userInfoVO.setWxMercNoD0(item.getWxMercNo()); @@ -823,7 +822,16 @@ public class UserAppServiceImpl extends ServiceImpl impl UserApp userApp = queryUserAppByToken(); MsgException.checkBlank(userApp.getMerchantCode(), "请完善经营信息"); - AccountDTO realAccount = accountService.getRealAccount(userApp.getUserId() + ""); + QueryWrapper QueryWrapper = new QueryWrapper() + .eq("userId", userApp.getUserId()) + .eq("valid", 1); + Account account = accountService.getOne(QueryWrapper); + AccountDTO realAccount = null; + if (Objects.equals(account.getChannelType(), "D1")) { + realAccount = accountService.getRealAccount(userApp.getUserId() + ""); + }else { + realAccount = accountService.getReaLAccountD0(userApp.getUserId()+""); + } MsgException.checkNull(realAccount, "请完善商户结算信息");