套餐订单
This commit is contained in:
parent
14fb851ab4
commit
30778b143d
|
@ -90,22 +90,24 @@ public class AppUserMoneyController {
|
|||
period.setDetailsType(1);
|
||||
//获取上一周期的最后一天
|
||||
period.setStartFundData(periodDate.getStartFundData());
|
||||
period.setEndFundData(CurrentPeriod);
|
||||
// period.setEndFundData(CurrentPeriod);
|
||||
period.setEndFundData(periodDate.getEndFundData());
|
||||
List<UserMoneyDetails> filteredPersons = userMoneyDetailsService.selectIncome(period);
|
||||
//进账
|
||||
Long incomeLong= filteredPersons.stream()
|
||||
double incomeLong= filteredPersons.stream()
|
||||
.filter(UserMoneyDetails -> UserMoneyDetails.getType() == 1)
|
||||
.mapToLong(UserMoneyDetails -> UserMoneyDetails.getMoney().longValue())
|
||||
.mapToDouble(UserMoneyDetails -> UserMoneyDetails.getMoney().doubleValue())
|
||||
.sum();
|
||||
//出账
|
||||
Long outgoingLong= filteredPersons.stream()
|
||||
double outgoingLong= filteredPersons.stream()
|
||||
.filter(UserMoneyDetails -> UserMoneyDetails.getType() == 2)
|
||||
.filter(UserMoneyDetails -> !UserMoneyDetails.getContent().contains("管理端减少"))
|
||||
.mapToLong(UserMoneyDetails -> UserMoneyDetails.getMoney().longValue())
|
||||
.mapToDouble(UserMoneyDetails -> UserMoneyDetails.getMoney().doubleValue())
|
||||
.sum();
|
||||
BigDecimal income = new BigDecimal(incomeLong);
|
||||
BigDecimal outgoing = new BigDecimal(outgoingLong);
|
||||
BigDecimal balance = income.subtract(outgoing);
|
||||
|
||||
BigDecimal income = BigDecimal.valueOf(incomeLong).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal outgoing = BigDecimal.valueOf(outgoingLong).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal balance = income.subtract(outgoing).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
|
||||
// BigDecimal ktxje = userMoney.getMoney().subtract(balance);
|
||||
if(balance.compareTo(BigDecimal.ZERO) < 0){
|
||||
|
|
|
@ -334,6 +334,12 @@ public class Orders implements Serializable {
|
|||
*/
|
||||
private Long userPackageDetailId;
|
||||
|
||||
/**
|
||||
* 服务包类型
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private Integer packageType;
|
||||
|
||||
/**
|
||||
* 会员优惠比例
|
||||
*/
|
||||
|
|
|
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
|
|||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
@ -43,5 +44,8 @@ public class OrdersMassage implements Serializable {
|
|||
@TableField(exist = false)
|
||||
private MassageType massageType;
|
||||
|
||||
@TableField(exist = false)
|
||||
private UserPackageDetail userPackageDetail;
|
||||
|
||||
public OrdersMassage() {}
|
||||
}
|
||||
|
|
|
@ -65,8 +65,6 @@ public class ArtificerServiceImpl extends ServiceImpl<ArtificerDao, Artificer> i
|
|||
@Autowired
|
||||
private CommonInfoDao commonInfoDao;
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Result selectArtificerList(Integer page, Integer limit, Long massageTypeId,String artificerName,
|
||||
String longitude,String latitude,Integer sort,Integer authentication,
|
||||
|
@ -635,6 +633,11 @@ public class ArtificerServiceImpl extends ServiceImpl<ArtificerDao, Artificer> i
|
|||
IPage<Orders> ordersIPage = null;
|
||||
//当期订单数:计算订单发生了按摩行为的订单数,订单状态经历了开始服务到订单结束。
|
||||
String currentPeriodOrdersSum = ordersDao.selectOrdersArtificerIntegral(userId, endTime, startTime);
|
||||
if(currentPeriodOrdersSum.isEmpty() || currentPeriodOrdersSum.equals("0")){
|
||||
map.put("data",new PageUtils(pages));
|
||||
map.put("earnings","0");
|
||||
return Result.success(map);
|
||||
}
|
||||
//订单数
|
||||
BigDecimal currentPeriodOrdersSumBig = new BigDecimal(currentPeriodOrdersSum);
|
||||
//查询收益
|
||||
|
|
|
@ -30,6 +30,8 @@ import com.sqx.modules.artificer.dao.ArtificerDao;
|
|||
import com.sqx.modules.artificer.dao.OrdersDao;
|
||||
import com.sqx.modules.artificer.entity.*;
|
||||
import com.sqx.modules.artificer.service.*;
|
||||
import com.sqx.modules.bl.order.entity.UserPackage;
|
||||
import com.sqx.modules.bl.order.service.UserPackageService;
|
||||
import com.sqx.modules.common.dao.CommonInfoDao;
|
||||
import com.sqx.modules.bl.order.entity.UserPackageDetail;
|
||||
import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
||||
|
@ -139,7 +141,9 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
@Autowired
|
||||
private ArtificerDao artificerDao;
|
||||
@Autowired
|
||||
UserPackageDetailService userPackageDetailService;
|
||||
private UserPackageDetailService userPackageDetailService;
|
||||
@Autowired
|
||||
private UserPackageService userPackageService;
|
||||
@Autowired
|
||||
private MaterialMassageMapper materialMassageMapper;
|
||||
@Autowired
|
||||
|
@ -246,10 +250,10 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
return result;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Result insertOrders(Orders orders) {
|
||||
reentrantReadWriteLock.writeLock().lock();
|
||||
String msg = "";
|
||||
// reentrantReadWriteLock.writeLock().lock();
|
||||
Artificer artificer1 = artificerDao.selectOne(Wrappers.<Artificer>lambdaQuery()
|
||||
.eq(Artificer::getArtificerId, orders.getArtificerId()));
|
||||
orders.setClassifyId(artificer1.getClassifyId());
|
||||
|
@ -264,10 +268,12 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.error("添加订单异常" + e.getMessage(), e);
|
||||
msg = e.getMessage();
|
||||
} finally {
|
||||
reentrantReadWriteLock.writeLock().unlock();
|
||||
// reentrantReadWriteLock.writeLock().unlock();
|
||||
}
|
||||
return Result.error("系统繁忙,请稍后再试!");
|
||||
return Result.error(msg);
|
||||
// return Result.error("系统繁忙,请稍后再试!");
|
||||
}
|
||||
|
||||
private Result insertMassageOrders(Orders orders) throws Exception{
|
||||
|
@ -290,7 +296,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
return Result.error("优惠券已被使用!");
|
||||
}
|
||||
if(couponUser.getClassifyId()!=0){
|
||||
if(orders.getClassifyId() != couponUser.getClassifyId()){
|
||||
if(!orders.getClassifyId() .equals(couponUser.getClassifyId())){
|
||||
return Result.error("优惠券不满足使用条件!");
|
||||
}
|
||||
}
|
||||
|
@ -664,6 +670,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
orders.setPrice(price);
|
||||
orders.setEntryName(massageTypeName);
|
||||
orders.setMassageMoney(payMoney);
|
||||
orders.setVipRate(new BigDecimal(100));
|
||||
|
||||
String value1 = commonInfoService.findOne(395).getValue();
|
||||
int i = 0;
|
||||
|
@ -929,7 +936,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
} else {
|
||||
return Result.error("当前订单没有选择服务项目!");
|
||||
}
|
||||
if (massageTypeId != oldOrders.getMassageTypeId()) {
|
||||
Long oldMassageTypeId = oldOrders.getMassageTypeId();
|
||||
if (!massageTypeId.equals(oldMassageTypeId)) {
|
||||
return Result.error("当前订单无法修改服务项目!");
|
||||
}
|
||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||
|
@ -1092,7 +1100,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
if (StringUtils.isNotBlank(orders.getServeTime()) && !orders.getServeTime().equals(oldOrders.getServeTime())) {
|
||||
return Result.error("当前订单无法修改时间!");
|
||||
}
|
||||
if (orders.getArtificerId() != null && orders.getArtificerId() != oldOrders.getArtificerId()) {
|
||||
if (orders.getArtificerId() != null && !orders.getArtificerId().equals(oldOrders.getArtificerId())) {
|
||||
return Result.error("当前订单无法修改技师!");
|
||||
}
|
||||
if (oldOrders.getParentId() != null && oldOrders.getParentId() != 0) {
|
||||
|
@ -1236,7 +1244,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
return Result.error("服务时间不能晚于当前时间!");
|
||||
}
|
||||
if (oldOrders.getUserPackageDetailId() != null) {
|
||||
if (massageTypeId != oldOrders.getUserPackageDetailId()) {
|
||||
if (!massageTypeId.equals(oldOrders.getUserPackageDetailId()) ) {
|
||||
return Result.error("当前套餐类订单无法修改项目!");
|
||||
}
|
||||
UserPackageDetail userPackageDetail = userPackageDetailService.getById(massageTypeId);
|
||||
|
@ -1444,7 +1452,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
return Result.error("优惠券已被使用!");
|
||||
}
|
||||
if (couponUser.getClassifyId() != 0) {
|
||||
if (orders.getClassifyId() != couponUser.getClassifyId()) {
|
||||
if (!orders.getClassifyId().equals(couponUser.getClassifyId())) {
|
||||
return Result.error("优惠券不满足使用条件!");
|
||||
}
|
||||
}
|
||||
|
@ -3738,14 +3746,36 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
}
|
||||
List<OrdersMassage> ordersMassageList = ordersMassageService.list(new QueryWrapper<OrdersMassage>().eq("orders_id", ordersId));
|
||||
for (OrdersMassage ordersMassage : ordersMassageList) {
|
||||
ordersMassage.setMassageType(massageTypeService.getById(ordersMassage.getMassageId()));
|
||||
if(orders.getUserPackageDetailId() !=null){
|
||||
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||
orders.setPackageType(userPackage.getType());
|
||||
userPackageDetail.setMainTitle(userPackage.getTitle());
|
||||
userPackageDetail.setMainPrice(userPackage.getPrice());
|
||||
ordersMassage.setUserPackageDetail(userPackageDetail);
|
||||
}else{
|
||||
ordersMassage.setMassageType(massageTypeService.getById(ordersMassage.getMassageId()));
|
||||
}
|
||||
}
|
||||
orders.setOrdersMassageList(ordersMassageList);
|
||||
List<OrdersMassage> oldOrdersMassageList = ordersMassageService.list(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOldOrdersId()));
|
||||
for (OrdersMassage ordersMassage : oldOrdersMassageList) {
|
||||
ordersMassage.setMassageType(massageTypeService.getById(ordersMassage.getMassageId()));
|
||||
|
||||
if(orders.getOldOrdersId()!=null){
|
||||
Orders oldOrders = baseMapper.selectById(orders.getOldOrdersId());
|
||||
List<OrdersMassage> oldOrdersMassageList = ordersMassageService.list(new QueryWrapper<OrdersMassage>().eq("orders_id", orders.getOldOrdersId()));
|
||||
for (OrdersMassage ordersMassage : oldOrdersMassageList) {
|
||||
if(oldOrders.getUserPackageDetailId() !=null){
|
||||
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||
UserPackage userPackage = userPackageService.getById(userPackageDetail.getMainId());
|
||||
orders.setPackageType(userPackage.getType());
|
||||
userPackageDetail.setMainTitle(userPackage.getTitle());
|
||||
userPackageDetail.setMainPrice(userPackage.getPrice());
|
||||
ordersMassage.setUserPackageDetail(userPackageDetail);
|
||||
}else{
|
||||
ordersMassage.setMassageType(massageTypeService.getById(ordersMassage.getMassageId()));
|
||||
}
|
||||
}
|
||||
orders.setOldOrdersMassageList(oldOrdersMassageList);
|
||||
}
|
||||
orders.setOldOrdersMassageList(oldOrdersMassageList);
|
||||
Artificer artificer = artificerService.getById(orders.getArtificerId());
|
||||
if (artificer != null) {
|
||||
UserEntity userEntity = userService.selectUserById(artificer.getUserId());
|
||||
|
@ -3983,7 +4013,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
|
||||
@Override
|
||||
public Result payOrders(Long ordersId, Integer type) {
|
||||
reentrantReadWriteLock.writeLock().lock();
|
||||
String msg = "";
|
||||
// reentrantReadWriteLock.writeLock().lock();
|
||||
try {
|
||||
Orders orders = baseMapper.selectById(ordersId);
|
||||
if (orders == null) {
|
||||
|
@ -3991,7 +4022,6 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
} else if (orders.getStatus() != 1) {
|
||||
return Result.error("订单状态异常,请刷新页面后重试!");
|
||||
}
|
||||
|
||||
if(orders.getUserPackageDetailId() !=null ){
|
||||
//套餐订单
|
||||
return payPackageOrders(orders,type);
|
||||
|
@ -4002,10 +4032,12 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.error("钱包支付订单异常:" + e.getMessage(), e);
|
||||
msg = e.getMessage();
|
||||
} finally {
|
||||
reentrantReadWriteLock.writeLock().unlock();
|
||||
// reentrantReadWriteLock.writeLock().unlock();
|
||||
}
|
||||
return Result.error("系统繁忙,请稍后再试!");
|
||||
return Result.error(msg);
|
||||
// return Result.error("系统繁忙,请稍后再试!");
|
||||
|
||||
}
|
||||
|
||||
|
@ -4030,7 +4062,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
if (massageType.getAddNum() == null || massageType.getAddNum() == 0) {
|
||||
return Result.error("当前项目不允许加钟!");
|
||||
} else if (massageType.getAddNum() > 0) {
|
||||
if (orders1.getAddNum() != null && orders1.getAddNum() >= massageType.getAddNum()) {
|
||||
if (orders1.getAddNum() != null && orders1.getAddNum().intValue() >= massageType.getAddNum().intValue()) {
|
||||
return Result.error("当前项目已超过最大加钟次数!");
|
||||
}
|
||||
}
|
||||
|
@ -4350,7 +4382,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
if (massageType.getAddNum() == null || massageType.getAddNum() == 0) {
|
||||
return Result.error("当前项目不允许加钟!");
|
||||
} else if (massageType.getAddNum() > 0) {
|
||||
if (orders1.getAddNum() != null && orders1.getAddNum() >= massageType.getAddNum()) {
|
||||
if (orders1.getAddNum() != null && orders1.getAddNum().intValue() >= massageType.getAddNum().intValue()) {
|
||||
return Result.error("当前项目已超过最大加钟次数!");
|
||||
}
|
||||
}
|
||||
|
@ -4851,10 +4883,25 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
|
||||
//修改项目销量
|
||||
for (OrdersMassage ordersMassage : ordersMassageList) {
|
||||
MassageType massageType = massageTypeService.getById(ordersMassage.getMassageId());
|
||||
int num = massageType.getSales() == null ? 0 : massageType.getSales();
|
||||
massageType.setSales(num + ordersMassage.getNum());
|
||||
massageTypeService.updateById(massageType);
|
||||
if(orders.getUserPackageDetailId() !=null){
|
||||
UserPackageDetail userPackageDetail = userPackageDetailService.getById(ordersMassage.getMassageId());
|
||||
MassageType massageType = massageTypeService.getById(userPackageDetail.getMassageTypeId());
|
||||
int num = massageType.getSales() == null ? 0 : massageType.getSales();
|
||||
massageType.setSales(num + ordersMassage.getNum());
|
||||
massageTypeService.updateById(massageType);
|
||||
UserPackageDetail userPackageDetailUsed = userPackageDetailService.findMassagePackageDetailsUsed(userPackageDetail.getMainId());
|
||||
if(userPackageDetailUsed.getServiceCount().equals(userPackageDetailUsed.getUsedQuantity())){
|
||||
UserPackage userPackage = new UserPackage();
|
||||
userPackage.setStatus(9);
|
||||
userPackage.setId(userPackageDetail.getMainId());
|
||||
userPackageService.updateById(userPackage);
|
||||
}
|
||||
}else{
|
||||
MassageType massageType = massageTypeService.getById(ordersMassage.getMassageId());
|
||||
int num = massageType.getSales() == null ? 0 : massageType.getSales();
|
||||
massageType.setSales(num + ordersMassage.getNum());
|
||||
massageTypeService.updateById(massageType);
|
||||
}
|
||||
}
|
||||
//修改技师钱包 1是加 2是减
|
||||
UserEntity userEntity = userService.selectUserById(artificer.getUserId());
|
||||
|
@ -4995,6 +5042,17 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
Orders orders2 = new Orders();
|
||||
orders2.setStatus(3);
|
||||
baseMapper.update(orders2,updateWrapper);
|
||||
//修改加钟销量
|
||||
if(orders.getAddMassageTypeId() != null){
|
||||
MassageType addMassageType = massageTypeService.getById(orders.getAddMassageTypeId());
|
||||
Integer addSales = addMassageType.getSales();
|
||||
if(addSales == null){
|
||||
addSales = 0;
|
||||
}
|
||||
addSales = addSales + 1;
|
||||
addMassageType.setSales(addSales);
|
||||
massageTypeService.updateById(addMassageType);
|
||||
}
|
||||
//消息推送
|
||||
List<String> msgList = new ArrayList<>();
|
||||
msgList.add(orders.getOrdersNo());
|
||||
|
@ -5212,9 +5270,21 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersDao, Orders> implements
|
|||
//修改订单下所有加钟的状态为待评价
|
||||
UpdateWrapper<Orders> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq("parent_id", orders.getOrdersId());
|
||||
updateWrapper.notIn("status", "1,4");
|
||||
Orders orders2 = new Orders();
|
||||
orders2.setStatus(3);
|
||||
baseMapper.update(orders2,updateWrapper);
|
||||
//修改加钟销量
|
||||
if(orders.getAddMassageTypeId() != null){
|
||||
MassageType addMassageType = massageTypeService.getById(orders.getAddMassageTypeId());
|
||||
Integer addSales = addMassageType.getSales();
|
||||
if(addSales == null){
|
||||
addSales = 0;
|
||||
}
|
||||
addSales = addSales + 1;
|
||||
addMassageType.setSales(addSales);
|
||||
massageTypeService.updateById(addMassageType);
|
||||
}
|
||||
//消息推送
|
||||
List<String> msgList = new ArrayList<>();
|
||||
msgList.add(orders.getOrdersNo());
|
||||
|
|
|
@ -23,4 +23,6 @@ public interface UserPackageDetailDao extends BaseMapper<UserPackageDetail> {
|
|||
|
||||
UserPackageDetail getMyPackageDetailNoId(Long mainId,Long massageTypeId);
|
||||
|
||||
UserPackageDetail findMassagePackageDetailsUsed(Long mainId);
|
||||
|
||||
}
|
|
@ -125,6 +125,12 @@ public class UserPackage implements Serializable {
|
|||
*/
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 次数
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private Integer serviceCount;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Integer page;
|
||||
|
||||
|
|
|
@ -182,5 +182,11 @@ public class UserPackageDetail implements Serializable {
|
|||
@TableField(exist = false)
|
||||
private Integer limit;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String mainTitle;
|
||||
|
||||
@TableField(exist = false)
|
||||
private BigDecimal mainPrice;
|
||||
|
||||
public UserPackageDetail() {}
|
||||
}
|
||||
|
|
|
@ -12,4 +12,5 @@ public interface UserPackageDetailService extends IService<UserPackageDetail> {
|
|||
int insert(UserPackageDetail userPackageDetail);
|
||||
Result findAppUsedQuantity(UserPackageDetail userPackageDetail);
|
||||
Result getMyPackageDetail(UserPackageDetail userPackageDetail);
|
||||
UserPackageDetail findMassagePackageDetailsUsed(Long mainId);
|
||||
}
|
||||
|
|
|
@ -71,6 +71,8 @@ public class UserPackageDetailServiceImpl extends ServiceImpl<UserPackageDetailD
|
|||
return Result.success().put("data",userPackageDetail);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public UserPackageDetail findMassagePackageDetailsUsed(Long mainId){
|
||||
return findMassagePackageDetailsUsed(mainId);
|
||||
}
|
||||
}
|
|
@ -13,8 +13,10 @@ import com.sqx.modules.app.service.UserMoneyDetailsService;
|
|||
import com.sqx.modules.app.service.UserMoneyService;
|
||||
import com.sqx.modules.app.service.UserVipService;
|
||||
import com.sqx.modules.artificer.entity.Artificer;
|
||||
import com.sqx.modules.artificer.entity.MassageType;
|
||||
import com.sqx.modules.artificer.entity.Orders;
|
||||
import com.sqx.modules.artificer.entity.OrdersMassage;
|
||||
import com.sqx.modules.artificer.service.MassageTypeService;
|
||||
import com.sqx.modules.bl.massage.dao.MassagePackageDetailDao;
|
||||
import com.sqx.modules.bl.massage.entity.MassagePackage;
|
||||
import com.sqx.modules.bl.massage.entity.MassagePackageDetail;
|
||||
|
@ -74,6 +76,9 @@ public class UserPackageOrderServiceImpl extends ServiceImpl<UserPackageOrderDao
|
|||
@Autowired
|
||||
MassagePackageDetailDao massagePackageDetailDao;
|
||||
|
||||
@Autowired
|
||||
MassageTypeService massageTypeService;
|
||||
|
||||
@Autowired
|
||||
private CommonInfoService commonInfoService;
|
||||
|
||||
|
@ -358,6 +363,7 @@ public class UserPackageOrderServiceImpl extends ServiceImpl<UserPackageOrderDao
|
|||
int serviceCount = upd.getServiceCount();
|
||||
for(int k=0;k<serviceCount;k++){
|
||||
userPackageDetailService.insert(upd);
|
||||
updateMassageSale(upd.getMassageTypeId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -370,6 +376,12 @@ public class UserPackageOrderServiceImpl extends ServiceImpl<UserPackageOrderDao
|
|||
return Result.success();
|
||||
}
|
||||
|
||||
private void updateMassageSale(Long massageTypeId){
|
||||
MassageType massageType = massageTypeService.getById(massageTypeId);
|
||||
massageType.setSales(massageType.getSales()+1);
|
||||
massageTypeService.updateById(massageType);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Result findUserPackageOrders(UserPackageOrder userPackageOrder){
|
||||
Page<UserPackageOrder> pages=new Page<>(userPackageOrder.getPage(),userPackageOrder.getLimit());
|
||||
|
|
|
@ -682,6 +682,9 @@ public class AliPayController {
|
|||
int serviceCount = upd.getServiceCount();
|
||||
for(int k=0;k<serviceCount;k++){
|
||||
userPackageDetailService.insert(upd);
|
||||
MassageType massageType = massageTypeService.getById(upd.getMassageTypeId());
|
||||
massageType.setSales(massageType.getSales()+1);
|
||||
massageTypeService.updateById(massageType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1156,6 +1156,9 @@ public class WxServiceImpl implements WxService {
|
|||
int serviceCount = upd.getServiceCount();
|
||||
for(int k=0;k<serviceCount;k++){
|
||||
userPackageDetailService.insert(upd);
|
||||
MassageType massageType = massageTypeService.getById(upd.getMassageTypeId());
|
||||
massageType.setSales(massageType.getSales()+1);
|
||||
massageTypeService.updateById(massageType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -656,7 +656,9 @@
|
|||
</select>
|
||||
|
||||
<select id="selectTodayOrder" resultType="com.sqx.modules.artificer.entity.Orders">
|
||||
select o.*,m.title,m.massage_img as massageImg,
|
||||
select o.*,
|
||||
(case when o.user_package_detail_id is null then m.title else bl.title end ) as title,
|
||||
(case when o.user_package_detail_id is null then m.massage_img else bl.massage_img end ) as massageImg,
|
||||
now() > DATE_ADD(STR_TO_DATE(o.serve_time, '%Y-%m-%d %H:%i'), INTERVAL #{minutes} MINUTE) as is_can_supplement,
|
||||
(case when o.status = 4
|
||||
then o.artificer_money + ifnull(o.add_artificer_money,0)
|
||||
|
@ -666,6 +668,7 @@
|
|||
left join orders o2 on o.old_orders_id = o2.orders_id and o2.status != 4
|
||||
left join orders_massage om on om.orders_id=o.orders_id
|
||||
left join massage_type m on m.massage_type_id=om.massage_id
|
||||
LEFT JOIN bl_user_package_detail bl ON bl.id = om.massage_id
|
||||
where o.artificer_id = #{artificerId}
|
||||
and o.old_orders_id is not null
|
||||
and o.status != 11
|
||||
|
@ -702,14 +705,16 @@
|
|||
<if test="type==5">
|
||||
and date_format(o.serve_time,'%Y-%m-%d') = date_format(now(),'%Y-%m-%d') and o.status=2
|
||||
</if>
|
||||
|
||||
union all
|
||||
select o.*,m.title,m.massage_img as massageImg,
|
||||
select o.*,
|
||||
(case when o.user_package_detail_id is null then m.title else bl.title end ) as title,
|
||||
(case when o.user_package_detail_id is null then m.massage_img else bl.massage_img end ) as massageImg,
|
||||
now() > DATE_ADD(STR_TO_DATE(o.serve_time, '%Y-%m-%d %H:%i'), INTERVAL #{minutes} MINUTE) as is_can_supplement,
|
||||
o.artificer_money + ifnull(o.add_artificer_money,0) as artificer_money_total
|
||||
from orders o
|
||||
left join orders_massage om on om.orders_id=o.orders_id
|
||||
left join massage_type m on m.massage_type_id=om.massage_id
|
||||
LEFT JOIN bl_user_package_detail bl ON bl.id = om.massage_id
|
||||
where o.artificer_id = #{artificerId}
|
||||
and o.parent_id = 0
|
||||
and o.status != 11
|
||||
|
|
|
@ -108,7 +108,8 @@
|
|||
a.classify_id,
|
||||
b.value as classifyName,
|
||||
c.sales,
|
||||
c.esteem_rate
|
||||
c.esteem_rate,
|
||||
(select count(*) from bl_user_package_detail d where d.main_id = a.id) as service_count
|
||||
from bl_user_package a
|
||||
left join sys_dict b on a.classify_id = b.id and b.type="服务类型"
|
||||
left join bl_massage_package c on a.package_id = c.id
|
||||
|
@ -141,7 +142,8 @@
|
|||
a.classify_id,
|
||||
b.value as classifyName,
|
||||
c.sales,
|
||||
c.esteem_rate
|
||||
c.esteem_rate,
|
||||
(select count(*) from bl_user_package_detail d where d.main_id = a.id) as service_count
|
||||
from bl_user_package a
|
||||
left join sys_dict b on a.classify_id = b.id and b.type="服务类型"
|
||||
left join bl_massage_package c on a.package_id = c.id
|
||||
|
|
|
@ -40,7 +40,8 @@
|
|||
round(avg(a.package_price),2) as package_price,
|
||||
round(avg(a.price),2) as price,
|
||||
sum(case a.status when 1 then 1 else 0 end) as usedQuantity,
|
||||
sum(case a.status when 0 then 1 else 0 end) as unUsedQuantity
|
||||
sum(case a.status when 0 then 1 else 0 end) as unUsedQuantity,
|
||||
count(*) as service_count
|
||||
from bl_user_package_detail a
|
||||
where a.main_id = #{mainId}
|
||||
group by a.massage_type_id,a.title,a.massage_img,a.content_img
|
||||
|
@ -57,6 +58,7 @@
|
|||
round(avg(a.price),2) as price,
|
||||
sum(case a.status when 1 then 1 else 0 end) as usedQuantity,
|
||||
sum(case a.status when 0 then 1 else 0 end) as unUsedQuantity,
|
||||
count(*) as service_count,
|
||||
concat(round(count(massage_type_id)*avg(interval_days)),'天一疗程,每隔',round(avg(interval_days)),'天一次,共',round(count(massage_type_id)),'次') as interval_days_str,
|
||||
(select max(end_times) from orders o where a.massage_type_id = o.massage_type_id and b.id = o.user_package_id) as max_time
|
||||
from bl_user_package_detail a
|
||||
|
@ -203,5 +205,13 @@
|
|||
limit 1
|
||||
</select>
|
||||
|
||||
<select id="findMassagePackageDetailsUsed" resultType="com.sqx.modules.bl.order.entity.UserPackageDetail">
|
||||
select
|
||||
sum(case a.status when 1 then 1 else 0 end) as usedQuantity,
|
||||
count(*) as service_count
|
||||
from bl_user_package_detail a
|
||||
where a.main_id = #{mainId}
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
Loading…
Reference in New Issue