From 1b97ca6145d599515fc4748f9126f1f6c9503ce4 Mon Sep 17 00:00:00 2001 From: liyanqi <15181887205@163.com> Date: 星期四, 27 十月 2022 11:18:01 +0800 Subject: [PATCH] 驾驶舱数据接口以及假数据的编写 --- ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java | 141 +++++++++++ ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java | 100 ++++++++ ycl-common/src/main/java/com/ycl/vo/cockpit/CockpitVO.java | 42 +++ ycl-platform/src/main/java/com/ycl/controller/cockpit/statisticsEvents/StatisticsEventsController.java | 103 ++++++++ ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java | 105 ++++++++ ycl-platform/src/main/java/com/ycl/vo/cockpit/statisticsEvents/StatisticsEventsVO.java | 93 +++++++ ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java | 93 +++++++ 7 files changed, 677 insertions(+), 0 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/vo/cockpit/CockpitVO.java b/ycl-common/src/main/java/com/ycl/vo/cockpit/CockpitVO.java new file mode 100644 index 0000000..4007cdd --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/vo/cockpit/CockpitVO.java @@ -0,0 +1,42 @@ +package com.ycl.vo.cockpit; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +public class CockpitVO { + @Data + @ApiModel + public static class Params1VO { + @ApiModelProperty(value = "appId", example = "1") + @NotBlank(message = "appId涓嶈兘涓虹┖") + private String appId; + @ApiModelProperty(value = "appKey", example = "1") + @NotBlank(message = "appKey涓嶈兘涓虹┖") + private String appKey; + private String sign; + } + + @Data + @ApiModel + public static class Params2VO { + @ApiModelProperty(value = "appId", example = "1") + @NotBlank(message = "appId涓嶈兘涓虹┖") + private String appId; + @ApiModelProperty(value = "appKey", example = "1") + @NotBlank(message = "appKey涓嶈兘涓虹┖") + private String appKey; + private String sign; + @ApiModelProperty(value = "寮�濮嬫椂闂达紝鏍煎紡yyyy-MM-dd hh:mm:ss") + private String beginTime; + @ApiModelProperty(value = "缁撴潫鏃堕棿锛屾牸寮弝yyy-MM-dd hh:mm:ss") + private String endTime; + } +} diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java new file mode 100644 index 0000000..313cac6 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java @@ -0,0 +1,105 @@ +package com.ycl.controller.cockpit.aiIot; + +import com.ycl.api.CommonResult; +import com.ycl.vo.cockpit.CockpitVO; +import com.ycl.vo.cockpit.aiIot.AIIotVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.ArrayList; +import java.util.List; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@Api(tags = "椹鹃┒鑸辨暟鎹帴鍙�-AI鐗╄仈") +@RestController +@RequestMapping("/api/lot") +public class AIIotController { + + @ApiOperation(value = "鐩戞祴鏁版嵁") + @GetMapping("/detection") + public CommonResult<AIIotVO.DetectionVO> detection(@Validated CockpitVO.Params1VO params) { + AIIotVO.DetectionVO detectionVO = new AIIotVO.DetectionVO(); + detectionVO.setVideo(121); + detectionVO.setIndividual(20); + detectionVO.setLampblack(154); + detectionVO.setLoudspeaker(30); + detectionVO.setSlagCar(33); + return CommonResult.success(detectionVO); + } + + @ApiOperation(value = "瀹炴椂瑙嗛鐩戞帶") + @GetMapping("/video") + public CommonResult<List<AIIotVO.VideoVO>> video(@Validated CockpitVO.Params1VO params) { + List<AIIotVO.VideoVO> videoVOS = new ArrayList<>(); + AIIotVO.VideoVO a = null; + for (int i = 0; i < 4; i++) { + a = new AIIotVO.VideoVO(); + a.setLongitude("32.11"); + a.setLatitude("106.111"); + a.setName("璁惧涓�"); + a.setResourceId("012"); + a.setBrand("澶у崕"); + a.setModel("鐞冩満"); + a.setIp("10.23.14.2"); + a.setUrl("http://10.23.14.2:12001"); + videoVOS.add(a); + } + return CommonResult.success(videoVOS); + } + + @ApiOperation(value = "AI绠楁硶鏁堣兘") + @GetMapping("/efficiency") + public CommonResult<List<AIIotVO.EfficiencyVO>> efficiency(@Validated CockpitVO.Params2VO params) { + List<AIIotVO.EfficiencyVO> efficiencyVOS = new ArrayList<>(); + AIIotVO.EfficiencyVO a = null; + for (int i = 0; i < 4; i++) { + a = new AIIotVO.EfficiencyVO(); + a.setType("閬撹矾鐮存崯"); + a.setCount(12); + a.setRatio(new BigDecimal("0.63").setScale(2, RoundingMode.HALF_UP)); + efficiencyVOS.add(a); + } + return CommonResult.success(efficiencyVOS); + } + + @ApiOperation(value = "娓e湡鑱斿姩") + @GetMapping("/slag_car") + public CommonResult<AIIotVO.SlagCarVO> slagCar(@Validated CockpitVO.Params1VO params) { + AIIotVO.SlagCarVO slagCarVO = new AIIotVO.SlagCarVO(); + slagCarVO.setCar(236); + slagCarVO.setTeam(20); + return CommonResult.success(slagCarVO); + } + + @ApiOperation(value = "AI浜嬩欢缁熻") + @GetMapping("/event_statistics") + public CommonResult<List<AIIotVO.StatisticsVO>> statistics(@Validated CockpitVO.Params2VO params) { + List<AIIotVO.StatisticsVO> statisticsVOS = new ArrayList<>(); + List<AIIotVO.Statistics1VO> statistics1VOS = new ArrayList<>(); + AIIotVO.StatisticsVO a = null; + AIIotVO.Statistics1VO a1 = null; + for (int i = 0; i < 4; i++) { + a = new AIIotVO.StatisticsVO(); + a1 = new AIIotVO.Statistics1VO(); + a.setType("閬撹矾鐮存崯"); + a1.setCount(12); + a1.setMonth("2022-10"); + statistics1VOS.add(a1); + a.setRecords(statistics1VOS); + statisticsVOS.add(a); + } + return CommonResult.success(statisticsVOS); + } + + +} diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java new file mode 100644 index 0000000..343aa77 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java @@ -0,0 +1,141 @@ +package com.ycl.controller.cockpit.enforcementEvents; + +import com.ycl.api.CommonResult; +import com.ycl.vo.cockpit.CockpitVO; +import com.ycl.vo.cockpit.enforcementEvents.EnforcementEventsVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@Api(tags = "椹鹃┒鑸辨暟鎹�-鎵ф硶浜嬩欢") +@RestController +@RequestMapping("/api/event") +public class EnforcementEventsController { + @ApiOperation(value = "鎵ф硶浜嬩欢缁熻") + @GetMapping("/statistics") + public CommonResult<Map<String, Object>> statistics(@Validated CockpitVO.Params2VO params) { + Map<String, Object> map = new HashMap<>(); + EnforcementEventsVO.StatisticsEventVO eventVO = new EnforcementEventsVO.StatisticsEventVO(); + eventVO.setCount(10); + eventVO.setRatio(new BigDecimal("0.69").setScale(2, RoundingMode.HALF_UP)); + map.put("reported", eventVO); + map.put("disposition", eventVO); + map.put("dispositionInTime",eventVO); + map.put("register", eventVO); + return CommonResult.success(map); + } + + @ApiOperation(value = "浜嬩欢绫诲瀷") + @GetMapping("/type") + public CommonResult<EnforcementEventsVO.TypeAndSourceVO> type(@Validated CockpitVO.Params2VO params) { + List<EnforcementEventsVO.TypeAndSourceVO1> typeVO1s = new ArrayList<>(); + EnforcementEventsVO.TypeAndSourceVO typeVO = new EnforcementEventsVO.TypeAndSourceVO(); + EnforcementEventsVO.TypeAndSourceVO1 typeVO1 = null; + for (int i = 0; i < 4; i++) { + typeVO1 = new EnforcementEventsVO.TypeAndSourceVO1(); + typeVO1.setName("鍥㈢粨灞�"); + typeVO1.setCount(20); + typeVO1.setRatio(new BigDecimal("0.69").setScale(2, RoundingMode.HALF_UP)); + typeVO1s.add(typeVO1); + } + typeVO.setAll(100); + typeVO.setRecords(typeVO1s); + return CommonResult.success(typeVO); + } + + @ApiOperation(value = "瑙嗛鎶撴媿鍛婂彂鐐逛綅") + @GetMapping("/video") + public CommonResult<List<EnforcementEventsVO.VideoAndAreaVO>> video(@Validated CockpitVO.Params2VO params) { + List<EnforcementEventsVO.VideoAndAreaVO> videoVOS = new ArrayList<>(); + EnforcementEventsVO.VideoAndAreaVO videoVO = null; + for (int i = 0; i < 4; i++) { + videoVO = new EnforcementEventsVO.VideoAndAreaVO(); + videoVO.setName("鍥㈢粨灞�"); + videoVO.setCount(10); + videoVOS.add(videoVO); + } + return CommonResult.success(videoVOS); + } + + @ApiOperation(value = "浜嬩欢鏉ユ簮") + @GetMapping("/source") + public CommonResult<EnforcementEventsVO.TypeAndSourceVO> source(@Validated CockpitVO.Params2VO params) { + List<EnforcementEventsVO.TypeAndSourceVO1> typeVO1s = new ArrayList<>(); + EnforcementEventsVO.TypeAndSourceVO typeVO = new EnforcementEventsVO.TypeAndSourceVO(); + EnforcementEventsVO.TypeAndSourceVO1 typeVO1 = null; + for (int i = 0; i < 4; i++) { + typeVO1 = new EnforcementEventsVO.TypeAndSourceVO1(); + typeVO1.setName("鍥㈢粨灞�"); + typeVO1.setCount(20); + typeVO1.setRatio(new BigDecimal("0.69").setScale(2, RoundingMode.HALF_UP)); + typeVO1s.add(typeVO1); + } + typeVO.setAll(100); + typeVO.setRecords(typeVO1s); + return CommonResult.success(typeVO); + } + + @ApiOperation(value = "浜嬩欢鍖哄煙缁熻") + @GetMapping("/area") + public CommonResult<List<EnforcementEventsVO.VideoAndAreaVO>> area(@Validated CockpitVO.Params2VO params) { + List<EnforcementEventsVO.VideoAndAreaVO> videoVOS = new ArrayList<>(); + EnforcementEventsVO.VideoAndAreaVO videoVO = null; + for (int i = 0; i < 4; i++) { + videoVO = new EnforcementEventsVO.VideoAndAreaVO(); + videoVO.setName("鍥㈢粨灞�"); + videoVO.setCount(10); + videoVOS.add(videoVO); + } + return CommonResult.success(videoVOS); + } + + @ApiOperation(value = "寤惰浜嬩欢") + @GetMapping("/delay") + public CommonResult<List<EnforcementEventsVO.DelayVO>> delay(@Validated CockpitVO.Params2VO params) { + List<EnforcementEventsVO.DelayVO> delayVOS = new ArrayList<>(); + EnforcementEventsVO.DelayVO delayVO = null; + for (int i = 0; i < 4; i++) { + delayVO = new EnforcementEventsVO.DelayVO(); + delayVO.setCode("201245555555"); + delayVO.setDescription("鍥㈢粨灞�"); + delayVO.setDuration(30); + delayVOS.add(delayVO); + } + return CommonResult.success(delayVOS); + } + + @ApiOperation(value = "浜嬩欢淇℃伅") + @GetMapping("/info") + public CommonResult<EnforcementEventsVO.InfoVO> info(@Validated CockpitVO.Params2VO params) { + EnforcementEventsVO.InfoVO infoVO = new EnforcementEventsVO.InfoVO(); + EnforcementEventsVO.EventVO eventVO = new EnforcementEventsVO.EventVO(); + infoVO.setToday(5); + infoVO.setWeek(10); + infoVO.setDispatch(20); + infoVO.setIdentification(20); + eventVO.setDescription("浜嬩欢鎻忚堪"); + eventVO.setAddress("浜嬪彂鍦板潃"); + eventVO.setAlarmTime("2022-10-15 16:12:13"); + eventVO.setPoint("1鍙风偣浣�"); + eventVO.setPicture("http://12.2.23.4/xx.png"); + eventVO.setSource("AI璇嗗埆"); + infoVO.setEvent(eventVO); + return CommonResult.success(infoVO); + } + +} diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/statisticsEvents/StatisticsEventsController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/statisticsEvents/StatisticsEventsController.java new file mode 100644 index 0000000..5c5ce45 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/statisticsEvents/StatisticsEventsController.java @@ -0,0 +1,103 @@ +package com.ycl.controller.cockpit.statisticsEvents; + +import com.ycl.api.CommonResult; +import com.ycl.vo.cockpit.CockpitVO; +import com.ycl.vo.cockpit.statisticsEvents.StatisticsEventsVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.ArrayList; +import java.util.List; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@Api(tags = "椹鹃┒鑸辨暟鎹帴鍙�-缁煎悎鍐崇瓥") +@RestController +@RequestMapping("/api/data") +public class StatisticsEventsController { + + @ApiOperation(value = "鎵ф硶浜嬩欢") + @GetMapping("/law_enforcement_event") + public CommonResult<List<StatisticsEventsVO.LawEnforcementEventVO>> detection(@Validated CockpitVO.Params2VO params) { + List<StatisticsEventsVO.LawEnforcementEventVO> lawEnforcementEventVOS = new ArrayList<>(); + StatisticsEventsVO.LawEnforcementEventVO a = null; + for (int i = 0; i < 4; i++) { + a = new StatisticsEventsVO.LawEnforcementEventVO(); + a.setName("鍥㈢粨灞�"); + a.setMonth("10"); + a.setCityManagementCount(10); + a.setEnforcementEventCount(10); + lawEnforcementEventVOS.add(a); + } + return CommonResult.success(lawEnforcementEventVOS); + } + + @ApiOperation(value = "鐗╄仈鎰熺煡") + @GetMapping("/lot") + public CommonResult<List<StatisticsEventsVO.LotVO>> lot(@Validated CockpitVO.Params1VO params) { + List<StatisticsEventsVO.LotVO> lotVOS = new ArrayList<>(); + StatisticsEventsVO.LotVO a = null; + for (int i = 0; i < 4; i++) { + a = new StatisticsEventsVO.LotVO(); + a.setName("鍥㈢粨灞�"); + a.setType("鎽勫儚澶�"); + a.setCount(10); + lotVOS.add(a); + } + return CommonResult.success(lotVOS); + } + + @ApiOperation(value = "鎵ф硶闃熶紞") + @GetMapping("/team") + public CommonResult<StatisticsEventsVO.TeamVO> team(@Validated CockpitVO.Params1VO params) { + StatisticsEventsVO.TeamVO teamVO = new StatisticsEventsVO.TeamVO(); + teamVO.setAll(30); + teamVO.setAssistant(10); + teamVO.setOfficer(10); + teamVO.setSecondOfficer(1); + teamVO.setOffline(10); + teamVO.setOnline(20); + return CommonResult.success(teamVO); + } + + @ApiOperation(value = "缃戞牸鍛�") + @GetMapping("/grid_member") + public CommonResult<List<StatisticsEventsVO.GridMemberVO>> gridMember(@Validated CockpitVO.Params1VO params) { + List<StatisticsEventsVO.GridMemberVO> gridMemberVOS = new ArrayList<>(); + StatisticsEventsVO.GridMemberVO a = null; + for (int i = 0; i < 4; i++) { + a = new StatisticsEventsVO.GridMemberVO(); + a.setRatio(new BigDecimal("0.20").setScale(2, RoundingMode.HALF_UP)); + a.setName("鍥㈢粨灞�"); + a.setCount(10); + gridMemberVOS.add(a); + } + return CommonResult.success(gridMemberVOS); + } + + @ApiOperation(value = "鎸囨暟浣撳緛") + @GetMapping("/index_signs") + public CommonResult<StatisticsEventsVO.IndexSignsVO> indexSigns(@Validated CockpitVO.Params1VO params) { + StatisticsEventsVO.IndexSignsVO indexSignsVO = new StatisticsEventsVO.IndexSignsVO(); + indexSignsVO.setEvent(1); + indexSignsVO.setGridMember(20); + indexSignsVO.setCompletePercentage(new BigDecimal("0.60").setScale(2, RoundingMode.HALF_UP)); + indexSignsVO.setEquipment(30); + indexSignsVO.setAccuracy(new BigDecimal("0.80").setScale(2, RoundingMode.HALF_UP)); + indexSignsVO.setTrigger(10); + indexSignsVO.setLot(30); + indexSignsVO.setLotOnline(10); + indexSignsVO.setCityData(10); + indexSignsVO.setEvaluationData(10); + return CommonResult.success(indexSignsVO); + } +} diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java new file mode 100644 index 0000000..c4fb549 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java @@ -0,0 +1,93 @@ +package com.ycl.vo.cockpit.aiIot; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@ApiModel(description = "椹鹃┒鑸辨暟鎹�-AI鐗╄仈VO灞�") +public class AIIotVO { + + @ApiModel(description = "鐩戞祴鏁版嵁") + @Data + public static class DetectionVO { + @ApiModelProperty(value = "鍩庡競鐩戞帶") + private Integer video; + @ApiModelProperty(value = "鍗曞叺璁惧") + private Integer individual; + @ApiModelProperty(value = "娌圭儫鐩戞祴") + private Integer lampblack; + @ApiModelProperty(value = "瀹ゅ闊虫煴") + private Integer loudspeaker; + @ApiModelProperty(value = "娓e湡杞�") + private Integer slagCar; + } + + @ApiModel(description = "瀹炴椂鐩戞帶") + @Data + public static class VideoVO { + @ApiModelProperty(value = "鐐逛綅缁忓害") + private String longitude; + @ApiModelProperty(value = "鐐逛綅绾害") + private String latitude; + @ApiModelProperty(value = "鐐逛綅鍚嶇О") + private String name; + @ApiModelProperty(value = "璁惧鍞竴缂栫爜") + private String resourceId; + @ApiModelProperty(value = "璁惧鍝佺墝") + private String brand; + @ApiModelProperty(value = "璁惧鍨嬪彿") + private String model; + @ApiModelProperty(value = "璁惧IP鍦板潃") + private String ip; + @ApiModelProperty(value = "URL鍦板潃") + private String url; + } + + @ApiModel(description = "AI绠楁硶鏁堣兘") + @Data + public static class EfficiencyVO { + @ApiModelProperty(value = "鐗╄仈缃戣澶囩被鍨�") + private String type; + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + @ApiModelProperty(value = "姣斾緥") + private BigDecimal ratio; + } + + @ApiModel(description = "AI浜嬩欢缁熻") + @Data + public static class StatisticsVO { + @ApiModelProperty(value = "鐗╄仈缃戣澶囩被鍨�") + private String type; + private List<AIIotVO.Statistics1VO> records; + } + + @Data + @ApiModel(description = "AI浜嬩欢缁熻") + public static class Statistics1VO { + @ApiModelProperty(value = "鏈堜唤") + private String month; + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + } + + @ApiModel(description = "娓e湡鑱斿姩") + @Data + public static class SlagCarVO { + @ApiModelProperty(value = "杞﹂槦鏁�") + private Integer team; + + @ApiModelProperty(value = "杞﹁締鏁�") + private Integer car; + } + + +} diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java new file mode 100644 index 0000000..c52ad94 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java @@ -0,0 +1,100 @@ +package com.ycl.vo.cockpit.enforcementEvents; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import io.swagger.models.auth.In; +import io.swagger.v3.oas.models.security.SecurityScheme; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@ApiModel(description = "椹鹃┒鑸辨暟鎹�-鎵ф硶浜嬩欢VO灞�") +public class EnforcementEventsVO { + @ApiModel(description = "鎵ф硶浜嬩欢缁熻") + @Data + public static class StatisticsEventVO { + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + + @ApiModelProperty(value = "姣斾緥") + private BigDecimal ratio; + } + + @Data + @ApiModel(description = "浜嬩欢绫诲瀷/浜嬩欢鏉ユ簮") + public static class TypeAndSourceVO { + @ApiModelProperty(value = "浜嬩欢鐨勬�绘暟") + private Integer all; + @ApiModelProperty(value = "浜嬩欢绫诲瀷鐨勬暟閲忋�佸悇鍗犳瘮") + private List<EnforcementEventsVO.TypeAndSourceVO1> records; + } + + @Data + @ApiModel(description = "浜嬩欢绫诲瀷/浜嬩欢鏉ユ簮") + public static class TypeAndSourceVO1 { + @ApiModelProperty(value = "鍚嶇О") + private String name; + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + @ApiModelProperty(value = "姣斾緥") + private BigDecimal ratio; + } + + @Data + @ApiModel(description = "瑙嗛鎶撴媿楂樺彂鐐逛綅/浜嬩欢鍖哄煙缁熻") + public static class VideoAndAreaVO { + @ApiModelProperty(value = "鐐逛綅鍚嶇О") + private String name; + @ApiModelProperty(value = "娆℃暟") + private Integer count; + } + + @Data + @ApiModel(description = "寤惰浜嬩欢") + public static class DelayVO { + @ApiModelProperty(value = "浜嬩欢缂栫爜锛堝敮涓�锛�") + private String code; + @ApiModelProperty(value = "浜嬩欢鎻忚堪") + private String description; + @ApiModelProperty(value = "瓒呮湡鏃堕棿锛堝垎閽燂級") + private Integer duration; + } + + @Data + @ApiModel(description = "浜嬩欢淇℃伅") + public static class InfoVO { + @ApiModelProperty(value = "浠婃棩浜嬩欢鎬绘暟") + private Integer today; + @ApiModelProperty(value = "鏈懆浜嬩欢鎬绘暟") + private Integer week; + @ApiModelProperty(value = "鎵ф硶鍑哄姩鎬绘暟") + private Integer dispatch; + @ApiModelProperty(value = "AI璇嗗埆鐨勪簨浠舵�绘暟") + private Integer identification; + @ApiModelProperty(value = "鍏蜂綋浜嬩欢鐨勬暟鎹俊鎭�") + private EnforcementEventsVO.EventVO event; + } + + @Data + @ApiModel(description = "鍏蜂綋浜嬩欢鐨勬暟鎹俊鎭�") + public static class EventVO { + @ApiModelProperty(value = "浜嬩欢鎻忚堪") + private String description; + @ApiModelProperty(value = "浜嬪彂鍦扮偣") + private String address; + @ApiModelProperty(value = "鍙戠敓鏃堕棿") + private String alarmTime; + @ApiModelProperty(value = "鍏宠仈鎽勫儚鐐逛綅") + private String point; + @ApiModelProperty(value = "鐩戞帶鐢婚潰") + private String picture; + @ApiModelProperty(value = "鏉ユ簮") + private String source; + } +} diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/statisticsEvents/StatisticsEventsVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/statisticsEvents/StatisticsEventsVO.java new file mode 100644 index 0000000..170883d --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/statisticsEvents/StatisticsEventsVO.java @@ -0,0 +1,93 @@ +package com.ycl.vo.cockpit.statisticsEvents; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author Lyq + * @version 1.0 + * @date 2022/10/26 + */ +@ApiModel(description = "椹鹃┒鑸辨暟鎹�-缁煎悎鍐崇瓥VO灞�") +public class StatisticsEventsVO { + + @ApiModel(description = "鎵ф硶浜嬩欢") + @Data + public static class LawEnforcementEventVO { + @ApiModelProperty(value = "鏈堜唤") + private String month; + @ApiModelProperty(value = "鍦板尯鍚嶅瓧") + private String name; + @ApiModelProperty(value = "鍩庣浜嬩欢鏁�") + private Integer cityManagementCount; + @ApiModelProperty(value = "鎵ф硶妗堜欢鏁�") + private Integer enforcementEventCount; + } + + @ApiModel(description = "鐗╄仈鎰熺煡") + @Data + public static class LotVO { + @ApiModelProperty(value = "鐗╄仈缃戣澶囩被鍨�") + private String type; + @ApiModelProperty(value = "鍦板尯鍚嶅瓧") + private String name; + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + } + + @ApiModel(description = "鎵ф硶闃熶紞") + @Data + public static class TeamVO { + @ApiModelProperty(value = "鎵ф硶涓槦鏁伴噺") + private Integer secondOfficer; + @ApiModelProperty(value = "鍦ㄧ嚎浜哄憳鏁伴噺") + private Integer online; + @ApiModelProperty(value = "绂荤嚎浜哄憳鏁伴噺") + private Integer offline; + @ApiModelProperty(value = "鍏ㄩ儴浜哄憳鏁伴噺") + private Integer all; + @ApiModelProperty(value = "鎵ф硶浜哄憳鏁伴噺") + private Integer officer; + @ApiModelProperty(value = "鍗忕浜哄憳鏁伴噺") + private Integer assistant; + } + + @ApiModel(description = "缃戞牸鍛�") + @Data + public static class GridMemberVO { + @ApiModelProperty(value = "鍦板尯鍚嶇О") + private String name; + @ApiModelProperty(value = "鏁伴噺") + private Integer count; + @ApiModelProperty(value = "姣斾緥") + private BigDecimal ratio; + } + + @ApiModel(description = "鎸囨暟浣撳緛") + @Data + public static class IndexSignsVO { + @ApiModelProperty(value = "杩�30鏃ヤ簨浠舵暟") + private Integer event; + @ApiModelProperty(value = "缃戞牸鍛樻�绘暟") + private Integer gridMember; + @ApiModelProperty(value = "杩�30鏃ヤ簨浠跺姙缁撶巼") + private BigDecimal completePercentage; + @ApiModelProperty(value = "AI璁惧鏁伴噺") + private Integer equipment; + @ApiModelProperty(value = "AI杩�30鏃ュ噯纭巼") + private BigDecimal accuracy; + @ApiModelProperty(value = "杩�30鏃ヨЕ鍙戞鏁�") + private Integer trigger; + @ApiModelProperty(value = "鐗╄仈鎰熺煡璁惧鏁伴噺") + private Integer lot; + @ApiModelProperty(value = "杩�30鏃ョ墿鑱旀劅鐭ヨ澶囧湪绾挎暟閲�") + private Integer lotOnline; + @ApiModelProperty(value = "甯傘�� 鍖轰换鍔″畬鎴愭寚鏍囧競骞冲彴鍐呮暟鎹�") + private Integer cityData; + @ApiModelProperty(value = "鍔ㄦ�佽�冩牳鏁版嵁") + private Integer evaluationData; + } +} -- Gitblit v1.8.0