|
@@ -68,7 +68,7 @@ public class YqPayController extends BaseController {
|
|
|
BigDecimal amount = new BigDecimal("0");
|
|
|
//1、判断已报名人数
|
|
|
CourseGroupInfo courseGroupInfo = CourseGroupInfoService.get(order.getCourseId());
|
|
|
- if (courseGroupInfo.getRegNum() >= courseGroupInfo.getPlanNum()) {
|
|
|
+ if (courseGroupInfo.getRegNum().compareTo(courseGroupInfo.getPlanNum()) >= 0) {
|
|
|
return failed("乐团人数暂时已满,请稍后再试");
|
|
|
}
|
|
|
|
|
@@ -76,12 +76,12 @@ public class YqPayController extends BaseController {
|
|
|
BigDecimal courseFee = courseGroupInfo.getFeeAmount();
|
|
|
amount = amount.add(courseFee);
|
|
|
|
|
|
- ClassPathResource classPathResource = new ClassPathResource("instruments.json");
|
|
|
+ //获取乐器的价格
|
|
|
+ ClassPathResource classPathResource = new ClassPathResource("instruments.json"); //解析乐器数据
|
|
|
|
|
|
BigDecimal instrumentPrice = new BigDecimal("0");//乐器价格
|
|
|
String instrumentName = "";//乐器名称
|
|
|
|
|
|
- //获取乐器的价格
|
|
|
String instrumentId = order.getInstrument();
|
|
|
String jsonString = IOUtils.toString(new InputStreamReader(classPathResource.getInputStream(), "UTF-8"));
|
|
|
Instrument instrument = JSONObject.parseObject(jsonString, Instrument.class);
|
|
@@ -109,8 +109,8 @@ public class YqPayController extends BaseController {
|
|
|
adjunctName += (String) instrument.getAuxiliaries().get(adjunctId).get("name") + "|";
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
amount = amount.add(adjunctPrice);
|
|
|
+
|
|
|
order.setGroupId(courseGroupInfo.getId());
|
|
|
order.setAmount(amount);
|
|
|
order.setRemark(instrumentName);
|
|
@@ -120,19 +120,19 @@ public class YqPayController extends BaseController {
|
|
|
order.setSdFee(adjunctPrice);
|
|
|
|
|
|
|
|
|
- School school = schoolService.get(order.getClassId());
|
|
|
- String notifyUrl = "http://47.99.212.176:9000/yqpay/notify"; //异步通知地址
|
|
|
- String returnUrl = "http://pay.dayaedu.com/#/login?schoolId=" + school.getId() + "&classId=" + order.getClassId() + "&cityId=" + school.getCityId();//支付后返回页面
|
|
|
- String payUrl = "https://qyfapi.95epay.com/api/api/hPay/toPayHtml";//支付跳转页
|
|
|
- String payChannels = "{\"weChatPay\":true,\"weChatPayMobile\":false,\"aliPay\":true,\"fastpayXy\":true,\"aliPayMobile\":false,\"balancePay\":false}";//支付方式配置
|
|
|
-
|
|
|
String orderNo = GenerateNum.getInstance().GenerateOrderNo(); //自己系统订单号
|
|
|
order.setOrderNo(orderNo);
|
|
|
order.setCreateTime(new Date()); //订单提交时间
|
|
|
order.setStatus(1); //订单状态
|
|
|
|
|
|
+ School school = schoolService.get(order.getClassId());
|
|
|
+ String notifyUrl = "http://47.99.212.176:9000/yqpay/notify"; //异步通知地址
|
|
|
+ String returnUrl = "http://pay.dayaedu.com/#/login?schoolId=" + school.getSchoolId() + "&classId=" + order.getClassId() + "&cityId=" + school.getCityId();//支付后返回页面
|
|
|
+ String payUrl = "https://qyfapi.95epay.com/api/api/hPay/toPayHtml";//支付跳转页
|
|
|
+ String payChannels = "{\"weChatPay\":true,\"weChatPayMobile\":false,\"aliPay\":true,\"fastpayXy\":true,\"aliPayMobile\":false,\"balancePay\":false}";//支付方式配置
|
|
|
+
|
|
|
//获取支付成功跟支付中的订单数
|
|
|
- int branchId = order.getBranchId();
|
|
|
+ Integer branchId = 1001;//order.getBranchId();
|
|
|
int payOrderNums = orderService.getPayOrderNums();
|
|
|
//分佣账户(1、每10笔,前四笔收入私户 2、私户每个商户最多收款400万)
|
|
|
if ((payOrderNums + 1) % 10 <= 4) { //私人账户
|
|
@@ -148,11 +148,13 @@ public class YqPayController extends BaseController {
|
|
|
BigDecimal HasRouting = account.getHasRouting().add(order.getAmount());
|
|
|
account.setHasRouting(HasRouting);
|
|
|
|
|
|
- Map<String, Object> routingList = new LinkedHashMap<String, Object>();
|
|
|
- routingList.put("routingMerNo", routingMerNo);//分佣账户
|
|
|
- routingList.put("routingFee", order.getAmount()); //分佣金额
|
|
|
List<Map> tempRoutingList = new ArrayList();
|
|
|
- tempRoutingList.add(routingList);
|
|
|
+ if (branchId.equals(0)) {
|
|
|
+ Map<String, Object> routingList = new HashMap<>();
|
|
|
+ routingList.put("routingMerNo", routingMerNo);//分佣账户
|
|
|
+ routingList.put("routingFee", amount); //分佣金额
|
|
|
+ tempRoutingList.add(routingList);
|
|
|
+ }
|
|
|
|
|
|
order.setUAccount(account.getId().toString());
|
|
|
order.setAccount(routingMerNo);
|
|
@@ -184,7 +186,9 @@ public class YqPayController extends BaseController {
|
|
|
resultMap.put("merMerOrderNo", orderNo); //商户订单号
|
|
|
resultMap.put("orderSubject", orderSubject); //订单标题
|
|
|
resultMap.put("returnUrl", returnUrl); //前台页面地址
|
|
|
- resultMap.put("tempRoutingList", JSON.toJSONString(tempRoutingList));//分账设置
|
|
|
+ if (branchId.equals(0)) {
|
|
|
+ resultMap.put("tempRoutingList", JSON.toJSONString(tempRoutingList));//分账设置
|
|
|
+ }
|
|
|
Map rqMap = new YqPayUtil(notifyUrl, resultMap).getRequestMap();
|
|
|
rqMap.put("host", payUrl);
|
|
|
|
|
@@ -254,7 +258,7 @@ public class YqPayController extends BaseController {
|
|
|
String orderNo = GenerateNum.getInstance().GenerateOrderNo(); //自己系统订单号
|
|
|
|
|
|
//获取支付成功跟支付中的订单数
|
|
|
- int branchId = renewals.getBranchId();
|
|
|
+ Integer branchId = 1001;//renewals.getBranchId();
|
|
|
int payOrderNums = orderService.getPayOrderNums();
|
|
|
//分佣账户(1、每10笔,前四笔收入私户 2、私户每个商户最多收款400万)
|
|
|
if ((payOrderNums + 1) % 10 <= 4) { //私人账户
|
|
@@ -270,11 +274,13 @@ public class YqPayController extends BaseController {
|
|
|
BigDecimal HasRouting = account.getHasRouting().add(amount);
|
|
|
account.setHasRouting(HasRouting);
|
|
|
|
|
|
- Map<String, Object> routingList = new LinkedHashMap<String, Object>();
|
|
|
- routingList.put("routingMerNo", routingMerNo);//分佣账户
|
|
|
- routingList.put("routingFee", amount); //分佣金额
|
|
|
List<Map> tempRoutingList = new ArrayList();
|
|
|
- tempRoutingList.add(routingList);
|
|
|
+ if (branchId.equals(0)) {
|
|
|
+ Map<String, Object> routingList = new HashMap<>();
|
|
|
+ routingList.put("routingMerNo", routingMerNo);//分佣账户
|
|
|
+ routingList.put("routingFee", amount); //分佣金额
|
|
|
+ tempRoutingList.add(routingList);
|
|
|
+ }
|
|
|
|
|
|
renewalsService.addRenewalsOrder(renewals, amount, orderNo, pickCourses, routingMerNo, account.getId(), remark);
|
|
|
|
|
@@ -295,7 +301,9 @@ public class YqPayController extends BaseController {
|
|
|
resultMap.put("merMerOrderNo", orderNo); //商户订单号
|
|
|
resultMap.put("orderSubject", orderSubject); //订单标题
|
|
|
resultMap.put("returnUrl", returnUrl); //前台页面地址
|
|
|
- resultMap.put("tempRoutingList", JSON.toJSONString(tempRoutingList));//分账设置
|
|
|
+ if (branchId.equals(0)) {
|
|
|
+ resultMap.put("tempRoutingList", JSON.toJSONString(tempRoutingList));//分账设置
|
|
|
+ }
|
|
|
Map rqMap = new YqPayUtil(notifyUrl, resultMap).getRequestMap();
|
|
|
rqMap.put("host", payUrl);
|
|
|
return succeed(rqMap);
|
|
@@ -453,9 +461,9 @@ public class YqPayController extends BaseController {
|
|
|
order.setPay(notifyMsg.getPayAmount());
|
|
|
order.setPayTime(new Date());
|
|
|
}
|
|
|
- orderService.update(order);
|
|
|
- ApplyInfo applyInfo = applyInfoService.get(order.getUserId());
|
|
|
- applyInfoService.userRegister(applyInfo.getPatriarchPhone(), order.getId()); //推送mec
|
|
|
+ //orderService.update(order);
|
|
|
+ //ApplyInfo applyInfo = applyInfoService.get(order.getUserId());
|
|
|
+ //applyInfoService.userRegister(applyInfo.getPatriarchPhone(), order.getId()); //推送mec
|
|
|
|
|
|
msg.setCode("000000");
|
|
|
msg.setMsg("success");
|
|
@@ -534,11 +542,19 @@ public class YqPayController extends BaseController {
|
|
|
applyInfoService.pushRenew(renewBean);
|
|
|
}
|
|
|
}
|
|
|
- //失败减去已收款金额,减去报名人数
|
|
|
- if (status == 0 && order.getTuiFee() != null) {
|
|
|
- CourseGroupInfo courseGroupInfo = CourseGroupInfoService.get(order.getGroupId());
|
|
|
- courseGroupInfo.setRegNum(courseGroupInfo.getRegNum() - 1);
|
|
|
- CourseGroupInfoService.upByIdAndVersion(courseGroupInfo);
|
|
|
+ if (status == 0) {
|
|
|
+ //失败减去已收款金额
|
|
|
+ Account account = accountService.getAccountByBranchId(Integer.parseInt(order.getUAccount()));
|
|
|
+ BigDecimal HasRouting = account.getHasRouting().subtract(order.getAmount());
|
|
|
+ account.setHasRouting(HasRouting);
|
|
|
+ accountService.upByIdAndVersion(account);
|
|
|
+
|
|
|
+ //减去报名人数
|
|
|
+ if (order.getTuiFee() != null) {
|
|
|
+ CourseGroupInfo courseGroupInfo = CourseGroupInfoService.get(order.getGroupId());
|
|
|
+ courseGroupInfo.setRegNum(courseGroupInfo.getRegNum() - 1);
|
|
|
+ CourseGroupInfoService.upByIdAndVersion(courseGroupInfo);
|
|
|
+ }
|
|
|
}
|
|
|
orderService.update(order);
|
|
|
}
|