diff --git a/consumer/src/main/java/cn/lili/event/impl/DistributionOrderExecute.java b/consumer/src/main/java/cn/lili/event/impl/DistributionOrderExecute.java index 4edd7f41..53812919 100644 --- a/consumer/src/main/java/cn/lili/event/impl/DistributionOrderExecute.java +++ b/consumer/src/main/java/cn/lili/event/impl/DistributionOrderExecute.java @@ -1,6 +1,8 @@ package cn.lili.event.impl; +import cn.hutool.core.date.DateField; import cn.hutool.core.date.DateTime; +import cn.hutool.json.JSONUtil; import cn.lili.event.AfterSaleStatusChangeEvent; import cn.lili.event.OrderStatusChangeEvent; import cn.lili.modules.distribution.entity.dos.DistributionOrder; @@ -10,6 +12,10 @@ import cn.lili.modules.distribution.service.DistributionOrderService; import cn.lili.modules.order.aftersale.entity.dos.AfterSale; import cn.lili.modules.order.order.entity.dto.OrderMessage; import cn.lili.modules.order.trade.entity.enums.AfterSaleStatusEnum; +import cn.lili.modules.system.entity.dos.Setting; +import cn.lili.modules.system.entity.dto.DistributionSetting; +import cn.lili.modules.system.entity.enums.SettingEnum; +import cn.lili.modules.system.service.SettingService; import cn.lili.timetask.handler.EveryDayExecute; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import lombok.extern.slf4j.Slf4j; @@ -39,6 +45,9 @@ public class DistributionOrderExecute implements OrderStatusChangeEvent, EveryDa @Resource private DistributionOrderMapper distributionOrderMapper; + @Autowired + private SettingService settingService; + @Override public void orderChange(OrderMessage orderMessage) { @@ -65,14 +74,16 @@ public class DistributionOrderExecute implements OrderStatusChangeEvent, EveryDa @Override public void execute() { - //计算分销提佣 - distributionOrderMapper.rebate(DistributionOrderStatusEnum.WAIT_BILL.name(), new DateTime()); - - //修改分销订单状态 - distributionOrderService.update(new LambdaUpdateWrapper() - .eq(DistributionOrder::getDistributionOrderStatus, DistributionOrderStatusEnum.WAIT_BILL.name()) - .le(DistributionOrder::getSettleCycle, new DateTime()) - .set(DistributionOrder::getDistributionOrderStatus, DistributionOrderStatusEnum.WAIT_CASH.name())); + log.info("分销订单定时开始执行"); + //设置结算天数(解冻日期) + Setting setting = settingService.get(SettingEnum.DISTRIBUTION_SETTING.name()); + DistributionSetting distributionSetting = JSONUtil.toBean(setting.getSettingValue(), DistributionSetting.class); + //解冻时间 + DateTime dateTime = new DateTime(); + //当前时间-结算天数=最终结算时间 + dateTime = dateTime.offsetNew(DateField.DAY_OF_MONTH, -distributionSetting.getCashDay()); + //分销人员订单结算 + distributionOrderService.updateRebate(dateTime,DistributionOrderStatusEnum.WAIT_BILL.name()); } diff --git a/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java b/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java index ade5ea90..6370b260 100644 --- a/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java +++ b/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java @@ -2,9 +2,12 @@ package cn.lili.timetask.handler.impl.order; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; import cn.lili.common.enums.ResultCode; import cn.lili.common.exception.ServiceException; +import cn.lili.modules.distribution.service.DistributionOrderService; import cn.lili.modules.member.entity.dto.MemberEvaluationDTO; import cn.lili.modules.member.entity.enums.EvaluationGradeEnum; import cn.lili.modules.member.service.MemberEvaluationService; @@ -69,6 +72,9 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute { @Autowired private AfterSaleService afterSaleService; + @Autowired + private DistributionOrderService distributionOrderService; + /** * 执行每日任务 */ @@ -179,6 +185,15 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute { .set(OrderItem::getAfterSaleStatus, OrderItemAfterSaleStatusEnum.EXPIRED.name()) .in(OrderItem::getId, orderItemIdList); orderItemService.update(lambdaUpdateWrapper); + //修改订售后状态 + List orderItemsList = orderItems.stream() + .map((orderItem)->{ + orderItem.setAfterSaleStatus(OrderItemAfterSaleStatusEnum.EXPIRED.name()); + return orderItem; + }) + .collect(Collectors.toList()); + //修改对应分销订单状态 + distributionOrderService.updateDistributionOrderStatus(orderItemsList); } } diff --git a/framework/pom.xml b/framework/pom.xml index 472ef724..8e631d65 100644 --- a/framework/pom.xml +++ b/framework/pom.xml @@ -51,10 +51,6 @@ - - org.springframework.boot - spring-boot-starter-websocket - org.springframework.boot spring-boot-starter-web diff --git a/framework/src/main/java/cn/lili/modules/distribution/entity/dos/DistributionOrder.java b/framework/src/main/java/cn/lili/modules/distribution/entity/dos/DistributionOrder.java index fc760ac4..f29b9987 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/entity/dos/DistributionOrder.java +++ b/framework/src/main/java/cn/lili/modules/distribution/entity/dos/DistributionOrder.java @@ -81,7 +81,7 @@ public class DistributionOrder extends BaseIdEntity { private Integer num; public DistributionOrder(StoreFlow storeFlow) { - distributionOrderStatus = DistributionOrderStatusEnum.WAIT_BILL.name(); + distributionOrderStatus = DistributionOrderStatusEnum.NO_COMPLETED.name(); memberId = storeFlow.getMemberId(); memberName = storeFlow.getMemberName(); rebate = storeFlow.getDistributionRebate(); diff --git a/framework/src/main/java/cn/lili/modules/distribution/entity/enums/DistributionOrderStatusEnum.java b/framework/src/main/java/cn/lili/modules/distribution/entity/enums/DistributionOrderStatusEnum.java index 16c6fdc0..240b9752 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/entity/enums/DistributionOrderStatusEnum.java +++ b/framework/src/main/java/cn/lili/modules/distribution/entity/enums/DistributionOrderStatusEnum.java @@ -6,6 +6,8 @@ package cn.lili.modules.distribution.entity.enums; * @author pikachu */ public enum DistributionOrderStatusEnum { + //未完成 + NO_COMPLETED("未完成"), //待结算(冻结) WAIT_BILL("待结算"), //待提现 diff --git a/framework/src/main/java/cn/lili/modules/distribution/service/DistributionOrderService.java b/framework/src/main/java/cn/lili/modules/distribution/service/DistributionOrderService.java index 122ba134..7b52cf36 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/service/DistributionOrderService.java +++ b/framework/src/main/java/cn/lili/modules/distribution/service/DistributionOrderService.java @@ -1,10 +1,14 @@ package cn.lili.modules.distribution.service; +import cn.hutool.core.date.DateTime; import cn.lili.modules.distribution.entity.dos.DistributionOrder; import cn.lili.modules.distribution.entity.vos.DistributionOrderSearchParams; +import cn.lili.modules.order.order.entity.dos.OrderItem; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** * 分销订单业务层 @@ -45,4 +49,17 @@ public interface DistributionOrderService extends IService { */ void refundOrder(String afterSaleSn); + /** + * 分销订单状态修改 + * + * @param orderItems + */ + void updateDistributionOrderStatus(List orderItems); + + /** + * 分销订单结算 + * @param dateTime + * @param distributionOrderStatus + */ + void updateRebate(DateTime dateTime, String distributionOrderStatus); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionOrderServiceImpl.java b/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionOrderServiceImpl.java index 6fb74ad7..c44efde8 100644 --- a/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionOrderServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/distribution/serviceimpl/DistributionOrderServiceImpl.java @@ -1,19 +1,26 @@ package cn.lili.modules.distribution.serviceimpl; +import cn.hutool.core.collection.ListUtil; import cn.hutool.core.date.DateField; import cn.hutool.core.date.DateTime; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; import cn.lili.common.utils.CurrencyUtil; +import cn.lili.common.utils.SpringContextUtil; import cn.lili.modules.distribution.entity.dos.Distribution; import cn.lili.modules.distribution.entity.dos.DistributionOrder; import cn.lili.modules.distribution.entity.enums.DistributionOrderStatusEnum; +import cn.lili.modules.distribution.entity.enums.DistributionStatusEnum; import cn.lili.modules.distribution.entity.vos.DistributionOrderSearchParams; import cn.lili.modules.distribution.mapper.DistributionOrderMapper; import cn.lili.modules.distribution.service.DistributionOrderService; import cn.lili.modules.distribution.service.DistributionService; import cn.lili.modules.order.order.entity.dos.Order; +import cn.lili.modules.order.order.entity.dos.OrderItem; import cn.lili.modules.order.order.entity.dos.StoreFlow; import cn.lili.modules.order.order.entity.dto.StoreFlowQueryDTO; +import cn.lili.modules.order.order.entity.enums.OrderItemAfterSaleStatusEnum; import cn.lili.modules.order.order.entity.enums.PayStatusEnum; import cn.lili.modules.order.order.service.OrderService; import cn.lili.modules.order.order.service.StoreFlowService; @@ -31,7 +38,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** @@ -107,14 +118,7 @@ public class DistributionOrderServiceImpl extends ServiceImpl() - .eq(DistributionOrder::getDistributionOrderStatus, DistributionOrderStatusEnum.WAIT_BILL.name()) - .le(DistributionOrder::getSettleCycle, dateTime) - .set(DistributionOrder::getDistributionOrderStatus, DistributionOrderStatusEnum.WAIT_CASH.name())); + dateTime = dateTime.offsetNew(DateField.DAY_OF_MONTH, -distributionSetting.getCashDay()); + //防止事务失效,采用上下文获取bean + DistributionOrderService bean = SpringContextUtil.getBean(DistributionOrderService.class); + //分销订单结算 + bean.updateRebate(dateTime, DistributionOrderStatusEnum.WAIT_BILL.name()); } } @@ -214,4 +214,128 @@ public class DistributionOrderServiceImpl extends ServiceImpl orderItems) { + if (orderItems.isEmpty()) { + return; + } + + //获取未完成分销订单 + List distributionOrderList = this.list(new LambdaQueryWrapper() + .eq(DistributionOrder::getDistributionOrderStatus, DistributionOrderStatusEnum.NO_COMPLETED.name())); + + if (distributionOrderList.isEmpty()) { + return; + } + + List list = ListUtil.list(false); + + orderItems.stream().forEach(orderItem -> { + //订单售后状态为已失效并且投诉状态为已失效 + if (StrUtil.equals(OrderItemAfterSaleStatusEnum.EXPIRED.name(), orderItem.getAfterSaleStatus())) { + + + List collect = distributionOrderList.stream() + .filter(distributionOrder -> StrUtil.equals(distributionOrder.getOrderItemSn(), orderItem.getSn())) + .map((distributionOrder) -> { + distributionOrder.setDistributionOrderStatus(DistributionOrderStatusEnum.WAIT_BILL.name()); + distributionOrder.setSettleCycle(new Date()); + return distributionOrder; + }) + .collect(Collectors.toList()); + + list.addAll(collect); + } + + }); + + if (!list.isEmpty()) { + //批量修改分销订单结算状态 + this.updateBatchById(list); + } + } + + @Override + public void updateRebate(DateTime dateTime, String distributionOrderStatus) { + //结算时间延后五分钟 + dateTime = dateTime.offsetNew(DateField.MINUTE, 5); + //获取待结算订单 + List distributionOrderList = this.list(new LambdaQueryWrapper() + .eq(DistributionOrder::getDistributionOrderStatus, distributionOrderStatus) + .isNotNull(DistributionOrder::getSettleCycle) + .le(DistributionOrder::getSettleCycle, dateTime)); + //校验待结算订单 + if (ObjectUtil.isNotNull(distributionOrderList) && distributionOrderList.size() > 0) { + //结算分销人员信息列表 + List distributionUpdateList = new ArrayList<>(); + //获取分销员信息 + List distributionList = distributionService.list(new LambdaQueryWrapper() + .eq(Distribution::getDistributionStatus, DistributionStatusEnum.PASS.name())); + //根据销人员获取对应分销订单 + Map> distributionOrderList1 = distributionOrderList.stream() + .collect(Collectors.groupingBy(DistributionOrder::getDistributionId)); + + //校验分销订单不为空 + if (ObjectUtil.isNotNull(distributionOrderList1) && distributionOrderList1.size() > 0) { + //遍历分销订单map + distributionOrderList1.forEach((key, value) -> { + //计算分销结算金额 + distributionUpdateList.add(checkDistribution(key, value, distributionList)); + }); + } + + //校验分销信息列表不为空 + if (ObjectUtil.isNotNull(distributionUpdateList) && !distributionUpdateList.isEmpty()) { + //修改分销员收益 + distributionService.updateBatchById(distributionUpdateList); + distributionOrderList.stream().forEach(distributionOrder -> { + //修改分销订单状态为待提现 + distributionOrder.setDistributionOrderStatus(DistributionOrderStatusEnum.WAIT_CASH.name()); + }); + } + + //修改分销订单状态 + this.updateBatchById(distributionOrderList); + } + + + } + + + /** + * 计算分销结算金额 + * + * @param distributionId 分销ID + * @param list 分销订单 + * @param distributionList 分销列表 + * @return + */ + public Distribution checkDistribution(String distributionId, List list, List distributionList) { + //获取所有待结算订单分销人员信息 + Distribution distribution = distributionList.parallelStream().filter(a -> StrUtil.equals(a.getId(), distributionId)).collect(Collectors.toList()).get(0); + + //获取分销订单总金额 + double rebate = list.stream().mapToDouble(DistributionOrder::getRebate).sum(); + + //检验单分销人员冻结金额为负数时.扣除负数冻结金额后再结算 + if (distribution.getCommissionFrozen() < 0) { + rebate = CurrencyUtil.add(distribution.getCommissionFrozen() == null ? 0.0 : distribution.getCommissionFrozen(), rebate); + } + //结算订单总金额+分销可提现金额 + Double canRebate = CurrencyUtil.add(rebate, distribution.getCanRebate() == null ? 0.0 : distribution.getCanRebate()); + //结算金额小于0 + if (canRebate < 0) { + //结算订单总金额+分销可提现金额 + distribution.setCanRebate(0.0); + //冻结金额 + distribution.setCommissionFrozen(canRebate); + } else { + //结算订单总金额+分销可提现金额 + distribution.setCanRebate(canRebate); + //冻结金额 + distribution.setCommissionFrozen(0.0); + } + + return distribution; + } } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java index e56898cb..c1ae964b 100644 --- a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java @@ -133,7 +133,7 @@ public class GoodsServiceImpl extends ServiceImpl implements //获取商品ID列表 List list = this.baseMapper.getGoodsIdByStoreId(storeId); //下架店铺下的商品 - updateGoodsMarketAble(list, GoodsStatusEnum.DOWN, "店铺关闭"); + this.updateGoodsMarketAbleByStoreId(storeId, GoodsStatusEnum.DOWN, "店铺关闭"); applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("下架商品", rocketmqCustomProperties.getGoodsTopic(), GoodsTagsEnum.DOWN.name(), JSONUtil.toJsonStr(list))); diff --git a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java index 2cc364b1..c516b6c2 100644 --- a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java @@ -312,9 +312,8 @@ public class GoodsSkuServiceImpl extends ServiceImpl i map.put("data", goodsSkuDetail); //获取分类 - String[] split = goodsSkuDetail.getCategoryPath().split(","); - map.put("wholesaleList", wholesaleService.findByGoodsId(goodsSkuDetail.getGoodsId())); - map.put("categoryName", categoryService.getCategoryNameByIds(Arrays.asList(split))); + map.put("wholesaleList", GoodsSalesModeEnum.WHOLESALE.name().equals(goodsVO.getSalesModel()) ? wholesaleService.findByGoodsId(goodsSkuDetail.getGoodsId()) : Collections.emptyList()); + map.put("categoryName", CharSequenceUtil.isNotEmpty(goodsIndex.getCategoryNamePath()) ? goodsIndex.getCategoryNamePath().split(",") : null); //获取规格信息 map.put("specs", this.groupBySkuAndSpec(goodsVO.getSkuList())); diff --git a/framework/src/main/java/cn/lili/modules/permission/serviceimpl/SystemLogServiceImpl.java b/framework/src/main/java/cn/lili/modules/permission/serviceimpl/SystemLogServiceImpl.java index 693794c0..bd8f6386 100644 --- a/framework/src/main/java/cn/lili/modules/permission/serviceimpl/SystemLogServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/permission/serviceimpl/SystemLogServiceImpl.java @@ -1,6 +1,5 @@ package cn.lili.modules.permission.serviceimpl; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.text.CharSequenceUtil; import cn.lili.common.vo.PageVO; import cn.lili.common.vo.SearchVO; @@ -9,7 +8,9 @@ import cn.lili.modules.permission.repository.SystemLogRepository; import cn.lili.modules.permission.service.SystemLogService; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.MultiMatchQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.sort.SortBuilders; import org.elasticsearch.search.sort.SortOrder; @@ -82,25 +83,22 @@ public class SystemLogServiceImpl implements SystemLogService { } if (CharSequenceUtil.isNotEmpty(operatorName)) { - nativeSearchQueryBuilder.withFilter(QueryBuilders.wildcardQuery("username", "*" + operatorName + "*")); + nativeSearchQueryBuilder.withQuery(QueryBuilders.matchQuery("username", operatorName)); } if (CharSequenceUtil.isNotEmpty(key)) { - BoolQueryBuilder filterBuilder = new BoolQueryBuilder(); - filterBuilder.should(QueryBuilders.wildcardQuery("requestUrl", "*" + key + "*")) - .should(QueryBuilders.wildcardQuery("requestParam", "*" + key + "*")) - .should(QueryBuilders.wildcardQuery("responseBody", "*" + key + "*")) - .should(QueryBuilders.wildcardQuery("name", "*" + key + "*")); - nativeSearchQueryBuilder.withFilter(filterBuilder); + MultiMatchQueryBuilder multiMatchQueryBuilder = QueryBuilders.multiMatchQuery(key, "requestUrl", "requestParam", "responseBody", "name"); + multiMatchQueryBuilder.fuzziness(Fuzziness.AUTO); + nativeSearchQueryBuilder.withFilter(multiMatchQueryBuilder); } //时间有效性判定 if (searchVo.getConvertStartDate() != null && searchVo.getConvertEndDate() != null) { BoolQueryBuilder filterBuilder = new BoolQueryBuilder(); //大于方法 - filterBuilder.must( + filterBuilder.filter( QueryBuilders.rangeQuery("createTime") - .gte(DateUtil.format(searchVo.getConvertStartDate(), "dd/MM/yyyy")) - .lte(DateUtil.format(searchVo.getConvertEndDate(), "dd/MM/yyyy")).format("dd/MM/yyyy||yyyy")); + .gte(searchVo.getConvertStartDate().getTime()) + .lte(searchVo.getConvertEndDate().getTime())); nativeSearchQueryBuilder.withFilter(filterBuilder); } diff --git a/framework/src/main/java/cn/lili/modules/promotion/serviceimpl/MemberCouponServiceImpl.java b/framework/src/main/java/cn/lili/modules/promotion/serviceimpl/MemberCouponServiceImpl.java index 1e130dc2..467d4862 100644 --- a/framework/src/main/java/cn/lili/modules/promotion/serviceimpl/MemberCouponServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/promotion/serviceimpl/MemberCouponServiceImpl.java @@ -293,6 +293,7 @@ public class MemberCouponServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.in(MemberCoupon::getId, memberCouponIds); updateWrapper.set(MemberCoupon::getMemberCouponStatus, MemberCouponStatusEnum.NEW.name()); + updateWrapper.set(MemberCoupon::getConsumptionTime, null); return this.update(updateWrapper); } diff --git a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsIndexServiceImpl.java b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsIndexServiceImpl.java index 56211660..3c12ceef 100644 --- a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsIndexServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsIndexServiceImpl.java @@ -455,7 +455,7 @@ public class EsGoodsIndexServiceImpl extends BaseElasticsearchService implements public void deleteIndex(Map queryFields) { BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); for (Map.Entry entry : queryFields.entrySet()) { - boolQueryBuilder.filter(QueryBuilders.termsQuery(entry.getKey(), entry.getValue())); + boolQueryBuilder.filter(QueryBuilders.termsQuery(entry.getKey(), entry.getValue().toString())); } DeleteByQueryRequest deleteByQueryRequest = new DeleteByQueryRequest(); diff --git a/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java b/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java index ea77b45b..b0e9422a 100644 --- a/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/store/serviceimpl/StoreServiceImpl.java @@ -235,11 +235,16 @@ public class StoreServiceImpl extends ServiceImpl implements public boolean disable(String id) { Store store = this.getById(id); if (store != null) { - store.setStoreDisable(StoreStatusEnum.CLOSED.value()); + LambdaUpdateWrapper storeLambdaUpdateWrapper = new LambdaUpdateWrapper<>(); + storeLambdaUpdateWrapper.eq(Store::getId, id); + storeLambdaUpdateWrapper.set(Store::getStoreDisable, StoreStatusEnum.CLOSED.value()); + boolean update = this.update(storeLambdaUpdateWrapper); //下架所有此店铺商品 - goodsService.underStoreGoods(id); - return this.updateById(store); + if (update) { + goodsService.underStoreGoods(id); + } + return update; } throw new ServiceException(ResultCode.STORE_NOT_EXIST); diff --git a/im-api/pom.xml b/im-api/pom.xml index 7f823cf4..8f6efc47 100644 --- a/im-api/pom.xml +++ b/im-api/pom.xml @@ -19,6 +19,11 @@ framework ${revision} + + + org.springframework.boot + spring-boot-starter-websocket + diff --git a/pom.xml b/pom.xml index 64f3b885..29fcaf50 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ 1 4.22.32.ALL 3.5.1 - 5.8.0 + 5.8.14 2.0.3.RELEASE 3.0.4 2.9.10