Commit fa4aa19b by hanghang.wang

华莱士

parent 3440651c
......@@ -53,7 +53,7 @@ public class SpellGroupOrderAdapter {
createOrderRequest.setPartnerId(createSpellGroupOrderDto.getPartnerId());
createOrderRequest.setStoreId(createSpellGroupOrderDto.getStoreId());
createOrderRequest.setThirdStoreId(createSpellGroupOrderDto.getStoreId());
StoreResponse.BizVO storeInfo = createSpellGroupOrderDto.getStoreResponse().getBizVO();
StoreResponse.BizVO storeInfo = createSpellGroupOrderDto.getStore();
createOrderRequest.setStoreName(storeInfo.getStoreName());
createOrderRequest.setStoreNameEn(storeInfo.getStoreNameEn());
createOrderRequest.setUserId(createSpellGroupOrderDto.getUserId());
......@@ -69,10 +69,10 @@ public class SpellGroupOrderAdapter {
//运费
long freight = 0 ;
//判断是否包邮,包邮的话运费为0
if (createSpellGroupOrderDto.getDeliveryTemplateInfoVo().getIsDispatchFree() == false) {
freight = createSpellGroupOrderDto.getDeliveryTemplateInfoVo().getFreight();
if (createSpellGroupOrderDto.getDeliveryTemplateInfo().getIsDispatchFree() == false) {
freight = createSpellGroupOrderDto.getDeliveryTemplateInfo().getFreight();
}
ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscount = createSpellGroupOrderDto.getActivityCalculationDiscountResponseDto().getResult();
ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscount = createSpellGroupOrderDto.getCalculationDiscount();
createOrderRequest.setActualPayAmount(calculationDiscount.getTotalAmount().longValue() + freight); //加配送费
createOrderRequest.setSettlementAmount(calculationDiscount.getTotalAmount().longValue() + freight);
createOrderRequest.setOriginalAmount(calculationDiscount.getOriginalTotalAmount().longValue() + freight);
......@@ -240,20 +240,20 @@ public class SpellGroupOrderAdapter {
public ActivityUpdateStockRequest convert2ActivityUpdateStockRequest(QueryOrdersResponse.DataBean.OrderBean orderBean, CreateSpellGroupOrderDto createSpellGroupOrderDto) {
if (orderBean == null || createSpellGroupOrderDto.getActivityCalculationDiscountResponseDto().getResult() == null) {
if (orderBean == null || createSpellGroupOrderDto.getCalculationDiscount() == null) {
return null;
}
ActivityUpdateStockRequest activityUpdateStockRequest = new ActivityUpdateStockRequest();
activityUpdateStockRequest.setOrderId(orderBean.getOid());
activityUpdateStockRequest.setPartnerCode(orderBean.getCompanyId());
activityUpdateStockRequest.setStoreId(orderBean.getShopId());
activityUpdateStockRequest.setVer(createSpellGroupOrderDto.getActivityCalculationDiscountResponseDto().getVer().toString());
activityUpdateStockRequest.setVer("1");
activityUpdateStockRequest.setUserId(orderBean.getUserId());
activityUpdateStockRequest.setOrderCreateTime(DateUtil.getCurrentDate(DateUtil.FORMAT_yyyyMMdd_date));
List<String> activityList = new ArrayList<>();
activityList.add(createSpellGroupOrderDto.getActivityCode());
activityUpdateStockRequest.setActivityList(activityList);
activityUpdateStockRequest.setStock(createSpellGroupOrderDto.getActivityCalculationDiscountResponseDto().getResult().getStocks());
activityUpdateStockRequest.setStock(createSpellGroupOrderDto.getCalculationDiscount().getStocks());
return activityUpdateStockRequest;
}
......@@ -272,7 +272,7 @@ public class SpellGroupOrderAdapter {
QueryDeliveryTemplateRequest queryDeliveryTemplateRequest = new QueryDeliveryTemplateRequest();
queryDeliveryTemplateRequest.setPartnerId(createSpellGroupOrderDto.getPartnerId());
queryDeliveryTemplateRequest.setProvince(createSpellGroupOrderDto.getProvince());
queryDeliveryTemplateRequest.setOrderAmount(createSpellGroupOrderDto.getActivityCalculationDiscountResponseDto().getResult().getTotalAmount().intValue());
queryDeliveryTemplateRequest.setOrderAmount(createSpellGroupOrderDto.getCalculationDiscount().getTotalAmount().intValue());
queryDeliveryTemplateRequest.setCount(createSpellGroupOrderDto.getProducts().size());
return queryDeliveryTemplateRequest;
}
......
......@@ -55,16 +55,16 @@ public class CreateSpellGroupOrderDto extends CreateSpellGroupOrderReq {
/**
* 存储促销返回商品算价信息
*/
private ActivityCalculationDiscountResponseDto activityCalculationDiscountResponseDto;
private ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscount;
/**
* 门店信息
*/
private StoreResponse storeResponse;
private StoreResponse.BizVO store;
/**
*配送费信息
*/
private QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo;
private QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfo;
}
......@@ -5,6 +5,7 @@ import lombok.Builder;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.util.List;
......@@ -77,8 +78,8 @@ public class CreateSpellGroupOrderReq {
@ApiModelProperty(value = "拼团活动号")
private String activityCode;
@NotNull(message = "拼团商品信息不能为空")
@ApiModelProperty(value = "拼团商品集合")
@Valid
private List<SpellGroupProduct> spellGroupProductList;
/**
......@@ -93,7 +94,9 @@ public class CreateSpellGroupOrderReq {
*/
@Data
public static class SpellGroupProduct {
@NotNull(message = "商品id不能为空")
private String productId;
@NotNull(message = "数量不能为空")
private Integer productQuantity;
}
......
......@@ -114,15 +114,10 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
if (userLoginInfoDto == null || StringUtils.isEmpty(userLoginInfoDto.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN);
}
/*初始化service业务DTO类,后续数据收集以及转换依据CreateSpellGroupOrderDto*/
CreateSpellGroupOrderDto createSpellGroupOrderDto = new CreateSpellGroupOrderDto();
BeanUtils.copyProperties(createSpellGroupOrderReq, createSpellGroupOrderDto);
createSpellGroupOrderDto.setUserId(userLoginInfoDto.getMemberId());
createSpellGroupOrderDto.setNickName(userLoginInfoDto.getNickName());
/*团id不为空,查询团信息,校验团状态是否正常.调用促销查询团是否关闭,关闭之后给提示不可下单*/
if(!StringUtils.isEmpty(createSpellGroupOrderReq.getSpellGroupCode())){
QuerySpellGroupVoResponse querySpellGroupVoResponse = spellGroupOrderDataManager.queryByGroupIdNew(createSpellGroupOrderDto.getSpellGroupCode(),
createSpellGroupOrderDto.getUserId(),createSpellGroupOrderDto.getActivityCode(),createSpellGroupOrderDto.getPartnerId());
QuerySpellGroupVoResponse querySpellGroupVoResponse = spellGroupOrderDataManager.queryByGroupIdNew(createSpellGroupOrderReq.getSpellGroupCode(),
userLoginInfoDto.getMemberId(),createSpellGroupOrderReq.getActivityCode(),createSpellGroupOrderReq.getPartnerId());
if(!ResponseResult.SUCCESS.getCode().equals(querySpellGroupVoResponse.getStatusCode()) || querySpellGroupVoResponse.getResult() == null){
return ResponseUtil.error(querySpellGroupVoResponse.getStatusCode(),querySpellGroupVoResponse.getMsg());
}
......@@ -131,21 +126,25 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
return ResponseUtil.error(message);
}
}
/*初始化service业务DTO类,后续数据收集以及转换依据CreateSpellGroupOrderDto*/
CreateSpellGroupOrderDto createSpellGroupOrderDto = new CreateSpellGroupOrderDto();
BeanUtils.copyProperties(createSpellGroupOrderReq, createSpellGroupOrderDto);
/*前端传入地址等信息->转换至DTO*/
spellGroupOrderAdapter.convertToReceiveAddress(createSpellGroupOrderDto);
createSpellGroupOrderDto.setUserId(userLoginInfoDto.getMemberId());
createSpellGroupOrderDto.setNickName(userLoginInfoDto.getNickName());
/*获取虚拟门店id,拼单虚拟门店,无需校验。方便后续取值门店名称以及门店英文名称*/
VirtualBindStoreResponse virtualBindStoreResponse = spellGroupOrderDataManager.change2BindMallShopId(createSpellGroupOrderReq.getAppId());
if(virtualBindStoreResponse == null){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_BIND_STORE_ERROR);
}
createSpellGroupOrderDto.setStoreId(virtualBindStoreResponse.getStoreId());
/*门店信息->转换至DTO*/
StoreResponse storeResponse = spellGroupOrderDataManager.getStoreInfo(createSpellGroupOrderReq.getPartnerId(), virtualBindStoreResponse.getStoreId(), trackingNo);
if(storeResponse == null || storeResponse.getBizVO() == null){
return ResponseUtil.error(ResponseResult.STORE_ITEM_QUERY_ERROR);
}
/*门店信息->转换至DTO*/
createSpellGroupOrderDto.setStoreResponse(storeResponse);
/*前端传入地址等信息->转换至DTO*/
spellGroupOrderAdapter.convertToReceiveAddress(createSpellGroupOrderDto);
createSpellGroupOrderDto.setStore(storeResponse.getBizVO());
/*查询拼团商品信息->转换至DTO*/
List<ProductInfo> productInfosDto = spellGroupOrderDataManager.queryProductInfos(createSpellGroupOrderDto);
if(productInfosDto == null){
......@@ -165,14 +164,14 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
if (activityCalculationDiscountResponseDto.getResult().getTotalAmount().equals(productInfosDto.get(0).getOriginalPrice())) {
return ResponseUtil.error(ResponseResult.SPELL_GROUP_ACTIVITE_AMOUNT_ERROR);
}
createSpellGroupOrderDto.setActivityCalculationDiscountResponseDto(activityCalculationDiscountResponseDto);
createSpellGroupOrderDto.setCalculationDiscount(activityCalculationDiscountResponseDto.getResult());
/*转换request->查询快递费用信息->转换dto*/
QueryDeliveryTemplateRequest queryDeliveryTemplateRequest = spellGroupOrderAdapter.convertToQueryDeliveryTemplateRequest(createSpellGroupOrderDto);
QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(queryDeliveryTemplateRequest);
if(queryDeliveryTemplateResponse == null ){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_DELIVERYTEMPLATE_ERROR);
}
createSpellGroupOrderDto.setDeliveryTemplateInfoVo(queryDeliveryTemplateResponse.getData());
createSpellGroupOrderDto.setDeliveryTemplateInfo(queryDeliveryTemplateResponse.getData());
/*createSpellGroupOrderDto转换为订单Request信息*/
com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest createOrderRequest = spellGroupOrderAdapter.convertToCreateOrderRequest(createSpellGroupOrderDto, userLoginInfoDto);
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> response = orderSdkService.createOrder(createOrderRequest, trackingNo);
......@@ -190,6 +189,11 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
return orderService.createPrepayOrder(createPrepayRequestDto);
}
/***
* 查询配送费。包装一层返回给前端。
* @param request
* @return
*/
@Override
public BaseResponse queryDeliveryAmount(QueryDeliveryTemplateRequest request) {
QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(request);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment