update 个人桩预约

This commit is contained in:
Guoqs
2024-07-25 16:18:23 +08:00
parent 8f14e4e71d
commit b05a7e6ac2
9 changed files with 255 additions and 77 deletions

View File

@@ -13,6 +13,7 @@ import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.service.PileBasicInfoService;
import com.jsowell.pile.service.PileMerchantInfoService;
import com.jsowell.pile.service.PileReservationInfoService;
import com.jsowell.pile.vo.uniapp.customer.PersonPileConnectorSumInfoVO;
import com.jsowell.pile.vo.uniapp.customer.PersonPileRealTimeVO;
import com.jsowell.pile.vo.uniapp.customer.PersonalPileInfoVO;
@@ -43,6 +44,9 @@ public class PersonPileController extends BaseController {
@Autowired
private PileBasicInfoService pileBasicInfoService;
@Autowired
private PileReservationInfoService pileReservationInfoService;
/**
* 用户绑定个人桩
@@ -137,6 +141,7 @@ public class PersonPileController extends BaseController {
/**
* 个人桩停止充电
* http://localhost:8080/uniapp/personalPile/personPileStopCharging
* 管理员可以停自己启动的和别人启动的
* 其他人员只能停止自己启动的
*/
@@ -153,7 +158,7 @@ public class PersonPileController extends BaseController {
}
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
pileService.personPileStopCharging(dto);
pileReservationInfoService.personPileStopCharging(dto);
response = new RestApiResponse<>();
} catch (BusinessException e) {
logger.error("个人桩停止充电error", e);
@@ -192,7 +197,6 @@ public class PersonPileController extends BaseController {
/**
* 获取枪口实时数据
* <p>
* http://localhost:8080/uniapp/personalPile/getConnectorRealTimeInfo
*
* @param request
@@ -316,7 +320,7 @@ public class PersonPileController extends BaseController {
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
int reservedId = pileService.createReserved(dto);
int reservedId = pileReservationInfoService.createReservation(dto);
response = new RestApiResponse<>(ImmutableMap.of("reservedId", reservedId));
} catch (BusinessException e) {
logger.error("添加预约充电error, params:{}", dto, e);
@@ -340,7 +344,7 @@ public class PersonPileController extends BaseController {
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
PageResponse pageResponse = pileService.queryReservedList(dto);
PageResponse pageResponse = pileReservationInfoService.queryReservationList(dto);
response = new RestApiResponse<>(pageResponse);
} catch (BusinessException e) {
logger.error("查询预约列表error, params:{}", dto, e);
@@ -353,6 +357,30 @@ public class PersonPileController extends BaseController {
return response;
}
/**
* 修改预约充电
* http://localhost:8080/uniapp/personalPile/updateReservation
*/
@PostMapping("/updateReservation")
public RestApiResponse<?> updateReservation(HttpServletRequest request, @RequestBody PileReservationDTO dto) {
// logger.info("修改预约充电状态params:{}", dto);
RestApiResponse<?> response = null;
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
pileReservationInfoService.updateReservation(dto);
response = new RestApiResponse<>();
} catch (BusinessException e) {
logger.error("修改预约充电状态error, params:{}", dto, e);
response = new RestApiResponse<>(e.getCode(), e.getMessage());
} catch (Exception e) {
logger.error("修改预约充电状态error, params:{}", dto, e);
response = new RestApiResponse<>(ReturnCodeEnum.CODE_UPDATE_RESERVED_STATUS_ERROR);
}
logger.info("修改预约充电状态params:{}, result:{}", dto, response);
return response;
}
/**
* 修改预约充电状态
* http://localhost:8080/uniapp/personalPile/updateReservedStatus
@@ -364,7 +392,7 @@ public class PersonPileController extends BaseController {
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
pileService.updateReservedStatus(dto);
pileReservationInfoService.updateReservationStatus(dto);
response = new RestApiResponse<>();
} catch (BusinessException e) {
logger.error("修改预约充电状态error, params:{}", dto, e);
@@ -388,7 +416,7 @@ public class PersonPileController extends BaseController {
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
pileService.deleteReservation(dto);
pileReservationInfoService.deleteReservation(dto);
response = new RestApiResponse<>();
} catch (BusinessException e) {
logger.error("修改预约充电状态error, params:{}", dto, e);

View File

@@ -390,7 +390,7 @@ public class PileService {
public PersonPileRealTimeVO getConnectorRealTimeInfo(QueryPersonPileDTO dto) {
// 根据memberId查出该用户 正在充电、个人桩启动(白名单支付方式)的订单号
OrderBasicInfo orderBasicInfo = OrderBasicInfo.builder()
.memberId(dto.getMemberId())
// .memberId(dto.getMemberId())
.orderStatus(OrderStatusEnum.IN_THE_CHARGING.getValue())
.pileConnectorCode(dto.getPileConnectorCode())
.payMode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue()) // 3- 白名单支付
@@ -569,60 +569,6 @@ public class PileService {
}
}
public int createReserved(CreateReservedDTO dto) {
PileReservationInfo reservedInfo = new PileReservationInfo();
reservedInfo.setMemberId(dto.getMemberId());
reservedInfo.setPileSn(dto.getPileSn());
reservedInfo.setPileConnectorCode(dto.getPileConnectorCode());
reservedInfo.setStatus(Constants.ZERO); // 默认未生效
// reservedInfo.setStartTime(DateUtils.parseDate(dto.getStartTime()));
reservedInfo.setStartTime(Time.valueOf(dto.getStartTime()));
// reservedInfo.setEndTime(DateUtils.parseDate(dto.getEndTime()));
if (StringUtils.isNotBlank(dto.getEndTime())) {
reservedInfo.setEndTime(Time.valueOf(dto.getEndTime()));
}
if (StringUtils.isNotBlank(dto.getFreq())) {
reservedInfo.setReservationType("recurring");
reservedInfo.setFreq(dto.getFreq());
} else {
reservedInfo.setReservationType("single");
reservedInfo.setFreq(null);
}
reservedInfo.setCreateBy(dto.getMemberId());
pileReservationInfoService.insertSelective(reservedInfo);
return reservedInfo.getId();
}
public PageResponse queryReservedList(PileReservationDTO dto) {
int pageNo = dto.getPageNo() == null ? Constants.one : dto.getPageNo();
int pageSize = dto.getPageSize() == null ? 10 : dto.getPageSize();
PageHelper.startPage(pageNo, pageSize);
List<PileReservationInfo> list = pileReservationInfoService.getReservationsByMemberIdAndPileSn(dto.getMemberId(), dto.getPileSn());
PageInfo<PileReservationInfo> pageInfo = new PageInfo<>(list);
PageResponse pageResponse = new PageResponse();
pageResponse.setPageNum(pageInfo.getPageNum());
pageResponse.setPageSize(pageInfo.getPageSize());
pageResponse.setPages(pageInfo.getPages());
pageResponse.setTotal(pageInfo.getTotal());
List<PileReservedVO> resultList = Lists.newArrayList();
for (PileReservationInfo reservedInfo : pageInfo.getList()) {
resultList.add(
PileReservedVO.builder()
.reservedId(reservedInfo.getId() + "")
.pileSn(reservedInfo.getPileSn())
.startTime(reservedInfo.getStartTime().toString())
.endTime(reservedInfo.getEndTime().toString())
.freq(reservedInfo.getFreq())
.status(reservedInfo.getStatus())
.build()
);
}
pageResponse.setList(resultList);
return pageResponse;
}
public void deleteReservation(PileReservationDTO dto) {
pileReservationInfoService.deleteReservation(dto);
}
@@ -657,11 +603,4 @@ public class PileService {
return String.valueOf(i);
}
/**
* 个人桩停止充电
* @param dto
*/
public void personPileStopCharging(PersonPileStopChargingDTO dto) {
}
}