|
@@ -14,11 +14,17 @@ package vip.xiaonuo.biz.modular.couponrecord.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.collection.CollStreamUtil;
|
|
import cn.hutool.core.collection.CollStreamUtil;
|
|
|
|
+import cn.hutool.core.date.DateField;
|
|
|
|
+import cn.hutool.core.date.DatePattern;
|
|
|
|
+import cn.hutool.core.date.DateTime;
|
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
+import cn.hutool.core.util.RandomUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
+import com.wechat.pay.java.service.cashcoupons.model.Coupon;
|
|
import jakarta.annotation.Resource;
|
|
import jakarta.annotation.Resource;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -28,6 +34,8 @@ import vip.xiaonuo.biz.modular.couponconfig.entity.CouponConfig;
|
|
import vip.xiaonuo.biz.modular.couponconfig.service.CouponConfigService;
|
|
import vip.xiaonuo.biz.modular.couponconfig.service.CouponConfigService;
|
|
import vip.xiaonuo.biz.modular.rechargerecord.entity.BizRechargeRecord;
|
|
import vip.xiaonuo.biz.modular.rechargerecord.entity.BizRechargeRecord;
|
|
import vip.xiaonuo.biz.modular.rechargerecord.service.BizRechargeRecordService;
|
|
import vip.xiaonuo.biz.modular.rechargerecord.service.BizRechargeRecordService;
|
|
|
|
+import vip.xiaonuo.biz.modular.user.entity.BizUser;
|
|
|
|
+import vip.xiaonuo.biz.modular.user.service.BizUserService;
|
|
import vip.xiaonuo.common.enums.CommonSortOrderEnum;
|
|
import vip.xiaonuo.common.enums.CommonSortOrderEnum;
|
|
import vip.xiaonuo.common.exception.CommonException;
|
|
import vip.xiaonuo.common.exception.CommonException;
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
@@ -38,8 +46,11 @@ import vip.xiaonuo.biz.modular.couponrecord.param.BizCouponRecordEditParam;
|
|
import vip.xiaonuo.biz.modular.couponrecord.param.BizCouponRecordIdParam;
|
|
import vip.xiaonuo.biz.modular.couponrecord.param.BizCouponRecordIdParam;
|
|
import vip.xiaonuo.biz.modular.couponrecord.param.BizCouponRecordPageParam;
|
|
import vip.xiaonuo.biz.modular.couponrecord.param.BizCouponRecordPageParam;
|
|
import vip.xiaonuo.biz.modular.couponrecord.service.BizCouponRecordService;
|
|
import vip.xiaonuo.biz.modular.couponrecord.service.BizCouponRecordService;
|
|
|
|
+import vip.xiaonuo.common.util.CommonCouponGeneratorUtil;
|
|
import vip.xiaonuo.common.util.CommonCryptogramUtil;
|
|
import vip.xiaonuo.common.util.CommonCryptogramUtil;
|
|
|
|
+import vip.xiaonuo.dev.api.DevConfigApi;
|
|
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
|
@@ -57,6 +68,15 @@ public class BizCouponRecordServiceImpl extends ServiceImpl<BizCouponRecordMappe
|
|
@Resource
|
|
@Resource
|
|
private CouponConfigService couponConfigService;
|
|
private CouponConfigService couponConfigService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private DevConfigApi devConfigApi;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ private BizCouponRecordService bizCouponRecordService;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ private BizUserService bizUserService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public Page<BizCouponRecord> page(BizCouponRecordPageParam bizCouponRecordPageParam) {
|
|
public Page<BizCouponRecord> page(BizCouponRecordPageParam bizCouponRecordPageParam) {
|
|
QueryWrapper<BizCouponRecord> queryWrapper = new QueryWrapper<BizCouponRecord>().checkSqlInjection();
|
|
QueryWrapper<BizCouponRecord> queryWrapper = new QueryWrapper<BizCouponRecord>().checkSqlInjection();
|
|
@@ -219,4 +239,51 @@ public class BizCouponRecordServiceImpl extends ServiceImpl<BizCouponRecordMappe
|
|
bizCouponRecord.setOrgId(StpLoginUserUtil.getLoginUser().getOrgId());
|
|
bizCouponRecord.setOrgId(StpLoginUserUtil.getLoginUser().getOrgId());
|
|
this.updateById(bizCouponRecord);
|
|
this.updateById(bizCouponRecord);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Transactional
|
|
|
|
+ @Override
|
|
|
|
+ public void giftCoupon(BizCouponRecordEditParam bizCouponRecordEditParam) {
|
|
|
|
+ //管理员手动赠送蛋糕券
|
|
|
|
+ //当前传参id是会员id
|
|
|
|
+ CouponConfig couponConfig = couponConfigService.queryEntity(bizCouponRecordEditParam.getCouponId());
|
|
|
|
+ //添加充值记录
|
|
|
|
+ String planId = devConfigApi.getValueByKey("SNOWY_GIFT_COUPON");
|
|
|
|
+ BizRechargeRecord bizRechargeRecord = new BizRechargeRecord();
|
|
|
|
+ bizRechargeRecord.setUserId(bizCouponRecordEditParam.getId());
|
|
|
|
+ bizRechargeRecord.setRechargePlanId(planId);
|
|
|
|
+ bizRechargeRecord.setPlanAccountBalance(new BigDecimal(0));
|
|
|
|
+ if(ObjectUtil.isNotNull(couponConfig)){
|
|
|
|
+ bizRechargeRecord.setRechargePlanDescribe("手动赠送蛋糕券"+couponConfig.getCouponAmount()+(couponConfig.getCouponType()=="1"?"寸":"元")+
|
|
|
|
+ couponConfig.getCouponNum()+"个");
|
|
|
|
+ }
|
|
|
|
+ bizRechargeRecord.setRechargeAmount(new BigDecimal(0));
|
|
|
|
+ bizRechargeRecord.setRechargeTime(new Date());
|
|
|
|
+ bizRechargeRecord.setCouponNum(couponConfig.getCouponNum());
|
|
|
|
+ bizRechargeRecord.setCouponAmount(couponConfig.getCouponAmount());
|
|
|
|
+ // 本系统订单号
|
|
|
|
+ String orderNumber = "BBT" + DateUtil.format(DateUtil.date(), DatePattern.PURE_DATETIME_MS_PATTERN) + RandomUtil.randomNumbers(3);
|
|
|
|
+ bizRechargeRecord.setOrderNo(orderNumber);
|
|
|
|
+ bizRechargeRecord.setIsPay("1");
|
|
|
|
+ BizUser bizUser = bizUserService.getById(bizCouponRecordEditParam.getId());
|
|
|
|
+ if(ObjectUtil.isNotNull(bizUser)){
|
|
|
|
+ bizRechargeRecord.setOldAccountBalance(bizUser.getAccountBalance());
|
|
|
|
+ bizRechargeRecord.setOldVoucherBalance(bizUser.getVoucherBalance());
|
|
|
|
+ bizRechargeRecord.setNewAccountBalance(bizUser.getAccountBalance());
|
|
|
|
+ bizRechargeRecord.setNewVoucherBalance(bizUser.getVoucherBalance());
|
|
|
|
+ }
|
|
|
|
+ bizRechargeRecordService.save(bizRechargeRecord);
|
|
|
|
+
|
|
|
|
+ //添加蛋糕券记录
|
|
|
|
+ BizCouponRecord bizCouponRecord = new BizCouponRecord();
|
|
|
|
+ DateTime date = DateUtil.date();
|
|
|
|
+ bizCouponRecord.setCouponNo(CommonCouponGeneratorUtil.generateCouponCode());
|
|
|
|
+ bizCouponRecord.setTime(date);
|
|
|
|
+ bizCouponRecord.setStartTime(date);
|
|
|
|
+ bizCouponRecord.setEndTime(DateUtil.offset(date, DateField.YEAR,1));
|
|
|
|
+ bizCouponRecord.setRechargePlanId(bizRechargeRecord.getRechargePlanId());
|
|
|
|
+ bizCouponRecord.setRechargeRecordId(bizRechargeRecord.getId());
|
|
|
|
+ bizCouponRecord.setCouponId(couponConfig.getId());
|
|
|
|
+ bizCouponRecordService.save(bizCouponRecord);
|
|
|
|
+
|
|
|
|
+ }
|
|
}
|
|
}
|