新增 运营端小程序通过站点id和枪口状态查询方法

This commit is contained in:
Lemon
2024-08-27 09:58:53 +08:00
parent 33838e6e7f
commit e1a9279ba5
12 changed files with 185 additions and 13 deletions

View File

@@ -161,7 +161,7 @@
请求方式POST
入参
### 入参
| 字段名 | 类型 | 是否必传 | 备注 |
| ---------- | ------------ | -------- | --------------------------------------- |
@@ -169,7 +169,7 @@
| type | String | Y | 日期类型1-近7天2-近30天3-近一年) |
| dateTime | String | N | 用户选中某天的日期 |
反参
### 反参
| 字段名 | 类型 | 是否必传 | 备注 |
| ------------------------------- | ------------------------- | -------- | ---------------- |

View File

@@ -5,8 +5,8 @@ import com.google.common.collect.ImmutableMap;
import com.jsowell.common.core.controller.BaseController;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.response.RestApiResponse;
import com.jsowell.pile.dto.StationBusinessAnalyzeInfoDTO;
import com.jsowell.pile.dto.StationStatisticsInfoDTO;
import com.jsowell.pile.dto.business.StationBusinessAnalyzeInfoDTO;
import com.jsowell.pile.dto.business.StationStatisticsInfoDTO;
import com.jsowell.pile.service.OrderBasicInfoService;
import com.jsowell.pile.service.PileStationInfoService;
import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO;

View File

@@ -0,0 +1,38 @@
package com.jsowell.pile.dto.business;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 运营端小程序查询枪口信息DTO
*
* @author Lemon
* @Date 2024/8/26 14:33:12
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class QueryConnectorInfoDTO {
/**
* 站点id
*/
private String stationId;
/**
* 枪口状态
*/
private String connectorStatus;
/**
* 页码
*/
private int pageNum;
/**
* 每页条数
*/
private int pageSize;
}

View File

@@ -1,4 +1,4 @@
package com.jsowell.pile.dto;
package com.jsowell.pile.dto.business;
import lombok.AllArgsConstructor;
import lombok.Builder;

View File

@@ -1,4 +1,4 @@
package com.jsowell.pile.dto;
package com.jsowell.pile.dto.business;
import lombok.AllArgsConstructor;
import lombok.Builder;

View File

@@ -114,4 +114,10 @@ public interface PileConnectorInfoMapper {
*/
List<ConnectorInfoVO> getUniAppConnectorList(@Param("stationId") Long stationId);
/**
* 批量查询枪口状态
* @param pileConnectorCodeList
* @return
*/
List<PileConnectorInfo> getConnectorStatus(@Param("pileConnectorCodeList") List<String> pileConnectorCodeList);
}

View File

@@ -5,6 +5,7 @@ import com.jsowell.pile.domain.PileConnectorInfo;
import com.jsowell.pile.dto.QueryConnectorDTO;
import com.jsowell.pile.dto.QueryConnectorListDTO;
import com.jsowell.pile.dto.UpdateConnectorParkNoDTO;
import com.jsowell.pile.dto.business.QueryConnectorInfoDTO;
import com.jsowell.pile.vo.base.ConnectorInfoVO;
import com.jsowell.pile.vo.web.PileConnectorInfoVO;
@@ -128,9 +129,17 @@ public interface PileConnectorInfoService {
/**
* 修改车位号
* @param pileConnectorInfo
* @param dto
*/
int updateConnectorParkNo(UpdateConnectorParkNoDTO dto);
boolean checkPileOffLine(String pileSn);
//↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 后管小程序 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
/**
* 通过站点id和枪口状态查询枪口列表
*/
void getConnectorListByStationAndStatus(QueryConnectorInfoDTO dto);
}

View File

@@ -4,6 +4,8 @@ import com.jsowell.common.core.page.PageResponse;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.dto.amap.GetStationInfoDTO;
import com.jsowell.pile.dto.business.StationBusinessAnalyzeInfoDTO;
import com.jsowell.pile.dto.business.StationStatisticsInfoDTO;
import com.jsowell.pile.dto.lutongyunting.BindParkingPlatformDTO;
import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryStationInfoDTO;
import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO;

View File

@@ -22,6 +22,7 @@ import com.jsowell.pile.domain.PileConnectorInfo;
import com.jsowell.pile.dto.QueryConnectorDTO;
import com.jsowell.pile.dto.QueryConnectorListDTO;
import com.jsowell.pile.dto.UpdateConnectorParkNoDTO;
import com.jsowell.pile.dto.business.QueryConnectorInfoDTO;
import com.jsowell.pile.mapper.PileBasicInfoMapper;
import com.jsowell.pile.mapper.PileConnectorInfoMapper;
import com.jsowell.pile.service.*;
@@ -769,4 +770,45 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService {
return i;
}
/**
* 批量获取枪口状态
* @param pileConnectorCodeList
* @return
*/
private Map<String, String> getConnectorStatus(List<String> pileConnectorCodeList) {
List<PileConnectorInfo> pileConnectorInfos = pileConnectorInfoMapper.getConnectorStatus(pileConnectorCodeList);
for (PileConnectorInfo pileConnectorInfo : pileConnectorInfos) {
String status = pileConnectorInfo.getStatus();
if (StringUtils.equals(status, PileConnectorDataBaseStatusEnum.OFF_NETWORK.getValue())) {
}
}
return null;
}
//↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 后管小程序 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
@Override
public void getConnectorListByStationAndStatus(QueryConnectorInfoDTO dto) {
String stationId = dto.getStationId();
String connectorStatus = dto.getConnectorStatus();
int pageNum = dto.getPageNum();
int pageSize = dto.getPageSize();
// 根据站点id和枪口状态查询枪口列表
QueryConnectorListDTO queryConnectorListDTO = QueryConnectorListDTO.builder()
.pageNum(pageNum)
.pageSize(pageSize)
.stationIdList(Lists.newArrayList(Long.parseLong(stationId)))
.build();
List<PileConnectorInfoVO> pileConnectorInfoVOList = getConnectorInfoListByParams(queryConnectorListDTO);
if (connectorStatus != null) {
// 筛选出符合状态的数据
pileConnectorInfoVOList = pileConnectorInfoVOList.stream()
.filter(x -> x.getStatus() == Integer.parseInt(connectorStatus))
.collect(Collectors.toList());
}
}
}

View File

@@ -14,10 +14,7 @@ import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.enums.ykc.PileConnectorDataBaseStatusEnum;
import com.jsowell.common.enums.ykc.ReturnCodeEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.DistanceUtils;
import com.jsowell.common.util.SecurityUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.*;
import com.jsowell.common.util.ip.AddressUtils;
import com.jsowell.pile.domain.PileBasicInfo;
import com.jsowell.pile.domain.PileStationInfo;
@@ -25,6 +22,8 @@ import com.jsowell.pile.domain.SettleOrderReport;
import com.jsowell.pile.domain.ThirdpartyParkingConfig;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.dto.amap.GetStationInfoDTO;
import com.jsowell.pile.dto.business.StationBusinessAnalyzeInfoDTO;
import com.jsowell.pile.dto.business.StationStatisticsInfoDTO;
import com.jsowell.pile.dto.lutongyunting.BindParkingPlatformDTO;
import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryStationInfoDTO;
import com.jsowell.pile.mapper.PileStationInfoMapper;
@@ -37,8 +36,6 @@ import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationOrderQuantityInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationStatisticsInfosVO;
import com.jsowell.pile.vo.uniapp.customer.CurrentTimePriceDetails;
import com.jsowell.pile.vo.web.OrderDetailInfoVO;
import com.jsowell.pile.vo.web.PileConnectorInfoVO;
import com.jsowell.pile.vo.web.PileStationVO;
import com.jsowell.system.service.SysDeptService;
import com.jsowell.system.service.SysUserService;

View File

@@ -0,0 +1,68 @@
package com.jsowell.pile.vo.uniapp.business;
import com.jsowell.pile.vo.web.PileConnectorInfoVO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 运营端小程序枪口信息VO
*
* @author Lemon
* @Date 2024/8/27 8:33:37
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class BusinessConnectorInfoVO {
/**
* 站点id
*/
private String stationId;
/**
* 站点名称
*/
private String stationName;
/**
* 总枪口数量
*/
private String connectorNum;
/**
* 充电中枪口数量
*/
private String chargingConnectorNum;
/**
* 空闲枪口数量
*/
private String freeConnectorNum;
/**
* 挂起枪口数量
*/
private String hangingConnectorNum;
/**
* 占用中枪口数量
*/
private String occupiedConnectorNum;
/**
* 离线枪口数量
*/
private String offlineConnectorNum;
/**
* 故障枪口数量
*/
private String faultConnectorNum;
private List<PileConnectorInfoVO> pileConnectorInfoVOList;
}

View File

@@ -247,4 +247,14 @@
WHERE t1.del_flag = '0'
AND t2.station_id = #{stationId,jdbcType=BIGINT}
</select>
<select id="getConnectorStatus" resultMap="PileConnectorInfoResult">
select pile_connector_code as pileConnectorCode,
status
from pile_connector_info
where pile_connector_code in
<foreach collection="pileConnectorCodeList" item="pileConnectorCode" open="(" separator="," close=")">
#{pileConnectorCode,jdbcType=VARCHAR}
</foreach>
</select>
</mapper>