diff --git a/config/application-local.yaml b/config/application-local.yaml new file mode 100644 index 0000000..20e1a36 --- /dev/null +++ b/config/application-local.yaml @@ -0,0 +1,17 @@ +# springdoc-openapi项目配置 +springdoc: + swagger-ui: + path: /swagger-ui.html + tags-sorter: alpha + operations-sorter: alpha + api-docs: + path: /v3/api-docs + group-configs: + - group: 'default' + paths-to-match: '/**' + packages-to-scan: com.zjyr.beidouservice +# knife4j的增强配置,不需要增强可以不配 +knife4j: + enable: true + setting: + language: zh_cn \ No newline at end of file diff --git a/pom.xml b/pom.xml index 5de64df..a102fa9 100644 --- a/pom.xml +++ b/pom.xml @@ -121,7 +121,12 @@ mapstruct 1.5.3.Final - + + com.github.xiaoymin + knife4j-openapi3-jakarta-spring-boot-starter + 4.3.0 + + diff --git a/src/main/java/com/zjyr/beidouservice/controller/DeviceController.java b/src/main/java/com/zjyr/beidouservice/controller/DeviceController.java index efd1366..b392202 100644 --- a/src/main/java/com/zjyr/beidouservice/controller/DeviceController.java +++ b/src/main/java/com/zjyr/beidouservice/controller/DeviceController.java @@ -6,6 +6,8 @@ import com.zjyr.beidouservice.pojo.dto.DeviceReqDTO; import com.zjyr.beidouservice.pojo.dto.DeviceRespDTO; import com.zjyr.beidouservice.pojo.dto.DeviceSearchDTO; import com.zjyr.beidouservice.service.DeviceService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -21,6 +23,7 @@ import java.util.List; @RequestMapping("/") @Validated @Slf4j +@Tag(name = "设备接口") public class DeviceController { @Resource @@ -31,6 +34,7 @@ public class DeviceController { * * @return 设备列表 */ + @Operation(summary = "获取设备位置信息") @PostMapping("device/location") public MyResp> getDeviceByLocation(@RequestBody DeviceReqDTO deviceReqDTO) { List deviceRespDTO = deviceService.getDeviceByLocation(deviceReqDTO); @@ -42,6 +46,7 @@ public class DeviceController { * * @return 设备 */ + @Operation(summary = "根据deviceId获取设备信息") @PostMapping("device/info/deviceId") public MyResp getDeviceByDeviceId(@RequestBody DeviceSearchDTO deviceSearchDTO) { DeviceRespDTO deviceRespDTO = deviceService.getDeviceByDeviceId(deviceSearchDTO); diff --git a/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java b/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java index 2c3ff37..ce0238d 100644 --- a/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java +++ b/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java @@ -8,6 +8,8 @@ import com.zjyr.beidouservice.pojo.dto.task.AlarmDeviceTaskListReqDTO; import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskListReqDTO; import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskReqDTO; import com.zjyr.beidouservice.service.AlarmTaskService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -21,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController; @RequestMapping("/") @Validated @Slf4j +@Tag(name = "告警任务接口") public class DeviceTaskController { @Resource @@ -32,16 +35,19 @@ public class DeviceTaskController { * @param alarmTaskReqDTO alarmTaskReqDTO * @return MyResp */ + @Operation(summary = "执行告警任务") @PostMapping("/alarm/task/exec") - public MyResp alarmTaskExec(@RequestBody AlarmTaskReqDTO alarmTaskReqDTO) { + public MyResp alarmTaskExec(@RequestBody AlarmTaskReqDTO alarmTaskReqDTO) { return alarmTaskService.alarmTaskExec(alarmTaskReqDTO); } + @Operation(summary = "获取设备告警任务信息") @PostMapping("/alarm/task/list") public MyResp alarmTaskList(@RequestBody AlarmTaskListReqDTO alarmTaskReqDTO) { return MyResp.success(alarmTaskService.alarmTaskList(alarmTaskReqDTO)); } + @Operation(summary = "获取设备告警任务详情") @PostMapping("/alarm/device/task/list") public MyResp alarmDeviceTaskList(@RequestBody AlarmDeviceTaskListReqDTO alarmDeviceTaskListReqDTO) { return MyResp.success(alarmTaskService.alarmDeviceTaskList(alarmDeviceTaskListReqDTO)); diff --git a/src/main/java/com/zjyr/beidouservice/controller/LocationController.java b/src/main/java/com/zjyr/beidouservice/controller/LocationController.java index 9311f1d..9c38409 100644 --- a/src/main/java/com/zjyr/beidouservice/controller/LocationController.java +++ b/src/main/java/com/zjyr/beidouservice/controller/LocationController.java @@ -3,10 +3,12 @@ package com.zjyr.beidouservice.controller; import com.zjyr.beidouservice.pojo.MyResp; import com.zjyr.beidouservice.pojo.dto.city.CityRespDTO; import com.zjyr.beidouservice.pojo.dto.city.CitySearchDTO; -import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceResp; +import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceSearchDTO; import com.zjyr.beidouservice.service.LocationService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -15,32 +17,38 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + @RestController @RequestMapping("/") @Validated @Slf4j +@Tag(name = "位置接口") public class LocationController { @Resource LocationService locationService; + @Operation(summary = "获取省份信息") @PostMapping("only/provinces") - public MyResp getOnlyProvinces() { - OnlyProvinceResp onlyProvinceResp = locationService.getOnlyProvinces(); + public MyResp> getOnlyProvinces() { + List onlyProvinceResp = locationService.getOnlyProvinces(); return MyResp.success(onlyProvinceResp); } + @Operation(summary = "获取省份及对应地市信息") @PostMapping("provinces") - public MyResp getProvinces(@RequestBody ProvinceSearchDTO provinceSearchDTO) { - ProvinceRespDTO provinceResp = locationService.getProvinces(provinceSearchDTO); + public MyResp> getProvinces(@RequestBody ProvinceSearchDTO provinceSearchDTO) { + List provinceResp = locationService.getProvinces(provinceSearchDTO); return MyResp.success(provinceResp); } + @Operation(summary = "获取省份地市及区域信息") @PostMapping("citys") - public MyResp getCity(@RequestBody CitySearchDTO citySearchDTO) { - CityRespDTO cityResp = locationService.getCity(citySearchDTO); + public MyResp> getCity(@RequestBody CitySearchDTO citySearchDTO) { + List cityResp = locationService.getCity(citySearchDTO); return MyResp.success(cityResp); } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/MyResp.java b/src/main/java/com/zjyr/beidouservice/pojo/MyResp.java index 7c3c426..fd7fc58 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/MyResp.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/MyResp.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -9,10 +10,24 @@ import lombok.NoArgsConstructor; @Data @NoArgsConstructor @AllArgsConstructor +@Schema(title = "响应") public class MyResp { - + /** + * code + */ + @Schema(title = "code", example = "0") private int code = Resp.SUCCESS.getCede(); + + /** + * msg + */ + @Schema(title = "msg", example = "成功") private String msg; + + /** + * 响应数据 + */ + @Schema(title = "data", example = "") private T data; public static MyResp build() { diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java index 558adea..82de699 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java @@ -1,8 +1,8 @@ package com.zjyr.beidouservice.pojo.dto; import com.fasterxml.jackson.annotation.JsonFormat; -import com.zjyr.beidouservice.pojo.dataobject.AlarmDeviceTaskDO; import com.zjyr.beidouservice.pojo.vo.PageInfoVO; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -15,34 +15,63 @@ import java.util.List; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(title = "任务详情信息响应体") public class AlarmDeviceTaskListRespDTO { - + /** + * 任务详情信息 + */ + @Schema(title = "任务详情信息") private List deviceList; + /** + * 分页信息 + */ + @Schema(title = "分页信息") private PageInfoVO pageInfo; @Data public static class AlarmDeviceTaskDTO { - + /** + * 任务id + */ + @Schema(title = "任务id", example = "10", description = "任务id") private Long taskId; + /** + * 设备id + */ + @Schema(title = "设备id", example = "123", description = "设备id") private Integer deviceId; + /** + * 终端名称 + */ + @Schema(title = "设备名称", example = "大运河002", description = "设备名称") private String deviceName; + /** + * 回示时间 + */ + @Schema(title = "回示时间", example = "2023-08-26 21:00:05", description = "回示时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date reportTime; + /** + * 任务状态 + */ + @Schema(title = "任务状态", example = "0", description = "0:成功 1:错误 2:超时,相当于未响应 4:执行中") private Integer taskState; /** * 经度 */ + @Schema(title = "设备经度", example = "372.12", description = "经度") private Float latitude; /** * 纬度 */ + @Schema(title = "设备维度", example = "37.90", description = "纬度") private Float longitude; } } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java index 7122b81..ede82fa 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java @@ -2,6 +2,7 @@ package com.zjyr.beidouservice.pojo.dto; import com.fasterxml.jackson.annotation.JsonFormat; import com.zjyr.beidouservice.pojo.vo.PageInfoVO; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -14,29 +15,64 @@ import java.util.List; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(title = "任务信息响应体") public class AlarmTaskListRespDTO { - + /** + * 任务信息 + */ + @Schema(title = "任务信息") private List taskList; + /** + * 分页信息 + */ + @Schema(title = "分页信息") private PageInfoVO pageInfo; @Data @Builder public static class AlarmTaskRespDTO { - + /** + * 任务id + */ + @Schema(title = "任务id", example = "10") private Long id; + /** + * 任务编号 + */ + @Schema(title = "任务编号", example = "JL202308250020",description = "记录编号") private String taskIdStr; + /** + * 记录时间 + */ + @Schema(title = "记录时间", example = "2023-08-26 21:00:05",description = "记录时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date recodeTime; + /** + * 执行设备数量 + */ + @Schema(title = "执行设备数量", example = "21", description = "该值还为大屏警报总数值") private Integer deviceNum; + /** + * 设备正常个数 + */ + @Schema(title = "设备正常个数", example = "2", description = "设备正常包括响应成功和响应失败") private Integer execNormalNum; + /** + * 设备异常个数 + */ + @Schema(title = "设备异常个数", example = "2", description = "设备正常为响应超时。正常+异常不一定等于总数量,还有执行中的任务") private Integer execAbnormalNum; + /** + * 回示率 + */ + @Schema(title = "回示率", example = "88.8", description = "设备正常个数/设备总数量") private Double respRate; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceReqDTO.java index 28d5fe7..9e61be8 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceReqDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceReqDTO.java @@ -1,6 +1,7 @@ package com.zjyr.beidouservice.pojo.dto; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -10,24 +11,29 @@ import lombok.NoArgsConstructor; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(title = "终端请求体") public class DeviceReqDTO { /** * 终端名称 */ + @Schema(title = "终端名称", example = "小河直街001号", description = "该值为null查询所有") private String deviceName; /** * 所属区县 */ + @Schema(title = "区县代码", example = "11", description = "该值为null查询所有区域") private Integer countyCode; /** * 所属地市 */ + @Schema(title = "地市代码", example = "20", description = "该值为null查询所有地市") private Integer cityCode; /** * 所属省份 */ + @Schema(title = "省份代码", example = "1", description = "该值为null查询所有省份") private Integer provinceCode; diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceRespDTO.java index 9eea2f5..635e0de 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceRespDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceRespDTO.java @@ -3,6 +3,7 @@ package com.zjyr.beidouservice.pojo.dto; import com.zjyr.beidouservice.constenum.DeviceAlarmStatusEnum; import com.zjyr.beidouservice.pojo.dataobject.DeviceDO; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -12,50 +13,60 @@ import lombok.NoArgsConstructor; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(name = "设备请求返回体") public class DeviceRespDTO { /** * 设备id */ + @Schema(title = "设备id", example = "123") private Integer deviceId; /** * 终端名称 */ + @Schema(title = "设备名称", example = "大运河002") private String deviceName; /** * 经度 */ + @Schema(title = "设备经度", example = "372.12") private Float latitude; /** * 纬度 */ + @Schema(title = "设备维度", example = "37.90") private Float longitude; /** * 所属区县 */ + @Schema(title = "区县代码", example = "90") private Integer countyCode; /** * 所属地市 */ + @Schema(title = "所属地市", example = "1") private Integer cityCode; /** * 所属省份 */ + @Schema(title = "所属省份", example = "33") private Integer provinceCode; /** * 安装地址 */ + @Schema(title = "安装地址", example = "余杭区五常街道") private String installSite; /** * 是否告警中 */ + @Schema(title = "是否告警中", example = "false", description = "false为非告警中,true为告警中") private Boolean isAlarming; public static DeviceRespDTO fromDO(DeviceDO deviceDO) { diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java index c750a5b..fa029a9 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo.dto; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -9,9 +10,11 @@ import lombok.NoArgsConstructor; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(title = "设备查询请求体") public class DeviceSearchDTO { /** * 设备id */ + @Schema(title = "设备ID", example = "1") private Integer deviceId; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityCountyDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityCountyDTO.java deleted file mode 100644 index 0b1cf75..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityCountyDTO.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto.city; - -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - - -@Data -@NoArgsConstructor -public class CityCountyDTO { - private Integer provinceCode; - - private String cityName; - - private Integer cityCode; - - List countyList; -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityRespDTO.java index be3cbb0..eba76ca 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityRespDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CityRespDTO.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo.dto.city; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.NoArgsConstructor; @@ -7,7 +8,30 @@ import java.util.List; @Data @NoArgsConstructor +@Schema(name = "省份地市区域请求返回体") public class CityRespDTO { - List cityList; + /** + * 所属省份编码 + */ + @Schema(title = "所属省份编码", example = "33") + private Integer provinceCode; + + /** + * 所属地市名称 + */ + @Schema(title = "所属地市名称", example = "杭州市") + private String cityName; + + /** + * 所属地市编码 + */ + @Schema(title = "所属地市编码", example = "1") + private Integer cityCode; + + /** + * 地市对应区域信息 + */ + @Schema(title = "所属地市对应区域信息") + List countyList; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CitySearchDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CitySearchDTO.java index 809350e..72a8f20 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CitySearchDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CitySearchDTO.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo.dto.city; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -9,8 +10,17 @@ import java.io.Serializable; @Data @NoArgsConstructor @AllArgsConstructor +@Schema(name = "省份地市请求体") public class CitySearchDTO implements Serializable { + /** + * 所属省份编码 + */ + @Schema(title = "所属省份编码", example = "33",description = "provinceCode为null,查询所有省份信息" ) private Integer provinceCode; + /** + * 所属地市编码 + */ + @Schema(title = "所属地市编码", example = "33",description = "cityCode为null,查询所有地市信息" ) private Integer cityCode; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CountyContent.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CountyContent.java index 3b0ab2d..58cf310 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CountyContent.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/city/CountyContent.java @@ -1,12 +1,22 @@ package com.zjyr.beidouservice.pojo.dto.city; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructor +@Schema(name = "地市对应区域请求返回体") public class CountyContent { + /** + * 所属区域名称 + */ + @Schema(title = "所属区域名称", example = "余杭区") private String countyName; + /** + * 所属区域编码 + */ + @Schema(title = "所属区域编码", example = "1") private Integer countyCode; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/CityContentDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/CityContentDTO.java index ea14ea3..33353eb 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/CityContentDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/CityContentDTO.java @@ -1,14 +1,24 @@ package com.zjyr.beidouservice.pojo.dto.province; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructor +@Schema(name = "省份对应地市请求返回体") public class CityContentDTO { + /** + * 所属地市名称 + */ + @Schema(title = "所属地市名称", example = "杭州市") private String cityName; + /** + * 所属省份编码 + */ + @Schema(title = "所属地市编码", example = "1") private Integer cityCode; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceContentDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceContentDTO.java deleted file mode 100644 index 8805d33..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceContentDTO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto.province; - -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@NoArgsConstructor -public class OnlyProvinceContentDTO { - private String provinceName; - - private Integer provinceCode; -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceResp.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceResp.java deleted file mode 100644 index d983be6..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceResp.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto.province; - -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -@Data -@NoArgsConstructor -public class OnlyProvinceResp { - List onlyProvinceList; -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceRespDTO.java new file mode 100644 index 0000000..5a82ef1 --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/OnlyProvinceRespDTO.java @@ -0,0 +1,22 @@ +package com.zjyr.beidouservice.pojo.dto.province; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@Schema(name = "省份请求返回体") +public class OnlyProvinceRespDTO { + /** + * 所属省份名称 + */ + @Schema(title = "所属省份名称", example = "浙江省") + private String provinceName; + + /** + * 所属省份编码 + */ + @Schema(title = "所属省份编码", example = "33") + private Integer provinceCode; +} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceContent.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceContent.java deleted file mode 100644 index 0cd21b6..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceContent.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto.province; - -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -@Data -@NoArgsConstructor -public class ProvinceContent { - private String provinceName; - - private Integer provinceCode; - - private List cityList; -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceRespDTO.java index 34f8ced..767561f 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceRespDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceRespDTO.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo.dto.province; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.NoArgsConstructor; @@ -7,6 +8,23 @@ import java.util.List; @Data @NoArgsConstructor +@Schema(name = "省份地市请求返回体") public class ProvinceRespDTO { - List provinceList; + /** + * 所属省份名称 + */ + @Schema(title = "所属省份名称", example = "浙江省") + private String provinceName; + + /** + * 所属省份编码 + */ + @Schema(title = "所属省份编码", example = "33") + private Integer provinceCode; + + /** + * 省份对应地市信息 + */ + @Schema(title = "所属省份对应地市信息") + private List cityList; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceSearchDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceSearchDTO.java index 1f8348b..881399d 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceSearchDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/province/ProvinceSearchDTO.java @@ -1,5 +1,6 @@ package com.zjyr.beidouservice.pojo.dto.province; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -9,7 +10,11 @@ import java.io.Serializable; @Data @NoArgsConstructor @AllArgsConstructor +@Schema(name = "省份请求体") public class ProvinceSearchDTO implements Serializable { - + /** + * 所属省份编码 + */ + @Schema(title = "所属省份编码", example = "33",description = "provinceCode为null,查询所有省份信息" ) private Integer provinceCode; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java index 8e46acf..7949d59 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java @@ -1,15 +1,29 @@ package com.zjyr.beidouservice.pojo.dto.task; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.List; @Data +@Schema(title = "任务详情请求体") public class AlarmDeviceTaskListReqDTO { + /** + * 每页展示数量 + */ + @Schema(title = "每页展示数量", example = "10") private Integer pageSize; + /** + * 查询页数 + */ + @Schema(title = "查询页数", example = "1") private Integer pageNum; + /** + * 任务编号数组 + */ + @Schema(title = "任务编号", example = "[\"JL202308250020\"]", description = "任务编号可以携带多个。该值为null时查询所有任务信息") private List taskIdStrList; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java index b5bd1a2..e4f6969 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java @@ -1,15 +1,28 @@ package com.zjyr.beidouservice.pojo.dto.task; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.List; @Data +@Schema(title = "任务信息请求体") public class AlarmTaskListReqDTO { - + /** + * 每页展示数量 + */ + @Schema(title = "每页展示数量", example = "10") private Integer pageSize; + /** + * 查询页数 + */ + @Schema(title = "查询页数", example = "1") private Integer pageNum; + /** + * 任务编号数组 + */ + @Schema(title = "任务编号", example = "[\"JL202308250020\"]", description = "任务编号可以携带多个。该值为null时查询所有任务信息") private List taskIdStrList; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskReqDTO.java index 25f367b..85efda6 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskReqDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskReqDTO.java @@ -1,6 +1,7 @@ package com.zjyr.beidouservice.pojo.dto.task; import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -12,53 +13,64 @@ import java.util.Date; @Builder @NoArgsConstructor @AllArgsConstructor +@Schema(title = "任务执行请求体") public class AlarmTaskReqDTO { /** * 省份,默认浙江省 33. */ + @Schema(title = "所属省份编码", example = "33", description = "默认浙江省") private String provinceCode; /** * 地市,默认杭州市 1. */ + @Schema(title = "所属地市编码", example = "1",description = "默认杭州市,选择杭州市所有设备则该值不为null") private String cityCode; /** * 所属区域 */ + @Schema(title = "所属区域编码", example = "1",description = "多个区域用逗号分隔,如1,2,3,选择区域所有设备则该值不为null") private String countyCode; /** * 设备id.包含多个设备信息 */ + @Schema(title = "所属区域编码", example = "1,2,3",description = "多个设备Id用逗号分隔,如1,2,3,选择指定设备则该值不为null") private String deviceIds; /** * 警报类型 1:语言广播 2:警报发送 3:警报试鸣,默认警报发送2 */ + @Schema(title = "警报类型", example = "2",description = "1:语言广播 2:警报发送 3:警报试鸣,默认警报发送2") private Integer alarmType; /** * 警报种类 1:预先警报 2:空袭警报 3:灾情警 4:解除警报灾 5:解除警报 */ + @Schema(title = "警报种类", example = "2",description = "1:预先警报 2:空袭警报 3:灾情警 4:解除警报灾 5:解除警报") private Integer alarmKind; /** * 警报方式 1:人工 2:定时,默认人工 */ + @Schema(title = "警报方式", example = "1",description = "警报方式 1:人工 2:定时,默认人工") private Integer alarmMode; /** * 控制通道。1:无线 2:北斗 4:电话 7:all */ + @Schema(title = "控制通道", example = "2",description = "1:无线 2:北斗 4:电话 7:all,默认北斗") private Integer controlChannel; /** * 发放时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8") + @Schema(title = "发放时间", example = "2023-08-26 9:57:00") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date sendTime; /** * 发放人 */ + @Schema(title = "发放人", example = "admin",description = "默认admin") private String sender; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java b/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java index 19b1ee2..3670216 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java @@ -1,14 +1,27 @@ package com.zjyr.beidouservice.pojo.vo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Data +@Schema(title = "分页信息响应体") public class PageInfoVO { - + /** + * 总数 + */ + @Schema(title = "总数", example = "12") private Long total; + /** + * 每页展示数量 + */ + @Schema(title = "每页展示数量", example = "10") private Integer pageSize; + /** + * 查询页数 + */ + @Schema(title = "查询页数", example = "1") private Integer pageNum; public PageInfoVO(Long total, Integer pageSize, Integer pageNum) { diff --git a/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java b/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java index bb56fd8..b643605 100644 --- a/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java +++ b/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java @@ -15,7 +15,7 @@ public interface AlarmTaskService { * @param alarmTaskReqDTO alarmTaskReqDTO * @return MyResp */ - MyResp alarmTaskExec(AlarmTaskReqDTO alarmTaskReqDTO); + MyResp alarmTaskExec(AlarmTaskReqDTO alarmTaskReqDTO); AlarmTaskListRespDTO alarmTaskList(AlarmTaskListReqDTO alarmTaskReqDTO); diff --git a/src/main/java/com/zjyr/beidouservice/service/LocationService.java b/src/main/java/com/zjyr/beidouservice/service/LocationService.java index 8fadf04..465fdad 100644 --- a/src/main/java/com/zjyr/beidouservice/service/LocationService.java +++ b/src/main/java/com/zjyr/beidouservice/service/LocationService.java @@ -2,16 +2,18 @@ package com.zjyr.beidouservice.service; import com.zjyr.beidouservice.pojo.dto.city.CityRespDTO; import com.zjyr.beidouservice.pojo.dto.city.CitySearchDTO; -import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceResp; +import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceSearchDTO; +import java.util.List; + public interface LocationService { - OnlyProvinceResp getOnlyProvinces(); + List getOnlyProvinces(); - ProvinceRespDTO getProvinces(ProvinceSearchDTO provinceSearchDTO); + List getProvinces(ProvinceSearchDTO provinceSearchDTO); - CityRespDTO getCity(CitySearchDTO citySearchDTO); + List getCity(CitySearchDTO citySearchDTO); } diff --git a/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java b/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java index 71a7456..7132097 100644 --- a/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java +++ b/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java @@ -99,7 +99,7 @@ public class AlarmTaskServiceImpl implements AlarmTaskService { .approvalStatus(ApprovalStatusEnum.APPROVAL_SUCCESS.getCode()).build(); //入库 - Long generatedId = alarmTaskMapper.addAlarmTask(alarmTaskDO); + Long generatedId = alarmTaskMapper.addAlarmTask(alarmTaskDO); List alarmDeviceTaskDOS = getAlarmDeviceTaskDOS(alarmTaskReqDTO, deviceInfo, generatedId); alarmDeviceTaskMapper.addAlarmDevTaskInfoList(alarmDeviceTaskDOS); @@ -118,7 +118,7 @@ public class AlarmTaskServiceImpl implements AlarmTaskService { deviceInfo.getDeviceIds() ); - return MyResp.build(); + return MyResp.success("执行任务成功"); } diff --git a/src/main/java/com/zjyr/beidouservice/service/impl/LocationServiceImpl.java b/src/main/java/com/zjyr/beidouservice/service/impl/LocationServiceImpl.java index 62cd863..a7cb90a 100644 --- a/src/main/java/com/zjyr/beidouservice/service/impl/LocationServiceImpl.java +++ b/src/main/java/com/zjyr/beidouservice/service/impl/LocationServiceImpl.java @@ -6,14 +6,11 @@ import com.zjyr.beidouservice.mapper.LocProvinceMapper; import com.zjyr.beidouservice.pojo.dataobject.LocCityDO; import com.zjyr.beidouservice.pojo.dataobject.LocCountyDO; import com.zjyr.beidouservice.pojo.dataobject.LocProvinceDO; -import com.zjyr.beidouservice.pojo.dto.city.CityCountyDTO; import com.zjyr.beidouservice.pojo.dto.city.CityRespDTO; import com.zjyr.beidouservice.pojo.dto.city.CitySearchDTO; import com.zjyr.beidouservice.pojo.dto.city.CountyContent; import com.zjyr.beidouservice.pojo.dto.province.CityContentDTO; -import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceContentDTO; -import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceResp; -import com.zjyr.beidouservice.pojo.dto.province.ProvinceContent; +import com.zjyr.beidouservice.pojo.dto.province.OnlyProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceRespDTO; import com.zjyr.beidouservice.pojo.dto.province.ProvinceSearchDTO; import com.zjyr.beidouservice.service.LocationService; @@ -37,46 +34,43 @@ public class LocationServiceImpl implements LocationService { LocCountyMapper locCountyMapper; @Override - public OnlyProvinceResp getOnlyProvinces() { - OnlyProvinceResp onlyProvinceResp = new OnlyProvinceResp(); - List onlyProvinceList = new ArrayList<>(); + public List getOnlyProvinces() { + List onlyProvinceList = new ArrayList<>(); //获取省份信息 List provinceDOS = locProvinceMapper.selectAllProvince(); if (provinceDOS.isEmpty()) { log.warn("不存在省份信息"); - return new OnlyProvinceResp(); + return new ArrayList<>(); } provinceDOS.forEach(province -> { - OnlyProvinceContentDTO onlyProvinceContent = new OnlyProvinceContentDTO(); + OnlyProvinceRespDTO onlyProvinceContent = new OnlyProvinceRespDTO(); onlyProvinceContent.setProvinceName(province.getProvinceName()); onlyProvinceContent.setProvinceCode(province.getProvinceCode()); onlyProvinceList.add(onlyProvinceContent); }); - onlyProvinceResp.setOnlyProvinceList(onlyProvinceList); - return onlyProvinceResp; + return onlyProvinceList; } @Override - public ProvinceRespDTO getProvinces(ProvinceSearchDTO provinceSearchDTO) { - ProvinceRespDTO provinceResp = new ProvinceRespDTO(); - List provinceContents = new ArrayList<>(); + public List getProvinces(ProvinceSearchDTO provinceSearchDTO) { + List provinceRespqDTOS = new ArrayList<>(); //获取省份信息 Integer provinceCode = provinceSearchDTO.getProvinceCode(); List provinceDOS = locProvinceMapper.selectProvince(provinceCode); if (provinceDOS.isEmpty()) { log.warn("不存在省份信息"); - return new ProvinceRespDTO(); + return new ArrayList<>(); } provinceDOS.forEach(province -> { - ProvinceContent provinceContent = new ProvinceContent(); - provinceContent.setProvinceName(province.getProvinceName()); - provinceContent.setProvinceCode(province.getProvinceCode()); + ProvinceRespDTO provinceRespDTO = new ProvinceRespDTO(); + provinceRespDTO.setProvinceName(province.getProvinceName()); + provinceRespDTO.setProvinceCode(province.getProvinceCode()); //根据省份查询对应的地市信息 List cityContentDTOList = new ArrayList<>(); @@ -88,20 +82,18 @@ public class LocationServiceImpl implements LocationService { cityContentDTOList.add(cityContent); }); - provinceContent.setCityList(cityContentDTOList); - provinceContents.add(provinceContent); + provinceRespDTO.setCityList(cityContentDTOList); + provinceRespqDTOS.add(provinceRespDTO); }); - provinceResp.setProvinceList(provinceContents); - return provinceResp; + return provinceRespqDTOS; } @Override - public CityRespDTO getCity(CitySearchDTO citySearchDTO) { - CityRespDTO cityResp = new CityRespDTO(); - List cityContents = new ArrayList<>(); + public List getCity(CitySearchDTO citySearchDTO) { + List cityContents = new ArrayList<>(); //获取地市信息 Integer provinceCode = citySearchDTO.getProvinceCode(); @@ -109,14 +101,14 @@ public class LocationServiceImpl implements LocationService { List cityDOS = locCityMapper.selectCity(provinceCode, cityCode); if (cityDOS.isEmpty()) { log.warn("不存在地市信息"); - return new CityRespDTO(); + return new ArrayList<>(); } cityDOS.forEach(city -> { - CityCountyDTO cityContent = new CityCountyDTO(); - cityContent.setProvinceCode(city.getProvinceCode()); - cityContent.setCityName(city.getCityName()); - cityContent.setCityCode(city.getCityCode()); + CityRespDTO cityRespDTO = new CityRespDTO(); + cityRespDTO.setProvinceCode(city.getProvinceCode()); + cityRespDTO.setCityName(city.getCityName()); + cityRespDTO.setCityCode(city.getCityCode()); //根据地市查询对应的区信息 List countyContentList = new ArrayList<>(); @@ -128,13 +120,12 @@ public class LocationServiceImpl implements LocationService { countyContentList.add(countyContent); }); - cityContent.setCountyList(countyContentList); - cityContents.add(cityContent); + cityRespDTO.setCountyList(countyContentList); + cityContents.add(cityRespDTO); }); - cityResp.setCityList(cityContents); - return cityResp; + return cityContents; } } diff --git a/src/main/resources/mappers/AlarmTaskMapper.xml b/src/main/resources/mappers/AlarmTaskMapper.xml index fcf627a..43b3623 100644 --- a/src/main/resources/mappers/AlarmTaskMapper.xml +++ b/src/main/resources/mappers/AlarmTaskMapper.xml @@ -19,7 +19,7 @@ insert into alarm_task - task_id_str, + task_id_str, alarm_type, alarm_kind, alarm_county, @@ -31,7 +31,7 @@ approval_status, - #{taskId}, + #{taskIdStr}, #{alarmType}, #{alarmKind}, #{alarmCounty},