fuliqi
2024-06-06 528b1892d8e929b199dddc96f3a43f9b8039c8c8
src/main/java/com/ycl/jxkg/domain/form/ExamTemplateForm.java
@@ -1,105 +1,55 @@
package com.ycl.jxkg.domain.form;
import com.ycl.jxkg.domain.question.TemplateQuestionDTO;
import com.ycl.jxkg.group.Update;
import com.ycl.jxkg.group.Add;
import com.ycl.jxkg.domain.base.AbsForm;
import com.ycl.jxkg.domain.entity.ExamTemplate;
import com.ycl.jxkg.group.Add;
import com.ycl.jxkg.group.Update;
import org.springframework.beans.BeanUtils;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import org.springframework.lang.NonNull;
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.time.LocalDateTime;
import java.util.Date;
import java.util.List;
/**
 * 随机试卷模板表单
 *
 * @author 开发人员名字
 * @since 2024-06-03
 * @author flq
 * @since 2024-06-05
 */
@Data
@ApiModel(value = "ExamTemplate表单", description = "随机试卷模板表单")
public class ExamTemplateForm extends AbsForm {
    @NotBlank(message = "模板名称不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("模板名称")
    @NotBlank(message = "模板名不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("模板名")
    private String name;
    @NotNull(message = "试卷科目不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("试卷科目")
    @NotNull(message = "学科id不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("学科id")
    private Integer subjectId;
    @NotNull(message = "考试时长(分钟)不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("考试时长(分钟)")
    private Integer suggestTime;
    @NotNull(message = "单选题数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("单选题数量")
    private Integer singleChoice;
    @NotNull(message = "多选题数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("多选题数量")
    private Integer multipleChoice;
    @NotNull(message = "填空题数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("填空题数量")
    private Integer gapFilling;
    @NotNull(message = "判断数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("判断数量")
    private Integer trueFalse;
    @NotNull(message = "简答题数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("简答题数量")
    private Integer shortAnswer;
    @NotNull(message = "计算题数量不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("计算题数量")
    private Integer calculation;
    @NotNull(message = "试卷总分不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("试卷总分")
    @ApiModelProperty("总分")
    private Integer score;
    @NotBlank(message = "多选题扣分方式不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("多选题扣分方式")
    private String deductType;
    @ApiModelProperty("是否私有")
    private String visibility;
    @NotNull(message = "创建人不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("创建人")
    private Integer createUser;
    @NotNull(message = "建议时间不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("建议时间")
    private Integer suggestTime;
    @NotNull(message = "创建时间不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
    @ApiModelProperty("多选扣分类型")
    private Integer deductType;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal singleScore;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal multipleScore;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal gapScore;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal trueFalseScore;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal shortAnswerScore;
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("")
    private BigDecimal calculationScore;
    @ApiModelProperty("题目模板")
    private List<TemplateQuestionDTO> questionList;
    public static ExamTemplate getEntityByForm(@NonNull ExamTemplateForm form, ExamTemplate entity) {
        if(entity == null) {