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:
Qiancheng Zhao
2024-07-25 12:05:42 +08:00
55 changed files with 4660 additions and 597 deletions

View File

@ -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);
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}
}

View File

@ -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;

View File

@ -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

View File

@ -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)
);
}