提交 a8307fa4 作者: zhenjie

单位列表筛选限制、用户列表返回单位名称字段

上级 6084611b
......@@ -4,6 +4,7 @@ import com.mmc.iuav.user.entity.CompanyBackUserDO;
import com.mmc.iuav.user.entity.CompanyInfoDO;
import com.mmc.iuav.user.model.qo.CompanyInfoQO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -77,4 +78,11 @@ public interface CompanyDao {
* @return
*/
int countCompanyBackUser(Integer id);
/**
* 通过用户id获取单位信息
* @param backUserIds
* @return
*/
List<CompanyInfoDO> listCompanyInfoByUID(@Param("backUserIds") List<Integer> backUserIds);
}
......@@ -26,6 +26,7 @@ public class CompanyInfoDO implements Serializable {
private String companyUserName;
private String phoneNum;
private String remark;
private Integer backUserAccountId;
public CompanyInfoVO buildCompanyInfoVO() {
return CompanyInfoVO.builder().id(id).companyType(companyType).companyName(companyName).fullName(fullName).province(province)
......
......@@ -2,6 +2,7 @@ package com.mmc.iuav.user.service;
import com.mmc.iuav.response.ResultBody;
import com.mmc.iuav.user.entity.CompanyBackUserDO;
import com.mmc.iuav.user.entity.CompanyInfoDO;
import com.mmc.iuav.user.model.dto.LoginSuccessDTO;
import com.mmc.iuav.user.model.qo.CompanyInfoQO;
import com.mmc.iuav.user.model.vo.CompanyInfoVO;
......@@ -70,4 +71,11 @@ public interface CompanyService {
void updateCompanyBackUser(CompanyBackUserDO companyBackUserDO);
List<CompanyInfoVO> listCompanyPageBack(CompanyInfoQO companyInfoQO);
/**
* 通过用户id获取单位信息
* @param backUserIds
* @return
*/
List<CompanyInfoDO> listCompanyInfoByUID(List<Integer> backUserIds);
}
......@@ -8,6 +8,7 @@ import com.mmc.iuav.user.auth.PwdUtil;
import com.mmc.iuav.user.dao.BackUserAccountDao;
import com.mmc.iuav.user.entity.BackUserAccountDO;
import com.mmc.iuav.user.entity.CompanyBackUserDO;
import com.mmc.iuav.user.entity.CompanyInfoDO;
import com.mmc.iuav.user.model.qo.BUserAccountQO;
import com.mmc.iuav.user.model.vo.BUserAccountVO;
import com.mmc.iuav.user.model.vo.BackUserAccountVO;
......@@ -19,6 +20,7 @@ import org.springframework.stereotype.Service;
import java.security.NoSuchAlgorithmException;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
......@@ -98,7 +100,13 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
List<BackUserAccountDO> users = backUserAccountDao.listBackUserAccount(param);
List<Integer> backUserIds = users.stream().map(BackUserAccountDO::getId).collect(Collectors.toList());
List<BackUserAccountVO> collect = users.stream().map(BackUserAccountDO::buildBackUserAccountVO).collect(Collectors.toList());
List<CompanyInfoDO> companyInfoDOList = companyService.listCompanyInfoByUID(backUserIds);
if (!companyInfoDOList.isEmpty()){
Map<Integer, String> userCompanyNameMap = companyInfoDOList.stream().collect(Collectors.toMap(CompanyInfoDO::getBackUserAccountId, CompanyInfoDO::getCompanyName, (k1, k2) -> k2));
collect.forEach(d -> d.setCompanyName(userCompanyNameMap.get(d.getId())));
}
return ResultBody.success(PageResult.buildPage(pageNo, param.getPageSize(), count, collect));
}
......
......@@ -71,8 +71,9 @@ public class CompanyServiceImpl implements CompanyService {
@Override
public ResultBody<CompanyInfoVO> listCompanyPage(CompanyInfoQO param, LoginSuccessDTO loginSuccessDTO) {
if (loginSuccessDTO.getCompanyInfoVO() != null && !loginSuccessDTO.getCompanyInfoVO().getCompanyType().equals(0)){
param.setCompanyInfoId(loginSuccessDTO.getCompanyInfoVO().getId());
CompanyInfoDO companyInfoDO = companyDao.getCompanyInfoByBackUserAccountId(loginSuccessDTO.getUserAccountId());
if (companyInfoDO != null && !companyInfoDO.getCompanyType().equals(0)){
param.setCompanyInfoId(companyInfoDO.getId());
}
int count = companyDao.countListCompanyPage(param);
if (count == 0){
......@@ -111,4 +112,10 @@ public class CompanyServiceImpl implements CompanyService {
List<CompanyInfoVO> companyInfoVOList = companyInfoDOS.stream().map(CompanyInfoDO::buildCompanyInfoVO).collect(Collectors.toList());
return companyInfoVOList;
}
@Override
public List<CompanyInfoDO> listCompanyInfoByUID(List<Integer> backUserIds) {
List<CompanyInfoDO> companyInfoDOList = companyDao.listCompanyInfoByUID(backUserIds);
return companyInfoDOList;
}
}
......@@ -72,7 +72,7 @@
and company_name like CONCAT("%",#{companyName},"%")
</if>
<if test="companyInfoId != null">
and companyInfoId = #{companyInfoId}
and id = #{companyInfoId}
</if>
</select>
......@@ -84,7 +84,7 @@
and company_name like CONCAT("%",#{companyName},"%")
</if>
<if test="companyInfoId != null">
and companyInfoId = #{companyInfoId}
and id = #{companyInfoId}
</if>
order by create_time desc
limit #{pageNo}, #{pageSize}
......@@ -101,4 +101,16 @@
select count(*) from company_info ci INNER JOIN company_back_user cbu ON ci.id = cbu.company_info_id
where ci.id = #{id} and ci.is_deleted = 0
</select>
<select id="listCompanyInfoByUID" resultType="com.mmc.iuav.user.entity.CompanyInfoDO">
SELECT ci.id, ci.company_type, ci.company_name, ci.full_name, ci.province, ci.city, ci.district, ci.address, ci.company_user_name,
ci.phone_num, ci.remark, ci.create_time, cbu.back_user_account_id
FROM company_info ci INNER JOIN company_back_user cbu ON ci.id = cbu.company_info_id
WHERE ci.is_deleted = 0
<if test="backUserIds != null">
<foreach collection="backUserIds" item="backUserAccountId" open="and cbu.back_user_account_id in (" close=")" separator=",">
#{backUserAccountId}
</foreach>
</if>
</select>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论