|
@@ -82,8 +82,6 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
private WeChatUtil weChatUtil;
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
public Boolean isFree(String jsId, BigDecimal distance) {
|
|
|
TJs js = jsService.getById(jsId);
|
|
|
Date date = new Date();
|
|
@@ -168,6 +166,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
save(order);
|
|
|
return order;
|
|
|
}
|
|
|
+
|
|
|
private BigDecimal setCoupon(List<CouponReceiveVo> coupons) {
|
|
|
//过滤过期的优惠券
|
|
|
coupons = coupons.stream().filter(coupon -> coupon.getExpirationTime().after(new Date())).collect(Collectors.toList());
|
|
@@ -187,7 +186,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
queryWrapper.eq(TOrder::getOrderNo, outTradeNo).eq(TOrder::getnStatus, OrderStatusEnum.WAIT_PAY.getCode());
|
|
|
TOrder orderNew = this.getOne(queryWrapper);
|
|
|
if (orderNew == null) {
|
|
|
- log.error("订单 {} 未支付状态不存在",outTradeNo);
|
|
|
+ log.error("订单 {} 未支付状态不存在", outTradeNo);
|
|
|
return;
|
|
|
}
|
|
|
TWxUser user = wxUserService.getByOpenId(orderNew.getcOpenId());
|
|
@@ -216,7 +215,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
|
|
|
|
|
|
orderNew.setPayType(order.getPayType());
|
|
|
- if(StringUtils.isNotBlank(order.getCouponReceiveId())){
|
|
|
+ if (StringUtils.isNotBlank(order.getCouponReceiveId())) {
|
|
|
orderNew.setCouponReceiveId(order.getCouponReceiveId());
|
|
|
CouponReceive couponReceive = couponReceiveService.getById(order.getCouponReceiveId());
|
|
|
Coupon coupon = couponService.getById(couponReceive.getCouponId());
|
|
@@ -228,7 +227,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
//判断支付方式
|
|
|
if (order.getPayType().equals(MassageConstants.INTEGER_ONE)) {
|
|
|
//微信支付
|
|
|
- R resp = rechargeService.getPay(orderNew.getOrderNo(), orderNew.getTotalPrice(), orderNew.getcOpenId(), BillTypeEnum.WX_PAY.getInfo(),BillTypeEnum.WX_PAY.getCode().toString());
|
|
|
+ R resp = rechargeService.getPay(orderNew.getOrderNo(), orderNew.getTotalPrice(), orderNew.getcOpenId(), BillTypeEnum.WX_PAY.getInfo(), BillTypeEnum.WX_PAY.getCode().toString());
|
|
|
this.newOrderNotification(orderNew);
|
|
|
return resp;
|
|
|
}
|
|
@@ -254,19 +253,10 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
//订单号
|
|
|
param.set("character_string9", JSONUtil.createObj().set("value", order.getOrderNo()));
|
|
|
//点话
|
|
|
- param.set("phone_number14",JSONUtil.createObj().set("value", order.getcPhone()));
|
|
|
- param.set("thing18",JSONUtil.createObj().set("value", order.getcName()));
|
|
|
- param.set("time6",JSONUtil.createObj().set("value", DateTimeUtils.formatDate(new Date(), DateTimeUtils.DATE_NUMBER_YEAR_MONTH_FORMAT)));
|
|
|
- String caddress = order.getcAddress();
|
|
|
- Object parse = JSONObject.parse(caddress);
|
|
|
- String addres = " ";
|
|
|
- if (parse instanceof JSONObject) {
|
|
|
- JSONObject jsonObject = (JSONObject) parse;
|
|
|
- String name = jsonObject.getString("name");
|
|
|
- String address = jsonObject.getString("address");
|
|
|
- addres = name + " " + address;
|
|
|
- }
|
|
|
- param.set("thing27",JSONUtil.createObj().set("value", addres));
|
|
|
+ param.set("phone_number14", JSONUtil.createObj().set("value", order.getcPhone()));
|
|
|
+ param.set("thing18", JSONUtil.createObj().set("value", order.getcName()));
|
|
|
+ param.set("time6", JSONUtil.createObj().set("value", DateTimeUtils.formatDate(new Date(), DateTimeUtils.DATE_NUMBER_YEAR_MONTH_FORMAT)));
|
|
|
+ param.set("thing27", JSONUtil.createObj().set("value", order.getName() + " " + order.getAddress()));
|
|
|
TJs js = jsService.getById(order.getcJsId());
|
|
|
weChatUtil.notification(js.getcOpenId(), param);
|
|
|
|
|
@@ -280,7 +270,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
// 更新用户金额 及下单此时
|
|
|
TWxUser paramUser = new TWxUser();
|
|
|
paramUser.setcOpenid(user.getcOpenid());
|
|
|
- if (!orderNew.getPayType().equals(MassageConstants.INTEGER_ONE)){
|
|
|
+ if (!orderNew.getPayType().equals(MassageConstants.INTEGER_ONE)) {
|
|
|
paramUser.setdBalance(user.getdBalance().subtract(orderNew.getTotalPrice()));
|
|
|
}
|
|
|
paramUser.setdMoney(user.getdMoney().add(orderNew.getTotalPrice()));
|
|
@@ -292,10 +282,10 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
tConsumptionLog.setAmount(orderNew.getTotalPrice().negate());
|
|
|
tConsumptionLog.setBillNo(orderNew.getOrderNo());
|
|
|
tConsumptionLog.setOpenId(orderNew.getcOpenId());
|
|
|
- if (!orderNew.getPayType().equals(MassageConstants.INTEGER_ONE)){
|
|
|
+ if (!orderNew.getPayType().equals(MassageConstants.INTEGER_ONE)) {
|
|
|
tConsumptionLog.setBillType(BillTypeEnum.BALANCE_PAYMENT.getCode());
|
|
|
tConsumptionLog.setNote("余额支付");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
tConsumptionLog.setBillType(BillTypeEnum.WX_PAY.getCode());
|
|
|
tConsumptionLog.setNote("微信支付");
|
|
|
}
|
|
@@ -403,16 +393,16 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
consumptionLogService.save(tConsumptionLog);
|
|
|
|
|
|
// 如果该技师有推荐人员 一级
|
|
|
- if(StringUtils.isNotBlank(jsUser.getcUpUser())){
|
|
|
+ if (StringUtils.isNotBlank(jsUser.getcUpUser())) {
|
|
|
// 获取技师上级对应的用户
|
|
|
TWxUser jsUp = wxUserService.getById(jsUser.getcUpUser());
|
|
|
extracted(orderNew, jsUp);
|
|
|
//二级
|
|
|
- if(jsUp.getcUpUser() != null){
|
|
|
+ if (jsUp.getcUpUser() != null) {
|
|
|
TWxUser jsUpTwo = wxUserService.getById(jsUp.getcUpUser());
|
|
|
extracted(orderNew, jsUpTwo);
|
|
|
//三级
|
|
|
- if(jsUpTwo.getcUpUser() != null){
|
|
|
+ if (jsUpTwo.getcUpUser() != null) {
|
|
|
TWxUser jsUpThree = wxUserService.getById(jsUpTwo.getcUpUser());
|
|
|
extracted(orderNew, jsUpThree);
|
|
|
}
|
|
@@ -425,7 +415,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
|
|
|
private void extracted(TOrder orderNew, TWxUser jsUp) {
|
|
|
BigDecimal up = orderNew.getdTotalMoney().multiply(new BigDecimal("10"));
|
|
|
- up = up.divide(new BigDecimal(100),2, RoundingMode.HALF_UP);
|
|
|
+ up = up.divide(new BigDecimal(100), 2, RoundingMode.HALF_UP);
|
|
|
// 更新余额
|
|
|
jsUp.setdBalance(jsUp.getdBalance().add(up));
|
|
|
// 更新总钱数
|
|
@@ -518,13 +508,13 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
|
|
|
ArrayList<TOrder> orders = Lists.newArrayList();
|
|
|
orderPage.getRecords().forEach(order -> {
|
|
|
order.setStatusName(OrderStatusEnum.getDescByCode(order.getnStatus()));
|
|
|
- if(StringUtils.isEmpty(order.getcTime())){
|
|
|
+ if (StringUtils.isEmpty(order.getcTime())) {
|
|
|
order.setRemainingTime(0L);
|
|
|
}
|
|
|
- if(StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) > DateTimeUtils.dateToStamp(new Date())){
|
|
|
- order.setRemainingTime((DateTimeUtils.dateStringToStamp(order.getcTime()) - DateTimeUtils.dateToStamp(new Date()))/1000);
|
|
|
+ if (StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) > DateTimeUtils.dateToStamp(new Date())) {
|
|
|
+ order.setRemainingTime((DateTimeUtils.dateStringToStamp(order.getcTime()) - DateTimeUtils.dateToStamp(new Date())) / 1000);
|
|
|
}
|
|
|
- if(StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) < DateTimeUtils.dateToStamp(new Date())){
|
|
|
+ if (StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) < DateTimeUtils.dateToStamp(new Date())) {
|
|
|
order.setRemainingTime(0L);
|
|
|
}
|
|
|
orders.add(order);
|