package cn.stylefeng.team.form.modular.manage.request;

import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import cn.stylefeng.team.form.api.pojo.FormDesignVo;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;

@EqualsAndHashCode(callSuper = true)
@Data
public class FormConfigRequest extends BaseRequest {

    @ChineseDescription("所属表单模型定义id")
    @NotNull(message = "所属表单模型定义id不能为空", groups = {getItemList.class, saveOrUpdateItems.class})
    private Long formDefinitionId;

    @ChineseDescription("表单整体的配置信息")
    @NotNull(message = "PC端表单整体的配置不能为空", groups = {saveOrUpdateItems.class})
    private FormDesignVo formConfig;

    @ChineseDescription("移动端表单的配置")
    @NotNull(message = "移动端表单的配置不能为空", groups = {saveOrUpdateItems.class})
    private FormDesignVo mobileFormConfig;

    @ChineseDescription("是否查询移动端的表单配置，true-移动端，false-非移动端")
    private Boolean mobileFlag;

    public @interface getItemList {
    }

    public @interface saveOrUpdateItems {

    }

}
