Commit cf80dded by huluobin

long 序列化

parent 15d2d17e
...@@ -35,6 +35,7 @@ public interface MarketService { ...@@ -35,6 +35,7 @@ public interface MarketService {
void setterOrderMarket(Integer orderId); void setterOrderMarket(Integer orderId);
/** /**
* 结算订单
* *
* @param orderId * @param orderId
*/ */
......
...@@ -8,11 +8,13 @@ import com.gogirl.application.market.CouponCustomerRelevanceService; ...@@ -8,11 +8,13 @@ import com.gogirl.application.market.CouponCustomerRelevanceService;
import com.gogirl.application.market.MarketService; import com.gogirl.application.market.MarketService;
import com.gogirl.domain.market.coupon.Coupon; import com.gogirl.domain.market.coupon.Coupon;
import com.gogirl.domain.market.coupon.CouponCustomerRelevance; import com.gogirl.domain.market.coupon.CouponCustomerRelevance;
import com.gogirl.domain.market.discount.DiscountConfig;
import com.gogirl.domain.order.serve.OrderManage; import com.gogirl.domain.order.serve.OrderManage;
import com.gogirl.domain.order.serve.OrderServe; import com.gogirl.domain.order.serve.OrderServe;
import com.gogirl.infrastructure.common.util.ListUtil; import com.gogirl.infrastructure.common.util.ListUtil;
import com.gogirl.infrastructure.mapper.market.coupon.CouponCustomerRelevanceMapper; import com.gogirl.infrastructure.mapper.market.coupon.CouponCustomerRelevanceMapper;
import com.gogirl.infrastructure.mapper.market.coupon.CouponMapper; import com.gogirl.infrastructure.mapper.market.coupon.CouponMapper;
import com.gogirl.infrastructure.mapper.market.discount.DiscountConfigMapper;
import com.gogirl.infrastructure.mapper.order.serve.OrderManageMapper; import com.gogirl.infrastructure.mapper.order.serve.OrderManageMapper;
import com.gogirl.infrastructure.mapper.order.serve.OrderServeMapper; import com.gogirl.infrastructure.mapper.order.serve.OrderServeMapper;
import com.gogirl.shared.market.command.SetUpOuterCouponCommand; import com.gogirl.shared.market.command.SetUpOuterCouponCommand;
...@@ -23,6 +25,7 @@ import javax.annotation.Resource; ...@@ -23,6 +25,7 @@ import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -40,6 +43,9 @@ public class CouponCustomerRelevanceServiceImpl extends ServiceImpl<CouponCustom ...@@ -40,6 +43,9 @@ public class CouponCustomerRelevanceServiceImpl extends ServiceImpl<CouponCustom
@Resource @Resource
private MarketService marketService; private MarketService marketService;
@Resource
private DiscountConfigMapper discountConfigMapper;
@Override @Override
public List<CouponCustomerRelevance> getOrderCoupon(Integer currentCustomerId, Integer orderId) { public List<CouponCustomerRelevance> getOrderCoupon(Integer currentCustomerId, Integer orderId) {
...@@ -48,14 +54,31 @@ public class CouponCustomerRelevanceServiceImpl extends ServiceImpl<CouponCustom ...@@ -48,14 +54,31 @@ public class CouponCustomerRelevanceServiceImpl extends ServiceImpl<CouponCustom
return couponCustomerRelevanceMapper return couponCustomerRelevanceMapper
.selectList(new LambdaQueryWrapper<CouponCustomerRelevance>() .selectList(new LambdaQueryWrapper<CouponCustomerRelevance>()
.eq(CouponCustomerRelevance::getCustomerId, currentCustomerId) .eq(CouponCustomerRelevance::getCustomerId, currentCustomerId)
//内部券
.eq(CouponCustomerRelevance::getSourceType, 0) .eq(CouponCustomerRelevance::getSourceType, 0)
.ne(CouponCustomerRelevance::getState, 2) .eq(CouponCustomerRelevance::getState, 1))
.ne(CouponCustomerRelevance::getState, 3)) //
.stream() .stream()
//过滤所有可用在服务上的 //过滤所有可用在服务上的
.filter(couponCustomerRelevance -> { .filter(couponCustomerRelevance -> {
List<Integer> canUserServeIds = couponCustomerRelevanceMapper.queryCouponCustomerServeRelevance(couponCustomerRelevance.getCouponId()); List<Integer> canUserServeIds = couponCustomerRelevanceMapper.queryCouponCustomerServeRelevance(couponCustomerRelevance.getCouponId());
canUserServeIds.retainAll(orderServeList.stream().map(OrderServe::getServeId).collect(Collectors.toList()));
List<Integer> freeCouponIds = discountConfigMapper.selectList(new LambdaQueryWrapper<>()).stream().map(DiscountConfig::getCouponId).filter(Objects::nonNull).collect(Collectors.toList());
if (freeCouponIds.contains(couponCustomerRelevance.getCouponId())) {
canUserServeIds.retainAll(orderServeList.stream()
.filter(orderServe -> orderServe.getBindCoupon() == 2)
.map(OrderServe::getServeId)
.collect(Collectors.toList()));
} else {
canUserServeIds.retainAll(orderServeList.stream()
.filter(orderServe -> orderServe.getBindCoupon() == 2)
.filter(orderServe -> orderServe.getProduceCurrentPrice() == null)
.filter(orderServe -> orderServe.getProducePromotionTimeId() == null)
.filter(orderServe -> orderServe.getLeisureDiscountConfigId() == null)
.map(OrderServe::getServeId)
.collect(Collectors.toList()));
}
return ListUtil.isNotEmpty(canUserServeIds); return ListUtil.isNotEmpty(canUserServeIds);
}) })
//过滤可用 //过滤可用
......
...@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType; ...@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Builder; import lombok.Builder;
...@@ -24,6 +26,7 @@ public class CustomerMessage { ...@@ -24,6 +26,7 @@ public class CustomerMessage {
public static final String PARAM_FRIEND_PAY_CUSTOMER_ID = "customerId"; public static final String PARAM_FRIEND_PAY_CUSTOMER_ID = "customerId";
@TableId(type = IdType.AUTO) @TableId(type = IdType.AUTO)
@JsonSerialize(using = ToStringSerializer.class)
private Long id; private Long id;
@ApiModelProperty("顾客id") @ApiModelProperty("顾客id")
......
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