Commit 8a73bc9c04260a31a6604e941ba12016ec7d4b91
Merge branch 'branch_0808' of http://192.168.1.195:9998/ZTEITS-Developers/zteits…
…-bcp-portal.git into branch_0808
Showing
7 changed files
with
426 additions
and
233 deletions
.gitignore
1 | # Created by .ignore support plugin (hsz.mobi) | 1 | # Created by .ignore support plugin (hsz.mobi) |
2 | +### JetBrains template | ||
3 | +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm | ||
4 | +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 | ||
5 | + | ||
6 | +# User-specific stuff: | ||
7 | +.idea/**/workspace.xml | ||
8 | +.idea/**/tasks.xml | ||
9 | +.idea/dictionaries | ||
10 | + | ||
11 | +# Sensitive or high-churn files: | ||
12 | +.idea/**/dataSources/ | ||
13 | +.idea/**/dataSources.ids | ||
14 | +.idea/**/dataSources.xml | ||
15 | +.idea/**/dataSources.local.xml | ||
16 | +.idea/**/sqlDataSources.xml | ||
17 | +.idea/**/dynamic.xml | ||
18 | +.idea/**/uiDesigner.xml | ||
19 | + | ||
20 | +# Gradle: | ||
21 | +.idea/**/gradle.xml | ||
22 | +.idea/**/libraries | ||
23 | + | ||
24 | +# Mongo Explorer plugin: | ||
25 | +.idea/**/mongoSettings.xml | ||
26 | + | ||
27 | +## File-based project format: | ||
28 | +*.iws | ||
29 | + | ||
30 | +## Plugin-specific files: | ||
31 | + | ||
32 | +# IntelliJ | ||
33 | +/out/ | ||
34 | + | ||
35 | +# mpeltonen/sbt-idea plugin | ||
36 | +.idea_modules/ | ||
37 | + | ||
38 | +# JIRA plugin | ||
39 | +atlassian-ide-plugin.xml | ||
40 | + | ||
41 | +# Crashlytics plugin (for Android Studio and IntelliJ) | ||
42 | +com_crashlytics_export_strings.xml | ||
43 | +crashlytics.properties | ||
44 | +crashlytics-build.properties | ||
45 | +fabric.properties | ||
46 | +### Maven template | ||
47 | +target/ | ||
48 | +pom.xml.tag | ||
49 | +pom.xml.releaseBackup | ||
50 | +pom.xml.versionsBackup | ||
51 | +pom.xml.next | ||
52 | +release.properties | ||
53 | +dependency-reduced-pom.xml | ||
54 | +buildNumber.properties | ||
55 | +.mvn/timing.properties | ||
56 | + | ||
57 | +# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored) | ||
58 | +!/.mvn/wrapper/maven-wrapper.jar | ||
2 | ### macOS template | 59 | ### macOS template |
3 | *.DS_Store | 60 | *.DS_Store |
4 | .AppleDouble | 61 | .AppleDouble |
@@ -26,75 +83,5 @@ Icon | @@ -26,75 +83,5 @@ Icon | ||
26 | Network Trash Folder | 83 | Network Trash Folder |
27 | Temporary Items | 84 | Temporary Items |
28 | .apdisk | 85 | .apdisk |
29 | -### Maven template | ||
30 | -target/ | ||
31 | -pom.xml.tag | ||
32 | -pom.xml.releaseBackup | ||
33 | -pom.xml.versionsBackup | ||
34 | -pom.xml.next | ||
35 | -release.properties | ||
36 | -dependency-reduced-pom.xml | ||
37 | -buildNumber.properties | ||
38 | -.mvn/timing.properties | ||
39 | - | ||
40 | -# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored) | ||
41 | -!/.mvn/wrapper/maven-wrapper.jar | ||
42 | -### Eclipse template | ||
43 | - | ||
44 | -.metadata | ||
45 | -bin/ | ||
46 | -tmp/ | ||
47 | -*.tmp | ||
48 | -*.bak | ||
49 | -*.swp | ||
50 | -*~.nib | ||
51 | -local.properties | ||
52 | -.settings/ | ||
53 | -.loadpath | ||
54 | -.recommenders | ||
55 | - | ||
56 | -# Eclipse Core | ||
57 | -.project | ||
58 | - | ||
59 | -# External tool builders | ||
60 | -.externalToolBuilders/ | ||
61 | - | ||
62 | -# Locally stored "Eclipse launch configurations" | ||
63 | -*.launch | ||
64 | - | ||
65 | -# PyDev specific (Python IDE for Eclipse) | ||
66 | -*.pydevproject | ||
67 | - | ||
68 | -# CDT-specific (C/C++ Development Tooling) | ||
69 | -.cproject | ||
70 | - | ||
71 | -# JDT-specific (Eclipse Java Development Tools) | ||
72 | -.classpath | ||
73 | - | ||
74 | -# Java annotation processor (APT) | ||
75 | -.factorypath | ||
76 | - | ||
77 | -# PDT-specific (PHP Development Tools) | ||
78 | -.buildpath | ||
79 | - | ||
80 | -# sbteclipse plugin | ||
81 | -.target | ||
82 | - | ||
83 | -# Tern plugin | ||
84 | -.tern-project | ||
85 | - | ||
86 | -# TeXlipse plugin | ||
87 | -.texlipse | ||
88 | - | ||
89 | -# STS (Spring Tool Suite) | ||
90 | -.springBeans | ||
91 | - | ||
92 | -# Code Recommenders | ||
93 | -.recommenders/ | ||
94 | 86 | ||
95 | -# Scala IDE specific (Scala & Java development for Eclipse) | ||
96 | -.cache-main | ||
97 | -.scala_dependencies | ||
98 | -.worksheet | ||
99 | -.idea | ||
100 | *.iml | 87 | *.iml |
src/main/java/com/zteits/irain/portal/vo/fangle/BerthStateRequest.java
0 → 100644
1 | +package com.zteits.irain.portal.vo.fangle; | ||
2 | + | ||
3 | +import com.zteits.clouds.api.apibase.bean.BaseRequest; | ||
4 | + | ||
5 | +public class BerthStateRequest extends BaseRequest{ | ||
6 | + | ||
7 | + private static final long serialVersionUID = 1L; | ||
8 | + | ||
9 | + /**记录编号*/ | ||
10 | + private String log_id; | ||
11 | + | ||
12 | + /**泊位编码*/ | ||
13 | + private String berthcode; | ||
14 | + | ||
15 | + /**状态变更时间*/ | ||
16 | + private String changetime; | ||
17 | + | ||
18 | + /**泊位状态*/ | ||
19 | + private String berthstatus; | ||
20 | + | ||
21 | + /**电量*/ | ||
22 | + private String electricity; | ||
23 | + | ||
24 | + /**电压值*/ | ||
25 | + private String voltage; | ||
26 | + | ||
27 | + public String getLog_id() { | ||
28 | + return log_id; | ||
29 | + } | ||
30 | + | ||
31 | + public void setLog_id(String log_id) { | ||
32 | + this.log_id = log_id; | ||
33 | + } | ||
34 | + | ||
35 | + public String getBerthcode() { | ||
36 | + return berthcode; | ||
37 | + } | ||
38 | + | ||
39 | + public void setBerthcode(String berthcode) { | ||
40 | + this.berthcode = berthcode; | ||
41 | + } | ||
42 | + | ||
43 | + public String getChangetime() { | ||
44 | + return changetime; | ||
45 | + } | ||
46 | + | ||
47 | + public void setChangetime(String changetime) { | ||
48 | + this.changetime = changetime; | ||
49 | + } | ||
50 | + | ||
51 | + public String getBerthstatus() { | ||
52 | + return berthstatus; | ||
53 | + } | ||
54 | + | ||
55 | + public void setBerthstatus(String berthstatus) { | ||
56 | + this.berthstatus = berthstatus; | ||
57 | + } | ||
58 | + | ||
59 | + public String getElectricity() { | ||
60 | + return electricity; | ||
61 | + } | ||
62 | + | ||
63 | + public void setElectricity(String electricity) { | ||
64 | + this.electricity = electricity; | ||
65 | + } | ||
66 | + | ||
67 | + public String getVoltage() { | ||
68 | + return voltage; | ||
69 | + } | ||
70 | + | ||
71 | + public void setVoltage(String voltage) { | ||
72 | + this.voltage = voltage; | ||
73 | + } | ||
74 | + | ||
75 | + @Override | ||
76 | + public String toString() { | ||
77 | + return "BerthStateRequest [log_id=" + log_id + ", berthcode=" + berthcode + ", changetime=" + changetime | ||
78 | + + ", berthstatus=" + berthstatus + ", electricity=" + electricity + ", voltage=" + voltage + "]"; | ||
79 | + } | ||
80 | + | ||
81 | + | ||
82 | +} |
src/main/java/com/zteits/irain/portal/vo/fangle/EqpHeartBeatRequest.java
0 → 100644
1 | +package com.zteits.irain.portal.vo.fangle; | ||
2 | + | ||
3 | +import com.zteits.clouds.api.apibase.bean.BaseRequest; | ||
4 | + | ||
5 | +public class EqpHeartBeatRequest extends BaseRequest{ | ||
6 | + | ||
7 | + private static final long serialVersionUID = 1L; | ||
8 | + | ||
9 | + /**设备类型*/ | ||
10 | + private String EquipmentType; | ||
11 | + | ||
12 | + /**设备编号*/ | ||
13 | + private String EquipmentCode; | ||
14 | + | ||
15 | + /**设备状态*/ | ||
16 | + private String EquipmentStatus; | ||
17 | + | ||
18 | + /**推送时间*/ | ||
19 | + private String PushTime; | ||
20 | + | ||
21 | + public String getEquipmentType() { | ||
22 | + return EquipmentType; | ||
23 | + } | ||
24 | + | ||
25 | + public void setEquipmentType(String equipmentType) { | ||
26 | + EquipmentType = equipmentType; | ||
27 | + } | ||
28 | + | ||
29 | + public String getEquipmentCode() { | ||
30 | + return EquipmentCode; | ||
31 | + } | ||
32 | + | ||
33 | + public void setEquipmentCode(String equipmentCode) { | ||
34 | + EquipmentCode = equipmentCode; | ||
35 | + } | ||
36 | + | ||
37 | + public String getEquipmentStatus() { | ||
38 | + return EquipmentStatus; | ||
39 | + } | ||
40 | + | ||
41 | + public void setEquipmentStatus(String equipmentStatus) { | ||
42 | + EquipmentStatus = equipmentStatus; | ||
43 | + } | ||
44 | + | ||
45 | + public String getPushTime() { | ||
46 | + return PushTime; | ||
47 | + } | ||
48 | + | ||
49 | + public void setPushTime(String pushTime) { | ||
50 | + PushTime = pushTime; | ||
51 | + } | ||
52 | + | ||
53 | + @Override | ||
54 | + public String toString() { | ||
55 | + return "EqpHeartBeatRequest [EquipmentType=" + EquipmentType + ", EquipmentCode=" + EquipmentCode | ||
56 | + + ", EquipmentStatus=" + EquipmentStatus + ", PushTime=" + PushTime + "]"; | ||
57 | + } | ||
58 | + | ||
59 | + | ||
60 | +} |
src/main/java/com/zteits/irain/portal/web/fangle/FangleEqpController.java
@@ -3,9 +3,7 @@ package com.zteits.irain.portal.web.fangle; | @@ -3,9 +3,7 @@ package com.zteits.irain.portal.web.fangle; | ||
3 | import java.text.ParseException; | 3 | import java.text.ParseException; |
4 | import java.text.SimpleDateFormat; | 4 | import java.text.SimpleDateFormat; |
5 | import java.util.Date; | 5 | import java.util.Date; |
6 | -import java.util.HashMap; | ||
7 | import java.util.Map; | 6 | import java.util.Map; |
8 | -import java.util.Map.Entry; | ||
9 | 7 | ||
10 | import org.slf4j.Logger; | 8 | import org.slf4j.Logger; |
11 | import org.slf4j.LoggerFactory; | 9 | import org.slf4j.LoggerFactory; |
@@ -15,35 +13,18 @@ import org.springframework.beans.factory.annotation.Value; | @@ -15,35 +13,18 @@ import org.springframework.beans.factory.annotation.Value; | ||
15 | import org.springframework.web.bind.annotation.RequestBody; | 13 | import org.springframework.web.bind.annotation.RequestBody; |
16 | import org.springframework.web.bind.annotation.RequestMapping; | 14 | import org.springframework.web.bind.annotation.RequestMapping; |
17 | import org.springframework.web.bind.annotation.RequestMethod; | 15 | import org.springframework.web.bind.annotation.RequestMethod; |
18 | -import org.springframework.web.bind.annotation.RequestParam; | ||
19 | import org.springframework.web.bind.annotation.RestController; | 16 | import org.springframework.web.bind.annotation.RestController; |
20 | 17 | ||
21 | -import com.alibaba.dubbo.common.utils.StringUtils; | ||
22 | import com.alibaba.fastjson.JSON; | 18 | import com.alibaba.fastjson.JSON; |
23 | import com.alibaba.fastjson.JSONArray; | 19 | import com.alibaba.fastjson.JSONArray; |
24 | import com.alibaba.fastjson.JSONObject; | 20 | import com.alibaba.fastjson.JSONObject; |
25 | -import com.clouds.common.utils.ExceptionUtil; | ||
26 | import com.clouds.common.web.BizController; | 21 | import com.clouds.common.web.BizController; |
27 | import com.zteits.clouds.api.apibase.bean.BaseInfo; | 22 | import com.zteits.clouds.api.apibase.bean.BaseInfo; |
28 | import com.zteits.clouds.api.apibase.bean.BizResult; | 23 | import com.zteits.clouds.api.apibase.bean.BizResult; |
29 | -import com.zteits.clouds.api.apibase.constants.ErrorType; | ||
30 | -import com.zteits.clouds.api.apibase.exception.BizException; | ||
31 | -import com.zteits.clouds.api.dto.park.param.BerthStateRequest; | ||
32 | -import com.zteits.clouds.api.dto.park.param.EqpHeartBeatRequest; | ||
33 | import com.zteits.clouds.api.dto.park.param.EqpLogRequest; | 24 | import com.zteits.clouds.api.dto.park.param.EqpLogRequest; |
34 | -import com.zteits.clouds.api.dto.park.param.InParkingRequest; | ||
35 | -import com.zteits.clouds.api.dto.park.param.OutParkingRequest; | ||
36 | -import com.zteits.clouds.api.dto.park.param.InterfaceLogSaveRequest; | ||
37 | import com.zteits.clouds.api.service.park.EqpBerthsService; | 25 | import com.zteits.clouds.api.service.park.EqpBerthsService; |
38 | -import com.zteits.clouds.api.service.park.InterfaceLogService; | ||
39 | -import com.zteits.irain.portal.common.AESPlus; | ||
40 | -import com.zteits.irain.portal.common.HttpClientTutorial; | ||
41 | -import com.zteits.irain.portal.constant.IRainResultEnum; | ||
42 | -import com.zteits.irain.portal.constant.ParkConstant.InterfaceLog; | ||
43 | -import com.zteits.irain.portal.service.interfaces.inoutparklot.InOutParkLotReportService; | ||
44 | -import com.zteits.irain.portal.service.interfaces.inoutparklot.param.RecordInParkLotRequest; | ||
45 | -import com.zteits.irain.portal.service.interfaces.inoutparklot.param.RecordOutParkLotRequest; | ||
46 | -import com.zteits.irain.portal.vo.irain.IRainResponseVO; | 26 | +import com.zteits.irain.portal.vo.fangle.BerthStateRequest; |
27 | +import com.zteits.irain.portal.vo.fangle.EqpHeartBeatRequest; | ||
47 | 28 | ||
48 | import io.swagger.annotations.Api; | 29 | import io.swagger.annotations.Api; |
49 | import io.swagger.annotations.ApiOperation; | 30 | import io.swagger.annotations.ApiOperation; |
@@ -105,7 +86,7 @@ public class FangleEqpController extends BizController{ | @@ -105,7 +86,7 @@ public class FangleEqpController extends BizController{ | ||
105 | eqpLogRequest.setElectricity(request.getElectricity()); | 86 | eqpLogRequest.setElectricity(request.getElectricity()); |
106 | eqpLogRequest.setVoltag(request.getVoltage()); | 87 | eqpLogRequest.setVoltag(request.getVoltage()); |
107 | 88 | ||
108 | - BizResult<Map<String, String>> result = eqpBerthsService.synBerthState(eqpLogRequest); | 89 | + BizResult<Map<String, String>> result = eqpBerthsService.synEqpInfo(eqpLogRequest); |
109 | return result; | 90 | return result; |
110 | } | 91 | } |
111 | 92 | ||
@@ -149,7 +130,7 @@ public class FangleEqpController extends BizController{ | @@ -149,7 +130,7 @@ public class FangleEqpController extends BizController{ | ||
149 | } catch (ParseException e) { | 130 | } catch (ParseException e) { |
150 | e.printStackTrace(); | 131 | e.printStackTrace(); |
151 | } | 132 | } |
152 | - BizResult<Map<String, String>> result = eqpBerthsService.synBerthState(eqpLogRequest); | 133 | + BizResult<Map<String, String>> result = eqpBerthsService.synEqpInfo(eqpLogRequest); |
153 | return result; | 134 | return result; |
154 | } | 135 | } |
155 | 136 |
src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BillManageController.java
@@ -83,21 +83,17 @@ public class BillManageController extends BizController { | @@ -83,21 +83,17 @@ public class BillManageController extends BizController { | ||
83 | HttpServletResponse response) throws Exception { | 83 | HttpServletResponse response) throws Exception { |
84 | TdCustCompanyService sert = map.get("tdCustCompanyService"); | 84 | TdCustCompanyService sert = map.get("tdCustCompanyService"); |
85 | logger.info("---begin--日账汇总单查询调用后场dubbo服务,入参={}", JSONObject.toJSON(billQueryRequest)); | 85 | logger.info("---begin--日账汇总单查询调用后场dubbo服务,入参={}", JSONObject.toJSON(billQueryRequest)); |
86 | -// System.out.println("seesionId="+request.getSession().getId()); | ||
87 | -// UserInfo userInfo = sessionCommUtil.getUserInfo(); | ||
88 | -// logger.info("从session中获取的用户信息={}" + JSONObject.toJSONString(userInfo)); | ||
89 | -// TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); | ||
90 | -// if (userInfo != null) { | ||
91 | -// | ||
92 | -// tdCompanyParkQueryRequest.setSysCode(billQueryRequest.getSysCode()); | ||
93 | -// tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); | ||
94 | -// tdCompanyParkQueryRequest.setSessionId(request.getSession().getId()); | ||
95 | -// billQueryRequest.setParkIdList(this.queryParkNoByCustIds(tdCompanyParkQueryRequest)); | ||
96 | -// } | ||
97 | - // 2.调用接口查询当前登录人管辖的停车场名称 | ||
98 | - UserInfo userInfo = sessionCommUtil.getUserInfo(); | ||
99 | - List<String> plNos = userInfo.getOrgIds(); | ||
100 | - billQueryRequest.setParkIdList(plNos); | 86 | + System.out.println("seesionId="+request.getSession().getId()); |
87 | + UserInfo userInfo = sessionCommUtil.getUserInfo(); | ||
88 | + logger.info("从session中获取的用户信息={}" + JSONObject.toJSONString(userInfo)); | ||
89 | + TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); | ||
90 | + if (userInfo != null) { | ||
91 | + | ||
92 | + tdCompanyParkQueryRequest.setSysCode(billQueryRequest.getSysCode()); | ||
93 | + tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); | ||
94 | + tdCompanyParkQueryRequest.setSessionId(request.getSession().getId()); | ||
95 | + billQueryRequest.setParkIdList(userInfo.getOrgIds()); | ||
96 | + } | ||
101 | 97 | ||
102 | BizResult<PageBean<BillManageDTO>> result = billManageForDayService.queryBillforDayTotalForPage(billQueryRequest); | 98 | BizResult<PageBean<BillManageDTO>> result = billManageForDayService.queryBillforDayTotalForPage(billQueryRequest); |
103 | result.setErrMsg(billQueryRequest.getParkIdList().toString()); | 99 | result.setErrMsg(billQueryRequest.getParkIdList().toString()); |
@@ -119,25 +115,18 @@ public class BillManageController extends BizController { | @@ -119,25 +115,18 @@ public class BillManageController extends BizController { | ||
119 | HttpServletResponse response) throws Exception { | 115 | HttpServletResponse response) throws Exception { |
120 | BizResult<PageBean<BillManageDTO>> result = new BizResult<PageBean<BillManageDTO>>(); | 116 | BizResult<PageBean<BillManageDTO>> result = new BizResult<PageBean<BillManageDTO>>(); |
121 | logger.info("---begin---日账单查看调用后场dubbo服务,入参={}", JSONObject.toJSONString(billQueryRequest)); | 117 | logger.info("---begin---日账单查看调用后场dubbo服务,入参={}", JSONObject.toJSONString(billQueryRequest)); |
122 | -// TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); | ||
123 | -// UserInfo userInfo = (UserInfo) request.getSession().getAttribute(SessionEnum.USER_INFO.key()); | ||
124 | -// logger.info("从session中获取的用户信息={}" + JSONObject.toJSONString(userInfo)); | ||
125 | -// if (userInfo != null) { | ||
126 | -// | ||
127 | -// tdCompanyParkQueryRequest.setSysCode(billQueryRequest.getSysCode()); | ||
128 | -// tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); | ||
129 | -// tdCompanyParkQueryRequest.setSessionId(request.getSession().getId()); | ||
130 | -// billQueryRequest.setUserName(userInfo.getName()); | ||
131 | -// billQueryRequest.setParkIdList(this.queryParkNoByCustIds(tdCompanyParkQueryRequest)); | ||
132 | -// | ||
133 | -// } | ||
134 | - | ||
135 | - // 2.调用接口查询当前登录人管辖的停车场名称 | ||
136 | - UserInfo userInfo = sessionCommUtil.getUserInfo(); | ||
137 | - List<String> plNos = userInfo.getOrgIds(); | ||
138 | - billQueryRequest.setParkIdList(plNos); | ||
139 | - billQueryRequest.setUserName(userInfo.getName()); | ||
140 | - | 118 | + TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); |
119 | + UserInfo userInfo = (UserInfo) request.getSession().getAttribute(SessionEnum.USER_INFO.key()); | ||
120 | + logger.info("从session中获取的用户信息={}" + JSONObject.toJSONString(userInfo)); | ||
121 | + if (userInfo != null) { | ||
122 | + | ||
123 | + tdCompanyParkQueryRequest.setSysCode(billQueryRequest.getSysCode()); | ||
124 | + tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); | ||
125 | + tdCompanyParkQueryRequest.setSessionId(request.getSession().getId()); | ||
126 | + billQueryRequest.setUserName(userInfo.getName()); | ||
127 | + billQueryRequest.setParkIdList(this.queryParkNoByCustIds(tdCompanyParkQueryRequest)); | ||
128 | + | ||
129 | + } | ||
141 | result = billManageForDayService.queryBillforDayDeatilPage(billQueryRequest); | 130 | result = billManageForDayService.queryBillforDayDeatilPage(billQueryRequest); |
142 | logger.info("---end---日账单查看调用后场dubbo服务,结果={}", JSONObject.toJSON(result)); | 131 | logger.info("---end---日账单查看调用后场dubbo服务,结果={}", JSONObject.toJSON(result)); |
143 | 132 |
src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/IndexPageStatisticController.java
@@ -2,28 +2,21 @@ package com.zteits.irain.portal.web.parkinglotcloudplatform.datastatistic; | @@ -2,28 +2,21 @@ package com.zteits.irain.portal.web.parkinglotcloudplatform.datastatistic; | ||
2 | 2 | ||
3 | import java.math.BigDecimal; | 3 | import java.math.BigDecimal; |
4 | import java.math.RoundingMode; | 4 | import java.math.RoundingMode; |
5 | +import java.text.DecimalFormat; | ||
5 | import java.util.ArrayList; | 6 | import java.util.ArrayList; |
6 | import java.util.Calendar; | 7 | import java.util.Calendar; |
7 | import java.util.Date; | 8 | import java.util.Date; |
9 | +import java.util.HashMap; | ||
8 | import java.util.List; | 10 | import java.util.List; |
9 | import java.util.Map; | 11 | import java.util.Map; |
10 | import java.util.Map.Entry; | 12 | import java.util.Map.Entry; |
11 | 13 | ||
12 | import javax.validation.Valid; | 14 | import javax.validation.Valid; |
13 | 15 | ||
14 | -import org.slf4j.Logger; | ||
15 | -import org.slf4j.LoggerFactory; | ||
16 | -import org.springframework.beans.BeanUtils; | ||
17 | -import org.springframework.beans.factory.annotation.Autowired; | ||
18 | -import org.springframework.web.bind.annotation.PostMapping; | ||
19 | -import org.springframework.web.bind.annotation.RequestBody; | ||
20 | -import org.springframework.web.bind.annotation.RequestMapping; | ||
21 | -import org.springframework.web.bind.annotation.ResponseBody; | ||
22 | -import org.springframework.web.bind.annotation.RestController; | ||
23 | - | ||
24 | import com.alibaba.dubbo.common.utils.CollectionUtils; | 16 | import com.alibaba.dubbo.common.utils.CollectionUtils; |
25 | import com.alibaba.fastjson.JSON; | 17 | import com.alibaba.fastjson.JSON; |
26 | import com.alibaba.fastjson.JSONObject; | 18 | import com.alibaba.fastjson.JSONObject; |
19 | + | ||
27 | import com.clouds.common.cache.park.ParkingLotCacheUtil; | 20 | import com.clouds.common.cache.park.ParkingLotCacheUtil; |
28 | import com.clouds.common.utils.DateUtil; | 21 | import com.clouds.common.utils.DateUtil; |
29 | import com.clouds.common.utils.ResultUtils; | 22 | import com.clouds.common.utils.ResultUtils; |
@@ -37,16 +30,21 @@ import com.zteits.clouds.api.apibase.bean.PageBean; | @@ -37,16 +30,21 @@ import com.zteits.clouds.api.apibase.bean.PageBean; | ||
37 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeForPayTypeDTO; | 30 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeForPayTypeDTO; |
38 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeTotalDTO; | 31 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeTotalDTO; |
39 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeTotalParkDTO; | 32 | import com.zteits.clouds.api.dto.clouds.dto.CustIncomeTotalParkDTO; |
33 | +import com.zteits.clouds.api.dto.clouds.dto.ParkingCountDTO; | ||
40 | import com.zteits.clouds.api.dto.clouds.param.CustIncomeTotalQueryRequset; | 34 | import com.zteits.clouds.api.dto.clouds.param.CustIncomeTotalQueryRequset; |
41 | import com.zteits.clouds.api.dto.park.dto.ParkLotEqpTypeCountStatisticByCountryDTO; | 35 | import com.zteits.clouds.api.dto.park.dto.ParkLotEqpTypeCountStatisticByCountryDTO; |
42 | import com.zteits.clouds.api.dto.park.dto.ParkingLotDTO; | 36 | import com.zteits.clouds.api.dto.park.dto.ParkingLotDTO; |
43 | import com.zteits.clouds.api.dto.park.dto.ParkingLotUseStatisticDTO; | 37 | import com.zteits.clouds.api.dto.park.dto.ParkingLotUseStatisticDTO; |
38 | +import com.zteits.clouds.api.dto.park.dto.TodayVehicleFlowOccupyRateAndTurnOverDTO; | ||
39 | +import com.zteits.clouds.api.dto.park.param.CommonPlnosQueryRequest; | ||
44 | import com.zteits.clouds.api.dto.park.param.EqpTypeQueryByPlNosRequest; | 40 | import com.zteits.clouds.api.dto.park.param.EqpTypeQueryByPlNosRequest; |
45 | import com.zteits.clouds.api.dto.park.param.ParkingLotUseStatisticForPageRequest; | 41 | import com.zteits.clouds.api.dto.park.param.ParkingLotUseStatisticForPageRequest; |
46 | import com.zteits.clouds.api.dto.park.param.RealTimeVehicleFlowQueryRequest; | 42 | import com.zteits.clouds.api.dto.park.param.RealTimeVehicleFlowQueryRequest; |
47 | import com.zteits.clouds.api.service.clouds.CustIncomeService; | 43 | import com.zteits.clouds.api.service.clouds.CustIncomeService; |
48 | import com.zteits.clouds.api.service.park.IInOutParkingService; | 44 | import com.zteits.clouds.api.service.park.IInOutParkingService; |
45 | +import com.zteits.clouds.api.service.park.ParkingLotBerthsService; | ||
49 | import com.zteits.clouds.api.service.park.ParkingLotEqpService; | 46 | import com.zteits.clouds.api.service.park.ParkingLotEqpService; |
47 | +import com.zteits.clouds.api.service.park.ParkingLotQueryService; | ||
50 | import com.zteits.clouds.api.service.park.ParkingLotUseStatisticService; | 48 | import com.zteits.clouds.api.service.park.ParkingLotUseStatisticService; |
51 | import com.zteits.irain.portal.constant.ParkConstant; | 49 | import com.zteits.irain.portal.constant.ParkConstant; |
52 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.BerthsAndFlowLineChartVO; | 50 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.BerthsAndFlowLineChartVO; |
@@ -56,8 +54,16 @@ import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.CustInco | @@ -56,8 +54,16 @@ import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.CustInco | ||
56 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO; | 54 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO; |
57 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO.SerieVO; | 55 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO.SerieVO; |
58 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.ParkLotEqpTypeCountVO; | 56 | import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.ParkLotEqpTypeCountVO; |
59 | - | ||
60 | import io.swagger.annotations.ApiOperation; | 57 | import io.swagger.annotations.ApiOperation; |
58 | +import org.slf4j.Logger; | ||
59 | +import org.slf4j.LoggerFactory; | ||
60 | +import org.springframework.beans.BeanUtils; | ||
61 | +import org.springframework.beans.factory.annotation.Autowired; | ||
62 | +import org.springframework.web.bind.annotation.PostMapping; | ||
63 | +import org.springframework.web.bind.annotation.RequestBody; | ||
64 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
65 | +import org.springframework.web.bind.annotation.ResponseBody; | ||
66 | +import org.springframework.web.bind.annotation.RestController; | ||
61 | 67 | ||
62 | /** | 68 | /** |
63 | * Copyright: Copyright (c) 2017 zteits | 69 | * Copyright: Copyright (c) 2017 zteits |
@@ -89,7 +95,13 @@ public class IndexPageStatisticController extends BizController { | @@ -89,7 +95,13 @@ public class IndexPageStatisticController extends BizController { | ||
89 | private ParkingLotUseStatisticService parkingLotStatisticService; | 95 | private ParkingLotUseStatisticService parkingLotStatisticService; |
90 | @Autowired | 96 | @Autowired |
91 | private ParkingLotEqpService parkingLotEqpService; | 97 | private ParkingLotEqpService parkingLotEqpService; |
92 | - | 98 | + |
99 | + @Autowired | ||
100 | + private ParkingLotQueryService parkingLotQueryService; | ||
101 | + | ||
102 | + @Autowired | ||
103 | + private ParkingLotBerthsService parkingLotBerthsService; | ||
104 | + | ||
93 | /** | 105 | /** |
94 | * 云平台首页->企业客户负责所有的停车场汇总.<br/> | 106 | * 云平台首页->企业客户负责所有的停车场汇总.<br/> |
95 | * | 107 | * |
@@ -101,7 +113,7 @@ public class IndexPageStatisticController extends BizController { | @@ -101,7 +113,7 @@ public class IndexPageStatisticController extends BizController { | ||
101 | public BizResultVO<CustIncomeTotalVO> queryCustIncomeTotal( | 113 | public BizResultVO<CustIncomeTotalVO> queryCustIncomeTotal( |
102 | @RequestBody CustIncomeTotalQueryRequset custIncomeTotalQueryRequset) | 114 | @RequestBody CustIncomeTotalQueryRequset custIncomeTotalQueryRequset) |
103 | throws Exception { | 115 | throws Exception { |
104 | - | 116 | + logger.info("---begin企业云平台首页-实际收入查询,入参={}",JSONObject.toJSON(custIncomeTotalQueryRequset)); |
105 | BizResultVO<CustIncomeTotalVO> bizResultVO = new BizResultVO<>(); | 117 | BizResultVO<CustIncomeTotalVO> bizResultVO = new BizResultVO<>(); |
106 | 118 | ||
107 | BizResult<CustIncomeTotalDTO> result = cusIncomeService.queryCustIncomeTotal(custIncomeTotalQueryRequset); | 119 | BizResult<CustIncomeTotalDTO> result = cusIncomeService.queryCustIncomeTotal(custIncomeTotalQueryRequset); |
@@ -118,13 +130,13 @@ public class IndexPageStatisticController extends BizController { | @@ -118,13 +130,13 @@ public class IndexPageStatisticController extends BizController { | ||
118 | vo.setPayedTotalAmount(result.getData().getPayedTotalAmount().setScale(2, BigDecimal.ROUND_HALF_UP).toString()); | 130 | vo.setPayedTotalAmount(result.getData().getPayedTotalAmount().setScale(2, BigDecimal.ROUND_HALF_UP).toString()); |
119 | 131 | ||
120 | bizResultVO.setData(vo); | 132 | bizResultVO.setData(vo); |
121 | - | 133 | + logger.info("---end企业云平台首页-实际收入查询"); |
122 | return bizResultVO; | 134 | return bizResultVO; |
123 | } | 135 | } |
124 | 136 | ||
125 | /** | 137 | /** |
126 | * 云平台首页->企业客户负责某个停车收入情况.<br/> | 138 | * 云平台首页->企业客户负责某个停车收入情况.<br/> |
127 | - * | 139 | + * |
128 | * @return | 140 | * @return |
129 | * @throws Exception | 141 | * @throws Exception |
130 | */ | 142 | */ |
@@ -150,8 +162,6 @@ public class IndexPageStatisticController extends BizController { | @@ -150,8 +162,6 @@ public class IndexPageStatisticController extends BizController { | ||
150 | BigDecimal escapeAmount = dto.getEscapeAmount(); | 162 | BigDecimal escapeAmount = dto.getEscapeAmount(); |
151 | BigDecimal payedTotalAmount = dto.getPayedTotalAmount(); | 163 | BigDecimal payedTotalAmount = dto.getPayedTotalAmount(); |
152 | 164 | ||
153 | - | ||
154 | - | ||
155 | CustIncomeTotalParkVO vo = new CustIncomeTotalParkVO(); | 165 | CustIncomeTotalParkVO vo = new CustIncomeTotalParkVO(); |
156 | 166 | ||
157 | //金额为分 | 167 | //金额为分 |
@@ -160,13 +170,14 @@ public class IndexPageStatisticController extends BizController { | @@ -160,13 +170,14 @@ public class IndexPageStatisticController extends BizController { | ||
160 | vo.setPayedTotalAmount(payedTotalAmount.setScale(2, BigDecimal.ROUND_HALF_UP).toString()); | 170 | vo.setPayedTotalAmount(payedTotalAmount.setScale(2, BigDecimal.ROUND_HALF_UP).toString()); |
161 | //占比乘以100取两位小数 | 171 | //占比乘以100取两位小数 |
162 | //应收 | 172 | //应收 |
163 | - if (null == amountDueTotal || amountDueTotal.doubleValue()==0) { | 173 | + if (null == amountDueTotal || amountDueTotal.doubleValue() == 0) { |
164 | vo.setLoopData(1, "00.00"); | 174 | vo.setLoopData(1, "00.00"); |
165 | vo.setLoopData(2, "00.00"); | 175 | vo.setLoopData(2, "00.00"); |
166 | 176 | ||
167 | } else { | 177 | } else { |
168 | //实收 | 178 | //实收 |
169 | - vo.setLoopData(1, payedTotalAmount.divide(amountDueTotal, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100.00")) | 179 | + vo.setLoopData(1, payedTotalAmount.divide(amountDueTotal, 4, BigDecimal.ROUND_HALF_UP).multiply( |
180 | + new BigDecimal("100.00")) | ||
170 | .setScale(2, BigDecimal.ROUND_HALF_UP).toString()); | 181 | .setScale(2, BigDecimal.ROUND_HALF_UP).toString()); |
171 | //逃逸 | 182 | //逃逸 |
172 | vo.setLoopData(2, escapeAmount.divide(amountDueTotal, 4, BigDecimal.ROUND_HALF_UP).multiply( | 183 | vo.setLoopData(2, escapeAmount.divide(amountDueTotal, 4, BigDecimal.ROUND_HALF_UP).multiply( |
@@ -180,57 +191,31 @@ public class IndexPageStatisticController extends BizController { | @@ -180,57 +191,31 @@ public class IndexPageStatisticController extends BizController { | ||
180 | 191 | ||
181 | /** | 192 | /** |
182 | * 云平台首页->企业客户负责某个停车不同的支付方式收入情况.<br/> | 193 | * 云平台首页->企业客户负责某个停车不同的支付方式收入情况.<br/> |
183 | - * | 194 | + * 说明: |
195 | + * 1.2017-08-22将支付方式更改为饼图.<br/> | ||
184 | * @return | 196 | * @return |
185 | * @throws Exception | 197 | * @throws Exception |
186 | */ | 198 | */ |
199 | + | ||
187 | @ApiOperation("企业客户负责某个停车不同的支付方式收入情况") | 200 | @ApiOperation("企业客户负责某个停车不同的支付方式收入情况") |
188 | @PostMapping("/queryCustIncomeForPayType") | 201 | @PostMapping("/queryCustIncomeForPayType") |
189 | - public BizResultVO<CustIncomeForPayTypeResVO> queryCustIncomeForPayType( | 202 | + public BizResultVO<List<CustIncomeForPayTypeDTO>> queryCustIncomeForPayType( |
190 | @RequestBody CustIncomeTotalQueryRequset custIncomeTotalQueryRequset) throws Exception { | 203 | @RequestBody CustIncomeTotalQueryRequset custIncomeTotalQueryRequset) throws Exception { |
191 | - logger.info("调用后场dubbo服务,入参为: request={}", JSONObject.toJSONString(custIncomeTotalQueryRequset)); | 204 | + logger.info("...begin企业客户负责某个停车不同的支付方式收入情况,入参为: request={}", JSONObject.toJSONString(custIncomeTotalQueryRequset)); |
192 | BizResult<List<CustIncomeForPayTypeDTO>> result = cusIncomeService.queryCustIncomeForPayType( | 205 | BizResult<List<CustIncomeForPayTypeDTO>> result = cusIncomeService.queryCustIncomeForPayType( |
193 | custIncomeTotalQueryRequset); | 206 | custIncomeTotalQueryRequset); |
207 | + logger.info("...end企业客户负责某个停车不同的支付方式收入情况,响应为: result={}", JSONObject.toJSONString(result)); | ||
208 | + return new BizResultVO<List<CustIncomeForPayTypeDTO>>(result); | ||
209 | + } | ||
194 | 210 | ||
195 | - logger.info("调用后场dubbo服务,响应为: result={}", JSONObject.toJSONString(result)); | ||
196 | - //如果不成功 | ||
197 | - if (!ResultUtils.isSuccess(result)) { | ||
198 | - return new BizResultVO<>(result.getErrCode(), result.getErrMsg()); | ||
199 | - } | ||
200 | - List<CustIncomeForPayTypeDTO> data = result.getData(); | ||
201 | - | ||
202 | - CustIncomeForPayTypeResVO res = new CustIncomeForPayTypeResVO(); | ||
203 | - res.addLegendData("费用", "占比"); | ||
204 | - | ||
205 | - BigDecimal total = BigDecimal.ZERO; | ||
206 | - List<String> amount = new ArrayList<>(); | ||
207 | - for (CustIncomeForPayTypeDTO dto : data) { | ||
208 | - //添加X轴数据 | ||
209 | - res.addXAxisData(dto.getPayTypeName()); | ||
210 | - total = total.add(dto.getPayedTotalAmount()); | ||
211 | - logger.info("返回的类型 和 数据为: payTypeName={},payedTotalAmount={},total={}", dto.getPayTypeName(), | ||
212 | - dto.getPayedTotalAmount().toString(), total.toString()); | ||
213 | - amount.add(dto.getPayedTotalAmount().setScale(2, BigDecimal.ROUND_HALF_UP) | ||
214 | - .doubleValue() + ""); | ||
215 | - } | ||
216 | - //计算占比 | ||
217 | - List<String> zb = new ArrayList<>(); | ||
218 | - for (CustIncomeForPayTypeDTO dto : data) { | ||
219 | - logger.info("计算占比 total={}", total.toString()); | ||
220 | - if (BigDecimal.ZERO.equals(total) || total.doubleValue() == 0.00) { | ||
221 | - zb.add("0.00"); | ||
222 | - } else { | ||
223 | - zb.add(dto.getPayedTotalAmount().divide(total, 4, RoundingMode.HALF_UP) | ||
224 | - .multiply(new BigDecimal("100.00")).doubleValue() + ""); | ||
225 | - } | 211 | + @ApiOperation("查询今日车流量占用率周转率") |
212 | + @PostMapping("/queryTodayVehicleFlowOccupyRateAndTurnOver") | ||
213 | + public BizResultVO<List<TodayVehicleFlowOccupyRateAndTurnOverDTO>> queryTodayVehicleFlowOccupyRateAndTurnOver( | ||
214 | + @RequestBody CommonPlnosQueryRequest request) { | ||
215 | + BizResult<List<TodayVehicleFlowOccupyRateAndTurnOverDTO>> bizResult = parkingLotStatisticService | ||
216 | + .queryTodayVehicleFlowOccupyRateAndTurnOver(request); | ||
217 | + return new BizResultVO<>(bizResult); | ||
226 | 218 | ||
227 | - } | ||
228 | - res.addChildData("费用", amount); | ||
229 | - res.addChildData("占比", zb); | ||
230 | - BizResultVO<CustIncomeForPayTypeResVO> resResult = new BizResultVO<>(); | ||
231 | - resResult.setData(res); | ||
232 | - logger.info("返回到前台的数据为: res={}", JSONObject.toJSONString(res)); | ||
233 | - return resResult; | ||
234 | } | 219 | } |
235 | 220 | ||
236 | /** | 221 | /** |
@@ -240,10 +225,11 @@ public class IndexPageStatisticController extends BizController { | @@ -240,10 +225,11 @@ public class IndexPageStatisticController extends BizController { | ||
240 | * @return 2017年6月19日 zhaowg | 225 | * @return 2017年6月19日 zhaowg |
241 | */ | 226 | */ |
242 | @ApiOperation("根据停车场编号获取该停车场今日车流量和车位折线图") | 227 | @ApiOperation("根据停车场编号获取该停车场今日车流量和车位折线图") |
243 | - @PostMapping("getTodayVehicleFlowForLineChart") | 228 | + @PostMapping("/getTodayVehicleFlowForLineChart") |
229 | + @Deprecated | ||
244 | public BizResultVO<BerthsAndFlowLineChartVO> getTodayVehicleFlowForLineChart( | 230 | public BizResultVO<BerthsAndFlowLineChartVO> getTodayVehicleFlowForLineChart( |
245 | @RequestBody @Valid ParkingLotUseStatisticForPageRequest request) { | 231 | @RequestBody @Valid ParkingLotUseStatisticForPageRequest request) { |
246 | - logger.info("根据停车场编号获取该停车场今日车流量和车位折线图"); | 232 | + logger.info("根据停车场编号获取该停车场今日车流量和车位折线图"); |
247 | //开始时间 今日0点开始 | 233 | //开始时间 今日0点开始 |
248 | Calendar beginTime = Calendar.getInstance(); | 234 | Calendar beginTime = Calendar.getInstance(); |
249 | beginTime.set(Calendar.HOUR_OF_DAY, 0); | 235 | beginTime.set(Calendar.HOUR_OF_DAY, 0); |
@@ -280,7 +266,7 @@ public class IndexPageStatisticController extends BizController { | @@ -280,7 +266,7 @@ public class IndexPageStatisticController extends BizController { | ||
280 | //每20分钟统计一次 | 266 | //每20分钟统计一次 |
281 | request.setQueryKind(ParkConstant.ParkingLotUseStatistic.StatisticType.PER20MINUTE); | 267 | request.setQueryKind(ParkConstant.ParkingLotUseStatistic.StatisticType.PER20MINUTE); |
282 | request.setBaseRequest(new BaseInfo(1, 0)); | 268 | request.setBaseRequest(new BaseInfo(1, 0)); |
283 | - logger.info("调用DUBBO服务入参:"+JSON.toJSONString(request)); | 269 | + logger.info("调用DUBBO服务入参:" + JSON.toJSONString(request)); |
284 | BizResult<PageBean<ParkingLotUseStatisticDTO>> bizResult = parkingLotStatisticService | 270 | BizResult<PageBean<ParkingLotUseStatisticDTO>> bizResult = parkingLotStatisticService |
285 | .queryParkingLotUseStatisticForPage(request); | 271 | .queryParkingLotUseStatisticForPage(request); |
286 | PageBean<ParkingLotUseStatisticDTO> pageBean = ResultUtils.getBizResultData(bizResult); | 272 | PageBean<ParkingLotUseStatisticDTO> pageBean = ResultUtils.getBizResultData(bizResult); |
@@ -312,19 +298,21 @@ public class IndexPageStatisticController extends BizController { | @@ -312,19 +298,21 @@ public class IndexPageStatisticController extends BizController { | ||
312 | } | 298 | } |
313 | 299 | ||
314 | //保存固定车流量和临时车流量 | 300 | //保存固定车流量和临时车流量 |
315 | - fixVehicleFlowMap.put(statisBeginTime, (fixVehicleFlowMap.get(statisBeginTime)==null?0:fixVehicleFlowMap.get(statisBeginTime))+statisticDTO.getFixVehicleFlow()); | ||
316 | - tmpVehicleFlowMap.put(statisBeginTime, (tmpVehicleFlowMap.get(statisBeginTime)==null?0:tmpVehicleFlowMap.get(statisBeginTime))+statisticDTO.getTmpVehicleFlow()); | 301 | + fixVehicleFlowMap.put(statisBeginTime, (fixVehicleFlowMap.get(statisBeginTime) == null ? 0 |
302 | + : fixVehicleFlowMap.get(statisBeginTime)) + statisticDTO.getFixVehicleFlow()); | ||
303 | + tmpVehicleFlowMap.put(statisBeginTime, (tmpVehicleFlowMap.get(statisBeginTime) == null ? 0 | ||
304 | + : tmpVehicleFlowMap.get(statisBeginTime)) + statisticDTO.getTmpVehicleFlow()); | ||
305 | + } | ||
306 | + } | ||
307 | + //判断是否包含所有待查询的停车场信息 | ||
308 | + if (request.getPlNos().size() > parkLotMap.size()) { | ||
309 | + for (String plNo : request.getPlNos()) { | ||
310 | + if (!parkLotMap.containsKey(plNo)) { | ||
311 | + ParkingLotDTO parkingLotDTO = ParkingLotCacheUtil.getParkLotByPlNo(plNo); | ||
312 | + parkNameMap.put(plNo, parkingLotDTO.getPlName()); | ||
313 | + parkLotMap.put(plNo, Maps.newHashMap()); | ||
314 | + } | ||
317 | } | 315 | } |
318 | - } | ||
319 | - //判断是否包含所有待查询的停车场信息 | ||
320 | - if(request.getPlNos().size()>parkLotMap.size()){ | ||
321 | - for (String plNo:request.getPlNos()) { | ||
322 | - if(!parkLotMap.containsKey(plNo)){ | ||
323 | - ParkingLotDTO parkingLotDTO=ParkingLotCacheUtil.getParkLotByPlNo(plNo); | ||
324 | - parkNameMap.put(plNo, parkingLotDTO.getPlName()); | ||
325 | - parkLotMap.put(plNo, Maps.newHashMap()); | ||
326 | - } | ||
327 | - } | ||
328 | } | 316 | } |
329 | //封装车位统计信息 | 317 | //封装车位统计信息 |
330 | LineChartVO freeBerthRatios = new LineChartVO(); | 318 | LineChartVO freeBerthRatios = new LineChartVO(); |
@@ -348,8 +336,8 @@ public class IndexPageStatisticController extends BizController { | @@ -348,8 +336,8 @@ public class IndexPageStatisticController extends BizController { | ||
348 | for (String timestamp : xAxisData) { | 336 | for (String timestamp : xAxisData) { |
349 | if (freeRatioMaps.containsKey(timestamp)) { | 337 | if (freeRatioMaps.containsKey(timestamp)) { |
350 | lastFreeRatio = freeRatioMaps.get(timestamp).intValue(); | 338 | lastFreeRatio = freeRatioMaps.get(timestamp).intValue(); |
351 | - }else{ | ||
352 | - lastFreeRatio = 0; | 339 | + } else { |
340 | + lastFreeRatio = 0; | ||
353 | } | 341 | } |
354 | freeRations.add(lastFreeRatio); | 342 | freeRations.add(lastFreeRatio); |
355 | } | 343 | } |
@@ -381,15 +369,15 @@ public class IndexPageStatisticController extends BizController { | @@ -381,15 +369,15 @@ public class IndexPageStatisticController extends BizController { | ||
381 | for (String timestamp : xAxisData) { | 369 | for (String timestamp : xAxisData) { |
382 | if (fixVehicleFlowMap.containsKey(timestamp)) { | 370 | if (fixVehicleFlowMap.containsKey(timestamp)) { |
383 | lastfixFlow = fixVehicleFlowMap.get(timestamp).intValue(); | 371 | lastfixFlow = fixVehicleFlowMap.get(timestamp).intValue(); |
384 | - }else{ | ||
385 | - lastfixFlow = 0; | 372 | + } else { |
373 | + lastfixFlow = 0; | ||
386 | } | 374 | } |
387 | fixSerieVoData.add(lastfixFlow); | 375 | fixSerieVoData.add(lastfixFlow); |
388 | 376 | ||
389 | if (tmpVehicleFlowMap.containsKey(timestamp)) { | 377 | if (tmpVehicleFlowMap.containsKey(timestamp)) { |
390 | lasttmpFlow = tmpVehicleFlowMap.get(timestamp).intValue(); | 378 | lasttmpFlow = tmpVehicleFlowMap.get(timestamp).intValue(); |
391 | - }else{ | ||
392 | - lasttmpFlow = 0; | 379 | + } else { |
380 | + lasttmpFlow = 0; | ||
393 | } | 381 | } |
394 | tmpSerieVoData.add(lasttmpFlow); | 382 | tmpSerieVoData.add(lasttmpFlow); |
395 | } | 383 | } |
@@ -417,6 +405,102 @@ public class IndexPageStatisticController extends BizController { | @@ -417,6 +405,102 @@ public class IndexPageStatisticController extends BizController { | ||
417 | } | 405 | } |
418 | 406 | ||
419 | /** | 407 | /** |
408 | + * 实时统计今日停车次数,停车次数以出场时间进行统计 | ||
409 | + * | ||
410 | + * @return | ||
411 | + */ | ||
412 | + @ApiOperation("实时查询当前停车次数") | ||
413 | + @PostMapping("/realtimeParkingOutNum") | ||
414 | + public BizResultVO<Long> realtimeParkingOutNum(@RequestBody CommonPlnosQueryRequest request) { | ||
415 | + BizResult<Long> bizResult = iInOutParkingService.queryRealTimeOutParkNumOfPlNos(request); | ||
416 | + return new BizResultVO<>(bizResult); | ||
417 | + } | ||
418 | + | ||
419 | + /** | ||
420 | + * 今日实时周转率 | ||
421 | + * | ||
422 | + * @param request | ||
423 | + * @return | ||
424 | + * @desc 今日实时进场次数/总车位数 | ||
425 | + */ | ||
426 | + @ApiOperation("实时查询当前周转率") | ||
427 | + @PostMapping("/realtimeTurnoverRate") | ||
428 | + public BizResultVO<Map<String,Object>> realtimeTurnoverRate(@RequestBody CommonPlnosQueryRequest request) { | ||
429 | + BizResultVO<Map<String,Object>> res = new BizResultVO<>(); | ||
430 | + Map<String,Object> resMap = new HashMap<>(); | ||
431 | + //1、查询截止当前进场停车次数 | ||
432 | + BizResult<Long> bizResult = iInOutParkingService.queryRealTimeInParkNumOfPlNos(request); | ||
433 | + if(ResultUtils.isError(bizResult)){ | ||
434 | + res.setCode(bizResult.getErrCode().getCode()); | ||
435 | + res.setMsg(bizResult.getErrMsg()); | ||
436 | + return res; | ||
437 | + } | ||
438 | + //2、根据停车场编号查询停车场总车位数 | ||
439 | + BizResult<Long> berthResult = parkingLotQueryService.queryBerthNumByPlNos(request); | ||
440 | + if(ResultUtils.isError(berthResult)){ | ||
441 | + res.setCode(berthResult.getErrCode().getCode()); | ||
442 | + res.setMsg(berthResult.getErrMsg()); | ||
443 | + return res; | ||
444 | + } | ||
445 | + | ||
446 | + //停车次数 | ||
447 | + resMap.put("parkNum",bizResult.getData()); | ||
448 | + //总车位数 | ||
449 | + resMap.put("allBerthNum",berthResult.getData()); | ||
450 | + double rate = bizResult.getData() * 1.0 / berthResult.getData() * 100; | ||
451 | + String rateStr = new DecimalFormat("#.00").format(rate); | ||
452 | + if(rate == 0){ | ||
453 | + rateStr = "0.00"; | ||
454 | + } | ||
455 | + resMap.put("rate",rateStr); | ||
456 | + res.setData(resMap); | ||
457 | + return res; | ||
458 | + } | ||
459 | + | ||
460 | + /** | ||
461 | + * 今日实时占用率 | ||
462 | + * | ||
463 | + * @param request | ||
464 | + * @return | ||
465 | + * @desc 1-(今日实时空余车位数/总车位数) | ||
466 | + */ | ||
467 | + @ApiOperation("实时查询当前占用率") | ||
468 | + @PostMapping("/realtimeoccupationRate") | ||
469 | + public BizResultVO<Map<String,Object>> realtimeoccupationRate(@RequestBody CommonPlnosQueryRequest request) { | ||
470 | + BizResultVO<Map<String,Object>> res = new BizResultVO<>(); | ||
471 | + Map<String,Object> resMap = new HashMap<>(); | ||
472 | + | ||
473 | + //1、查询截止当前空余车位数 | ||
474 | + BizResult<Long> bizResult = parkingLotBerthsService.queryAllFreeBerthNum(request); | ||
475 | + if(ResultUtils.isError(bizResult)){ | ||
476 | + res.setCode(bizResult.getErrCode().getCode()); | ||
477 | + res.setMsg(bizResult.getErrMsg()); | ||
478 | + return res; | ||
479 | + } | ||
480 | + //2、根据停车场编号查询停车场总车位数 | ||
481 | + BizResult<Long> berthResult = parkingLotQueryService.queryBerthNumByPlNos(request); | ||
482 | + if(ResultUtils.isError(berthResult)){ | ||
483 | + res.setCode(berthResult.getErrCode().getCode()); | ||
484 | + res.setMsg(berthResult.getErrMsg()); | ||
485 | + return res; | ||
486 | + } | ||
487 | + //空余车位数 | ||
488 | + resMap.put("freeBerthNum",bizResult.getData()); | ||
489 | + //总车位数 | ||
490 | + resMap.put("allBerthNum",berthResult.getData()); | ||
491 | + | ||
492 | + double rate = (1-bizResult.getData() * 1.0 / berthResult.getData()) * 100; | ||
493 | + String rateStr = new DecimalFormat("#.00").format(rate); | ||
494 | + if(rate == 0){ | ||
495 | + rateStr = "0.00"; | ||
496 | + } | ||
497 | + resMap.put("rate",rateStr); | ||
498 | + res.setData(resMap); | ||
499 | + return res; | ||
500 | + | ||
501 | + } | ||
502 | + | ||
503 | + /** | ||
420 | * 实时查询今日空置率<br> | 504 | * 实时查询今日空置率<br> |
421 | * 今日空置率:当天0:00到操作时间的每个时间戳的空置率做加权算法,<br> | 505 | * 今日空置率:当天0:00到操作时间的每个时间戳的空置率做加权算法,<br> |
422 | * 0:00-7:00加权10%,7:00-9:00加权40%,9:00-17:00加权15%,17:00-21:00加权25%,21:00-24:00加权10%,加权后的空置率之和除以时间戳数,得到“今日空置率” | 506 | * 0:00-7:00加权10%,7:00-9:00加权40%,9:00-17:00加权15%,17:00-21:00加权25%,21:00-24:00加权10%,加权后的空置率之和除以时间戳数,得到“今日空置率” |
@@ -447,13 +531,13 @@ public class IndexPageStatisticController extends BizController { | @@ -447,13 +531,13 @@ public class IndexPageStatisticController extends BizController { | ||
447 | Double totalfreeRatio = 0.00; | 531 | Double totalfreeRatio = 0.00; |
448 | for (ParkingLotUseStatisticDTO statisticDTO : pageBean.getDataList()) { | 532 | for (ParkingLotUseStatisticDTO statisticDTO : pageBean.getDataList()) { |
449 | totalfreeRatio += statisticDTO.getFreeRatio(); | 533 | totalfreeRatio += statisticDTO.getFreeRatio(); |
450 | - //暂时不加权 | ||
451 | - //this.weightForFreeRation(statisticDTO.getStatisticBeginTime(), | ||
452 | - //statisticDTO.getFreeRatio(), statisticDTO.getPlNo()); | 534 | + //暂时不加权 |
535 | + //this.weightForFreeRation(statisticDTO.getStatisticBeginTime(), | ||
536 | + //statisticDTO.getFreeRatio(), statisticDTO.getPlNo()); | ||
453 | } | 537 | } |
454 | logger.info("加权后的空置率之和:" + totalfreeRatio + " 时间戳个数:" + pageBean.getDataList().size()); | 538 | logger.info("加权后的空置率之和:" + totalfreeRatio + " 时间戳个数:" + pageBean.getDataList().size()); |
455 | Double avgFreeRation = totalfreeRatio / pageBean.getDataList().size(); | 539 | Double avgFreeRation = totalfreeRatio / pageBean.getDataList().size(); |
456 | - String result = String.format("%.2f", avgFreeRation*100); | 540 | + String result = String.format("%.2f", avgFreeRation * 100); |
457 | return new BizResultVO<String>().setData(result); | 541 | return new BizResultVO<String>().setData(result); |
458 | } | 542 | } |
459 | 543 | ||
@@ -485,33 +569,42 @@ public class IndexPageStatisticController extends BizController { | @@ -485,33 +569,42 @@ public class IndexPageStatisticController extends BizController { | ||
485 | } | 569 | } |
486 | } | 570 | } |
487 | 571 | ||
488 | - public static void main(String[] args) { | ||
489 | - BigDecimal m = BigDecimal.ZERO; | ||
490 | - BigDecimal n = m.add(BigDecimal.TEN); | ||
491 | - System.out.println(new BigDecimal("00.0").doubleValue() == 0); | ||
492 | - } | ||
493 | - | ||
494 | /** | 572 | /** |
495 | - * @param request | 573 | + * 企业云平台首页-->停车次数统计(饼图).<br/> |
574 | + * 说明:从订单表中统计(逃逸,免费,月卡年卡,临时)停车次数.<br/> | ||
575 | + * @param custIncomeTotalQueryRequset | ||
496 | * @return | 576 | * @return |
497 | - * 2017年8月18日 wangfei | 577 | + * @throws Exception |
498 | */ | 578 | */ |
499 | - @ApiOperation(value="根据停车场编号统计设备数量") | ||
500 | - @PostMapping("statisticParkLotEqpCountByPlNos") | ||
501 | - @ResponseBody | ||
502 | - public BizResult<List<ParkLotEqpTypeCountVO>> statisticParkLotEqpCountByPlNos(@RequestBody | ||
503 | - EqpTypeQueryByPlNosRequest request){ | ||
504 | - logger.info("停车场编号:"+request.getPlNos()+" 统计设备数量等信息"); | ||
505 | - List<ParkLotEqpTypeCountVO> resultList = new ArrayList<>(); | 579 | + @ApiOperation("企业云平台首页-->停车次数统计(饼图)") |
580 | + @PostMapping("/queryParingCount") | ||
581 | + public BizResultVO<List<ParkingCountDTO>> queryParingCount(@RequestBody CustIncomeTotalQueryRequset custIncomeTotalQueryRequset) throws Exception{ | ||
582 | + logger.info("...begin停车次数统计->调用后场dubbo服务,入参为: request={}", JSONObject.toJSONString(custIncomeTotalQueryRequset)); | ||
583 | + BizResult<List<ParkingCountDTO>> result =cusIncomeService.queryParingCount(custIncomeTotalQueryRequset); | ||
584 | + logger.info("...end停车次数统计->调用后场dubbo服务..."); | ||
585 | + return new BizResultVO<List<ParkingCountDTO>>(result); | ||
586 | + } | ||
587 | + | ||
588 | + /** | ||
589 | + * @param request | ||
590 | + * @return 2017年8月18日 wangfei | ||
591 | + */ | ||
592 | + @ApiOperation(value = "根据停车场编号统计设备数量") | ||
593 | + @PostMapping("statisticParkLotEqpCountByPlNos") | ||
594 | + @ResponseBody | ||
595 | + public BizResult<List<ParkLotEqpTypeCountVO>> statisticParkLotEqpCountByPlNos(@RequestBody | ||
596 | + EqpTypeQueryByPlNosRequest request) { | ||
597 | + logger.info("停车场编号:" + request.getPlNos() + " 统计设备数量等信息"); | ||
598 | + List<ParkLotEqpTypeCountVO> resultList = new ArrayList<>(); | ||
506 | BizResult<List<ParkLotEqpTypeCountStatisticByCountryDTO>> result = parkingLotEqpService | 599 | BizResult<List<ParkLotEqpTypeCountStatisticByCountryDTO>> result = parkingLotEqpService |
507 | - .StatisticParkLotEqpCountByPlNos(request); | 600 | + .StatisticParkLotEqpCountByPlNos(request); |
508 | if (!CollectionUtils.isEmpty(result.getData())) { | 601 | if (!CollectionUtils.isEmpty(result.getData())) { |
509 | - for (ParkLotEqpTypeCountStatisticByCountryDTO i :result.getData()) { | ||
510 | - ParkLotEqpTypeCountVO vo = new ParkLotEqpTypeCountVO(); | 602 | + for (ParkLotEqpTypeCountStatisticByCountryDTO i : result.getData()) { |
603 | + ParkLotEqpTypeCountVO vo = new ParkLotEqpTypeCountVO(); | ||
511 | BeanUtils.copyProperties(i, vo); | 604 | BeanUtils.copyProperties(i, vo); |
512 | resultList.add(vo); | 605 | resultList.add(vo); |
513 | } | 606 | } |
514 | } | 607 | } |
515 | return new BizResult<>(resultList); | 608 | return new BizResult<>(resultList); |
516 | - } | 609 | + } |
517 | } | 610 | } |
src/main/resources/application.properties
1 | -project.syscode=zteits-park-portal | ||
2 | -spring.application.name=zteits-park-portal | 1 | +project.syscode=zteits-bcp-portal |
2 | +spring.application.name=zteits-bcp-portal | ||
3 | server.port=8099 | 3 | server.port=8099 |
4 | 4 | ||
5 | # logging | 5 | # logging |
@@ -7,6 +7,7 @@ logging.level.root=info | @@ -7,6 +7,7 @@ logging.level.root=info | ||
7 | #logging.level.org.springframework.web=DEBUG | 7 | #logging.level.org.springframework.web=DEBUG |
8 | logging.level.com.zteits.irain.portal=debug | 8 | logging.level.com.zteits.irain.portal=debug |
9 | #logging.path=${user.home}/logs | 9 | #logging.path=${user.home}/logs |
10 | +logging.path=./logs/${spring.application.name} | ||
10 | logging.file=${spring.application.name}.log | 11 | logging.file=${spring.application.name}.log |
11 | logging.config=classpath:logback-spring.xml | 12 | logging.config=classpath:logback-spring.xml |
12 | 13 |