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 String commodityName;
/**
* 服务项目排序
*/
private Integer sort;
/** /**
* 服务启动状态 * 服务启动状态
* 0:停用 * 0:停用

View File

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