This commit is contained in:
admin
2024-08-27 22:45:51 +08:00
parent cfa6fd8a63
commit 9b0880bcc8
3 changed files with 26 additions and 6 deletions

View File

@@ -43,6 +43,11 @@ public class PlayClerkCommodityEntity extends BaseEntity<PlayClerkCommodityEntit
*/
private String commodityName;
/**
* 服务项目排序
*/
private Integer sort;
/**
* 服务启动状态
* 0:停用

View File

@@ -48,6 +48,7 @@ public class PlayClerkCommodityServiceImpl extends ServiceImpl<PlayClerkCommodit
entity.setCommodityId(commodityInfo.getId());
entity.setCommodityName(commodityInfo.getItemName());
entity.setEnablingState("1");
entity.setSort(commodityInfo.getSort());
this.create(entity);
}
@@ -63,6 +64,7 @@ public class PlayClerkCommodityServiceImpl extends ServiceImpl<PlayClerkCommodit
@Override
public List<PlayClerkCommodityEntity> selectCommodityTypeByUser(String userId, String enablingState) {
LambdaQueryWrapper<PlayClerkCommodityEntity> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.orderByDesc(PlayClerkCommodityEntity::getSort);
lambdaQueryWrapper.eq(PlayClerkCommodityEntity::getClerkId, userId);
if (StrUtil.isNotBlank(enablingState)) {
lambdaQueryWrapper.eq(PlayClerkCommodityEntity::getEnablingState, enablingState);

View File

@@ -3,7 +3,9 @@ package com.starry.admin.modules.weichat.controller;
import com.starry.admin.common.aspect.ClerkUserLogin;
import com.starry.admin.common.conf.ThreadLocalRequestDetail;
import com.starry.admin.common.exception.CustomException;
import com.starry.admin.modules.clerk.module.entity.PlayClerkCommodityEntity;
import com.starry.admin.modules.clerk.module.entity.PlayClerkUserInfoEntity;
import com.starry.admin.modules.clerk.service.IPlayClerkCommodityService;
import com.starry.admin.modules.clerk.service.IPlayClerkUserInfoService;
import com.starry.admin.modules.shop.module.entity.PlayCommodityAndLevelInfoEntity;
import com.starry.admin.modules.shop.service.IPlayCommodityAndLevelInfoService;
@@ -19,6 +21,8 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 店员等级
@@ -40,6 +44,9 @@ public class WxClerkCommodityController {
@Resource
private IPlayClerkUserInfoService clerkUserInfoService;
@Resource
IPlayClerkCommodityService playClerkCommodityService;
@GetMapping("/custom/queryClerkAllCommodityByLevel")
public R queryClerkAllCommodityByLevel(@RequestParam("id") String levelId) {
@@ -49,13 +56,13 @@ public class WxClerkCommodityController {
return R.ok(tree);
}
tree = formatPlayCommodityReturnVoTree(tree, levelInfoEntities, levelId);
tree = formatPlayCommodityReturnVoTree(tree);
tree = formatPlayCommodityReturnVoTree(tree, null);
return R.ok(tree);
}
/**
* 顾客查询所有店员所有服务项目
* 顾客查询当前店员所有服务项目
*
* @return 店员所有服务项目
*/
@@ -65,10 +72,11 @@ public class WxClerkCommodityController {
throw new CustomException("请求参数异常,id不能为空");
}
PlayClerkUserInfoEntity clerkUserInfo = clerkUserInfoService.selectById(clerkId);
Map<String, List<PlayClerkCommodityEntity>> clerkCommodityEntities = playClerkCommodityService.selectCommodityTypeByUser(clerkId, "1").stream().collect(Collectors.groupingBy(PlayClerkCommodityEntity::getCommodityId));
List<PlayCommodityAndLevelInfoEntity> levelInfoEntities = iPlayCommodityAndLevelInfoService.selectAll();
List<PlayCommodityReturnVo> tree = playCommodityInfoService.selectTree();
tree = formatPlayCommodityReturnVoTree(tree, levelInfoEntities, clerkUserInfo.getLevelId());
tree = formatPlayCommodityReturnVoTree(tree);
tree = formatPlayCommodityReturnVoTree(tree, clerkCommodityEntities);
return R.ok(tree);
}
@@ -84,9 +92,11 @@ public class WxClerkCommodityController {
public R clerkQueryAllCommodity() {
String levelId = ThreadLocalRequestDetail.getClerkUserInfo().getLevelId();
List<PlayCommodityAndLevelInfoEntity> levelInfoEntities = iPlayCommodityAndLevelInfoService.selectAll();
Map<String, List<PlayClerkCommodityEntity>> clerkCommodityEntities = playClerkCommodityService.selectCommodityTypeByUser(ThreadLocalRequestDetail.getClerkUserInfo().getId(), "1").stream().collect(Collectors.groupingBy(PlayClerkCommodityEntity::getCommodityId));
List<PlayCommodityReturnVo> tree = playCommodityInfoService.selectTree();
tree = formatPlayCommodityReturnVoTree(tree, levelInfoEntities, levelId);
tree = formatPlayCommodityReturnVoTree(tree);
tree = formatPlayCommodityReturnVoTree(tree, clerkCommodityEntities);
return R.ok(tree);
}
@@ -110,14 +120,17 @@ public class WxClerkCommodityController {
return tree;
}
public List<PlayCommodityReturnVo> formatPlayCommodityReturnVoTree(List<PlayCommodityReturnVo> tree) {
public List<PlayCommodityReturnVo> formatPlayCommodityReturnVoTree(List<PlayCommodityReturnVo> tree, Map<String, List<PlayClerkCommodityEntity>> clerkCommodityEntities) {
Iterator<PlayCommodityReturnVo> it = tree.iterator();
while (it.hasNext()) {
PlayCommodityReturnVo item = it.next();
if ("00".equals(item.getPId()) && item.getChild().isEmpty()) {
it.remove();
}
formatPlayCommodityReturnVoTree(item.getChild());
if (clerkCommodityEntities != null && "00".equals(item.getPId()) && !clerkCommodityEntities.containsKey(item.getId())) {
it.remove();
}
formatPlayCommodityReturnVoTree(item.getChild(), clerkCommodityEntities);
}
return tree;
}