生成占桩订单

This commit is contained in:
2023-08-18 12:02:34 +08:00
parent 5bf5ffc3b7
commit 31c295ee90
7 changed files with 104 additions and 48 deletions

View File

@@ -0,0 +1,27 @@
package com.jsowell.pile.dto;
import lombok.Data;
@Data
public class RemoteGroundLockDTO {
/**
* 桩编号
*/
private String pileSn;
/**
* 枪口编号
*/
private String connectorCode;
/**
* 地锁操作
* 0-降 1-升
*/
private String operate;
/**
* 会员id
*/
private String memberId;
}

View File

@@ -4,6 +4,7 @@ import com.jsowell.pile.domain.OrderPileOccupy;
import com.jsowell.pile.dto.PayOrderDTO;
import com.jsowell.pile.dto.GenerateOccupyOrderDTO;
import com.jsowell.pile.dto.QueryOccupyOrderDTO;
import com.jsowell.pile.dto.RemoteGroundLockDTO;
import com.jsowell.pile.vo.uniapp.OrderPileOccupyVO;
import java.util.List;
@@ -71,4 +72,10 @@ public interface OrderPileOccupyService{
* @return
*/
OrderPileOccupy getOrderInfoByPile(String pileSn, String connectorCode);
/**
* 控制地锁方法
* @param dto
*/
void remoteGroundLock(RemoteGroundLockDTO dto);
}

View File

@@ -5,20 +5,18 @@ import com.jsowell.adapay.service.AdapayService;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.enums.DelFlagEnum;
import com.jsowell.common.enums.MemberWalletEnum;
import com.jsowell.common.enums.uniapp.OccupyOrderPayStatusEnum;
import com.jsowell.common.enums.uniapp.OccupyOrderStatusEnum;
import com.jsowell.common.enums.ykc.OrderPayModeEnum;
import com.jsowell.common.enums.ykc.ReturnCodeEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.enums.uniapp.OrderPileOccupyPayStatusEnum;
import com.jsowell.common.enums.uniapp.OrderPileOccupyStatusEnum;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.PageUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.id.IdUtils;
import com.jsowell.pile.domain.OrderPileOccupy;
import com.jsowell.pile.dto.PayOrderDTO;
import com.jsowell.pile.dto.GenerateOccupyOrderDTO;
import com.jsowell.pile.dto.QueryOccupyOrderDTO;
import com.jsowell.pile.dto.QueryOrderDTO;
import com.jsowell.pile.domain.ykcCommond.RemoteControlGroundLockCommand;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.mapper.OrderPileOccupyMapper;
import com.jsowell.pile.service.*;
import com.jsowell.pile.vo.base.PileInfoVO;
@@ -28,6 +26,7 @@ import com.jsowell.pile.vo.web.BillingTemplateVO;
import com.jsowell.pile.vo.web.OrderListVO;
import com.jsowell.pile.vo.web.UpdateMemberBalanceDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -58,6 +57,12 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService {
@Resource
private IMemberBasicInfoService memberBasicInfoService;
@Autowired
private YKCPushCommandService ykcPushCommandService;
@Autowired
private OrderPileOccupyService orderPileOccupyService;
@Override
public int deleteByPrimaryKey(Integer id) {
return orderPileOccupyMapper.deleteByPrimaryKey(id);
@@ -154,7 +159,7 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService {
String occupyCode = "OP" + IdUtils.getOrderCode();
orderPileOccupy.setOccupyCode(occupyCode);
orderPileOccupy.setMemberId(memberId);
orderPileOccupy.setStatus(OrderPileOccupyStatusEnum.DRAFT_ORDER.getCode()); // 占桩中
orderPileOccupy.setStatus(OccupyOrderStatusEnum.DRAFT_ORDER.getCode()); // 占桩中
orderPileOccupy.setPayStatus(Constants.ZERO); // 未支付
orderPileOccupy.setPileSn(pileSn);
PileInfoVO pileInfoVO = pileBasicInfoService.selectPileInfoBySn(pileSn);
@@ -298,9 +303,9 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService {
List<OrderPileOccupyVO> list = orderPileOccupyMapper.getOccupyOrderInfo(memberId);
for (OrderPileOccupyVO orderPileOccupyVO : list) {
// 订单状态
orderPileOccupyVO.setStatus(OrderPileOccupyStatusEnum.getValueByCode(orderPileOccupyVO.getStatus()));
orderPileOccupyVO.setStatus(OccupyOrderStatusEnum.getValueByCode(orderPileOccupyVO.getStatus()));
// 支付状态
orderPileOccupyVO.setPayStatus(OrderPileOccupyPayStatusEnum.getValueByCode(orderPileOccupyVO.getPayStatus()));
orderPileOccupyVO.setPayStatus(OccupyOrderPayStatusEnum.getValueByCode(orderPileOccupyVO.getPayStatus()));
}
return list;
}
@@ -315,6 +320,28 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService {
public OrderPileOccupy getOrderInfoByPile(String pileSn, String connectorCode) {
return orderPileOccupyMapper.getOrderInfoByPile(pileSn, connectorCode);
}
@Override
public void remoteGroundLock(RemoteGroundLockDTO dto) {
// 控制地锁升降
RemoteControlGroundLockCommand command = new RemoteControlGroundLockCommand();
command.setPileSn(dto.getPileSn());
command.setConnectorCode(dto.getConnectorCode());
command.setOperate(dto.getOperate());
ykcPushCommandService.pushRemoteControlGroundLock(command);
// 如果是降锁生成占桩订单
if (StringUtils.equals(dto.getOperate(), Constants.ZERO)) {
// 生成占桩订单
GenerateOccupyOrderDTO generateOccupyOrderDTO = new GenerateOccupyOrderDTO();
generateOccupyOrderDTO.setMemberId(dto.getMemberId());
generateOccupyOrderDTO.setPileSn(dto.getPileSn());
generateOccupyOrderDTO.setConnectorCode(dto.getConnectorCode());
// 生成占桩订单(草稿单)
orderPileOccupyService.generateOccupyPileOrder(generateOccupyOrderDTO);
}
}
/*
* 支付占桩订单
*
@@ -367,16 +394,16 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService {
// 更新占桩订单状态
OrderPileOccupy orderPileOccupy = queryByOccupyCode(dto.getOrderCode());
orderPileOccupy.setStatus(OrderPileOccupyStatusEnum.ORDER_COMPLETE.getValue());
orderPileOccupy.setPayStatus(OrderPileOccupyPayStatusEnum.PAYMENT_COMPLETION.getValue());
orderPileOccupy.setStatus(OccupyOrderStatusEnum.ORDER_COMPLETE.getValue());
orderPileOccupy.setPayStatus(OccupyOrderPayStatusEnum.PAYMENT_COMPLETION.getValue());
updateByPrimaryKeySelective(orderPileOccupy);
}
private void whiteListPayOccupyPileOrder(PayOrderDTO dto) {
// 更新占桩订单状态
OrderPileOccupy orderPileOccupy = queryByOccupyCode(dto.getOrderCode());
orderPileOccupy.setStatus(OrderPileOccupyStatusEnum.ORDER_COMPLETE.getValue());
orderPileOccupy.setPayStatus(OrderPileOccupyPayStatusEnum.NO_PAYMENT_REQUIRED.getValue());
orderPileOccupy.setStatus(OccupyOrderStatusEnum.ORDER_COMPLETE.getValue());
orderPileOccupy.setPayStatus(OccupyOrderPayStatusEnum.NO_PAYMENT_REQUIRED.getValue());
updateByPrimaryKeySelective(orderPileOccupy);
}
}