package com.zteits.park.dao; import com.github.pagehelper.PageInfo; import com.zteits.clouds.api.dto.order.parkorder.param.ParkOrderUpdateCarNumberReq; import com.zteits.clouds.api.dto.park.dto.BerthsDTO; import com.zteits.clouds.api.dto.park.dto.ParkOccupancyRateDTO; import com.zteits.clouds.api.dto.park.dto.berth.BerthsStatisticDTO; import com.zteits.clouds.api.dto.park.param.CheckUniqueForBerthNoRequest; import com.zteits.clouds.api.dto.park.param.DeleteBerthsRequest; import com.zteits.clouds.api.dto.park.param.QueryBerthForPageRequest; import com.zteits.clouds.api.dto.park.param.parksource.QueryParkSourceByOrgIdsRequest; import com.zteits.clouds.api.dto.pda.param.*; import com.zteits.clouds.api.dto.rocketmq.datacollection.freeberths.ParkAreaFreeBerthsMsgVO; import com.zteits.park.domain.TpPBerths; import com.zteits.park.domain.TpPBerthsDO; import com.zteits.park.domain.TpPBerthsExample; import java.util.Date; import java.util.List; import java.util.Map; /** * 泊位表 * * Copyright: Copyright (c) 2017 zteits * * @ClassName: IrainParkingPayLogDao.java * @Description: * @version: v1.0.0 * @author: wangfei * @date: 2017年8月21日 下午2:56:28 * Modification History: * Date Author Version Description *---------------------------------------------------------* * 2017年5月4日 wangfei v1.0.0 创建 */ public interface BerthsDao { /** *

单独针对物联网小镇,方格尔做的

* 通过车位编号更新状态
* 原因:方格尔上报不传递停车场,只传递车位编号,车位编号在他那里是唯一的,为防止在我方内部冲突,需要在车位前增加前缀FG_ * @param isOccupy 车位状态 1有车,2无车,3异常 * @param reportTime 设备上报时间(设备上报更新,pda不更新) * @param recordId 停车记录id * @param berthNo 车位编号 必填 * @return * 2017年8月25日 zhaowg */ @Deprecated TpPBerths updateBerthByBerthNoForFangGe(String isOccupy,Date reportTime,String recordId,String berthNo); /** * 新增泊位信息表 * @param tpPBerths * @return */ int insertBerthInfo(TpPBerths tpPBerths); /** * 更新泊位信息 * @param tpPBerths * @return */ int updateBerthInfoByBerthNoAndPlNo(TpPBerths tpPBerths); /** * 根据停车场编码查询车位数量 * @param plNos * @return */ Map queryParkBerthNum(List plNos); /** * 根据停车场编号查询空闲车位总数 * @param plNo * @return * 2017年8月30日 zhaowg */ Long queryFreeBerthNum(String plNo,String where); /** * 修改泊位信息 * @param tpPBerths * @return */ Boolean updateBerthInfoById(TpPBerths tpPBerths); /** * 修改泊位运营状态信息 * @param request * @return */ Boolean updateBerthBusiInfoStatus(DeleteBerthsRequest request); /** * 批量删除泊位信息 * @return */ Boolean batDeleteBerthsById(List ids,Long modifyOp,String plNo); /** * 通过车位对象分页查询车位信息 * query berths by berth for page * langlw 2017-8-31 * @param * @return */ PageInfo queryBerthByBerth(QueryBerthForPageRequest request,int pageNum,int pageSize); /** * 分组查询停车场占用率 * query park cooupancy rate group by park * langlw 2017-8-31 * @param * @return */ List queryParkOccupancyRate(String plNo, String parkAreaCode); /** * 通过停车场编号和泊位区间编号查询泊位总数 * langlw 2017-8-31 * @param plNo 必填 * @param parkAreaCode 可以为空 * @return */ Integer queryBerthCountByPlNoAndParkAreaCode(String plNo,String parkAreaCode); /** * 根据停车场编号和泊位编号批量更新车位状态为空闲 * @param plNo * @param parkAreaCode * @return * 2017年9月1日 zhaowg */ @Deprecated Integer batchUpdateBerthStateForFree(String plNo,String parkAreaCode); /** * 根据停车场编码查询停车场的泊位 * @param pklNo * @return */ List queryBerthsByPlNo(String pklNo); /** * 根据泊位区间编号查询泊位信息 * @param parkAreaCodes * @return */ List queryBerthByAreaCodes(List parkAreaCodes); /** * 动态查询车位信息 * @param example * @return * 2017年10月31日 zhaowg */ List selectByExample(TpPBerthsExample example); /** * 动态更新 * @param record * @param example * @return * 2017年12月4日 zhaowg */ int updateByExampleSelective(TpPBerths record, TpPBerthsExample example); /** * 校验泊位编码的唯一性.
* @param request * @return * 2018年1月5日 wangfs.
*/ int checkUniqueForBerthNo(CheckUniqueForBerthNoRequest request); /** * 批量保存泊位信息.
* @param list * @return * 2018年1月6日 wangfs.
*/ int batchSaveBerthInfo(List list); /** * 更换泊位区间 * @param ids * @param parkAreaCode * @param opId * 2018年1月7日 zhaowg */ void changeBerthArea(List ids, String parkAreaCode, Long opId); /** * 根据停车场编号获取未绑定设备的泊位信息 * @param plNo * @return * 2018年1月24日 zhaowg */ List getBerthNoBindGeoByPlNo(String plNo); /** * 根据泊位区间编号和停车场编号和泊位或者地磁编号查询车位信息 * @param * @return * @Author: xiejianpeng * @Date: 2018/5/31 14:33 * */ List queryBerthInfoByPlNoAndOther(QueryBerthByPlNoAndOrtherRequest request); /** * 根据停车场编号和泊位编号查询车位信息 * @param * @return * @Author: xiejianpeng * @Date: 2018/5/31 15:55 * */ BerthsDTO queryBerthInfoByPlNoAndBerthNo(QueryBerthByPlNoAndBerthNoRequest request); /** * 根据泊位区间编号查询泊位信息 * @param request * @return * 2017年10月31日 zhaowg */ List queryBerthInfoByRangeNos(QueryBerthByRangeNosRequest request); /** * 停车场的泊位统计-根据orgIds * @param * @return * @Author: xiejianpeng * @Date: 2018/12/29 14:27 * */ BerthsStatisticDTO queryBerthStatisticByOrgIds(QueryParkSourceByOrgIdsRequest request); /** * 各个组织对应的泊位数统计查询 * @param * @return * @Author: xiejianpeng * @Date: 2019/1/6 22:27 * */ List queryBerthStatisticForOrgId(QueryParkSourceByOrgIdsRequest request); /** * 根据泊位区间编码查询存在地磁的泊位编码 * @param berthRangeNo * @param plNo * @return */ List queryBerthNoWithEqpNoByBerthRangeNo(String berthRangeNo, String plNo); /** * 根据 泊位区间 查询 泊位数量 * @param berthRangeNo * @return */ Long queryBerthNumByBerthRangeNo(String berthRangeNo); /** * 更新占用 泊位的 在停车牌号 * @param req * @return */ Boolean updateCarNumberByBerthNo(ParkOrderUpdateCarNumberReq req); /** * 入场-修改泊位信息(仅仅用于pda入场) * @param * @return * @Author: xiejianpeng * @Date: 2019/9/10 09:55 * */ Integer updateBerthInfoForInPark(TpPBerths tpPBerths); /** * 更改泊位地磁出场时间 * @param * @return * @Author: xiejianpeng * @Date: 2019/11/18 22:45 * */ Integer updateBerthEqpOutTime(UpdateBerthRequest request); /** * 修改停车泊位记录 * @param * @return * @Author: xq * @Date: 2021/7/22 20:45 * */ Integer updateBerthInfoByPDA(UpdateBerthByOrderIdRequest request); /** * 统计车场泊位区间对应的空闲车位 * @param * @return * @Author: xiejianpeng * @Date: 2020/8/5 15:58 * */ List qyeryParkAreaBerthNumstatistic(String plNo); /** * 根据排班的停车场编号列表以及泊位号模糊查询对应的泊位信息 */ List queryBerthInfoByKeyWord (List plNos, String berthNo ); /** * 验证泊位号 * @param berthNo * @return */ BerthsDTO queryBerthsByBerthNo(String berthNo); }