|
@@ -1,19 +1,28 @@
|
|
package com.ylx.massage.service.impl;
|
|
package com.ylx.massage.service.impl;
|
|
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.ylx.common.constant.MassageConstants;
|
|
import com.ylx.common.constant.MassageConstants;
|
|
-import com.ylx.common.core.domain.R;
|
|
|
|
import com.ylx.common.exception.ServiceException;
|
|
import com.ylx.common.exception.ServiceException;
|
|
|
|
+import com.ylx.common.utils.bean.BeanUtils;
|
|
|
|
+import com.ylx.massage.domain.TJs;
|
|
import com.ylx.massage.domain.TXiangmu;
|
|
import com.ylx.massage.domain.TXiangmu;
|
|
|
|
+import com.ylx.massage.domain.vo.TXiangmuDetailVo;
|
|
import com.ylx.massage.mapper.TXiangmuMapper;
|
|
import com.ylx.massage.mapper.TXiangmuMapper;
|
|
|
|
+import com.ylx.massage.service.TJsService;
|
|
import com.ylx.massage.service.TXiangmuService;
|
|
import com.ylx.massage.service.TXiangmuService;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
-import java.rmi.ServerException;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
|
|
+import java.util.Arrays;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 项目Service接口
|
|
* 项目Service接口
|
|
@@ -23,24 +32,26 @@ import java.time.LocalDateTime;
|
|
*/
|
|
*/
|
|
@Service
|
|
@Service
|
|
public class TXiangmuServiceImpl extends ServiceImpl<TXiangmuMapper, TXiangmu> implements TXiangmuService {
|
|
public class TXiangmuServiceImpl extends ServiceImpl<TXiangmuMapper, TXiangmu> implements TXiangmuService {
|
|
|
|
+ @Resource
|
|
|
|
+ private TJsService jsService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public Boolean addOrUpdate(TXiangmu xiangmu) {
|
|
public Boolean addOrUpdate(TXiangmu xiangmu) {
|
|
if (StringUtils.isBlank(xiangmu.getcId())) {
|
|
if (StringUtils.isBlank(xiangmu.getcId())) {
|
|
- if(StringUtils.isBlank(xiangmu.getcCover())){
|
|
|
|
|
|
+ if (StringUtils.isBlank(xiangmu.getcCover())) {
|
|
throw new ServiceException("封面图不能为空");
|
|
throw new ServiceException("封面图不能为空");
|
|
}
|
|
}
|
|
- if(StringUtils.isBlank(xiangmu.getcTitle())){
|
|
|
|
|
|
+ if (StringUtils.isBlank(xiangmu.getcTitle())) {
|
|
throw new ServiceException("标题不能为空");
|
|
throw new ServiceException("标题不能为空");
|
|
}
|
|
}
|
|
- if(null == xiangmu.getdPrice()){
|
|
|
|
|
|
+ if (null == xiangmu.getdPrice()) {
|
|
throw new ServiceException("标注价格(现价)不能为空");
|
|
throw new ServiceException("标注价格(现价)不能为空");
|
|
}
|
|
}
|
|
- if(null == xiangmu.getdYuanPrice()){
|
|
|
|
|
|
+ if (null == xiangmu.getdYuanPrice()) {
|
|
throw new ServiceException("原价不能为空");
|
|
throw new ServiceException("原价不能为空");
|
|
}
|
|
}
|
|
- if(null == xiangmu.getnMinute()){
|
|
|
|
|
|
+ if (null == xiangmu.getnMinute()) {
|
|
throw new ServiceException("时长不能为空");
|
|
throw new ServiceException("时长不能为空");
|
|
}
|
|
}
|
|
xiangmu.setnSaleNumber(MassageConstants.INTEGER_ZERO);
|
|
xiangmu.setnSaleNumber(MassageConstants.INTEGER_ZERO);
|
|
@@ -48,4 +59,24 @@ public class TXiangmuServiceImpl extends ServiceImpl<TXiangmuMapper, TXiangmu> i
|
|
}
|
|
}
|
|
return this.saveOrUpdate(xiangmu);
|
|
return this.saveOrUpdate(xiangmu);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public TXiangmuDetailVo details(String id) {
|
|
|
|
+ TXiangmu byId = this.getById(id);
|
|
|
|
+ if (null != byId) {
|
|
|
|
+ TXiangmuDetailVo tXiangmuDetailVo = new TXiangmuDetailVo();
|
|
|
|
+ BeanUtils.copyBeanProp(tXiangmuDetailVo, byId);
|
|
|
|
+ //查技师
|
|
|
|
+ if (StringUtils.isBlank(byId.getRecommendTechnician())) {
|
|
|
|
+ return tXiangmuDetailVo;
|
|
|
|
+ }
|
|
|
|
+ List<String> jsList = Arrays.stream(byId.getRecommendTechnician().split(",")).collect(Collectors.toList());
|
|
|
|
+ LambdaQueryWrapper<TJs> jsLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ jsLambdaQueryWrapper.in(CollectionUtil.isNotEmpty(jsList), TJs::getId, jsList);
|
|
|
|
+ List<TJs> list = jsService.list(jsLambdaQueryWrapper);
|
|
|
|
+ tXiangmuDetailVo.setJsList(list);
|
|
|
|
+ return tXiangmuDetailVo;
|
|
|
|
+ }
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
}
|
|
}
|