diff --git a/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkLotEqpTypeCountVO.java b/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkLotEqpTypeCountVO.java index d690f6f..31bebc4 100644 --- a/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkLotEqpTypeCountVO.java +++ b/src/main/java/com/zteits/irain/portal/vo/parkinglotcloudplatform/datastatistic/ParkLotEqpTypeCountVO.java @@ -20,7 +20,8 @@ public class ParkLotEqpTypeCountVO { /**设备类型:1-地磁*/ private Integer eqpType; - /**设备状态:1-未安装,2-使用中,3-损坏*/ + ///**设备状态:1-未安装,2-使用中,3-损坏*/ + /**设备状态:1-在线,0-离线*/ private Integer eqpState; /**个数*/ private Integer eqpNum; diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/areamanage/AreaManageController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/areamanage/AreaManageController.java index 78e5557..fd29782 100644 --- a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/areamanage/AreaManageController.java +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/areamanage/AreaManageController.java @@ -11,7 +11,6 @@ import com.zteits.clouds.api.apibase.bean.BaseRequest; import com.zteits.clouds.api.apibase.bean.BizResult; import com.zteits.clouds.api.dto.sys.AreaTreeDTO; import com.zteits.clouds.api.dto.sys.param.AreaBlockByOrgIdQueryRequest; - import com.zteits.clouds.api.service.sys.TbAreaService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -48,7 +47,7 @@ public class AreaManageController { @ApiOperation("根据归属组织ID查询区域与区块树") @PostMapping("/queryAreaAndBlockTree") - public BizResultVO> queryAreaAndBlockTree(@RequestBody BaseRequest baseRequest){ + public BizResultVO> queryAreaAndBlockTree(@RequestBody BaseRequest baseRequest) { BizResultVO> resultVO = new BizResultVO<>(); EasyUIDataGridVO easyUIDataGridVO = new EasyUIDataGridVO<>(); @@ -56,12 +55,12 @@ public class AreaManageController { request.setSysCode(baseRequest.getSysCode()); // TODO 此处orgId 从当前登录操作人中取,现在先不限制 request.setOrgId(1L); - BizResult> result= tbAreaService.queryAreaBlockByOrgId(request); - if(ResultUtils.isSuccess(result)){ + BizResult> result = tbAreaService.queryAreaBlockByOrgId(request); + if (ResultUtils.isSuccess(result)) { easyUIDataGridVO.setRows(result.getData()); easyUIDataGridVO.setTotal(result.getData().size()); resultVO.setData(easyUIDataGridVO); - }else { + } else { resultVO.setCode(result.getErrCode().getCode()); resultVO.setMsg(result.getErrMsg()); } 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 index 3140e92..08bab91 100644 --- 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 @@ -231,7 +231,7 @@ public class AnalysisController extends BizController { request.setBeginTime(DateUtil.to_date(beginTime, DateUtil.DATETIME_FORMAT)); request.setEndTime(DateUtil.to_date(endTime, DateUtil.DATETIME_FORMAT)); request.setPlNos(plNos); - request.setBaseRequest(new BaseInfo(1, 100)); + request.setBaseRequest(new BaseInfo(1, 1000)); request.setTimeType(ParkConstant.ParkingLotUseStatistic.StatisticType.PER1DAY); Calendar endc = Calendar.getInstance(); diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthManageController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthManageController.java new file mode 100644 index 0000000..64ea7f2 --- /dev/null +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/datastatistic/BerthManageController.java @@ -0,0 +1,173 @@ +package com.zteits.irain.portal.web.parkinglotcloudplatform.datastatistic; + +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.poi.xssf.usermodel.XSSFSheet; +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.GetMapping; +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.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import com.alibaba.dubbo.common.utils.CollectionUtils; +import com.clouds.common.constants.TableNameEnum; +import com.clouds.common.utils.DateUtil; +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.vo.BizResultVO; +import com.clouds.common.web.vo.EasyUIDataGridVO; +import com.zteits.clouds.api.apibase.bean.BaseInfo; +import com.zteits.clouds.api.apibase.bean.BizResult; +import com.zteits.clouds.api.apibase.bean.PageBean; +import com.zteits.clouds.api.dto.clouds.param.BerthTurnOverQueryRequest; +import com.zteits.clouds.api.dto.park.dto.BerthTurnOverCountDTO; +import com.zteits.clouds.api.dto.park.dto.BerthsDTO; +import com.zteits.clouds.api.dto.park.param.BerthManageRequest; +import com.zteits.clouds.api.service.park.BerthManageService; +import com.zteits.irain.portal.constant.ParkConstant; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * + * + * Copyright: Copyright (c) 2017 zteits + * + * @ClassName: BerthManageController.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("/berth") +public class BerthManageController extends BizController { + private static final Logger logger = LoggerFactory.getLogger(BerthManageController.class); + @Value("${project.syscode}") + private String sysCode; + @Autowired + private BerthManageService berthManageService; + + + /** + * @param requestObject + * @return + * @throws IllegalAccessException + * @throws InstantiationException + */ + @ApiOperation("泊位信息分页查询") + @PostMapping("berthInfoList") + @ResponseBody + public BizResultVO> berthInfoList(@RequestBody BerthManageRequest requestObject) + throws InstantiationException, IllegalAccessException { + + requestObject.setSysCode(sysCode); + BizResult> respondObject = + berthManageService.queryBerthByCondition(requestObject); + return returnJqGridData(respondObject,BerthsDTO.class); + } + /** + * @param requestObject + * @return + */ + @ApiOperation("修改泊位信息") + @PostMapping("updateBerthInfo") + @ResponseBody + public BizResultVO updateBerthInfo(@RequestBody BerthManageRequest requestObject) { + requestObject.setSysCode(sysCode); + BizResult respondObject = berthManageService.updateBerthById(requestObject); + return new BizResultVO(respondObject); + } + + /** + * @param requestObject + * @return + */ + @ApiOperation("批量删除泊位信息") + @PostMapping("deleteBerths") + @ResponseBody + public BizResultVO deleteBerths(@RequestBody BerthManageRequest requestObject) { + requestObject.setSysCode(sysCode); + BizResult respondObject = berthManageService.deleteBerthByIds(requestObject); + return new BizResultVO(respondObject); + } + + /** + * 保存泊位信息 + * @param requestObject + * @return + */ + @ApiOperation("保存泊位信息") + @PostMapping("saveBerthInfo") + @ResponseBody + public BizResultVO saveBerthInfo(@RequestBody BerthManageRequest requestObject) { + requestObject.setSysCode(sysCode); + BizResult respondObject = berthManageService.saveBerthInfo(requestObject); + return new BizResultVO(respondObject); + } + + @ApiOperation("导出泊位信息excel") + @GetMapping("exportBerthInfoExcel") + public void exportBerthInfoExcel(@RequestParam List plNos,@RequestParam List parkTypes, + @RequestParam List parkAreaCodes, HttpServletRequest requests, HttpServletResponse response) { + BerthManageRequest request = new BerthManageRequest(); + request.setSysCode(sysCode); + request.setPlNos(plNos); + request.setBaseRequest(new BaseInfo(1, 1000)); + + + BizResult> bizResult = berthManageService.queryBerthByCondition(request); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String[] title = new String[] { "序号","泊位编号", "所属停车场", "所属泊位区间", "停车方式" }; + String sheetName = "泊位信息"; + String fileName = "泊位信息" + sdf.format(new Date()); + // 1.创建excel信息 + XSSFSheet workSheet = ExcelUtil.createExcel(sheetName); + // 2.设置excel表头和表体 + Layouter.buildReport(workSheet, title, 0, 0); + // 3.填充数据 + List contentList = new ArrayList(); + List list = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(bizResult.getData().getDataList())) { + list = bizResult.getData().getDataList(); + } + int number = 1; + for (BerthsDTO b : list) { + Object[] obj = new Object[title.length]; + int index = 0; + obj[index++] = number++; + obj[index++] = b.getBerthNo(); + obj[index++] = b.getPlName(); + obj[index++] = b.getParkAreaName(); + obj[index++] = b.getParkType(); + contentList.add(obj); + } + ExcleFillDateManager fillUserManager = new ExcleFillDateManager(); + fillUserManager.fillSalesOrga(workSheet, title, contentList, 2); + // 4.excel输出配置 + ExcelUtil.write(response, workSheet, fileName); + } + +} diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/devicemanagement/GeomagneticManagementController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/devicemanagement/GeomagneticManagementController.java new file mode 100644 index 0000000..cf8e012 --- /dev/null +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/devicemanagement/GeomagneticManagementController.java @@ -0,0 +1,20 @@ +/** + * + */ +package com.zteits.irain.portal.web.parkinglotcloudplatform.devicemanagement; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author hxz + * + */ +@RestController +@RequestMapping("/geomagnetic") +public class GeomagneticManagementController { + private static final Logger logger = LoggerFactory.getLogger(GeomagneticManagementController.class); + +} diff --git a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/parklotmanage/ParkLotManageController.java b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/parklotmanage/ParkLotManageController.java index affb187..089570b 100644 --- a/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/parklotmanage/ParkLotManageController.java +++ b/src/main/java/com/zteits/irain/portal/web/parkinglotcloudplatform/parklotmanage/ParkLotManageController.java @@ -1,35 +1,52 @@ package com.zteits.irain.portal.web.parkinglotcloudplatform.parklotmanage; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.List; import java.util.Map; +import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.commons.lang3.StringUtils; +import org.apache.poi.util.StringUtil; +import org.apache.poi.xssf.usermodel.XSSFSheet; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; +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.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.alibaba.dubbo.common.utils.CollectionUtils; +import com.alibaba.fastjson.JSONObject; import com.clouds.common.cache.park.ParkingLotCacheUtil; import com.clouds.common.entity.UserInfo; import com.clouds.common.utils.ResultUtils; +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; import com.google.common.collect.Maps; 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.park.dto.ParkingLotDTO; +import com.zteits.clouds.api.dto.park.param.ParkingLotInfoDeleteRequest; +import com.zteits.clouds.api.dto.park.param.ParkingLotInfoSaveRequest; +import com.zteits.clouds.api.dto.park.param.ParkingLotInfoUpdateRequest; import com.zteits.clouds.api.dto.park.param.QueryParkLotInfoByPkNoRequest; -import com.zteits.clouds.api.dto.pay.param.TdCompanyParkQueryRequest; +import com.zteits.clouds.api.dto.park.param.QueryParkingLotByParkRequest; import com.zteits.clouds.api.service.park.ParkingLotQueryService; +import com.zteits.clouds.api.service.park.ParkingLotService; import com.zteits.clouds.api.service.pay.TdCustCompanyService; import io.swagger.annotations.Api; @@ -53,7 +70,7 @@ import io.swagger.annotations.ApiOperation; @Api(value="停车场管理",description="停车场管理") @RestController @RequestMapping("parkLotManage") -public class ParkLotManageController{ +public class ParkLotManageController extends BizController{ private Logger logger = LoggerFactory.getLogger(ParkLotManageController.class); @Autowired private HttpSession session; @@ -63,6 +80,8 @@ public class ParkLotManageController{ private TdCustCompanyService tdCustCompanyService; @Autowired private ParkingLotQueryService parkingLotQueryService; + @Autowired + private ParkingLotService parkingLotService; /** * 根据登录人权限获取停车场名称列表 * @return @@ -111,4 +130,105 @@ public class ParkLotManageController{ } return plNos; } + /** + * xiejp 2017-08-30 + * @param request + * @return + * @throws Exception + */ + @ApiOperation("分页查询停车场列表") + @PostMapping("/queryParkingLotPageByPark") + public BizResultVO> queryParkingLotByPark(@RequestBody QueryParkingLotByParkRequest request) throws Exception { + logger.info("调用分页获取停车场列表dubbo服务入参:request={}"+JSONObject.toJSONString(request)); + if (request == null) { + throw new BizException(ErrorType.PARAMM_NULL, "请求对象"); + } + BizResult> bizResult = parkingLotQueryService.queryParkingLotByPark(request,request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); + return returnJqGridData(bizResult, ParkingLotDTO.class); + } + /** + * 添加停车场信息 + * @param request + * @return + */ + @ApiOperation("添加停车场信息") + @PostMapping("/saveParkingLotInfo") + public BizResultVO SaveParkingLotInfo(@RequestBody ParkingLotInfoSaveRequest request){ + logger.info("调用添加停车场信息dubbo服务入参:request={}"+JSONObject.toJSONString(request)); + BizResult bizResult = parkingLotService.SaveParkingLotInfo(request); + return new BizResultVO(bizResult); + } + /** + * 修改停车场信息 + * @param request + * @return + */ + @ApiOperation("修改停车场信息") + @PostMapping("/updateParkingLotInfo") + public BizResultVO UpdateParkingLotInfo(@RequestBody ParkingLotInfoUpdateRequest request){ + logger.info("调用修改停车场信息dubbo服务入参:request={}"+JSONObject.toJSONString(request)); + BizResult bizResult = parkingLotService.UpdateParkingLotInfo(request); + return new BizResultVO(bizResult); + } + /** + * 根据停车场编号查询停车场信息 + * @param request + * @return + */ + @ApiOperation("根据停车场编号查询停车场信息") + @PostMapping("/queryParkingLotByPkNo") + public BizResultVO QueryParkingLotByPkNo(@RequestBody QueryParkLotInfoByPkNoRequest request){ + logger.info("调用根据停车场编号查询停车场信息dubbo服务入参:request={}"+JSONObject.toJSONString(request)); + BizResult bizResult = parkingLotQueryService.QueryParkingLotByPkNo(request); + return new BizResultVO(bizResult); + } + /** + * 删除停车场信息 + * @param request + * @return + */ + @ApiOperation("删除停车场信息") + @PostMapping("/deleteParkingLotInfoByPlIds") + public BizResultVO DeleteParkingLotInfoByPlIds(@RequestBody ParkingLotInfoDeleteRequest request){ + logger.info("调用删除停车场信息dubbo服务入参:request={}"+JSONObject.toJSONString(request)); + BizResult bizResult = parkingLotService.DeleteParkingLotInfoByPlIds(request); + return new BizResultVO(bizResult); + } + /** + * 导出 + * @param request + * @param response + * @throws Exception + */ + @ApiOperation("导出停车场信息") + @PostMapping("/parkingToExcleForPage") + public void parkingToExcleForPage(@RequestBody QueryParkingLotByParkRequest request,HttpServletResponse response) throws Exception{ + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + BizResult> bizResult = parkingLotQueryService.queryParkingLotByPark(request,0,0); + + String[] title = new String[]{"停车场编号","停车场名称"}; + String sheetName="停车场"; + String fileName = "停车场信息"; + // 1.创建excel信息 + XSSFSheet workSheet = ExcelUtil.createExcel(sheetName); + // 2.设置excel表头和表体 + Layouter.buildReport(workSheet,title,0, 0); + //3.填充数据 + List contentList=new ArrayList(); + List list = bizResult.getData().getDataList(); + for (ParkingLotDTO e: list) { + Object[] obj=new Object[title.length]; + int index=0; + obj[index++]=e.getPlNo(); + obj[index++]=e.getPlName(); + + contentList.add(obj); + } + ExcleFillDateManager fillUserManager=new ExcleFillDateManager(); + fillUserManager.fillSalesOrga(workSheet,title,contentList,2); + // 4.excel输出配置 + ExcelUtil.write(response, workSheet, fileName); + } + } diff --git a/src/main/resources/dubbo/dubbo-park-consumer.xml b/src/main/resources/dubbo/dubbo-park-consumer.xml index 52ba73a..acc76d4 100644 --- a/src/main/resources/dubbo/dubbo-park-consumer.xml +++ b/src/main/resources/dubbo/dubbo-park-consumer.xml @@ -153,5 +153,8 @@ version="${spring.dubbo.provider.version}" timeout="30000"/> - + + \ No newline at end of file