河流,水库站点基本信息管理,bug修复等
This commit is contained in:
@ -21,7 +21,7 @@ public class Project extends BaseEntity
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 项目id */
|
||||
private Long projectId;
|
||||
private Long id;
|
||||
|
||||
/** 项目名称 */
|
||||
@Excel(name = "项目名称")
|
||||
|
@ -52,7 +52,7 @@ public interface IProjectService
|
||||
* @param projectIds 需要删除的项目主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
int deleteProjectByProjectIds(Long[] projectIds);
|
||||
int deleteProjectByProjectIds(Long projectId);
|
||||
|
||||
|
||||
|
||||
|
@ -4,6 +4,7 @@ import cn.hutool.core.codec.Base64;
|
||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||
import com.fastbee.common.constant.ProjectLevelConstant;
|
||||
import com.fastbee.common.core.domain.entity.SysDept;
|
||||
import com.fastbee.common.core.domain.entity.SysUser;
|
||||
import com.fastbee.common.exception.ServiceException;
|
||||
import com.fastbee.common.holder.ProjectHolder;
|
||||
import com.fastbee.common.utils.DateUtils;
|
||||
@ -12,6 +13,7 @@ import com.fastbee.project.mapper.ProjectMapper;
|
||||
import com.fastbee.project.service.IProjectService;
|
||||
|
||||
import com.fastbee.system.mapper.SysDeptMapper;
|
||||
import com.fastbee.system.mapper.SysUserMapper;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@ -28,13 +30,13 @@ public class ProjectServiceImpl implements IProjectService
|
||||
{
|
||||
|
||||
private final ProjectMapper projectMapper;
|
||||
|
||||
|
||||
private final SysDeptMapper sysDeptMapper;
|
||||
private final SysUserMapper sysUserMapper;
|
||||
|
||||
public ProjectServiceImpl(ProjectMapper projectMapper, SysDeptMapper sysDeptMapper) {
|
||||
public ProjectServiceImpl(ProjectMapper projectMapper, SysDeptMapper sysDeptMapper, SysUserMapper sysUserMapper) {
|
||||
this.projectMapper = projectMapper;
|
||||
this.sysDeptMapper = sysDeptMapper;
|
||||
this.sysUserMapper = sysUserMapper;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -56,7 +58,7 @@ public class ProjectServiceImpl implements IProjectService
|
||||
public List<Project> selectProjectList(Project project)
|
||||
{
|
||||
return new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName, Project::getScope,
|
||||
.select(Project::getId, Project::getProjectName, Project::getScope,
|
||||
Project::getAdministrativeArea, Project::getDeptId,Project::getAdministrativeAreaCode,
|
||||
Project::getLogo, Project::getImage, Project::getLevel, Project::getDeptName,
|
||||
Project::getCreateTime)
|
||||
@ -71,7 +73,7 @@ public class ProjectServiceImpl implements IProjectService
|
||||
public int insertProject(Project project)
|
||||
{ //判断选择的机构下是否已经绑定项目
|
||||
List<Project> projectList = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName)
|
||||
.select(Project::getId, Project::getProjectName)
|
||||
.eq(Project::getDeptId, project.getDeptId()).list();
|
||||
if(!projectList.isEmpty()){
|
||||
throw new ServiceException("该机构下已经存在项目");
|
||||
@ -82,15 +84,16 @@ public class ProjectServiceImpl implements IProjectService
|
||||
|
||||
/**
|
||||
* 修改项目
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateProject(Project project)
|
||||
{
|
||||
//判断选择的机构下是否已经绑定项目
|
||||
Project one = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName,Project::getDeptId)
|
||||
.eq(Project::getDeptId, project.getDeptId()).one();
|
||||
.select(Project::getId, Project::getProjectName,Project::getDeptId)
|
||||
.eq(Project::getDeptId, project.getDeptId())
|
||||
// .ne(Project::getId,project.getId())
|
||||
.one();
|
||||
if(Objects.isNull(one)){
|
||||
throw new ServiceException("项目不存在!");
|
||||
}
|
||||
@ -102,12 +105,12 @@ public class ProjectServiceImpl implements IProjectService
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除项目
|
||||
* 删除项目
|
||||
*/
|
||||
@Override
|
||||
public int deleteProjectByProjectIds(Long[] projectIds)
|
||||
public int deleteProjectByProjectIds(Long projectId)
|
||||
{
|
||||
return projectMapper.deleteProjectByProjectIds(projectIds);
|
||||
return projectMapper.deleteById(projectId);
|
||||
}
|
||||
|
||||
|
||||
@ -116,20 +119,27 @@ public class ProjectServiceImpl implements IProjectService
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> selectProjectByUserId(Long userId) {
|
||||
//查询用户所属机构
|
||||
SysUser sysUser = new LambdaQueryChainWrapper<>(sysUserMapper)
|
||||
.select(SysUser::getUserId, SysUser::getDeptId)
|
||||
.eq(SysUser::getUserId, userId)
|
||||
.one();
|
||||
|
||||
|
||||
//查询该管理员所管理的项目id以及子项目id列表
|
||||
Project project = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName,Project::getLevel,Project::getDeptId)
|
||||
.eq(Project::getOwnerId, userId)
|
||||
.select(Project::getId, Project::getProjectName,Project::getLevel,Project::getDeptId)
|
||||
.eq(Project::getDeptId, sysUser.getDeptId())
|
||||
.one();
|
||||
if(Objects.isNull(project)){
|
||||
return null;
|
||||
}
|
||||
List<Long> projects = getAllProjects(project.getProjectId());
|
||||
List<Long> projects = getAllProjects(project.getId());
|
||||
//把列表进行Base64编码
|
||||
String projectsBase64 = Base64.encode(projects.toString());
|
||||
HashMap<String , Object> map = new HashMap<>();
|
||||
map.put("projectIds",projectsBase64);
|
||||
map.put("projectId",project.getProjectId());
|
||||
map.put("projectId",project.getId());
|
||||
map.put("projectName", project.getProjectName());
|
||||
map.put("projectLevel",project.getLevel().equals("市级")? ProjectLevelConstant.LEVEL_CITY :ProjectLevelConstant.LEVEL_COUNTY);
|
||||
return map;
|
||||
@ -146,7 +156,7 @@ public class ProjectServiceImpl implements IProjectService
|
||||
.list();
|
||||
//查询所有项目
|
||||
List<Project> projectList = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getDeptId)
|
||||
.select(Project::getId, Project::getDeptId)
|
||||
.list();
|
||||
//遍历项目,把已绑定项目的机构从机构列表中移除
|
||||
for (Project project : projectList) {
|
||||
@ -167,7 +177,7 @@ public class ProjectServiceImpl implements IProjectService
|
||||
if(Objects.isNull(ProjectHolder.getProjectInfo().getProjectIdList())){
|
||||
//查询所有一级项目列表
|
||||
projectList = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName)
|
||||
.select(Project::getId, Project::getProjectName)
|
||||
.isNull(Project::getParentId)
|
||||
.list();
|
||||
}
|
||||
@ -175,7 +185,7 @@ public class ProjectServiceImpl implements IProjectService
|
||||
else if(Objects.nonNull(ProjectHolder.getProjectInfo().getProjectIdList())){
|
||||
//查询所有子一级项目列表
|
||||
projectList = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName)
|
||||
.select(Project::getId, Project::getProjectName)
|
||||
.in(!ProjectHolder.getProjectInfo().getProjectIdList().isEmpty(),Project::getParentId, ProjectHolder.getProjectInfo().getProjectIdList())
|
||||
.list();
|
||||
}
|
||||
@ -187,22 +197,22 @@ public class ProjectServiceImpl implements IProjectService
|
||||
|
||||
// 查询当前项目
|
||||
Project currentProject = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName)
|
||||
.eq(Project::getProjectId, projectId)
|
||||
.select(Project::getId, Project::getProjectName)
|
||||
.eq(Project::getId, projectId)
|
||||
.one();
|
||||
|
||||
if (currentProject != null) {
|
||||
allProjects.add(currentProject.getProjectId());
|
||||
allProjects.add(currentProject.getId());
|
||||
|
||||
// 查询当前项目的子项目
|
||||
List<Project> children = new LambdaQueryChainWrapper<>(projectMapper)
|
||||
.select(Project::getProjectId, Project::getProjectName)
|
||||
.select(Project::getId, Project::getProjectName)
|
||||
.eq(Project::getParentId, projectId)
|
||||
.list();
|
||||
|
||||
// 递归查询子项目
|
||||
for (Project child : children) {
|
||||
allProjects.addAll(getAllProjects(child.getProjectId()));
|
||||
allProjects.addAll(getAllProjects(child.getId()));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<mapper namespace="com.fastbee.project.mapper.ProjectMapper">
|
||||
|
||||
<resultMap type="Project" id="ProjectResult">
|
||||
<result property="projectId" column="project_id" />
|
||||
<result property="id" column="id" />
|
||||
<result property="projectName" column="project_name" />
|
||||
<result property="sysShowName" column="sys_show_name" />
|
||||
<result property="centralCoordinates" column="central_coordinates" />
|
||||
@ -34,7 +34,7 @@
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectProjectVo">
|
||||
select project_id, project_name, sys_show_name, central_coordinates, scope, administrative_area, owner, logo, image, video_introduction, remark, p_params, introduce, del_flag, create_time, create_by, update_time, remarks, tenant_id, tenant_name, owner_id, parent_id, dept_id, administrative_area_code, dept_name, level from project
|
||||
select id, project_name, sys_show_name, central_coordinates, scope, administrative_area, owner, logo, image, video_introduction, remark, p_params, introduce, del_flag, create_time, create_by, update_time, remarks, tenant_id, tenant_name, owner_id, parent_id, dept_id, administrative_area_code, dept_name, level from project
|
||||
</sql>
|
||||
|
||||
<select id="selectProjectList" parameterType="Project" resultMap="ProjectResult">
|
||||
@ -65,13 +65,13 @@
|
||||
|
||||
<select id="selectProjectByProjectId" parameterType="Long" resultMap="ProjectResult">
|
||||
<include refid="selectProjectVo"/>
|
||||
where project_id = #{projectId}
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<insert id="insertProject" parameterType="Project">
|
||||
insert into project
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="projectId != null">project_id,</if>
|
||||
<if test="id != null">id,</if>
|
||||
<if test="projectName != null and projectName != ''">project_name,</if>
|
||||
<if test="sysShowName != null and sysShowName != ''">sys_show_name,</if>
|
||||
<if test="centralCoordinates != null and centralCoordinates != ''">central_coordinates,</if>
|
||||
@ -99,7 +99,7 @@
|
||||
<if test="level != null">level,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="projectId != null">#{projectId},</if>
|
||||
<if test="id != null">#{id},</if>
|
||||
<if test="projectName != null and projectName != ''">#{projectName},</if>
|
||||
<if test="sysShowName != null and sysShowName != ''">#{sysShowName},</if>
|
||||
<if test="centralCoordinates != null and centralCoordinates != ''">#{centralCoordinates},</if>
|
||||
@ -157,17 +157,17 @@
|
||||
<if test="deptName != null">dept_name = #{deptName},</if>
|
||||
<if test="level != null">level = #{level},</if>
|
||||
</trim>
|
||||
where project_id = #{projectId}
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<delete id="deleteProjectByProjectId" parameterType="Long">
|
||||
delete from project where project_id = #{projectId}
|
||||
delete from project where id = #{id}
|
||||
</delete>
|
||||
|
||||
<delete id="deleteProjectByProjectIds" parameterType="String">
|
||||
delete from project where project_id in
|
||||
delete from project where id in
|
||||
<foreach item="projectId" collection="array" open="(" separator="," close=")">
|
||||
#{projectId}
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
</mapper>
|
Reference in New Issue
Block a user