package com.ycl.domain.form; import com.ycl.common.group.Add; import com.ycl.common.group.Update; import com.ycl.domain.entity.ProjectPlanProgressReport; import com.ycl.system.domain.base.AbsForm; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.BeanUtils; import org.springframework.lang.NonNull; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Date; /** * 进度上报内容表单 * * @author lhr * @since 2024-11-22 */ @Data @ApiModel(value = "ProjectPlanProgressReport表单", description = "进度上报内容表单") public class ProjectPlanProgressReportForm extends AbsForm { @NotNull(message = "项目计划项id不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("项目计划项id") private Long projectPlanInfoId; @NotNull(message = "实际开始时间不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("实际开始时间") private Date startTime; @NotNull(message = "实际完成时间不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("实际完成时间") private Date endTime; @NotBlank(message = "进度情况不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("进度情况") private String progressStatus; @NotNull(message = "当前实际投资不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("当前实际投资") private BigDecimal actualInvest; public static ProjectPlanProgressReport getEntityByForm(@NonNull ProjectPlanProgressReportForm form, ProjectPlanProgressReport entity) { if(entity == null) { entity = new ProjectPlanProgressReport(); } BeanUtils.copyProperties(form, entity); return entity; } }