|
|
@@ -161,8 +161,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
lqw.like(StringUtils.isNotBlank(bo.getUserName()), SubsidyQueue::getUserName, bo.getUserName());
|
|
|
lqw.like(StringUtils.isNotBlank(bo.getUserMobile()), SubsidyQueue::getUserMobile, bo.getUserMobile());
|
|
|
|
|
|
- if(CollectionUtil.isNotEmpty(bo.getChainBusinessIds()))
|
|
|
- {
|
|
|
+ if (CollectionUtil.isNotEmpty(bo.getChainBusinessIds())) {
|
|
|
lqw.in(SubsidyQueue::getCurrentBusinessId, bo.getChainBusinessIds());
|
|
|
}
|
|
|
|
|
|
@@ -172,6 +171,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
}
|
|
|
|
|
|
lqw.like(StringUtils.isNotBlank(bo.getCurrentBusinessName()), SubsidyQueue::getCurrentBusinessName, bo.getCurrentBusinessName());
|
|
|
+ lqw.like(StringUtils.isNotBlank(bo.getOriginalBusinessName()), SubsidyQueue::getOriginalBusinessName, bo.getOriginalBusinessName());
|
|
|
lqw.eq(bo.getSubsidyStatus() != null, SubsidyQueue::getSubsidyStatus, bo.getSubsidyStatus());
|
|
|
lqw.eq(bo.getCutIn() != null, SubsidyQueue::getCutIn, bo.getCutIn());
|
|
|
lqw.eq(bo.getCancelled() != null, SubsidyQueue::getCancelled, bo.getCancelled());
|
|
|
@@ -181,23 +181,27 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
lqw.eq(bo.getCompleteTime() != null, SubsidyQueue::getCompleteTime, bo.getCompleteTime());
|
|
|
lqw.eq(bo.getRefundStatus() != null, SubsidyQueue::getRefundStatus, bo.getRefundStatus());
|
|
|
|
|
|
- if(ObjectUtil.isNotNull(bo.getConsumeStartTime()))
|
|
|
- {
|
|
|
+ if (ObjectUtil.isNotNull(bo.getConsumeStartTime())) {
|
|
|
lqw.ge(SubsidyQueue::getConsumeTime, bo.getConsumeStartTime());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotNull(bo.getConsumeEndTime()))
|
|
|
- {
|
|
|
+ if (ObjectUtil.isNotNull(bo.getConsumeEndTime())) {
|
|
|
lqw.le(SubsidyQueue::getConsumeTime, bo.getConsumeEndTime());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotNull(bo.getQueueStartTime()))
|
|
|
- {
|
|
|
+ if (ObjectUtil.isNotNull(bo.getQueueStartTime())) {
|
|
|
lqw.ge(SubsidyQueue::getQueueTime, bo.getQueueStartTime());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotNull(bo.getQueueEndTime()))
|
|
|
- {
|
|
|
+ if (ObjectUtil.isNotNull(bo.getQueueEndTime())) {
|
|
|
lqw.le(SubsidyQueue::getQueueTime, bo.getQueueEndTime());
|
|
|
}
|
|
|
|
|
|
+ if (ObjectUtil.isNotNull(bo.getMoveStartTime())) {
|
|
|
+ lqw.ge(SubsidyQueue::getMoveTime, bo.getMoveStartTime());
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotNull(bo.getMoveEndTime())) {
|
|
|
+ lqw.le(SubsidyQueue::getMoveTime, bo.getMoveEndTime());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
if ("asc".equals(bo.getIsAsc())) {
|
|
|
lqw.orderByAsc(SubsidyQueue::getQueueOrder);
|
|
|
} else {
|
|
|
@@ -289,7 +293,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
@Override
|
|
|
public Long validQueueCount(Long businessId, Boolean excludeCutIn) {
|
|
|
return this.baseMapper.selectCount(new LambdaQueryWrapper<SubsidyQueue>()
|
|
|
- .eq(ObjectUtil.isNotNull(businessId),SubsidyQueue::getCurrentBusinessId, businessId)
|
|
|
+ .eq(ObjectUtil.isNotNull(businessId), SubsidyQueue::getCurrentBusinessId, businessId)
|
|
|
.eq(SubsidyQueue::getSubsidyStatus, SubsidyStatus.WAITING)
|
|
|
.eq(excludeCutIn, SubsidyQueue::getCutIn, false)
|
|
|
);
|
|
|
@@ -419,7 +423,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueue.setCompleteTime(new Date());
|
|
|
this.baseMapper.updateById(subsidyQueue);
|
|
|
//改变剩下队列的值
|
|
|
- validQueueOrderRearrange(businessId, subsidyQueue.getQueueId(),queueOrder);
|
|
|
+ validQueueOrderRearrange(businessId, subsidyQueue.getQueueId(), queueOrder);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -455,7 +459,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueue.setSubsidyStatus(SubsidyStatus.COMPLETE);
|
|
|
subsidyQueue.setCancelType(cancelType);
|
|
|
this.baseMapper.updateById(subsidyQueue);
|
|
|
- validQueueOrderRearrange(subsidyQueue.getCurrentBusinessId(), subsidyQueue.getQueueId(),queueOrder);
|
|
|
+ validQueueOrderRearrange(subsidyQueue.getCurrentBusinessId(), subsidyQueue.getQueueId(), queueOrder);
|
|
|
if (subsidyQueue.getCutIn()) {
|
|
|
subsidyCutInService.cancel(subsidyQueue.getCurrentBusinessId(), subsidyQueue.getQueueId());
|
|
|
}
|
|
|
@@ -490,7 +494,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueue.setQueueOrder(Integer.MAX_VALUE);
|
|
|
subsidyQueue.setExchangePoints(subsidyQueue.getExchangePoints().add(bo.getExchangePoints()));
|
|
|
subsidyQueue.setSubsidyPoints(subsidyQueue.getSubsidyPoints().add(bo.getExchangePoints()));
|
|
|
- validQueueOrderRearrange(subsidyQueue.getCurrentBusinessId(), subsidyQueue.getQueueId(),queueOrder);
|
|
|
+ validQueueOrderRearrange(subsidyQueue.getCurrentBusinessId(), subsidyQueue.getQueueId(), queueOrder);
|
|
|
} else {
|
|
|
subsidyQueue.setExchangePoints(subsidyQueue.getExchangePoints().add(bo.getExchangePoints()));
|
|
|
subsidyQueue.setSubsidyPoints(subsidyQueue.getSubsidyPoints().add(bo.getExchangePoints()));
|
|
|
@@ -589,7 +593,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
actualAddSubsidyAmount = currentQueueSubsidyAmount;
|
|
|
sharedSubsidy = MathUtils.subtract(sharedSubsidy, currentQueueSubsidyAmount);
|
|
|
//改变剩下对列的值
|
|
|
- validQueueOrderRearrange(businessId, firstQueue.getQueueId(),queueOrder);
|
|
|
+ validQueueOrderRearrange(businessId, firstQueue.getQueueId(), queueOrder);
|
|
|
} else {
|
|
|
//如果小于应补贴金额=====================//
|
|
|
actualAddSubsidyAmount = sharedSubsidyAverage;
|
|
|
@@ -669,6 +673,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
firstQueue.setCurrentBusinessName(targetBusiness.getBusinessName());
|
|
|
firstQueue.setMoveTime(new Date());
|
|
|
firstQueue.setCutIn(false);
|
|
|
+ firstQueue.setMoved(true);
|
|
|
firstQueue.setQueueOrder(queueCount.intValue());
|
|
|
this.baseMapper.updateById(firstQueue);
|
|
|
userIdSet.add(firstQueue.getUserId());
|
|
|
@@ -724,9 +729,8 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public BigDecimal getStatistics(Long businessId, SubsidyCountType countType,SubsidyQueueBo bo) {
|
|
|
- if(SubsidyCountType.TODAY_SUBSIDY.equals(countType))
|
|
|
- {
|
|
|
+ public BigDecimal getStatistics(Long businessId, SubsidyCountType countType, SubsidyQueueBo bo) {
|
|
|
+ if (SubsidyCountType.TODAY_SUBSIDY.equals(countType)) {
|
|
|
DateTime startTime = DateUtil.beginOfDay(new Date());
|
|
|
DateTime endTime = DateUtil.endOfDay(new Date());
|
|
|
List<Integer> balanceSourceTypes = Arrays.asList(BalanceSourceType.SUBSIDY.getCode(), BalanceSourceType.SHARED_SUBSIDY.getCode(), BalanceSourceType.SUBSIDY_OVERFLOW_RETURN.getCode());
|
|
|
@@ -745,9 +749,8 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public BigDecimal getStatistics(List<Long> businessIds, SubsidyCountType countType,SubsidyQueueBo bo) {
|
|
|
- if(SubsidyCountType.TODAY_SUBSIDY.equals(countType))
|
|
|
- {
|
|
|
+ public BigDecimal getStatistics(List<Long> businessIds, SubsidyCountType countType, SubsidyQueueBo bo) {
|
|
|
+ if (SubsidyCountType.TODAY_SUBSIDY.equals(countType)) {
|
|
|
DateTime startTime = DateUtil.beginOfDay(new Date());
|
|
|
DateTime endTime = DateUtil.endOfDay(new Date());
|
|
|
List<Integer> balanceSourceTypes = Arrays.asList(BalanceSourceType.SUBSIDY.getCode(), BalanceSourceType.SHARED_SUBSIDY.getCode(), BalanceSourceType.SUBSIDY_OVERFLOW_RETURN.getCode());
|
|
|
@@ -767,15 +770,15 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
- public List<SubsidyQueueImportBo> importData(Long businessId,List<SubsidyQueueImportBo> validList) {
|
|
|
+ public List<SubsidyQueueImportBo> importData(Long businessId, List<SubsidyQueueImportBo> validList) {
|
|
|
Business business = businessService.loadById(businessId, true);
|
|
|
List<SubsidyQueueImportBo> errorList = new ArrayList<>();
|
|
|
Long l = validQueueCount(businessId, null);
|
|
|
List<SubsidyQueue> insertList = new ArrayList<>();
|
|
|
- for(SubsidyQueueImportBo bo:validList) {
|
|
|
+ for (SubsidyQueueImportBo bo : validList) {
|
|
|
boolean exists = this.baseMapper.exists(new LambdaQueryWrapper<SubsidyQueue>().eq(SubsidyQueue::getOrderNo, bo.getOrderNo()));
|
|
|
- if(exists) {
|
|
|
- errorList.add( bo);
|
|
|
+ if (exists) {
|
|
|
+ errorList.add(bo);
|
|
|
continue;
|
|
|
}
|
|
|
l++;
|
|
|
@@ -790,13 +793,13 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueue.setOriginalBusinessId(businessId);
|
|
|
subsidyQueue.setOriginalBusinessName(business.getBusinessName());
|
|
|
subsidyQueue.setPayAmount(bo.getPayAmount());
|
|
|
- subsidyQueue.setShouldSubsidyAmount(bo.getExchangePoints().compareTo(BigDecimal.ZERO)>0?MathUtils.subtract(bo.getShouldSubsidyAmount(),bo.getExchangePoints()):bo.getShouldSubsidyAmount());
|
|
|
+ subsidyQueue.setShouldSubsidyAmount(bo.getExchangePoints().compareTo(BigDecimal.ZERO) > 0 ? MathUtils.subtract(bo.getShouldSubsidyAmount(), bo.getExchangePoints()) : bo.getShouldSubsidyAmount());
|
|
|
subsidyQueue.setActualSubsidyAmount(bo.getActualSubsidyAmount());
|
|
|
subsidyQueue.setSubsidyPoints(BigDecimal.ZERO);
|
|
|
subsidyQueue.setSubsidyStatus(SubsidyStatus.WAITING);
|
|
|
subsidyQueue.setCutIn(false);
|
|
|
subsidyQueue.setCancelled(false);
|
|
|
- subsidyQueue.setExchanged(bo.getExchangePoints().compareTo(BigDecimal.ZERO)>0);
|
|
|
+ subsidyQueue.setExchanged(bo.getExchangePoints().compareTo(BigDecimal.ZERO) > 0);
|
|
|
subsidyQueue.setExchangePoints(bo.getExchangePoints());
|
|
|
subsidyQueue.setActualPointsAfterCancel(BigDecimal.ZERO);
|
|
|
subsidyQueue.setConsumeTime(bo.getApplyTime());
|
|
|
@@ -806,14 +809,14 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueue.setCancelType(SubsidyCancelType.NO);
|
|
|
subsidyQueue.setExchangeTime(null);
|
|
|
subsidyQueue.setMoveTime(null);
|
|
|
+ subsidyQueue.setMoved(false);
|
|
|
subsidyQueue.setImported(true);
|
|
|
subsidyQueue.setRefundStatus(OnlineOrderRefundStatus.UNREFUNDED);
|
|
|
subsidyQueue.setPurchaseSource(PurchaseSource.ONLINE_BUY);
|
|
|
subsidyQueue.setQueueOrder(l.intValue());
|
|
|
insertList.add(subsidyQueue);
|
|
|
}
|
|
|
- if(CollectionUtil.isNotEmpty(insertList))
|
|
|
- {
|
|
|
+ if (CollectionUtil.isNotEmpty(insertList)) {
|
|
|
this.baseMapper.insertBatch(insertList);
|
|
|
}
|
|
|
return errorList;
|
|
|
@@ -849,7 +852,8 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
subsidyQueueBo.setCutIn(false);
|
|
|
subsidyQueueBo.setCancelled(false);
|
|
|
subsidyQueueBo.setExchanged(false);
|
|
|
- subsidyQueueBo.setImported( false );
|
|
|
+ subsidyQueueBo.setImported(false);
|
|
|
+ subsidyQueueBo.setMoved(false);
|
|
|
subsidyQueueBo.setExchangePoints(BigDecimal.ONE);
|
|
|
subsidyQueueBo.setActualPointsAfterCancel(BigDecimal.ZERO);
|
|
|
subsidyQueueBo.setConsumeTime(order.getPayTime());
|
|
|
@@ -904,7 +908,7 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
this.baseMapper.updateById(firstQueue);
|
|
|
actualAddSubsidyAmount = currentQueueSubsidyAmount;
|
|
|
|
|
|
- validQueueOrderRearrange(businessId, firstQueue.getQueueId(),queueOrder);
|
|
|
+ validQueueOrderRearrange(businessId, firstQueue.getQueueId(), queueOrder);
|
|
|
|
|
|
} else {
|
|
|
//如果小于应补贴金额=====================//
|
|
|
@@ -936,8 +940,8 @@ public class SubsidyQueueServiceImpl implements ISubsidyQueueService {
|
|
|
* @param businessId 商家id
|
|
|
* @param excludeQueueId 排队id
|
|
|
*/
|
|
|
- private void validQueueOrderRearrange(Long businessId, Long excludeQueueId,Integer currentQueueOrder) {
|
|
|
- this.baseMapper.validQueueOrderRearrange(businessId, excludeQueueId,currentQueueOrder);
|
|
|
+ private void validQueueOrderRearrange(Long businessId, Long excludeQueueId, Integer currentQueueOrder) {
|
|
|
+ this.baseMapper.validQueueOrderRearrange(businessId, excludeQueueId, currentQueueOrder);
|
|
|
|
|
|
}
|
|
|
|