diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/InspectionPlanController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/InspectionPlanController.java index 332d447..3a92196 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/InspectionPlanController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/InspectionPlanController.java @@ -47,7 +47,7 @@ public class InspectionPlanController { @PreAuthorize("@ss.hasPermission('garden:inspection-plan:create')") public CommonResult createInspectionPlan(@Valid @RequestBody InspectionPlanSaveReqVO createReqVO) { if(!createReqVO.verify()){ - log.warn("次数值范围:1-10或者分数格式:1/3, rateValue={}", createReqVO.getRateValue()); + log.warn("次数值范围:1-1000或者分数格式:1/3, rateValue={}", createReqVO.getRateValue()); return error(PLAN_RATE_VALUE_ERROR); } // //临时计划 diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanCommitPageReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanCommitPageReqVO.java index eb5d232..8e1bdbd 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanCommitPageReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanCommitPageReqVO.java @@ -63,4 +63,12 @@ public class InspectionPlanCommitPageReqVO extends PageParam { private String remark; private List busiLineList; + + @Schema(description = "创建开始时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY) + private LocalDate createTimeStart; + + @Schema(description = "创建结束时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY) + private LocalDate createTimeEnd; } \ No newline at end of file diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanCommitPageReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanCommitPageReqVO.java index bf9669c..5106a68 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanCommitPageReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanCommitPageReqVO.java @@ -60,4 +60,12 @@ public class MaintainPlanCommitPageReqVO extends PageParam { @Schema(description = "提交人用户ID", example = "王五") private String userName; -} \ No newline at end of file + @Schema(description = "创建开始时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY) + private LocalDate createTimeStart; + + @Schema(description = "创建结束时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY) + private LocalDate createTimeEnd; + +} diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/ErrorCodeConstants.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/ErrorCodeConstants.java index 402adb3..1d6e876 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/ErrorCodeConstants.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/ErrorCodeConstants.java @@ -98,7 +98,7 @@ public interface ErrorCodeConstants { ErrorCode PLAN_RATE_DETAIL_EXISTS = new ErrorCode(1-100-007-003, "计划频次已存在"); ErrorCode PLAN_RATE_VALUE_ERROR = new ErrorCode(1-100-007-004, "次数值范围:1-10或者分数格式:1/3"); ErrorCode PLAN_RATE_VALUE_INTEGER_ERROR = new ErrorCode(1-100-007-005, "临时计划-次数值范围:1-10的整数"); - + ErrorCode PLAN_NAME_EXISTED = new ErrorCode(1-100-007-006, "计划名称已存在"); ErrorCode MATERIAL_TYPE_NOT_EXISTS = new ErrorCode(1-100-004-001, "物料类型不存在"); ErrorCode MATERIAL_TYPE_MANAGER_NOT_EXISTS = new ErrorCode(1-100-004-002, "耗材类别管理不存在"); diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/inspectionplan/InspectionPlanServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/inspectionplan/InspectionPlanServiceImpl.java index 2085c72..7274100 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/inspectionplan/InspectionPlanServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/inspectionplan/InspectionPlanServiceImpl.java @@ -148,7 +148,12 @@ public class InspectionPlanServiceImpl implements InspectionPlanService { String planAttrLabel = DictFrameworkUtils.parseDictDataLabel(PlanConstants.GARDEN_PLAN_ATTR_REDIS_KEY, createReqVO.getPlanAttr()); String planTypeIdLabel = DictFrameworkUtils.parseDictDataLabel(PlanConstants.INSPECTION_MAINTAIN_TYPE, createReqVO.getPlanTypeId()); String planNameSuffix = StringUtil.isNotEmpty(createReqVO.getPlanNameSuffix()) ? createReqVO.getPlanNameSuffix() : ""; - inspectionPlan.setPlanName(roadReqVO.getRoadName() + planAttrLabel + planTypeIdLabel + planNameSuffix); + String planName = roadReqVO.getRoadName() + planAttrLabel + planTypeIdLabel + planNameSuffix; + InspectionPlanDO existInspectionPlan = inspectionPlanMapper.selectOne(new QueryWrapper().lambda().eq(InspectionPlanDO::getPlanName, planName)); + if (existInspectionPlan != null) { + throw exception(PLAN_NAME_EXISTED, planName); + } + inspectionPlan.setPlanName(planName); inspectionPlanList.add(inspectionPlan); /*2.插入角色*/ createReqVO.getRoleIds().forEach(roleId -> { diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/maintainplan/MaintainPlanServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/maintainplan/MaintainPlanServiceImpl.java index f873a3d..06af398 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/maintainplan/MaintainPlanServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/maintainplan/MaintainPlanServiceImpl.java @@ -160,7 +160,13 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { String planAttrLabel = DictFrameworkUtils.parseDictDataLabel(PlanConstants.GARDEN_PLAN_ATTR_REDIS_KEY, createReqVO.getPlanAttr()); String planTypeIdLabel = DictFrameworkUtils.parseDictDataLabel(PlanConstants.MAINTAIN_TYPE, createReqVO.getPlanTypeId()); String planNameSuffix = StringUtil.isNotEmpty(createReqVO.getPlanNameSuffix()) ? createReqVO.getPlanNameSuffix() : ""; - maintainPlan.setPlanName(roadReqVO.getRoadName() + planAttrLabel + planTypeIdLabel + planNameSuffix); + String planName = roadReqVO.getRoadName() + planAttrLabel + planTypeIdLabel + planNameSuffix; + MaintainPlanDO existMaintainPlan = maintainPlanMapper.selectOne(new QueryWrapper().lambda().eq(MaintainPlanDO::getPlanName, planName)); + if (existMaintainPlan != null) { + throw exception(PLAN_NAME_EXISTED, planName); + } + + maintainPlan.setPlanName(planName); maintainPlanList.add(maintainPlan); /*2.插入角色*/ createReqVO.getRoleIds().forEach(roleId -> { diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/util/StringValidateUtil.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/util/StringValidateUtil.java index aa9065a..5f4c322 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/util/StringValidateUtil.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/util/StringValidateUtil.java @@ -3,13 +3,13 @@ package com.zteits.urbanops.module.garden.util; import java.util.regex.Pattern; /** - * 字符串校验工具:校验是否为1-20的整数或合法分数(如1/3) + * 字符串校验工具:校验是否为1-1000的整数或合法分数(如1/3) */ public class StringValidateUtil { - // 正则表达式:匹配1-10的数字 或 分子/分母(分子、分母均为1-10的数字) + // 正则表达式:匹配1-1000的数字 或 分子/分母(分子、分母均为1-100的数字) private static final Pattern PATTERN = Pattern.compile( - "^(?:[1-9]|10)$|^(?:[1-9]|10)/(?:[1-9]|10)$" + "^(?:[1-9]|[1-9]\\d|1\\d{2}|1000)$|^(?:[1-9]|[1-9]\\d|100)/(?:[1-9]|[1-9]\\d|100)$" ); /** @@ -38,7 +38,7 @@ public class StringValidateUtil { // 检查是否为纯数字 if (isNumber(input)) { int num = Integer.parseInt(input); - return num >= 1 && num <= 10; + return num >= 1 && num <= 1000; } // 检查是否为分数格式 @@ -52,7 +52,7 @@ public class StringValidateUtil { return false; } int numerator = Integer.parseInt(parts[0]); - if (numerator < 1 || numerator > 10) { + if (numerator < 1 || numerator > 100) { return false; } // 校验分母 @@ -60,7 +60,7 @@ public class StringValidateUtil { return false; } int denominator = Integer.parseInt(parts[1]); - return denominator >= 1 && denominator <= 10; + return denominator >= 1 && denominator <= 100; } // 既不是数字也不是分数 @@ -107,7 +107,7 @@ public class StringValidateUtil { // 3. 转换为数字并校验范围 try { int number = Integer.parseInt(str); - return number >= 1 && number <= 10; + return number >= 1 && number <= 100; } catch (NumberFormatException e) { // 理论上不会走到这里(已通过正则校验),兜底处理 return false; diff --git a/urbanops-module-garden/src/main/resources/mapper/inspectionplan/InspectionPlanCommitMapper.xml b/urbanops-module-garden/src/main/resources/mapper/inspectionplan/InspectionPlanCommitMapper.xml index 3018978..18c8ffd 100644 --- a/urbanops-module-garden/src/main/resources/mapper/inspectionplan/InspectionPlanCommitMapper.xml +++ b/urbanops-module-garden/src/main/resources/mapper/inspectionplan/InspectionPlanCommitMapper.xml @@ -85,7 +85,12 @@ AND a.remark LIKE CONCAT('%', #{req.remark} ,'%') - + + = #{req.createTimeStart}]]> + + + + order by a.id desc @@ -133,4 +138,4 @@ - \ No newline at end of file + diff --git a/urbanops-module-garden/src/main/resources/mapper/maintainplan/MaintainPlanCommitMapper.xml b/urbanops-module-garden/src/main/resources/mapper/maintainplan/MaintainPlanCommitMapper.xml index 61ac704..01e3779 100644 --- a/urbanops-module-garden/src/main/resources/mapper/maintainplan/MaintainPlanCommitMapper.xml +++ b/urbanops-module-garden/src/main/resources/mapper/maintainplan/MaintainPlanCommitMapper.xml @@ -76,6 +76,12 @@ AND DATE_FORMAT(c.finish_time, '%Y-%m-%d') = #{req.finishTime} + + = #{req.createTimeStart}]]> + + + +