/** * 根据商户key获取已生效的支付配置 * * @param payKey * @return */ public RpUserPayConfig getByPayKey(String payKey) { Map<String, Object> paramMap = new HashMap<String, Object>(); paramMap.put("payKey", payKey); paramMap.put("status", PublicStatusEnum.ACTIVE.name()); paramMap.put("auditStatus", PublicEnum.YES.name()); return rpUserPayConfigDao.getBy(paramMap); }
/** 根据支付产品获取数据 */ @Override public List<RpUserPayConfig> listByProductCode(String productCode, String auditStatus) { Map<String, Object> paramMap = new HashMap<String, Object>(); paramMap.put("productCode", productCode); paramMap.put("status", PublicStatusEnum.ACTIVE.name()); paramMap.put("auditStatus", auditStatus); return rpUserPayConfigDao.listBy(paramMap); }
@Override public PageBean listPage(PageParam pageParam, RpUserPayConfig rpUserPayConfig) { Map<String, Object> paramMap = new HashMap<String, Object>(); paramMap.put("productCode", rpUserPayConfig.getProductCode()); paramMap.put("userNo", rpUserPayConfig.getUserNo()); paramMap.put("userName", rpUserPayConfig.getUserName()); paramMap.put("productName", rpUserPayConfig.getProductName()); paramMap.put("status", PublicStatusEnum.ACTIVE.name()); return rpUserPayConfigDao.listPage(pageParam, paramMap); }
/** 修改用户支付配置 */ @Override public void updateUserPayConfig( String userNo, String productCode, String productName, Integer riskDay, String fundIntoType, String isAutoSett, String appId, String merchantId, String partnerKey, String ali_partner, String ali_sellerId, String ali_key, String ali_appid, String ali_rsaPrivateKey, String ali_rsaPublicKey) throws PayBizException { RpUserPayConfig rpUserPayConfig = rpUserPayConfigDao.getByUserNo(userNo, null); if (rpUserPayConfig == null) { throw new PayBizException(PayBizException.USER_PAY_CONFIG_IS_NOT_EXIST, "用户支付配置不存在"); } rpUserPayConfig.setProductCode(productCode); rpUserPayConfig.setProductName(productName); rpUserPayConfig.setRiskDay(riskDay); rpUserPayConfig.setFundIntoType(fundIntoType); rpUserPayConfig.setIsAutoSett(isAutoSett); rpUserPayConfig.setEditTime(new Date()); updateData(rpUserPayConfig); // 查询支付产品下有哪些支付方式 List<RpPayWay> payWayList = rpPayWayService.listByProductCode(productCode); Map<String, String> map = new HashMap<String, String>(); // 过滤重复数据 for (RpPayWay payWay : payWayList) { map.put(payWay.getPayWayCode(), payWay.getPayWayName()); } for (String key : map.keySet()) { if (key.equals(PayWayEnum.WEIXIN.name())) { // 创建用户第三方支付信息 RpUserPayInfo rpUserPayInfo = rpUserPayInfoService.getByUserNo(userNo, PayWayEnum.WEIXIN.name()); if (rpUserPayInfo == null) { rpUserPayInfo = new RpUserPayInfo(); rpUserPayInfo.setId(StringUtil.get32UUID()); rpUserPayInfo.setCreateTime(new Date()); rpUserPayInfo.setAppId(appId); rpUserPayInfo.setMerchantId(merchantId); rpUserPayInfo.setPartnerKey(partnerKey); rpUserPayInfo.setPayWayCode(PayWayEnum.WEIXIN.name()); rpUserPayInfo.setPayWayName(PayWayEnum.WEIXIN.getDesc()); rpUserPayInfo.setUserNo(userNo); rpUserPayInfo.setUserName(rpUserPayConfig.getUserName()); rpUserPayInfo.setStatus(PublicStatusEnum.ACTIVE.name()); rpUserPayInfoService.saveData(rpUserPayInfo); } else { rpUserPayInfo.setEditTime(new Date()); rpUserPayInfo.setAppId(appId); rpUserPayInfo.setMerchantId(merchantId); rpUserPayInfo.setPartnerKey(partnerKey); rpUserPayInfo.setPayWayCode(PayWayEnum.WEIXIN.name()); rpUserPayInfo.setPayWayName(PayWayEnum.WEIXIN.getDesc()); rpUserPayInfoService.updateData(rpUserPayInfo); } } else if (key.equals(PayWayEnum.ALIPAY.name())) { // 创建用户第三方支付信息 RpUserPayInfo rpUserPayInfo = rpUserPayInfoService.getByUserNo(userNo, PayWayEnum.ALIPAY.name()); if (rpUserPayInfo == null) { rpUserPayInfo = new RpUserPayInfo(); rpUserPayInfo.setId(StringUtil.get32UUID()); rpUserPayInfo.setCreateTime(new Date()); rpUserPayInfo.setAppId(ali_partner); rpUserPayInfo.setMerchantId(ali_sellerId); rpUserPayInfo.setPartnerKey(ali_key); rpUserPayInfo.setPayWayCode(PayWayEnum.ALIPAY.name()); rpUserPayInfo.setPayWayName(PayWayEnum.ALIPAY.getDesc()); rpUserPayInfo.setUserNo(userNo); rpUserPayInfo.setUserName(rpUserPayConfig.getUserName()); rpUserPayInfo.setStatus(PublicStatusEnum.ACTIVE.name()); rpUserPayInfo.setOfflineAppId(ali_appid); rpUserPayInfo.setRsaPrivateKey(ali_rsaPrivateKey); rpUserPayInfo.setRsaPublicKey(ali_rsaPublicKey); rpUserPayInfoService.saveData(rpUserPayInfo); } else { rpUserPayInfo.setEditTime(new Date()); rpUserPayInfo.setAppId(ali_partner); rpUserPayInfo.setMerchantId(ali_sellerId); rpUserPayInfo.setPartnerKey(ali_key); rpUserPayInfo.setPayWayCode(PayWayEnum.ALIPAY.name()); rpUserPayInfo.setPayWayName(PayWayEnum.ALIPAY.getDesc()); rpUserPayInfo.setOfflineAppId(ali_appid); rpUserPayInfo.setRsaPrivateKey(ali_rsaPrivateKey); rpUserPayInfo.setRsaPublicKey(ali_rsaPublicKey); rpUserPayInfoService.updateData(rpUserPayInfo); } } } }