mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-07-25 16:35:06 +08:00
Merge branch 'feature-contract-7.22-wyw' into feature-budge-7.23-zqc
# Conflicts: # yudao-module-cms/yudao-module-cms-api/src/main/java/cn/iocoder/yudao/module/cms/enums/ErrorCodeConstants.java
This commit is contained in:
@ -0,0 +1,17 @@
|
||||
package cn.iocoder.yudao.module.pms.api;
|
||||
|
||||
import cn.iocoder.yudao.module.pms.api.project.dto.ProjectDetailRespDTO;
|
||||
import cn.iocoder.yudao.module.pms.api.project.dto.ProjectRespDTO;
|
||||
|
||||
public interface ProjectApi {
|
||||
/**
|
||||
* 获得项目部分信息
|
||||
*/
|
||||
ProjectRespDTO getProject(Long projectId);
|
||||
|
||||
/**
|
||||
* 获得项目detail信息
|
||||
*/
|
||||
ProjectDetailRespDTO getProjectDetailById(Long projectId);
|
||||
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.pms.api.project.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ProjectDetailRespDTO {
|
||||
|
||||
/**
|
||||
* 跟踪部门
|
||||
*/
|
||||
private String trackingDepName;
|
||||
/**
|
||||
* 项目经理
|
||||
*/
|
||||
private String projectManagerName;
|
||||
/**
|
||||
* 客户公司
|
||||
*/
|
||||
private String customerCompanyName;
|
||||
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
package cn.iocoder.yudao.module.pms.api.project.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 项目基本信息 dto
|
||||
*/
|
||||
@Data
|
||||
public class ProjectRespDTO {
|
||||
|
||||
|
||||
/**
|
||||
* 项目编号
|
||||
*/
|
||||
private String code;
|
||||
|
||||
/**
|
||||
* 出图公司
|
||||
*/
|
||||
private String drawingCompany;
|
||||
|
||||
/**
|
||||
* 跟踪部门id
|
||||
*/
|
||||
private Long trackingDepId;
|
||||
|
||||
/**
|
||||
* 客户公司id
|
||||
*/
|
||||
private Long customerCompanyId;
|
||||
|
||||
/**
|
||||
* 项目经理id
|
||||
*/
|
||||
private Long projectManagerId;
|
||||
|
||||
/**
|
||||
* 预计合同金额
|
||||
*/
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
package cn.iocoder.yudao.module.pms.api.project;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.pms.api.ProjectApi;
|
||||
import cn.iocoder.yudao.module.pms.api.project.dto.ProjectDetailRespDTO;
|
||||
import cn.iocoder.yudao.module.pms.api.project.dto.ProjectRespDTO;
|
||||
import cn.iocoder.yudao.module.pms.dal.dataobject.project.ProjectDO;
|
||||
import cn.iocoder.yudao.module.pms.dal.dataobject.project.ProjectDetailDO;
|
||||
import cn.iocoder.yudao.module.pms.dal.mysql.project.ProjectMapper;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
@Service
|
||||
@Validated
|
||||
public class ProjectImpl implements ProjectApi {
|
||||
|
||||
@Resource
|
||||
private ProjectMapper projectMapper;
|
||||
|
||||
|
||||
@Override
|
||||
public ProjectRespDTO getProject(Long projectId) {
|
||||
ProjectDO projectDO = projectMapper.selectById(projectId);
|
||||
ProjectRespDTO projectRespDTO = BeanUtils.toBean(projectDO, ProjectRespDTO.class);
|
||||
return projectRespDTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProjectDetailRespDTO getProjectDetailById(Long projectId) {
|
||||
ProjectDetailDO projectMapperDetail = projectMapper.getDetailById(projectId);
|
||||
ProjectDetailRespDTO detailRespDTO = BeanUtils.toBean(projectMapperDetail, ProjectDetailRespDTO.class);
|
||||
return detailRespDTO;
|
||||
}
|
||||
}
|
@ -4,11 +4,8 @@ import cn.iocoder.yudao.module.pms.enums.DictTypeConstants;
|
||||
import lombok.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
|
||||
|
@ -1,10 +1,7 @@
|
||||
package cn.iocoder.yudao.module.pms.dal.dataobject.project;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.FileDTO;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author hhyykk
|
||||
* @description
|
||||
|
@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.pms.dal.mysql.project;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.cms.dal.dataobject.customerCompany.CustomerCompanyDO;
|
||||
import cn.iocoder.yudao.module.pms.controller.admin.project.vo.ProjectPageReqVO;
|
||||
import cn.iocoder.yudao.module.pms.dal.dataobject.project.ProjectDO;
|
||||
import cn.iocoder.yudao.module.pms.dal.dataobject.project.ProjectDetailDO;
|
||||
@ -33,7 +32,6 @@ public interface ProjectMapper extends BaseMapperX<ProjectDO> {
|
||||
.selectAll(ProjectDO.class)
|
||||
.selectAs(DeptDO::getName, ProjectDetailDO::getTrackingDepName) // 映射到ProjectDetailDO的trackingDeptName
|
||||
.selectAs(AdminUserDO::getNickname, ProjectDetailDO::getProjectManagerName) // 映射到ProjectDetailDO的projectManagerName
|
||||
.selectAs(CustomerCompanyDO::getName, ProjectDetailDO::getCustomerCompanyName)
|
||||
.likeIfExists(ProjectDO::getName, reqVO.getName())
|
||||
.eqIfExists(ProjectDO::getTrackingCode, reqVO.getTrackingCode())
|
||||
.eqIfExists(ProjectDO::getType, reqVO.getType())
|
||||
@ -41,8 +39,7 @@ public interface ProjectMapper extends BaseMapperX<ProjectDO> {
|
||||
.orderByDesc(ProjectDO::getId)
|
||||
.leftJoin(DeptDO.class, DeptDO::getId, ProjectDO::getTrackingDepId)
|
||||
.leftJoin(AdminUserDO.class, AdminUserDO::getId, ProjectDO::getProjectManagerId)
|
||||
.leftJoin(CustomerCompanyDO.class, CustomerCompanyDO::getId, ProjectDO::getCustomerCompanyId)
|
||||
);
|
||||
);
|
||||
}
|
||||
|
||||
default ProjectDetailDO getDetailById(Long id) {
|
||||
@ -50,11 +47,9 @@ public interface ProjectMapper extends BaseMapperX<ProjectDO> {
|
||||
.selectAll(ProjectDO.class)
|
||||
.selectAs(DeptDO::getName, ProjectDetailDO::getTrackingDepName) // 映射到ProjectDetailDO的trackingDeptName
|
||||
.selectAs(AdminUserDO::getNickname, ProjectDetailDO::getProjectManagerName) // 映射到ProjectDetailDO的projectManagerName
|
||||
.selectAs(CustomerCompanyDO::getName, ProjectDetailDO::getCustomerCompanyName)
|
||||
.eqIfExists(ProjectDO::getId, id)
|
||||
.leftJoin(DeptDO.class, DeptDO::getId, ProjectDO::getTrackingDepId)
|
||||
.leftJoin(AdminUserDO.class, AdminUserDO::getId, ProjectDO::getProjectManagerId)
|
||||
.leftJoin(CustomerCompanyDO.class, CustomerCompanyDO::getId, ProjectDO::getCustomerCompanyId)
|
||||
);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user