关联项目
This commit is contained in:
@ -6,6 +6,8 @@ import io.github.linpeilie.annotations.AutoMapper;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||||
|
import org.dromara.common.translation.annotation.Translation;
|
||||||
|
import org.dromara.common.translation.constant.TransConstant;
|
||||||
import org.dromara.project.domain.BusProject;
|
import org.dromara.project.domain.BusProject;
|
||||||
import org.dromara.project.domain.bo.Punchrange;
|
import org.dromara.project.domain.bo.Punchrange;
|
||||||
import org.dromara.system.domain.vo.SysRoleVo;
|
import org.dromara.system.domain.vo.SysRoleVo;
|
||||||
@ -92,6 +94,12 @@ public class BusProjectVo implements Serializable {
|
|||||||
@ExcelDictFormat(dictType = "project_type")
|
@ExcelDictFormat(dictType = "project_type")
|
||||||
private String projectType;
|
private String projectType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目类型名称
|
||||||
|
*/
|
||||||
|
@Translation(type = TransConstant.DICT_TYPE_TO_LABEL, mapper = "projectType", other = "project_type")
|
||||||
|
private String projectTypeName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目阶段
|
* 项目阶段
|
||||||
*/
|
*/
|
||||||
@ -99,6 +107,12 @@ public class BusProjectVo implements Serializable {
|
|||||||
@ExcelDictFormat(dictType = "project_stage")
|
@ExcelDictFormat(dictType = "project_stage")
|
||||||
private String projectStage;
|
private String projectStage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目类型名称
|
||||||
|
*/
|
||||||
|
@Translation(type = TransConstant.DICT_TYPE_TO_LABEL, mapper = "projectType", other = "project_stage")
|
||||||
|
private String projectStageName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目地址
|
* 项目地址
|
||||||
*/
|
*/
|
||||||
@ -218,6 +232,17 @@ public class BusProjectVo implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private List<Long> deptIds;
|
private List<Long> deptIds;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 部门列表
|
||||||
|
*/
|
||||||
|
private String deptStr;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 部门名称列表
|
||||||
|
*/
|
||||||
|
@Translation(type = TransConstant.DEPT_ID_TO_NAME, mapper = "deptStr")
|
||||||
|
private String deptNames;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 某个用户在此项目下的所有角色
|
* 某个用户在此项目下的所有角色
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -4,7 +4,6 @@ import cn.dev33.satoken.stp.StpUtil;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
import cn.hutool.core.util.PhoneUtil;
|
|
||||||
import cn.hutool.core.util.RandomUtil;
|
import cn.hutool.core.util.RandomUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@ -644,7 +643,7 @@ public class BusProjectServiceImpl extends ServiceImpl<BusProjectMapper, BusProj
|
|||||||
String projectName = entity.getProjectName();
|
String projectName = entity.getProjectName();
|
||||||
String principalPhone = entity.getPrincipalPhone();
|
String principalPhone = entity.getPrincipalPhone();
|
||||||
// 新增项目参数验证
|
// 新增项目参数验证
|
||||||
if (create) {
|
/* if (create) {
|
||||||
if (StringUtils.isBlank(projectName)) {
|
if (StringUtils.isBlank(projectName)) {
|
||||||
throw new ServiceException("项目名称不能为空", HttpStatus.BAD_REQUEST);
|
throw new ServiceException("项目名称不能为空", HttpStatus.BAD_REQUEST);
|
||||||
}
|
}
|
||||||
@ -654,7 +653,7 @@ public class BusProjectServiceImpl extends ServiceImpl<BusProjectMapper, BusProj
|
|||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(principalPhone) && !PhoneUtil.isPhone(principalPhone)) {
|
if (StringUtils.isNotBlank(principalPhone) && !PhoneUtil.isPhone(principalPhone)) {
|
||||||
throw new ServiceException("负责人手机号格式不正确", HttpStatus.BAD_REQUEST);
|
throw new ServiceException("负责人手机号格式不正确", HttpStatus.BAD_REQUEST);
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -741,7 +740,12 @@ public class BusProjectServiceImpl extends ServiceImpl<BusProjectMapper, BusProj
|
|||||||
List<BusProjectDept> deptList = projectDeptService.lambdaQuery()
|
List<BusProjectDept> deptList = projectDeptService.lambdaQuery()
|
||||||
.eq(BusProjectDept::getProjectId, project.getId())
|
.eq(BusProjectDept::getProjectId, project.getId())
|
||||||
.list();
|
.list();
|
||||||
projectVo.setDeptIds(deptList.stream().map(BusProjectDept::getDeptId).toList());
|
List<Long> deptIds = deptList.stream().map(BusProjectDept::getDeptId).toList();
|
||||||
|
projectVo.setDeptIds(deptIds);
|
||||||
|
if (CollUtil.isNotEmpty(deptIds)) {
|
||||||
|
String deptStr = deptIds.stream().map(String::valueOf).collect(Collectors.joining(","));
|
||||||
|
projectVo.setDeptStr(deptStr);
|
||||||
|
}
|
||||||
return projectVo;
|
return projectVo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -17,6 +17,8 @@ import org.dromara.common.log.enums.BusinessType;
|
|||||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||||
import org.dromara.common.web.core.BaseController;
|
import org.dromara.common.web.core.BaseController;
|
||||||
|
import org.dromara.project.domain.vo.project.BusProjectVo;
|
||||||
|
import org.dromara.project.service.IBusProjectService;
|
||||||
import org.dromara.xzd.domain.bo.XzdProjectBo;
|
import org.dromara.xzd.domain.bo.XzdProjectBo;
|
||||||
import org.dromara.xzd.domain.bo.XzdProjectManagerApprovalBo;
|
import org.dromara.xzd.domain.bo.XzdProjectManagerApprovalBo;
|
||||||
import org.dromara.xzd.domain.bo.XzdProjectTypeBo;
|
import org.dromara.xzd.domain.bo.XzdProjectTypeBo;
|
||||||
@ -43,6 +45,7 @@ import java.util.List;
|
|||||||
@RequestMapping("/xzd/project")
|
@RequestMapping("/xzd/project")
|
||||||
public class XzdProjectController extends BaseController {
|
public class XzdProjectController extends BaseController {
|
||||||
|
|
||||||
|
private final IBusProjectService projectService;
|
||||||
private final IXzdProjectService xzdProjectService;
|
private final IXzdProjectService xzdProjectService;
|
||||||
private final IXzdProjectTypeService xzdProjectTypeService;
|
private final IXzdProjectTypeService xzdProjectTypeService;
|
||||||
private final IXzdProjectManagerApprovalService xzdProjectManagerApprovalService;
|
private final IXzdProjectManagerApprovalService xzdProjectManagerApprovalService;
|
||||||
@ -152,5 +155,16 @@ public class XzdProjectController extends BaseController {
|
|||||||
return xzdProjectManagerApprovalService.queryPageList(bo, pageQuery);
|
return xzdProjectManagerApprovalService.queryPageList(bo, pageQuery);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取项目详细信息
|
||||||
|
*
|
||||||
|
* @param sysProjectId 主键
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("xzd:project:list")
|
||||||
|
@GetMapping("/sysProject/{sysProjectId}")
|
||||||
|
public R<BusProjectVo> getSysProjectInfo(@NotNull(message = "主键不能为空")
|
||||||
|
@PathVariable Long sysProjectId) {
|
||||||
|
return R.ok(projectService.queryById(sysProjectId));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,7 +9,8 @@
|
|||||||
project.id,
|
project.id,
|
||||||
project.city_code as cityCode,
|
project.city_code as cityCode,
|
||||||
project.shzt as shzt,
|
project.shzt as shzt,
|
||||||
# profile.parent_project_id as fjxm,
|
project.sys_project_id as sysProjectId,
|
||||||
|
# profile.parent_project_id as fjxm,
|
||||||
(SELECT project_name FROM xzd_project WHERE id = profile.parent_project_id) as fjxm,
|
(SELECT project_name FROM xzd_project WHERE id = profile.parent_project_id) as fjxm,
|
||||||
project.project_attribute as projectAttribute,
|
project.project_attribute as projectAttribute,
|
||||||
project.project_number as projectNumber,
|
project.project_number as projectNumber,
|
||||||
|
|||||||
Reference in New Issue
Block a user