Commit 96fdee48 by huluobin

Merge branch 'master' into 3.7

# Conflicts:
#	src/main/java/com/gogirl/application/market/coupon/impl/CouponServiceImpl.java
#	src/test/java/com/gogirl/Test.java
parents 8652ed68 e4d6a38d
...@@ -8,6 +8,7 @@ import com.gogirl.application.market.coupon.MarketService; ...@@ -8,6 +8,7 @@ import com.gogirl.application.market.coupon.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.coupon.CouponExcludeDetailed; import com.gogirl.domain.market.coupon.CouponExcludeDetailed;
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.domain.xcx.GogirlConfig; import com.gogirl.domain.xcx.GogirlConfig;
...@@ -17,6 +18,7 @@ import com.gogirl.infrastructure.common.util.StringUtils; ...@@ -17,6 +18,7 @@ import com.gogirl.infrastructure.common.util.StringUtils;
import com.gogirl.infrastructure.mapper.market.coupon.CouponCustomerRelevanceMapper; import com.gogirl.infrastructure.mapper.market.coupon.CouponCustomerRelevanceMapper;
import com.gogirl.infrastructure.mapper.market.coupon.CouponExcludeDetailedMapper; import com.gogirl.infrastructure.mapper.market.coupon.CouponExcludeDetailedMapper;
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.infrastructure.mapper.xcx.GogirlConfigMapper; import com.gogirl.infrastructure.mapper.xcx.GogirlConfigMapper;
...@@ -55,6 +57,9 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme ...@@ -55,6 +57,9 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
@Resource @Resource
CouponExcludeDetailedMapper couponExcludeDetailedMapper; CouponExcludeDetailedMapper couponExcludeDetailedMapper;
@Resource
private DiscountConfigMapper discountConfigMapper;
@Override @Override
public Coupon checkNewCustomer(Integer customerId) { public Coupon checkNewCustomer(Integer customerId) {
//新用户配置 //新用户配置
...@@ -112,6 +117,13 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme ...@@ -112,6 +117,13 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
/*2、发放卡券*/ /*2、发放卡券*/
CouponCustomerRelevance couponCustomerRelevance = CouponCustomerRelevance.getInstance(coupon); CouponCustomerRelevance couponCustomerRelevance = CouponCustomerRelevance.getInstance(coupon);
//是否免单券
DiscountConfig discountConfig = discountConfigMapper.selectOne(new LambdaQueryWrapper<DiscountConfig>()
.eq(DiscountConfig::getCouponId, couponId));
if (discountConfig != null) {
couponCustomerRelevance.setIsFreeVoucher(1);
}
couponCustomerRelevance.setCustomerId(customerId); couponCustomerRelevance.setCustomerId(customerId);
couponCustomerRelevanceMapper.insert(couponCustomerRelevance); couponCustomerRelevanceMapper.insert(couponCustomerRelevance);
......
...@@ -167,6 +167,7 @@ public class OrderManageServiceImpl extends ServiceImpl<OrderManageMapper, Order ...@@ -167,6 +167,7 @@ public class OrderManageServiceImpl extends ServiceImpl<OrderManageMapper, Order
.servePicturePath(baseServe.getPicturePath()) .servePicturePath(baseServe.getPicturePath())
.servePrice(baseServe.getPrice()) .servePrice(baseServe.getPrice())
.serveType(baseType.getName()) .serveType(baseType.getName())
.serveTypeId(baseType.getId())
//服务价格 //服务价格
.price(baseServe.getPrice()) .price(baseServe.getPrice())
.payPrice(baseServe.getPrice()) .payPrice(baseServe.getPrice())
......
...@@ -111,6 +111,9 @@ public class CouponCustomerRelevance implements Serializable { ...@@ -111,6 +111,9 @@ public class CouponCustomerRelevance implements Serializable {
@ApiModelProperty("1-计算 2-不计算") @ApiModelProperty("1-计算 2-不计算")
private Integer isCalcAchievement = 1; private Integer isCalcAchievement = 1;
@ApiModelProperty("是否免单券 1-是 2-否")
private Integer isFreeVoucher;
/** /**
* 根据优惠券配置构造一张优惠券 * 根据优惠券配置构造一张优惠券
* <p> * <p>
......
...@@ -66,6 +66,7 @@ import org.springframework.test.context.junit4.SpringRunner; ...@@ -66,6 +66,7 @@ import org.springframework.test.context.junit4.SpringRunner;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.File; import java.io.File;
import java.math.BigDecimal;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDate; import java.time.LocalDate;
...@@ -685,4 +686,36 @@ public class Test { ...@@ -685,4 +686,36 @@ public class Test {
EasyExcel.read(filePath, ImportPurchaseSkuExcel.class, new ExcelListener(purchaseSkuMapper)).sheet().doRead(); EasyExcel.read(filePath, ImportPurchaseSkuExcel.class, new ExcelListener(purchaseSkuMapper)).sheet().doRead();
} }
@org.junit.Test
public void duplicateCouponFix() {
List<OrderManage> orderManageList = orderManageMapper.selectBatchIds(Lists.newArrayList("13711,13744,13766,13921".split(",")));
orderManageList.forEach(orderManage -> {
BigDecimal discountAmount = orderManage.getDiscountPrice();
Integer payUser = orderManage.getPayUser();
Integer orderId = orderManage.getId();
marketService.calcOrderAmount(orderManage.getId());
CustomerBalanceRecord customerBalanceRecord = customerBalanceRecordMapper.selectOne(new LambdaQueryWrapper<CustomerBalanceRecord>()
.eq(CustomerBalanceRecord::getCustomerId, payUser)
.eq(CustomerBalanceRecord::getOrderId, orderId));
if (customerBalanceRecord != null && customerBalanceRecord.getCurrentBalance() > 0) {
customerBalanceRecord.setOrderAmount(customerBalanceRecord.getOrderAmount() + (discountAmount.intValue() * 100));
customerBalanceRecord.setCurrentBalance(customerBalanceRecord.getCurrentBalance() - (discountAmount.intValue() * 100));
customerBalanceRecordMapper.updateById(customerBalanceRecord);
CustomerBalance customerBalance = customerBalanceMapper.selectOne(new LambdaQueryWrapper<CustomerBalance>()
.eq(CustomerBalance::getCustomerId, payUser));
customerBalance.setTotalExpenditure(customerBalance.getTotalExpenditure() + (discountAmount.intValue() * 100));
customerBalance.setBalance(customerBalance.getBalance() - (discountAmount.intValue() * 100));
customerBalanceMapper.updateById(customerBalance);
}
});
}
} }
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