diff --git a/src/main/java/com/zteits/irain/portal/web/irain/UpdateFreeBerthController.java b/src/main/java/com/zteits/irain/portal/web/irain/UpdateFreeBerthController.java index a580eb9..e69162d 100644 --- a/src/main/java/com/zteits/irain/portal/web/irain/UpdateFreeBerthController.java +++ b/src/main/java/com/zteits/irain/portal/web/irain/UpdateFreeBerthController.java @@ -2,11 +2,13 @@ package com.zteits.irain.portal.web.irain; import java.util.List; import java.util.Map; +import java.util.Map.Entry; 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.util.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -18,6 +20,8 @@ import com.alibaba.fastjson.JSONObject; import com.clouds.common.cache.park.ParkingLotCacheUtil; import com.clouds.common.cache.sys.SysCodeValueCacheUtil; import com.clouds.common.constants.CodeValKindEnum; +import com.clouds.common.constants.RedisKeyEnum; +import com.clouds.common.redis.RedisCacheUtil; import com.clouds.common.utils.ResultUtils; import com.clouds.common.web.vo.BizResultVO; import com.google.common.collect.Lists; @@ -60,6 +64,8 @@ public class UpdateFreeBerthController { private ParkLotIdleBerthsService parkLotIdleBerthsService; @Autowired private ParkingLotQueryService parkingLotQueryService; + @Autowired + private RedisCacheUtil redisCacheUtil; @ApiOperation("更新空闲车位总数") @@ -80,11 +86,40 @@ public class UpdateFreeBerthController { updaterequest.setPlNo(plNo); updaterequest.setFromType(fromType); updaterequest.setSysCode(sysCode); - logger.info("请求参数:"+JSONObject.toJSONString(request)); + logger.info("请求参数:"+JSONObject.toJSONString(updaterequest)); int freeBerths = parkLotIdleBerthsService.updateAndGetIdleBerthByParkNo(updaterequest.getInoutTime(), updaterequest.getPlNo(), updaterequest.getType(), updaterequest.getFromType(), updaterequest.getFreeBerths()); logger.info("调用后场服务:更新车位总数", freeBerths); return new BizResultVO().setData(true); } + @ApiOperation("特殊处理-针对水岸天街左右更新空闲车位总数") + @PostMapping("updateFreeBerthForSpecial") + public BizResultVO updateFreeBerthForSpecial(@RequestBody Map freeBerthsMap){ + //通过上报停车场编号查询对应的自己内部停车场编号 + logger.info("特殊处理-针对水岸天街左右更新空闲车位总数请求参数:"+JSONObject.toJSONString(freeBerthsMap)); + if(freeBerthsMap==null||freeBerthsMap.isEmpty()){ + return new BizResultVO().setData(true); + } + for (Entry entry : freeBerthsMap.entrySet()) { + //更新空闲车位数 + UpdateFreeBerthRequest updaterequest=new UpdateFreeBerthRequest(); + updaterequest.setFreeBerths((Integer)entry.getValue()); + updaterequest.setPlNo(entry.getKey()); + updaterequest.setFromType(2); + updaterequest.setSysCode(sysCode); + int freeBerths = parkLotIdleBerthsService.updateAndGetIdleBerthByParkNo(updaterequest.getInoutTime(), updaterequest.getPlNo(), updaterequest.getType(), updaterequest.getFromType(), updaterequest.getFreeBerths()); + logger.info("调用后场服务:更新车位总数", freeBerths); + //消息队列 + JSONObject jsonObject = new JSONObject(); + //空闲车位数 + jsonObject.put("freeBerths", (Integer)entry.getValue()); + //停车场编号 + jsonObject.put("plNo", entry.getKey()); + redisCacheUtil.convertAndSend(RedisKeyEnum.PARK_FREEBERTH_PLNO_FREEBERTH_TOPIC.key(),jsonObject); + } + logger.info("特殊处理-针对水岸天街左右更新空闲车位总数结束"); + return new BizResultVO().setData(true); + } + } 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 1eba049..ec75291 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 @@ -114,9 +114,9 @@ public class ParkLotStatisticController { logger.info("根据登录人权限获取停车场列表"); List plNos = Lists.newArrayList(); //2.调用接口查询当前登录人管辖的停车场名称 - plNos.add("A320211000"); - plNos.add("B1504020C7"); - /*UserInfo userInfo = sessionCommUtil.getUserInfo(); + /*plNos.add("A320211000"); + plNos.add("B1504020C7");*/ + UserInfo userInfo = sessionCommUtil.getUserInfo(); if(userInfo!=null){ TdCompanyParkQueryRequest tdCompanyParkQueryRequest = new TdCompanyParkQueryRequest(); tdCompanyParkQueryRequest.setCustIdList(userInfo.getOrgIds()); @@ -126,7 +126,7 @@ public class ParkLotStatisticController { plNos = ResultUtils.getBizResultData(bizResult); }else{ throw new BizException(ErrorType.AUTH_TOKEN_NOT_EXISTS); - }*/ + } return plNos; } }