|
@@ -1,9 +1,14 @@
|
|
package com.xyzc.start.service.impl;
|
|
package com.xyzc.start.service.impl;
|
|
|
|
|
|
import com.xyzc.common.core.exception.ErrorCode;
|
|
import com.xyzc.common.core.exception.ErrorCode;
|
|
|
|
+import com.xyzc.common.core.exception.ServerException;
|
|
import com.xyzc.common.core.utils.AssertUtils;
|
|
import com.xyzc.common.core.utils.AssertUtils;
|
|
|
|
+import com.xyzc.common.core.utils.MapstructUtils;
|
|
|
|
+import com.xyzc.common.core.utils.SpringUtils;
|
|
import com.xyzc.common.web.security.user.SecurityUser;
|
|
import com.xyzc.common.web.security.user.SecurityUser;
|
|
|
|
+import com.xyzc.start.constant.BaseUserOrderStatus;
|
|
import com.xyzc.start.constant.SchemeConst;
|
|
import com.xyzc.start.constant.SchemeConst;
|
|
|
|
+import com.xyzc.start.domain.BaseUserOrder;
|
|
import com.xyzc.start.domain.Scheme;
|
|
import com.xyzc.start.domain.Scheme;
|
|
import com.xyzc.start.domain.bo.CreateOrderBo;
|
|
import com.xyzc.start.domain.bo.CreateOrderBo;
|
|
import com.xyzc.start.domain.vo.*;
|
|
import com.xyzc.start.domain.vo.*;
|
|
@@ -13,6 +18,7 @@ import lombok.RequiredArgsConstructor;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.Collections;
|
|
import java.util.Collections;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -27,6 +33,7 @@ public class SchemeServiceImpl implements ISchemeService {
|
|
private final AiModelMapper aiModelMapper;
|
|
private final AiModelMapper aiModelMapper;
|
|
|
|
|
|
private final FuelPackageMapper fuelPackageMapper;
|
|
private final FuelPackageMapper fuelPackageMapper;
|
|
|
|
+ private final BaseUserOrderMapper baseUserOrderMapper;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取当前方案
|
|
* 获取当前方案
|
|
@@ -161,6 +168,9 @@ public class SchemeServiceImpl implements ISchemeService {
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public BaseUserOrderVo createOrder(CreateOrderBo bo) {
|
|
public BaseUserOrderVo createOrder(CreateOrderBo bo) {
|
|
|
|
+ // 生成订单
|
|
|
|
+ BaseUserOrderVo baseUserOrderVo = new BaseUserOrderVo();
|
|
|
|
+
|
|
List<MemberCardOrderVo> memberCardOrderList = null;
|
|
List<MemberCardOrderVo> memberCardOrderList = null;
|
|
// 或者燃料包
|
|
// 或者燃料包
|
|
List<FuelPackageOrderVo> fuelPackageOrderList = null;
|
|
List<FuelPackageOrderVo> fuelPackageOrderList = null;
|
|
@@ -169,22 +179,32 @@ public class SchemeServiceImpl implements ISchemeService {
|
|
Scheme scheme = schemeMapper.querySchemeByMemberId(bo);
|
|
Scheme scheme = schemeMapper.querySchemeByMemberId(bo);
|
|
// 没有生效的套餐抛出异常
|
|
// 没有生效的套餐抛出异常
|
|
AssertUtils.notNull(scheme, ErrorCode.SCHEME_NOT_EXIST);
|
|
AssertUtils.notNull(scheme, ErrorCode.SCHEME_NOT_EXIST);
|
|
-
|
|
|
|
memberCardOrderList = memberCardMapper.queryOrderByMemberId(bo, 1810310843224322049L);
|
|
memberCardOrderList = memberCardMapper.queryOrderByMemberId(bo, 1810310843224322049L);
|
|
|
|
|
|
|
|
+ baseUserOrderVo.setGoodsAmount(memberCardOrderList.get(0).getPrice());
|
|
|
|
+ baseUserOrderVo.setPayAmount(memberCardOrderList.get(0).getPrice());
|
|
|
|
+
|
|
} else if (SchemeConst.FUEL_TYPE.equals(bo.getType())) {
|
|
} else if (SchemeConst.FUEL_TYPE.equals(bo.getType())) {
|
|
Scheme scheme = schemeMapper.querySchemeByFuel(bo);
|
|
Scheme scheme = schemeMapper.querySchemeByFuel(bo);
|
|
// 没有生效的套餐抛出异常
|
|
// 没有生效的套餐抛出异常
|
|
AssertUtils.notNull(scheme, ErrorCode.SCHEME_NOT_EXIST);
|
|
AssertUtils.notNull(scheme, ErrorCode.SCHEME_NOT_EXIST);
|
|
-
|
|
|
|
fuelPackageOrderList = fuelPackageMapper.queryOrderByFuelPackageId(bo, 1810310843224322049L);
|
|
fuelPackageOrderList = fuelPackageMapper.queryOrderByFuelPackageId(bo, 1810310843224322049L);
|
|
|
|
+
|
|
|
|
+ baseUserOrderVo.setGoodsAmount(fuelPackageOrderList.get(0).getPrice());
|
|
|
|
+ baseUserOrderVo.setPayAmount(fuelPackageOrderList.get(0).getPrice());
|
|
}
|
|
}
|
|
|
|
|
|
- // TODO 生成一个假数据
|
|
|
|
- BaseUserOrderVo baseUserOrderVo = new BaseUserOrderVo();
|
|
|
|
|
|
+
|
|
baseUserOrderVo.setMemberCardList(memberCardOrderList);
|
|
baseUserOrderVo.setMemberCardList(memberCardOrderList);
|
|
baseUserOrderVo.setFuelPackageList(fuelPackageOrderList);
|
|
baseUserOrderVo.setFuelPackageList(fuelPackageOrderList);
|
|
|
|
|
|
|
|
+ baseUserOrderVo.setStatus(BaseUserOrderStatus.UNPAID);
|
|
|
|
+ baseUserOrderVo.setDiscountAmount(new BigDecimal(0));
|
|
|
|
+
|
|
|
|
+ BaseUserOrder convert = MapstructUtils.convert(baseUserOrderVo, BaseUserOrder.class);
|
|
|
|
+ baseUserOrderMapper.insert(convert);
|
|
|
|
+ baseUserOrderVo.setId(convert.getId());
|
|
|
|
+
|
|
return baseUserOrderVo;
|
|
return baseUserOrderVo;
|
|
}
|
|
}
|
|
}
|
|
}
|