From 1e6272298d3ea4dd441ead998921d3a5cfdc6261 Mon Sep 17 00:00:00 2001 From: llw <18235445130@163.com> Date: Mon, 21 Aug 2017 15:47:28 +0800 Subject: [PATCH] 提交本地 --- src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkStaticsticAndTodayAmountVO.java | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthsStatisticController.java | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/ParkLotStatisticController.java | 5 ++++- 3 files changed, 154 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkStaticsticAndTodayAmountVO.java diff --git a/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkStaticsticAndTodayAmountVO.java b/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkStaticsticAndTodayAmountVO.java new file mode 100644 index 0000000..f0582f6 --- /dev/null +++ b/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkStaticsticAndTodayAmountVO.java @@ -0,0 +1,66 @@ +package com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic; + +import java.math.BigDecimal; + +/** + * 企业云平台->车位使用统计、 + * 停车场基本信息和今日收入统计信息 + * + * Copyright: Copyright (c) 2017 zteits + * + * @ClassName: ParkStaticsticAndTodayAmountVO.java + * @Description: + * @version: v1.0.0 + * @author: langlw + * @date: 2017年8月18日 下午5:50:43 + * Modification History: + * Date Author Version Description + *---------------------------------------------------------* + * 2017年8月18日 langlw v1.0.0 创建 + */ +public class ParkStaticsticAndTodayAmountVO { + + /** 停车场id. */ + private String parkId; + /** 订单总金额=未支付费用+已支付费用. */ + private BigDecimal orderTotalFee; + /** 停车场名称. */ + private String parkName; + /** 总车位数*/ + private Integer totalBerthsNum; + /** 使用中的车位数*/ + private Integer useingBerthsNum; + + public Integer getTotalBerthsNum() { + return totalBerthsNum; + } + public void setTotalBerthsNum(Integer totalBerthsNum) { + this.totalBerthsNum = totalBerthsNum; + } + public Integer getUseingBerthsNum() { + return useingBerthsNum; + } + public void setUseingBerthsNum(Integer useingBerthsNum) { + this.useingBerthsNum = useingBerthsNum; + } + public String getParkId() { + return parkId; + } + public void setParkId(String parkId) { + this.parkId = parkId; + } + public BigDecimal getOrderTotalFee() { + return orderTotalFee; + } + public void setOrderTotalFee(BigDecimal orderTotalFee) { + this.orderTotalFee = orderTotalFee; + } + public String getParkName() { + return parkName; + } + public void setParkName(String parkName) { + this.parkName = parkName; + } + + +} diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthsStatisticController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthsStatisticController.java index 10d2878..c0a88fa 100644 --- a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthsStatisticController.java +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthsStatisticController.java @@ -1,8 +1,6 @@ -/** - * - */ package com.zteits.irain.portal.web.parkinglotcloudplatform.datastatistic; +import java.math.BigDecimal; import java.sql.Timestamp; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -15,6 +13,7 @@ import java.util.Map.Entry; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,6 +30,7 @@ import org.springframework.web.bind.annotation.ResponseBody; import com.alibaba.dubbo.common.utils.CollectionUtils; import com.alibaba.fastjson.JSON; import com.clouds.common.cache.park.ParkingLotCacheUtil; +import com.clouds.common.entity.UserInfo; import com.clouds.common.redis.RedisCacheUtil; import com.clouds.common.utils.DateUtil; import com.clouds.common.utils.ResultUtils; @@ -38,6 +38,7 @@ import com.clouds.common.utils.excle.ExcelUtil; import com.clouds.common.utils.excle.ExcleFillDateManager; import com.clouds.common.utils.excle.Layouter; import com.clouds.common.web.BizController; +import com.clouds.common.web.SessionCommUtil; import com.clouds.common.web.vo.BizResultVO; import com.clouds.common.web.vo.EasyUIDataGridVO; import com.google.common.collect.Lists; @@ -50,18 +51,38 @@ import com.zteits.clouds.api.apibase.exception.BizException; import com.zteits.clouds.api.dto.park.dto.ParkingLotDTO; import com.zteits.clouds.api.dto.park.dto.ParkingLotUseStatisticDTO; import com.zteits.clouds.api.dto.park.dto.ParkingLotUseStatisticMaxAndMinDTO; +import com.zteits.clouds.api.dto.park.param.ParkFreeBerthGetByPlnoRequest; import com.zteits.clouds.api.dto.park.param.ParkingLotUseStatisticForPageRequest; +import com.zteits.clouds.api.dto.park.param.QueryParkLotInfoByPkNoRequest; +import com.zteits.clouds.api.dto.pay.TdBOrderDTO; +import com.zteits.clouds.api.dto.pay.param.QueryTodayOrderRequest; +import com.zteits.clouds.api.service.park.ParkFreeBerthService; +import com.zteits.clouds.api.service.park.ParkingLotQueryService; import com.zteits.clouds.api.service.park.ParkingLotUseStatisticService; +import com.zteits.clouds.api.service.pay.TdBOrderService; import com.zteits.irain.portal.constant.ParkConstant; +import com.zteits.irain.portal.vo.govclouds.ParkLotStatisticVO; import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO; import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.LineChartVO.SerieVO; +import com.zteits.irain.portal.vo.parkinglotcloudplatform.datastatistic.ParkStaticsticAndTodayAmountVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; /** - * @author hxz - * + * + * + * Copyright: Copyright (c) 2017 zteits + * + * @ClassName: BerthsStatisticController.java + * @Description: + * @version: v1.0.0 + * @author: langlw + * @date: 2017年8月18日 下午5:45:21 + * Modification History: + * Date Author Version Description + *---------------------------------------------------------* + * 2017年8月18日 langlw v1.0.0 创建 */ @Api("停车场云平台 数据统计 车位使用管理") @Controller @@ -72,6 +93,15 @@ public class BerthsStatisticController extends BizController { private String sysCode; @Autowired private ParkingLotUseStatisticService parkingLotStatisticService; + @Autowired + private SessionCommUtil sessionCommUtil; + @Autowired + private TdBOrderService tdBOrderService; + @Autowired + private ParkFreeBerthService parkFreeBerthService; + @Autowired + private ParkingLotQueryService parkingLotQueryService; + /** * @@ -434,5 +464,54 @@ public class BerthsStatisticController extends BizController { freeBerthRatios.setSeries(series); return freeBerthRatios; } + + + + @ApiOperation("获取停车场信息统计和今日收益") + @PostMapping("getParkStaticsticAndTodayAmount") + public BizResultVO> getParkStaticsticAndTodayAmount(@RequestBody QueryTodayOrderRequest request) throws Exception{ + // 1.调用接口查询当前登录人管辖的停车场名称 + UserInfo userInfo = sessionCommUtil.getUserInfo(); + List plNos=Lists.newArrayList(); + if(null != userInfo){ + plNos= userInfo.getOrgIds(); + } + //今日收益 + List listVO= new ArrayList(); + BizResult> result = tdBOrderService.queryTodayAmountSumByPlno(request); + Map mapAmount=ResultUtils.getBizResultData(result); + //空闲车位数 + ParkFreeBerthGetByPlnoRequest parkFreeBerthGetByPlnoRequest = new ParkFreeBerthGetByPlnoRequest(); + request.setPlNos(plNos); + request.setSysCode(sysCode); + BizResult> freeBerthsNumBizResult = parkFreeBerthService.getParkFreeBerthByPlno(parkFreeBerthGetByPlnoRequest); + Map freeBerthsNumMap = ResultUtils.getBizResultData(freeBerthsNumBizResult); + for (String plNo : plNos) { + //先查询缓存 + ParkingLotDTO lotDTO = ParkingLotCacheUtil.getParkLotByPlNo(plNo); + if(lotDTO == null){ + //查询数据库 + QueryParkLotInfoByPkNoRequest request1 = new QueryParkLotInfoByPkNoRequest(); + request1.setSysCode(sysCode); + request1.setPklNo(plNo); + BizResult bizResult2 = parkingLotQueryService.QueryParkingLotByPkNo(request1); + lotDTO = ResultUtils.getBizResultData(bizResult2); + } + if(lotDTO == null || StringUtils.isBlank(lotDTO.getPlName()) || lotDTO.getPlName().equals("null")){ + continue; + } + ParkStaticsticAndTodayAmountVO VO=new ParkStaticsticAndTodayAmountVO(); + VO.setParkId(plNo); + VO.setParkName(lotDTO.getPlName()); + VO.setTotalBerthsNum(lotDTO.getPlBerthNum()); + VO.setUseingBerthsNum(lotDTO.getPlBerthNum()-freeBerthsNumMap.get(plNo)); + VO.setOrderTotalFee(mapAmount.get(plNo)); + listVO.add(VO); + } + return new BizResultVO>().setData(listVO); + } + + + } diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/ParkLotStatisticController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/ParkLotStatisticController.java index 15e98c4..8e56b5f 100644 --- a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/ParkLotStatisticController.java +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/ParkLotStatisticController.java @@ -116,7 +116,10 @@ public class ParkLotStatisticController { plNos.add("B1504020C7");*/ // 2.调用接口查询当前登录人管辖的停车场名称 UserInfo userInfo = sessionCommUtil.getUserInfo(); - List plNos = userInfo.getOrgIds(); + List plNos=Lists.newArrayList(); + if(null != userInfo){ + plNos= userInfo.getOrgIds(); + } // if(userInfo!=null){ // TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); // tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); -- libgit2 0.21.4