This commit is contained in:
admin
2024-08-25 23:58:37 +08:00
parent 436972bed8
commit db46827872
11 changed files with 113 additions and 415 deletions

View File

@@ -4,10 +4,8 @@ import com.starry.admin.common.exception.CustomException;
import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity; import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity;
import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService; import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderRandomInfoEntity;
import com.starry.admin.modules.order.module.vo.*; import com.starry.admin.modules.order.module.vo.*;
import com.starry.admin.modules.order.service.IPlayOrderInfoService; import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRandomInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRefundInfoService; import com.starry.admin.modules.order.service.IPlayOrderRefundInfoService;
import com.starry.admin.modules.shop.module.vo.PlayCommodityInfoVo; import com.starry.admin.modules.shop.module.vo.PlayCommodityInfoVo;
import com.starry.admin.modules.shop.service.IPlayCommodityInfoService; import com.starry.admin.modules.shop.service.IPlayCommodityInfoService;
@@ -35,11 +33,10 @@ import java.math.BigDecimal;
public class PlayOrderInfoController { public class PlayOrderInfoController {
@Resource @Resource
private IPlayOrderInfoService orderInfoService; private IPlayOrderInfoService orderInfoService;
@Resource
private IPlayOrderRandomInfoService playOrderRandomInfoService;
@Resource @Resource
private WxCustomMpService wxCustomMpService; private WxCustomMpService wxCustomMpService;
@Resource @Resource
private IPlayClerkUserInfoService playClerkUserInfoService; private IPlayClerkUserInfoService playClerkUserInfoService;
@@ -133,20 +130,17 @@ public class PlayOrderInfoController {
if (!"1".equals(orderInfo.getPlaceType())) { if (!"1".equals(orderInfo.getPlaceType())) {
throw new CustomException("订单类型错误,无法重新抢单"); throw new CustomException("订单类型错误,无法重新抢单");
} }
PlayOrderRandomInfoEntity randomInfoEntity = new PlayOrderRandomInfoEntity();
randomInfoEntity.setId(vo.getOrderId());
randomInfoEntity.setSex(vo.getSex());
randomInfoEntity.setLevelId(vo.getLevelId());
randomInfoEntity.setExcludeHistory(vo.getExcludeHistory());
randomInfoEntity.setRemark(vo.getRemark());
playOrderRandomInfoService.update(randomInfoEntity);
PlayOrderInfoEntity updateOrderInfo = new PlayOrderInfoEntity(); PlayOrderInfoEntity updateOrderInfo = new PlayOrderInfoEntity();
updateOrderInfo.setId(orderInfo.getId()); updateOrderInfo.setSex(vo.getSex());
updateOrderInfo.setLevelId(vo.getLevelId());
updateOrderInfo.setExcludeHistory(vo.getExcludeHistory());
updateOrderInfo.setRemark(vo.getRemark());
updateOrderInfo.setId(vo.getOrderId());
updateOrderInfo.setOrderStatus("0"); updateOrderInfo.setOrderStatus("0");
updateOrderInfo.setAcceptBy(""); updateOrderInfo.setAcceptBy("");
updateOrderInfo.setEstimatedRevenueRatio(0); updateOrderInfo.setEstimatedRevenueRatio(0);
updateOrderInfo.setEstimatedRevenue(BigDecimal.ZERO); updateOrderInfo.setEstimatedRevenue(BigDecimal.ZERO);
randomInfoEntity.setRemark(vo.getRemark()); updateOrderInfo.setRemark(vo.getRemark());
return R.ok(orderInfoService.update(updateOrderInfo)); return R.ok(orderInfoService.update(updateOrderInfo));
} }

View File

@@ -1,16 +0,0 @@
package com.starry.admin.modules.order.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.starry.admin.modules.order.module.entity.PlayOrderRandomInfoEntity;
/**
* 随机单列表Mapper接口
*
* @author admin
* @since 2024-05-29
*/
public interface PlayOrderRandomInfoMapper extends MPJBaseMapper<PlayOrderRandomInfoEntity> {
}

View File

@@ -297,6 +297,23 @@ public class PlayOrderInfoEntity extends BaseEntity<PlayOrderInfoEntity> {
*/ */
private String ordersExpiredState; private String ordersExpiredState;
/**
* 随机单要求-店员性别0:未知;1:男;2:女)
*/
private String sex;
/**
* 随机单要求-店员等级ID
*/
private String levelId;
/**
* 随机单要求-是否排除下单过的成员0:不排除;1:排除)
*/
private String excludeHistory;
public PlayOrderInfoEntity() { public PlayOrderInfoEntity() {

View File

@@ -1,97 +0,0 @@
package com.starry.admin.modules.order.module.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.starry.admin.common.conf.StringTypeHandler;
import com.starry.common.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
/**
* 随机单列表对象 play_order_random_info
*
* @author admin
* @since 2024-05-29
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "play_order_random_info", autoResultMap = true)
public class PlayOrderRandomInfoEntity extends BaseEntity<PlayOrderRandomInfoEntity> {
/**
* UUID
*/
private String id;
/**
* 租户ID
*/
private String tenantId;
/**
* 店员性别0:未知;1:男;2:女)
*/
private String sex;
/**
* 店员等级ID
*/
private String levelId;
/**
* 标签列表
*/
@TableField(typeHandler = StringTypeHandler.class)
private List<String> labels;
/**
* 商品ID
*/
private String commodityId;
/**
* 商品单价
*/
private BigDecimal commodityPrice;
/**
* 商品属性-服务时长
**/
private String serviceDuration;
/**
* 商品名称
*/
private String commodityName;
/**
* 商品数量
*/
private String commodityNumber;
/**
* 微信号
*/
private String weiChatCode;
/**
* 是否排除下单过的成员0:不排除;1:排除)
*/
private String excludeHistory;
/**
* 备注
*/
private String remark;
/**
* 下单人
*/
private String purchaserBy;
}

View File

@@ -164,7 +164,6 @@ public class PlayOrderDetailsReturnVo {
*/ */
private String firstOrder; private String firstOrder;
/** /**
* 是否评价1已评价;0:未评价) * 是否评价1已评价;0:未评价)
*/ */
@@ -175,5 +174,22 @@ public class PlayOrderDetailsReturnVo {
*/ */
private String complaint = "0"; private String complaint = "0";
/**
* 预计收入
*/
private BigDecimal estimatedRevenue;
/**
* 店员收入比例
*/
private Integer estimatedRevenueRatio;
/**
* 优惠金额
*/
private BigDecimal discountAmount;
} }

View File

@@ -64,10 +64,13 @@ public interface IPlayOrderInfoService extends IService<PlayOrderInfoEntity> {
* @param weiChatCode 订单微信号码 * @param weiChatCode 订单微信号码
* @param couponIds 优惠券ID列表 * @param couponIds 优惠券ID列表
* @param remark 订单备注 * @param remark 订单备注
* @param clerkSex 随机单要求-店员性别0:未知;1:男;2:女)
* @param clerkLevelId 随机单要求-店员等级ID
* @param excludeHistory 随机单要求-是否排除下单过的成员0:不排除;1:排除)
* @author admin * @author admin
* @since 2024/6/3 10:53 * @since 2024/6/3 10:53
**/ **/
void createOrderInfo(String orderId, String orderNo, String orderState, String orderType, String placeType, String rewardType, String firstOrder, String commodityId, String commodityType, BigDecimal commodityPrice, String serviceDuration, String commodityName, String commodityNumber, BigDecimal orderMoney, BigDecimal finalAmount, BigDecimal discountAmount, String purchaserBy, String acceptBy, String weiChatCode, List<String> couponIds, String remark); void createOrderInfo(String orderId, String orderNo, String orderState, String orderType, String placeType, String rewardType, String firstOrder, String commodityId, String commodityType, BigDecimal commodityPrice, String serviceDuration, String commodityName, String commodityNumber, BigDecimal orderMoney, BigDecimal finalAmount, BigDecimal discountAmount, String purchaserBy, String acceptBy, String weiChatCode, List<String> couponIds, String remark, String clerkSex, String clerkLevelId, String excludeHistory);
/** /**
@@ -150,7 +153,7 @@ public interface IPlayOrderInfoService extends IService<PlayOrderInfoEntity> {
/** /**
* 根据订单ID查询订单评价信息 * 根据订单ID查询订单信息
* *
* @param orderId 订单ID * @param orderId 订单ID
* @return 订单信息 * @return 订单信息
@@ -309,9 +312,10 @@ public interface IPlayOrderInfoService extends IService<PlayOrderInfoEntity> {
* 查询未接单的订单 * 查询未接单的订单
* *
* @param vo 查询对象 * @param vo 查询对象
* @param clerkId 店员ID
* @return 订单列表 * @return 订单列表
*/ */
IPage<PlayOrderInfoEntity> selectRandomOrderByPage(PlayOrderInfoRandomQueryVo vo); IPage<PlayOrderInfoEntity> selectRandomOrderByPage(PlayOrderInfoRandomQueryVo vo, String clerkId);
/** /**
* 分页获取打赏动态 * 分页获取打赏动态

View File

@@ -1,83 +0,0 @@
package com.starry.admin.modules.order.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.starry.admin.modules.order.module.entity.PlayOrderRandomInfoEntity;
import com.starry.admin.modules.weichat.entity.order.PlayClerkRandomOrderDetailReturnVo;
import com.starry.admin.modules.weichat.entity.order.PlayOrderInfoRandomQueryVo;
import com.starry.admin.modules.weichat.entity.order.PlayRandomOrderInfoReturnVo;
/**
* 随机单列表Service接口
*
* @author admin
* @since 2024-05-29
*/
public interface IPlayOrderRandomInfoService extends IService<PlayOrderRandomInfoEntity> {
/**
* 查询随机单列表
*
* @param id 随机单列表主键
* @return 随机单列表
*/
PlayOrderRandomInfoEntity selectPlayOrderRandomInfoById(String id);
/**
* 查询随机单列表列表
*
* @param playOrderRandomInfo 随机单列表
* @return 随机单列表集合
*/
IPage<PlayOrderRandomInfoEntity> selectPlayOrderRandomInfoByPage(PlayOrderRandomInfoEntity playOrderRandomInfo);
/**
* 分页查询随机单列表
*
* @param vo 随机单分页查询订单对象
* @return 随机单列表集合
*/
IPage<PlayRandomOrderInfoReturnVo> selectByPage(PlayOrderInfoRandomQueryVo vo);
/**
* 查询随机单详情
*
* @param id 订单ID
* @param clerkId 店员ID
* @return com.starry.admin.modules.weichat.entity.order.PlayClerkOrderListReturnVo
* @author admin
* @since 2024/5/30 9:55
**/
PlayClerkRandomOrderDetailReturnVo clerkSelectOrderDetails(String id, String clerkId);
/**
* 新增随机单列表
*
* @param playOrderRandomInfo 随机单列表
* @return 结果
*/
boolean create(PlayOrderRandomInfoEntity playOrderRandomInfo);
/**
* 修改随机单列表
*
* @param playOrderRandomInfo 随机单列表
* @return 结果
*/
boolean update(PlayOrderRandomInfoEntity playOrderRandomInfo);
/**
* 批量删除随机单列表
*
* @param ids 需要删除的随机单列表主键集合
* @return 结果
*/
int deletePlayOrderRandomInfoByIds(String[] ids);
/**
* 删除随机单列表信息
*
* @param id 随机单列表主键
* @return 结果
*/
int deletePlayOrderRandomInfoById(String id);
}

View File

@@ -9,15 +9,22 @@ import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.starry.admin.common.exception.CustomException; import com.starry.admin.common.exception.CustomException;
import com.starry.admin.modules.clerk.module.entity.PlayClerkLevelInfoEntity; import com.starry.admin.modules.clerk.module.entity.PlayClerkLevelInfoEntity;
import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity; import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity;
import com.starry.admin.modules.clerk.service.IPlayClerkLevelInfoService;
import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService; import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService;
import com.starry.admin.modules.custom.module.entity.PlayCustomLevelInfoEntity; import com.starry.admin.modules.custom.module.entity.PlayCustomLevelInfoEntity;
import com.starry.admin.modules.custom.module.entity.PlayCustomUserInfoEntity; import com.starry.admin.modules.custom.module.entity.PlayCustomUserInfoEntity;
import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService; import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService;
import com.starry.admin.modules.order.mapper.PlayOrderInfoMapper; import com.starry.admin.modules.order.mapper.PlayOrderInfoMapper;
import com.starry.admin.modules.order.module.constant.OrderConstant; import com.starry.admin.modules.order.module.constant.OrderConstant;
import com.starry.admin.modules.order.module.entity.*; import com.starry.admin.modules.order.module.entity.PlayOrderComplaintInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderEvaluateInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderRefundInfoEntity;
import com.starry.admin.modules.order.module.vo.*; import com.starry.admin.modules.order.module.vo.*;
import com.starry.admin.modules.order.service.*; import com.starry.admin.modules.order.service.IPlayOrderComplaintInfoService;
import com.starry.admin.modules.order.service.IPlayOrderEvaluateInfoService;
import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRefundInfoService;
import com.starry.admin.modules.personnel.service.IPlayPersonnelGroupInfoService; import com.starry.admin.modules.personnel.service.IPlayPersonnelGroupInfoService;
import com.starry.admin.modules.shop.module.vo.PlayCouponDetailsReturnVo; import com.starry.admin.modules.shop.module.vo.PlayCouponDetailsReturnVo;
import com.starry.admin.modules.shop.service.IPlayCouponDetailsService; import com.starry.admin.modules.shop.service.IPlayCouponDetailsService;
@@ -36,7 +43,10 @@ import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.starry.admin.modules.order.module.constant.OrderConstant.ORDER_STATUS_2; import static com.starry.admin.modules.order.module.constant.OrderConstant.ORDER_STATUS_2;
@@ -67,8 +77,7 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
private IPlayOrderComplaintInfoService playOrderComplaintInfoService; private IPlayOrderComplaintInfoService playOrderComplaintInfoService;
@Resource @Resource
private IPlayPersonnelGroupInfoService playClerkGroupInfoService; private IPlayPersonnelGroupInfoService playClerkGroupInfoService;
@Resource
private IPlayOrderRandomInfoService playOrderRandomInfoService;
@Resource @Resource
private IPlayCouponDetailsService playCouponDetailsService; private IPlayCouponDetailsService playCouponDetailsService;
@@ -78,6 +87,9 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
@Resource @Resource
private IPlayCustomUserInfoService customUserInfoService; private IPlayCustomUserInfoService customUserInfoService;
@Resource
private IPlayClerkLevelInfoService playClerkLevelInfoService;
@Override @Override
public List<PlayOrderInfoEntity> getTotalOrderInfo(String tenantId) { public List<PlayOrderInfoEntity> getTotalOrderInfo(String tenantId) {
@@ -87,7 +99,7 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
} }
@Override @Override
public void createOrderInfo(String orderId, String orderNo, String orderState, String orderType, String placeType, String rewardType, String firstOrder, String commodityId, String commodityType, BigDecimal commodityPrice, String serviceDuration, String commodityName, String commodityNumber, BigDecimal orderMoney, BigDecimal finalAmount, BigDecimal discountAmount, String purchaserBy, String acceptBy, String weiChatCode, List<String> couponIds, String remark) { public void createOrderInfo(String orderId, String orderNo, String orderState, String orderType, String placeType, String rewardType, String firstOrder, String commodityId, String commodityType, BigDecimal commodityPrice, String serviceDuration, String commodityName, String commodityNumber, BigDecimal orderMoney, BigDecimal finalAmount, BigDecimal discountAmount, String purchaserBy, String acceptBy, String weiChatCode, List<String> couponIds, String remark, String clerkSex, String clerkLevelId, String excludeHistory) {
PlayOrderInfoEntity entity = new PlayOrderInfoEntity(); PlayOrderInfoEntity entity = new PlayOrderInfoEntity();
entity.setId(orderId); entity.setId(orderId);
entity.setOrderNo(orderNo); entity.setOrderNo(orderNo);
@@ -116,6 +128,11 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
entity.setPurchaserTime(LocalDateTime.now()); entity.setPurchaserTime(LocalDateTime.now());
entity.setCouponIds(couponIds); entity.setCouponIds(couponIds);
entity.setUseCoupon(couponIds != null && !couponIds.isEmpty() ? "1" : "0"); entity.setUseCoupon(couponIds != null && !couponIds.isEmpty() ? "1" : "0");
if ("1".equals(placeType)) {
entity.setSex(clerkSex);
entity.setLevelId(clerkLevelId);
entity.setExcludeHistory(excludeHistory);
}
if (StrUtil.isNotBlank(acceptBy)) { if (StrUtil.isNotBlank(acceptBy)) {
entity.setAcceptBy(acceptBy); entity.setAcceptBy(acceptBy);
ClerkEstimatedRevenueVo estimatedRevenueVo = getClerkEstimatedRevenue(acceptBy, couponIds, placeType, firstOrder, finalAmount); ClerkEstimatedRevenueVo estimatedRevenueVo = getClerkEstimatedRevenue(acceptBy, couponIds, placeType, firstOrder, finalAmount);
@@ -392,10 +409,14 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
@Override @Override
public IPage<PlayOrderInfoEntity> selectRandomOrderByPage(PlayOrderInfoRandomQueryVo vo) { public IPage<PlayOrderInfoEntity> selectRandomOrderByPage(PlayOrderInfoRandomQueryVo vo, String clerkId) {
PlayClerkUserInfoEntity entity = playClerkUserInfoService.getById(clerkId);
LambdaQueryWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getPlaceType, "1"); lambdaQueryWrapper.eq(PlayOrderInfoEntity::getPlaceType, "1");
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getOrderStatus, "0"); lambdaQueryWrapper.eq(PlayOrderInfoEntity::getOrderStatus, "0");
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getLevelId, entity.getLevelId());
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getSex, entity.getSex());
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getExcludeHistory, "0").or(wrapper1 -> wrapper1.ne(PlayOrderInfoEntity::getAcceptBy, clerkId).and(wrapper2 -> wrapper2.eq(PlayOrderInfoEntity::getExcludeHistory, 1)));
return this.baseMapper.selectPage(new Page<>(vo.getPageNum(), vo.getPageSize()), lambdaQueryWrapper); return this.baseMapper.selectPage(new Page<>(vo.getPageNum(), vo.getPageSize()), lambdaQueryWrapper);
} }
@@ -432,7 +453,7 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
@Override @Override
public PlayOrderDetailsReturnVo selectById(String orderId) { public PlayOrderDetailsReturnVo selectById(String orderId) {
MPJLambdaWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new MPJLambdaWrapper<PlayOrderInfoEntity>(); MPJLambdaWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new MPJLambdaWrapper<>();
// 查询主表全部字段 // 查询主表全部字段
lambdaQueryWrapper.selectAll(PlayOrderInfoEntity.class); lambdaQueryWrapper.selectAll(PlayOrderInfoEntity.class);
// 查询顾客表 // 查询顾客表
@@ -478,18 +499,7 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
// 加入组员的筛选 // 加入组员的筛选
List<String> clerkIdList = playClerkGroupInfoService.getValidClerkIdList(SecurityUtils.getLoginUser(), vo.getClerkNickName()); List<String> clerkIdList = playClerkGroupInfoService.getValidClerkIdList(SecurityUtils.getLoginUser(), vo.getClerkNickName());
lambdaQueryWrapper.in(PlayOrderInfoEntity::getAcceptBy, clerkIdList); lambdaQueryWrapper.in(PlayOrderInfoEntity::getAcceptBy, clerkIdList);
return this.baseMapper.selectJoinPage(new Page<>(vo.getPageNum(), vo.getPageSize()), PlayOrderInfoReturnVo.class, lambdaQueryWrapper);
Page<PlayOrderInfoReturnVo> page = this.baseMapper.selectJoinPage(new Page<>(vo.getPageNum(), vo.getPageSize()), PlayOrderInfoReturnVo.class, lambdaQueryWrapper);
page.getRecords().forEach(ca -> {
if ("1".equals(ca.getPlaceType())) {
PlayOrderRandomInfoEntity randomInfo = playOrderRandomInfoService.getById(ca.getId());
if (Objects.nonNull(randomInfo)) {
ca.setLabels(randomInfo.getLabels());
}
}
});
return page;
} }
@@ -642,6 +652,26 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
throw new CustomException("禁止操作"); throw new CustomException("禁止操作");
} }
PlayOrderInfoEntity orderInfo = this.selectOrderInfoById(orderId); PlayOrderInfoEntity orderInfo = this.selectOrderInfoById(orderId);
PlayClerkUserInfoEntity clerkUserInfoEntity = playClerkUserInfoService.selectById(acceptBy);
//店员接单时,判断店员是否符合资格
if ("1".equals(operatorByType) && "1".equals(orderInfo.getPlaceType())) {
//判断店员等级是否符合规则
if (orderInfo.getLevelId().equals(clerkUserInfoEntity.getLevelId())) {
PlayClerkLevelInfoEntity levelInfo = playClerkLevelInfoService.selectPlayClerkLevelInfoById(orderInfo.getLevelId());
throw new CustomException("等级为" + levelInfo.getName() + "的店员才可接单");
}
//判断店员性别是否符合规则
if (orderInfo.getSex().equals(clerkUserInfoEntity.getSex())) {
String sex = "0".equals(orderInfo.getSex()) ? "未知" : "1".equals(orderInfo.getSex()) ? "" : "";
throw new CustomException("性别为" + sex + "的店员才可接单");
}
//如果排除已下单的店员
LambdaQueryWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getAcceptBy, acceptBy);
if ("1".equals(orderInfo.getExcludeHistory()) && this.baseMapper.selectOne(lambdaQueryWrapper) != null) {
throw new CustomException("只有未接单的店员才可接单");
}
}
PlayOrderInfoEntity entity = new PlayOrderInfoEntity(orderId, OrderConstant.ORDER_STATUS_1); PlayOrderInfoEntity entity = new PlayOrderInfoEntity(orderId, OrderConstant.ORDER_STATUS_1);
entity.setAcceptBy(acceptBy); entity.setAcceptBy(acceptBy);
entity.setAcceptTime(LocalDateTime.now()); entity.setAcceptTime(LocalDateTime.now());
@@ -650,9 +680,8 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
entity.setEstimatedRevenueRatio(estimatedRevenueVo.getRevenueRatio()); entity.setEstimatedRevenueRatio(estimatedRevenueVo.getRevenueRatio());
this.baseMapper.updateById(entity); this.baseMapper.updateById(entity);
// 接单后,发送微信消息 // 接单后,发送微信消息
PlayCustomUserInfoEntity customUserInfo = playCustomUserInfoService.selectById(orderInfo.getPurchaserBy()); PlayCustomUserInfoEntity customUserInfo = playCustomUserInfoService.selectById(orderInfo.getPurchaserBy());
PlayClerkUserInfoEntity clerkUserInfoEntity = playClerkUserInfoService.selectById(acceptBy);
wxCustomMpService.sendOrderMessage(customUserInfo.getTenantId(), customUserInfo.getOpenid(), "0", clerkUserInfoEntity.getNickname(), orderInfo.getOrderNo(), orderInfo.getId(), orderInfo.getOrderMoney().toString()); wxCustomMpService.sendOrderMessage(customUserInfo.getTenantId(), customUserInfo.getOpenid(), "0", clerkUserInfoEntity.getNickname(), orderInfo.getOrderNo(), orderInfo.getId(), orderInfo.getOrderMoney().toString());
} }
@@ -727,16 +756,12 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateStateTo4(String operatorByType, String operatorBy, String orderId, String refundReason, List<String> images) { public void updateStateTo4(String operatorByType, String operatorBy, String orderId, String refundReason, List<String> images) {
PlayOrderInfoEntity orderInfo = this.selectOrderInfoById(orderId); PlayOrderInfoEntity orderInfo = this.selectOrderInfoById(orderId);
if ("0".equals(operatorByType)) { if ("0".equals(operatorByType) && !operatorBy.equals(orderInfo.getPurchaserBy())) {
if (!orderInfo.getPurchaserBy().equals(operatorBy)) {
throw new CustomException("只能操作本人订单"); throw new CustomException("只能操作本人订单");
} }
} if ("1".equals(operatorByType) && !operatorBy.equals(orderInfo.getAcceptBy())) {
if ("1".equals(operatorByType)) {
if (!orderInfo.getAcceptBy().equals(operatorBy)) {
throw new CustomException("只能操作本人订单"); throw new CustomException("只能操作本人订单");
} }
}
// 取消订单(必须订单未接单或者为开始状态) // 取消订单(必须订单未接单或者为开始状态)
if (!orderInfo.getOrderStatus().equals(OrderConstant.ORDER_STATUS_0) && !orderInfo.getOrderStatus().equals(OrderConstant.ORDER_STATUS_1)) { if (!orderInfo.getOrderStatus().equals(OrderConstant.ORDER_STATUS_0) && !orderInfo.getOrderStatus().equals(OrderConstant.ORDER_STATUS_1)) {
throw new CustomException("订单状态异常,无法取消"); throw new CustomException("订单状态异常,无法取消");

View File

@@ -1,136 +0,0 @@
package com.starry.admin.modules.order.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.starry.admin.modules.order.mapper.PlayOrderRandomInfoMapper;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderRandomInfoEntity;
import com.starry.admin.modules.order.module.vo.ClerkEstimatedRevenueVo;
import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRandomInfoService;
import com.starry.admin.modules.weichat.entity.order.PlayClerkRandomOrderDetailReturnVo;
import com.starry.admin.modules.weichat.entity.order.PlayOrderInfoRandomQueryVo;
import com.starry.admin.modules.weichat.entity.order.PlayRandomOrderInfoReturnVo;
import com.starry.common.utils.IdUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Arrays;
/**
* 随机单列表Service业务层处理
*
* @author admin
* @since 2024-05-29
*/
@Service
public class PlayOrderRandomInfoServiceImpl extends ServiceImpl<PlayOrderRandomInfoMapper, PlayOrderRandomInfoEntity> implements IPlayOrderRandomInfoService {
@Resource
private PlayOrderRandomInfoMapper playOrderRandomInfoMapper;
@Resource
private IPlayOrderInfoService playOrderInfoService;
/**
* 查询随机单列表
*
* @param id 随机单列表主键
* @return 随机单列表
*/
@Override
public PlayOrderRandomInfoEntity selectPlayOrderRandomInfoById(String id) {
return this.baseMapper.selectById(id);
}
/**
* 查询随机单列表列表
*
* @param playOrderRandomInfo 随机单列表
* @return 随机单列表
*/
@Override
public IPage<PlayOrderRandomInfoEntity> selectPlayOrderRandomInfoByPage(PlayOrderRandomInfoEntity playOrderRandomInfo) {
Page<PlayOrderRandomInfoEntity> page = new Page<>(1, 10);
return this.baseMapper.selectPage(page, new LambdaQueryWrapper<PlayOrderRandomInfoEntity>());
}
@Override
public PlayClerkRandomOrderDetailReturnVo clerkSelectOrderDetails(String id, String clerkId) {
MPJLambdaWrapper<PlayOrderRandomInfoEntity> lambdaWrapper = new MPJLambdaWrapper<>();
lambdaWrapper.selectAll(PlayOrderRandomInfoEntity.class);
lambdaWrapper.selectAll(PlayOrderInfoEntity.class);
lambdaWrapper.leftJoin(PlayOrderInfoEntity.class, PlayOrderInfoEntity::getId, PlayOrderRandomInfoEntity::getId);
lambdaWrapper.eq(PlayOrderRandomInfoEntity::getId, id);
PlayClerkRandomOrderDetailReturnVo vo = this.baseMapper.selectJoinOne(PlayClerkRandomOrderDetailReturnVo.class, lambdaWrapper);
PlayOrderInfoEntity orderInfo = playOrderInfoService.selectOrderInfoById(id);
ClerkEstimatedRevenueVo estimatedRevenueVo = playOrderInfoService.getClerkEstimatedRevenue(clerkId, orderInfo.getCouponIds(), orderInfo.getPlaceType(), orderInfo.getFirstOrder(), orderInfo.getFinalAmount());
vo.setEstimatedRevenue(estimatedRevenueVo.getRevenueAmount());
vo.setEstimatedRevenueRatio(estimatedRevenueVo.getRevenueRatio());
return vo;
}
@Override
public IPage<PlayRandomOrderInfoReturnVo> selectByPage(PlayOrderInfoRandomQueryVo vo) {
MPJLambdaWrapper<PlayOrderRandomInfoEntity> lambdaWrapper = new MPJLambdaWrapper<>();
// 查询随机单全部字段
lambdaWrapper.selectAll(PlayOrderRandomInfoEntity.class);
// 订单表
lambdaWrapper.selectAll(PlayOrderInfoEntity.class);
lambdaWrapper.leftJoin(PlayOrderInfoEntity.class, PlayOrderInfoEntity::getId, PlayOrderRandomInfoEntity::getId);
lambdaWrapper.eq(PlayOrderInfoEntity::getOrderStatus, "0");
return this.baseMapper.selectJoinPage(new Page<>(vo.getPageNum(), vo.getPageSize()), PlayRandomOrderInfoReturnVo.class, lambdaWrapper);
}
/**
* 新增随机单列表
*
* @param playOrderRandomInfo 随机单列表
* @return 结果
*/
@Override
public boolean create(PlayOrderRandomInfoEntity playOrderRandomInfo) {
if (StrUtil.isBlankIfStr(playOrderRandomInfo.getId())) {
playOrderRandomInfo.setId(IdUtils.getUuid());
}
return save(playOrderRandomInfo);
}
/**
* 修改随机单列表
*
* @param playOrderRandomInfo 随机单列表
* @return 结果
*/
@Override
public boolean update(PlayOrderRandomInfoEntity playOrderRandomInfo) {
return updateById(playOrderRandomInfo);
}
/**
* 批量删除随机单列表
*
* @param ids 需要删除的随机单列表主键
* @return 结果
*/
@Override
public int deletePlayOrderRandomInfoByIds(String[] ids) {
return playOrderRandomInfoMapper.deleteBatchIds(Arrays.asList(ids));
}
/**
* 删除随机单列表信息
*
* @param id 随机单列表主键
* @return 结果
*/
@Override
public int deletePlayOrderRandomInfoById(String id) {
return playOrderRandomInfoMapper.deleteById(id);
}
}

View File

@@ -23,11 +23,9 @@ import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService;
import com.starry.admin.modules.order.module.entity.PlayOrderComplaintInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderComplaintInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderEvaluateInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderEvaluateInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderRandomInfoEntity;
import com.starry.admin.modules.order.service.IPlayOrderComplaintInfoService; import com.starry.admin.modules.order.service.IPlayOrderComplaintInfoService;
import com.starry.admin.modules.order.service.IPlayOrderEvaluateInfoService; import com.starry.admin.modules.order.service.IPlayOrderEvaluateInfoService;
import com.starry.admin.modules.order.service.IPlayOrderInfoService; import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRandomInfoService;
import com.starry.admin.modules.shop.module.entity.PlayClerkGiftInfoEntity; import com.starry.admin.modules.shop.module.entity.PlayClerkGiftInfoEntity;
import com.starry.admin.modules.shop.module.entity.PlayCouponInfoEntity; import com.starry.admin.modules.shop.module.entity.PlayCouponInfoEntity;
import com.starry.admin.modules.shop.module.entity.PlayGiftInfoEntity; import com.starry.admin.modules.shop.module.entity.PlayGiftInfoEntity;
@@ -105,8 +103,6 @@ public class WxCustomController {
@Resource @Resource
private IPlayOrderEvaluateInfoService playOrderEvaluateInfoService; private IPlayOrderEvaluateInfoService playOrderEvaluateInfoService;
@Resource
private IPlayOrderRandomInfoService playOrderRandomInfoService;
@Resource @Resource
private IPlayCustomGiftInfoService playCustomGiftInfoService; private IPlayCustomGiftInfoService playCustomGiftInfoService;
@@ -206,19 +202,14 @@ public class WxCustomController {
MoneyUtils.verificationTypeIsNormal(vo.getMoney()); MoneyUtils.verificationTypeIsNormal(vo.getMoney());
String userId = ThreadLocalRequestDetail.getCustomUserInfo().getId(); String userId = ThreadLocalRequestDetail.getCustomUserInfo().getId();
PlayCustomUserInfoEntity customUserInfo = customUserInfoService.selectById(userId); PlayCustomUserInfoEntity customUserInfo = customUserInfoService.selectById(userId);
PlayClerkUserInfoEntity clerkUserInfo = clerkUserInfoService.selectById(vo.getClerkId());
if (new BigDecimal(vo.getMoney()).compareTo(customUserInfo.getAccountBalance()) > 0) { if (new BigDecimal(vo.getMoney()).compareTo(customUserInfo.getAccountBalance()) > 0) {
throw new ServiceException("余额不足", 998); throw new ServiceException("余额不足", 998);
} }
String orderId = IdUtils.getUuid(); String orderId = IdUtils.getUuid();
// 记录订单信息 // 记录订单信息
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "0", "1", "", "0", BigDecimal.ZERO, "", "", "0", new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(), vo.getRemark()); playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "0", "1", "", "0", BigDecimal.ZERO, "", "", "0", new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(), vo.getRemark(), "", "", "");
//
// playOrderInfoService.createRewardOrder(orderId, new BigDecimal(vo.getMoney()), new BigDecimal(vo.getMoney()), userId, clerkUserInfo.getId(), vo.getRemark(), vo.getWeiChatCode());
// 顾客减少余额 // 顾客减少余额
customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(new BigDecimal(vo.getMoney())), "1", "打赏", new BigDecimal(vo.getMoney()), BigDecimal.ZERO, orderId); customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(new BigDecimal(vo.getMoney())), "1", "打赏", new BigDecimal(vo.getMoney()), BigDecimal.ZERO, orderId);
// 陪聊增加余额
// clerkUserInfoService.updateAccountBalanceById(clerkUserInfo.getId(), clerkUserInfo.getAccountBalance(), clerkUserInfo.getAccountBalance().add(new BigDecimal(vo.getMoney())), "2", "打赏", new BigDecimal(vo.getMoney()), orderId);
return R.ok("成功"); return R.ok("成功");
} }
@@ -232,20 +223,16 @@ public class WxCustomController {
String userId = ThreadLocalRequestDetail.getCustomUserInfo().getId(); String userId = ThreadLocalRequestDetail.getCustomUserInfo().getId();
PlayGiftInfoEntity giftInfo = giftInfoService.selectPlayGiftInfoById(vo.getGiftId()); PlayGiftInfoEntity giftInfo = giftInfoService.selectPlayGiftInfoById(vo.getGiftId());
PlayCustomUserInfoEntity customUserInfo = customUserInfoService.selectById(userId); PlayCustomUserInfoEntity customUserInfo = customUserInfoService.selectById(userId);
PlayClerkUserInfoEntity clerkUserInfo = clerkUserInfoService.selectById(vo.getClerkId());
BigDecimal money = giftInfo.getPrice().multiply(new BigDecimal(vo.getGiftQuantity())); BigDecimal money = giftInfo.getPrice().multiply(new BigDecimal(vo.getGiftQuantity()));
if (money.compareTo(customUserInfo.getAccountBalance()) > 0) { if (money.compareTo(customUserInfo.getAccountBalance()) > 0) {
throw new ServiceException("余额不足", 998); throw new ServiceException("余额不足", 998);
} }
String orderId = IdUtils.getUuid(); String orderId = IdUtils.getUuid();
// 记录订单信息 // 记录订单信息
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "1", "1", giftInfo.getId(), "0", giftInfo.getPrice(), "", giftInfo.getName(), String.valueOf(vo.getGiftQuantity()), money, money, BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(), vo.getRemark()); playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "3", "2", "2", "1", "1", giftInfo.getId(), "0", giftInfo.getPrice(), "", giftInfo.getName(), String.valueOf(vo.getGiftQuantity()), money, money, BigDecimal.ZERO, userId, vo.getClerkId(), vo.getWeiChatCode(), new ArrayList<>(), vo.getRemark(), "", "", "");
// playOrderInfoService.createGiftOrder(orderId, vo.getGiftId(), giftInfo.getPrice(), String.valueOf(vo.getGiftQuantity()), money, money, userId, clerkUserInfo.getId(), vo.getRemark(), vo.getWeiChatCode());
// 顾客减少余额 // 顾客减少余额
customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "赠送礼物", money, BigDecimal.ZERO, orderId); customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "赠送礼物", money, BigDecimal.ZERO, orderId);
// 陪聊增加余额 // 陪聊增加余额
// clerkUserInfoService.updateAccountBalanceById(clerkUserInfo.getId(), clerkUserInfo.getAccountBalance(), clerkUserInfo.getAccountBalance().add(money), "2", "赠送礼物", money, orderId);
// 修改顾客和礼物消息 // 修改顾客和礼物消息
PlayCustomGiftInfoEntity customGiftInfoEntity = playCustomGiftInfoService.selectByGiftIdAndCustomId(vo.getGiftId(), userId); PlayCustomGiftInfoEntity customGiftInfoEntity = playCustomGiftInfoService.selectByGiftIdAndCustomId(vo.getGiftId(), userId);
if (customGiftInfoEntity == null) { if (customGiftInfoEntity == null) {
@@ -311,12 +298,11 @@ public class WxCustomController {
String orderId = IdUtils.getUuid(); String orderId = IdUtils.getUuid();
String orderNo = playOrderInfoService.getOrderNo(); String orderNo = playOrderInfoService.getOrderNo();
// 记录订单信息 // 记录订单信息
playOrderInfoService.createOrderInfo(orderId, orderNo, "0", "2", "0", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, clerkUserInfo.getId(), vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark()); playOrderInfoService.createOrderInfo(orderId, orderNo, "0", "2", "0", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, clerkUserInfo.getId(), vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark(), "", "", "");
// 顾客减少余额 // 顾客减少余额
customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "下单-指定单", money, BigDecimal.ZERO, orderId); customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "下单-指定单", money, BigDecimal.ZERO, orderId);
// 发送通知给店员 // 发送通知给店员
wxCustomMpService.sendCreateOrderMessage(clerkUserInfo.getTenantId(), clerkUserInfo.getOpenid(), clerkUserInfo.getNickname(), orderNo, orderId, DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"), money.toString(), commodityInfo.getCommodityName()); wxCustomMpService.sendCreateOrderMessage(clerkUserInfo.getTenantId(), clerkUserInfo.getOpenid(), clerkUserInfo.getNickname(), orderNo, orderId, DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"), money.toString(), commodityInfo.getCommodityName());
// wxCustomMpService.sendNewOrderMessageForClerk(clerkUserInfo, orderNo, commodityInfo.getCommodityName(), money);
return R.ok("成功"); return R.ok("成功");
} }
@@ -339,19 +325,8 @@ public class WxCustomController {
throw new ServiceException("余额不足", 998); throw new ServiceException("余额不足", 998);
} }
String orderId = IdUtils.getUuid(); String orderId = IdUtils.getUuid();
PlayOrderRandomInfoEntity orderRandomInfo = ConvertUtil.entityToVo(vo, PlayOrderRandomInfoEntity.class);
orderRandomInfo.setCommodityId(commodityInfo.getCommodityId());
orderRandomInfo.setCommodityName(commodityInfo.getCommodityName());
orderRandomInfo.setCommodityPrice(commodityInfo.getCommodityPrice());
orderRandomInfo.setCommodityNumber(String.valueOf(vo.getCommodityQuantity()));
orderRandomInfo.setServiceDuration(commodityInfo.getServiceDuration());
orderRandomInfo.setId(orderId);
playOrderRandomInfoService.create(orderRandomInfo);
// 记录订单信息 // 记录订单信息
playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "1", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, "", vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark()); playOrderInfoService.createOrderInfo(orderId, playOrderInfoService.getOrderNo(), "0", "2", "1", "", "1", commodityInfo.getCommodityId(), "1", commodityInfo.getCommodityPrice(), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), String.valueOf(vo.getCommodityQuantity()), money, money, BigDecimal.ZERO, customId, "", vo.getWeiChatCode(), vo.getCouponIds(), vo.getRemark(), vo.getSex(), vo.getLevelId(), vo.getExcludeHistory());
// playOrderInfoService.createRandomOrder(orderId, customUserInfo.getId(), commodityInfo.getCommodityPrice(), String.valueOf(vo.getCommodityQuantity()), commodityInfo.getServiceDuration(), commodityInfo.getCommodityName(), money, money, customId, vo.getRemark(), vo.getWeiChatCode());
// 顾客减少余额 // 顾客减少余额
customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "下单-随机单", money, BigDecimal.ZERO, orderId); customUserInfoService.updateAccountBalanceById(customUserInfo.getId(), customUserInfo.getAccountBalance(), customUserInfo.getAccountBalance().subtract(money), "1", "下单-随机单", money, BigDecimal.ZERO, orderId);
// 记录订单,指定指定未接单后,进行退款处理 // 记录订单,指定指定未接单后,进行退款处理

View File

@@ -9,11 +9,14 @@ import com.starry.admin.modules.order.module.entity.PlayOrderContinueInfoEntity;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.order.module.vo.PlayOrderContinueQueryVo; import com.starry.admin.modules.order.module.vo.PlayOrderContinueQueryVo;
import com.starry.admin.modules.order.module.vo.PlayOrderContinueReturnVo; import com.starry.admin.modules.order.module.vo.PlayOrderContinueReturnVo;
import com.starry.admin.modules.order.module.vo.PlayOrderDetailsReturnVo;
import com.starry.admin.modules.order.module.vo.PlayOrderReviewStateEditVo; import com.starry.admin.modules.order.module.vo.PlayOrderReviewStateEditVo;
import com.starry.admin.modules.order.service.IPlayOrderContinueInfoService; import com.starry.admin.modules.order.service.IPlayOrderContinueInfoService;
import com.starry.admin.modules.order.service.IPlayOrderInfoService; import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.admin.modules.order.service.IPlayOrderRandomInfoService; import com.starry.admin.modules.weichat.entity.order.PlayOrderInfoContinueAdd;
import com.starry.admin.modules.weichat.entity.order.*; import com.starry.admin.modules.weichat.entity.order.PlayOrderInfoContinueQueryVo;
import com.starry.admin.modules.weichat.entity.order.PlayOrderInfoRandomQueryVo;
import com.starry.admin.modules.weichat.entity.order.PlayRewardOrderQueryVo;
import com.starry.common.result.R; import com.starry.common.result.R;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@@ -41,10 +44,6 @@ public class WxOrderInfoController {
private IPlayOrderContinueInfoService playOrderContinueInfoService; private IPlayOrderContinueInfoService playOrderContinueInfoService;
@Resource
private IPlayOrderRandomInfoService playOrderRandomInfoService;
/** /**
* 续单申请-店员发起 * 续单申请-店员发起
* *
@@ -89,7 +88,7 @@ public class WxOrderInfoController {
@ClerkUserLogin @ClerkUserLogin
@PostMapping("/clerk/selectRandomOrderByPage") @PostMapping("/clerk/selectRandomOrderByPage")
public R selectUnacceptedOrderByPage(@Validated @RequestBody PlayOrderInfoRandomQueryVo vo) { public R selectUnacceptedOrderByPage(@Validated @RequestBody PlayOrderInfoRandomQueryVo vo) {
return R.ok(playOrderRandomInfoService.selectByPage(vo)); return R.ok(playOrderInfoService.selectRandomOrderByPage(vo,ThreadLocalRequestDetail.getClerkUserInfo().getId()));
} }
/** /**
@@ -101,7 +100,7 @@ public class WxOrderInfoController {
@ClerkUserLogin @ClerkUserLogin
@GetMapping("/clerk/selectRandomOrderById") @GetMapping("/clerk/selectRandomOrderById")
public R selectUnacceptedOrderByPage(@RequestParam("id") String id) { public R selectUnacceptedOrderByPage(@RequestParam("id") String id) {
PlayClerkRandomOrderDetailReturnVo vo = playOrderRandomInfoService.clerkSelectOrderDetails(id,ThreadLocalRequestDetail.getClerkUserInfo().getId()); PlayOrderDetailsReturnVo vo = playOrderInfoService.selectById(id);
if (vo == null) { if (vo == null) {
throw new CustomException("订单不存在"); throw new CustomException("订单不存在");
} }