diff --git a/src/main/java/com/sqx/modules/bl/artificer/dao/ArtificerRechargeRewardDao.java b/src/main/java/com/sqx/modules/bl/artificer/dao/ArtificerRechargeRewardDao.java index 12eef0d..a7b2f95 100644 --- a/src/main/java/com/sqx/modules/bl/artificer/dao/ArtificerRechargeRewardDao.java +++ b/src/main/java/com/sqx/modules/bl/artificer/dao/ArtificerRechargeRewardDao.java @@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.sqx.modules.bl.artificer.entity.ArtificerRechargeReward; import org.apache.ibatis.annotations.Mapper; +import java.math.BigDecimal; + @Mapper public interface ArtificerRechargeRewardDao extends BaseMapper { - + ArtificerRechargeReward getInfo(BigDecimal money); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/artificer/service/ArtificerRechargeRewardService.java b/src/main/java/com/sqx/modules/bl/artificer/service/ArtificerRechargeRewardService.java index dc414d0..2a5e0d8 100644 --- a/src/main/java/com/sqx/modules/bl/artificer/service/ArtificerRechargeRewardService.java +++ b/src/main/java/com/sqx/modules/bl/artificer/service/ArtificerRechargeRewardService.java @@ -3,6 +3,8 @@ package com.sqx.modules.bl.artificer.service; import com.baomidou.mybatisplus.extension.service.IService; import com.sqx.modules.bl.artificer.entity.ArtificerRechargeReward; -public interface ArtificerRechargeRewardService extends IService { +import java.math.BigDecimal; +public interface ArtificerRechargeRewardService extends IService { + ArtificerRechargeReward getInfo(BigDecimal money); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/artificer/service/impl/ArtificerRechargeRewardServiceImpl.java b/src/main/java/com/sqx/modules/bl/artificer/service/impl/ArtificerRechargeRewardServiceImpl.java index 65f5d89..ddc2b28 100644 --- a/src/main/java/com/sqx/modules/bl/artificer/service/impl/ArtificerRechargeRewardServiceImpl.java +++ b/src/main/java/com/sqx/modules/bl/artificer/service/impl/ArtificerRechargeRewardServiceImpl.java @@ -6,7 +6,13 @@ import com.sqx.modules.bl.artificer.entity.ArtificerRechargeReward; import com.sqx.modules.bl.artificer.service.ArtificerRechargeRewardService; import org.springframework.stereotype.Service; +import java.math.BigDecimal; + @Service public class ArtificerRechargeRewardServiceImpl extends ServiceImpl implements ArtificerRechargeRewardService { + @Override + public ArtificerRechargeReward getInfo(BigDecimal money){ + return baseMapper.getInfo(money); + } } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java b/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java index b49c2fc..262a660 100644 --- a/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java +++ b/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java @@ -28,6 +28,8 @@ import com.sqx.modules.artificer.dao.OrdersDao; import com.sqx.modules.artificer.dao.UserRechargeDao; import com.sqx.modules.artificer.entity.*; import com.sqx.modules.artificer.service.*; +import com.sqx.modules.bl.artificer.entity.ArtificerRechargeReward; +import com.sqx.modules.bl.artificer.service.ArtificerRechargeRewardService; import com.sqx.modules.bl.commission.fxy.entity.FxyApply; import com.sqx.modules.bl.commission.fxy.entity.FxyConfig; import com.sqx.modules.bl.commission.fxy.service.FxyApplyService; @@ -169,6 +171,8 @@ public class AliPayController { private JjrConfigService jjrConfigService; @Autowired private JjrConfigLevelService jjrConfigServiceLevel; + @Autowired + private ArtificerRechargeRewardService artificerRechargeRewardService; private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -1108,7 +1112,7 @@ public class AliPayController { userMoneyDetails2.setType(1); userMoneyDetails2.setMoney(userNowMoney2.getSad()); userMoneyDetails2.setCreateTime(sdf.format(new Date())); - userMoneyDetails2.setBlRole(2); + userMoneyDetails2.setBlRole(1); userMoneyDetails2.setBlFlag(1); userSadDetailsService.insert(userMoneyDetails2); @@ -1126,6 +1130,7 @@ public class AliPayController { //用户在充值余额时,指定技师ID,则充值成功后给指定技师增加业绩,入userRecharge表 if(payDetails.getArtificerId()!=null){ + UserRecharge o = new UserRecharge(); o.setUserRecharge(payClassify.getPrice()); o.setType("2"); @@ -1149,7 +1154,7 @@ public class AliPayController { userMoneyDetails.setManipulateType(1); userMoneyDetails.setMoney(BigDecimal.valueOf(payDetails.getMoney())); userMoneyDetails.setUserId(payDetails.getUserId()); - userMoneyDetails.setTitle("微信购买优惠券,券包:"+couponIssue.getCouponIssueName()); + userMoneyDetails.setTitle("支付宝购买优惠券,券包:"+couponIssue.getCouponIssueName()); userMoneyDetails.setContent("购买优惠券费用:"+payDetails.getMoney()); userMoneyDetails.setCreateTime(DateUtils.format(new Date())); userMoneyDetails.setBlRole(1); @@ -2244,31 +2249,6 @@ public class AliPayController { @ApiOperation("支付宝支付订单") @RequestMapping(value = "/payOrderMoney", method = RequestMethod.POST) @Transactional(rollbackFor = Exception.class) - public Result payOrderMoney(@RequestAttribute Long userId, Long payClassifyId, Integer type, Long artificerId) { - //通知页面地址 - CommonInfo one = commonInfoService.findOne(19); - String returnUrl = one.getValue() + "/#/pages/my/index"; - CommonInfo one3 = commonInfoService.findOne(12); - String name = one3.getValue(); - String generalOrder = getGeneralOrder(); - PayClassify payClassify = payClassifyService.getById(payClassifyId); - PayDetails payDetails = new PayDetails(); - payDetails.setState(0); - payDetails.setCreateTime(sdf.format(new Date())); - payDetails.setOrderId(generalOrder); - payDetails.setUserId(userId); - payDetails.setMoney(payClassify.getPrice().doubleValue()); - payDetails.setClassify(6); - payDetails.setType(3); - payDetails.setArtificerId(artificerId); - payDetails.setRemark(String.valueOf(payClassifyId)); - payDetailsDao.insert(payDetails); - if (type == 1) { - return payApp(name, generalOrder, payClassify.getPrice().doubleValue()); - } else { - return payH5(name, generalOrder, payClassify.getPrice().doubleValue(), returnUrl); - } - } // public Result payOrderMoney(@RequestAttribute Long userId, Long payClassifyId, Integer type, Long artificerId, Long ordersId) { // //通知页面地址 // CommonInfo one = commonInfoService.findOne(19); @@ -2289,1040 +2269,1095 @@ public class AliPayController { // payDetails.setRemark(String.valueOf(payClassifyId)); // payDetails.setMassageOrdersId(ordersId); // payDetailsDao.insert(payDetails); -// payOrderResult(generalOrder); -// return Result.success(); -// } - -// private void payOrderResult(String outTradeNo) { -// try { -// String tradeStatus = "TRADE_SUCCESS"; -// if ("TRADE_SUCCESS".equals(tradeStatus) || "TRADE_FINISHED".equals(tradeStatus)) { -// //支付宝支付单号 -// String tradeNo = getGeneralOrder(); -// PayDetails payDetails = payDetailsDao.selectByOrderId(outTradeNo); -// if (payDetails.getState() == 0) { -// payDetailsDao.updateState(payDetails.getId(), 1, sdf.format(new Date()), tradeNo); -// if (payDetails.getType()==1) { -// Orders orders = ordersService.selectOrdersByOrderNo(payDetails.getOrderId()); -// if(orders.getIsSupplement() != null){ -// if(orders.getIsSupplement() == 2){ -// orders.setStatus(6); -// }else if(orders.getIsSupplement() == 3){ -// orders.setStatus(2); -// }else{ -// orders.setStatus(9);//用户已支付技师待接单 -// } -// }else{ -// if(orders.getParentId()!=null && orders.getParentId()!=0){ -// orders.setStatus(6); -// }else{ -// orders.setStatus(9);//用户已支付技师待接单 -// } -// } -// orders.setPayWay(6); -// orders.setPayTime(sdf.format(new Date())); -// -// BigDecimal rate = new BigDecimal(100); -// if(orders.getUserPackageDetailId() != null){ -// OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper().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()); -// BigDecimal taxiMoney = BigDecimal.ZERO; -// if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){ -// taxiMoney = BigDecimal.ZERO; -// }else{ -// taxiMoney = orders.getTaxiMoney(); -// } -// if(taxiMoney==null){ -// taxiMoney = BigDecimal.ZERO; -// } -// BigDecimal artificerPrice = BigDecimal.ZERO; -// BigDecimal artificerTaxiPrice = BigDecimal.ZERO; -// BigDecimal valueStorageDeduction = BigDecimal.ZERO; -// //查询是否计算出租车扣费 -// String taxi = commonInfoService.findOne(394).getValue(); -// //计算技师出租车收益(按照技师表收益计算) -// if ("是".equals(taxi)) { -// //计算技师应该收取的出租车费用 -// artificerTaxiPrice = taxiMoney.multiply(artificer.getRate()); -// artificerTaxiPrice = artificerTaxiPrice.setScale(2, BigDecimal.ROUND_HALF_UP); -// //计算出租车扣款 -// BigDecimal pingTaxiMoney = taxiMoney.subtract(artificerTaxiPrice); -// //赋值技师出租收款 -// orders.setArtificerTaxiMoney(artificerTaxiPrice); -// //赋值出租车扣款 -// orders.setPingTaxiMoney(pingTaxiMoney); -// } else { -// //平台不扣费 出租车收益全由技师收取 -// artificerTaxiPrice = taxiMoney; -// orders.setArtificerTaxiMoney(taxiMoney); -// //设置出租车扣款为0 -// orders.setPingTaxiMoney(BigDecimal.ZERO); -// } -// BigDecimal subtract = BigDecimal.ZERO; -// //用户支付减去通行费用 -// if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){ -// subtract = orders.getPayMoney(); -// }else{ -// subtract = orders.getPayMoney().subtract(taxiMoney); -// } -// //计算用户收益 !计算前先减去通行费用再计算技师抽成 -// artificerPrice = subtract.multiply(artificer.getRate()); -// artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP); -// //储值扣费 -// valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额 -// valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP); -// orders.setValueStorageDeduction(valueStorageDeduction); -// -// //用户收益不含交通费 -// artificerPrice = artificerPrice.multiply(rate); -// artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP); -// -//// BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate); -//// projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP); -//// orders.setProjectBenefits(projectBenefits); -// orders.setProjectBenefits(artificerPrice); -// -// -//// UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode()); -//// BigDecimal oneArtificerMoney = BigDecimal.ZERO; -//// if (oneArtificerUser != null && oneArtificerUser.getIsAgency() != null && oneArtificerUser.getIsAgency() == 1) { -//// orders.setOneArtificerUserId(oneArtificerUser.getUserId()); -//// orders.setOneArtificerUserName(oneArtificerUser.getUserName()); -//// oneArtificerMoney = artificerPrice.multiply(oneArtificerUser.getShopRate()); -//// oneArtificerMoney = oneArtificerMoney.setScale(2, BigDecimal.ROUND_HALF_UP); -//// } -//// orders.setOneArtificerMoney(oneArtificerMoney); -// -// UserEntity artificerUser = userService.selectUserById(artificer.getUserId()); -// //经纪人分佣 -// orders.setJjrMoney(BigDecimal.ZERO); -// orders.setJjrArtificerDeductMoney(BigDecimal.ZERO); -// JjrConfig jc = jjrConfigService.getOne(new QueryWrapper()); -// if(jc!=null && jc.getIsOpen().equals(1)){ -// UserEntity jjrUser = userService.queryByInvitationCode(artificerUser.getBlJjrCode()); -// if(jjrUser!=null){ -// JjrApply jjrApply = jjrApplyService.findByUserId(jjrUser.getUserId()); -// if(jjrApply!=null && jjrApply.getStatus().equals(1)){ -// if(jjrUser.getBlIsJjr() !=null && jjrUser.getBlIsJjr() ==1){ -// orders.setJjrUserId(jjrUser.getUserId()); -// orders.setJjrUserName(jjrUser.getUserName()); -// BigDecimal artificerRate = jc.getArtificerRate(); -// BigDecimal agentRate = jc.getAgentRate(); -// BigDecimal jjrRate = BigDecimal.ZERO; -// if(jc.getType().equals(1)){ -// jjrRate = jc.getRate(); -// }else{ -// int invitationCn = jjrApplyService.getInvitationCn(artificerUser.getBlJjrCode()); -// List list = jjrConfigServiceLevel.findList(null); -// for(int i=0;ijjrcl.getMinNumber() && invitationCn<=jjrcl.getMaxNumber()){ -// jjrRate = jjrcl.getRate(); -// break; -// } -// } -// } -// BigDecimal jjrMoney = subtract.multiply(jjrRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); -// orders.setJjrMoney(jjrMoney); -// BigDecimal jjrOneArtificerDeductMoney = jjrMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); -// orders.setJjrArtificerDeductMoney(jjrOneArtificerDeductMoney); -// } -// } -// } -// } -// -// BigDecimal shopMoney = BigDecimal.ZERO; -// if (artificerUser.getConsortiaId() != null) { -// Consortia consortia = consortiaService.getById(artificerUser.getConsortiaId()); -// if (consortia != null && consortia.getUserId() != null) { -// UserEntity consortiaUser = userService.getById(consortia.getUserId()); -// if (consortiaUser != null) { -// orders.setConsortiaId(consortia.getConsortiaId()); -// orders.setShopUserId(consortiaUser.getUserId()); -// orders.setShopUserName(consortiaUser.getUserName()); -// shopMoney = artificerPrice.multiply(consortia.getRate()); -// shopMoney = shopMoney.setScale(2, BigDecimal.ROUND_HALF_UP); -// } -// } -// } -// orders.setShopMoney(shopMoney); -//// UserEntity user = userService.selectUserById(orders.getUserId()); -//// UserEntity oneUser = userService.queryByInvitationCode(user.getInviterCode()); -//// BigDecimal oneUserMoney = BigDecimal.ZERO; -//// if (oneUser != null && oneUser.getIsAgency() != null && oneUser.getIsAgency() == 1) { -//// orders.setOneUserId(oneUser.getUserId()); -//// orders.setOneUserName(oneUser.getUserName()); -//// oneUserMoney = artificerPrice.multiply(oneUser.getUserRate()); -//// oneUserMoney = oneUserMoney.setScale(2, BigDecimal.ROUND_HALF_UP); -//// } -//// orders.setOneUserMoney(oneUserMoney); -// -// //分销商分佣 -// orders.setFxyOneMoney(BigDecimal.ZERO); -// orders.setFxyOneArtificerDeductMoney(BigDecimal.ZERO); -// orders.setFxyTwoMoney(BigDecimal.ZERO); -// orders.setFxyTwoArtificerDeductMoney(BigDecimal.ZERO); -// FxyConfig fc = fxyConfigService.getOne(new QueryWrapper()); -// if(fc!=null && fc.getIsOpen().equals(1)){ -// UserEntity user = userService.selectUserById(orders.getUserId()); -// UserEntity fxyOneUser = userService.queryByInvitationCode(user.getBlFxyCode()); -// if(fxyOneUser!=null){ -// FxyApply faOne = fxyApplyService.findByUserId(fxyOneUser.getUserId()); -// if(faOne!=null && faOne.getStatus().equals(1)){ -// if(fxyOneUser.getBlIsFxy() !=null && fxyOneUser.getBlIsFxy() ==1){ -// boolean isCanFxyFy = false; -// if(fc.getFxmLimit().equals(2)){ -// int fxmLimitDays = fc.getFxmLimitDays(); -// String approveTime = faOne.getApproveTime(); -// Date approveDate = DateUtils.stringToDate(approveTime,DateUtils.DATE_TIME_PATTERN); -// Calendar calendar = Calendar.getInstance(); -// calendar.setTime(approveDate); -// calendar.add(Calendar.DAY_OF_MONTH, fxmLimitDays); -// approveDate = calendar.getTime(); -// Date current = new Date(); -// if(approveDate.getTime() > current.getTime()){ -// isCanFxyFy = true; -// } -// }else{ -// isCanFxyFy = true; -// } -// if(isCanFxyFy){ -// orders.setFxyOneUserId(fxyOneUser.getUserId()); -// orders.setFxyOneUserName(fxyOneUser.getUserName()); -// BigDecimal fxyMoney = BigDecimal.ZERO; -// if(fc.getType().equals(1)){ -// fxyMoney = artificerPrice; -// } -// if(fc.getType().equals(2)){ -// fxyMoney = subtract; -// } -// BigDecimal artificerRate = fc.getArtificerRate(); -// BigDecimal mostRate = fc.getMostRate(); -// BigDecimal oneRate = fc.getOneRate(); -// BigDecimal oneRecommendRate = fc.getOneRecommendRate(); -// BigDecimal fxyRate = BigDecimal.ZERO; -// if(oneRate == null || oneRate.compareTo(BigDecimal.ZERO) == 0){ -// fxyRate = oneRecommendRate; -// if(oneRecommendRate.compareTo(mostRate)> 0){ -// fxyRate = mostRate; -// } -// }else{ -// fxyRate = oneRate; -// if(oneRate.compareTo(mostRate)> 0){ -// fxyRate = mostRate; -// } -// } -// BigDecimal fxyOneMoney = fxyMoney.multiply(fxyRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); -// orders.setFxyOneMoney(fxyOneMoney); -// BigDecimal fxyOneArtificerDeductMoney = fxyOneMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); -// orders.setFxyOneArtificerDeductMoney(fxyOneArtificerDeductMoney); -// if(fxyOneUser.getBlFxyLevel().equals(1)){ -// UserEntity fxyTwoUser = userService.queryByInvitationCode(fxyOneUser.getBlFxyCode()); -// if(fxyTwoUser!=null){ -// FxyApply faTwo = fxyApplyService.findByUserId(fxyTwoUser.getUserId()); -// if(faTwo!=null && faTwo.getStatus().equals(1)){ -// if(fxyTwoUser.getBlIsFxy() !=null && fxyTwoUser.getBlIsFxy() ==1){ -// isCanFxyFy = false; -// if(fc.getFxmLimit().equals(2)){ -// int fxmLimitDays = fc.getFxmLimitDays(); -// String approveTime = faTwo.getApproveTime(); -// Date approveDate = DateUtils.stringToDate(approveTime,DateUtils.DATE_TIME_PATTERN); -// Calendar calendar = Calendar.getInstance(); -// calendar.setTime(approveDate); -// calendar.add(Calendar.DAY_OF_MONTH, fxmLimitDays); -// approveDate = calendar.getTime(); -// Date current = new Date(); -// if(approveDate.getTime() > current.getTime()){ -// isCanFxyFy = true; -// } -// }else{ -// isCanFxyFy = true; -// } -// if(isCanFxyFy) { -// orders.setFxyTwoUserId(fxyTwoUser.getUserId()); -// orders.setFxyTwoUserName(fxyTwoUser.getUserName()); -// BigDecimal twoRate = fc.getTwoRate(); -// BigDecimal twoRecommendRate = fc.getTwoRecommendRate(); -// fxyRate = BigDecimal.ZERO; -// if (twoRate == null || twoRate.compareTo(BigDecimal.ZERO) == 0) { -// fxyRate = twoRecommendRate; -// if (twoRecommendRate.compareTo(mostRate) > 0) { -// fxyRate = mostRate; -// } -// } else { -// fxyRate = twoRate; -// if (twoRate.compareTo(mostRate) > 0) { -// fxyRate = mostRate; -// } -// } -// BigDecimal fxyTwoMoney = fxyMoney.multiply(fxyRate).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); -// orders.setFxyTwoMoney(fxyTwoMoney); -// BigDecimal fxyTwoArtificerDeductMoney = fxyTwoMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); -// orders.setFxyTwoArtificerDeductMoney(fxyTwoArtificerDeductMoney); -// } -// } -// } -// } -// } -// } -// } -// } -// } -// } -// -//// artificerPrice = artificerPrice.subtract(oneArtificerMoney); -// artificerPrice = artificerPrice.subtract(orders.getJjrArtificerDeductMoney()); -// artificerPrice = artificerPrice.subtract(shopMoney); -//// artificerPrice = artificerPrice.subtract(oneUserMoney); -// artificerPrice = artificerPrice.subtract(orders.getFxyOneArtificerDeductMoney());//减掉一级分销商分佣技师承担 -// artificerPrice = artificerPrice.subtract(orders.getFxyTwoArtificerDeductMoney());//减掉二级分销商分佣技师承担 -// if(orders.getIsSupplement()!=null && orders.getIsSupplement().equals(2)){ -// }else{ -// //用户收益加上通行费用 -// artificerPrice = artificerPrice.add(artificerTaxiPrice); -// } -// orders.setArtificerMoney(artificerPrice); -// orders.setSumArtificerMoney(artificerPrice); -// -// //平台扣款 -// BigDecimal pingMoney = orders.getPayMoney(); -// pingMoney = pingMoney.subtract(artificerPrice); -//// pingMoney = pingMoney.subtract(oneArtificerMoney); -// pingMoney = pingMoney.subtract(orders.getJjrMoney()); -// pingMoney = pingMoney.subtract(shopMoney); -//// pingMoney = pingMoney.subtract(oneUserMoney); -// pingMoney = pingMoney.subtract(orders.getFxyOneMoney());//减掉一级分销商分佣 -// pingMoney = pingMoney.subtract(orders.getFxyTwoMoney());//减掉二级分销商分佣 -// orders.setPingMoney(pingMoney); -// -// ordersService.updateById(orders); -// -// if(orders.getParentId()!=null && orders.getParentId()!=0){ -// Calendar calendar=Calendar.getInstance(); -//// String value1 = commonInfoService.findOne(395).getValue(); -//// OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper().eq("orders_id", orders.getOrdersId())); -//// MassageType massageType = massageTypeService.getById(ordersMassage.getMassageId()); -//// Integer duration=massageType.getDuration(); -//// if("是".equals(value1)){ -//// -//// ArtificerTime artificerTime = artificerTimeService.getOne(new QueryWrapper().eq("orders_id", orders.getParentId()).last(" order by artificer_time_id desc limit 1 ")); -//// String serveTime = artificerTime.getArtificerDate()+" "+artificerTime.getArtificerTime(); -//// String value = commonInfoService.findOne(392).getValue(); -//// int minute = Integer.parseInt(value); -//// int i=1; -//// if(duration%minute==0){ -//// i=duration/minute; -//// }else{ -//// i=duration/minute; -//// i++; -//// } -//// -//// SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); -//// Date parse = null; -//// try { -//// parse = sdf1.parse(serveTime); -//// } catch (ParseException e) { -//// e.printStackTrace(); -//// } -//// -//// calendar.setTime(parse); -//// for(int j=0;j().eq("orders_id", orders1.getOrdersId())); -//// massageType = massageTypeService.getById(ordersMassage.getMassageId()); -//// duration=massageType.getDuration(); -// String endTime = orders1.getEndTime(); -// Date date = DateUtils.stringToDate(endTime, "yyyy-MM-dd HH:mm:ss"); -// calendar=Calendar.getInstance(); -// if(date.getTime()>System.currentTimeMillis()){ -// calendar.setTime(date); -// } -// calendar.add(Calendar.MINUTE,orders.getDuration()); -// orders1.setEndTime(endTime); -// } -// orders1.setAddPrice(orders.getPrice()); -// orders1.setAddMassageTypeId(orders.getMassageTypeId()); -// orders1.setAddEntryName(orders.getEntryName()); -// ordersDao.updateById(orders1); -// if (flag2) { -// ordersDao.update(null, Wrappers.lambdaUpdate() -// .set(Orders::getWarning, null) -// .eq(Orders::getOrdersId, orders1.getOrdersId())); -// } -// }else{ -// MessageInfo messageInfo=new MessageInfo(); -// messageInfo.setState("16"); -// messageInfo.setTitle("新订单通知"); -// messageInfo.setUserId("0"); -// messageInfo.setIsSee("0"); -// messageService.saveBody(messageInfo); -// //电话通知 add 2024-06-20 by caolei -// messageService.sendNoticeByCall(artificer.getUserId()); -// } -// -// ordersService.sendMsg(orders); -// -// UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); -// userMoneyDetails.setManipulateType(1); -// if(orders.getUserPackageDetailId() != null){ -// userMoneyDetails.setMoney(orders.getTaxiMoney()); -// }else{ -// userMoneyDetails.setMoney(orders.getPayMoney()); -// } -// userMoneyDetails.setUserId(orders.getUserId()); -// userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); -// userMoneyDetails.setTitle("支付订单"); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(2); -// userMoneyDetailsService.save(userMoneyDetails); -// -// } else if (payDetails.getType()==2) { -// //缴纳保证金 -// Double cashDeposit = payDetails.getMoney(); -// Long userId = payDetails.getUserId(); -// userMoneyDao.updateCashDeposit(1, userId, cashDeposit); -// UserEntity userEntity = userService.selectUserById(userId); -// userEntity.setIsCashDeposit(2); -// userService.updateById(userEntity); -// //交保证金的记录 -// UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); -// userMoneyDetails.setUserId(userId); -// userMoneyDetails.setTitle("缴纳保证金"); -// userMoneyDetails.setContent("已缴纳保证金:" + cashDeposit + "元"); -//// userMoneyDetails.setType(1); -// userMoneyDetails.setManipulateType(1); -// userMoneyDetails.setMoney(BigDecimal.valueOf(cashDeposit)); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setClassify(1); -// userMoneyDetails.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); -// userMoneyDetails.setBlRole(2); -// userMoneyDetails.setBlFlag(2); -// userMoneyDetailsService.save(userMoneyDetails); -// } else -// if (payDetails.getType()==3) { -// PayClassify payClassify = payClassifyService.getById(Long.parseLong(payDetails.getRemark())); -// userMoneyDao.updateMayMoney(1, payDetails.getUserId(), payClassify.getMoney().doubleValue()); -// //查询用户当前余额 -// UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(payDetails.getUserId()); -// //钱包明细需要做调整2条记录,充值时钱包类型增加金额,现金类型减少金额 -// UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); -// //插入余额 -// userMoneyDetails.setBalance(userNowMoney.getMoney()); -// userMoneyDetails.setUserId(payDetails.getUserId()); -// userMoneyDetails.setTitle("支付宝充值"); -// userMoneyDetails.setContent("支付宝花费:"+payClassify.getPrice()+",钱包增加余额:"+payClassify.getMoney()); -// userMoneyDetails.setManipulateType(2); -// userMoneyDetails.setType(1); -// userMoneyDetails.setState(2); -// userMoneyDetails.setMoney(payClassify.getMoney()); -// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); -// userMoneyDetails.setCreateTime(sdf.format(new Date())); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(1); -// userMoneyDetailsService.save(userMoneyDetails); -// userMoneyDetails.setTitle("支付宝充值"); -// userMoneyDetails.setContent("支付宝花费:"+payClassify.getPrice()); -// userMoneyDetails.setMoney(payClassify.getPrice()); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(2); -// userMoneyDetailsService.save(userMoneyDetails); -// -// List list = payClassifyDetailService.findList(payClassify.getPayClassifyId()); -// if(list!=null && list.size()>0){ -// for(int m=0;m().eq("id", Long.parseLong(payDetails.getRemark()))); -// //查看用户是否是会员 -// UserVip userVip = userVipDao.selectOne(new QueryWrapper().eq("user_id", userId)); -// Calendar cal = Calendar.getInstance(); -// if(userVip!=null){ -// Date endDate = null; -// try { -// endDate = sdf.parse(userVip.getEndTime()); -// if (endDate != null && System.currentTimeMillis() < (endDate.getTime())) { -// cal.setTime(endDate); -// } -// } catch (Exception e) { -// e.getMessage(); -// } -// }else{ -// userVip=new UserVip(); -// //设置会员类型 -// userVip.setVipNameType(vipDetails.getVipNameType()); -// //设置开通会员的用户id -// userVip.setUserId(userId); -// //设置会员的购买时间 -// userVip.setCreateTime(sdf.format(new Date())); -// } -// -// MessageInfo messageInfo=new MessageInfo(); -// UserMoneyDetails userMoneyDetails=new UserMoneyDetails(); -// userMoneyDetails.setMoney(money); -// userMoneyDetails.setUserId(userId); -// -// if ((vipDetails.getVipNameType().equals(0))) { -// //月 -// userMoneyDetails.setContent("支付宝开通月卡会员"); -// messageInfo.setContent("支付宝开通月卡会员"); -// cal.add(Calendar.MONTH, 1); -// } else if ((vipDetails.getVipNameType()).equals(1)) { -// //季 -// userMoneyDetails.setContent("支付宝开通季卡会员"); -// messageInfo.setContent("支付宝开通季卡会员"); -// cal.add(Calendar.MONTH, 3); -// } else { -// //年 -// userMoneyDetails.setContent("支付宝开通年费会员"); -// messageInfo.setContent("支付宝开通年费会员"); -// cal.add(Calendar.YEAR, 1); -// } -// -// userVip.setEndTime(sdf.format(cal.getTime())); -// if(userVip.getVipId()!=null){ -// userVipDao.updateById(userVip); -// }else{ -// userVipDao.insert(userVip); -// } -// userMoneyDetails.setTitle("开通会员"); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setManipulateType(1); -// userMoneyDetails.setCreateTime(sdf.format(new Date())); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(2); -// userMoneyDetailsService.save(userMoneyDetails); -// UserEntity userEntity = userService.selectUserById(userId); -// messageInfo.setTitle("开通会员"); -// messageInfo.setState(String.valueOf(4)); -// messageInfo.setUserName(userEntity.getUserName()); -// messageInfo.setUserId(String.valueOf(userEntity.getUserId())); -// messageInfo.setCreateAt(sdf.format(new Date())); -// messageInfo.setIsSee("0"); -// messageService.saveBody(messageInfo); -// if(StringUtil.isNotBlank(userEntity.getClientid())){ -// userService.pushToSingle(messageInfo.getTitle(),messageInfo.getContent(),userEntity.getClientid()); -// } -// -// }else if(payDetails.getType()==6){ -// double money=payDetails.getMoney(); -// long artificerId = Long.parseLong(payDetails.getRemark()); -// Artificer artificer = artificerService.getById(artificerId); -// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); -// //用户流水 -// UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); -// userMoneyDetails.setClassify(5); -// userMoneyDetails.setManipulateType(1); -// userMoneyDetails.setUserId(payDetails.getUserId()); -// userMoneyDetails.setTitle("支付宝给技师打赏"); -// userMoneyDetails.setContent("使用支付宝给指定技师“"+artificer.getArtificerName()+"”打赏:"+money); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setMoney(BigDecimal.valueOf(money)); -// userMoneyDetails.setArtificerId(artificerId); -// userMoneyDetails.setCreateTime(sdf.format(new Date())); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(2); -// userMoneyDetailsService.save(userMoneyDetails); -// //技师流水 -// UserEntity userEntity = userService.queryByUserId(payDetails.getUserId()); -// userMoneyDao.updateMayMoney(1, artificerId, money); -// //查询技师当前余额 -// UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(artificerId); -// UserMoneyDetails userMoneyDetails2 = new UserMoneyDetails(); -// //插入余额 -// userMoneyDetails2.setBalance(userNowMoney.getMoney()); -// userMoneyDetails2.setManipulateType(2); -// userMoneyDetails2.setClassify(5); -// userMoneyDetails2.setUserId(userEntity.getUserId()); -// userMoneyDetails2.setTitle("用户支付宝打赏"); -// userMoneyDetails2.setContent("来自用户“"+userEntity.getUserName()+"”支付宝打赏:"+money); -// userMoneyDetails2.setType(1); -// userMoneyDetails2.setState(2); -// userMoneyDetails2.setMoney(BigDecimal.valueOf(money)); -// userMoneyDetails2.setCreateTime(sdf.format(new Date())); -// userMoneyDetails2.setBlRole(2); -// userMoneyDetails2.setBlFlag(1); -// userMoneyDetailsService.save(userMoneyDetails2); -// }else if(payDetails.getType()==7){ -// //服务包下单,分单 -// UserPackageOrder orders = userPackageOrderDao.getByNo(outTradeNo); -// UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); -// userMoneyDetails.setManipulateType(1); -// userMoneyDetails.setUserId(orders.getUserId()); -// userMoneyDetails.setMoney(orders.getPayMoney()); -// userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); -// userMoneyDetails.setTitle("支付服务包订单"); -// userMoneyDetails.setType(2); -// userMoneyDetails.setState(2); -// userMoneyDetails.setCreateTime(sdf.format(new Date())); -// userMoneyDetails.setBlRole(1); -// userMoneyDetails.setBlFlag(1); -// userMoneyDetailsService.save(userMoneyDetails); -// -// orders.setStatus(1); -// orders.setPayWay(payDetails.getClassify()); -// orders.setPayTime(sdf.format(new Date())); -// userPackageOrderDao.updateStatus(orders); -// -// //获取订单-服务包映射关系列表 -// List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); -// -// -// //先判断是否是企业预约项目 -// UserPackageOrdersMapping ta = mappingList.get(0); -// MassagePackage pacT1 = massagePackageService.getById(ta.getPackageId()); -// if(pacT1.getType()==114) {//企业预约 -// -// for (UserPackageOrdersMapping ordersPackage : mappingList) { -// int quantity = ordersPackage.getNum(); -// MassagePackage massagePackage = massagePackageService.getById(ordersPackage.getPackageId()); -// //修改服务包销量 -// int sales = massagePackage.getSales(); -// sales = sales+quantity; -// massagePackage.setSales(sales); -// massagePackageService.updateSales(massagePackage); -// -// //拆分插入用户服务器项目详情 -// UserPackageDetail userPackageDetail = new UserPackageDetail(); -// userPackageDetail.setMainId(ordersPackage.getPackageId()); -// List userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); -// UserPackageDetail detail = userPackageDetailList.get(0); -// -// BigDecimal xmsl = new BigDecimal(quantity+""); -// //拆分插入用户服务包 -// UserPackage userPackage = new UserPackage(); -// userPackage.setUserId(orders.getUserId()); -// userPackage.setPackageId(massagePackage.getId()); -// userPackage.setOrdersId(orders.getOrdersId()); -// userPackage.setOrdersNo(orders.getOrdersNo()); -// userPackage.setCreateTime(sdf.format(new Date())); -// userPackage.setTitle(massagePackage.getTitle()); -// userPackage.setType(massagePackage.getType()); -// userPackage.setOldPrice(detail.getOldPrice().multiply(xmsl)); -// userPackage.setPrice(detail.getPrice().multiply(xmsl)); -// userPackage.setPackageImg(massagePackage.getPackageImg()); -// userPackage.setContent(massagePackage.getContent()); -// userPackage.setContentImg(massagePackage.getContentImg()); -// userPackage.setLabels(massagePackage.getLabels()); -// userPackage.setCity(massagePackage.getCity()); -// userPackage.setClassifyId(massagePackage.getClassifyId()); -// userPackage.setLevel(massagePackage.getLevel()); -// userPackageService.insert(userPackage); -// Long mainId = userPackage.getId(); -// if(userPackageDetailList.size()>0){ -// for(int j=0;j userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); -// if(userPackageDetailList.size()>0){ -// for(int j=0;j list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); -// if(list.size()>0){ -// for(UserPackageOrder userPackageOrder : list) { -// if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { -// buyGroupNum++; -// } -// } -// } -// MassagePackage massagePackage = null; -// List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); -// if(mappingList.size()>0){ -// Long packageId = mappingList.get(0).getPackageId(); -// massagePackage = massagePackageService.getById(packageId); -// groupNum = massagePackage.getGroupNum(); -// } -// if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ -// for(UserPackageOrder userPackageOrder : list) { -// if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { -// //删除单据防止重复数据 -// List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); -// if(userPackageList.size()>0){ -// for(UserPackage userPackage : userPackageList){ -// userPackageService.removeById(userPackage.getId()); -// userPackageDetailService.deleteDetailByMain(userPackage.getId()); -// } -// } -// //插入单据 -// List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); -// for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { -// int quantity = ordersPackage.getNum(); -// for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); -// if(userPackageDetailList.size()>0){ -// for(int j=0;j().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()); + BigDecimal taxiMoney = BigDecimal.ZERO; + if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){ + taxiMoney = BigDecimal.ZERO; + }else{ + taxiMoney = orders.getTaxiMoney(); + } + if(taxiMoney==null){ + taxiMoney = BigDecimal.ZERO; + } + BigDecimal artificerPrice = BigDecimal.ZERO; + BigDecimal artificerTaxiPrice = BigDecimal.ZERO; + BigDecimal valueStorageDeduction = BigDecimal.ZERO; + //查询是否计算出租车扣费 + String taxi = commonInfoService.findOne(394).getValue(); + //计算技师出租车收益(按照技师表收益计算) + if ("是".equals(taxi)) { + //计算技师应该收取的出租车费用 + artificerTaxiPrice = taxiMoney.multiply(artificer.getRate()); + artificerTaxiPrice = artificerTaxiPrice.setScale(2, BigDecimal.ROUND_HALF_UP); + //计算出租车扣款 + BigDecimal pingTaxiMoney = taxiMoney.subtract(artificerTaxiPrice); + //赋值技师出租收款 + orders.setArtificerTaxiMoney(artificerTaxiPrice); + //赋值出租车扣款 + orders.setPingTaxiMoney(pingTaxiMoney); + } else { + //平台不扣费 出租车收益全由技师收取 + artificerTaxiPrice = taxiMoney; + orders.setArtificerTaxiMoney(taxiMoney); + //设置出租车扣款为0 + orders.setPingTaxiMoney(BigDecimal.ZERO); + } + BigDecimal subtract = BigDecimal.ZERO; + //用户支付减去通行费用 + if(orders.getIsSupplement()!=null && orders.getIsSupplement() == 2){ + subtract = orders.getPayMoney(); + }else{ + subtract = orders.getPayMoney().subtract(taxiMoney); + } + //计算用户收益 !计算前先减去通行费用再计算技师抽成 + artificerPrice = subtract.multiply(artificer.getRate()); + artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP); + //储值扣费 + valueStorageDeduction = artificerPrice.multiply(storageRate);//技师提成中扣除金额 + valueStorageDeduction = valueStorageDeduction.setScale(2, BigDecimal.ROUND_HALF_UP); + orders.setValueStorageDeduction(valueStorageDeduction); + + //用户收益不含交通费 + artificerPrice = artificerPrice.multiply(rate); + artificerPrice = artificerPrice.setScale(2, BigDecimal.ROUND_HALF_UP); + +// BigDecimal projectBenefits = orders.getProjectBenefits().multiply(rate); +// projectBenefits = projectBenefits.setScale(2, BigDecimal.ROUND_HALF_UP); +// orders.setProjectBenefits(projectBenefits); + orders.setProjectBenefits(artificerPrice); + + +// UserEntity oneArtificerUser = userService.queryByInvitationCode(artificerUser.getInviterCode()); +// BigDecimal oneArtificerMoney = BigDecimal.ZERO; +// if (oneArtificerUser != null && oneArtificerUser.getIsAgency() != null && oneArtificerUser.getIsAgency() == 1) { +// orders.setOneArtificerUserId(oneArtificerUser.getUserId()); +// orders.setOneArtificerUserName(oneArtificerUser.getUserName()); +// oneArtificerMoney = artificerPrice.multiply(oneArtificerUser.getShopRate()); +// oneArtificerMoney = oneArtificerMoney.setScale(2, BigDecimal.ROUND_HALF_UP); +// } +// orders.setOneArtificerMoney(oneArtificerMoney); + + UserEntity artificerUser = userService.selectUserById(artificer.getUserId()); + //经纪人分佣 + orders.setJjrMoney(BigDecimal.ZERO); + orders.setJjrArtificerDeductMoney(BigDecimal.ZERO); + JjrConfig jc = jjrConfigService.getOne(new QueryWrapper()); + if(jc!=null && jc.getIsOpen().equals(1)){ + UserEntity jjrUser = userService.queryByInvitationCode(artificerUser.getBlJjrCode()); + if(jjrUser!=null){ + JjrApply jjrApply = jjrApplyService.findByUserId(jjrUser.getUserId()); + if(jjrApply!=null && jjrApply.getStatus().equals(1)){ + if(jjrUser.getBlIsJjr() !=null && jjrUser.getBlIsJjr() ==1){ + orders.setJjrUserId(jjrUser.getUserId()); + orders.setJjrUserName(jjrUser.getUserName()); + BigDecimal artificerRate = jc.getArtificerRate(); + BigDecimal agentRate = jc.getAgentRate(); + BigDecimal jjrRate = BigDecimal.ZERO; + if(jc.getType().equals(1)){ + jjrRate = jc.getRate(); + }else{ + int invitationCn = jjrApplyService.getInvitationCn(artificerUser.getBlJjrCode()); + List list = jjrConfigServiceLevel.findList(null); + for(int i=0;ijjrcl.getMinNumber() && invitationCn<=jjrcl.getMaxNumber()){ + jjrRate = jjrcl.getRate(); + break; + } + } + } + BigDecimal jjrMoney = subtract.multiply(jjrRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); + orders.setJjrMoney(jjrMoney); + BigDecimal jjrOneArtificerDeductMoney = jjrMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); + orders.setJjrArtificerDeductMoney(jjrOneArtificerDeductMoney); + } + } + } + } + + BigDecimal shopMoney = BigDecimal.ZERO; + if (artificerUser.getConsortiaId() != null) { + Consortia consortia = consortiaService.getById(artificerUser.getConsortiaId()); + if (consortia != null && consortia.getUserId() != null) { + UserEntity consortiaUser = userService.getById(consortia.getUserId()); + if (consortiaUser != null) { + orders.setConsortiaId(consortia.getConsortiaId()); + orders.setShopUserId(consortiaUser.getUserId()); + orders.setShopUserName(consortiaUser.getUserName()); + shopMoney = artificerPrice.multiply(consortia.getRate()); + shopMoney = shopMoney.setScale(2, BigDecimal.ROUND_HALF_UP); + } + } + } + orders.setShopMoney(shopMoney); +// UserEntity user = userService.selectUserById(orders.getUserId()); +// UserEntity oneUser = userService.queryByInvitationCode(user.getInviterCode()); +// BigDecimal oneUserMoney = BigDecimal.ZERO; +// if (oneUser != null && oneUser.getIsAgency() != null && oneUser.getIsAgency() == 1) { +// orders.setOneUserId(oneUser.getUserId()); +// orders.setOneUserName(oneUser.getUserName()); +// oneUserMoney = artificerPrice.multiply(oneUser.getUserRate()); +// oneUserMoney = oneUserMoney.setScale(2, BigDecimal.ROUND_HALF_UP); +// } +// orders.setOneUserMoney(oneUserMoney); + + //分销商分佣 + orders.setFxyOneMoney(BigDecimal.ZERO); + orders.setFxyOneArtificerDeductMoney(BigDecimal.ZERO); + orders.setFxyTwoMoney(BigDecimal.ZERO); + orders.setFxyTwoArtificerDeductMoney(BigDecimal.ZERO); + FxyConfig fc = fxyConfigService.getOne(new QueryWrapper()); + if(fc!=null && fc.getIsOpen().equals(1)){ + UserEntity user = userService.selectUserById(orders.getUserId()); + UserEntity fxyOneUser = userService.queryByInvitationCode(user.getBlFxyCode()); + if(fxyOneUser!=null){ + FxyApply faOne = fxyApplyService.findByUserId(fxyOneUser.getUserId()); + if(faOne!=null && faOne.getStatus().equals(1)){ + if(fxyOneUser.getBlIsFxy() !=null && fxyOneUser.getBlIsFxy() ==1){ + boolean isCanFxyFy = false; + if(fc.getFxmLimit().equals(2)){ + int fxmLimitDays = fc.getFxmLimitDays(); + String approveTime = faOne.getApproveTime(); + Date approveDate = DateUtils.stringToDate(approveTime,DateUtils.DATE_TIME_PATTERN); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(approveDate); + calendar.add(Calendar.DAY_OF_MONTH, fxmLimitDays); + approveDate = calendar.getTime(); + Date current = new Date(); + if(approveDate.getTime() > current.getTime()){ + isCanFxyFy = true; + } + }else{ + isCanFxyFy = true; + } + if(isCanFxyFy){ + orders.setFxyOneUserId(fxyOneUser.getUserId()); + orders.setFxyOneUserName(fxyOneUser.getUserName()); + BigDecimal fxyMoney = BigDecimal.ZERO; + if(fc.getType().equals(1)){ + fxyMoney = artificerPrice; + } + if(fc.getType().equals(2)){ + fxyMoney = subtract; + } + BigDecimal artificerRate = fc.getArtificerRate(); + BigDecimal mostRate = fc.getMostRate(); + BigDecimal oneRate = fc.getOneRate(); + BigDecimal oneRecommendRate = fc.getOneRecommendRate(); + BigDecimal fxyRate = BigDecimal.ZERO; + if(oneRate == null || oneRate.compareTo(BigDecimal.ZERO) == 0){ + fxyRate = oneRecommendRate; + if(oneRecommendRate.compareTo(mostRate)> 0){ + fxyRate = mostRate; + } + }else{ + fxyRate = oneRate; + if(oneRate.compareTo(mostRate)> 0){ + fxyRate = mostRate; + } + } + BigDecimal fxyOneMoney = fxyMoney.multiply(fxyRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); + orders.setFxyOneMoney(fxyOneMoney); + BigDecimal fxyOneArtificerDeductMoney = fxyOneMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP); + orders.setFxyOneArtificerDeductMoney(fxyOneArtificerDeductMoney); + if(fxyOneUser.getBlFxyLevel().equals(1)){ + UserEntity fxyTwoUser = userService.queryByInvitationCode(fxyOneUser.getBlFxyCode()); + if(fxyTwoUser!=null){ + FxyApply faTwo = fxyApplyService.findByUserId(fxyTwoUser.getUserId()); + if(faTwo!=null && faTwo.getStatus().equals(1)){ + if(fxyTwoUser.getBlIsFxy() !=null && fxyTwoUser.getBlIsFxy() ==1){ + isCanFxyFy = false; + if(fc.getFxmLimit().equals(2)){ + int fxmLimitDays = fc.getFxmLimitDays(); + String approveTime = faTwo.getApproveTime(); + Date approveDate = DateUtils.stringToDate(approveTime,DateUtils.DATE_TIME_PATTERN); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(approveDate); + calendar.add(Calendar.DAY_OF_MONTH, fxmLimitDays); + approveDate = calendar.getTime(); + Date current = new Date(); + if(approveDate.getTime() > current.getTime()){ + isCanFxyFy = true; + } + }else{ + isCanFxyFy = true; + } + if(isCanFxyFy) { + orders.setFxyTwoUserId(fxyTwoUser.getUserId()); + orders.setFxyTwoUserName(fxyTwoUser.getUserName()); + BigDecimal twoRate = fc.getTwoRate(); + BigDecimal twoRecommendRate = fc.getTwoRecommendRate(); + fxyRate = BigDecimal.ZERO; + if (twoRate == null || twoRate.compareTo(BigDecimal.ZERO) == 0) { + fxyRate = twoRecommendRate; + if (twoRecommendRate.compareTo(mostRate) > 0) { + fxyRate = mostRate; + } + } else { + fxyRate = twoRate; + if (twoRate.compareTo(mostRate) > 0) { + fxyRate = mostRate; + } + } + BigDecimal fxyTwoMoney = fxyMoney.multiply(fxyRate).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); + orders.setFxyTwoMoney(fxyTwoMoney); + BigDecimal fxyTwoArtificerDeductMoney = fxyTwoMoney.multiply(artificerRate).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); + orders.setFxyTwoArtificerDeductMoney(fxyTwoArtificerDeductMoney); + } + } + } + } + } + } + } + } + } + } + +// artificerPrice = artificerPrice.subtract(oneArtificerMoney); + artificerPrice = artificerPrice.subtract(orders.getJjrArtificerDeductMoney()); + artificerPrice = artificerPrice.subtract(shopMoney); +// artificerPrice = artificerPrice.subtract(oneUserMoney); + artificerPrice = artificerPrice.subtract(orders.getFxyOneArtificerDeductMoney());//减掉一级分销商分佣技师承担 + artificerPrice = artificerPrice.subtract(orders.getFxyTwoArtificerDeductMoney());//减掉二级分销商分佣技师承担 + if(orders.getIsSupplement()!=null && orders.getIsSupplement().equals(2)){ + }else{ + //用户收益加上通行费用 + artificerPrice = artificerPrice.add(artificerTaxiPrice); + } + orders.setArtificerMoney(artificerPrice); + orders.setSumArtificerMoney(artificerPrice); + + //平台扣款 + BigDecimal pingMoney = orders.getPayMoney(); + pingMoney = pingMoney.subtract(artificerPrice); +// pingMoney = pingMoney.subtract(oneArtificerMoney); + pingMoney = pingMoney.subtract(orders.getJjrMoney()); + pingMoney = pingMoney.subtract(shopMoney); +// pingMoney = pingMoney.subtract(oneUserMoney); + pingMoney = pingMoney.subtract(orders.getFxyOneMoney());//减掉一级分销商分佣 + pingMoney = pingMoney.subtract(orders.getFxyTwoMoney());//减掉二级分销商分佣 + orders.setPingMoney(pingMoney); + + ordersService.updateById(orders); + + if(orders.getParentId()!=null && orders.getParentId()!=0){ + Calendar calendar=Calendar.getInstance(); +// String value1 = commonInfoService.findOne(395).getValue(); +// OrdersMassage ordersMassage = ordersMassageService.getOne(new QueryWrapper().eq("orders_id", orders.getOrdersId())); +// MassageType massageType = massageTypeService.getById(ordersMassage.getMassageId()); +// Integer duration=massageType.getDuration(); +// if("是".equals(value1)){ +// +// ArtificerTime artificerTime = artificerTimeService.getOne(new QueryWrapper().eq("orders_id", orders.getParentId()).last(" order by artificer_time_id desc limit 1 ")); +// String serveTime = artificerTime.getArtificerDate()+" "+artificerTime.getArtificerTime(); +// String value = commonInfoService.findOne(392).getValue(); +// int minute = Integer.parseInt(value); +// int i=1; +// if(duration%minute==0){ +// i=duration/minute; +// }else{ +// i=duration/minute; +// i++; +// } +// +// SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); +// Date parse = null; +// try { +// parse = sdf1.parse(serveTime); +// } catch (ParseException e) { +// e.printStackTrace(); +// } +// +// calendar.setTime(parse); +// for(int j=0;j().eq("orders_id", orders1.getOrdersId())); +// massageType = massageTypeService.getById(ordersMassage.getMassageId()); +// duration=massageType.getDuration(); + String endTime = orders1.getEndTime(); + Date date = DateUtils.stringToDate(endTime, "yyyy-MM-dd HH:mm:ss"); + calendar=Calendar.getInstance(); + if(date.getTime()>System.currentTimeMillis()){ + calendar.setTime(date); + } + calendar.add(Calendar.MINUTE,orders.getDuration()); + orders1.setEndTime(endTime); + } + orders1.setAddPrice(orders.getPrice()); + orders1.setAddMassageTypeId(orders.getMassageTypeId()); + orders1.setAddEntryName(orders.getEntryName()); + ordersDao.updateById(orders1); + if (flag2) { + ordersDao.update(null, Wrappers.lambdaUpdate() + .set(Orders::getWarning, null) + .eq(Orders::getOrdersId, orders1.getOrdersId())); + } + }else{ + MessageInfo messageInfo=new MessageInfo(); + messageInfo.setState("16"); + messageInfo.setTitle("新订单通知"); + messageInfo.setUserId("0"); + messageInfo.setIsSee("0"); + messageService.saveBody(messageInfo); + //电话通知 add 2024-06-20 by caolei + messageService.sendNoticeByCall(artificer.getUserId()); + } + + ordersService.sendMsg(orders); + + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + userMoneyDetails.setManipulateType(1); + if(orders.getUserPackageDetailId() != null){ + userMoneyDetails.setMoney(orders.getTaxiMoney()); + }else{ + userMoneyDetails.setMoney(orders.getPayMoney()); + } + userMoneyDetails.setUserId(orders.getUserId()); + userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); + userMoneyDetails.setTitle("支付订单"); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + + } else if (payDetails.getType()==2) { + //缴纳保证金 + Double cashDeposit = payDetails.getMoney(); + Long userId = payDetails.getUserId(); + userMoneyDao.updateCashDeposit(1, userId, cashDeposit); + UserEntity userEntity = userService.selectUserById(userId); + userEntity.setIsCashDeposit(2); + userService.updateById(userEntity); + //交保证金的记录 + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + userMoneyDetails.setUserId(userId); + userMoneyDetails.setTitle("缴纳保证金"); + userMoneyDetails.setContent("已缴纳保证金:" + cashDeposit + "元"); +// userMoneyDetails.setType(1); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setMoney(BigDecimal.valueOf(cashDeposit)); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setClassify(1); + userMoneyDetails.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + userMoneyDetails.setBlRole(2); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + } else + if (payDetails.getType()==3) { + PayClassify payClassify = payClassifyService.getById(Long.parseLong(payDetails.getRemark())); + userMoneyDao.updateMayMoney(1, payDetails.getUserId(), payClassify.getMoney().doubleValue()); + //查询用户当前余额 + UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(payDetails.getUserId()); + //钱包明细需要做调整2条记录,充值时钱包类型增加金额,现金类型减少金额 + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + //插入余额 + userMoneyDetails.setBalance(userNowMoney.getMoney()); + userMoneyDetails.setUserId(payDetails.getUserId()); + userMoneyDetails.setTitle("支付宝充值"); + userMoneyDetails.setContent("支付宝花费:"+payClassify.getPrice()+",钱包增加余额:"+payClassify.getMoney()); + userMoneyDetails.setManipulateType(2); + userMoneyDetails.setType(1); + userMoneyDetails.setState(2); + userMoneyDetails.setMoney(payClassify.getMoney()); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + userMoneyDetails.setCreateTime(sdf.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(1); + userMoneyDetailsService.save(userMoneyDetails); + userMoneyDetails.setTitle("支付宝充值"); + userMoneyDetails.setContent("支付宝花费:"+payClassify.getPrice()); + userMoneyDetails.setMoney(payClassify.getPrice()); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + + List list = payClassifyDetailService.findList(payClassify.getPayClassifyId()); + if(list!=null && list.size()>0){ + for(int m=0;m0){ + String date=sdf.format(new Date()); + userMoneyService.updateSad(1,payDetails.getUserId(),payClassify.getDayMoney()); + UserSadDetails userSadDetails=new UserSadDetails(); + //查询用户当前余额 + UserMoney userNowMoney2 = userMoneyService.selectUserMoneyByUserId(payDetails.getUserId()); + //插入余额 + userSadDetails.setBalance(userNowMoney2.getSad()); + //插入操作类型为已操作用户余额 + userSadDetails.setManipulateType(2); + userSadDetails.setUserId(payDetails.getUserId()); + userSadDetails.setTitle("[充值赠送]标题:充值"); + userSadDetails.setContent("获得盛安豆:"+payClassify.getDayMoney()); + userSadDetails.setType(1); + userSadDetails.setMoney(userNowMoney2.getSad()); + userSadDetails.setCreateTime(date); + userSadDetails.setBlRole(1); + userSadDetails.setBlFlag(1); + userSadDetailsService.insert(userSadDetails); + + //添加定时任务 + BlSadJob blSadJob = new BlSadJob(); + blSadJob.setCreateTime(new Date()); + blSadJob.setUpdateTime(new Date()); + blSadJob.setDayMoney(payClassify.getDayMoney()); + blSadJob.setDaySumNum(payClassify.getDayNum()); + blSadJob.setDayNum(1); + blSadJob.setUserId(payDetails.getUserId()); + blSadJob.setSfwc(0); + blSadJobService.save(blSadJob); + } + + //用户在充值余额时,指定技师ID,则充值成功后给指定技师增加积分,入user_recharge表 + if(payDetails.getArtificerId()!=null){ + Artificer artificer = artificerService.getById(payDetails.getArtificerId()); + //获取充值时,技师奖金配置,技师获取积分配置 + ArtificerRechargeReward artificerRechargeReward = artificerRechargeRewardService.getInfo(payClassify.getMoney()); + //用户在充值余额时,指定技师ID,则充值成功后给指定技师增加奖金,入技师余额表user_money表 + if(artificerRechargeReward.getRewardMoney()!=null && artificerRechargeReward.getRewardMoney().compareTo(BigDecimal.ZERO)>0){ + userMoneyDao.updateMayMoney(1, artificer.getUserId(), artificerRechargeReward.getRewardMoney().doubleValue()); + //查询用户当前余额 + UserMoney artificerMoney = userMoneyService.selectUserMoneyByUserId(artificer.getUserId()); + //钱包明细需要做调整2条记录,充值时钱包类型增加金额,现金类型减少金额 + UserMoneyDetails userMoneyDetailsA = new UserMoneyDetails(); + //插入余额 + userMoneyDetailsA.setBalance(artificerMoney.getMoney()); + userMoneyDetailsA.setUserId(artificer.getUserId()); + userMoneyDetailsA.setTitle("用户充值,技师获取奖金"); + userMoneyDetailsA.setContent("钱包增加余额:"+artificerRechargeReward.getRewardMoney()); + userMoneyDetailsA.setManipulateType(2); + userMoneyDetailsA.setClassify(4); + userMoneyDetailsA.setType(1); + userMoneyDetailsA.setState(2); + userMoneyDetailsA.setMoney(artificerRechargeReward.getRewardMoney()); + userMoneyDetailsA.setCreateTime(sdf.format(new Date())); + userMoneyDetailsA.setBlRole(2); + userMoneyDetailsA.setBlFlag(1); + userMoneyDetailsService.save(userMoneyDetailsA); + } + + if(artificerRechargeReward.getIntegralRate()!=null && artificerRechargeReward.getIntegralRate().compareTo(BigDecimal.ZERO)>0){ + BigDecimal jf = payClassify.getPrice().multiply(artificerRechargeReward.getIntegralRate()).setScale(0,BigDecimal.ROUND_HALF_UP); + UserRecharge o = new UserRecharge(); + o.setUserRecharge(jf); + o.setType("2"); + o.setUserId(payDetails.getUserId()); + o.setArtificerId(payDetails.getArtificerId()); + o.setOrdersId(payDetails.getMassageOrdersId()); + o.setCreateTime(DateUtils.format(new Date())); + userRechargeDao.insert(o); + } + } + } + else if(payDetails.getType()==4){ + Long couponIssueId = Long.parseLong(payDetails.getRemark()); + Long userId=payDetails.getUserId(); + CouponIssue couponIssue = couponIssueService.getById(couponIssueId); + String createTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String[] couponIds = couponIssue.getCouponIds().split(","); + UserMoneyDetails userMoneyDetails=new UserMoneyDetails(); + userMoneyDetails.setClassify(2); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setMoney(BigDecimal.valueOf(payDetails.getMoney())); + userMoneyDetails.setUserId(payDetails.getUserId()); + userMoneyDetails.setTitle("支付宝购买优惠券,券包:"+couponIssue.getCouponIssueName()); + userMoneyDetails.setContent("购买优惠券费用:"+payDetails.getMoney()); + userMoneyDetails.setCreateTime(DateUtils.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + for(String couponId:couponIds){ + Coupon coupon = couponService.getById(Long.parseLong(couponId)); + Integer endDate = coupon.getEndDate(); + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DATE, endDate); + calendar.add(Calendar.DATE, 1); + Date date = calendar.getTime(); + String expirationTime = simpleDateFormat.format(date); + CouponUser couponUser=new CouponUser(); + couponUser.setUserId(userId); + couponUser.setCouponName(coupon.getCouponName()); + couponUser.setCouponPicture(coupon.getCouponPicture()); + couponUser.setCreateTime(createTime); + couponUser.setExpirationTime(expirationTime); + couponUser.setMinMoney(coupon.getMinMoney()); + couponUser.setMoney(coupon.getMoney()); + couponUser.setStatus(0); + couponUserService.save(couponUser); + } + couponIssue.setCouponNum(couponIssue.getCouponNum()-1); + couponIssueService.updateById(couponIssue); + }else if(payDetails.getType()==5){ + BigDecimal money=BigDecimal.valueOf(payDetails.getMoney()); + Long userId=payDetails.getUserId(); + VipDetails vipDetails = vipDetailsDao.selectOne(new QueryWrapper().eq("id", Long.parseLong(payDetails.getRemark()))); + //查看用户是否是会员 + UserVip userVip = userVipDao.selectOne(new QueryWrapper().eq("user_id", userId)); + Calendar cal = Calendar.getInstance(); + if(userVip!=null){ + Date endDate = null; + try { + endDate = sdf.parse(userVip.getEndTime()); + if (endDate != null && System.currentTimeMillis() < (endDate.getTime())) { + cal.setTime(endDate); + } + } catch (Exception e) { + e.getMessage(); + } + }else{ + userVip=new UserVip(); + //设置会员类型 + userVip.setVipNameType(vipDetails.getVipNameType()); + //设置开通会员的用户id + userVip.setUserId(userId); + //设置会员的购买时间 + userVip.setCreateTime(sdf.format(new Date())); + } + + MessageInfo messageInfo=new MessageInfo(); + UserMoneyDetails userMoneyDetails=new UserMoneyDetails(); + userMoneyDetails.setMoney(money); + userMoneyDetails.setUserId(userId); + + if ((vipDetails.getVipNameType().equals(0))) { + //月 + userMoneyDetails.setContent("支付宝开通月卡会员"); + messageInfo.setContent("支付宝开通月卡会员"); + cal.add(Calendar.MONTH, 1); + } else if ((vipDetails.getVipNameType()).equals(1)) { + //季 + userMoneyDetails.setContent("支付宝开通季卡会员"); + messageInfo.setContent("支付宝开通季卡会员"); + cal.add(Calendar.MONTH, 3); + } else { + //年 + userMoneyDetails.setContent("支付宝开通年费会员"); + messageInfo.setContent("支付宝开通年费会员"); + cal.add(Calendar.YEAR, 1); + } + + userVip.setEndTime(sdf.format(cal.getTime())); + if(userVip.getVipId()!=null){ + userVipDao.updateById(userVip); + }else{ + userVipDao.insert(userVip); + } + userMoneyDetails.setTitle("开通会员"); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setCreateTime(sdf.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + UserEntity userEntity = userService.selectUserById(userId); + messageInfo.setTitle("开通会员"); + messageInfo.setState(String.valueOf(4)); + messageInfo.setUserName(userEntity.getUserName()); + messageInfo.setUserId(String.valueOf(userEntity.getUserId())); + messageInfo.setCreateAt(sdf.format(new Date())); + messageInfo.setIsSee("0"); + messageService.saveBody(messageInfo); + if(StringUtil.isNotBlank(userEntity.getClientid())){ + userService.pushToSingle(messageInfo.getTitle(),messageInfo.getContent(),userEntity.getClientid()); + } + + }else if(payDetails.getType()==6){ + double money=payDetails.getMoney(); + long artificerId = Long.parseLong(payDetails.getRemark()); + Artificer artificer = artificerService.getById(artificerId); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + //用户流水 + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + userMoneyDetails.setClassify(5); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setUserId(payDetails.getUserId()); + userMoneyDetails.setTitle("支付宝给技师打赏"); + userMoneyDetails.setContent("使用支付宝给指定技师“"+artificer.getArtificerName()+"”打赏:"+money); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setMoney(BigDecimal.valueOf(money)); + userMoneyDetails.setArtificerId(artificerId); + userMoneyDetails.setCreateTime(sdf.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(2); + userMoneyDetailsService.save(userMoneyDetails); + //技师流水 + UserEntity userEntity = userService.queryByUserId(payDetails.getUserId()); + userMoneyDao.updateMayMoney(1, artificerId, money); + //查询技师当前余额 + UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(artificerId); + UserMoneyDetails userMoneyDetails2 = new UserMoneyDetails(); + //插入余额 + userMoneyDetails2.setBalance(userNowMoney.getMoney()); + userMoneyDetails2.setManipulateType(2); + userMoneyDetails2.setClassify(5); + userMoneyDetails2.setUserId(userEntity.getUserId()); + userMoneyDetails2.setTitle("用户支付宝打赏"); + userMoneyDetails2.setContent("来自用户“"+userEntity.getUserName()+"”支付宝打赏:"+money); + userMoneyDetails2.setType(1); + userMoneyDetails2.setState(2); + userMoneyDetails2.setMoney(BigDecimal.valueOf(money)); + userMoneyDetails2.setCreateTime(sdf.format(new Date())); + userMoneyDetails2.setBlRole(2); + userMoneyDetails2.setBlFlag(1); + userMoneyDetailsService.save(userMoneyDetails2); + }else if(payDetails.getType()==7){ + //服务包下单,分单 + UserPackageOrder orders = userPackageOrderDao.getByNo(outTradeNo); + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setUserId(orders.getUserId()); + userMoneyDetails.setMoney(orders.getPayMoney()); + userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); + userMoneyDetails.setTitle("支付服务包订单"); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setCreateTime(sdf.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(1); + userMoneyDetailsService.save(userMoneyDetails); + + orders.setStatus(1); + orders.setPayWay(payDetails.getClassify()); + orders.setPayTime(sdf.format(new Date())); + userPackageOrderDao.updateStatus(orders); + + //获取订单-服务包映射关系列表 + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + + + //先判断是否是企业预约项目 + UserPackageOrdersMapping ta = mappingList.get(0); + MassagePackage pacT1 = massagePackageService.getById(ta.getPackageId()); + if(pacT1.getType()==114) {//企业预约 + + for (UserPackageOrdersMapping ordersPackage : mappingList) { + int quantity = ordersPackage.getNum(); + MassagePackage massagePackage = massagePackageService.getById(ordersPackage.getPackageId()); + //修改服务包销量 + int sales = massagePackage.getSales(); + sales = sales+quantity; + massagePackage.setSales(sales); + massagePackageService.updateSales(massagePackage); + + //拆分插入用户服务器项目详情 + UserPackageDetail userPackageDetail = new UserPackageDetail(); + userPackageDetail.setMainId(ordersPackage.getPackageId()); + List userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + UserPackageDetail detail = userPackageDetailList.get(0); + + BigDecimal xmsl = new BigDecimal(quantity+""); + //拆分插入用户服务包 + UserPackage userPackage = new UserPackage(); + userPackage.setUserId(orders.getUserId()); + userPackage.setPackageId(massagePackage.getId()); + userPackage.setOrdersId(orders.getOrdersId()); + userPackage.setOrdersNo(orders.getOrdersNo()); + userPackage.setCreateTime(sdf.format(new Date())); + userPackage.setTitle(massagePackage.getTitle()); + userPackage.setType(massagePackage.getType()); + userPackage.setOldPrice(detail.getOldPrice().multiply(xmsl)); + userPackage.setPrice(detail.getPrice().multiply(xmsl)); + userPackage.setPackageImg(massagePackage.getPackageImg()); + userPackage.setContent(massagePackage.getContent()); + userPackage.setContentImg(massagePackage.getContentImg()); + userPackage.setLabels(massagePackage.getLabels()); + userPackage.setCity(massagePackage.getCity()); + userPackage.setClassifyId(massagePackage.getClassifyId()); + userPackage.setLevel(massagePackage.getLevel()); + userPackageService.insert(userPackage); + Long mainId = userPackage.getId(); + if(userPackageDetailList.size()>0){ + for(int j=0;j userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j - + \ No newline at end of file