套餐支付,技师提成扣比支付方式从套餐订单表获取,增加原支付金额字段
This commit is contained in:
parent
abaa324583
commit
d907e45116
|
@ -353,7 +353,7 @@ public class Orders implements Serializable {
|
||||||
*/
|
*/
|
||||||
private BigDecimal technicianRate;
|
private BigDecimal technicianRate;
|
||||||
/**
|
/**
|
||||||
* 项目金额或项目差额
|
* 项目金额
|
||||||
*/
|
*/
|
||||||
private BigDecimal massageMoney;
|
private BigDecimal massageMoney;
|
||||||
|
|
||||||
|
@ -383,7 +383,10 @@ public class Orders implements Serializable {
|
||||||
* 原项目金额
|
* 原项目金额
|
||||||
*/
|
*/
|
||||||
private BigDecimal oldMassageMoney;
|
private BigDecimal oldMassageMoney;
|
||||||
|
/**
|
||||||
|
* 原支付金额
|
||||||
|
*/
|
||||||
|
private BigDecimal oldPayMoney;
|
||||||
/**
|
/**
|
||||||
* 原技师金额
|
* 原技师金额
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -31,6 +31,8 @@ import com.sqx.modules.artificer.dao.OrdersDao;
|
||||||
import com.sqx.modules.artificer.entity.*;
|
import com.sqx.modules.artificer.entity.*;
|
||||||
import com.sqx.modules.artificer.service.*;
|
import com.sqx.modules.artificer.service.*;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackage;
|
import com.sqx.modules.bl.order.entity.UserPackage;
|
||||||
|
import com.sqx.modules.bl.order.entity.UserPackageOrder;
|
||||||
|
import com.sqx.modules.bl.order.service.UserPackageOrderService;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageService;
|
import com.sqx.modules.bl.order.service.UserPackageService;
|
||||||
import com.sqx.modules.common.dao.CommonInfoDao;
|
import com.sqx.modules.common.dao.CommonInfoDao;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
||||||
|
@ -145,6 +147,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserPackageService userPackageService;
|
private UserPackageService userPackageService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private UserPackageOrderService userPackageOrderService;
|
||||||
|
@Autowired
|
||||||
private MaterialMassageMapper materialMassageMapper;
|
private MaterialMassageMapper materialMassageMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private MaterialArtificerMapper materialArtificerMapper;
|
private MaterialArtificerMapper materialArtificerMapper;
|
||||||
|
@ -1065,7 +1069,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
orders.setDuration(oldOrders.getDuration());
|
orders.setDuration(oldOrders.getDuration());
|
||||||
|
|
||||||
orders.setOldOrdersId(oldOrders.getOrdersId());
|
orders.setOldOrdersId(oldOrders.getOrdersId());
|
||||||
orders.setOldMassageMoney(oldOrders.getPayMoney());
|
orders.setOldMassageMoney(oldOrders.getMassageMoney());
|
||||||
|
orders.setOldPayMoney(oldOrders.getPayMoney());
|
||||||
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
||||||
orders.setOldEntryName(oldOrders.getEntryName());
|
orders.setOldEntryName(oldOrders.getEntryName());
|
||||||
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
||||||
|
@ -1227,7 +1232,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
orders.setEndTime(oldOrders.getEndTime());
|
orders.setEndTime(oldOrders.getEndTime());
|
||||||
orders.setStartImg(oldOrders.getStartImg());
|
orders.setStartImg(oldOrders.getStartImg());
|
||||||
orders.setOldOrdersId(oldOrders.getOrdersId());
|
orders.setOldOrdersId(oldOrders.getOrdersId());
|
||||||
orders.setOldMassageMoney(oldOrders.getPayMoney());
|
orders.setOldMassageMoney(oldOrders.getMassageMoney());
|
||||||
|
orders.setOldPayMoney(oldOrders.getPayMoney());
|
||||||
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
||||||
orders.setOldEntryName(oldOrders.getEntryName());
|
orders.setOldEntryName(oldOrders.getEntryName());
|
||||||
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
||||||
|
@ -1324,7 +1330,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
}
|
}
|
||||||
if (oldOrders.getUserPackageDetailId() != null) {
|
if (oldOrders.getUserPackageDetailId() != null) {
|
||||||
if (!massageTypeId.equals(oldOrders.getUserPackageDetailId()) ) {
|
if (!massageTypeId.equals(oldOrders.getUserPackageDetailId()) ) {
|
||||||
return Result.error("当前套餐类订单无法修改项目!");
|
return Result.error("当前套餐类订单无法修改项目,如需更改请取消单据重新下单!");
|
||||||
}
|
}
|
||||||
UserPackageDetail userPackageDetail = userPackageDetailService.getById(massageTypeId);
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(massageTypeId);
|
||||||
//修改套餐类订单
|
//修改套餐类订单
|
||||||
|
@ -2090,7 +2096,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
orders.setCreateTime(DateUtils.format(new Date()));
|
orders.setCreateTime(DateUtils.format(new Date()));
|
||||||
orders.setSumMoney(orders.getPayMoney().setScale(2, BigDecimal.ROUND_HALF_UP));
|
orders.setSumMoney(orders.getPayMoney().setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||||
orders.setOldOrdersId(oldOrders.getOrdersId());
|
orders.setOldOrdersId(oldOrders.getOrdersId());
|
||||||
orders.setOldMassageMoney(oldOrders.getPayMoney());
|
orders.setOldMassageMoney(oldOrders.getMassageMoney());
|
||||||
|
orders.setOldPayMoney(oldOrders.getPayMoney());
|
||||||
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
orders.setOldMassageTypeId(oldOrders.getMassageTypeId());
|
||||||
orders.setOldEntryName(oldOrders.getEntryName());
|
orders.setOldEntryName(oldOrders.getEntryName());
|
||||||
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
orders.setOldMassagePrice(oldOrders.getMassagePrice());
|
||||||
|
@ -4715,10 +4722,10 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
// type = 2;
|
// type = 2;
|
||||||
// } else {
|
// } else {
|
||||||
// type = 1;
|
// type = 1;
|
||||||
UserMoney userMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId());
|
UserMoney userMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId());
|
||||||
if (userMoney.getMoney().doubleValue() < orders.getTaxiMoney().doubleValue()) {
|
if (userMoney.getMoney().doubleValue() < orders.getTaxiMoney().doubleValue()) {
|
||||||
return Result.error("钱包余额不足,请充值!");
|
return Result.error("钱包余额不足,请充值!");
|
||||||
}
|
}
|
||||||
// }
|
// }
|
||||||
|
|
||||||
Integer duration = 0;
|
Integer duration = 0;
|
||||||
|
@ -4808,24 +4815,24 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
// userMoneyDetailsService.save(userMoneyDetails);
|
// userMoneyDetailsService.save(userMoneyDetails);
|
||||||
// orders.setUserArtificerMoney(1);
|
// orders.setUserArtificerMoney(1);
|
||||||
// } else {
|
// } else {
|
||||||
userMoneyService.updateMoney(2, orders.getUserId(), orders.getTaxiMoney().doubleValue());
|
userMoneyService.updateMoney(2, orders.getUserId(), orders.getTaxiMoney().doubleValue());
|
||||||
UserMoneyDetails userMoneyDetails = new UserMoneyDetails();
|
UserMoneyDetails userMoneyDetails = new UserMoneyDetails();
|
||||||
//查询用户当前余额
|
//查询用户当前余额
|
||||||
UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId());
|
UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId());
|
||||||
//插入余额
|
//插入余额
|
||||||
userMoneyDetails.setBalance(userNowMoney.getMoney());
|
userMoneyDetails.setBalance(userNowMoney.getMoney());
|
||||||
//插入操作类型为已操作用户余额
|
//插入操作类型为已操作用户余额
|
||||||
userMoneyDetails.setManipulateType(2);
|
userMoneyDetails.setManipulateType(2);
|
||||||
userMoneyDetails.setMoney(orders.getTaxiMoney());
|
userMoneyDetails.setMoney(orders.getTaxiMoney());
|
||||||
userMoneyDetails.setUserId(orders.getUserId());
|
userMoneyDetails.setUserId(orders.getUserId());
|
||||||
userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!");
|
userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!");
|
||||||
userMoneyDetails.setTitle("支付订单");
|
userMoneyDetails.setTitle("支付订单");
|
||||||
userMoneyDetails.setType(2);
|
userMoneyDetails.setType(2);
|
||||||
userMoneyDetails.setState(2);
|
userMoneyDetails.setState(2);
|
||||||
userMoneyDetails.setCreateTime(simpleDateFormat.format(new Date()));
|
userMoneyDetails.setCreateTime(simpleDateFormat.format(new Date()));
|
||||||
userMoneyDetails.setBlRole(1);
|
userMoneyDetails.setBlRole(1);
|
||||||
userMoneyDetails.setBlFlag(1);
|
userMoneyDetails.setBlFlag(1);
|
||||||
userMoneyDetailsService.save(userMoneyDetails);
|
userMoneyDetailsService.save(userMoneyDetails);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
if(orders.getIsSupplement() != null){
|
if(orders.getIsSupplement() != null){
|
||||||
|
@ -4846,12 +4853,21 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
||||||
orders.setPayWay(5);
|
orders.setPayWay(5);
|
||||||
orders.setPayTime(simpleDateFormat.format(new Date()));
|
orders.setPayTime(simpleDateFormat.format(new Date()));
|
||||||
|
|
||||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||||
|
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||||
|
UserPackageOrder userPackageOrder = userPackageOrderService.getById(userPackage.getOrdersId());
|
||||||
|
Integer packagePayWay = userPackageOrder.getPayWay();
|
||||||
|
|
||||||
|
BigDecimal rate = new BigDecimal(100);
|
||||||
|
if(packagePayWay.equals(5)){
|
||||||
|
rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
||||||
|
}
|
||||||
|
|
||||||
BigDecimal rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
|
||||||
orders.setWalletRate(rate);
|
orders.setWalletRate(rate);
|
||||||
rate = rate.divide(new BigDecimal(100));
|
rate = rate.divide(new BigDecimal(100));
|
||||||
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
||||||
|
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||||
//钱包支付技师提成
|
//钱包支付技师提成
|
||||||
BigDecimal taxiMoney = orders.getTaxiMoney();
|
BigDecimal taxiMoney = orders.getTaxiMoney();
|
||||||
if(taxiMoney==null){
|
if(taxiMoney==null){
|
||||||
|
|
|
@ -36,6 +36,7 @@ import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackageOrder;
|
import com.sqx.modules.bl.order.entity.UserPackageOrder;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackageOrdersMapping;
|
import com.sqx.modules.bl.order.entity.UserPackageOrdersMapping;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
||||||
|
import com.sqx.modules.bl.order.service.UserPackageOrderService;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageOrdersMappingService;
|
import com.sqx.modules.bl.order.service.UserPackageOrdersMappingService;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageService;
|
import com.sqx.modules.bl.order.service.UserPackageService;
|
||||||
import com.sqx.modules.common.entity.CommonInfo;
|
import com.sqx.modules.common.entity.CommonInfo;
|
||||||
|
@ -137,6 +138,8 @@ public class AliPayController {
|
||||||
@Autowired
|
@Autowired
|
||||||
UserPackageDetailService userPackageDetailService;
|
UserPackageDetailService userPackageDetailService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private UserPackageOrderService userPackageOrderService;
|
||||||
|
@Autowired
|
||||||
UserPackageOrdersMappingService userPackageOrdersMappingService;
|
UserPackageOrdersMappingService userPackageOrdersMappingService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRechargeDao userRechargeDao;
|
private UserRechargeDao userRechargeDao;
|
||||||
|
@ -197,11 +200,27 @@ public class AliPayController {
|
||||||
}
|
}
|
||||||
orders.setPayWay(6);
|
orders.setPayWay(6);
|
||||||
orders.setPayTime(sdf.format(new Date()));
|
orders.setPayTime(sdf.format(new Date()));
|
||||||
orders.setValueStorageDeduction(BigDecimal.ZERO);
|
|
||||||
|
BigDecimal rate = new BigDecimal(100);
|
||||||
|
if(orders.getUserPackageDetailId() != null){
|
||||||
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||||
|
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||||
|
UserPackageOrder userPackageOrder = userPackageOrderService.getById(userPackage.getOrdersId());
|
||||||
|
Integer packagePayWay = userPackageOrder.getPayWay();
|
||||||
|
if(packagePayWay.equals(5)){
|
||||||
|
rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
orders.setWalletRate(rate);
|
||||||
|
rate = rate.divide(new BigDecimal(100));
|
||||||
|
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
||||||
|
|
||||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||||
BigDecimal taxiMoney = BigDecimal.ZERO;
|
BigDecimal taxiMoney = BigDecimal.ZERO;
|
||||||
if(orders.getIsSupplement()!=null && !orders.getIsSupplement().equals(2)){
|
if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){
|
||||||
|
taxiMoney = BigDecimal.ZERO;
|
||||||
|
}else{
|
||||||
taxiMoney = orders.getTaxiMoney();
|
taxiMoney = orders.getTaxiMoney();
|
||||||
}
|
}
|
||||||
if(taxiMoney==null){
|
if(taxiMoney==null){
|
||||||
|
@ -209,6 +228,7 @@ public class AliPayController {
|
||||||
}
|
}
|
||||||
BigDecimal artificerPrice = BigDecimal.ZERO;
|
BigDecimal artificerPrice = BigDecimal.ZERO;
|
||||||
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
||||||
|
BigDecimal valueStorageDeduction = BigDecimal.ZERO;
|
||||||
//查询是否计算出租车扣费
|
//查询是否计算出租车扣费
|
||||||
String taxi = commonInfoService.findOne(394).getValue();
|
String taxi = commonInfoService.findOne(394).getValue();
|
||||||
//计算技师出租车收益(按照技师表收益计算)
|
//计算技师出租车收益(按照技师表收益计算)
|
||||||
|
@ -239,6 +259,16 @@ public class AliPayController {
|
||||||
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
||||||
artificerPrice = subtract.multiply(artificer.getRate());
|
artificerPrice = subtract.multiply(artificer.getRate());
|
||||||
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
//储值扣费
|
||||||
|
valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额
|
||||||
|
valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setValueStorageDeduction(valueStorageDeduction);
|
||||||
|
BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate);
|
||||||
|
projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setProjectBenefits(projectBenefits);
|
||||||
|
//用户收益不含交通费
|
||||||
|
artificerPrice = artificerPrice.multiply(rate);
|
||||||
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
|
||||||
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
||||||
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
||||||
|
@ -294,6 +324,7 @@ public class AliPayController {
|
||||||
orders.setPingMoney(pingMoney);
|
orders.setPingMoney(pingMoney);
|
||||||
|
|
||||||
ordersService.updateById(orders);
|
ordersService.updateById(orders);
|
||||||
|
|
||||||
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
||||||
String value1 = commonInfoService.findOne(395).getValue();
|
String value1 = commonInfoService.findOne(395).getValue();
|
||||||
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
@ -1018,11 +1049,27 @@ public class AliPayController {
|
||||||
}
|
}
|
||||||
orders.setPayWay(6);
|
orders.setPayWay(6);
|
||||||
orders.setPayTime(sdf.format(new Date()));
|
orders.setPayTime(sdf.format(new Date()));
|
||||||
orders.setValueStorageDeduction(BigDecimal.ZERO);
|
|
||||||
|
BigDecimal rate = new BigDecimal(100);
|
||||||
|
if(orders.getUserPackageDetailId() != null){
|
||||||
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||||
|
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||||
|
UserPackageOrder userPackageOrder = userPackageOrderService.getById(userPackage.getOrdersId());
|
||||||
|
Integer packagePayWay = userPackageOrder.getPayWay();
|
||||||
|
if(packagePayWay.equals(5)){
|
||||||
|
rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
orders.setWalletRate(rate);
|
||||||
|
rate = rate.divide(new BigDecimal(100));
|
||||||
|
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
||||||
|
|
||||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||||
BigDecimal taxiMoney = BigDecimal.ZERO;
|
BigDecimal taxiMoney = BigDecimal.ZERO;
|
||||||
if(orders.getIsSupplement()!=null && !orders.getIsSupplement().equals(2)){
|
if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){
|
||||||
|
taxiMoney = BigDecimal.ZERO;
|
||||||
|
}else{
|
||||||
taxiMoney = orders.getTaxiMoney();
|
taxiMoney = orders.getTaxiMoney();
|
||||||
}
|
}
|
||||||
if(taxiMoney==null){
|
if(taxiMoney==null){
|
||||||
|
@ -1030,6 +1077,7 @@ public class AliPayController {
|
||||||
}
|
}
|
||||||
BigDecimal artificerPrice = BigDecimal.ZERO;
|
BigDecimal artificerPrice = BigDecimal.ZERO;
|
||||||
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
||||||
|
BigDecimal valueStorageDeduction = BigDecimal.ZERO;
|
||||||
//查询是否计算出租车扣费
|
//查询是否计算出租车扣费
|
||||||
String taxi = commonInfoService.findOne(394).getValue();
|
String taxi = commonInfoService.findOne(394).getValue();
|
||||||
//计算技师出租车收益(按照技师表收益计算)
|
//计算技师出租车收益(按照技师表收益计算)
|
||||||
|
@ -1060,6 +1108,16 @@ public class AliPayController {
|
||||||
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
||||||
artificerPrice = subtract.multiply(artificer.getRate());
|
artificerPrice = subtract.multiply(artificer.getRate());
|
||||||
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
//储值扣费
|
||||||
|
valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额
|
||||||
|
valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setValueStorageDeduction(valueStorageDeduction);
|
||||||
|
BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate);
|
||||||
|
projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setProjectBenefits(projectBenefits);
|
||||||
|
//用户收益不含交通费
|
||||||
|
artificerPrice = artificerPrice.multiply(rate);
|
||||||
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
|
||||||
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
||||||
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
||||||
|
@ -1115,6 +1173,7 @@ public class AliPayController {
|
||||||
orders.setPingMoney(pingMoney);
|
orders.setPingMoney(pingMoney);
|
||||||
|
|
||||||
ordersService.updateById(orders);
|
ordersService.updateById(orders);
|
||||||
|
|
||||||
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
||||||
String value1 = commonInfoService.findOne(395).getValue();
|
String value1 = commonInfoService.findOne(395).getValue();
|
||||||
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
|
|
@ -26,6 +26,7 @@ import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackageOrder;
|
import com.sqx.modules.bl.order.entity.UserPackageOrder;
|
||||||
import com.sqx.modules.bl.order.entity.UserPackageOrdersMapping;
|
import com.sqx.modules.bl.order.entity.UserPackageOrdersMapping;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
||||||
|
import com.sqx.modules.bl.order.service.UserPackageOrderService;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageOrdersMappingService;
|
import com.sqx.modules.bl.order.service.UserPackageOrdersMappingService;
|
||||||
import com.sqx.modules.bl.order.service.UserPackageService;
|
import com.sqx.modules.bl.order.service.UserPackageService;
|
||||||
import com.sqx.modules.common.entity.CommonInfo;
|
import com.sqx.modules.common.entity.CommonInfo;
|
||||||
|
@ -131,6 +132,8 @@ public class WxServiceImpl implements WxService {
|
||||||
@Autowired
|
@Autowired
|
||||||
UserPackageDetailService userPackageDetailService;
|
UserPackageDetailService userPackageDetailService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private UserPackageOrderService userPackageOrderService;
|
||||||
|
@Autowired
|
||||||
UserPackageOrdersMappingService userPackageOrdersMappingService;
|
UserPackageOrdersMappingService userPackageOrdersMappingService;
|
||||||
|
|
||||||
private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
|
@ -652,11 +655,27 @@ public class WxServiceImpl implements WxService {
|
||||||
}
|
}
|
||||||
orders.setPayWay(payDetails.getClassify());
|
orders.setPayWay(payDetails.getClassify());
|
||||||
orders.setPayTime(sdf.format(new Date()));
|
orders.setPayTime(sdf.format(new Date()));
|
||||||
orders.setValueStorageDeduction(BigDecimal.ZERO);
|
|
||||||
|
BigDecimal rate = new BigDecimal(100);
|
||||||
|
if(orders.getUserPackageDetailId() != null){
|
||||||
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||||
|
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||||
|
UserPackageOrder userPackageOrder = userPackageOrderService.getById(userPackage.getOrdersId());
|
||||||
|
Integer packagePayWay = userPackageOrder.getPayWay();
|
||||||
|
if(packagePayWay.equals(5)){
|
||||||
|
rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
orders.setWalletRate(rate);
|
||||||
|
rate = rate.divide(new BigDecimal(100));
|
||||||
|
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
||||||
|
|
||||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||||
BigDecimal taxiMoney = BigDecimal.ZERO;
|
BigDecimal taxiMoney = BigDecimal.ZERO;
|
||||||
if(orders.getIsSupplement()!=null && !orders.getIsSupplement().equals(2)){
|
if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){
|
||||||
|
taxiMoney = BigDecimal.ZERO;
|
||||||
|
}else{
|
||||||
taxiMoney = orders.getTaxiMoney();
|
taxiMoney = orders.getTaxiMoney();
|
||||||
}
|
}
|
||||||
if(taxiMoney==null){
|
if(taxiMoney==null){
|
||||||
|
@ -664,6 +683,7 @@ public class WxServiceImpl implements WxService {
|
||||||
}
|
}
|
||||||
BigDecimal artificerPrice = BigDecimal.ZERO;
|
BigDecimal artificerPrice = BigDecimal.ZERO;
|
||||||
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
||||||
|
BigDecimal valueStorageDeduction = BigDecimal.ZERO;
|
||||||
//查询是否计算出租车扣费
|
//查询是否计算出租车扣费
|
||||||
String taxi = commonInfoService.findOne(394).getValue();
|
String taxi = commonInfoService.findOne(394).getValue();
|
||||||
//计算技师出租车收益(按照技师表收益计算)
|
//计算技师出租车收益(按照技师表收益计算)
|
||||||
|
@ -694,6 +714,16 @@ public class WxServiceImpl implements WxService {
|
||||||
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
||||||
artificerPrice = subtract.multiply(artificer.getRate());
|
artificerPrice = subtract.multiply(artificer.getRate());
|
||||||
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
//储值扣费
|
||||||
|
valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额
|
||||||
|
valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setValueStorageDeduction(valueStorageDeduction);
|
||||||
|
BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate);
|
||||||
|
projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setProjectBenefits(projectBenefits);
|
||||||
|
//用户收益不含交通费
|
||||||
|
artificerPrice = artificerPrice.multiply(rate);
|
||||||
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
|
||||||
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
||||||
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
||||||
|
@ -747,6 +777,7 @@ public class WxServiceImpl implements WxService {
|
||||||
orders.setOneUserMoney(oneUserMoney);
|
orders.setOneUserMoney(oneUserMoney);
|
||||||
pingMoney = pingMoney.subtract(oneUserMoney);
|
pingMoney = pingMoney.subtract(oneUserMoney);
|
||||||
orders.setPingMoney(pingMoney);
|
orders.setPingMoney(pingMoney);
|
||||||
|
|
||||||
ordersService.updateById(orders);
|
ordersService.updateById(orders);
|
||||||
|
|
||||||
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
||||||
|
@ -1262,11 +1293,27 @@ public class WxServiceImpl implements WxService {
|
||||||
}
|
}
|
||||||
orders.setPayWay(payDetails.getClassify());
|
orders.setPayWay(payDetails.getClassify());
|
||||||
orders.setPayTime(sdf.format(new Date()));
|
orders.setPayTime(sdf.format(new Date()));
|
||||||
orders.setValueStorageDeduction(BigDecimal.ZERO);
|
|
||||||
|
BigDecimal rate = new BigDecimal(100);
|
||||||
|
if(orders.getUserPackageDetailId() != null){
|
||||||
|
OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOrdersId()));
|
||||||
|
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||||
|
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||||
|
UserPackageOrder userPackageOrder = userPackageOrderService.getById(userPackage.getOrdersId());
|
||||||
|
Integer packagePayWay = userPackageOrder.getPayWay();
|
||||||
|
if(packagePayWay.equals(5)){
|
||||||
|
rate = new BigDecimal(commonInfoService.findOne(449).getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
orders.setWalletRate(rate);
|
||||||
|
rate = rate.divide(new BigDecimal(100));
|
||||||
|
BigDecimal storageRate = BigDecimal.ONE.subtract(rate);
|
||||||
|
|
||||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||||
BigDecimal taxiMoney = BigDecimal.ZERO;
|
BigDecimal taxiMoney = BigDecimal.ZERO;
|
||||||
if(orders.getIsSupplement()!=null && !orders.getIsSupplement().equals(2)){
|
if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){
|
||||||
|
taxiMoney = BigDecimal.ZERO;
|
||||||
|
}else{
|
||||||
taxiMoney = orders.getTaxiMoney();
|
taxiMoney = orders.getTaxiMoney();
|
||||||
}
|
}
|
||||||
if(taxiMoney==null){
|
if(taxiMoney==null){
|
||||||
|
@ -1274,6 +1321,7 @@ public class WxServiceImpl implements WxService {
|
||||||
}
|
}
|
||||||
BigDecimal artificerPrice = BigDecimal.ZERO;
|
BigDecimal artificerPrice = BigDecimal.ZERO;
|
||||||
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
BigDecimal artificerTaxiPrice = BigDecimal.ZERO;
|
||||||
|
BigDecimal valueStorageDeduction = BigDecimal.ZERO;
|
||||||
//查询是否计算出租车扣费
|
//查询是否计算出租车扣费
|
||||||
String taxi = commonInfoService.findOne(394).getValue();
|
String taxi = commonInfoService.findOne(394).getValue();
|
||||||
//计算技师出租车收益(按照技师表收益计算)
|
//计算技师出租车收益(按照技师表收益计算)
|
||||||
|
@ -1304,6 +1352,16 @@ public class WxServiceImpl implements WxService {
|
||||||
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
//计算用户收益 !计算前先减去通行费用再计算技师抽成
|
||||||
artificerPrice = subtract.multiply(artificer.getRate());
|
artificerPrice = subtract.multiply(artificer.getRate());
|
||||||
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
//储值扣费
|
||||||
|
valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额
|
||||||
|
valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setValueStorageDeduction(valueStorageDeduction);
|
||||||
|
BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate);
|
||||||
|
projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
orders.setProjectBenefits(projectBenefits);
|
||||||
|
//用户收益不含交通费
|
||||||
|
artificerPrice = artificerPrice.multiply(rate);
|
||||||
|
artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
|
|
||||||
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
UserEntity artificerUser = userService.selectUserById(artificer.getUserId());
|
||||||
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode());
|
||||||
|
@ -1357,6 +1415,7 @@ public class WxServiceImpl implements WxService {
|
||||||
orders.setOneUserMoney(oneUserMoney);
|
orders.setOneUserMoney(oneUserMoney);
|
||||||
pingMoney = pingMoney.subtract(oneUserMoney);
|
pingMoney = pingMoney.subtract(oneUserMoney);
|
||||||
orders.setPingMoney(pingMoney);
|
orders.setPingMoney(pingMoney);
|
||||||
|
|
||||||
ordersService.updateById(orders);
|
ordersService.updateById(orders);
|
||||||
|
|
||||||
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
if(orders.getParentId()!=null && orders.getParentId()!=0){
|
||||||
|
|
Loading…
Reference in New Issue