fix
This commit is contained in:
@@ -10,12 +10,15 @@ import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService;
|
||||
import com.starry.admin.modules.order.mapper.PlayOrderInfoMapper;
|
||||
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
|
||||
import com.starry.admin.modules.weichat.service.WxCustomMpService;
|
||||
import com.starry.common.redis.RedisCache;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import javax.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@@ -29,6 +32,8 @@ public class OrderJob {
|
||||
private WxCustomMpService wxCustomMpService;
|
||||
@Resource
|
||||
private IPlayClerkUserInfoService clerkUserInfoService;
|
||||
@Resource
|
||||
public RedisTemplate<String, Object> redisTemplate;
|
||||
|
||||
|
||||
/**
|
||||
@@ -82,6 +87,12 @@ public class OrderJob {
|
||||
|
||||
orderInfoEntityList.forEach(orderInfo -> {
|
||||
try {
|
||||
// 半小时只能发一次,使用redis做频次限制
|
||||
if (Boolean.TRUE.equals(redisTemplate.hasKey("order_notice_" + orderInfo.getId()))) {
|
||||
log.error("订单已催促,执行跳过:{}", orderInfo.getOrderNo());
|
||||
return;
|
||||
}
|
||||
redisTemplate.opsForValue().set("order_notice_" + orderInfo.getId(), "1", 30, java.util.concurrent.TimeUnit.MINUTES);
|
||||
List<PlayClerkUserInfoEntity> clerkList = clerkUserInfoService.list(Wrappers.lambdaQuery(PlayClerkUserInfoEntity.class).isNotNull(PlayClerkUserInfoEntity::getOpenid).eq(PlayClerkUserInfoEntity::getLevelId, orderInfo.getLevelId()).eq(PlayClerkUserInfoEntity::getClerkState, "1")
|
||||
.eq(PlayClerkUserInfoEntity::getSex, orderInfo.getSex()).eq(PlayClerkUserInfoEntity::getTenantId, orderInfo.getTenantId()));
|
||||
wxCustomMpService.sendCreateOrderMessageBatch(clerkList, orderInfo.getOrderNo(), orderInfo.getOrderMoney().toString(), orderInfo.getCommodityName(), orderInfo.getId());
|
||||
|
||||
@@ -585,7 +585,7 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
LambdaQueryWrapper<PlayOrderInfoEntity> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getPlaceType, "1");
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getOrderStatus, "0");
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getLevelId, entity.getLevelId());
|
||||
// lambdaQueryWrapper.eq(PlayOrderInfoEntity::getLevelId, entity.getLevelId());
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getSex, entity.getSex());
|
||||
lambdaQueryWrapper.eq(PlayOrderInfoEntity::getExcludeHistory, "0")
|
||||
.or(wrapper1 -> wrapper1.ne(PlayOrderInfoEntity::getAcceptBy, clerkId)
|
||||
@@ -817,10 +817,10 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
if (orderInfo.getLevelId().equals(clerkUserInfoEntity.getLevelId())) {
|
||||
PlayClerkLevelInfoEntity levelInfo = playClerkLevelInfoService
|
||||
.selectPlayClerkLevelInfoById(orderInfo.getLevelId());
|
||||
throw new CustomException("等级为" + levelInfo.getName() + "的店员才可接单");
|
||||
// throw new CustomException("等级为" + levelInfo.getName() + "的店员才可接单");
|
||||
}
|
||||
// 判断店员性别是否符合规则
|
||||
if (orderInfo.getSex().equals(clerkUserInfoEntity.getSex())) {
|
||||
if (!orderInfo.getSex().equals(clerkUserInfoEntity.getSex())) {
|
||||
String sex = "0".equals(orderInfo.getSex()) ? "未知" : "1".equals(orderInfo.getSex()) ? "男" : "女";
|
||||
throw new CustomException("性别为" + sex + "的店员才可接单");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user