项目进度分析

This commit is contained in:
sxu 2025-07-24 22:08:57 +08:00
parent ff57b48f51
commit 2f16afb248
4 changed files with 78 additions and 25 deletions

View File

@ -4,6 +4,7 @@ import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.securitycontrol.common.core.web.domain.BaseEntity;
import com.securitycontrol.entity.screen.dto.ScreenDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
@ -18,7 +19,7 @@ import lombok.ToString;
@Data
@ToString
public class ProjectNew extends BaseEntity {
public class ProjectNew extends ScreenDto {
private static final long serialVersionUID = 1L;
/** 主键 */
@ -91,4 +92,18 @@ public class ProjectNew extends BaseEntity {
private String monthProgress;
private String monthProgress2;
/** 创建者 */
private String createBy;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/** 更新者 */
private String updateBy;
/** 更新时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
}

View File

@ -3,6 +3,7 @@ package com.securitycontrol.screen.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.securitycontrol.common.core.web.domain.BaseEntity;
import com.securitycontrol.entity.screen.dto.ScreenDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
@ -17,7 +18,7 @@ import lombok.ToString;
@Data
@ToString
public class ProjectProgressNew extends BaseEntity {
public class ProjectProgressNew extends ScreenDto {
private static final long serialVersionUID = 1L;
/** 主键id */
@ -98,4 +99,18 @@ public class ProjectProgressNew extends BaseEntity {
private String categoryValue;
/** 创建者 */
private String createBy;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/** 更新者 */
private String updateBy;
/** 更新时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
}

View File

@ -1,11 +1,32 @@
package com.securitycontrol.screen.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.securitycontrol.entity.screen.dto.ScreenDto;
import lombok.Data;
import java.util.Date;
@Data
public class ProjectRisk {
public class ProjectRisk extends ScreenDto {
private String id;
private String proId;
private String proPart;
private String riskDesc;
/** 创建者 */
private String createBy;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/** 更新者 */
private String updateBy;
/** 更新时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
}

View File

@ -29,38 +29,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectProjectProgressNewVo">
select id, project_id, project_name, task_code, task_name, plan_start_time,
plan_end_time, actual_start_time, actual_end_time, process_diff, total_effort,
complete_effort, delay_actor, resource_match_status, key_path_flag,
create_by, create_time, update_by, update_time, delay_status, delay_policy, analyze_result
from tb_project_progress_new
select tpn.id, tpn.project_id, tpn.project_name, tpn.task_code, tpn.task_name, tpn.plan_start_time,
tpn.plan_end_time, tpn.actual_start_time, tpn.actual_end_time, tpn.process_diff, tpn.total_effort,
tpn.complete_effort, tpn.delay_actor, tpn.resource_match_status, tpn.key_path_flag,
tpn.create_by, tpn.create_time, tpn.update_by, tpn.update_time, tpn.delay_status, tpn.delay_policy, tpn.analyze_result
from tb_project_progress_new tpn
left join tb_project_new pn on pn.pro_name = tpn.project_name
</sql>
<select id="selectProjectProgressNewList" parameterType="com.securitycontrol.screen.domain.ProjectProgressNew" resultMap="ProjectProgressNewResult">
<include refid="selectProjectProgressNewVo"/>
<where>
<if test="projectId != null "> and project_id = #{projectId}</if>
<if test="projectName != null and projectName != ''"> and project_name like concat('%', #{projectName}, '%')</if>
<if test="taskCode != null and taskCode != ''"> and task_code = #{taskCode}</if>
<if test="taskName != null and taskName != ''"> and task_name like concat('%', #{taskName}, '%')</if>
<if test="planStartTime != null "> and plan_start_time = #{planStartTime}</if>
<if test="planEndTime != null "> and plan_end_time = #{planEndTime}</if>
<if test="actualStartTime != null "> and actual_start_time = #{actualStartTime}</if>
<if test="actualEndTime != null "> and actual_end_time = #{actualEndTime}</if>
<if test="processDiff != null and processDiff != ''"> and process_diff = #{processDiff}</if>
<if test="totalEffort != null and totalEffort != ''"> and total_effort = #{totalEffort}</if>
<if test="completeEffort != null and completeEffort != ''"> and complete_effort = #{completeEffort}</if>
<if test="delayActor != null and delayActor != ''"> and delay_actor = #{delayActor}</if>
<if test="delayStatus != null and delayStatus != ''"> and delay_status = #{delayStatus}</if>
<if test="delayPolicy != null and delayPolicy != ''"> and delay_policy = #{delayPolicy}</if>
<if test="resourceMatchStatus != null and resourceMatchStatus != ''"> and resource_match_status = #{resourceMatchStatus}</if>
<if test="keyPathFlag != null and keyPathFlag != ''"> and key_path_flag = #{keyPathFlag}</if>
<if test="projectId != null "> and tpn.project_id = #{projectId}</if>
<if test="projectName != null and projectName != ''"> and tpn.project_name like concat('%', #{projectName}, '%')</if>
<if test="taskCode != null and taskCode != ''"> and tpn.task_code = #{taskCode}</if>
<if test="taskName != null and taskName != ''"> and tpn.task_name like concat('%', #{taskName}, '%')</if>
<if test="planStartTime != null "> and tpn.plan_start_time = #{planStartTime}</if>
<if test="planEndTime != null "> and tpn.plan_end_time = #{planEndTime}</if>
<if test="actualStartTime != null "> and tpn.actual_start_time = #{actualStartTime}</if>
<if test="actualEndTime != null "> and tpn.actual_end_time = #{actualEndTime}</if>
<if test="processDiff != null and processDiff != ''"> and tpn.process_diff = #{processDiff}</if>
<if test="totalEffort != null and totalEffort != ''"> and tpn.total_effort = #{totalEffort}</if>
<if test="completeEffort != null and completeEffort != ''"> and tpn.complete_effort = #{completeEffort}</if>
<if test="delayActor != null and delayActor != ''"> and tpn.delay_actor = #{delayActor}</if>
<if test="delayStatus != null and delayStatus != ''"> and tpn.delay_status = #{delayStatus}</if>
<if test="delayPolicy != null and delayPolicy != ''"> and tpn.delay_policy = #{delayPolicy}</if>
<if test="resourceMatchStatus != null and resourceMatchStatus != ''"> and tpn.resource_match_status = #{resourceMatchStatus}</if>
<if test="keyPathFlag != null and keyPathFlag != ''"> and tpn.key_path_flag = #{keyPathFlag}</if>
<if test="bidCode != null and bidCode != ''"> and pn.bid_code = #{bidCode}</if>
</where>
</select>
<select id="selectProjectProgressNewById" parameterType="Long" resultMap="ProjectProgressNewResult">
<include refid="selectProjectProgressNewVo"/>
where id = #{id}
where tpn.id = #{id}
</select>
<insert id="insertProjectProgressNew" parameterType="com.securitycontrol.screen.domain.ProjectProgressNew">