mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-13 21:32:07 +08:00
1、自定义板编号规则入参校验;2、新增自定义板编号序号实体、mapper;3、部分systemconfig包名修正;
This commit is contained in:
+6
-6
@@ -1,13 +1,13 @@
|
||||
package com.cf.imes.module.system.controller.admin.baseconfig;
|
||||
package com.cf.imes.module.system.controller.admin.systemconfig;
|
||||
|
||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigRespVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.baseconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigRespVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.service.config.SystemConfigService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.cf.imes.module.system.controller.admin.baseconfig.vo;
|
||||
package com.cf.imes.module.system.controller.admin.systemconfig.vo;
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import com.cf.imes.module.system.validation.common.CommonStatus;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.cf.imes.module.system.controller.admin.baseconfig.vo;
|
||||
package com.cf.imes.module.system.controller.admin.systemconfig.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.cf.imes.module.system.controller.admin.baseconfig.vo;
|
||||
package com.cf.imes.module.system.controller.admin.systemconfig.vo;
|
||||
|
||||
import com.cf.imes.module.system.validation.config.SystemConfigTypeEnumValid;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.cf.imes.module.system.controller.admin.baseconfig.vo;
|
||||
package com.cf.imes.module.system.controller.admin.systemconfig.vo;
|
||||
|
||||
import com.cf.imes.module.system.validation.common.CommonStatus;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
package com.cf.imes.module.system.dal.dataobject.customblockno;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 自定义板编号序号实体
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2024/11/11 18:31
|
||||
*/
|
||||
@TableName(value = "custom_blockno_seq", autoResultMap = true)
|
||||
@KeySequence("custom_blockno_seq_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CustomBlockNoSeqDO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -4362641672146584682L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 组织ID
|
||||
*/
|
||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||
private Long organId;
|
||||
|
||||
/**
|
||||
* 规则ID
|
||||
*/
|
||||
private Long configId;
|
||||
|
||||
/**
|
||||
* 上次生产单号
|
||||
*/
|
||||
private Long lastOrderNo;
|
||||
|
||||
/**
|
||||
* 生产单序号前值
|
||||
*/
|
||||
private Integer orderNoSeq;
|
||||
|
||||
/**
|
||||
* 上次房间
|
||||
*/
|
||||
private String lastRoom;
|
||||
|
||||
/**
|
||||
* 房间序号前值
|
||||
*/
|
||||
private Integer roomSeq;
|
||||
|
||||
/**
|
||||
* 上次柜体
|
||||
*/
|
||||
private String lastCabinet;
|
||||
|
||||
/**
|
||||
* 柜体序号前值
|
||||
*/
|
||||
private Integer cabinetSeq;
|
||||
|
||||
/**
|
||||
* 上次加工组
|
||||
*/
|
||||
private String lastProcessingGroup;
|
||||
|
||||
/**
|
||||
* 加工组序号前值
|
||||
*/
|
||||
private Integer processingGroupSeq;
|
||||
|
||||
/**
|
||||
* 上次年
|
||||
*/
|
||||
private Short lastYear;
|
||||
|
||||
/**
|
||||
* 上次月
|
||||
*/
|
||||
private Short lastMonth;
|
||||
|
||||
/**
|
||||
* 上次天
|
||||
*/
|
||||
private Short lastDay;
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.cf.imes.module.system.dal.dataobject.baseconfig;
|
||||
package com.cf.imes.module.system.dal.dataobject.systemconfig;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.cf.imes.module.system.dal.mysql.customblockno;
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.module.system.dal.dataobject.customblockno.CustomBlockNoSeqDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 自定义板编号序号 mapper
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2024/11/11 18:38
|
||||
*/
|
||||
@Mapper
|
||||
public interface CustomBlockNoSeqMapper extends BaseMapperX<CustomBlockNoSeqDO> {
|
||||
}
|
||||
+3
-3
@@ -1,11 +1,11 @@
|
||||
package com.cf.imes.module.system.dal.mysql.config;
|
||||
package com.cf.imes.module.system.dal.mysql.systemconfig;
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.baseconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
package com.cf.imes.module.system.enums.config;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
/**
|
||||
* 自定义板编号规则编码枚举
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2024/11/11 15:20
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
public enum CustBoardRuleCodeEnum {
|
||||
/**
|
||||
* 自定义
|
||||
*/
|
||||
CUSTOM("custom"),
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
DATE("date"),
|
||||
|
||||
/**
|
||||
* 生产单序号
|
||||
*/
|
||||
ORDERNO("orderNo"),
|
||||
|
||||
/**
|
||||
* 板件序号
|
||||
*/
|
||||
PLATENO("plateNo"),
|
||||
|
||||
/**
|
||||
* 房间号序号
|
||||
*/
|
||||
ROOMNO("roomNo"),
|
||||
|
||||
/**
|
||||
* 柜体序号
|
||||
*/
|
||||
BODYNO("bodyNo"),
|
||||
|
||||
/**
|
||||
* 加工组序号
|
||||
*/
|
||||
PROCESSGROUP("processGroupNo");
|
||||
|
||||
private String ruleCode;
|
||||
|
||||
/**
|
||||
* 是否匹配
|
||||
* @param ruleCode
|
||||
* @return
|
||||
*/
|
||||
public static CustBoardRuleCodeEnum match(String ruleCode) {
|
||||
for (CustBoardRuleCodeEnum codeEnum : CustBoardRuleCodeEnum.values()) {
|
||||
if (codeEnum.ruleCode.equals(ruleCode)) {
|
||||
return codeEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
+4
-4
@@ -1,10 +1,10 @@
|
||||
package com.cf.imes.module.system.service.config;
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.baseconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
|
||||
/**
|
||||
* 系统配置接口
|
||||
|
||||
+12
-8
@@ -6,17 +6,18 @@ import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.baseconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.dal.mysql.config.SystemConfigMapper;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigPageReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigUpdateStatusReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.dal.mysql.systemconfig.SystemConfigMapper;
|
||||
import com.cf.imes.module.system.enums.config.SystemConfigTypeEnum;
|
||||
import com.cf.imes.module.system.service.config.factory.SystemConfigServiceFactory;
|
||||
import com.cf.imes.module.system.service.config.factory.service.AbstractSystemConfigGenerateService;
|
||||
import com.google.common.collect.Lists;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@@ -63,6 +64,7 @@ public class SystemConfigServiceImpl implements SystemConfigService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void modifyBaseConfig(ConfigSaveReqVO reqVO) {
|
||||
Long id = reqVO.getId();
|
||||
// 根据配置类型选择对应的service
|
||||
@@ -71,18 +73,20 @@ public class SystemConfigServiceImpl implements SystemConfigService {
|
||||
configService.checkValid(reqVO.getSetting());
|
||||
// 系统配置保存前操作
|
||||
configService.beforeSaveConfig(reqVO);
|
||||
SystemConfigDO baseConfigDO;
|
||||
if (ObjectUtil.isNotNull(id)) {
|
||||
SystemConfigDO baseConfigDO = validateBaseConfigExists(id);
|
||||
baseConfigDO = validateBaseConfigExists(id);
|
||||
// 覆盖配置
|
||||
baseConfigDO.setSetting(reqVO.getSetting());
|
||||
// 更新
|
||||
baseConfigMapper.updateById(baseConfigDO);
|
||||
} else {
|
||||
baseConfigDO = BeanUtils.toBean(reqVO, SystemConfigDO.class);
|
||||
// 新增
|
||||
baseConfigMapper.insert(BeanUtils.toBean(reqVO, SystemConfigDO.class));
|
||||
baseConfigMapper.insert(baseConfigDO);
|
||||
}
|
||||
// 系统配置保存后操作
|
||||
configService.afterSaveConfig(reqVO);
|
||||
configService.afterSaveConfig(baseConfigDO, reqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
package com.cf.imes.module.system.service.config.factory.service;
|
||||
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
|
||||
/**
|
||||
* 系统配置生成服务抽象类
|
||||
@@ -30,5 +31,5 @@ public abstract class AbstractSystemConfigGenerateService {
|
||||
*
|
||||
* @param reqVO
|
||||
*/
|
||||
public abstract void afterSaveConfig(ConfigSaveReqVO reqVO);
|
||||
public abstract void afterSaveConfig(SystemConfigDO systemConfigDO, ConfigSaveReqVO reqVO);
|
||||
}
|
||||
|
||||
+173
-4
@@ -1,9 +1,31 @@
|
||||
package com.cf.imes.module.system.service.config.factory.service.impl;
|
||||
|
||||
import com.cf.imes.module.system.controller.admin.baseconfig.vo.ConfigSaveReqVO;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cf.imes.framework.common.enums.CommonStatusEnum;
|
||||
import com.cf.imes.framework.common.exception.ErrorCode;
|
||||
import com.cf.imes.framework.common.exception.ServiceException;
|
||||
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
|
||||
import com.cf.imes.module.system.controller.admin.systemconfig.vo.ConfigSaveReqVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.systemconfig.SystemConfigDO;
|
||||
import com.cf.imes.module.system.dal.dataobject.dict.DictDataDO;
|
||||
import com.cf.imes.module.system.dal.mysql.customblockno.CustomBlockNoSeqMapper;
|
||||
import com.cf.imes.module.system.enums.config.CustBoardRuleCodeEnum;
|
||||
import com.cf.imes.module.system.service.config.factory.service.AbstractSystemConfigGenerateService;
|
||||
import com.cf.imes.module.system.service.dict.DictDataService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import static com.cf.imes.module.system.enums.ErrorCodeConstants.SYSTEM_CONFIG_CUSTOM_BOARD_NO_RULE_SAVE_CHECK_ERROR;
|
||||
|
||||
/**
|
||||
* 自定义板编号生成服务
|
||||
*
|
||||
@@ -11,20 +33,167 @@ import org.springframework.stereotype.Service;
|
||||
* @since 2024/11/8 16:48
|
||||
*/
|
||||
@Service("customBoardNoGenerateService")
|
||||
@Slf4j
|
||||
public class CustomBoardNoGenerateService extends AbstractSystemConfigGenerateService {
|
||||
|
||||
// 自定义板编号校验错误全部统一编号:1_002_040_003
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_RULECODE_EMPTY_ERROR = new ErrorCode(1_002_040_003, "规则编码不能为空");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_RULECODE_NOT_MATCH_ERROR = new ErrorCode(1_002_040_003, "规则编码【{}】不合法,请检查配置规则");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_DATE_TYPE_FORMAT_ERROR = new ErrorCode(1_002_040_003, "时间格式【{}】不合法,请检查配置规则");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_RESETMODE_ERROR = new ErrorCode(1_002_040_003, "复位/清零模式【{}】不合法,请检查配置规则");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_INT_TYPE_NO_EMPTY = new ErrorCode(1_002_040_003, "数字类型【{}】不能为空,请检查配置规则");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_INT_TYPE_ERROR = new ErrorCode(1_002_040_003, "数值类型参数{}:【{}】转换异常,请检查配置规则");
|
||||
public static final ErrorCode CUSTOM_BOARD_NO_RULE_CHECK_BOL_TYPE_ERROR = new ErrorCode(1_002_040_003, "布尔类型参数{}:【{}】转换异常,请检查配置规则");
|
||||
|
||||
|
||||
@Resource
|
||||
private DictDataService dictDataService;
|
||||
|
||||
@Resource
|
||||
private CustomBlockNoSeqMapper customBlockNoSeqMapper;
|
||||
|
||||
@Override
|
||||
public void checkValid(String setting) {
|
||||
// todo checkValid
|
||||
// 字典中的时间格式
|
||||
List<DictDataDO> dateTypeFormatDictList = dictDataService.getDictDataList(CommonStatusEnum.ENABLE.getStatus(), "system_setting_date_type");
|
||||
// 字典中的复位模式
|
||||
List<DictDataDO> resetModeDictList = dictDataService.getDictDataList(CommonStatusEnum.ENABLE.getStatus(), "system_setting_rest_type");
|
||||
|
||||
try {
|
||||
JSONArray jsonArray = JSON.parseArray(setting);
|
||||
for (int i = 0; i < jsonArray.size(); i++) {
|
||||
JSONObject jsonObject = jsonArray.getJSONObject(i);
|
||||
String ruleCode = jsonObject.getString("ruleCode");
|
||||
// 1.校验code
|
||||
CustBoardRuleCodeEnum custBoardRuleCodeEnum = checkRoleCode(ruleCode);
|
||||
|
||||
// 2.时间格式校验
|
||||
checkDateFormat(custBoardRuleCodeEnum, jsonObject.getString("value"), dateTypeFormatDictList);
|
||||
|
||||
// 3.序号类型校验数字和布尔类型
|
||||
checkNoType(custBoardRuleCodeEnum, jsonObject);
|
||||
|
||||
// 4.复位类型校验
|
||||
checkResetMode(custBoardRuleCodeEnum, jsonObject.getInteger("resetMode"), resetModeDictList);
|
||||
}
|
||||
} catch (ServiceException e) {
|
||||
throw e;
|
||||
} catch (Exception e) {
|
||||
ErrorCode systemConfigCustomBoardNoRuleSaveCheckError = SYSTEM_CONFIG_CUSTOM_BOARD_NO_RULE_SAVE_CHECK_ERROR;
|
||||
log.error(systemConfigCustomBoardNoRuleSaveCheckError.getMsg(), e);
|
||||
throw new ServiceException(systemConfigCustomBoardNoRuleSaveCheckError);
|
||||
}
|
||||
throw new ServiceException();
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验ruleCode
|
||||
*
|
||||
* @param ruleCode 规则编码
|
||||
*/
|
||||
private CustBoardRuleCodeEnum checkRoleCode(String ruleCode) {
|
||||
if (StringUtils.isEmpty(ruleCode)) {
|
||||
throw new ServiceException(CUSTOM_BOARD_NO_RULE_CHECK_RULECODE_EMPTY_ERROR);
|
||||
}
|
||||
CustBoardRuleCodeEnum custBoardRuleCodeEnum = CustBoardRuleCodeEnum.match(ruleCode);
|
||||
if (ObjectUtil.isNull(custBoardRuleCodeEnum)) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_RULECODE_NOT_MATCH_ERROR, ruleCode);
|
||||
}
|
||||
return custBoardRuleCodeEnum;
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验时间格式
|
||||
*
|
||||
* @param custBoardRuleCodeEnum 规则编码枚举
|
||||
* @param format 格式
|
||||
*/
|
||||
private void checkDateFormat(CustBoardRuleCodeEnum custBoardRuleCodeEnum, String format, List<DictDataDO> dateTypeFormatDictList) {
|
||||
if (ObjectUtil.equal(CustBoardRuleCodeEnum.DATE, custBoardRuleCodeEnum) && StringUtils.isNotEmpty(format)) {
|
||||
Optional<DictDataDO> dateFormatDictDataOptional = dateTypeFormatDictList.stream().filter(d -> format.equals(d.getValue())).findAny();
|
||||
if (dateFormatDictDataOptional.isEmpty()) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_DATE_TYPE_FORMAT_ERROR, format);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验序号类型中数值和布尔类型的属性
|
||||
*
|
||||
* @param custBoardRuleCodeEnum
|
||||
* @param object
|
||||
*/
|
||||
private void checkNoType(CustBoardRuleCodeEnum custBoardRuleCodeEnum, JSONObject object) {
|
||||
// 序号类型才校验
|
||||
if (ObjectUtil.equal(CustBoardRuleCodeEnum.ORDERNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.PLATENO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.ROOMNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.BODYNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.PROCESSGROUP, custBoardRuleCodeEnum)) {
|
||||
String[] intTypeFieldArr = new String[]{"initValue", "length", "resetMode", "increment_step"};
|
||||
String[] bolTypeFieldArr = new String[]{"left_fill_zero"};
|
||||
for (String field : intTypeFieldArr) {
|
||||
checkInt(field, object.get(field));
|
||||
}
|
||||
for (String field : bolTypeFieldArr) {
|
||||
checkBol(field, object.get(field));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验整型
|
||||
*/
|
||||
private void checkInt(String field, Object intObj) {
|
||||
if (ObjectUtil.isNull(intObj)) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_INT_TYPE_NO_EMPTY, field);
|
||||
}
|
||||
if (!NumberUtil.isInteger(intObj.toString())) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_INT_TYPE_ERROR, field, intObj);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验布尔型
|
||||
*
|
||||
* @param field
|
||||
* @param bolObj
|
||||
*/
|
||||
private void checkBol(String field, Object bolObj) {
|
||||
if (ObjectUtil.isNull(bolObj)) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_INT_TYPE_NO_EMPTY, field);
|
||||
}
|
||||
if (!(bolObj instanceof Boolean)) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_BOL_TYPE_ERROR, field, bolObj);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验复位类型
|
||||
*
|
||||
* @param resetMode
|
||||
*/
|
||||
private void checkResetMode(CustBoardRuleCodeEnum custBoardRuleCodeEnum, Integer resetMode, List<DictDataDO> resetModeDictList) {
|
||||
if (ObjectUtil.equal(CustBoardRuleCodeEnum.ORDERNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.PLATENO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.ROOMNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.BODYNO, custBoardRuleCodeEnum)
|
||||
|| ObjectUtil.equal(CustBoardRuleCodeEnum.PROCESSGROUP, custBoardRuleCodeEnum)) {
|
||||
Optional<DictDataDO> resetModeDictDataOptional = resetModeDictList.stream().filter(d -> resetMode.toString().equals(d.getValue())).findAny();
|
||||
if (resetModeDictDataOptional.isEmpty()) {
|
||||
throw ServiceExceptionUtil.exception(CUSTOM_BOARD_NO_RULE_CHECK_RESETMODE_ERROR, resetMode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void beforeSaveConfig(ConfigSaveReqVO reqVO) {
|
||||
// todo beforeSaveConfig
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterSaveConfig(ConfigSaveReqVO reqVO) {
|
||||
// todo afterSaveConfig
|
||||
public void afterSaveConfig(SystemConfigDO systemConfigDO, ConfigSaveReqVO reqVO) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user