Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
39919b8c
Commit
39919b8c
authored
Jun 24, 2021
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
购买虚拟商品校验门店菜单
parent
39baff7a
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
127 additions
and
178 deletions
+127
-178
order-application-service/src/main/java/cn/freemud/entities/dto/product/GetValidateProductInfoDto.java
+55
-0
order-application-service/src/main/java/cn/freemud/entities/dto/product/ProductInfo.java
+0
-143
order-application-service/src/main/java/cn/freemud/entities/dto/product/ValidateProductInfosDto.java
+44
-0
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
+19
-35
order-application-service/src/main/java/cn/freemud/service/thirdparty/StoreItemClient.java
+9
-0
No files found.
order-application-service/src/main/java/cn/freemud/entities/dto/product/GetValidateProductInfoDto.java
0 → 100644
View file @
39919b8c
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: GetProductInfoDto
* @Package cn.freemud.entities.dto
* @Description:
* @author: liming.guo
* @date: 2018/5/16 19:52
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
entities
.
dto
.
product
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
GetValidateProductInfoDto
{
/**
* 商户ID
*/
private
String
partnerId
;
/**
* 门店ID
*/
private
String
storeId
;
/**
* 根据spu或者sku查询所有商品信息
*/
private
List
<
String
>
productIds
;
/**
* 查询指定spu下面的制定sku信息
*/
private
List
<
ProductInfo
>
productInfoList
;
/**
* 门店商品渠道 saas(开个店自提)、saasdelivery(开个店外卖)、saasmall(微商城)、wc(围餐)、mtwm(美团外卖)、jdwm(京东外卖)、fmwd(非码微店)、eleme(饿了么外卖)、ebwm(饿百外卖)
*/
private
String
channel
;
@Data
public
static
class
ProductInfo
{
/**
* 商品spu
*/
private
String
spuId
;
/**
* 商品sku
*/
private
List
<
String
>
skuIds
;
}
}
order-application-service/src/main/java/cn/freemud/entities/dto/product/ProductInfo.java
View file @
39919b8c
...
@@ -84,147 +84,4 @@ public class ProductInfo {
...
@@ -84,147 +84,4 @@ public class ProductInfo {
//用于标识虚拟商品是否限制购买数量,0-否、1-是
//用于标识虚拟商品是否限制购买数量,0-否、1-是
private
Integer
isLimitNumProduct
;
private
Integer
isLimitNumProduct
;
// @NoArgsConstructor
// @Data
// public static class SkuProductBean {
// private String customerCode;
// private String productCode;
// private Long finalPrice;
// private Long originalPrice;
// private String productName;
// private Integer productType;
// private Integer sequence;
// private String skuCode;
// private String skuId;
//
// private Integer status;
// //以下两个字段 1.5.4新加
// private Integer stockLimit;
// private Integer stockQty;
// //sku商品包装费 1.5.4新加
// private Long packPrice ;
// private List<SkuSpecValue> skuSpecValues;
//
// @NoArgsConstructor
// @Data
// public static class SkuSpecValue {
// private String productId;
// private Integer sequence;
// private String specCustomerCode;
// private String specId;
// private String specName;
// private String specValue;
// private String specValueCustomerCode;
// private String specValueId;
// }
// }
//
// @NoArgsConstructor
// @Data
// public static class SpecificationGroupBean {
// private String partnerId;
// private Integer sequence;
// private String specId;
// private String specName;
// private List<GetMenuResponseDto.DataBean.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.SpecificationGroupBean.SpecValueVo> specValueVos;
//
// @NoArgsConstructor
// @Data
// public static class SpecValueVo {
// private Integer sequence;
// private String specId;
// private String specValue;
// private String specValueId;
// }
// }
//
// @NoArgsConstructor
// @Data
// public static class ProductLabelNameListBean {
// private String id;
// private String name;
// private String partnerId;
// List<?> productList;
// private String storeId;
// private String type;
// }
//
// @NoArgsConstructor
// @Data
// public static class ProductAttributeGroupListBean {
// /**
// * attributeName : 加料
// * attributeType : 1
// * attributeValues : [{"attributeValue":"","id":0,"price":0,"sequence":0,"status":0}]
// */
//
// /**
// * 属性名称
// */
// private String attributeName;
// /**
// * 属性类型
// */
// private Integer attributeType;
// /**
// * 第三方商品属性编号
// */
// private String customerCode;
// /**
// * 属性详细信息
// */
// private List<GetMenuResponseDto.DataBean.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductAttributeGroupListBean.AttributeValueBean> attributeValues;
//
// @NoArgsConstructor
// @Data
// public static class AttributeValueBean {
// /**
// * attributeValue :
// * id : 0
// * price : 0
// * sequence : 0
// * status : 0
// */
// /**
// * 属性值
// */
// private String attributeId;
//
// private String attributeValue;
// /**
// * 属性ID
// */
// private Long id;
// /**
// *
// */
// private Long price;
// private Integer sequence;
// private Integer status;
// /**
// * 第三方商品属性值编号
// */
// private String customerCode;
// }
// }
//
// @NoArgsConstructor
// @Data
// public static class ProductPictureListBean {
// /**
// * pictureId : 107901339444445753
// * productId : 107901318808470072
// * sequence : 0
// * type : default
// * url : http://ojcpa0rpt.bkt.clouddn.com/xianfengfruit_DishPool_default_30b5f0ca-399a-4be3-9063-12a3d2622a38_1513952518.jpg
// */
//
// private String pictureId;
// private String productId;
// private String sequence;
// private String type;
// private String url;
// }
}
}
order-application-service/src/main/java/cn/freemud/entities/dto/product/ValidateProductInfosDto.java
0 → 100644
View file @
39919b8c
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ProductInfosDto
* @Package cn.freemud.entities.dto
* @Description:
* @author: liming.guo
* @date: 2018/5/28 21:11
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
entities
.
dto
.
product
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
@NoArgsConstructor
@Data
public
class
ValidateProductInfosDto
{
private
DataBean
data
;
private
Integer
errcode
;
private
Integer
code
;
private
String
errmsg
;
@NoArgsConstructor
@Data
public
static
class
DataBean
{
private
Integer
count
;
private
List
<
ProductData
>
failureList
;
private
List
<
ProductData
>
successList
;
}
@NoArgsConstructor
@Data
public
static
class
ProductData
{
private
ProductInfo
productType
;
}
}
\ No newline at end of file
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
View file @
39919b8c
...
@@ -9,6 +9,8 @@ import cn.freemud.constant.ResponseCodeConstant;
...
@@ -9,6 +9,8 @@ import cn.freemud.constant.ResponseCodeConstant;
import
cn.freemud.entities.Active
;
import
cn.freemud.entities.Active
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.order.CreatePrepayRequestDto
;
import
cn.freemud.entities.dto.order.CreatePrepayRequestDto
;
import
cn.freemud.entities.dto.product.GetValidateProductInfoDto
;
import
cn.freemud.entities.dto.product.ValidateProductInfosDto
;
import
cn.freemud.entities.vo.GetMemberCouponRequestVo
;
import
cn.freemud.entities.vo.GetMemberCouponRequestVo
;
import
cn.freemud.entities.vo.NgsSellCouponCreateOrderVo
;
import
cn.freemud.entities.vo.NgsSellCouponCreateOrderVo
;
import
cn.freemud.entities.vo.PaysuccessNoticeMessage
;
import
cn.freemud.entities.vo.PaysuccessNoticeMessage
;
...
@@ -196,40 +198,6 @@ public class SellCouponOrderServiceImpl {
...
@@ -196,40 +198,6 @@ public class SellCouponOrderServiceImpl {
}
}
}
}
// GetProductInfoRequest request = new GetProductInfoRequest();
// request.setChannel(requestVo.getMenuType());
// request.setPartnerId(partnerId);
// request.setProductInfoType(2);
// request.setShopId(storeId);
// request.setProductIds(Lists.newArrayList(requestVo.getSkuId()));
// //获取商品(里面的活动)
// com.freemud.application.sdk.api.base.BaseResponse<GetProductInfosResponse> productInfosByIds = menuService.getProductInfosByIds(request, trackingNo);
// if(!SUCCESS.equals(productInfosByIds.getCode()) || productInfosByIds.getData() == null || CollectionUtils.isEmpty(productInfosByIds.getData().getProducts())){
// return ResponseUtil.error(ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getCode(),ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getMessage());
// }
// List<GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType> productBindingCoupons = productInfosByIds.getData().getProducts().get(0).getProductBindingCouponTypes();
// if(CollectionUtils.isEmpty(productBindingCoupons)){
// return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
// }
//
// List<String> activityCodes = new ArrayList<>();
// for (GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType productBindingCouponType : productBindingCoupons){
// activityCodes.add(productBindingCouponType.getActivityCode());
// }
//
// List<ActiveDetailVO> activeDetailVOS = batchQueryActivityInfo(partnerId, activityCodes, trackingNo);
// if(CollectionUtils.isEmpty(activeDetailVOS) || activityCodes.size() != activeDetailVOS.size()){
// return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
// }
// Date now = new Date();
// for (ActiveDetailVO activeDetailVO : activeDetailVOS){
// if(activeDetailVO.getEffectiveEndTime() != null && activeDetailVO.getEffectiveEndTime().before(now)){
// return ResponseUtil.error(ResponseResult.COUPON_INVAILD);
// }
// }
//卖券订单biztype默认传入6
//卖券订单biztype默认传入6
BaseResponse
createOrderRequestResponse
=
checkOrderCoupon
(
userLoginInfoDto
,
storeResponse
,
trackingNo
,
requestVo
.
getMenuType
(),
6
,
partnerId
,
storeId
,
requestVo
.
getSkuId
(),
requestVo
.
getCardCode
());
BaseResponse
createOrderRequestResponse
=
checkOrderCoupon
(
userLoginInfoDto
,
storeResponse
,
trackingNo
,
requestVo
.
getMenuType
(),
6
,
partnerId
,
storeId
,
requestVo
.
getSkuId
(),
requestVo
.
getCardCode
());
if
(
createOrderRequestResponse
==
null
||
!
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
createOrderRequestResponse
.
getCode
())
||
createOrderRequestResponse
.
getResult
()
==
null
)
{
if
(
createOrderRequestResponse
==
null
||
!
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
createOrderRequestResponse
.
getCode
())
||
createOrderRequestResponse
.
getResult
()
==
null
)
{
...
@@ -330,12 +298,28 @@ public class SellCouponOrderServiceImpl {
...
@@ -330,12 +298,28 @@ public class SellCouponOrderServiceImpl {
String
partnerId
,
String
partnerId
,
String
storeId
,
String
storeId
,
String
skuId
,
String
cardCode
)
{
String
skuId
,
String
cardCode
)
{
//校验虚拟商品是否在门店菜单
GetValidateProductInfoDto
getProductInfoDto
=
new
GetValidateProductInfoDto
();
getProductInfoDto
.
setPartnerId
(
partnerId
);
getProductInfoDto
.
setStoreId
(
storeId
);
getProductInfoDto
.
setChannel
(
menuType
);
List
<
String
>
productIds
=
new
ArrayList
<>();
productIds
.
add
(
skuId
);
getProductInfoDto
.
setProductIds
(
productIds
);
ValidateProductInfosDto
productInfosDto
=
storeItemClient
.
validateShopContainProduct
(
getProductInfoDto
);
if
(!
Objects
.
equals
(
productInfosDto
.
getErrcode
(),
Integer
.
valueOf
(
ResponseResult
.
SUCCESS
.
getCode
()))
||
productInfosDto
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
productInfosDto
.
getData
().
getSuccessList
())){
return
ResponseUtil
.
error
(
ResponseResult
.
STORE_ITEM_CHECK_VAILD_ERROR
);
}
GetProductInfoRequest
request
=
new
GetProductInfoRequest
();
GetProductInfoRequest
request
=
new
GetProductInfoRequest
();
request
.
setChannel
(
menuType
);
request
.
setChannel
(
menuType
);
request
.
setPartnerId
(
partnerId
);
request
.
setPartnerId
(
partnerId
);
request
.
setProductInfoType
(
2
);
request
.
setProductInfoType
(
2
);
request
.
setShopId
(
storeId
);
request
.
setShopId
(
storeId
);
request
.
setProductIds
(
Lists
.
newArrayList
(
skuId
)
);
request
.
setProductIds
(
productIds
);
//获取商品(里面的活动)
//获取商品(里面的活动)
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
GetProductInfosResponse
>
productInfosByIds
=
menuService
.
getProductInfosByIds
(
request
,
trackingNo
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
GetProductInfosResponse
>
productInfosByIds
=
menuService
.
getProductInfosByIds
(
request
,
trackingNo
);
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
productInfosByIds
.
getCode
())
||
productInfosByIds
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
productInfosByIds
.
getData
().
getProducts
()))
{
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
productInfosByIds
.
getCode
())
||
productInfosByIds
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
productInfosByIds
.
getData
().
getProducts
()))
{
...
...
order-application-service/src/main/java/cn/freemud/service/thirdparty/StoreItemClient.java
View file @
39919b8c
...
@@ -14,6 +14,8 @@ package cn.freemud.service.thirdparty;
...
@@ -14,6 +14,8 @@ package cn.freemud.service.thirdparty;
import
cn.freemud.entities.dto.ShopBaseResponseDto
;
import
cn.freemud.entities.dto.ShopBaseResponseDto
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.product.GetValidateProductInfoDto
;
import
cn.freemud.entities.dto.product.ValidateProductInfosDto
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.MediaType
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
@@ -63,4 +65,11 @@ public interface StoreItemClient {
...
@@ -63,4 +65,11 @@ public interface StoreItemClient {
@PostMapping
(
value
=
"/Shop/ListDishwareProduct"
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
,
consumes
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
@PostMapping
(
value
=
"/Shop/ListDishwareProduct"
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
,
consumes
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
ShopBaseResponseDto
<
List
<
ProductListDto
.
DataBean
>>
findDishWareProductList
(
@RequestBody
GetShopDishWareProductDto
request
);
ShopBaseResponseDto
<
List
<
ProductListDto
.
DataBean
>>
findDishWareProductList
(
@RequestBody
GetShopDishWareProductDto
request
);
/**
* 校验商品在当前门店是否可售
*/
@PostMapping
(
"/Shop/validateShopContainProduct"
)
ValidateProductInfosDto
validateShopContainProduct
(
@RequestBody
GetValidateProductInfoDto
getProductInfoDto
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment