|
|
@@ -13,12 +13,15 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
+import shop.alien.entity.result.R;
|
|
|
import shop.alien.entity.store.*;
|
|
|
import shop.alien.entity.store.vo.LifePinglunVo;
|
|
|
import shop.alien.entity.store.vo.LifeUserDynamicsVo;
|
|
|
+import shop.alien.entity.store.vo.LifeUserOrderVo;
|
|
|
import shop.alien.entity.store.vo.StoreCommentVo;
|
|
|
import shop.alien.mapper.*;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -53,6 +56,11 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
|
|
|
private final StoreInfoMapper storeInfoMapper;
|
|
|
|
|
|
+ private final LifeUserExpertOrderMapper lifeUserExpertOrderMapper;
|
|
|
+
|
|
|
+ private final PromotionPackageService promotionPackageService;
|
|
|
+
|
|
|
+
|
|
|
public int addLiulanCount(String id) {
|
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
lambdaUpdateWrapper.eq(LifeUserDynamics::getId, id);
|
|
|
@@ -60,6 +68,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
return lifeUserDynamicsMapper.update(null, lambdaUpdateWrapper);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
public int setTopStatus(LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
|
if(!StringUtils.isEmpty(lifeUserDynamicsVo.getId()) && !StringUtils.isEmpty(lifeUserDynamicsVo.getTopStatus())){
|
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
@@ -522,4 +531,48 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
}
|
|
|
return lifeUserDynamicsVo;
|
|
|
}
|
|
|
+
|
|
|
+ public LifeUserDynamicsVo getExpertDynamicsDetail(Integer id) {
|
|
|
+ // 查询动态数据并按类型过滤
|
|
|
+ LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
|
|
|
+ List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getExpertDynamicsDetail(id);
|
|
|
+ if(!CollectionUtils.isEmpty(lifeUserDynamicsVoList)){
|
|
|
+ lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
|
|
|
+ String imagePath = lifeUserDynamicsVo.getImagePath();
|
|
|
+ if(!StringUtils.isEmpty(imagePath)){
|
|
|
+ List<String> imagePathList = Arrays.asList(imagePath.split(","));
|
|
|
+ lifeUserDynamicsVo.setImagePathList(imagePathList);
|
|
|
+ }
|
|
|
+ //查询动态表中的 gvm和评论数是否满足当前达人订单规定值 都满足修改订单状态为已完成
|
|
|
+ LifeUserExpertOrder lifeUserExpertOrder = lifeUserExpertOrderMapper.selectOne(new LambdaQueryWrapper<LifeUserExpertOrder>().eq(LifeUserExpertOrder :: getId, lifeUserDynamicsVo.getBusinessId()));
|
|
|
+ if(lifeUserExpertOrder != null && lifeUserExpertOrder.getStatus()!= 2){
|
|
|
+ LifePromotionPackage lifePromotionPackage = promotionPackageService.getById(lifeUserExpertOrder.getPackageId());
|
|
|
+ if(lifeUserDynamicsVo.getOrderGmv().compareTo(lifeUserExpertOrder.getOrderGmv()) >= 0 && lifeUserDynamicsVo.getLiulanCount()>=Integer.parseInt(lifePromotionPackage.getPlayCount())){
|
|
|
+ lifeUserExpertOrder.setStatus(2);
|
|
|
+ lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ return lifeUserDynamicsVo;
|
|
|
+ }
|
|
|
+
|
|
|
+ public R countGvm(Integer expertId, String finalPrice){
|
|
|
+ LifeUserDynamics lifeUserDynamics = lifeUserDynamicsMapper.selectOne(new LambdaQueryWrapper<LifeUserDynamics>().eq(LifeUserDynamics :: getId, expertId));
|
|
|
+ if(lifeUserDynamics != null){
|
|
|
+ BigDecimal price = new BigDecimal(finalPrice);
|
|
|
+ lifeUserDynamics.setOrderGmv(lifeUserDynamics.getOrderGmv().add(price));
|
|
|
+ lifeUserDynamicsMapper.updateById(lifeUserDynamics);
|
|
|
+ }
|
|
|
+ LifeUserExpertOrder lifeUserExpertOrder = lifeUserExpertOrderMapper.selectOne(new LambdaQueryWrapper<LifeUserExpertOrder>().eq(LifeUserExpertOrder :: getId, lifeUserDynamics.getBusinessId()));
|
|
|
+ if(lifeUserExpertOrder != null && lifeUserExpertOrder.getStatus() != 2){
|
|
|
+ LifePromotionPackage lifePromotionPackage = promotionPackageService.getById(lifeUserExpertOrder.getPackageId());
|
|
|
+ LifeUserDynamics lifeUserDynamics1 = lifeUserDynamicsMapper.selectOne(new LambdaQueryWrapper<LifeUserDynamics>().eq(LifeUserDynamics :: getId, expertId));
|
|
|
+ if(lifeUserDynamics1.getOrderGmv().compareTo(lifeUserExpertOrder.getOrderGmv()) >= 0 && lifeUserDynamics1.getLiulanCount()>=Integer.parseInt(lifePromotionPackage.getPlayCount())){
|
|
|
+ lifeUserExpertOrder.setStatus(2);
|
|
|
+ lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return R.success("请求成功");
|
|
|
+ }
|
|
|
}
|