Commit e8aca345 by ping.wu

Merge branches 'feature/20211103_取消支付冲正库存幂等_wuping' and 'qa' of…

Merge branches 'feature/20211103_取消支付冲正库存幂等_wuping' and 'qa' of http://gitlab.freemud.com/order-group-application/order-group into qa
parents 8997fda4 c88c4dd8
...@@ -33,5 +33,8 @@ public class ProductInfosDto { ...@@ -33,5 +33,8 @@ public class ProductInfosDto {
private Integer count; private Integer count;
private List<ProductInfo> products; private List<ProductInfo> products;
//传给pos的商品编号类型(0传三方编号给pos,1传货号给pos,默认传三方编号
private Integer toPosProductIdType;
} }
} }
\ No newline at end of file
...@@ -17,7 +17,7 @@ import com.freemud.sdk.api.assortment.order.response.order.PayAccessResponse; ...@@ -17,7 +17,7 @@ import com.freemud.sdk.api.assortment.order.response.order.PayAccessResponse;
public interface OrderBusinessService { public interface OrderBusinessService {
PayAccessResponse payAccess(ConfirmOrderRequest confirmOrderRequest); PayAccessResponse payAccess(ConfirmOrderRequest confirmOrderRequest);
Integer getPaySuccessTimeout(ConfirmOrderRequest confirmOrderRequest, PaySuccessReq request); // Integer getPaySuccessTimeout(ConfirmOrderRequest confirmOrderRequest, PaySuccessReq request);
CreateOrderResponse createOrderFlow(CreateOrderRequest createOrderRequest); CreateOrderResponse createOrderFlow(CreateOrderRequest createOrderRequest);
......
...@@ -112,7 +112,7 @@ public class OrderBusinessServiceImpl implements OrderBusinessService { ...@@ -112,7 +112,7 @@ public class OrderBusinessServiceImpl implements OrderBusinessService {
request.setMealCodeRule(confirmOrderRequest.getMealCodeRule()); request.setMealCodeRule(confirmOrderRequest.getMealCodeRule());
request.setPickUpGoodsNo(confirmOrderRequest.getPickUpGoodsNo()); request.setPickUpGoodsNo(confirmOrderRequest.getPickUpGoodsNo());
// 引入门店基础服务 查询自动制作完成配置时间,预约单单独超时任务设置 // 引入门店基础服务 查询自动制作完成配置时间,预约单单独超时任务设置
request.setTimeout(getPaySuccessTimeout(confirmOrderRequest, request)); request.setTimeout(this.getPaySuccessTimeout(confirmOrderRequest, request));
if (!org.springframework.util.CollectionUtils.isEmpty(confirmOrderRequest.getOrderSettlements())) { if (!org.springframework.util.CollectionUtils.isEmpty(confirmOrderRequest.getOrderSettlements())) {
List<OrderSettlementCreateReq> orderSettlementCreateReqs = new ArrayList<>(); List<OrderSettlementCreateReq> orderSettlementCreateReqs = new ArrayList<>();
...@@ -176,7 +176,6 @@ public class OrderBusinessServiceImpl implements OrderBusinessService { ...@@ -176,7 +176,6 @@ public class OrderBusinessServiceImpl implements OrderBusinessService {
return orderSdkAdapter.convent2PayAccessResponse(response); return orderSdkAdapter.convent2PayAccessResponse(response);
} }
@Override
public Integer getPaySuccessTimeout(ConfirmOrderRequest confirmOrderRequest, PaySuccessReq request) { public Integer getPaySuccessTimeout(ConfirmOrderRequest confirmOrderRequest, PaySuccessReq request) {
// 合阔pos 商户未接单退款超时时间 // 合阔pos 商户未接单退款超时时间
if (confirmOrderRequest.getNotAutomaticTwistTime() != null) { if (confirmOrderRequest.getNotAutomaticTwistTime() != null) {
......
...@@ -59,10 +59,18 @@ public class ItemServiceImpl implements ItemService{ ...@@ -59,10 +59,18 @@ public class ItemServiceImpl implements ItemService{
ProductInfosDto productInfosDto = storeItemClient.listProductInfos(getProductInfoDto); ProductInfosDto productInfosDto = storeItemClient.listProductInfos(getProductInfoDto);
if (ResponseCodeConstant.RESPONSE_SUCCESS.equals(productInfosDto.getErrcode()) && productInfosDto.getData() != null if (ResponseCodeConstant.RESPONSE_SUCCESS.equals(productInfosDto.getErrcode()) && productInfosDto.getData() != null
&& CollectionUtils.isNotEmpty(productInfosDto.getData().getProducts())) { && CollectionUtils.isNotEmpty(productInfosDto.getData().getProducts())) {
//1传货号给当三方商品编号给pos
boolean toPosCustomerCode = productInfosDto.getData().getToPosProductIdType() != null && productInfosDto.getData().getToPosProductIdType() == 1;
productInfosDto.getData().getProducts().forEach(productBean -> { productInfosDto.getData().getProducts().forEach(productBean -> {
GetProductsVo spuProductsVo = new GetProductsVo(); GetProductsVo spuProductsVo = new GetProductsVo();
//保存货号到三方商品编号字段
if(toPosCustomerCode){
spuProductsVo.setCustomerCode(productBean.getProductCode());
spuProductsVo.setProductCode(productBean.getCustomerCode());
}else {
spuProductsVo.setCustomerCode(productBean.getCustomerCode()); spuProductsVo.setCustomerCode(productBean.getCustomerCode());
spuProductsVo.setProductCode(productBean.getProductCode()); spuProductsVo.setProductCode(productBean.getProductCode());
}
List<AttributeValue> attributeValues = new ArrayList<>(); List<AttributeValue> attributeValues = new ArrayList<>();
//第三方商品属性信息 //第三方商品属性信息
if (CollectionUtils.isNotEmpty(productBean.getProductAttributeGroupList())) { if (CollectionUtils.isNotEmpty(productBean.getProductAttributeGroupList())) {
...@@ -83,9 +91,9 @@ public class ItemServiceImpl implements ItemService{ ...@@ -83,9 +91,9 @@ public class ItemServiceImpl implements ItemService{
resultMap.put(productBean.getPid(), spuProductsVo); resultMap.put(productBean.getPid(), spuProductsVo);
//多规格商品 //多规格商品
saveSkuProductsThirdInfo(productBean,productBean.getProductAttributeGroupList(),resultMap); saveSkuProductsThirdInfo(productBean,productBean.getProductAttributeGroupList(),resultMap,toPosCustomerCode);
//套餐商品内子商品 //套餐商品内子商品
saveComboProductsThirdInfo(productBean,resultMap); saveComboProductsThirdInfo(productBean,resultMap,toPosCustomerCode);
}); });
} }
return resultMap; return resultMap;
...@@ -95,12 +103,19 @@ public class ItemServiceImpl implements ItemService{ ...@@ -95,12 +103,19 @@ public class ItemServiceImpl implements ItemService{
/** /**
* 多规格商品保存第三方信息 * 多规格商品保存第三方信息
*/ */
private void saveSkuProductsThirdInfo(ProductInfo productBean,List<ProductAttributeGroup> productAttributeGroupList,Map<String, GetProductsVo> resultMap){ private void saveSkuProductsThirdInfo(ProductInfo productBean,List<ProductAttributeGroup> productAttributeGroupList,
Map<String, GetProductsVo> resultMap, boolean toPosCustomerCode){
if (CollectionUtils.isNotEmpty(productBean.getSkuList())) { if (CollectionUtils.isNotEmpty(productBean.getSkuList())) {
for (SkuProduct skuProductBean : productBean.getSkuList()) { for (SkuProduct skuProductBean : productBean.getSkuList()) {
GetProductsVo skuProductsVo = new GetProductsVo(); GetProductsVo skuProductsVo = new GetProductsVo();
skuProductsVo.setCustomerCode(skuProductBean.getCustomerCode()); //保存货号到三方商品编号字段
skuProductsVo.setProductCode(skuProductBean.getProductCode()); if(toPosCustomerCode){
skuProductsVo.setCustomerCode(productBean.getProductCode());
skuProductsVo.setProductCode(productBean.getCustomerCode());
}else {
skuProductsVo.setCustomerCode(productBean.getCustomerCode());
skuProductsVo.setProductCode(productBean.getProductCode());
}
//第三方商品规格值id //第三方商品规格值id
if (CollectionUtils.isNotEmpty(skuProductBean.getSkuSpecValues())) { if (CollectionUtils.isNotEmpty(skuProductBean.getSkuSpecValues())) {
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
...@@ -124,15 +139,21 @@ public class ItemServiceImpl implements ItemService{ ...@@ -124,15 +139,21 @@ public class ItemServiceImpl implements ItemService{
/** /**
* 套餐商品保存第三方信息 * 套餐商品保存第三方信息
*/ */
private void saveComboProductsThirdInfo(ProductInfo productBean,Map<String, GetProductsVo> resultMap){ private void saveComboProductsThirdInfo(ProductInfo productBean,Map<String, GetProductsVo> resultMap,boolean toPosCustomerCode){
GetProductsVo spuProductsVo = resultMap.get(productBean.getPid()); GetProductsVo spuProductsVo = resultMap.get(productBean.getPid());
List<Integer> stapleFood = Arrays.asList(0,1); List<Integer> stapleFood = Arrays.asList(0,1);
//套餐固定商品 //套餐固定商品
if (CollectionUtils.isNotEmpty(productBean.getProductComboList())) { if (CollectionUtils.isNotEmpty(productBean.getProductComboList())) {
for (ProductComboListDto productComboListDto : productBean.getProductComboList()) { for (ProductComboListDto productComboListDto : productBean.getProductComboList()) {
GetProductsVo comboProductsVo = new GetProductsVo(); GetProductsVo comboProductsVo = new GetProductsVo();
comboProductsVo.setCustomerCode(productComboListDto.getCustomerCode()); //保存货号到三方商品编号字段
comboProductsVo.setProductCode(productComboListDto.getProductCode()); if(toPosCustomerCode){
comboProductsVo.setCustomerCode(productBean.getProductCode());
comboProductsVo.setProductCode(productBean.getCustomerCode());
}else {
comboProductsVo.setCustomerCode(productBean.getCustomerCode());
comboProductsVo.setProductCode(productBean.getProductCode());
}
if (productComboListDto.getIsStaple()!=null && stapleFood.contains(productComboListDto.getIsStaple())) { if (productComboListDto.getIsStaple()!=null && stapleFood.contains(productComboListDto.getIsStaple())) {
comboProductsVo.setStapleFood(productComboListDto.getIsStaple()); comboProductsVo.setStapleFood(productComboListDto.getIsStaple());
} else { } else {
...@@ -170,8 +191,15 @@ public class ItemServiceImpl implements ItemService{ ...@@ -170,8 +191,15 @@ public class ItemServiceImpl implements ItemService{
for(GroupDetail groupDetailBean : group.getGroupDetail()){ for(GroupDetail groupDetailBean : group.getGroupDetail()){
//多规格获取sku信息 //多规格获取sku信息
GetProductsVo groupProductsVo = new GetProductsVo(); GetProductsVo groupProductsVo = new GetProductsVo();
groupProductsVo.setCustomerCode(groupDetailBean.getCustomerCode());
groupProductsVo.setProductCode(groupDetailBean.getProductCode()); //保存货号到三方商品编号字段
if(toPosCustomerCode){
groupProductsVo.setCustomerCode(productBean.getProductCode());
groupProductsVo.setProductCode(productBean.getCustomerCode());
}else {
groupProductsVo.setCustomerCode(productBean.getCustomerCode());
groupProductsVo.setProductCode(productBean.getProductCode());
}
//第三方商品属性信息 //第三方商品属性信息
groupProductsVo.setProductAttributeGroupList(groupDetailBean.getProductAttributeGroupList()); groupProductsVo.setProductAttributeGroupList(groupDetailBean.getProductAttributeGroupList());
......
...@@ -2446,7 +2446,6 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2446,7 +2446,6 @@ public class OrderServiceImpl implements Orderservice {
if (CollectionUtils.isNotEmpty(productDto.getComboProduct())) { if (CollectionUtils.isNotEmpty(productDto.getComboProduct())) {
for (CreateOrderProductRequest comboProduct : productDto.getComboProduct()) { for (CreateOrderProductRequest comboProduct : productDto.getComboProduct()) {
String comboSkuId = comboProduct.getSpecification(); String comboSkuId = comboProduct.getSpecification();
System.out.println(comboSkuId);
if (products.get(comboSkuId) != null) { if (products.get(comboSkuId) != null) {
comboProduct.setCustomerCode(products.get(comboSkuId).getCustomerCode()); comboProduct.setCustomerCode(products.get(comboSkuId).getCustomerCode());
comboProduct.setProductCode(products.get(comboSkuId).getProductCode()); comboProduct.setProductCode(products.get(comboSkuId).getProductCode());
......
...@@ -198,6 +198,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -198,6 +198,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
@Value("${saas.cart.sharing}") @Value("${saas.cart.sharing}")
private String sharing; private String sharing;
@Value("${saas.cart.sharing.new}")
private String newSharing;
@Value("${saas.cart.new.shopping.cart}") @Value("${saas.cart.new.shopping.cart}")
private String newShoppingCart; private String newShoppingCart;
...@@ -2740,33 +2743,33 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -2740,33 +2743,33 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
* *
* @param partnerId * @param partnerId
* @param storeId * @param storeId
* @return * @return 返回是否是新算价
*/ */
public boolean grayPush(String partnerId, String storeId, String version) { public boolean grayPush(String partnerId, String storeId, String version) {
if (StringUtils.isBlank(sharing)) return false; if (StringUtils.isBlank(newSharing)) return true;
CalculateCenter center = JSON.parseObject(sharing, CalculateCenter.class); CalculateCenter center = JSON.parseObject(newSharing, CalculateCenter.class);
Boolean enable = false; Boolean enable = true;
if (!center.getEnable()) return false; // if (!center.getEnable()) return false;
switch (center.getType()) { switch (center.getType()) {
case 2: case 2:
enable = true; enable = true;
break; break;
case 1: { case 1: {
//商户+门店级别 //商户+门店级别(新算价)
String real = partnerId.concat(storeId); String partnerId_storeId= partnerId.concat(storeId);
if (Arrays.asList(center.getGrayList().split(",")).contains(real)) { if (Arrays.asList(center.getGrayList().split(",")).contains(partnerId_storeId)) {
enable = true; enable = true;
} }
//商户级别 //商户级别(老算价)
else if (Arrays.asList(center.getGrayList().split(",")).contains(partnerId)) { else if (Arrays.asList(center.getGrayList().split(",")).contains(partnerId)) {
enable = true; enable = false;
}
} }
} }
if (center.getEnable() && enable) {
enable = true;
} }
// if (center.getEnable() && enable) {
// enable = true;
// }
return enable; return enable;
} }
......
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