|
@@ -1,5 +1,6 @@
|
|
|
package shop.alien.store.service;
|
|
package shop.alien.store.service;
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.date.DateTime;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
@@ -21,7 +22,12 @@ import shop.alien.entity.store.vo.LifeUserOrderVo;
|
|
|
import shop.alien.entity.store.vo.StoreCommentVo;
|
|
import shop.alien.entity.store.vo.StoreCommentVo;
|
|
|
import shop.alien.mapper.*;
|
|
import shop.alien.mapper.*;
|
|
|
|
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
|
|
+import java.time.LocalDate;
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
|
+import java.time.LocalTime;
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
@@ -60,6 +66,11 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
|
|
|
|
|
private final PromotionPackageService promotionPackageService;
|
|
private final PromotionPackageService promotionPackageService;
|
|
|
|
|
|
|
|
|
|
+ private final LifeBrowseRecordMapper lifeBrowseRecordMapper;
|
|
|
|
|
+
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ LifeBrowseRecordService lifeBrowseRecordService;
|
|
|
|
|
+
|
|
|
|
|
|
|
|
public int addLiulanCount(String id) {
|
|
public int addLiulanCount(String id) {
|
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
@@ -70,13 +81,13 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
|
|
|
|
|
|
|
|
|
|
public int setTopStatus(LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
public int setTopStatus(LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
|
- if(!StringUtils.isEmpty(lifeUserDynamicsVo.getId()) && !StringUtils.isEmpty(lifeUserDynamicsVo.getTopStatus())){
|
|
|
|
|
|
|
+ if (!StringUtils.isEmpty(lifeUserDynamicsVo.getId()) && !StringUtils.isEmpty(lifeUserDynamicsVo.getTopStatus())) {
|
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
lambdaUpdateWrapper.eq(LifeUserDynamics::getId, lifeUserDynamicsVo.getId());
|
|
lambdaUpdateWrapper.eq(LifeUserDynamics::getId, lifeUserDynamicsVo.getId());
|
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopStatus, lifeUserDynamicsVo.getTopStatus());
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopStatus, lifeUserDynamicsVo.getTopStatus());
|
|
|
- if(lifeUserDynamicsVo.getTopStatus() == 0){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsVo.getTopStatus() == 0) {
|
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, null);
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, null);
|
|
|
- } else{
|
|
|
|
|
|
|
+ } else {
|
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, new Date());
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, new Date());
|
|
|
|
|
|
|
|
}
|
|
}
|
|
@@ -87,7 +98,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public int enableStatus(LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
public int enableStatus(LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
|
- if(!StringUtils.isEmpty(lifeUserDynamicsVo.getId()) && !StringUtils.isEmpty(lifeUserDynamicsVo.getEnableStatus())) {
|
|
|
|
|
|
|
+ if (!StringUtils.isEmpty(lifeUserDynamicsVo.getId()) && !StringUtils.isEmpty(lifeUserDynamicsVo.getEnableStatus())) {
|
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
lambdaUpdateWrapper.eq(LifeUserDynamics::getId, lifeUserDynamicsVo.getId());
|
|
lambdaUpdateWrapper.eq(LifeUserDynamics::getId, lifeUserDynamicsVo.getId());
|
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getEnableStatus, lifeUserDynamicsVo.getEnableStatus());
|
|
lambdaUpdateWrapper.set(LifeUserDynamics::getEnableStatus, lifeUserDynamicsVo.getEnableStatus());
|
|
@@ -106,7 +117,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
//如果发布,则将创建时间修改为当前时间
|
|
//如果发布,则将创建时间修改为当前时间
|
|
|
LifeUserDynamics lifeUserDynamics = lifeUserDynamicsMapper.selectById(store.getId());
|
|
LifeUserDynamics lifeUserDynamics = lifeUserDynamicsMapper.selectById(store.getId());
|
|
|
int draft = lifeUserDynamics.getDraft();
|
|
int draft = lifeUserDynamics.getDraft();
|
|
|
- if(draft == 1 && store.getDraft() == 0){
|
|
|
|
|
|
|
+ if (draft == 1 && store.getDraft() == 0) {
|
|
|
store.setCreatedTime(new Date());
|
|
store.setCreatedTime(new Date());
|
|
|
}
|
|
}
|
|
|
return lifeUserDynamicsMapper.updateById(store);
|
|
return lifeUserDynamicsMapper.updateById(store);
|
|
@@ -495,11 +506,11 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
|
|
|
|
|
public List<LifeUserDynamicsVo> getDianZanList(String phoneId) {
|
|
public List<LifeUserDynamicsVo> getDianZanList(String phoneId) {
|
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVos = lifeUserDynamicsMapper.selectDianZanList(phoneId);
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVos = lifeUserDynamicsMapper.selectDianZanList(phoneId);
|
|
|
- if (!CollectionUtils.isEmpty(lifeUserDynamicsVos)){
|
|
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(lifeUserDynamicsVos)) {
|
|
|
for (LifeUserDynamicsVo lifeUserDynamicsVo : lifeUserDynamicsVos) {
|
|
for (LifeUserDynamicsVo lifeUserDynamicsVo : lifeUserDynamicsVos) {
|
|
|
- if (lifeUserDynamicsVo.getType().equals("2")){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsVo.getType().equals("2")) {
|
|
|
String phoneIdNew = lifeUserDynamicsVo.getPhoneId().substring(6);
|
|
String phoneIdNew = lifeUserDynamicsVo.getPhoneId().substring(6);
|
|
|
- StoreInfo storeInfo=storeInfoMapper.getStoreNameByPhone(phoneIdNew);
|
|
|
|
|
|
|
+ StoreInfo storeInfo = storeInfoMapper.getStoreNameByPhone(phoneIdNew);
|
|
|
lifeUserDynamicsVo.setStoreName(storeInfo.getStoreName());
|
|
lifeUserDynamicsVo.setStoreName(storeInfo.getStoreName());
|
|
|
} else if (lifeUserDynamicsVo.getType().equals("1")) {
|
|
} else if (lifeUserDynamicsVo.getType().equals("1")) {
|
|
|
String phoneIdNew = lifeUserDynamicsVo.getPhoneId().substring(5);
|
|
String phoneIdNew = lifeUserDynamicsVo.getPhoneId().substring(5);
|
|
@@ -509,7 +520,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- return lifeUserDynamicsVos;
|
|
|
|
|
|
|
+ return lifeUserDynamicsVos;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public List<LifeUserDynamicsVo> getDynamicsList(Integer page, Integer size, String nickName, String userType, Integer dynamicsType, String releaseStartTime, String releaseEndTime) {
|
|
public List<LifeUserDynamicsVo> getDynamicsList(Integer page, Integer size, String nickName, String userType, Integer dynamicsType, String releaseStartTime, String releaseEndTime) {
|
|
@@ -521,10 +532,10 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
// 查询动态数据并按类型过滤
|
|
// 查询动态数据并按类型过滤
|
|
|
LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
|
|
LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
|
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getDynamicsDetail(id);
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getDynamicsDetail(id);
|
|
|
- if(!CollectionUtils.isEmpty(lifeUserDynamicsVoList)){
|
|
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(lifeUserDynamicsVoList)) {
|
|
|
lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
|
|
lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
|
|
|
String imagePath = lifeUserDynamicsVo.getImagePath();
|
|
String imagePath = lifeUserDynamicsVo.getImagePath();
|
|
|
- if(!StringUtils.isEmpty(imagePath)){
|
|
|
|
|
|
|
+ if (!StringUtils.isEmpty(imagePath)) {
|
|
|
List<String> imagePathList = Arrays.asList(imagePath.split(","));
|
|
List<String> imagePathList = Arrays.asList(imagePath.split(","));
|
|
|
lifeUserDynamicsVo.setImagePathList(imagePathList);
|
|
lifeUserDynamicsVo.setImagePathList(imagePathList);
|
|
|
}
|
|
}
|
|
@@ -536,18 +547,18 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
// 查询动态数据并按类型过滤
|
|
// 查询动态数据并按类型过滤
|
|
|
LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
|
|
LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
|
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getExpertDynamicsDetail(id);
|
|
List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getExpertDynamicsDetail(id);
|
|
|
- if(!CollectionUtils.isEmpty(lifeUserDynamicsVoList)){
|
|
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(lifeUserDynamicsVoList)) {
|
|
|
lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
|
|
lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
|
|
|
String imagePath = lifeUserDynamicsVo.getImagePath();
|
|
String imagePath = lifeUserDynamicsVo.getImagePath();
|
|
|
- if(!StringUtils.isEmpty(imagePath)){
|
|
|
|
|
|
|
+ if (!StringUtils.isEmpty(imagePath)) {
|
|
|
List<String> imagePathList = Arrays.asList(imagePath.split(","));
|
|
List<String> imagePathList = Arrays.asList(imagePath.split(","));
|
|
|
lifeUserDynamicsVo.setImagePathList(imagePathList);
|
|
lifeUserDynamicsVo.setImagePathList(imagePathList);
|
|
|
}
|
|
}
|
|
|
//查询动态表中的 gvm和评论数是否满足当前达人订单规定值 都满足修改订单状态为已完成
|
|
//查询动态表中的 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 lifeUserExpertOrder = lifeUserExpertOrderMapper.selectOne(new LambdaQueryWrapper<LifeUserExpertOrder>().eq(LifeUserExpertOrder::getId, lifeUserDynamicsVo.getBusinessId()));
|
|
|
|
|
+ if (lifeUserExpertOrder != null && lifeUserExpertOrder.getStatus() != 2) {
|
|
|
|
|
+ int liulanNum = lifeBrowseRecordMapper.selectCount(new LambdaQueryWrapper<LifeBrowseRecord>().eq(LifeBrowseRecord :: getDynamicsId, id).eq(LifeBrowseRecord :: getOrderId, lifeUserDynamicsVo.getBusinessId()));
|
|
|
|
|
+ if (lifeUserDynamicsVo.getOrderGmv().compareTo(lifeUserExpertOrder.getOrderGmv()) >= 0 && liulanNum >= lifeUserExpertOrder.getOrderPlayCount()) {
|
|
|
lifeUserExpertOrder.setStatus(2);
|
|
lifeUserExpertOrder.setStatus(2);
|
|
|
lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
}
|
|
}
|
|
@@ -557,22 +568,47 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
|
|
|
return lifeUserDynamicsVo;
|
|
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);
|
|
|
|
|
|
|
+ public R countGvm(Integer dynamicsId, String finalPrice) {
|
|
|
|
|
+ LifeUserDynamics lifeUserDynamics = lifeUserDynamicsMapper.selectOne(new LambdaQueryWrapper<LifeUserDynamics>().eq(LifeUserDynamics::getId, dynamicsId));
|
|
|
|
|
+ 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 lifeUserExpertOrder = lifeUserExpertOrderMapper.selectOne(new LambdaQueryWrapper<LifeUserExpertOrder>().eq(LifeUserExpertOrder::getId, lifeUserDynamics.getBusinessId()));
|
|
|
|
|
+ if (lifeUserExpertOrder != null && lifeUserExpertOrder.getStatus() != 2) {
|
|
|
|
|
+ LifeUserDynamics lifeUserDynamics1 = lifeUserDynamicsMapper.selectOne(new LambdaQueryWrapper<LifeUserDynamics>().eq(LifeUserDynamics::getId, dynamicsId));
|
|
|
|
|
+ int liulanNum = lifeBrowseRecordMapper.selectCount(new LambdaQueryWrapper<LifeBrowseRecord>().eq(LifeBrowseRecord :: getDynamicsId, dynamicsId).eq(LifeBrowseRecord :: getOrderId, lifeUserDynamics1.getBusinessId()));
|
|
|
|
|
+ if (lifeUserDynamics1.getOrderGmv().compareTo(lifeUserExpertOrder.getOrderGmv()) >= 0 && liulanNum >= lifeUserExpertOrder.getOrderPlayCount()) {
|
|
|
lifeUserExpertOrder.setStatus(2);
|
|
lifeUserExpertOrder.setStatus(2);
|
|
|
lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
return R.success("请求成功");
|
|
return R.success("请求成功");
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ public boolean addUserStoreBrowseNumber(LifeBrowseRecord lifeBrowseRecord) {
|
|
|
|
|
+ // 获取当天开始时间(00:00:00)
|
|
|
|
|
+ LocalDateTime todayStart = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);
|
|
|
|
|
+ // 获取当天结束时间(23:59:59.999)
|
|
|
|
|
+ LocalDateTime todayEnd = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);
|
|
|
|
|
+ LifeBrowseRecord selectOne = lifeBrowseRecordMapper.selectOne(new LambdaQueryWrapper<LifeBrowseRecord>().eq(LifeBrowseRecord::getUserId, lifeBrowseRecord.getUserId())
|
|
|
|
|
+ .between(LifeBrowseRecord::getLiulanTime, todayStart, todayEnd).in(LifeBrowseRecord::getDeleteFlag, 0, 1).eq(LifeBrowseRecord::getDynamicsId, lifeBrowseRecord.getDynamicsId())
|
|
|
|
|
+ .eq(LifeBrowseRecord::getOrderId, lifeBrowseRecord.getOrderId()));
|
|
|
|
|
+ if (selectOne == null) {
|
|
|
|
|
+ lifeBrowseRecord.setCreatedTime(new DateTime());
|
|
|
|
|
+ lifeBrowseRecord.setLiulanTime(new DateTime());
|
|
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
|
|
+ lifeBrowseRecord.setLiulanDate(sdf.format(new Date()));
|
|
|
|
|
+ lifeBrowseRecordMapper.insert(lifeBrowseRecord);
|
|
|
|
|
+ //查询当前动态浏记录数
|
|
|
|
|
+ int liulanNum = lifeBrowseRecordMapper.selectCount(new LambdaQueryWrapper<LifeBrowseRecord>().eq(LifeBrowseRecord :: getDynamicsId, lifeBrowseRecord.getDynamicsId())
|
|
|
|
|
+ .eq(LifeBrowseRecord :: getOrderId, lifeBrowseRecord.getOrderId()).in(LifeBrowseRecord :: getDeleteFlag, 0, 1));
|
|
|
|
|
+ LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ lambdaUpdateWrapper.eq(LifeUserDynamics :: getId, lifeBrowseRecord.getDynamicsId());
|
|
|
|
|
+ lambdaUpdateWrapper.set(LifeUserDynamics :: getStoreCount, liulanNum);
|
|
|
|
|
+ lifeUserDynamicsMapper.update(null,lambdaUpdateWrapper);
|
|
|
|
|
+ }
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|