diff --git a/.vscode/settings.json b/.vscode/settings.json index d53ecaf..b453fe8 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,4 +1,6 @@ { "java.compile.nullAnalysis.mode": "automatic", - "java.configuration.updateBuildConfiguration": "automatic" + "java.configuration.updateBuildConfiguration": "automatic", + "codingcopilot.enableCompletionLanguage": {}, + "java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx8G -Xms100m -Xlog:disable" } \ No newline at end of file diff --git a/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/infra/logger/dto/ApiAccessLogCreateReqDTO.java b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/infra/logger/dto/ApiAccessLogCreateReqDTO.java index 1d6bab1..fab7e55 100644 --- a/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/infra/logger/dto/ApiAccessLogCreateReqDTO.java +++ b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/infra/logger/dto/ApiAccessLogCreateReqDTO.java @@ -2,6 +2,7 @@ package com.zteits.urbanops.framework.common.biz.infra.logger.dto; import jakarta.validation.constraints.NotNull; import lombok.Data; +import lombok.experimental.Accessors; import java.time.LocalDateTime; @@ -11,6 +12,7 @@ import java.time.LocalDateTime; * @author ZIEITS */ @Data +@Accessors(chain = true) public class ApiAccessLogCreateReqDTO { /** diff --git a/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/util/json/databind/LocalDateTimeStringSerializer.java b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/util/json/databind/LocalDateTimeStringSerializer.java new file mode 100644 index 0000000..af0b03e --- /dev/null +++ b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/util/json/databind/LocalDateTimeStringSerializer.java @@ -0,0 +1,29 @@ +package com.zteits.urbanops.framework.common.util.json.databind; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.JsonSerializer; +import com.fasterxml.jackson.databind.SerializerProvider; + +import java.io.IOException; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; + +import static com.zteits.urbanops.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +/** + * 将 {@link LocalDateTime} 序列化为 {@code yyyy-MM-dd HH:mm:ss} 字符串 + */ +public class LocalDateTimeStringSerializer extends JsonSerializer { + + private static final DateTimeFormatter FORMATTER = + DateTimeFormatter.ofPattern(FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND); + + @Override + public void serialize(LocalDateTime value, JsonGenerator gen, SerializerProvider serializers) throws IOException { + if (value == null) { + gen.writeNull(); + return; + } + gen.writeString(FORMATTER.format(value)); + } +} diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanSaveReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanSaveReqVO.java index 4abfdc2..5848ee6 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanSaveReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/inspectionplan/vo/InspectionPlanSaveReqVO.java @@ -15,6 +15,7 @@ import jakarta.validation.constraints.*; public class InspectionPlanSaveReqVO { @Schema(description = "计划名称后缀", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "张三") + @Size(max = 15) private String planNameSuffix; @Schema(description = "业务线: yl-园林;wy-物业:sz-市政", requiredMode = Schema.RequiredMode.REQUIRED) diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/MaintainPlanController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/MaintainPlanController.java index 33704e7..cbcd97d 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/MaintainPlanController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/MaintainPlanController.java @@ -48,7 +48,7 @@ public class MaintainPlanController { @PreAuthorize("@ss.hasPermission('garden:maintain-plan:create')") public CommonResult createMaintainPlan(@Valid @RequestBody MaintainPlanSaveReqVO createReqVO) { if(!createReqVO.verify()){ - log.warn("次数值范围:1-20或者分数格式:1/3, rateValue={}", createReqVO.getRateValue()); + log.warn("次数值范围:1-10或者分数格式:1/3, rateValue={}", createReqVO.getRateValue()); return error(PLAN_RATE_VALUE_ERROR); } return maintainPlanService.createMaintainPlan(createReqVO); @@ -57,7 +57,7 @@ public class MaintainPlanController { @PutMapping("/update") @Operation(summary = "更新养护计划汇总") @PreAuthorize("@ss.hasPermission('garden:maintain-plan:update')") - public CommonResult updateMaintainPlan(@Valid @RequestBody MaintainPlanSaveReqVO updateReqVO) { + public CommonResult updateMaintainPlan(@Valid @RequestBody MaintainPlanUpdateReqVO updateReqVO) { maintainPlanService.updateMaintainPlan(updateReqVO); return success(true); } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanSaveReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanSaveReqVO.java index fb92fd1..146ddf7 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanSaveReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanSaveReqVO.java @@ -1,5 +1,6 @@ package com.zteits.urbanops.module.garden.controller.admin.maintainplan.vo; +import com.zteits.urbanops.module.garden.controller.admin.inspectionplan.vo.InspectionPlanRoadReqVO; import com.zteits.urbanops.module.garden.util.StringValidateUtil; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; @@ -14,21 +15,22 @@ import jakarta.validation.constraints.*; public class MaintainPlanSaveReqVO { @Schema(description = "计划名称后缀", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "张三") + @Size(max = 15) private String planNameSuffix; @Schema(description = "业务线: yl-园林;wy-物业:sz-市政", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "业务线: yl-园林;wy-物业:sz-市政不能为空") private String busiLine; - @Schema(description = "计划属性:1:标准计划;2:临时计划", requiredMode = Schema.RequiredMode.REQUIRED) + @Schema(description = "计划属性:1:标准计划;2:临时计划", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "计划属性:1:标准计划;2:临时计划不能为空") private Integer planAttr; - @Schema(description = "养护类型:2001:浇水;2002:施肥;2003:有害生物防治;2004:修剪;2005:中耕除草;2006:打孔梳草;2007:绿地保洁;2008:园林废弃物收集运输 ;2009:补植;3001:绿地巡视;", requiredMode = Schema.RequiredMode.REQUIRED, example = "7439") + @Schema(description = "养护类型:2001:浇水;2002:施肥;2003:有害生物防治;2004:修剪;2005:中耕除草;2006:打孔梳草;2007:绿地保洁;2008:园林废弃物收集运输 ;2009:补植;3001:绿地巡视;", requiredMode = Schema.RequiredMode.REQUIRED, example = "24742") @NotNull(message = "养护类型:2001:浇水;2002:施肥;2003:有害生物防治;2004:修剪;2005:中耕除草;2006:打孔梳草;2007:绿地保洁;2008:园林废弃物收集运输 ;2009:补植;3001:绿地巡视;不能为空") private Integer planTypeId; - @Schema(description = "归属(一级部门id)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1713") + @Schema(description = "归属(一级部门id)", requiredMode = Schema.RequiredMode.REQUIRED, example = "20800") @NotNull(message = "归属(一级部门id)不能为空") private Long companyId; @@ -38,8 +40,7 @@ public class MaintainPlanSaveReqVO { @Valid private List roadListReqVO; - - @Schema(description = "养护级别: 10:特级;11:一级:12:二级;13:三级", requiredMode = Schema.RequiredMode.REQUIRED, example = "16420") + @Schema(description = "养护级别: 10:特级;11:一级:12:二级;13:三级", requiredMode = Schema.RequiredMode.REQUIRED, example = "8588") @NotNull(message = "养护级别: 10:特级;11:一级:12:二级;13:三级不能为空") private Integer levelId; @@ -47,8 +48,10 @@ public class MaintainPlanSaveReqVO { @NotEmpty(message = "频次值不能为空") private String rateValue; - @Schema(description = "周期ID: 1:日/次;2:周/次;3:月/次;4:年/次", requiredMode = Schema.RequiredMode.REQUIRED, example = "28220") + @Schema(description = "周期ID: 1:日/次;2:周/次;3:月/次;4:年/次", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "周期ID: 1:日/次;2:周/次;3:月/次;4:年/次不能为空") + @Min(1) + @Max(4) private Integer cycleId; @Schema(description = "开始时间") @@ -57,7 +60,7 @@ public class MaintainPlanSaveReqVO { @Schema(description = "开始时间") private LocalDate endTime; - @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你猜") + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对") private String remark; @NotNull(message = "角色Ids不能为空") diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanUpdateReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanUpdateReqVO.java new file mode 100644 index 0000000..7f68015 --- /dev/null +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/maintainplan/vo/MaintainPlanUpdateReqVO.java @@ -0,0 +1,78 @@ +package com.zteits.urbanops.module.garden.controller.admin.maintainplan.vo; + +import com.zteits.urbanops.module.garden.util.StringValidateUtil; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.*; +import lombok.Data; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.List; +import java.util.Set; + +@Schema(description = "管理后台 - 养护计划汇总新增/修改 Request VO") +@Data +public class MaintainPlanUpdateReqVO { + + @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "10938") + private Long id; + + + @Schema(description = "业务线: yl-园林;wy-物业:sz-市政", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "业务线: yl-园林;wy-物业:sz-市政不能为空") + private String busiLine; + + @Schema(description = "计划属性:1:标准计划;2:临时计划", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "计划属性:1:标准计划;2:临时计划不能为空") + private Integer planAttr; + + @Schema(description = "养护类型:2001:浇水;2002:施肥;2003:有害生物防治;2004:修剪;2005:中耕除草;2006:打孔梳草;2007:绿地保洁;2008:园林废弃物收集运输 ;2009:补植;3001:绿地巡视;", requiredMode = Schema.RequiredMode.REQUIRED, example = "24742") + @NotNull(message = "养护类型:2001:浇水;2002:施肥;2003:有害生物防治;2004:修剪;2005:中耕除草;2006:打孔梳草;2007:绿地保洁;2008:园林废弃物收集运输 ;2009:补植;3001:绿地巡视;不能为空") + private Integer planTypeId; + + @Schema(description = "归属(一级部门id)", requiredMode = Schema.RequiredMode.REQUIRED, example = "20800") + @NotNull(message = "归属(一级部门id)不能为空") + private Long companyId; + + @Schema(description = "部门ID(道路负责部门id)", requiredMode = Schema.RequiredMode.REQUIRED, example = "16445") + @NotNull(message = "部门ID(道路负责部门id)不能为空") + private Long deptId; + + @Schema(description = "道路ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15557") + @NotNull(message = "道路ID不能为空") + private Long roadId; + + @Schema(description = "道路名称", example = "赵六") + private String roadName; + + @Schema(description = "养护级别: 10:特级;11:一级:12:二级;13:三级", requiredMode = Schema.RequiredMode.REQUIRED, example = "8588") + @NotNull(message = "养护级别: 10:特级;11:一级:12:二级;13:三级不能为空") + private Integer levelId; + + @Schema(description = "周期ID: 1:日/次;2:周/次;3:月/次;4:年/次", requiredMode = Schema.RequiredMode.REQUIRED, example = "6415") + @NotNull(message = "周期ID: 1:日/次;2:周/次;3:月/次;4:年/次不能为空") + private Integer cycleId; + + @Schema(description = "计划次数", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "计划次数不能为空") + private Integer planNum; + + @Schema(description = "已完成次数", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "已完成次数不能为空") + private Integer planFinishNum; + + @Schema(description = "完成状态 1:未完成;2:已完成", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "完成状态 1:未完成;2:已完成不能为空") + private Integer finishState; + + @Schema(description = "开始时间") + private LocalDateTime beginTime; + + @Schema(description = "开始时间") + private LocalDateTime endTime; + + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对") + @NotEmpty(message = "备注不能为空") + private String remark; +} \ No newline at end of file diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/OldtreesController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/OldtreesController.java index 201dff5..716f2c4 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/OldtreesController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/OldtreesController.java @@ -1,5 +1,6 @@ package com.zteits.urbanops.module.garden.controller.admin.oldtrees; +import com.fhs.core.trans.anno.TransMethodResult; import com.zteits.urbanops.framework.dict.core.DictFrameworkUtils; import com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils; import org.apache.catalina.security.SecurityUtil; @@ -94,6 +95,7 @@ public class OldtreesController { @Operation(summary = "获取古树台账详细信息") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('garden:oldtrees:query')") + @TransMethodResult public CommonResult getOldtrees(@RequestParam("id") String id) { OldtreesDO oldtrees = oldtreesService.getOldtrees(id); return success(BeanUtils.toBean(oldtrees, OldtreesRespVO.class)); @@ -125,20 +127,18 @@ public class OldtreesController { private void fillDictData(List list) { for (OldtreesDO gardenTree : list) { - String maintainUnit = DictFrameworkUtils.parseDictDataValue("maintain_unit", gardenTree.getMaintainunit()); - gardenTree.setMaintainunit(maintainUnit); - String street = DictFrameworkUtils.parseDictDataValue("street_belong", gardenTree.getStreet()); + String street = DictFrameworkUtils.parseDictDataLabel("street_belong", gardenTree.getStreet()); gardenTree.setStreet(street); - String ownership = DictFrameworkUtils.parseDictDataValue("tree_ownership", gardenTree.getOldtreeownership()); + String ownership = DictFrameworkUtils.parseDictDataLabel("tree_ownership", gardenTree.getOldtreeownership()); gardenTree.setOldtreeownership(ownership); - String growthVigor = DictFrameworkUtils.parseDictDataValue("growth_vigor", gardenTree.getGrowthvigor()); + String growthVigor = DictFrameworkUtils.parseDictDataLabel("growth_vigor", gardenTree.getGrowthvigor()); gardenTree.setGrowthvigor(growthVigor); - String treeLevel = DictFrameworkUtils.parseDictDataValue("tree_level", gardenTree.getTreelevel()); + String treeLevel = DictFrameworkUtils.parseDictDataLabel("tree_level", gardenTree.getTreelevel()); gardenTree.setTreelevel(treeLevel); - String dataState = DictFrameworkUtils.parseDictDataValue("data_state", gardenTree.getDatastate()); + String dataState = DictFrameworkUtils.parseDictDataLabel("data_state", gardenTree.getDatastate()); gardenTree.setDatastate(dataState); } } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesPageReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesPageReqVO.java index 1a51be1..e28136b 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesPageReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesPageReqVO.java @@ -1,5 +1,8 @@ package com.zteits.urbanops.module.garden.controller.admin.oldtrees.vo; +import com.fhs.core.trans.anno.Trans; +import com.fhs.core.trans.constant.TransType; +import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; import lombok.*; import java.util.*; import io.swagger.v3.oas.annotations.media.Schema; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesRespVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesRespVO.java index 276f447..029dd15 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesRespVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesRespVO.java @@ -1,9 +1,13 @@ package com.zteits.urbanops.module.garden.controller.admin.oldtrees.vo; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fhs.core.trans.anno.Trans; import com.fhs.core.trans.constant.TransType; +import com.zteits.urbanops.framework.common.util.json.databind.LocalDateTimeStringSerializer; import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; +import com.zteits.urbanops.module.system.dal.dataobject.user.AdminUserDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; @@ -11,13 +15,16 @@ import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import cn.idev.excel.annotation.*; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; + @Schema(description = "管理后台 - 古树名木 Response VO") @Data @ExcelIgnoreUnannotated public class OldtreesRespVO { @Schema(description = "id", example = "4258") - @ExcelProperty("id") +// @ExcelProperty("id") private String id; @Schema(description = "编号") @@ -25,7 +32,7 @@ public class OldtreesRespVO { private String famoustreenumber; @Schema(description = "级别--数据字典:一级、两级") - @ExcelProperty("级别--数据字典:一级、两级") + @ExcelProperty("级别") private String treelevel; @Schema(description = "树种", example = "2") @@ -37,14 +44,11 @@ public class OldtreesRespVO { private String location; @Schema(description = "养护单位") - private String maintainunit; - - @Schema(description = "养护单位名称") @ExcelProperty("养护单位") - private String maintainUnitName; + private String maintainunit; @Schema(description = "权属分类--数据字典:专业绿地和单位(居住区)") - @ExcelProperty("权属分类--数据字典:专业绿地和单位(居住区)") + @ExcelProperty("权属分类") private String oldtreeownership; @Schema(description = "生长地点") @@ -92,7 +96,7 @@ public class OldtreesRespVO { private String weekday; @Schema(description = "生长势--数据字典:正常,衰弱,濒危,死亡") - @ExcelProperty("生长势--数据字典:正常,衰弱,濒危,死亡") +// @ExcelProperty("生长势--数据字典:正常,衰弱,濒危,死亡") private String growthvigor; @Schema(description = "生长环境") @@ -104,27 +108,27 @@ public class OldtreesRespVO { private String treephotoone; @Schema(description = "春季养护管理措施") - @ExcelProperty("春季养护管理措施") +// @ExcelProperty("春季养护管理措施") private String springmaintenance; @Schema(description = "夏季养护管理措施") - @ExcelProperty("夏季养护管理措施") +// @ExcelProperty("夏季养护管理措施") private String summermaintenance; @Schema(description = "秋季养护管理措施") - @ExcelProperty("秋季养护管理措施") +// @ExcelProperty("秋季养护管理措施") private String autumnmaintenance; @Schema(description = "冬季养护管理措施") - @ExcelProperty("冬季养护管理措施") +// @ExcelProperty("冬季养护管理措施") private String wintermaintenance; @Schema(description = "年度") - @ExcelProperty("年度") +// @ExcelProperty("年度") private String annual; @Schema(description = "养护记录备注", example = "随便") - @ExcelProperty("养护记录备注") +// @ExcelProperty("养护记录备注") private String curingremark; @Schema(description = "古树照片二") @@ -140,19 +144,19 @@ public class OldtreesRespVO { private String nameplatephoto; @Schema(description = "数据状态(已更新、未更新)") - @ExcelProperty("数据状态(已更新、未更新)") +// @ExcelProperty("数据状态(已更新、未更新)") private String datastate; @Schema(description = "养护员工--作业队下派古树时选择的派发员工") - @ExcelProperty("养护员工--作业队下派古树时选择的派发员工") +// @ExcelProperty("养护员工--作业队下派古树时选择的派发员工") private String curingstaff; @Schema(description = "状态(驳回/确认)") - @ExcelProperty("状态(驳回/确认)") +// @ExcelProperty("状态(驳回/确认)") private String state; @Schema(description = "平台驳回状态(平台驳回)") - @ExcelProperty("平台驳回状态(平台驳回)") +// @ExcelProperty("平台驳回状态(平台驳回)") private String platformstate; @Schema(description = "所属街道") @@ -160,31 +164,43 @@ public class OldtreesRespVO { private String street; @Schema(description = "责任人姓名", example = "赵六") - @ExcelProperty("责任人姓名") +// @ExcelProperty("责任人姓名") private String responsibleusername; @Schema(description = "责任人电话") - @ExcelProperty("责任人电话") +// @ExcelProperty("责任人电话") private String responsibleuserphone; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "createbyName") + private Long createby; + @Schema(description = "创建者") - @ExcelProperty("创建者") - private String createby; +// @ExcelProperty("创建者") + private String createbyName; @Schema(description = "创建时间") - @ExcelProperty("创建时间") +// @ExcelProperty("创建时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) private LocalDateTime createtime; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "updatebyName") + private Long updateby; + @Schema(description = "更新者") - @ExcelProperty("更新者") - private String updateby; +// @ExcelProperty("更新者") + private String updatebyName; @Schema(description = "更新时间") - @ExcelProperty("更新时间") - private String updatetime; +// @ExcelProperty("更新时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private LocalDateTime updatetime; @Schema(description = "部门id", requiredMode = Schema.RequiredMode.REQUIRED, example = "20245") - @ExcelProperty("部门id") +// @ExcelProperty("部门id") private Long deptId; private List treeImgList; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesSaveReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesSaveReqVO.java index 5990afa..ed56f11 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesSaveReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtrees/vo/OldtreesSaveReqVO.java @@ -1,10 +1,15 @@ package com.zteits.urbanops.module.garden.controller.admin.oldtrees.vo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.zteits.urbanops.module.garden.dal.dataobject.oldtrees.OldtreesDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import jakarta.validation.constraints.*; import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; + import java.time.LocalDateTime; @Schema(description = "管理后台 - 古树名木新增/修改 Request VO") @@ -141,4 +146,46 @@ public class OldtreesSaveReqVO { private List nameplatephotoList; + + public OldtreesSaveReqVO imgToDomain(){ + if (!CollectionUtils.isEmpty(treeImgList)) { + if (treeImgList.size() > 0) { + this.treephotoone = treeImgList.get(0); + } + if (treeImgList.size() > 1) { + this.treephototwo = treeImgList.get(1); + } + if (treeImgList.size() > 2) { + this.treephotothree = treeImgList.get(2); + } + } + if (!CollectionUtils.isEmpty(nameplatephotoList)) { + if (nameplatephotoList.size() > 0) { + this.nameplatephoto = nameplatephotoList.get(0); + } + } + return this; + } + public OldtreesSaveReqVO domainToImg(){ + if (CollectionUtils.isEmpty(treeImgList)) { + treeImgList = new ArrayList<>(); + } + if (CollectionUtils.isEmpty(nameplatephotoList)) { + nameplatephotoList = new ArrayList<>(); + } + if (!StringUtils.isEmpty(treephotoone)) { + treeImgList.add(treephotoone); + } + if (!StringUtils.isEmpty(treephototwo)) { + treeImgList.add(treephototwo); + } + if (!StringUtils.isEmpty(treephotothree)) { + treeImgList.add(treephotothree); + } + if (!StringUtils.isEmpty(nameplatephoto)) { + nameplatephotoList.add(nameplatephoto); + } + return this; + } + } \ No newline at end of file diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/OldtreesChangeLogController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/OldtreesChangeLogController.java index baff719..bac5454 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/OldtreesChangeLogController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/OldtreesChangeLogController.java @@ -8,7 +8,6 @@ import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Operation; -import jakarta.validation.constraints.*; import jakarta.validation.*; import jakarta.servlet.http.*; import java.util.*; @@ -23,6 +22,7 @@ import static com.zteits.urbanops.framework.common.pojo.CommonResult.success; import com.zteits.urbanops.framework.excel.core.util.ExcelUtils; import com.zteits.urbanops.framework.apilog.core.annotation.ApiAccessLog; +import com.fhs.core.trans.anno.TransMethodResult; import static com.zteits.urbanops.framework.apilog.core.enums.OperateTypeEnum.*; import com.zteits.urbanops.module.garden.controller.admin.oldtreeschangelog.vo.*; @@ -75,6 +75,7 @@ public class OldtreesChangeLogController { @Operation(summary = "获得古树名木修改记录") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('garden:oldtrees-change-log:query')") + @TransMethodResult public CommonResult getOldtreesChangeLog(@RequestParam("id") String id) { OldtreesChangeLogDO oldtreesChangeLog = oldtreesChangeLogService.getOldtreesChangeLog(id); return success(BeanUtils.toBean(oldtreesChangeLog, OldtreesChangeLogRespVO.class)); @@ -83,6 +84,7 @@ public class OldtreesChangeLogController { @GetMapping({"/page","/list"}) @Operation(summary = "查询古树名木修改记录列表") @PreAuthorize("@ss.hasPermission('garden:oldtrees-change-log:query')") + @TransMethodResult public CommonResult> getOldtreesChangeLogPage(@Valid OldtreesChangeLogPageReqVO pageReqVO) { PageResult pageResult = oldtreesChangeLogService.getOldtreesChangeLogPage(pageReqVO); return success(BeanUtils.toBean(pageResult, OldtreesChangeLogRespVO.class)); diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/vo/OldtreesChangeLogRespVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/vo/OldtreesChangeLogRespVO.java index 2fa733f..3b1b8d7 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/vo/OldtreesChangeLogRespVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/oldtreeschangelog/vo/OldtreesChangeLogRespVO.java @@ -1,17 +1,27 @@ package com.zteits.urbanops.module.garden.controller.admin.oldtreeschangelog.vo; -import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fhs.core.trans.anno.Trans; +import com.fhs.core.trans.constant.TransType; +import com.fhs.core.trans.vo.VO; +import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; +import com.zteits.urbanops.module.system.dal.dataobject.user.AdminUserDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import cn.idev.excel.annotation.*; +import com.zteits.urbanops.framework.common.util.json.databind.LocalDateTimeStringSerializer; + +import static com.zteits.urbanops.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; @Schema(description = "管理后台 - 古树名木修改记录 Response VO") @Data @ExcelIgnoreUnannotated -public class OldtreesChangeLogRespVO { +public class OldtreesChangeLogRespVO implements VO { @Schema(description = "id", example = "148") @ExcelProperty("id") @@ -39,6 +49,7 @@ public class OldtreesChangeLogRespVO { @Schema(description = "养护单位") @ExcelProperty("养护单位") + @Trans(type = TransType.SIMPLE, target = DeptDO.class, fields = "name",ref = "maintainunit") private String maintainunit; @Schema(description = "权属分类--数据字典:专业绿地和单位(居住区)") @@ -165,21 +176,33 @@ public class OldtreesChangeLogRespVO { @ExcelProperty("负责人电话") private String responsibleuserphone; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "createbyName") + private Long createby; + @Schema(description = "创建者") @ExcelProperty("创建者") - private String createby; + private String createbyName; @Schema(description = "创建时间") @ExcelProperty("创建时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) private LocalDateTime createtime; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "updatebyName") + private Long updateby; + @Schema(description = "更新者") @ExcelProperty("更新者") - private String updateby; + private String updatebyName; @Schema(description = "更新时间") @ExcelProperty("更新时间") - private String updatetime; + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private LocalDateTime updatetime; private List treeImgList; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/RoadController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/RoadController.java index c820fff..e72c785 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/RoadController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/RoadController.java @@ -75,8 +75,7 @@ public class RoadController { @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('garden:road:query')") public CommonResult getRoad(@RequestParam("id") Long id) { - RoadDO road = roadService.getRoad(id); - return success(BeanUtils.toBean(road, RoadRespVO.class)); + return success(roadService.getRoad(id)); } @GetMapping("/page") diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/vo/RoadSaveReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/vo/RoadSaveReqVO.java index 387f5c5..07a759d 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/vo/RoadSaveReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/road/vo/RoadSaveReqVO.java @@ -11,7 +11,8 @@ public class RoadSaveReqVO { @Schema(description = "道路名称", example = "赵六") - @Length(max = 128) + @NotEmpty(message = "道路名称不能为空") + @Size(min=2, max = 128, message = "道路名称长度") private String roadName; @Schema(description = "街道ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11139") @@ -31,6 +32,7 @@ public class RoadSaveReqVO { private Integer levelId; @Schema(description = "道路属性") + @Size(min=2, max = 50) private String roadAttr; @Schema(description = "道路方位 W-西 E-东 N-北 S-南 参考字典roadDirection", requiredMode = Schema.RequiredMode.REQUIRED) @@ -39,18 +41,22 @@ public class RoadSaveReqVO { @Schema(description = "行道树绿化面积", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "行道树绿化面积不能为空") + @Size(min=2, max = 50) private String greenBeltTreeArea; @Schema(description = "绿化带面积", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "绿化带面积不能为空") + @Size(min=2, max = 50) private String greenBeltArea; @Schema(description = "总绿化带面积", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "总绿化带面积不能为空") + @Size(min=2, max = 50) private String totalArea; @Schema(description = "行道树(棵)面积", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "行道树(棵)面积不能为空") + @Size(min=2, max = 50) private String treeArea; @Schema(description = "起点经度", requiredMode = Schema.RequiredMode.REQUIRED) diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/TreeController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/TreeController.java index eeaa75a..cc0e8cd 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/TreeController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/TreeController.java @@ -1,5 +1,6 @@ package com.zteits.urbanops.module.garden.controller.admin.tree; +import com.fhs.core.trans.anno.TransMethodResult; import com.zteits.urbanops.framework.dict.core.DictFrameworkUtils; import com.zteits.urbanops.framework.security.core.LoginUser; import com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils; @@ -89,6 +90,7 @@ public class TreeController { @Operation(summary = "获得一树一档案") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('garden:tree:query')") + @TransMethodResult public CommonResult getTree(@RequestParam("id") Long id) { TreeDO tree = treeService.getTree(id); return success(BeanUtils.toBean(tree, TreeRespVO.class)); @@ -142,20 +144,17 @@ public class TreeController { private void fillDictData(List list) { for (TreeDO gardenTree : list) { - String maintainUnit = DictFrameworkUtils.parseDictDataValue("maintain_unit", gardenTree.getMaintainunit()); - gardenTree.setMaintainunit(maintainUnit); - - String street = DictFrameworkUtils.parseDictDataValue("street_belong", gardenTree.getStreet()); + String street = DictFrameworkUtils.parseDictDataLabel("street_belong", gardenTree.getStreet()); gardenTree.setStreet(street); - String ownership = DictFrameworkUtils.parseDictDataValue("tree_ownership", gardenTree.getOldtreeownership()); + String ownership = DictFrameworkUtils.parseDictDataLabel("tree_ownership", gardenTree.getOldtreeownership()); gardenTree.setOldtreeownership(ownership); - String growthVigor = DictFrameworkUtils.parseDictDataValue("growth_vigor", gardenTree.getGrowthvigor()); + String growthVigor = DictFrameworkUtils.parseDictDataLabel("growth_vigor", gardenTree.getGrowthvigor()); gardenTree.setGrowthvigor(growthVigor); - String treeLevel = DictFrameworkUtils.parseDictDataValue("tree_level", gardenTree.getTreelevel()); + String treeLevel = DictFrameworkUtils.parseDictDataLabel("tree_level", gardenTree.getTreelevel()); gardenTree.setTreelevel(treeLevel); - String dataState = DictFrameworkUtils.parseDictDataValue("data_state", gardenTree.getDatastate()); + String dataState = DictFrameworkUtils.parseDictDataLabel("data_state", gardenTree.getDatastate()); gardenTree.setDatastate(dataState); } } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeRespVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeRespVO.java index 182bd19..73a8764 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeRespVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeRespVO.java @@ -1,9 +1,13 @@ package com.zteits.urbanops.module.garden.controller.admin.tree.vo; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fhs.core.trans.anno.Trans; import com.fhs.core.trans.constant.TransType; +import com.zteits.urbanops.framework.common.util.json.databind.LocalDateTimeStringSerializer; import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; +import com.zteits.urbanops.module.system.dal.dataobject.user.AdminUserDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; @@ -11,13 +15,16 @@ import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import cn.idev.excel.annotation.*; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; + @Schema(description = "管理后台 - 一树一档案 Response VO") @Data @ExcelIgnoreUnannotated public class TreeRespVO { @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "28236") - @ExcelProperty("id") +// @ExcelProperty("id") private Long id; @Schema(description = "编号") @@ -37,7 +44,7 @@ public class TreeRespVO { private String treeheight; @Schema(description = "冠幅") - @ExcelProperty("冠幅") +// @ExcelProperty("冠幅") private String canopy; @Schema(description = "胸径") @@ -45,11 +52,11 @@ public class TreeRespVO { private String dbh; @Schema(description = "生长势--数据字典:正常,衰弱,濒危,死亡") - @ExcelProperty("生长势--数据字典:正常,衰弱,濒危,死亡") + @ExcelProperty("生长势") private String growthvigor; @Schema(description = "级别--数据字典:一级、两级") - @ExcelProperty("级别--数据字典:一级、两级") + @ExcelProperty("级别") private String treelevel; @Schema(description = "经度") @@ -61,24 +68,19 @@ public class TreeRespVO { private String latitude; @Schema(description = "所在地") - @ExcelProperty("所在地") +// @ExcelProperty("所在地") private String location; @Schema(description = "养护单位") - @Trans(type = TransType.SIMPLE, targetClassName = "com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO", - key = "id", fields = "name", ref = "maintainUnitName") - private String maintainunit; - - @Schema(description = "养护单位名称") @ExcelProperty("养护单位") - private String maintainUnitName; + private String maintainunit; @Schema(description = "管护单位") @ExcelProperty("管护单位") private String managedutyunit; @Schema(description = "道路id") - @ExcelProperty("道路id") +// @ExcelProperty("道路id") private Long road; @Schema(description = "所属街道") @@ -86,11 +88,11 @@ public class TreeRespVO { private String street; @Schema(description = "权属分类--数据字典:专业绿地和单位(居住区)") - @ExcelProperty("权属分类--数据字典:专业绿地和单位(居住区)") + @ExcelProperty("权属分类") private String oldtreeownership; @Schema(description = "数据状态(已更新、未更新)") - @ExcelProperty("数据状态(已更新、未更新)") +// @ExcelProperty("数据状态(已更新、未更新)") private String datastate; @Schema(description = "估测树龄") @@ -137,28 +139,40 @@ public class TreeRespVO { @ExcelProperty("古树照片五") private String treephotofive; - @Schema(description = "创建者") - @ExcelProperty("创建者") - private String createby; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "createbyName") + private Long createby; - @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) - @ExcelProperty("创建时间") + @Schema(description = "创建者") +// @ExcelProperty("创建者") + private String createbyName; + + @Schema(description = "创建时间") +// @ExcelProperty("创建时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) private LocalDateTime createtime; - @Schema(description = "更新者") - @ExcelProperty("更新者") - private String updateby; + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "updatebyName") + private Long updateby; - @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED) - @ExcelProperty("更新时间") + @Schema(description = "更新者") +// @ExcelProperty("更新者") + private String updatebyName; + + @Schema(description = "更新时间") +// @ExcelProperty("更新时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) private LocalDateTime updatetime; @Schema(description = "备注", example = "你说的对") - @ExcelProperty("备注") +// @ExcelProperty("备注") private String remark; @Schema(description = "部门id", requiredMode = Schema.RequiredMode.REQUIRED, example = "17101") - @ExcelProperty("部门id") +// @ExcelProperty("部门id") private Long deptId; private List treeImgList; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeSaveReqVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeSaveReqVO.java index dc8c351..d94eb09 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeSaveReqVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/tree/vo/TreeSaveReqVO.java @@ -1,10 +1,14 @@ package com.zteits.urbanops.module.garden.controller.admin.tree.vo; +import com.zteits.urbanops.module.garden.dal.dataobject.tree.TreeDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import jakarta.validation.constraints.*; import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; + import java.time.LocalDateTime; @Schema(description = "管理后台 - 一树一档案新增/修改 Request VO") @@ -121,5 +125,47 @@ public class TreeSaveReqVO { private List treeImgList; + public TreeSaveReqVO imgToDomain(){ + if (!CollectionUtils.isEmpty(treeImgList)) { + if (treeImgList.size() > 0) { + this.treephotoone = treeImgList.get(0); + } + if (treeImgList.size() > 1) { + this.treephototwo = treeImgList.get(1); + } + if (treeImgList.size() > 2) { + this.treephotothree = treeImgList.get(2); + } + if (treeImgList.size() > 3) { + this.treephotofour = treeImgList.get(3); + } + if (treeImgList.size() > 4) { + this.treephotofive = treeImgList.get(4); + } + } + return this; + } + public TreeSaveReqVO domainToImg(){ + if (CollectionUtils.isEmpty(treeImgList)) { + treeImgList = new ArrayList<>(); + } + if (!StringUtils.isEmpty(treephotoone)) { + treeImgList.add(treephotoone); + } + if (!StringUtils.isEmpty(treephototwo)) { + treeImgList.add(treephototwo); + } + if (!StringUtils.isEmpty(treephotothree)) { + treeImgList.add(treephotothree); + } + if (!StringUtils.isEmpty(treephotofour)) { + treeImgList.add(treephotofour); + } + if (!StringUtils.isEmpty(treephotofive)) { + treeImgList.add(treephotofive); + } + return this; + } + } \ No newline at end of file diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/TreeChangeLogController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/TreeChangeLogController.java index 12f7f9a..50fe4e7 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/TreeChangeLogController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/TreeChangeLogController.java @@ -1,5 +1,6 @@ package com.zteits.urbanops.module.garden.controller.admin.treechangelog; +import com.fhs.core.trans.anno.TransMethodResult; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -75,6 +76,7 @@ public class TreeChangeLogController { @Operation(summary = "获得一树一档案修改记录") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('garden:tree-change-log:query')") + @TransMethodResult public CommonResult getTreeChangeLog(@RequestParam("id") Long id) { TreeChangeLogDO treeChangeLog = treeChangeLogService.getTreeChangeLog(id); return success(BeanUtils.toBean(treeChangeLog, TreeChangeLogRespVO.class)); diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/vo/TreeChangeLogRespVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/vo/TreeChangeLogRespVO.java index d23eb0a..b756cee 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/vo/TreeChangeLogRespVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/treechangelog/vo/TreeChangeLogRespVO.java @@ -1,155 +1,182 @@ -package com.zteits.urbanops.module.garden.controller.admin.treechangelog.vo; - -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; -import java.util.*; -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; -import cn.idev.excel.annotation.*; - -@Schema(description = "管理后台 - 一树一档案修改记录 Response VO") -@Data -@ExcelIgnoreUnannotated -public class TreeChangeLogRespVO { - - @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "3528") - @ExcelProperty("id") - private Long id; - - @Schema(description = "garden_tree 的主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26527") - @ExcelProperty("garden_tree 的主键") - private Long treeid; - - @Schema(description = "编号") - @ExcelProperty("编号") - private String treenumber; - - @Schema(description = "拉丁名", example = "赵六") - @ExcelProperty("拉丁名") - private String latinname; - - @Schema(description = "树种", example = "1") - @ExcelProperty("树种") - private String treetype; - - @Schema(description = "树高") - @ExcelProperty("树高") - private String treeheight; - - @Schema(description = "冠幅") - @ExcelProperty("冠幅") - private String canopy; - - @Schema(description = "胸径") - @ExcelProperty("胸径") - private String dbh; - - @Schema(description = "生长势--数据字典:正常,衰弱,濒危,死亡") - @ExcelProperty("生长势--数据字典:正常,衰弱,濒危,死亡") - private String growthvigor; - - @Schema(description = "级别--数据字典:一级、两级") - @ExcelProperty("级别--数据字典:一级、两级") - private String treelevel; - - @Schema(description = "经度") - @ExcelProperty("经度") - private String longitude; - - @Schema(description = "纬度") - @ExcelProperty("纬度") - private String latitude; - - @Schema(description = "所在地") - @ExcelProperty("所在地") - private String location; - - @Schema(description = "养护单位") - @ExcelProperty("养护单位") - private String maintainunit; - - @Schema(description = "管护单位") - @ExcelProperty("管护单位") - private String managedutyunit; - - @Schema(description = "道路id") - @ExcelProperty("道路id") - private Long road; - - @Schema(description = "所属街道") - @ExcelProperty("所属街道") - private String street; - - @Schema(description = "权属分类--数据字典:专业绿地和单位(居住区)") - @ExcelProperty("权属分类--数据字典:专业绿地和单位(居住区)") - private String oldtreeownership; - - @Schema(description = "数据状态(已更新、未更新)") - @ExcelProperty("数据状态(已更新、未更新)") - private String datastate; - - @Schema(description = "估测树龄") - @ExcelProperty("估测树龄") - private String estimationtreeage; - - @Schema(description = "冠幅东西") - @ExcelProperty("冠幅东西") - private String canopyeastwest; - - @Schema(description = "冠幅南北") - @ExcelProperty("冠幅南北") - private String canopysouthnorth; - - @Schema(description = "干周") - @ExcelProperty("干周") - private String weekday; - - @Schema(description = "生长地点") - @ExcelProperty("生长地点") - private String growlocation; - - @Schema(description = "生长环境") - @ExcelProperty("生长环境") - private String growthenvironment; - - @Schema(description = "树木照片一") - @ExcelProperty("树木照片一") - private String treephotoone; - - @Schema(description = "古树照片二") - @ExcelProperty("古树照片二") - private String treephototwo; - - @Schema(description = "古树照片三") - @ExcelProperty("古树照片三") - private String treephotothree; - - @Schema(description = "古树照片四") - @ExcelProperty("古树照片四") - private String treephotofour; - - @Schema(description = "古树照片五") - @ExcelProperty("古树照片五") - private String treephotofive; - - @Schema(description = "创建者") - @ExcelProperty("创建者") - private String createby; - - @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) - @ExcelProperty("创建时间") - private LocalDateTime createtime; - - @Schema(description = "更新者") - @ExcelProperty("更新者") - private String updateby; - - @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED) - @ExcelProperty("更新时间") - private LocalDateTime updatetime; - - @Schema(description = "备注", example = "你猜") - @ExcelProperty("备注") - private String remark; - -} \ No newline at end of file +package com.zteits.urbanops.module.garden.controller.admin.treechangelog.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fhs.core.trans.anno.Trans; +import com.fhs.core.trans.constant.TransType; +import com.zteits.urbanops.framework.common.util.json.databind.LocalDateTimeStringSerializer; +import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; +import com.zteits.urbanops.module.system.dal.dataobject.user.AdminUserDO; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import cn.idev.excel.annotation.*; + +import static com.zteits.urbanops.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.zteits.urbanops.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; + +@Schema(description = "管理后台 - 一树一档案修改记录 Response VO") +@Data +@ExcelIgnoreUnannotated +public class TreeChangeLogRespVO { + + @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "3528") + @ExcelProperty("id") + private Long id; + + @Schema(description = "garden_tree 的主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26527") + @ExcelProperty("garden_tree 的主键") + private Long treeid; + + @Schema(description = "编号") + @ExcelProperty("编号") + private String treenumber; + + @Schema(description = "拉丁名", example = "赵六") + @ExcelProperty("拉丁名") + private String latinname; + + @Schema(description = "树种", example = "1") + @ExcelProperty("树种") + private String treetype; + + @Schema(description = "树高") + @ExcelProperty("树高") + private String treeheight; + + @Schema(description = "冠幅") + @ExcelProperty("冠幅") + private String canopy; + + @Schema(description = "胸径") + @ExcelProperty("胸径") + private String dbh; + + @Schema(description = "生长势--数据字典:正常,衰弱,濒危,死亡") + @ExcelProperty("生长势--数据字典:正常,衰弱,濒危,死亡") + private String growthvigor; + + @Schema(description = "级别--数据字典:一级、两级") + @ExcelProperty("级别--数据字典:一级、两级") + private String treelevel; + + @Schema(description = "经度") + @ExcelProperty("经度") + private String longitude; + + @Schema(description = "纬度") + @ExcelProperty("纬度") + private String latitude; + + @Schema(description = "所在地") + @ExcelProperty("所在地") + private String location; + + @Schema(description = "养护单位") + @ExcelProperty("养护单位") + @Trans(type = TransType.SIMPLE, target = DeptDO.class, fields = "name",ref = "maintainunit") + private String maintainunit; + + @Schema(description = "管护单位") + @ExcelProperty("管护单位") + private String managedutyunit; + + @Schema(description = "道路id") + @ExcelProperty("道路id") + private Long road; + + @Schema(description = "所属街道") + @ExcelProperty("所属街道") + private String street; + + @Schema(description = "权属分类--数据字典:专业绿地和单位(居住区)") + @ExcelProperty("权属分类--数据字典:专业绿地和单位(居住区)") + private String oldtreeownership; + + @Schema(description = "数据状态(已更新、未更新)") + @ExcelProperty("数据状态(已更新、未更新)") + private String datastate; + + @Schema(description = "估测树龄") + @ExcelProperty("估测树龄") + private String estimationtreeage; + + @Schema(description = "冠幅东西") + @ExcelProperty("冠幅东西") + private String canopyeastwest; + + @Schema(description = "冠幅南北") + @ExcelProperty("冠幅南北") + private String canopysouthnorth; + + @Schema(description = "干周") + @ExcelProperty("干周") + private String weekday; + + @Schema(description = "生长地点") + @ExcelProperty("生长地点") + private String growlocation; + + @Schema(description = "生长环境") + @ExcelProperty("生长环境") + private String growthenvironment; + + @Schema(description = "树木照片一") + @ExcelProperty("树木照片一") + private String treephotoone; + + @Schema(description = "古树照片二") + @ExcelProperty("古树照片二") + private String treephototwo; + + @Schema(description = "古树照片三") + @ExcelProperty("古树照片三") + private String treephotothree; + + @Schema(description = "古树照片四") + @ExcelProperty("古树照片四") + private String treephotofour; + + @Schema(description = "古树照片五") + @ExcelProperty("古树照片五") + private String treephotofive; + + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "createbyName") + private Long createby; + + @Schema(description = "创建者") + @ExcelProperty("创建者") + private String createbyName; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private LocalDateTime createtime; + + @Trans(type = TransType.SIMPLE, target = AdminUserDO.class, fields = "nickname", ref = "updatebyName") + private Long updateby; + + @Schema(description = "更新者") + @ExcelProperty("更新者") + private String updatebyName; + + @Schema(description = "更新时间") + @ExcelProperty("更新时间") + @JsonSerialize(using = LocalDateTimeStringSerializer.class) + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private LocalDateTime updatetime; + + @Schema(description = "备注", example = "你猜") + @ExcelProperty("备注") + private String remark; + + private List treeImgList; + + private List nameplatephotoList; + +} diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/dataobject/oldtreeschangelog/OldtreesChangeLogDO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/dataobject/oldtreeschangelog/OldtreesChangeLogDO.java index 1da7c61..f65a944 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/dataobject/oldtreeschangelog/OldtreesChangeLogDO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/dataobject/oldtreeschangelog/OldtreesChangeLogDO.java @@ -5,6 +5,7 @@ import java.util.*; import java.time.LocalDateTime; import com.baomidou.mybatisplus.annotation.*; import com.zteits.urbanops.framework.mybatis.core.dataobject.BaseDO; +import org.springframework.format.annotation.DateTimeFormat; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/mysql/oldtreeschangelog/OldtreesChangeLogMapper.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/mysql/oldtreeschangelog/OldtreesChangeLogMapper.java index 10845f4..56636fd 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/mysql/oldtreeschangelog/OldtreesChangeLogMapper.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/mysql/oldtreeschangelog/OldtreesChangeLogMapper.java @@ -25,6 +25,7 @@ public interface OldtreesChangeLogMapper extends BaseMapperX createMaintainPlan(MaintainPlanSaveReqVO createReqVO) { //存在性校验 validateMaintainPlanExists(createReqVO); LocalDateTime now = LocalDateTime.now(); - String userId = SecurityFrameworkUtils.getLoginUserId()+""; + String userId = SecurityFrameworkUtils.getLoginUserId() + ""; String userName = SecurityFrameworkUtils.getLoginUserNickname(); String rateValue; if (createReqVO.getRateValue().contains("/")) { rateValue = createReqVO.getRateValue().trim(); } else { - rateValue = createReqVO.getRateValue().trim()+"/1"; + rateValue = createReqVO.getRateValue().trim() + "/1"; } //计算开始和计算时间 在间隔周期下每天的次数 - //计算开始和计算时间 在间隔周期下每天的次数 List calculate = TimeIntervalFrequencyUtil.calculate(createReqVO.getBeginTime().toString(), createReqVO.getEndTime().toString(), rateValue, createReqVO.getCycleId()); if (CollectionUtils.isEmpty(calculate)) { log.warn("获取两个时间之间间隔天数错误"); @@ -96,8 +94,6 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { } //计算计划次数 Integer planNum = calculate.size(); - - //巡检计划list List maintainPlanList = new ArrayList<>(); //角色列表 @@ -107,7 +103,7 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { //按照道路创建计划 createReqVO.getRoadListReqVO().forEach(roadReqVO -> { MaintainPlanDO maintainPlan = BeanUtils.toBean(createReqVO, MaintainPlanDO.class); - String batchNo = "BN" + System.currentTimeMillis() + RandomUtil.randomInt(10000)+roadReqVO.getRoadId(); + String batchNo = "BN" + System.currentTimeMillis() + RandomUtil.randomInt(10000) + roadReqVO.getRoadId(); maintainPlan.setBatchNo(batchNo); maintainPlan.setPlanFinishNum(0); maintainPlan.setFinishState(FinishStateEnum.NOT_FINISHED.getStatus()); @@ -124,8 +120,8 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { maintainPlan.setRoadName(roadReqVO.getRoadName()); //计划属性label 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() :""; + String planTypeIdLabel = DictFrameworkUtils.parseDictDataLabel(PlanConstants.INSPECTION_MAINTAIN_TYPE, createReqVO.getPlanTypeId()); + String planNameSuffix = StringUtil.isNotEmpty(createReqVO.getPlanNameSuffix()) ? createReqVO.getPlanNameSuffix() : ""; maintainPlan.setPlanName(roadReqVO.getRoadName() + planAttrLabel + planTypeIdLabel + planNameSuffix); maintainPlanList.add(maintainPlan); /*2.插入角色*/ @@ -162,11 +158,11 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { private MaintainPlanDetailDO getMaintainPlanDetailDO(String batchNo, MaintainPlanSaveReqVO saveReqVO, MaintainPlanRoadReqVO roadReqVO, LocalDateTime now) { - String userId = SecurityFrameworkUtils.getLoginUserId()+""; + String userId = SecurityFrameworkUtils.getLoginUserId() + ""; String userName = SecurityFrameworkUtils.getLoginUserNickname(); MaintainPlanDetailDO entity = new MaintainPlanDetailDO(); entity.setBatchNo(batchNo); - entity.setPlanNo("Y" + DateUtil.format(new Date(), "yyyyMMddHHmmssSSS") + RandomUtil.randomInt(1000)); + entity.setPlanNo("Y" + System.currentTimeMillis() + RandomUtil.randomInt(1000)); entity.setBusiLine(saveReqVO.getBusiLine()); entity.setCompanyId(saveReqVO.getCompanyId()); entity.setDeptId(roadReqVO.getDeptId()); @@ -182,34 +178,41 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { } @Override - public void updateMaintainPlan(MaintainPlanSaveReqVO updateReqVO) { + public void updateMaintainPlan(MaintainPlanUpdateReqVO updateReqVO) { // 校验存在 - //validateMaintainPlanExists(updateReqVO.getId()); + validateMaintainPlanExists(updateReqVO.getId()); // 更新 MaintainPlanDO updateObj = BeanUtils.toBean(updateReqVO, MaintainPlanDO.class); maintainPlanMapper.updateById(updateObj); } + private void validateMaintainPlanExists(Long id) { + if (maintainPlanMapper.selectById(id) == null) { + throw exception(INSPECTION_PLAN_NOT_EXISTS); + } + } + + @Override public void deleteMaintainPlan(Long id) { // 校验存在 - //validateMaintainPlanExists(id); + validateMaintainPlanExists(id); // 删除 maintainPlanMapper.deleteById(id); } @Override - public void deleteMaintainPlanListByIds(List ids) { + public void deleteMaintainPlanListByIds(List ids) { // 删除 maintainPlanMapper.deleteByIds(ids); - } + } private void validateMaintainPlanExists(MaintainPlanSaveReqVO req) { Set roadIds = req.getRoadListReqVO().stream().map(MaintainPlanRoadReqVO::getRoadId).collect(Collectors.toSet()); - Long count =0L; + Long count = 0L; //标准计划 - if(req.getPlanAttr().equals(1)){ + if (req.getPlanAttr().equals(1)) { QueryWrapper sql = new QueryWrapper<>(); sql.lambda().eq(MaintainPlanDO::getPlanTypeId, req.getPlanTypeId()) .in(MaintainPlanDO::getRoadId, roadIds) @@ -217,7 +220,7 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { .ge(MaintainPlanDO::getEndTime, req.getBeginTime()); // end_time >= startTime count = maintainPlanMapper.selectCount(sql); - }else{ + } else { QueryWrapper sql = new QueryWrapper<>(); sql.lambda().eq(MaintainPlanDO::getPlanTypeId, req.getPlanTypeId()) .in(MaintainPlanDO::getRoadId, roadIds) @@ -248,11 +251,12 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { /** * 回填部门/公司/角色 + * * @param list 分页对象 */ - private void addDataInspectionPlan(List list ){ - if(org.springframework.util.CollectionUtils.isEmpty(list)){ - return ; + private void addDataInspectionPlan(List list) { + if (org.springframework.util.CollectionUtils.isEmpty(list)) { + return; } //公司 @@ -264,22 +268,22 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { Map deptMap = deptApi.getDeptMap(deptIds); list.forEach(plan -> { - DeptRespDTO dept = deptMap.get(plan.getDeptId()); + DeptRespDTO dept = deptMap.get(plan.getDeptId()); if (dept != null) { plan.setDeptName(dept.getName()); } - DeptRespDTO company = deptMap.get(plan.getCompanyId()); - if(company != null){ + DeptRespDTO company = deptMap.get(plan.getCompanyId()); + if (company != null) { plan.setCompanyName(company.getName()); } List roleList = maintainPlanRoleMapper.selectList(new QueryWrapper().lambda() .eq(MaintainPlanRoleDO::getBatchNo, plan.getBatchNo())); Set roleIds = roleList.stream().map(MaintainPlanRoleDO::getRoleId).collect(Collectors.toSet()); - if(!org.springframework.util.CollectionUtils.isEmpty(roleIds)){ + if (!org.springframework.util.CollectionUtils.isEmpty(roleIds)) { List roles = roleApi.getRoleList(roleIds); - if(!org.springframework.util.CollectionUtils.isEmpty(roles)){ + if (!org.springframework.util.CollectionUtils.isEmpty(roles)) { plan.setRoleNameList(roles.stream().map(RoleDO::getName).collect(Collectors.toList())); } } @@ -290,7 +294,7 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { @Override public void deleteInspectionPlanByBatchNo(String batchNo) { MaintainPlanDO inspectionPlanDO = maintainPlanMapper.selectOne(MaintainPlanDO::getBatchNo, batchNo); - if(inspectionPlanDO !=null && inspectionPlanDO.getPlanFinishNum() >0){ + if (inspectionPlanDO != null && inspectionPlanDO.getPlanFinishNum() > 0) { throw exception(INSPECTION_PLAN_NOT_ALLOW_DELETE); } maintainPlanMapper.deleteByBatchNo(batchNo); @@ -301,7 +305,7 @@ public class MaintainPlanServiceImpl implements MaintainPlanService { @Override public void stopPlanInspectionPlan(String batchNo) { maintainPlanMapper.delete(MaintainPlanDO::getBatchNo, batchNo); - maintainPlanDetailMapper.delete(MaintainPlanDetailDO::getBatchNo,batchNo); + maintainPlanDetailMapper.delete(MaintainPlanDetailDO::getBatchNo, batchNo); maintainPlanRoleMapper.delete(MaintainPlanRoleDO::getBatchNo, batchNo); } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtrees/OldtreesServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtrees/OldtreesServiceImpl.java index a5b3f48..3548dbe 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtrees/OldtreesServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtrees/OldtreesServiceImpl.java @@ -44,13 +44,12 @@ public class OldtreesServiceImpl implements OldtreesService { @Override public String createOldtrees(OldtreesSaveReqVO createReqVO) { + + createReqVO.imgToDomain(); + // 插入 OldtreesDO oldtrees = BeanUtils.toBean(createReqVO, OldtreesDO.class); - if (!ObjectUtils.isEmpty(oldtrees)) { - oldtrees.imgToDomain(); - } - String id = oldtrees.getId(); if (!StringUtils.hasText(id)) { id = UUID.randomUUID().toString().replace("-", ""); @@ -66,6 +65,7 @@ public class OldtreesServiceImpl implements OldtreesService { OldtreesChangeLogDO changeLog = new OldtreesChangeLogDO(); BeanUtils.copyProperties(createReqVO, changeLog); + changeLog.setId(id); changeLog.setOldtreeid(id); changeLog.setCreateby(createReqVO.getCreateby()); changeLog.setCreatetime(createReqVO.getCreatetime()); @@ -79,6 +79,8 @@ public class OldtreesServiceImpl implements OldtreesService { @Override public void updateOldtrees(OldtreesSaveReqVO updateReqVO) { + + updateReqVO.imgToDomain(); // 校验存在 OldtreesDO dbOlderTree = validateOldtreesExists(updateReqVO.getId()); @@ -93,10 +95,9 @@ public class OldtreesServiceImpl implements OldtreesService { // 更新 OldtreesDO updateObj = BeanUtils.toBean(updateReqVO, OldtreesDO.class); - updateObj.imgToDomain(); - OldtreesChangeLogDO changeLog = new OldtreesChangeLogDO(); org.springframework.beans.BeanUtils.copyProperties(updateReqVO, changeLog); + changeLog.setId(updateReqVO.getId()); changeLog.setOldtreeid(updateReqVO.getId()); changeLog.setCreateby(updateReqVO.getUpdateby()); changeLog.setCreatetime(LocalDateTime.now()); diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtreeschangelog/OldtreesChangeLogServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtreeschangelog/OldtreesChangeLogServiceImpl.java index 7393786..4cfff69 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtreeschangelog/OldtreesChangeLogServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/oldtreeschangelog/OldtreesChangeLogServiceImpl.java @@ -3,6 +3,7 @@ package com.zteits.urbanops.module.garden.service.oldtreeschangelog; import cn.hutool.core.collection.CollUtil; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; +import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.transaction.annotation.Transactional; @@ -74,7 +75,11 @@ public class OldtreesChangeLogServiceImpl implements OldtreesChangeLogService { @Override public OldtreesChangeLogDO getOldtreesChangeLog(String id) { - return oldtreesChangeLogMapper.selectById(id); + OldtreesChangeLogDO oldtreesChangeLogDO = oldtreesChangeLogMapper.selectById(id); + if (!ObjectUtils.isEmpty(oldtreesChangeLogDO)) { + oldtreesChangeLogDO.domainToImg(); + } + return oldtreesChangeLogDO; } @Override diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadService.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadService.java index 7e9d2bc..e7a97b1 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadService.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadService.java @@ -49,7 +49,7 @@ public interface RoadService { * @param id 编号 * @return 道路管理 */ - RoadDO getRoad(Long id); + RoadRespVO getRoad(Long id); /** * 获得道路管理分页 diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadServiceImpl.java index 40d34a4..099404b 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/road/RoadServiceImpl.java @@ -97,8 +97,13 @@ public class RoadServiceImpl implements RoadService { } @Override - public RoadDO getRoad(Long id) { - return roadMapper.selectById(id); + public RoadRespVO getRoad(Long id) { + RoadDO roadDO = roadMapper.selectById(id); + RoadRespVO respVO = BeanUtils.toBean(roadDO, RoadRespVO.class); + List list = new ArrayList<>(); + list.add(respVO); + addDataInspectionPlan(list); + return respVO; } @Override diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/tree/TreeServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/tree/TreeServiceImpl.java index 89c55f5..4149549 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/tree/TreeServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/tree/TreeServiceImpl.java @@ -67,13 +67,10 @@ public class TreeServiceImpl implements TreeService { @Override public Long createTree(TreeSaveReqVO createReqVO) { + createReqVO.imgToDomain(); // 插入 TreeDO tree = BeanUtils.toBean(createReqVO, TreeDO.class); - if (!ObjectUtils.isEmpty(tree)) { - tree.imgToDomain(); - } - TreeDO treeDO = treeMapper.selectByTreeNumber(createReqVO.getTreenumber()); if (!ObjectUtils.isEmpty(treeDO)) { throw exception(TREE_NUMBER_EXISTS); @@ -109,6 +106,7 @@ public class TreeServiceImpl implements TreeService { @Override public void updateTree(TreeSaveReqVO updateReqVO) { + updateReqVO.imgToDomain(); // 校验存在 TreeDO dbTree = validateTreeExists(updateReqVO.getId()); if (!ObjectUtils.isEmpty(dbTree) && !dbTree.getTreenumber().equals(updateReqVO.getTreenumber())) { @@ -120,7 +118,6 @@ public class TreeServiceImpl implements TreeService { // 更新 TreeDO updateObj = BeanUtils.toBean(updateReqVO, TreeDO.class); - updateObj.imgToDomain(); if (ObjectUtils.isEmpty(updateReqVO.getStreet())) { Long road = updateReqVO.getRoad(); diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/treechangelog/TreeChangeLogServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/treechangelog/TreeChangeLogServiceImpl.java index 979d078..4cc8e57 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/treechangelog/TreeChangeLogServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/treechangelog/TreeChangeLogServiceImpl.java @@ -3,6 +3,7 @@ package com.zteits.urbanops.module.garden.service.treechangelog; import cn.hutool.core.collection.CollUtil; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; +import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.transaction.annotation.Transactional; @@ -74,7 +75,11 @@ public class TreeChangeLogServiceImpl implements TreeChangeLogService { @Override public TreeChangeLogDO getTreeChangeLog(Long id) { - return treeChangeLogMapper.selectById(id); + TreeChangeLogDO treeChangeLog = treeChangeLogMapper.selectById(id); + if (!ObjectUtils.isEmpty(treeChangeLog)) { + treeChangeLog.domainToImg(); + } + return treeChangeLog; } @Override diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApi.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApi.java index acdd493..840046d 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApi.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApi.java @@ -2,6 +2,7 @@ package com.zteits.urbanops.module.system.api.user; import com.zteits.urbanops.framework.common.util.collection.CollectionUtils; import com.zteits.urbanops.module.system.api.user.dto.AdminUserRespDTO; +import com.zteits.urbanops.module.system.controller.admin.user.vo.user.DictDataRespVO; import java.util.Collection; import java.util.Collections; @@ -86,4 +87,9 @@ public interface AdminUserApi { */ void validateUserList(Collection ids); + /** + * 获取登录人业务线列表 + * @return 业务线列表 + */ + List getLoginBusiLine(); } diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApiImpl.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApiImpl.java index 2d12c2b..5c7e35f 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApiImpl.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/user/AdminUserApiImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjUtil; import com.zteits.urbanops.framework.common.util.object.BeanUtils; import com.zteits.urbanops.framework.datapermission.core.util.DataPermissionUtils; import com.zteits.urbanops.module.system.api.user.dto.AdminUserRespDTO; +import com.zteits.urbanops.module.system.controller.admin.user.vo.user.DictDataRespVO; import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; import com.zteits.urbanops.module.system.dal.dataobject.user.AdminUserDO; import com.zteits.urbanops.module.system.service.dept.DeptService; @@ -83,4 +84,9 @@ public class AdminUserApiImpl implements AdminUserApi { userService.validateUserList(ids); } + @Override + public List getLoginBusiLine() { + return userService.getLoginBusiLine(); + } + }