diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/AnalysisController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/AnalysisController.java new file mode 100644 index 0000000..9a1ac8e --- /dev/null +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/AnalysisController.java @@ -0,0 +1,115 @@ +package com.zteits.irain.portal.web.parkinglotcloudplatform.datastatistic; + +import java.util.Calendar; +import java.util.List; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import com.clouds.common.web.BizController; +import com.clouds.common.web.vo.BizResultVO; +import com.clouds.common.web.vo.EasyUIDataGridVO; +import com.zteits.clouds.api.apibase.bean.BizResult; +import com.zteits.clouds.api.apibase.bean.PageBean; +import com.zteits.clouds.api.apibase.constants.ErrorType; +import com.zteits.clouds.api.apibase.exception.BizException; +import com.zteits.clouds.api.dto.clouds.param.BerthTurnOverQueryRequest; +import com.zteits.clouds.api.dto.park.dto.BerthTurnOverCountDTO; +import com.zteits.clouds.api.service.park.EqpBerthsService; +import com.zteits.irain.portal.constant.ParkConstant; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * + * + * Copyright: Copyright (c) 2017 zteits + * + * @ClassName: AnalysisController.java + * @Description: + * @version: v1.0.0 + * @author: wangfei + * @date: 2017年8月28日 下午5:45:21 + * Modification History: + * Date Author Version Description + *---------------------------------------------------------* + * 2017年8月28日 wangfei v1.0.0 创建 + */ +@Api("停车场云平台 分析决策 泊位周转率") +@Controller +@RequestMapping("/analysis") +public class AnalysisController extends BizController { + private static final Logger logger = LoggerFactory.getLogger(AnalysisController.class); + @Value("${project.syscode}") + private String sysCode; + @Autowired + private EqpBerthsService eqpBerthsService; + + /** + * + * @param requestObject + * @return + */ + @ApiOperation("泊位周转率-折线图") + @PostMapping("queryTurnOverForMap") + @ResponseBody + public BizResultVO> queryTurnOverForMap(@RequestBody BerthTurnOverQueryRequest + requestObject) { + requestObject.setSysCode(sysCode); + Calendar beginc = Calendar.getInstance(); + beginc.setTime(requestObject.getBeginTime()); + int beginYear = beginc.get(Calendar.YEAR); + int beginMonth = beginc.get(Calendar.MONTH) + 1; + int beginDay = beginc.get(Calendar.DAY_OF_MONTH); + + Calendar endc = Calendar.getInstance(); + endc.setTime(requestObject.getEndTime()); + int endYear = endc.get(Calendar.YEAR); + int endMonth = endc.get(Calendar.MONTH) + 1; + int endDay = endc.get(Calendar.DAY_OF_MONTH); + + if (beginYear == endYear && beginMonth == endMonth && beginDay == endDay) { + // 2表示按每小时统计 + requestObject.setTimeType(ParkConstant.ParkingLotUseStatistic.StatisticType.PER1HOUR); + } else { + // 3表示按每天统计 + requestObject.setTimeType(ParkConstant.ParkingLotUseStatistic.StatisticType.PER1DAY); + } + BizResult> respondObject = eqpBerthsService.queryBerthTurnOverForMap(requestObject); + return new BizResultVO<>(respondObject); + } + /** + * + * @param requestObject + * @return + * @throws IllegalAccessException + * @throws InstantiationException + */ + @ApiOperation("泊位周转率-详细记录") + @PostMapping("berthTurnOverDetail") + @ResponseBody + public BizResultVO> berthTurnOverDetail(@RequestBody BerthTurnOverQueryRequest + requestObject) throws InstantiationException, IllegalAccessException { + requestObject.setSysCode(sysCode); + if (null == requestObject.getBeginTime() || null == requestObject.getEndTime()) { + throw new BizException(ErrorType.PARAMM_NULL, "开始时间和结束时间"); + } + // 按每天统计 + requestObject.setTimeType(ParkConstant.ParkingLotUseStatistic.StatisticType.PER1DAY); + BizResult> respondObject = eqpBerthsService.queryBerthTurnOverDetail(requestObject); + return returnJqGridData(respondObject,BerthTurnOverCountDTO.class); + } + + + + + +}