Commit 826efa05 by Java-聂换换

商户进件

parent ff300226
......@@ -8,6 +8,7 @@ public class OrderEntity extends BaseEntity implements Serializable {
private String userCode; // 用户code
private String payNo; // 订单号 4位年+2位月+2位日+2位时+2位分+8位随机数
private String payCode; // 支付号
private String payMethod;// 支付方式
private String payChannel; // 支付渠道
private String payStatus; // 订单状态 0待支付 1支付中 2已支付 3逾期取消
private String amount; // 金额
......@@ -17,17 +18,19 @@ public class OrderEntity extends BaseEntity implements Serializable {
private String cardCode; // 支付卡code
private String payChannelName;
private String payMethodName;// 支付方式
private String createDate;
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.userCode = userCode;
this.payNo = payNo;
this.payCode = payCode;
this.payMethod = payMethod;
this.payChannel = payChannel;
this.payStatus = payStatus;
this.amount = amount;
......@@ -137,6 +140,19 @@ public class OrderEntity extends BaseEntity implements Serializable {
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 {
private String balance; // 结算
private String singleLimit; // 单笔限额
private String dayLimit; // 当天额度
private String payChannel;// HL3通道的汇率编码
private String img; // 图标
......@@ -21,9 +22,10 @@ public class RateEntity extends BaseEntity implements Serializable {
public RateEntity() {
}
public RateEntity(String userLevel, String payMethod) {
public RateEntity(String userLevel, String payMethod,String payChannel) {
this.userLevel = userLevel;
this.payMethod = payMethod;
this.payChannel = payChannel;
}
public String getUserLevel() {
......@@ -90,4 +92,11 @@ public class RateEntity extends BaseEntity implements Serializable {
this.img = img;
}
public String getPayChannel() {
return payChannel;
}
public void setPayChannel(String payChannel) {
this.payChannel = payChannel;
}
}
......@@ -65,7 +65,7 @@ public class PayApiService {
String payCode = IdGen.randomBase62(64);
DecimalFormat df = new DecimalFormat("######0.00");
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);
// 3. 创建分润信息,并保存
Map<String, String> userBenefits = getUserBenefit(userEntity, request);
......@@ -90,6 +90,14 @@ public class PayApiService {
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 {
RateEntity rateEntity = new RateEntity();
rateEntity.setUserLevel(userEntity.getLevel());
rateEntity.setPayMethod("quick_no_integral");
rateEntity.setPayMethod("quick");
rateEntity.setPayChannel("quick_no_integral");
rateEntity = userService.getRateByLevel(rateEntity);
if(rateEntity!=null){
double userFee = Long.parseLong(request.getAmount())*100*Double.valueOf(rateEntity.getRate());
......@@ -195,6 +204,11 @@ public class PayApiService {
UserRequest userRequest = new UserRequest();
userRequest.setSubMerchantCode(request.getSubMerchantCode());
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,"");
JSONObject dto = new JSONObject();
......
......@@ -250,12 +250,12 @@ public class UserApiService {
// 实名用户的推荐人等级由E(青铜)升为D(白银)
userDao.updateUserLevel(recommendedUser);
// 修改实名用户推荐人的银行卡费率
RateEntity rateEntityParam = new RateEntity("D", "quick");
RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
List<CardEntity> recommendCards = userDao.getRecommendCardsInfo(recommendedUser);
for (CardEntity entity : recommendCards) {
updateRateJuHeZhongPay(entity, rateEntity);
}
// RateEntity rateEntityParam = new RateEntity("D", "quick",);
// RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
// List<CardEntity> recommendCards = userDao.getRecommendCardsInfo(recommendedUser);
// for (CardEntity entity : recommendCards) {
// updateRateJuHeZhongPay(entity, rateEntity);
// }
}
}
......@@ -303,7 +303,7 @@ public class UserApiService {
throw new MyException("用户信息为空");
}
UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity);
RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick");
RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick","");
RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
if (rateEntity == null) {
throw new MyException("费率等级信息为空");
......@@ -339,11 +339,11 @@ public class UserApiService {
throw new MyException("用户信息为空");
}
// UserDetailEntity userDetailEntity = userDao.getUserDetailByCode(userEntity);
// RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick");
// RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
// if (rateEntity == null) {
// throw new MyException("费率等级信息为空");
// }
RateEntity rateEntityParam = new RateEntity(userEntity.getLevel(), "quick","quick_integral");
RateEntity rateEntity = userDao.getRateByLevel(rateEntityParam);
if (rateEntity == null) {
throw new MyException("费率等级信息为空");
}
JSONObject dto = new JSONObject();
String orderId = MakeOrderNum.makeOrderNum();
......@@ -360,7 +360,8 @@ public class UserApiService {
dto.put("bankCode", request.getBelongBank());//联行号
dto.put("mobile",request.getMobile());
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("merchantKey", ComCode.INTEGRAL_MERCHANT_KEY);//商户key
dto.put("timestamp", System.currentTimeMillis());//时间戳
......
......@@ -9,18 +9,22 @@
o.pay_status,
o.pay_type,
o.pay_channel,
o.pay_method,
o.amount,
o.create_date,
o.`subject`,
sd.label AS "payChannelName"
sd.label AS "payMethodName"
FROM
`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
AND o.user_code = #{subMerchantCode}
<if test="payChannel != null and payChannel != ''">
AND o.pay_channel = #{payChannel}
</if>
<if test="payMethod != null and payMethod != ''">
AND o.pay_channel = #{payMethod}
</if>
<if test="payStatus != null and payStatus != ''">
AND o.pay_status = #{payStatus}
</if>
......
......@@ -423,6 +423,7 @@
yr.code,
yr.user_level AS userLevel,
yr.pay_method AS payMethod,
yr.pay_channel AS payChannel,
yr.rate,
yr.balance,
yr.single_limit AS singleLimit,
......@@ -436,6 +437,7 @@
WHERE
yr.user_level = #{userLevel}
AND yr.pay_method = #{payMethod}
AND yr.pay_channel = #{payChannel}
</select>
<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