Commit 826efa05 by Java-聂换换

商户进件

parent ff300226
...@@ -8,6 +8,7 @@ public class OrderEntity extends BaseEntity implements Serializable { ...@@ -8,6 +8,7 @@ public class OrderEntity extends BaseEntity implements Serializable {
private String userCode; // 用户code private String userCode; // 用户code
private String payNo; // 订单号 4位年+2位月+2位日+2位时+2位分+8位随机数 private String payNo; // 订单号 4位年+2位月+2位日+2位时+2位分+8位随机数
private String payCode; // 支付号 private String payCode; // 支付号
private String payMethod;// 支付方式
private String payChannel; // 支付渠道 private String payChannel; // 支付渠道
private String payStatus; // 订单状态 0待支付 1支付中 2已支付 3逾期取消 private String payStatus; // 订单状态 0待支付 1支付中 2已支付 3逾期取消
private String amount; // 金额 private String amount; // 金额
...@@ -17,17 +18,19 @@ public class OrderEntity extends BaseEntity implements Serializable { ...@@ -17,17 +18,19 @@ public class OrderEntity extends BaseEntity implements Serializable {
private String cardCode; // 支付卡code private String cardCode; // 支付卡code
private String payChannelName; private String payChannelName;
private String payMethodName;// 支付方式
private String createDate; private String createDate;
public OrderEntity() { public OrderEntity() {
} }
public OrderEntity(String code, String userCode, String payNo, String payCode, String payChannel, String payStatus, String amount, String subject, String tradeNo, String payType, String cardCode) { public OrderEntity(String code, String userCode, String payNo, String payCode,String payMethod, String payChannel, String payStatus, String amount, String subject, String tradeNo, String payType, String cardCode) {
this.setCode(code); this.setCode(code);
this.userCode = userCode; this.userCode = userCode;
this.payNo = payNo; this.payNo = payNo;
this.payCode = payCode; this.payCode = payCode;
this.payMethod = payMethod;
this.payChannel = payChannel; this.payChannel = payChannel;
this.payStatus = payStatus; this.payStatus = payStatus;
this.amount = amount; this.amount = amount;
...@@ -137,6 +140,19 @@ public class OrderEntity extends BaseEntity implements Serializable { ...@@ -137,6 +140,19 @@ public class OrderEntity extends BaseEntity implements Serializable {
this.payChannelName = payChannelName; this.payChannelName = payChannelName;
} }
public String getPayMethod() {
return payMethod;
}
public void setPayMethod(String payMethod) {
this.payMethod = payMethod;
}
public String getPayMethodName() {
return payMethodName;
}
public void setPayMethodName(String payMethodName) {
this.payMethodName = payMethodName;
}
} }
...@@ -11,6 +11,7 @@ public class RateEntity extends BaseEntity implements Serializable { ...@@ -11,6 +11,7 @@ public class RateEntity extends BaseEntity implements Serializable {
private String balance; // 结算 private String balance; // 结算
private String singleLimit; // 单笔限额 private String singleLimit; // 单笔限额
private String dayLimit; // 当天额度 private String dayLimit; // 当天额度
private String payChannel;// HL3通道的汇率编码
private String img; // 图标 private String img; // 图标
...@@ -21,9 +22,10 @@ public class RateEntity extends BaseEntity implements Serializable { ...@@ -21,9 +22,10 @@ public class RateEntity extends BaseEntity implements Serializable {
public RateEntity() { public RateEntity() {
} }
public RateEntity(String userLevel, String payMethod) { public RateEntity(String userLevel, String payMethod,String payChannel) {
this.userLevel = userLevel; this.userLevel = userLevel;
this.payMethod = payMethod; this.payMethod = payMethod;
this.payChannel = payChannel;
} }
public String getUserLevel() { public String getUserLevel() {
...@@ -90,4 +92,11 @@ public class RateEntity extends BaseEntity implements Serializable { ...@@ -90,4 +92,11 @@ public class RateEntity extends BaseEntity implements Serializable {
this.img = img; this.img = img;
} }
public String getPayChannel() {
return payChannel;
}
public void setPayChannel(String payChannel) {
this.payChannel = payChannel;
}
} }
...@@ -65,7 +65,7 @@ public class PayApiService { ...@@ -65,7 +65,7 @@ public class PayApiService {
String payCode = IdGen.randomBase62(64); String payCode = IdGen.randomBase62(64);
DecimalFormat df = new DecimalFormat("######0.00"); DecimalFormat df = new DecimalFormat("######0.00");
String amount = df.format(Double.valueOf(request.getAmount())); String amount = df.format(Double.valueOf(request.getAmount()));
OrderEntity orderEntity = new OrderEntity(code, request.getSubMerchantCode(), payNo, payCode, request.getPayChannel(), "1",amount , request.getSubject(), "", String.valueOf("D".equalsIgnoreCase(userEntity.getUserDetail().getCard().getCardType()) ? 5 : ("C".equalsIgnoreCase(userEntity.getUserDetail().getCard().getCardType()) ? 6 : 0)), request.getCardCode()); OrderEntity orderEntity = new OrderEntity(code, request.getSubMerchantCode(), payNo, payCode,"quick", request.getPayChannel(), "1",amount , request.getSubject(), "", String.valueOf("D".equalsIgnoreCase(userEntity.getUserDetail().getCard().getCardType()) ? 5 : ("C".equalsIgnoreCase(userEntity.getUserDetail().getCard().getCardType()) ? 6 : 0)), request.getCardCode());
payDao.saveOrderInfo(orderEntity); payDao.saveOrderInfo(orderEntity);
// 3. 创建分润信息,并保存 // 3. 创建分润信息,并保存
Map<String, String> userBenefits = getUserBenefit(userEntity, request); Map<String, String> userBenefits = getUserBenefit(userEntity, request);
...@@ -90,6 +90,14 @@ public class PayApiService { ...@@ -90,6 +90,14 @@ public class PayApiService {
payBackDto = this.quickPayJuHeZhongIntegralPay(userEntity, orderEntity, request,cardEntityPay); payBackDto = this.quickPayJuHeZhongIntegralPay(userEntity, orderEntity, request,cardEntityPay);
} }
}else {
if(!"C".equals(cardEntityPay.getCardType())){
payBackDto.setMessage("只能用信用卡支付");
}else if(cardEntityPay.getSupportPayChannel()==null || !cardEntityPay.getSupportPayChannel().contains("quick_integral,")){
payBackDto.setMessage("不支持"+cardEntityPay.getBankName());
}else{
payBackDto = this.quickPayJuHeZhongIntegralPay(userEntity, orderEntity, request,cardEntityPay);
}
} }
...@@ -151,7 +159,8 @@ public class PayApiService { ...@@ -151,7 +159,8 @@ public class PayApiService {
RateEntity rateEntity = new RateEntity(); RateEntity rateEntity = new RateEntity();
rateEntity.setUserLevel(userEntity.getLevel()); rateEntity.setUserLevel(userEntity.getLevel());
rateEntity.setPayMethod("quick_no_integral"); rateEntity.setPayMethod("quick");
rateEntity.setPayChannel("quick_no_integral");
rateEntity = userService.getRateByLevel(rateEntity); rateEntity = userService.getRateByLevel(rateEntity);
if(rateEntity!=null){ if(rateEntity!=null){
double userFee = Long.parseLong(request.getAmount())*100*Double.valueOf(rateEntity.getRate()); double userFee = Long.parseLong(request.getAmount())*100*Double.valueOf(rateEntity.getRate());
...@@ -195,6 +204,11 @@ public class PayApiService { ...@@ -195,6 +204,11 @@ public class PayApiService {
UserRequest userRequest = new UserRequest(); UserRequest userRequest = new UserRequest();
userRequest.setSubMerchantCode(request.getSubMerchantCode()); userRequest.setSubMerchantCode(request.getSubMerchantCode());
userRequest.setBelongBank(userEntity.getUserDetail().getCard().getBelongBank()); userRequest.setBelongBank(userEntity.getUserDetail().getCard().getBelongBank());
userRequest.setRealName(userEntity.getUserDetail().getRealName());
userRequest.setCardNo(userEntity.getUserDetail().getCard().getCardNo());
userRequest.setMobile(userEntity.getMobile());
userRequest.setIdCard(userEntity.getUserDetail().getIdCard());
userRequest.setCardPlace(userEntity.getUserDetail().getCard().getCardPlace());
String subMchId = userService.quickPayHandleJuhezhong(userRequest,""); String subMchId = userService.quickPayHandleJuhezhong(userRequest,"");
JSONObject dto = new JSONObject(); JSONObject dto = new JSONObject();
......
...@@ -250,12 +250,12 @@ public class UserApiService { ...@@ -250,12 +250,12 @@ public class UserApiService {
// 实名用户的推荐人等级由E(青铜)升为D(白银) // 实名用户的推荐人等级由E(青铜)升为D(白银)
userDao.updateUserLevel(recommendedUser); userDao.updateUserLevel(recommendedUser);
// 修改实名用户推荐人的银行卡费率 // 修改实名用户推荐人的银行卡费率
RateEntity rateEntityParam = new RateEntity("D", "quick"); // RateEntity rateEntityParam = new RateEntity("D", "quick",);
RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam); // RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
List<CardEntity> recommendCards = userDao.getRecommendCardsInfo(recommendedUser); // List<CardEntity> recommendCards = userDao.getRecommendCardsInfo(recommendedUser);
for (CardEntity entity : recommendCards) { // for (CardEntity entity : recommendCards) {
updateRateJuHeZhongPay(entity, rateEntity); // updateRateJuHeZhongPay(entity, rateEntity);
} // }
} }
} }
...@@ -303,7 +303,7 @@ public class UserApiService { ...@@ -303,7 +303,7 @@ public class UserApiService {
throw new MyException("用户信息为空"); throw new MyException("用户信息为空");
} }
UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity); UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity);
RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick"); RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick","");
RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam); RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
if (rateEntity == null) { if (rateEntity == null) {
throw new MyException("费率等级信息为空"); throw new MyException("费率等级信息为空");
...@@ -339,11 +339,11 @@ public class UserApiService { ...@@ -339,11 +339,11 @@ public class UserApiService {
throw new MyException("用户信息为空"); throw new MyException("用户信息为空");
} }
// UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity); // UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity);
// RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick"); RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick","quick_integral");
// RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam); RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
// if (rateEntity == null) { if (rateEntity == null) {
// throw new MyException("费率等级信息为空"); throw new MyException("费率等级信息为空");
// } }
JSONObject dto = new JSONObject(); JSONObject dto = new JSONObject();
String orderId = MakeOrderNum.makeOrderNum(); String orderId = MakeOrderNum.makeOrderNum();
...@@ -360,7 +360,8 @@ public class UserApiService { ...@@ -360,7 +360,8 @@ public class UserApiService {
dto.put("bankCode", request.getBelongBank());//联行号 dto.put("bankCode", request.getBelongBank());//联行号
dto.put("mobile",request.getMobile()); dto.put("mobile",request.getMobile());
dto.put("idNo",request.getIdCard());//身份证号 dto.put("idNo",request.getIdCard());//身份证号
dto.put("settleType",Global.getConfig("pay.settle.type"));//费率类型 795934
dto.put("settleType",rateEntity.getRate());//费率类型 795934
dto.put("address",request.getCardPlace());//地址 dto.put("address",request.getCardPlace());//地址
dto.put("merchantKey", ComCode.INTEGRAL_MERCHANT_KEY);//商户key dto.put("merchantKey", ComCode.INTEGRAL_MERCHANT_KEY);//商户key
dto.put("timestamp", System.currentTimeMillis());//时间戳 dto.put("timestamp", System.currentTimeMillis());//时间戳
......
...@@ -9,18 +9,22 @@ ...@@ -9,18 +9,22 @@
o.pay_status, o.pay_status,
o.pay_type, o.pay_type,
o.pay_channel, o.pay_channel,
o.pay_method,
o.amount, o.amount,
o.create_date, o.create_date,
o.`subject`, o.`subject`,
sd.label AS "payChannelName" sd.label AS "payMethodName"
FROM FROM
`youka_orders` o `youka_orders` o
LEFT JOIN sys_dict sd ON sd.value = o.pay_channel LEFT JOIN sys_dict sd ON sd.value = o.pay_method
WHERE o.del_flag = 0 WHERE o.del_flag = 0
AND o.user_code = #{subMerchantCode} AND o.user_code = #{subMerchantCode}
<if test="payChannel != null and payChannel != ''"> <if test="payChannel != null and payChannel != ''">
AND o.pay_channel = #{payChannel} AND o.pay_channel = #{payChannel}
</if> </if>
<if test="payMethod != null and payMethod != ''">
AND o.pay_channel = #{payMethod}
</if>
<if test="payStatus != null and payStatus != ''"> <if test="payStatus != null and payStatus != ''">
AND o.pay_status = #{payStatus} AND o.pay_status = #{payStatus}
</if> </if>
......
...@@ -423,6 +423,7 @@ ...@@ -423,6 +423,7 @@
yr.code, yr.code,
yr.user_level AS userLevel, yr.user_level AS userLevel,
yr.pay_method AS payMethod, yr.pay_method AS payMethod,
yr.pay_channel AS payChannel,
yr.rate, yr.rate,
yr.balance, yr.balance,
yr.single_limit AS singleLimit, yr.single_limit AS singleLimit,
...@@ -436,6 +437,7 @@ ...@@ -436,6 +437,7 @@
WHERE WHERE
yr.user_level = #{userLevel} yr.user_level = #{userLevel}
AND yr.pay_method = #{payMethod} AND yr.pay_method = #{payMethod}
AND yr.pay_channel = #{payChannel}
</select> </select>
<select id="getUserInfoBySameRecommend" resultType="com.thinkgem.jeesite.modules.user.entity.UserEntity"> <select id="getUserInfoBySameRecommend" resultType="com.thinkgem.jeesite.modules.user.entity.UserEntity">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment