From 40d3bb9fe638a0bd79e829e7fd5114871101390b Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期四, 20 十一月 2025 10:52:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/user_action' into user_action
---
framework/src/main/java/cn/lili/modules/lmk/service/impl/StoreMemberServiceImpl.java | 131 ++++++++++++++++++++++++++++++-------------
1 files changed, 90 insertions(+), 41 deletions(-)
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/StoreMemberServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/StoreMemberServiceImpl.java
index bc19a15..e1a083e 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/StoreMemberServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/StoreMemberServiceImpl.java
@@ -1,21 +1,27 @@
package cn.lili.modules.lmk.service.impl;
+import cn.hutool.crypto.SecureUtil;
import cn.lili.base.Result;
import cn.lili.common.security.AuthUser;
import cn.lili.common.security.context.UserContext;
+import cn.lili.common.vo.PageVO;
import cn.lili.modules.lmk.domain.entity.StoreMember;
import cn.lili.modules.lmk.domain.form.StoreMemberForm;
import cn.lili.modules.lmk.domain.query.StoreMemberQuery;
+import cn.lili.modules.lmk.domain.vo.CheckClerkPermissionVO;
import cn.lili.modules.lmk.domain.vo.StoreMemberVO;
import cn.lili.modules.lmk.mapper.StoreMemberMapper;
import cn.lili.modules.lmk.service.StoreMemberService;
+import cn.lili.modules.member.entity.dos.Clerk;
import cn.lili.modules.member.entity.dos.Member;
-import cn.lili.modules.member.entity.dto.ManagerMemberEditDTO;
-import cn.lili.modules.member.entity.dto.MemberAddDTO;
+import cn.lili.modules.member.entity.dto.*;
+import cn.lili.modules.member.entity.vo.ClerkVO;
+import cn.lili.modules.member.service.ClerkService;
import cn.lili.modules.member.service.MemberService;
import cn.lili.utils.PageUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
@@ -24,6 +30,8 @@
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
@@ -40,6 +48,8 @@
private final StoreMemberMapper storeMemberMapper;
private final MemberService memberService;
+
+ private final ClerkService clerkService;
/**
* 娣诲姞
* @param form
@@ -47,29 +57,25 @@
*/
@Override
public Result add(StoreMemberForm form) {
- //鎻掑叆鍒扮敤鎴疯〃涓�
- AuthUser currentUser = UserContext.getCurrentUser();
- String id = currentUser.getId();
-// String storeId = currentUser.getStoreId();
- String storeId = "12312323123";
- if (id == null || storeId == null) {
- return Result.error("褰撳墠鐧诲綍璐︽埛鏈粦瀹氬晢鎴锋垨鐢ㄦ埛id鑾峰彇寮傚父");
+ String storeId =UserContext.getCurrentUser().getStoreId();
+ System.out.println(storeId);
+ //
+ if ( storeId == null){
+ return null;
}
-
- //鎻掑叆浼氬憳琛�
- MemberAddDTO addDTO = new MemberAddDTO();
- addDTO.setMobile(form.getMobile());
- addDTO.setPassword(form.getPassword());
- addDTO.setUsername(form.getMobile());
-
- Member member = memberService.addMember(addDTO);
+ ClerkAddDTO clerkAddDTO = new ClerkAddDTO();
+ clerkAddDTO.setPassword(SecureUtil.md5(form.getPassword()));
+ clerkAddDTO.setRoles(form.getRole());
+ clerkAddDTO.setUsername(form.getMobile());
+ clerkAddDTO.setMobile(form.getMobile());
+ clerkAddDTO.setDepartmentId(form.getDepartmentId());
+ clerkAddDTO.setIsSuper(form.getIsSuper());
+ Member member = clerkService.addClerkReturnMember(clerkAddDTO);
//鎻掑叆鐢ㄦ埛鏉冮檺琛�
//id鎻掑叆闂
StoreMember entity = StoreMemberForm.getEntityByForm(form, null);
entity.setMemberId(member.getId());
- entity.setStoreId(storeId);
-
baseMapper.insert(entity);
return Result.ok("娣诲姞鎴愬姛");
}
@@ -81,16 +87,27 @@
*/
@Override
public Result update(StoreMemberForm form) {
- StoreMember entity = baseMapper.selectById(form.getId());
+ ClerkEditDTO clerkEditDTO = new ClerkEditDTO();
+ clerkEditDTO.setId(form.getId());
+ clerkEditDTO.setRoles(form.getRole());
+ clerkEditDTO.setDepartmentId(form.getDepartmentId());
+ clerkEditDTO.setIsSuper(form.getIsSuper());
+ Clerk clerk = clerkService.updateClerk(clerkEditDTO);
+ StoreMember entity = new LambdaQueryChainWrapper<>(baseMapper)
+ .eq(StoreMember::getMemberId,clerk.getMemberId())
+ .one();
+ if (entity == null){
+ //鎻掑叆
+ entity = new StoreMember();
+ entity.setMemberId(clerk.getMemberId());
+ entity.setRealName(form.getRealName());
+ baseMapper.insert(entity);
+ }else {
+ //淇敼鐪熷疄濮撳悕
+ entity.setRealName(form.getRealName());
- //TODO 鏄惁闇�瑕佸垽鏂瘑鐮佹柊瀵嗙爜
- //浼氬憳淇敼瀵嗙爜锛岀數璇�
- memberService.updateMemberPartProperties(entity.getMemberId(),form.getPassword(),form.getMobile());
-
- //淇敼鐪熷疄濮撳悕
- entity.setRealName(form.getRealName());
- entity.setRole(form.getRole());
- baseMapper.updateById(entity);
+ baseMapper.updateById(entity);
+ }
return Result.ok("淇敼鎴愬姛");
}
@@ -112,11 +129,15 @@
*/
@Override
public Result removeById(String id) {
- StoreMember entity = baseMapper.selectById(id);
- memberService.removeById(entity.getMemberId());
- baseMapper.deleteById(id);
- //鍚屾椂鍒犻櫎鐢ㄦ埛
+ ClerkVO clerkVO =clerkService.get(id);
+ List<String> ids = new ArrayList<>();
+ ids.add(id);
+ clerkService.deleteClerk(ids);
+ baseMapper.delete(new LambdaQueryChainWrapper<>(baseMapper)
+ .eq(StoreMember::getMemberId,clerkVO.getMemberId()));
+ //鍚屾椂鍒犻櫎鐢ㄦ埛
+ // 鐢ㄦ埛瑙掕壊
return Result.ok("鍒犻櫎鎴愬姛");
}
@@ -128,15 +149,17 @@
*/
@Override
public Result page(StoreMemberQuery query) {
- AuthUser currentUser = UserContext.getCurrentUser();
-// String storeId = currentUser.getStoreId();
- String storeId = "12312323123";
+ String storeId = UserContext.getCurrentUser().getStoreId();
+
+ //TODO 涓嶉�氳繃UserContext鑾峰緱搴楅摵id锛岄�氳繃浼氬憳id鏌ヨ鏁版嵁搴撻噷鐨勫晢搴梚d
+// String storeId = "1376433565247471616";
if (storeId == null) {
return Result.error("褰撳墠鐧诲綍璐︽埛鏈粦瀹氬晢鎴锋垨鐢ㄦ埛id鑾峰彇寮傚父");
}
- IPage<StoreMemberVO> page = PageUtil.getPage(query, StoreMemberVO.class);
+ System.out.println(query.getPageNumber());
+ IPage<ClerkVO> page = PageUtil.getPage(query, ClerkVO.class);
query.setStoreId(storeId);
- baseMapper.getPage(page, query);
+ baseMapper.getClerkPage(page, query);
return Result.ok().data(page.getRecords()).total(page.getTotal());
}
@@ -147,11 +170,17 @@
*/
@Override
public Result detail(String id) {
- StoreMemberVO vo = baseMapper.getById(id);
- //瀵嗙爜鏄惁闇�瑕佽В瀵�
+ ClerkVO clerkVO = clerkService.get(id);
+ StoreMember storeMember = new LambdaQueryChainWrapper<>(baseMapper)
+ .eq(StoreMember::getMemberId, clerkVO.getMemberId())
+ .one();
+ if (storeMember != null) {
+ clerkVO.setRealName(storeMember.getRealName());
+ }
- Assert.notNull(vo, "璁板綍涓嶅瓨鍦�");
- return Result.ok().data(vo);
+ //瀵嗙爜鏄惁闇�瑕佽В瀵�
+ Assert.notNull(clerkVO, "璁板綍涓嶅瓨鍦�");
+ return Result.ok().data(clerkVO);
}
/**
@@ -166,4 +195,24 @@
.collect(Collectors.toList());
return Result.ok().data(vos);
}
+ // 鑾峰緱褰撳墠璐﹀彿鐨勭敤鎴峰簵鍛樹俊鎭�
+ public ClerkVO getUserContextClerkInfo(){
+ String id = UserContext.getCurrentUser().getId();
+ Clerk clerk = clerkService.getClerkByMemberId(id);
+ if (clerk == null){
+ throw new RuntimeException("鑾峰彇搴楀憳淇℃伅寮傚父");
+ }
+ return clerkService.get(clerk.getId());
+ }
+
+ @Override
+ public Result checkDelAndUpdatePermission() {
+
+ ClerkVO clerkVO = getUserContextClerkInfo();
+ CheckClerkPermissionVO permissionVO = new CheckClerkPermissionVO();
+ permissionVO.setClerkId(clerkVO.getId());
+ permissionVO.setIsShopkeeper(clerkVO.getShopkeeper());
+ permissionVO.setIsSuper(clerkVO.getIsSuper());
+ return Result.ok().data(permissionVO);
+ }
}
--
Gitblit v1.8.0