From 7c54e8233ccad83697a84317a4b8194d85d7fd42 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期四, 14 十一月 2024 18:19:16 +0800 Subject: [PATCH] 最新版本541200007 --- server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 20 + server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/RuleEventSearchDataResponse.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/InMemberDataVO.java | 42 +++ server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayParkingDataResponse.java | 17 + server/visits/dmvisit_admin/src/main/resources/bootstrap.yml | 2 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/ParkingStatisticResponse.java | 12 + server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventFiledOptionsRequest.java | 7 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayCarDataResponse.java | 12 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarEvent.java | 5 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java | 102 ++++----- server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java | 1 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitRetentionDataVO.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java | 26 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataListVO.java | 28 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataVO.java | 16 - server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java | 1 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/SecurityBoardVO.java | 33 +- server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitDataVO.java | 11 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarEventServiceImpl.java | 1 server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java | 6 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 49 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java | 213 ++++++++++++++++--- server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventSearchRequest.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 14 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java | 7 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java | 8 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java | 3 31 files changed, 504 insertions(+), 150 deletions(-) diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java index 91918e1..6bedf52 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java @@ -139,6 +139,8 @@ public static final String TMS_INTERFACE_URL_PREFIX ="TMS_INTERFACE_URL_PREFIX" ; public static final String MYSQL_BACKUP_CDOE ="MYSQL_BACKUP_CDOE" ; public static final String MYSQL_BACKUP_DIR ="MYSQL_BACKUP_DIR" ; + public static final String EVENT_FILES_PRIVATE_DOMAIN ="EVENT_FILES_PRIVATE_DOMAIN" ; + public static final String EVENT_FILES_PUBLIC_DOMAIN ="EVENT_FILES_PUBLIC_DOMAIN" ; public static boolean DEALING_HK_SYNCPRIVILEGE= false; public static boolean DEALING_HK_SYNCDEVICE = false; public static boolean DEALING_HK_SYNCPLATFORM = false; @@ -378,6 +380,16 @@ int invalid =9; } + public interface RetentionCarType{ + //杞﹁締绫诲瀷 0鍐呴儴杞﹁締 1鐩稿叧鏂硅溅杈� 2璁垮杞﹁締 3鍐呰繍鐗╂祦杞� 4澶栧崗杞﹁締 5甯傚叕鍙稿嵏璐ц溅 + int internal = 0; + int relation = 1; + int visitor = 2; + int selfTruck = 3; + int outTruck = 4; + int cityComTruck = 5; + } + public interface EmpowerStatus{ //涓�鍗¢�氭巿鏉冧笅鍙戠姸鎬� 0寰呬笅鍙� 1宸蹭笅鍙� 2涓嬪彂鎴愬姛 3宸插彇娑� 4涓嬪彂澶辫触 5浠诲姟涓嬭浇宸茬粨鏉� @@ -458,6 +470,14 @@ d = d.setScale(4, BigDecimal.ROUND_HALF_UP); return d; } + public static BigDecimal formatBigdecimal2Float(BigDecimal d) { + if (d == null) { + d = new BigDecimal(0.0); + } + //淇濈暀涓や綅灏忔暟涓斿洓鑸嶄簲鍏� + d = d.setScale(2, BigDecimal.ROUND_HALF_UP); + return d; + } diff --git a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java index c03cf47..f1d341b 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java @@ -460,7 +460,7 @@ * @return String * @throws Exception */ - public static String getPlusTime(Date date) throws Exception { + public static String getPlusTime(Date date) { if (date == null) return null; try { diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java index 324108e..64ebdac 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java @@ -1,12 +1,18 @@ package com.doumee.cloud.board; import com.doumee.api.BaseController; +import com.doumee.config.annotation.CloudRequiredPermission; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.haikang.model.param.respose.PageRegionInfoResponse; import com.doumee.core.haikang.model.param.respose.RuleEventSearchResponse; import com.doumee.core.model.ApiResponse; +import com.doumee.core.model.PageData; +import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; +import com.doumee.dao.admin.response.PCWorkPlatformDataVO; +import com.doumee.dao.business.model.Visits; import com.doumee.dao.web.response.platformReport.*; +import com.doumee.service.business.VisitsService; import com.doumee.service.business.third.BoardService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -15,10 +21,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.ArrayList; @@ -40,32 +43,14 @@ @Autowired private BoardService boardService; + @Autowired + private VisitsService visitsService; @LoginNoRequired @ApiOperation("涓績鏁版嵁") @GetMapping("/centerData") - public ApiResponse<SecurityBoardVO> centerData() { - SecurityBoardVO data = new SecurityBoardVO(); - Random random = new Random(); - data.setParkingLotTotal(random.nextInt(200)); - data.setFreeParkingLot(random.nextInt(data.getParkingLotTotal())); - - data.setInternalCarTotal(random.nextInt(100)); - data.setRelatedCarTotal(random.nextInt(100)); - data.setVisitCarTotal(random.nextInt(100)); - data.setInParkCarTotal(data.getInternalCarTotal() + data.getRelatedCarTotal() + data.getVisitCarTotal()); - - data.setInternalTotal(random.nextInt(100)); - data.setRelatedTotal(random.nextInt(100)); - data.setVisitTotal(random.nextInt(100)); - data.setInParkTotal(data.getInternalTotal() + data.getRelatedTotal() + data.getVisitTotal()); - - data.setDeviceTotal(random.nextInt(20)); - data.setErrTotal(random.nextInt(20)); - data.setInternalJobCarTotal(random.nextInt(20)); - data.setVisitJobCarTotal(random.nextInt(20)); - data.setRelatedJobCarTotal(random.nextInt(20)); - + public ApiResponse<SecurityBoardVO> centerSecurityData() { + SecurityBoardVO data = boardService.centerSecurityData(); return ApiResponse.success(data); } @@ -75,16 +60,6 @@ @GetMapping("/securityDeviceData") public ApiResponse<List<SecurityDeviceDataVO>> securityDeviceData() { List<SecurityDeviceDataVO> list = boardService.securityDeviceData(); - /* - Random random = new Random(); - for (int i = 1; i <= 3; i++) { - SecurityDeviceDataVO data = new SecurityDeviceDataVO(); - data.setDeviceType("璁惧绫诲瀷_"+i); - data.setOnlineNum(random.nextInt(10)); - data.setOfflineDeviceNum(random.nextInt(10)); - data.setTotalNum(data.getOnlineNum() + data.getOfflineDeviceNum() ); - list.add(data); - }*/ return ApiResponse.success(list); } @LoginNoRequired @@ -93,18 +68,8 @@ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "绫诲瀷 0鍏ㄩ儴 1鍖哄煙鍛婅 2琛屼负鍛婅", required = false) }) @GetMapping("/warningEventData") - public ApiResponse<List<WaningEventDataVO>> warningEventData(Integer type) { - List<WaningEventDataVO> list = boardService.warningEventData(type); - /* - Random random = new Random(); - for (int i = 1; i <= 3; i++) { - SecurityDeviceDataVO data = new SecurityDeviceDataVO(); - data.setDeviceType("璁惧绫诲瀷_"+i); - data.setOnlineNum(random.nextInt(10)); - data.setOfflineDeviceNum(random.nextInt(10)); - data.setTotalNum(data.getOnlineNum() + data.getOfflineDeviceNum() ); - list.add(data); - }*/ + public ApiResponse<WaningEventDataVO> warningEventData(Integer type) { + WaningEventDataVO list = boardService.warningEventData(type); return ApiResponse.success(list); } @@ -115,15 +80,24 @@ @ApiOperation("璁垮婊炵暀鎯呭喌") @GetMapping("/visitRetentionData") public ApiResponse<List<VisitRetentionDataVO>> visitRetentionData() { + PageWrap<Visits> pageWrap = new PageWrap<>(); + pageWrap.setCapacity(10); + pageWrap.setPage(1); + pageWrap.setModel(new Visits()); + pageWrap.getModel().setLevelStatus(Constants.ZERO); + pageWrap.getModel().setStatus(Constants.TWO); + PageData<Visits> resut = visitsService.retentionPage(pageWrap); List<VisitRetentionDataVO> list = new ArrayList<>(); - Random random = new Random(); - for (int i = 1; i <= 3; i++) { - VisitRetentionDataVO data = new VisitRetentionDataVO(); - data.setName("灏忔槑_"+i); - data.setCompanyName("杩愮淮缁刜"+i); - data.setTimeOutMinute(Long.valueOf(random.nextInt(200))); - list.add(data); + if(resut !=null && resut.getRecords() !=null && resut.getRecords().size()>0){ + for (Visits model : resut.getRecords()) { + VisitRetentionDataVO data = new VisitRetentionDataVO(); + data.setName(model.getName()); + data.setCompanyName(model.getCompanyName()); + data.setTimeOutMinute(Constants.formatIntegerNum(model.getTimeOut())); + list.add(data); + } } + return ApiResponse.success(list); } @@ -152,11 +126,23 @@ } @LoginNoRequired @ApiOperation("骞抽摵缁撴灉鍖哄煙闆嗗悎鎺ュ彛") - @GetMapping("/regionList") - public ApiResponse<List<PageRegionInfoResponse>> regionList(CarmeraListVO param) { + @PostMapping("/regionList") + public ApiResponse<List<PageRegionInfoResponse>> regionList(@RequestBody CarmeraListVO param) { return ApiResponse.success(boardService.regionList(param)); } + @LoginNoRequired + @ApiOperation("鑾峰彇鐩戞帶娴佹挱鏀惧湴鍧�") + @GetMapping("/getCarmeraPreviemUrl") + public ApiResponse<String> getCarmeraPreviemUrl(CarmeraListVO param) { + return ApiResponse.success(boardService.getCarmeraPreviemUrl(param)); + } - + @LoginNoRequired + @ApiOperation("浠婃棩璁垮鍒嗘瀽鍜屾粸鐣欒瀹㈡暟鎹泦鍚�") + @GetMapping("/visitSecurityData") + public ApiResponse<VisitDataVO> visitSecurityData ( ){ + VisitDataVO data = boardService.visitSecurityData(); + return ApiResponse.success(data); + } } diff --git a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml index 9dc10e9..2df12af 100644 --- a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml +++ b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml @@ -1,6 +1,6 @@ spring: profiles: - active: dev + active: pro application: name: visitsAdmin # 瀹夊叏閰嶇疆 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java index abd5eb2..6730e14 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java @@ -149,6 +149,7 @@ String[] ruleEventSearch= new String[]{"/api/v2/ruleEvent/search","瀹夐槻鐪嬫澘-浠婃棩鍛婅浜嬩欢-鏍规嵁eventType瀛楁3"};//瀹夐槻鐪嬫澘-浠婃棩鍛婅浜嬩欢-鏍规嵁eventType瀛楁3[鍥剧墖] String[] getSecureDevStatusList= new String[]{"/api/secureDataService/v2/getSecureDevStatusList","瀹夐槻鐪嬫澘-鍥尯瀹夐槻璁惧-鍚勭被鍨嬭澶囩姸鎬佹暟鎹垪琛�"};//瀹夐槻鐪嬫澘-鍥尯瀹夐槻璁惧-鍚勭被鍨嬭澶囩姸鎬佹暟鎹垪琛� String[] getSecureDevStatusTotal= new String[]{"/api/secureDataService/v2/getSecureDevStatusTotal","缁熻鍥尯鎬讳綋鐨勫畨闃茶澶囨暟閲忥紝鍦ㄧ嚎鏁般�佸湪绾跨巼銆佺绾挎暟銆佺绾跨巼"};//缁熻鍥尯鎬讳綋鐨勫畨闃茶澶囨暟閲忥紝鍦ㄧ嚎鏁般�佸湪绾跨巼銆佺绾挎暟銆佺绾跨巼 + String[] getParkingStatistics= new String[]{"/api/dataBoardService/v1/getParkingStatistics","瀹夐槻鐪嬫澘--鍥尯瀹炴椂杞︽暟閲�4"};//瀹夐槻鐪嬫澘--鍥尯瀹炴椂杞︽暟閲�4 } /** * 闄勫綍A.55娑堥槻璁惧绫诲瀷 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java index 75523a2..e1fd457 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java @@ -783,6 +783,13 @@ return startDoPostStringArtemis(HKConstants.InterfacePath.getSecureDevStatusTotal,body); } /** + * 缁熷畨闃茬湅鏉�--鍥尯瀹炴椂杞︽暟閲�4 + * @return + */ + public static String getParkingStatistics() { + return startDoGetStringArtemis(HKConstants.InterfacePath.getParkingStatistics,null); + } + /** * 鑾峰彇鏈堝彴鐘舵�� * @return */ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventFiledOptionsRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventFiledOptionsRequest.java index 9023a20..52073a7 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventFiledOptionsRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventFiledOptionsRequest.java @@ -1,12 +1,13 @@ package com.doumee.core.haikang.model.param.request; +import com.doumee.core.haikang.model.param.BaseListPageRequest; import lombok.Data; import java.util.List; @Data -public class RuleEventFiledOptionsRequest { +public class RuleEventFiledOptionsRequest { private String fieldName;// String false 瀛楁鍚嶇О -private String fieldValue ;//String false 瀛楁鍊� -private String type;// String false 鏌ヨ绫诲瀷锛屽彲閫夎寖鍥达細eq锛堢浉绛夛級銆乶eq(涓嶇浉绛�)銆乴ike锛堢被浼硷級銆乴t锛堝皬浜庯級銆乬t锛堝ぇ浜庯級銆乴te锛堝皬浜庣瓑浜庯級銆乬te锛堝ぇ浜庣瓑浜庯級銆乮n锛堣寖鍥达級銆乶otIn(鑼冨洿涔嬪)銆乮n锛歠ieldValue鐨勫�煎彲浠ュ~澶氫釜锛岀敤鑻辨枃閫楀彿鍒嗛殧銆乶otNull(涓嶄负绌�)銆乮sNull(涓虹┖)銆乺ecently(鏈�杩�)銆� + private String fieldValue ;//String false 瀛楁鍊� + private String type;// String false 鏌ヨ绫诲瀷锛屽彲閫夎寖鍥达細eq锛堢浉绛夛級銆乶eq(涓嶇浉绛�)銆乴ike锛堢被浼硷級銆乴t锛堝皬浜庯級銆乬t锛堝ぇ浜庯級銆乴te锛堝皬浜庣瓑浜庯級銆乬te锛堝ぇ浜庣瓑浜庯級銆乮n锛堣寖鍥达級銆乶otIn(鑼冨洿涔嬪)銆乮n锛歠ieldValue鐨勫�煎彲浠ュ~澶氫釜锛岀敤鑻辨枃閫楀彿鍒嗛殧銆乶otNull(涓嶄负绌�)銆乮sNull(涓虹┖)銆乺ecently(鏈�杩�)銆� } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventSearchRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventSearchRequest.java index c0f1075..f0bffd4 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventSearchRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/RuleEventSearchRequest.java @@ -10,4 +10,6 @@ private String[] regionIds;// Array false 鍥尯瀵瑰簲鍖哄煙id淇℃伅,item 绫诲瀷: string锛屼紶绌簂ist鏌ュ叏閮� private String includeBool;// Number false 鏄惁鍖呭惈涓嬬骇瀛愯妭鐐�,0-涓嶅寘鍚�,1-鍖呭惈 private List<RuleEventFiledOptionsRequest > filedOptions;// Array false 绛涢�夊瓧娈靛垪琛�> + + private List<SortRequest > sorts;//鎺掑簭椁愬 } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java index da9eeec..d69774d 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java @@ -8,5 +8,8 @@ private String field ;// string False 鎺掑簭瀛楁锛屽搴旀煡璇㈢敤鐨勫弬鏁板悕绉� private String sort ;// string False 鎺掑簭瑙勫垯锛宎sc锛氭搴忥紝 desc锛氬�掑簭 + private String sortField ;// String false 鎺掑簭瀛楁 + private String sortType ;// s String false 鎺掑簭绫诲瀷锛氭敮鎸乨esc銆乤sc + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/ParkingStatisticResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/ParkingStatisticResponse.java new file mode 100644 index 0000000..b6725c6 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/ParkingStatisticResponse.java @@ -0,0 +1,12 @@ +package com.doumee.core.haikang.model.param.respose; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class ParkingStatisticResponse { + + private TodayCarDataResponse todayCarDataDto;//BigDecimal Object false 浠婃棩鍐呭閮ㄨ溅杈嗘暟鎹瓺to +private TodayParkingDataResponse todayParkingDataDto ;//Object false 浠婃棩杞︿綅鏁版嵁 +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/RuleEventSearchDataResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/RuleEventSearchDataResponse.java index 018dfc8..2703f30 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/RuleEventSearchDataResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/RuleEventSearchDataResponse.java @@ -1,5 +1,6 @@ package com.doumee.core.haikang.model.param.respose; +import com.alibaba.fastjson.annotation.JSONField; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; @@ -45,5 +46,6 @@ private String level_color;// String false level_color private String plan_exec_status;// String false plan_exec_status @JsonProperty(value = "_image_url") + @JSONField(name = "_image_url") private String imgurl;// String false 鏈夋晥鍥剧墖鍦板潃 } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayCarDataResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayCarDataResponse.java new file mode 100644 index 0000000..45e6264 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayCarDataResponse.java @@ -0,0 +1,12 @@ +package com.doumee.core.haikang.model.param.respose; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class TodayCarDataResponse { + +private Integer innerCarCount;// Number false 鍐呴儴杞﹁締鏁伴噺 +private Integer outerCarCount ;//Number false 澶栭儴杞﹁締鏁伴噺 +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayParkingDataResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayParkingDataResponse.java new file mode 100644 index 0000000..320c2cc --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TodayParkingDataResponse.java @@ -0,0 +1,17 @@ +package com.doumee.core.haikang.model.param.respose; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class TodayParkingDataResponse { + +private Integer leftPlace ;//Number false 鍓╀綑杞︿綅鏁伴噺 +private Integer totalPlace ;//umber false 鎬昏溅浣嶆暟閲� +private String usePlace;// String false 宸茬敤杞︿綅鏁伴噺 +private BigDecimal useRate ;//Number false 杞︿綅浣跨敤鐜� +private String parkName ;//String false 鍋滆溅鍦哄悕绉� +private String parkSyscode ;//String false 鍋滆溅鍦哄敮涓�鏍囪瘑 +private String statisticsTime ;//String false 缁熻鏍囪瘑 +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java index edd3631..a47eb2e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java @@ -1480,7 +1480,7 @@ TypeReference typeReference = new TypeReference< BaseResponse<BaseListPageResponse<PageCameraInfoResponse>> >(){}; BaseResponse<BaseListPageResponse<PageCameraInfoResponse>> result = JSONObject.parseObject(res, typeReference.getType()); - logResult(result,"娴峰悍鍒嗛〉鑾峰彇鐩戞帶鐐硅祫婧�"); +// logResult(result,"娴峰悍鍒嗛〉鑾峰彇鐩戞帶鐐硅祫婧�"); return result; }catch (Exception e){ log.error("銆愭捣搴峰垎椤佃幏鍙栫洃鎺х偣璧勬簮銆�================澶辫触====锛歕n"+ e.getMessage()); @@ -1527,13 +1527,13 @@ *瀹夐槻鐪嬫澘-浠婃棩鍛婅浜嬩欢-鏍规嵁eventType瀛楁3 * @return */ - public static BaseResponse< RuleEventSearchResponse> ruleEventSearch(RuleEventSearchRequest param){ + public static BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>> ruleEventSearch(RuleEventSearchRequest param){ log.info("銆愭捣搴峰畨闃茬湅鏉�-浠婃棩鍛婅浜嬩欢-鏍规嵁eventType瀛楁3銆�================寮�濮�===="+JSONObject.toJSONString(param)); try { String res = HKTools.ruleEventSearch(JSONObject.toJSONString(param)); TypeReference typeReference = - new TypeReference< BaseResponse<RuleEventSearchResponse> >(){}; - BaseResponse<RuleEventSearchResponse> result = JSONObject.parseObject(res, typeReference.getType()); + new TypeReference< BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>> >(){}; + BaseResponse<BaseListPageResponse<RuleEventSearchDataResponse>> result = JSONObject.parseObject(res, typeReference.getType()); logResult(result,"娴峰悍瀹夐槻鐪嬫澘-浠婃棩鍛婅浜嬩欢-鏍规嵁eventType瀛楁3"); return result; }catch (Exception e){ @@ -1542,6 +1542,24 @@ return null; } /** + *缁熻缁熷畨闃茬湅鏉�--鍥尯瀹炴椂杞︽暟閲�4 + * @return + */ + public static BaseResponse<ParkingStatisticResponse> getParkingStatistics(){ + log.info("銆愭捣搴峰畨闃茬湅鏉�--鍥尯瀹炴椂杞︽暟閲�4銆�================寮�濮�===="); + try { + String res = HKTools.getParkingStatistics(); + TypeReference typeReference = + new TypeReference< BaseResponse<ParkingStatisticResponse>>(){}; + BaseResponse<ParkingStatisticResponse> result = JSONObject.parseObject(res, typeReference.getType()); + logResult(result,"娴峰悍瀹夐槻鐪嬫澘--鍥尯瀹炴椂杞︽暟閲�4"); + return result; + }catch (Exception e){ + log.error("銆愭捣搴峰畨闃茬湅鏉�--鍥尯瀹炴椂杞︽暟閲�4銆�================澶辫触====锛歕n"+ e.getMessage()); + } + return null; + } + /** *缁熻鍥尯鎬讳綋鐨勫畨闃茶澶囨暟閲忥紝鍦ㄧ嚎鏁般�佸湪绾跨巼銆佺绾挎暟銆佺绾跨巼 * @return */ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java index 867fe9f..8b2fa0e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java @@ -98,6 +98,9 @@ @ApiModelProperty(value = "缁勭粐绫诲瀷锛�0=鐩稿叧鏂癸紱1=鍐呴儴") private String companyType; + @ApiModelProperty(value = "杞﹁締绫诲瀷 0鍐呴儴杞﹁締 1鐩稿叧鏂硅溅杈� 2璁垮杞﹁締 3鍐呰繍鐗╂祦杞� 4澶栧崗杞﹁締 5甯傚叕鍙稿嵏璐ц溅 ") + private String carType; + @ApiModelProperty(value = "濮撳悕") @ExcelColumn(name="濮撳悕",index = 7,width = 16) private String personName; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java index aedf353..fc73bc2 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.business.model.Cars; +import com.github.yulichang.base.MPJBaseMapper; import java.util.List; @@ -9,6 +10,6 @@ * @author 姹熻箘韫� * @date 2023/11/30 15:33 */ -public interface CarsMapper extends BaseMapper<Cars> { +public interface CarsMapper extends MPJBaseMapper<Cars> { } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarEvent.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarEvent.java index 6b81496..690969e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarEvent.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarEvent.java @@ -222,6 +222,11 @@ @ApiModelProperty(value = "浜哄憳缂栫爜 ") private Integer memberId ; + @ApiModelProperty(value = "杞﹁締绫诲瀷 0鍐呴儴杞﹁締 1鐩稿叧鏂硅溅杈� 2璁垮杞﹁締 3鍐呰繍鐗╂祦杞� 4澶栧崗杞﹁締 5甯傚叕鍙稿嵏璐ц溅 ") + private Integer carType ; + @ApiModelProperty(value = "浜哄憳缂栫爜 ") + @TableField(exist = false) + private Integer companyId ; // 鏉′欢鏌ヨ鍙傛暟 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java index 8147e45..cc60188 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java @@ -171,6 +171,10 @@ //@ExcelColumn(name="閮ㄩ棬") @TableField(exist = false) private String companyName; + @ApiModelProperty(value = "閮ㄩ棬绫诲瀷", example = "1") + //@ExcelColumn(name="閮ㄩ棬") + @TableField(exist = false) + private Integer companyType; @ApiModelProperty(value = "杞︿富鏄惁鍒犻櫎", example = "1") @TableField(exist = false) private Integer memberDeleted; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java index 765170e..9cb13d8 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java @@ -84,7 +84,8 @@ @ApiModelProperty(value = "娴峰悍闂ㄧ鍚嶇О") @ExcelColumn(name="杩涘巶闂ㄧ" ,index = 6,width = 12) private String deviceName; - + @ApiModelProperty(value = "杞﹁締绫诲瀷 0鍐呴儴杞﹁締 1鐩稿叧鏂硅溅杈� 2璁垮杞﹁締 3鍐呰繍鐗╂祦杞� 4澶栧崗杞﹁締 5甯傚叕鍙稿嵏璐ц溅 ") + private Integer carType ; @ApiModelProperty(value = "娴峰悍闂ㄧ缂栫爜") private String deviceIndex; @@ -120,6 +121,9 @@ @ApiModelProperty(value = "绫诲瀷 0鍔冲姟鍏徃 1鍐呴儴缁勭粐") @TableField(exist = false) private Integer companyType; + @ApiModelProperty(value = "绫诲瀷 0璁垮 1鍐呴儴浜哄憳") + @TableField(exist = false) + private Integer memberType; @ApiModelProperty(value = "寮�濮嬫椂闂�") @TableField(exist = false) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/InMemberDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/InMemberDataVO.java new file mode 100644 index 0000000..fd4713e --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/InMemberDataVO.java @@ -0,0 +1,42 @@ +package com.doumee.dao.web.response.platformReport; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 璁垮鍒嗘瀽 + * + * @Author : Rk + * @create 2024/10/25 10:59 + */ +@Data +public class InMemberDataVO { + + @ApiModelProperty(value = "寰呰闂暟閲�") + private Integer waitVisitNum; + + @ApiModelProperty(value = "寰呰闂崰姣�") + private BigDecimal waitVisitRata; + + @ApiModelProperty(value = "宸茬櫥璁版暟閲�") + private Integer registerVisitNum; + + @ApiModelProperty(value = "宸茬櫥璁板崰姣�") + private BigDecimal registerVisitRata; + + @ApiModelProperty(value = "宸茬寮�鏁伴噺") + private Integer levelNum; + + @ApiModelProperty(value = "宸茬寮�鍗犳瘮") + private BigDecimal levelRata; + + @ApiModelProperty(value = "婊炵暀鏁伴噺") + private Integer retentionNum; + + @ApiModelProperty(value = "婊炵暀鍗犳瘮") + private BigDecimal retentionRata; + + +} \ No newline at end of file diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/SecurityBoardVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/SecurityBoardVO.java index 2cbd492..f6a3ad5 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/SecurityBoardVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/SecurityBoardVO.java @@ -17,49 +17,50 @@ @ApiModelProperty(value = "鎬昏溅浣嶆暟閲�") - private Integer parkingLotTotal; + private int parkingLotTotal; @ApiModelProperty(value = "鍓╀綑杞︿綅鏁伴噺") - private Integer freeParkingLot; + private int freeParkingLot; + @ApiModelProperty(value = "杞︿綅浣跨敤鐜�") + private BigDecimal parkingUseRate; @ApiModelProperty(value = "鍛樺伐杞﹁締") - private Integer internalCarTotal; + private int internalCarTotal; @ApiModelProperty(value = "鐩稿叧鏂硅溅杈�") - private Integer relatedCarTotal; + private int relatedCarTotal; @ApiModelProperty(value = "璁垮杞﹁締") - private Integer visitCarTotal; + private int visitCarTotal; @ApiModelProperty(value = "褰撳墠鍦ㄥ洯浜烘暟") - private Integer inParkTotal; + private int inParkTotal; @ApiModelProperty(value = "鍦ㄥ洯鍐呴儴浜哄憳鏁伴噺") - private Integer internalTotal; + private int internalTotal; @ApiModelProperty(value = "鍦ㄥ洯鐩稿叧鏂规暟閲�") - private Integer relatedTotal; + private int relatedTotal; @ApiModelProperty(value = "鍦ㄥ洯璁垮鏁伴噺") - private Integer visitTotal; - + private int visitTotal; @ApiModelProperty(value = "褰撳墠鍦ㄥ洯杞﹁締鎬绘暟") - private Integer inParkCarTotal; + private int inParkCarTotal; @ApiModelProperty(value = "褰撳墠璁惧鎬绘暟") - private Integer deviceTotal; + private int deviceTotal; @ApiModelProperty(value = "褰撳墠鎶ヨ鎬绘暟") - private Integer errTotal; + private int errTotal; @ApiModelProperty(value = "鍐呰繍杞︼紙瀹夋嘲鑷湁杞︼級") - private Integer internalJobCarTotal; + private int internalJobCarTotal; @ApiModelProperty(value = "澶栧崗杩愯緭杞﹁締") - private Integer relatedJobCarTotal; + private int relatedJobCarTotal; @ApiModelProperty(value = "甯傚叕鍙歌溅杈�") - private Integer visitJobCarTotal; + private int visitJobCarTotal; //TODO 瀹夐槻鍛婅 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitDataVO.java index 555677f..0b7b32e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitDataVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitDataVO.java @@ -4,6 +4,7 @@ import lombok.Data; import java.math.BigDecimal; +import java.util.List; /** * 璁垮鍒嗘瀽 @@ -15,28 +16,30 @@ public class VisitDataVO { @ApiModelProperty(value = "寰呰闂暟閲�") - private Integer waitVisitNum; + private long waitVisitNum; @ApiModelProperty(value = "寰呰闂崰姣�") private BigDecimal waitVisitRata; @ApiModelProperty(value = "宸茬櫥璁版暟閲�") - private Integer registerVisitNum; + private long registerVisitNum; @ApiModelProperty(value = "宸茬櫥璁板崰姣�") private BigDecimal registerVisitRata; @ApiModelProperty(value = "宸茬寮�鏁伴噺") - private Integer levelNum; + private long levelNum; @ApiModelProperty(value = "宸茬寮�鍗犳瘮") private BigDecimal levelRata; @ApiModelProperty(value = "婊炵暀鏁伴噺") - private Integer retentionNum; + private long retentionNum; @ApiModelProperty(value = "婊炵暀鍗犳瘮") private BigDecimal retentionRata; + @ApiModelProperty(value = "璁垮婊炵暀鎯呭喌") + private List<VisitRetentionDataVO> visitRetentionDataList; } \ No newline at end of file diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitRetentionDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitRetentionDataVO.java index f235177..bd0ffff 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitRetentionDataVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/VisitRetentionDataVO.java @@ -19,6 +19,6 @@ private String companyName; @ApiModelProperty(value = "瓒呮椂鏃堕暱 鍗曚綅锛氬垎閽�") - private Long timeOutMinute; + private int timeOutMinute; } \ No newline at end of file diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataListVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataListVO.java new file mode 100644 index 0000000..6dbcdd6 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataListVO.java @@ -0,0 +1,28 @@ +package com.doumee.dao.web.response.platformReport; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 鍥尯瀹夐槻璁惧 + * + * @Author : Rk + * @create 2024/10/25 10:59 + */ +@Data +public class WaningEventDataListVO { + + @ApiModelProperty(value = "鏍囬") + private String title; + @ApiModelProperty(value = "鍥剧墖鍦板潃") + private String img; + @ApiModelProperty(value = "鏃堕棿") + private String createDate; + + @ApiModelProperty(value = "鍙戠敓鍦扮偣") + private String addr; + @ApiModelProperty(value = "鍐呭") + private String content; + + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataVO.java index a901e61..e6e03b8 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WaningEventDataVO.java @@ -4,6 +4,7 @@ import lombok.Data; import java.util.Date; +import java.util.List; /** * 鍥尯瀹夐槻璁惧 @@ -14,17 +15,10 @@ @Data public class WaningEventDataVO { - @ApiModelProperty(value = "鏍囬") - private String title; - @ApiModelProperty(value = "鍥剧墖鍦板潃") - private String img; - @ApiModelProperty(value = "鏃堕棿") - private String createDate; - - @ApiModelProperty(value = "鍙戠敓鍦扮偣") - private String addr; - @ApiModelProperty(value = "鍐呭") - private String content; + @ApiModelProperty(value = "鍛婅鎬绘暟") + private int total; + @ApiModelProperty(value = "鍛婅鏁伴噺(鏈�杩�10鏉★級") + private List<WaningEventDataListVO> list; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarEventServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarEventServiceImpl.java index 0bc1de5..bbb7b8f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarEventServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarEventServiceImpl.java @@ -318,7 +318,6 @@ IPage<CarEvent> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); MPJLambdaWrapper<CarEvent> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); - queryWrapper .leftJoin(Member.class,Member::getId,CarEvent::getMemberId) .leftJoin(Company.class,Company::getId,Member::getCompanyId); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java index 168b829..b950337 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java @@ -381,6 +381,7 @@ bean.setUseRata( bean.getWorkCountTime().multiply(new BigDecimal(100)).divide(sumTime,BigDecimal.ROUND_HALF_DOWN,2) ); + bean.setUseRata(Constants.formatBigdecimal2Float(bean.getUseRata()));//寮哄埗淇濈暀涓や綅灏忔暟 } } return platformList; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java index 0a86005..f423fd2 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java @@ -133,6 +133,8 @@ @Autowired private EmayService emayService; + + @Override public Integer create(Visits visits) { visitsMapper.insert(visits); @@ -1262,10 +1264,7 @@ QueryWrapper<Visits> wrapper = new QueryWrapper<>(visits); return visitsMapper.selectCount(wrapper); } - - - @Override - public PageData<Visits> retentionPage(PageWrap<Visits> pageWrap) { + public static PageData<Visits> retentionPageBiz(PageWrap<Visits> pageWrap, VisitsJoinMapper visitsJoinMapper,SystemDictDataBiz systemDictDataBiz) { String code= systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.TIMEOUT_WARNING).getCode(); IPage<Visits> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>(); @@ -1277,9 +1276,7 @@ queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId); queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); queryWrapper.leftJoin(" member m on m.id= t.MEMBER_ID"); - queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getLevelStatus()),Visits::getStatus,Constants.VisitStatus.signin); - queryWrapper.apply(Objects.nonNull(pageWrap.getModel().getLevelStatus())," TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) <= "+code+" "); queryWrapper.ne("m.type ",Constants.TWO); @@ -1308,6 +1305,11 @@ return PageData.from(result); } + @Override + public PageData<Visits> retentionPage(PageWrap<Visits> pageWrap) { + return retentionPageBiz(pageWrap,visitsJoinMapper,systemDictDataBiz); + } + @Override diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java index 98a540a..58982cf 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java @@ -834,6 +834,44 @@ event.setPlatePicUrl(getHkImgUrl(request.getData().getPicUrl().getPlatePicUrl())); } if(StringUtils.isNotBlank(event.getPlateNos())){ + Cars carModel = carsMapper.selectJoinOne(Cars.class,new MPJLambdaWrapper<Cars>() + .selectAll(Cars.class ) + .selectAs(Company::getType,Cars::getCompanyType) + .leftJoin(Company.class,Company::getId,Cars::getGroupId) + .eq(Cars::getCode,event.getPlateNos()) + .eq(Cars::getIsdeleted,Constants.ZERO) + .last(" limit 1")); + if(carModel!=null){ + //0瀹夋嘲鍏姟杞� 1瀹夋嘲鑷湁鐗╂祦杞� 2鍏跺畠 + event.setMemberId(carModel.getMemberId()); + event.setCompanyId(carModel.getGroupId()); + if(Constants.equalsInteger(carModel.getType(),Constants.ONE)){ + event.setCarType(Constants.RetentionCarType.selfTruck); + }else { + if(Constants.equalsInteger(carModel.getCompanyType(),Constants.ONE)){ + event.setCarType(Constants.RetentionCarType.internal);//鍐呴儴杞﹁締 + }else{ + event.setCarType(Constants.RetentionCarType.relation);//鐩稿叧鏂硅溅杈� + } + } + } + PlatformJob carTypeJob = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getCarCodeFront,event.getPlateNos()) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .orderByAsc(PlatformJob::getCreateDate) + .last(" limit 1")); + if(carTypeJob!=null){ + //浣滀笟绫诲瀷 0鑷湁杞﹀嵏璐� 1鑷湁杞﹁璐� 2澶栧崗杞﹀嵏璐� 3澶栧崗杞﹁璐� 4甯傚叕鍙稿鍗忚溅鍗歌揣 + if(Constants.equalsInteger(carTypeJob.getType(),Constants.FOUR)){ + event.setCarType(Constants.RetentionCarType.cityComTruck);//甯傚叕鍙歌溅杈� + }else if(Constants.equalsInteger(carTypeJob.getType(),Constants.TWO) + || Constants.equalsInteger(carTypeJob.getType(),Constants.THREE)){ + event.setCarType(Constants.RetentionCarType.outTruck);//澶栧崗杞� + }else{ + event.setCarType(Constants.RetentionCarType.selfTruck);//鑷湁杞� + } + } + ParkBook cars = parkBookMapper.selectOne(new QueryWrapper<ParkBook>().lambda() .eq(ParkBook::getCarCode,event.getPlateNos()) .eq(ParkBook::getIsdeleted,Constants.ZERO ) @@ -884,9 +922,6 @@ } } }; - - - }else{ Visits visits = visitsMapper.selectOne(new QueryWrapper<Visits>().lambda() .eq(Visits::getCarNos,event.getPlateNos()) @@ -898,12 +933,13 @@ if(visits!=null){ //鏈�杩戜娇鐢ㄨ杞︾殑鐢宠浜猴紙宸插埌杈撅級 event.setMemberId(visits.getMemberId()); + event.setCarType(Constants.RetentionCarType.visitor); } } if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_IN.getKey()){ //濡傛灉鏄叆鍘傛斁琛� delRetentionList.add(event.getPlateNos()); - retentionList.add(getRetentionModelByParkRequest(request)); + retentionList.add(getRetentionModelByParkRequest(request,event)); inoutDayCount.setInCarNum(Constants.formatIntegerNum(inoutDayCount.getInCarNum())+1); }else if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_OUT.getKey()){ //濡傛灉鏄嚭鍦烘斁琛� @@ -914,12 +950,15 @@ return event; } - private Retention getRetentionModelByParkRequest(EventParkInfoRequest request) { + private Retention getRetentionModelByParkRequest(EventParkInfoRequest request,CarEvent event) { Retention retention = new Retention(); retention.setIsdeleted(Constants.ZERO); retention.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime())); retention.setCarNo(request.getData().getPlateNo()); retention.setType(Constants.THREE); + retention.setMemberId(event.getMemberId()); + retention.setCarType(event.getCarType()); + retention.setCompanyId(event.getCompanyId()); // retention.setDeviceName(request.getSrcName()); // retention.setDeviceIndex(request.getSrcIndex()); return retention; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java index 0be4d8b..2feae0f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java @@ -2,31 +2,35 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.haikang.model.HKConstants; import com.doumee.core.haikang.model.param.BaseListPageResponse; import com.doumee.core.haikang.model.param.BaseResponse; import com.doumee.core.haikang.model.param.BaseListPageRequest; -import com.doumee.core.haikang.model.param.request.RuleEventFiledOptionsRequest; -import com.doumee.core.haikang.model.param.request.RuleEventSearchRequest; -import com.doumee.core.haikang.model.param.request.SecureDevStatusTotalRequest; -import com.doumee.core.haikang.model.param.request.SensorStatusListRequest; +import com.doumee.core.haikang.model.param.request.*; import com.doumee.core.haikang.model.param.respose.*; import com.doumee.core.haikang.service.HKService; import com.doumee.core.model.ApiResponse; +import com.doumee.core.model.PageData; +import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; +import com.doumee.dao.business.join.VisitsJoinMapper; import com.doumee.dao.business.model.*; +import com.doumee.dao.system.model.SystemDictData; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; import com.doumee.dao.web.response.platformReport.*; import com.doumee.service.business.impl.PlatformJobServiceImpl; +import com.doumee.service.business.impl.VisitsServiceImpl; import com.doumee.service.business.third.BoardService; import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.checkerframework.checker.units.qual.C; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -45,6 +49,8 @@ @Autowired private PlatformLogMapper platformLogMapper; @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Autowired private PlatformWarnEventMapper platformWarnEventMapper; @Autowired private PlatformJobMapper platformJobMapper; @@ -52,6 +58,10 @@ private PlatformWmsDetailMapper platformWmsDetailMapper; @Autowired private PlatformMapper platformMapper; + @Autowired + private VisitsJoinMapper visitsJoinMapper; + @Autowired + private RetentionMapper retentionMapper; @Autowired private PlatformGroupMapper platformGroupMapper; /** @@ -93,7 +103,9 @@ return data; } private void initReginCameralList(List<PageRegionInfoResponse> allList,String name) { - List<CarmeraListVO> carmeraListVOList = cameraList(null); + CarmeraListVO re = new CarmeraListVO(); + re.setName(name); + List<CarmeraListVO> carmeraListVOList = cameraList(re); if(carmeraListVOList!=null && carmeraListVOList.size()>0){ for(PageRegionInfoResponse p : allList){ for(CarmeraListVO c : carmeraListVOList){ @@ -176,13 +188,15 @@ List<CarmeraListVO> data = new ArrayList<>(); for(PageCameraInfoResponse p : allList){ - CarmeraListVO t = new CarmeraListVO(); - t.setIndexCode(p.getCameraIndexCode()); - t.setReginCode(p.getRegionIndexCode()); - t.setName(p.getCameraName()); - t.setStatus(p.getStatus()); - t.setStatusName(p.getStatusName()); - data.add(t); + if(StringUtils.isBlank(req.getName()) ||StringUtils.contains(p.getCameraName(),req.getName())){ + CarmeraListVO t = new CarmeraListVO(); + t.setIndexCode(p.getCameraIndexCode()); + t.setReginCode(p.getRegionIndexCode()); + t.setName(p.getCameraName()); + t.setStatus(p.getStatus()); + t.setStatusName(p.getStatusName()); + data.add(t); + } } return data; } @@ -299,7 +313,10 @@ @Override public List<SecurityDeviceDataVO> securityDeviceData(){ List<SecurityDeviceDataVO> list = new ArrayList<>(); - BaseResponse<List<SecureDevStatusListResponse>> result = HKService.getSecureDevStatusList(new SecureDevStatusTotalRequest()) ; + SecureDevStatusTotalRequest request =new SecureDevStatusTotalRequest(); + request.setIncludeBool(""); + request.setRegionIds(new String[]{}); + BaseResponse<List<SecureDevStatusListResponse>> result = HKService.getSecureDevStatusList(request) ; if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ List<SecureDevStatusListResponse> rlist = result.getData(); for(SecureDevStatusListResponse r :rlist){ @@ -324,32 +341,172 @@ return list; } @Override - public List<WaningEventDataVO> warningEventData(Integer type){ - List<WaningEventDataVO> list = new ArrayList<>(); + public WaningEventDataVO warningEventData(Integer type){ + WaningEventDataVO lastResult = new WaningEventDataVO(); + List<WaningEventDataListVO> list = new ArrayList<>(); RuleEventSearchRequest request = new RuleEventSearchRequest(); + request.setPageNo(1); + request.setPageSize(10); request.setFiledOptions(new ArrayList<>()); + request.setSorts(new ArrayList<>()); RuleEventFiledOptionsRequest file = new RuleEventFiledOptionsRequest(); file.setFieldName("event_type"); file.setFieldValue("131588");//瀹夐槻鍛婅 - file.setType("eq"); + file.setType("in"); request.getFiledOptions().add(file); - BaseResponse< RuleEventSearchResponse> result = HKService.ruleEventSearch(request); + SortRequest sort = new SortRequest(); + sort.setSortField("happen_time"); + sort.setSortType("desc"); + request.getSorts().add(sort); + BaseResponse<BaseListPageResponse< RuleEventSearchDataResponse>> result = HKService.ruleEventSearch(request); if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ List<RuleEventSearchDataResponse> rlist = result.getData().getList(); + lastResult.setTotal(result.getData().getTotal()); if(rlist!=null){ + String privateIp =systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.EVENT_FILES_PRIVATE_DOMAIN).getCode(); + String publicIp =systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.EVENT_FILES_PUBLIC_DOMAIN).getCode(); for(RuleEventSearchDataResponse r :rlist){ - WaningEventDataVO data = new WaningEventDataVO(); + WaningEventDataListVO data = new WaningEventDataListVO(); data.setAddr(r.getSrc_name()); data.setImg(r.getImage_url()); + if(data.getImg()!=null){ + data.setImg(data.getImg().replace(privateIp,publicIp)); + } data.setTitle(r.getEvent_type_name()); - data.setCreateDate(r.getCreate_time()); + data.setCreateDate(DateUtil.getPlusTime(DateUtil.getISO8601DateByStr(r.getHappen_time()))); // data.setContent(r.get); list.add(data); } } } - return list; + lastResult.setList(list); + return lastResult; + } + @Override + public String getCarmeraPreviemUrl(CarmeraListVO param){ + CameraPreviewURLsRequest request = new CameraPreviewURLsRequest(); + request.setCameraIndexCode(param.getIndexCode()); + BaseResponse<CamerasPreviewURLsResponse> result = HKService.cameraPreviewURLs(request); + if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ + return result.getData().getUrl(); + + } + return null; + } + @Override + public VisitDataVO visitSecurityData(){ + //寰呰闂�佸凡鐧昏銆佸凡绂诲紑 + + VisitDataVO result = new VisitDataVO(); + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.pass,Constants.VisitStatus.xfSuccess )));//寰呰闂� + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.signout,Constants.VisitStatus.signin )));//宸茬櫥璁� + result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>() + .eq(Visits::getIsdeleted,Constants.ZERO) + .in(Visits::getStatus,Constants.VisitStatus.signout )));//宸茬绂� + PageWrap<Visits> pageWrap = new PageWrap<>(); + pageWrap.setCapacity(10); + pageWrap.setPage(1); + pageWrap.setModel(new Visits()); + pageWrap.getModel().setLevelStatus(Constants.ZERO); + pageWrap.getModel().setStatus(Constants.TWO); + PageData<Visits> visitsPageData = VisitsServiceImpl.retentionPageBiz(pageWrap,visitsJoinMapper,systemDictDataBiz); + List<VisitRetentionDataVO> list = new ArrayList<>(); + if(visitsPageData !=null && visitsPageData.getRecords() !=null && visitsPageData.getRecords().size()>0){ + for (Visits model : visitsPageData.getRecords()) { + VisitRetentionDataVO data = new VisitRetentionDataVO(); + data.setName(model.getName()); + data.setCompanyName(model.getCompanyName()); + data.setTimeOutMinute(Constants.formatIntegerNum(model.getTimeOut())); + list.add(data); + } + result.setRetentionNum(visitsPageData.getTotal()); + } + result.setVisitRetentionDataList(list);//璁垮婊炵暀鏁版嵁闆嗗悎 + return result; + + } + @Override + public SecurityBoardVO centerSecurityData(){ + + + SecurityBoardVO data = new SecurityBoardVO(); + getParkingCarsNum(data);//鑾峰彇杞︿綅鏁版嵁 + Random random = new Random(); + + List<Retention> retentionList = retentionMapper.selectJoinList(Retention.class, + new MPJLambdaWrapper<Retention>() + .selectAll(Retention.class) + .selectAs(Company::getType,Retention::getCompanyType) + .leftJoin(Company.class,Company::getId,Retention::getCompanyId) + ); + + //浠婃棩鍦ㄥ洯浜烘暟 + data.setInParkTotal( + (int) retentionList.stream().filter(i->!Constants.equalsInteger(i.getType(),Constants.THREE)).count() + ); + //鍦ㄥ洯闀挎湡鐩稿叧鏂逛汉鏁� + data.setInternalTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ZERO)).count() + ); + //鍦ㄥ洯璁垮鏁伴噺 + data.setVisitTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&Objects.isNull(i.getCompanyType())).count() + ); + //鍦ㄥ洯杞﹁締 + data.setInternalCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)).count() + ); + //鍦ㄥ洯鐩稿叧鏂硅溅杈� + data.setRelatedCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.relation)).count() + ); + //鍐呴儴杞﹁締 + data.setInternalCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.internal)).count() + ); + //鏉ヨ杞﹁締 + data.setVisitCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.visitor)).count() + ); + //鑷敱鐗╂祦杞︽暟閲� + data.setVisitCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.selfTruck)).count() + ); + //甯傚叕鍙稿嵏璐ц溅鏁伴噺 + data.setInternalJobCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.cityComTruck)).count() + ); + //澶栧崗杞︽暟閲� + data.setRelatedJobCarTotal( + (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE) + &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.outTruck)).count() + ); + return data; + } + + private void getParkingCarsNum(SecurityBoardVO data) { + try { + BaseResponse<ParkingStatisticResponse> response = HKService.getParkingStatistics(); + if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) || response.getData()==null + ||response.getData().getTodayParkingDataDto() == null){ + return; + } + data.setParkingLotTotal(Constants.formatIntegerNum(response.getData().getTodayParkingDataDto().getTotalPlace()));//鎬昏溅浣� + data.setFreeParkingLot(Constants.formatIntegerNum(response.getData().getTodayParkingDataDto().getLeftPlace()));//鍓╀綑杞︿綅 + data.setParkingUseRate(Constants.formatBigdecimal(response.getData().getTodayParkingDataDto().getUseRate()));//杞︿綅浣跨敤鐜� + }catch (Exception e){ + + } } @Override @@ -361,22 +518,6 @@ .eq(Platform::getIsdeleted, Constants.ZERO) .orderByAsc(Platform::getSortnum) ); - /** - * WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ), - * WART_SIGN_IN(1, "寰呯鍒�","寰呯鍒�" ), - * WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"), - * IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ), - * CALLED(4, "宸插彨鍙�","宸插彨鍙�" ), - * WORKING(5, "浣滀笟涓�","浣滀笟涓�" ), - * DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚" ), - * TRANSFERING(7, "杞Щ涓�","杞Щ涓�" ), - * EXCEPTION(8, "寮傚父鎸傝捣","寮傚父鎸傝捣" ), - * AUTHED_LEAVE(9, "宸叉巿鏉冪鍥�","宸叉巿鏉冪鍥�" ), - * LEAVED(10, "宸茬鍥� ","宸茬鍥� " ), - * OVER_NUMBER(11, "宸茶繃鍙�","宸茶繃鍙�" ), - * CANCEL(12, "宸插彇娑�","宸插彇娑�" ), - */ - if(platformList!=null && platformList.size()>0){ List<PlatformJob> jobList = platformJobMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll( PlatformJob.class) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java index c0597f8..6a061b6 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java @@ -51,5 +51,11 @@ List<SecurityDeviceDataVO> securityDeviceData(); - List<WaningEventDataVO> warningEventData(Integer type); + WaningEventDataVO warningEventData(Integer type); + + String getCarmeraPreviemUrl(CarmeraListVO param); + + SecurityBoardVO centerSecurityData(); + + VisitDataVO visitSecurityData(); } -- Gitblit v1.9.3