package com.supervision.dto; import cn.hutool.core.util.StrUtil; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import java.util.List; import java.util.Objects; @Data @Builder public class QueryProcessDTO { /** * 处理状态 0:正常 1:参数校验异常 2:系统异常 */ private Integer state; /** * 内容类型 1-文本,2-音频,3-文件,4-图片,5-视频 */ private Integer contentType; /** * 字符串类型的内容 */ private String stringContent; /** * 字节数组类型的内容 */ private byte[] byteContent; /** * 字节数组类型的id */ private String byteContentId; /** * 参数校验的参数列表 */ private List paramCheckList; /** * 判断参数是否为空 为空则添加到参数校验列表中 * @param paramName 参数名 * @param value 参数值 * @param errorMsgTemplate 错误信息模板 * @param */ public void notNullParam(String paramName, T value, String errorMsgTemplate){ if(Objects.isNull(value)){ this.state = 1; this.paramCheckList.add(new ParamCheckDTO(paramName, errorMsgTemplate,1)); } } /** * 判断参数是否为空 为空则添加到参数校验列表中 * @param paramName 参数名 * @param value 参数值 * @param errorMsgTemplate 错误信息模板 * @param */ public void notEmptyParam(String paramName, T value, String errorMsgTemplate){ if(StrUtil.isEmpty(value)){ this.state = 1; this.paramCheckList.add(new ParamCheckDTO(paramName, errorMsgTemplate,2)); } } @Data @AllArgsConstructor static class ParamCheckDTO { private String paramName; private String paramDesc; /** * 错误类型 1:参数缺失 2:参数值错误 3:参数类型错误 */ private Integer errorType; } }