This commit is contained in:
zhangchenbiao
2023-06-20 13:43:26 +08:00
parent b5eb291768
commit 34f25bb62d
14 changed files with 88 additions and 18 deletions

View File

@@ -83,4 +83,11 @@ public class EnterpriseUserDAO {
}
return enterpriseUserMapper.getUserListByDeptLeader(regionId);
}
public List<EnterpriseUserDO> getUserListByDeptLeaders(List<String> regionIds){
if(CollectionUtils.isEmpty(regionIds)){
return Lists.newArrayList();
}
return enterpriseUserMapper.getUserListByDeptLeaders(regionIds);
}
}

View File

@@ -77,4 +77,10 @@ public interface EnterpriseUserMapper {
*/
List<EnterpriseUserDO> getUserListByDeptLeader(String regionId);
/**
* 根据开发经理获取用户列表
* @param regionIds
* @return
*/
List<EnterpriseUserDO> getUserListByDeptLeaders(@Param("regionIds") List<String> regionIds);
}

View File

@@ -288,4 +288,13 @@
<select id="getUserListByDeptLeader" resultMap="BaseResultMap">
select user_id, leader_dept_ids from enterprise_user where leader_dept_ids like concat("%", #{regionId}, "%") and deleted = 0
</select>
<select id="getUserListByDeptLeaders" resultMap="BaseResultMap">
select
user_id, name, mobile
from
enterprise_user
where
deleted = 0 and <foreach collection="regionIds" separator="or" open="(" close=")" item="regionId"> leader_dept_ids like concat("%", #{regionId}, "%") </foreach>
</select>
</mapper>

View File

@@ -22,7 +22,7 @@ public class IntentAreaSettingRequest {
@ApiModelProperty("战区名称")
private String zoneName;
@ApiModelProperty("组织机构ID集合")
private List<Long> orgIdList;
private List<String> orgIdList;
@ApiModelProperty("开放区域id集合")
private List<Long> openAreaIdList;
}

View File

@@ -1,6 +1,12 @@
package com.cool.store.vo;
import com.cool.store.entity.EnterpriseUserDO;
import com.google.common.collect.Lists;
import lombok.Data;
import org.apache.commons.collections4.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
/**
* @Author suzhuhong
@@ -15,4 +21,19 @@ public class EnterpriseUserSingleInfoVO {
private String userName;
private String mobile;
public static List<EnterpriseUserSingleInfoVO> convertVO(List<EnterpriseUserDO> userList){
if(CollectionUtils.isEmpty(userList)){
return Lists.newArrayList();
}
List<EnterpriseUserSingleInfoVO> resultList = new ArrayList<>();
for (EnterpriseUserDO enterpriseUser : userList) {
EnterpriseUserSingleInfoVO result = new EnterpriseUserSingleInfoVO();
result.setUserId(enterpriseUser.getUserId());
result.setUserName(enterpriseUser.getName());
result.setMobile(enterpriseUser.getMobile());
resultList.add(result);
}
return resultList;
}
}

View File

@@ -35,4 +35,11 @@ public interface EnterpriseUserService {
List<EnterpriseUserSingleInfoVO> getDevelopmentDirectorList(String wantShopArea);
/**
* 根据意向区域获取开发主管
* @param zoneId
* @return
*/
EnterpriseUserDO getDevelopmentByZoneId(Long zoneId);
}

View File

@@ -13,6 +13,7 @@ import com.cool.store.service.ZoneService;
import com.cool.store.vo.EnterpriseUserSingleInfoVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@@ -82,15 +83,7 @@ public class EnterpriseUserServiceImpl implements EnterpriseUserService {
if (CommonConstants.TRANSFER.equals(type)){
enterpriseUserDOS = enterpriseUserDAO.searchUserByRegionIdsAndKeyword(new ArrayList<>(regionList), keyword, Boolean.TRUE);
}
List<EnterpriseUserSingleInfoVO> enterpriseUserSingleInfoVOS = new ArrayList<>();
enterpriseUserDOS.forEach(x->{
EnterpriseUserSingleInfoVO enterpriseUserSingleInfoVO = new EnterpriseUserSingleInfoVO();
enterpriseUserSingleInfoVO.setUserId(x.getUserId());
enterpriseUserSingleInfoVO.setUserName(x.getName());
enterpriseUserSingleInfoVO.setMobile(x.getMobile());
enterpriseUserSingleInfoVOS.add(enterpriseUserSingleInfoVO);
});
return enterpriseUserSingleInfoVOS;
return EnterpriseUserSingleInfoVO.convertVO(enterpriseUserDOS);
}
@Override
@@ -125,7 +118,7 @@ public class EnterpriseUserServiceImpl implements EnterpriseUserService {
result.setInvestmentUserIds(userList);
}
//开发区域
List<String> developementList = zoneInfoList.stream().filter(o -> "developement".equals(o.getType())).flatMap(o->JSONObject.parseArray(o.getAssociatedRegionId(), String.class).stream()).collect(Collectors.toList());
List<String> developementList = zoneInfoList.stream().filter(o -> "dev".equals(o.getType())).flatMap(o->JSONObject.parseArray(o.getAssociatedRegionId(), String.class).stream()).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(developementList)){
//获取负责的区域
developementList.retainAll(subRegionIds);
@@ -138,6 +131,23 @@ public class EnterpriseUserServiceImpl implements EnterpriseUserService {
@Override
public List<EnterpriseUserSingleInfoVO> getDevelopmentDirectorList(String wantShopArea) {
return null;
List<HyIntendDevZoneInfoDO> devList = hyIntendDevZoneInfoDAO.getHyIntendDevZoneInfoList("dev");
List<String> regionIds = ListUtils.emptyIfNull(devList).stream().flatMap(o -> JSONObject.parseArray(o.getAssociatedRegionId(), String.class).stream()).collect(Collectors.toList());
List<EnterpriseUserDO> userList = enterpriseUserDAO.getUserListByDeptLeaders(regionIds);
return EnterpriseUserSingleInfoVO.convertVO(userList);
}
@Override
public EnterpriseUserDO getDevelopmentByZoneId(Long zoneId) {
HyIntendDevZoneInfoDO zoneInfo = hyIntendDevZoneInfoDAO.selectById(zoneId);
if(Objects.isNull(zoneInfo)){
throw new ServiceException(ErrorCodeEnum.ZONE_NOT_EXIST);
}
List<String> regionIds = JSONObject.parseArray(zoneInfo.getAssociatedRegionId(), String.class);
List<EnterpriseUserDO> userList = enterpriseUserDAO.getUserListByDeptLeaders(regionIds);
if(CollectionUtils.isEmpty(userList)){
return null;
}
return userList.stream().findAny().get();
}
}

View File

@@ -86,7 +86,7 @@ public class ZoneServiceImpl implements ZoneService {
hyIntendDevZoneInfoDO.setId(intentAreaSettingRequest.getId());
hyIntendDevZoneInfoDO.setZoneName(intentAreaSettingRequest.getZoneName());
hyIntendDevZoneInfoDO.setUpdateUserId(userId);
hyIntendDevZoneInfoDO.setAssociatedRegionId(CollectionUtils.isNotEmpty(intentAreaSettingRequest.getOrgIdList())?JSONObject.toJSONString(intentAreaSettingRequest.getOrgIdList()):"");
hyIntendDevZoneInfoDO.setAssociatedRegionId(CollectionUtils.isNotEmpty(intentAreaSettingRequest.getOrgIdList())?JSONObject.toJSONString(intentAreaSettingRequest.getOrgIdList()):null);
hyIntendDevZoneInfoDAO.updateByPrimaryKeySelective(hyIntendDevZoneInfoDO);
//添加战区映射的意向区域
hyIntendDevMappingDAO.deleteByOpenAreaIds(intentAreaSettingRequest.getOpenAreaIdList(),intentAreaSettingRequest.getType());

View File

@@ -229,4 +229,14 @@ public class TestController {
return ResponseResult.success(enterpriseUserService.getUserIdsByScope(userId));
}
@GetMapping("getDevelopmentDirectorList")
public ResponseResult getDevelopmentDirectorList(@RequestParam("wantShopArea") String wantShopArea){
return ResponseResult.success(enterpriseUserService.getDevelopmentDirectorList(wantShopArea));
}
@GetMapping("getDevelopmentByZoneId")
public ResponseResult getDevelopmentByZoneId(@RequestParam("zoneId") Long zoneId){
return ResponseResult.success(enterpriseUserService.getDevelopmentByZoneId(zoneId));
}
}

View File

@@ -33,7 +33,7 @@ mybatis.mapper-locations=classpath*:mapper/**/*Mapper.xml
mybatis.configuration.call-setters-on-nulls=true
mybatis.configuration.map-underscore-to-camel-case=true
isv.domain = https://abstore-isv.coolstore.cn
isv.domain = https://abstore-isv.coolstore.cn/isv
#rocketmq \u914D\u7F6E
rocketmq.accessKey=LTAI5t5ouXZuFgxJMbQea3b2

View File

@@ -33,7 +33,7 @@ mybatis.mapper-locations=classpath*:mapper/**/*Mapper.xml
mybatis.configuration.call-setters-on-nulls=true
mybatis.configuration.map-underscore-to-camel-case=true
isv.domain = https://hdstore-isv.coolcollege.cn
isv.domain = https://hdstore-isv.coolcollege.cn/isv
#rocketmq \u914D\u7F6E
rocketmq.accessKey=LTAI5t5ouXZuFgxJMbQea3b2

View File

@@ -33,7 +33,7 @@ mybatis.mapper-locations=classpath*:mapper/**/*Mapper.xml
mybatis.configuration.call-setters-on-nulls=true
mybatis.configuration.map-underscore-to-camel-case=true
isv.domain = https://tstore-isv.coolcollege.cn
isv.domain = https://tstore-isv.coolcollege.cn/isv
#rocketmq \u914D\u7F6E
rocketmq.accessKey=LTAI5t5ouXZuFgxJMbQea3b2

View File

@@ -33,7 +33,7 @@ mybatis.mapper-locations=classpath*:mapper/**/*Mapper.xml
mybatis.configuration.call-setters-on-nulls=true
mybatis.configuration.map-underscore-to-camel-case=true
isv.domain = https://abstore-isv.coolstore.cn
isv.domain = https://abstore-isv.coolstore.cn/isv
#rocketmq \u914D\u7F6E
rocketmq.accessKey=LTAI5t5ouXZuFgxJMbQea3b2

View File

@@ -36,7 +36,7 @@ customize_sub_table_size=10
mybatis.configuration.call-setters-on-nulls=true
mybatis.configuration.map-underscore-to-camel-case=true
isv.domain = https://abstore-isv.coolstore.cn
isv.domain = https://abstore-isv.coolstore.cn/isv
#rocketmq \u914D\u7F6E
rocketmq.accessKey=LTAI5t5ouXZuFgxJMbQea3b2