fix:获取门店人员信息新增签约人员信息

This commit is contained in:
wangff
2025-09-23 14:00:01 +08:00
parent 5c0bf74249
commit 77cf158d3c
4 changed files with 61 additions and 1 deletions

View File

@@ -0,0 +1,37 @@
package com.cool.store.dao.store;
import cn.hutool.core.collection.CollStreamUtil;
import com.cool.store.entity.store.StoreMasterSignerInfoDO;
import com.cool.store.mapper.store.StoreMasterSignerInfoMapper;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Repository;
import java.util.Collections;
import java.util.List;
import java.util.Map;
/**
* <p>
* 门店签约信息DAO
* </p>
*
* @author wangff
* @since 2025/9/23
*/
@Repository
@RequiredArgsConstructor
public class StoreMasterSignerInfoDAO {
private final StoreMasterSignerInfoMapper storeMasterSignerInfoMapper;
/**
* 获取门店签约信息Map
*/
public Map<String, StoreMasterSignerInfoDO> getSignerMapByStoreIds(List<String> storeIds) {
if (CollectionUtils.isEmpty(storeIds)) {
return Collections.emptyMap();
}
List<StoreMasterSignerInfoDO> list = storeMasterSignerInfoMapper.selectByStoreIds(storeIds);
return CollStreamUtil.toMap(list, StoreMasterSignerInfoDO::getStoreId, v -> v);
}
}

View File

@@ -1,6 +1,7 @@
package com.cool.store.dto.store;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author suzhuhong
@@ -8,6 +9,7 @@ import lombok.Data;
* @Version 1.0
*/
@Data
@NoArgsConstructor
public class StoreUserDTO {
private String userId;
@@ -18,4 +20,8 @@ public class StoreUserDTO {
private String positionName;
public StoreUserDTO(String userName, String mobile) {
this.userName = userName;
this.mobile = mobile;
}
}

View File

@@ -1,8 +1,10 @@
package com.cool.store.service.impl;
import cn.hutool.core.collection.CollStreamUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.cool.store.dao.store.StoreMasterSignerInfoDAO;
import com.cool.store.dto.store.AuthStoreUserDTO;
import com.cool.store.dao.EnterpriseUserDAO;
import com.cool.store.dao.EnterpriseUserRoleDao;
@@ -16,6 +18,7 @@ import com.cool.store.entity.EnterpriseUserDO;
import com.cool.store.entity.StoreDO;
import com.cool.store.entity.SysRoleDO;
import com.cool.store.entity.UserAuthMappingDO;
import com.cool.store.entity.store.StoreMasterSignerInfoDO;
import com.cool.store.enums.*;
import com.cool.store.exception.ServiceException;
import com.cool.store.mapper.*;
@@ -70,6 +73,8 @@ public class StoreServiceImpl implements StoreService {
EnterpriseUserMapper enterpriseUserMapper;
@Resource
EnterpriseUserGroupMappingMapper enterpriseUserGroupMappingMapper;
@Resource
StoreMasterSignerInfoDAO storeMasterSignerInfoDAO;
@Override
public PageInfo<StoreDTO> getStoreExtendFieldInfo(Integer pageSize, Integer pageNum) {
@@ -120,6 +125,8 @@ public class StoreServiceImpl implements StoreService {
if (CollectionUtils.isEmpty(list)){
return new ArrayList<>();
}
List<String> storeIds = CollStreamUtil.toList(list, StoreDO::getStoreId);
Map<String, StoreMasterSignerInfoDO> signerMap = storeMasterSignerInfoDAO.getSignerMapByStoreIds(storeIds);
List<StoreUserPositionDTO> result = new ArrayList<>();
list.forEach(x->{
StoreUserPositionDTO storeUserPositionDTO = new StoreUserPositionDTO();
@@ -140,6 +147,16 @@ public class StoreServiceImpl implements StoreService {
storeUserDTO.setPositionName(String.join(Constants.COMMA, positionNameList));
userList.add(storeUserDTO);
}
StoreMasterSignerInfoDO signerInfoDO = signerMap.get(x.getStoreId());
if (Objects.nonNull(signerInfoDO)) {
Set<String> mobiles = CollStreamUtil.toSet(userList, StoreUserDTO::getMobile);
if (StringUtils.isNotBlank(signerInfoDO.getSigner1Mobile()) && mobiles.add(signerInfoDO.getSigner1Mobile())) {
userList.add(new StoreUserDTO(signerInfoDO.getSigner1Name(), signerInfoDO.getSigner1Mobile()));
}
if (StringUtils.isNotBlank(signerInfoDO.getSigner2Mobile()) && mobiles.add(signerInfoDO.getSigner2Mobile())) {
userList.add(new StoreUserDTO(signerInfoDO.getSigner2Name(), signerInfoDO.getSigner2Mobile()));
}
}
storeUserPositionDTO.setUserList(userList);
result.add(storeUserPositionDTO);
});

View File

@@ -135,7 +135,7 @@
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.0.7</version>
<version>5.7.22</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>