添加盛安豆充值赠送的定时任务逻辑
This commit is contained in:
parent
b8a41972fe
commit
d82dd32743
|
@ -0,0 +1,10 @@
|
|||
package com.sqx.modules.bl.sadjob.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.sqx.modules.bl.sadjob.entity.BlSadJob;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface BlSadJobDao extends BaseMapper<BlSadJob> {
|
||||
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package com.sqx.modules.bl.sadjob.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
@Data
|
||||
@TableName("bl_sad_job")
|
||||
public class BlSadJob implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
|
||||
public int payClassifyId;//优惠卷充值分类
|
||||
public int daySumNum;//一共赠送多少天
|
||||
public int dayNum;//已赠送多少天
|
||||
public int dayMoney;//每天赠送多少
|
||||
public int sfwc;//是否完成(0未完成 1完成)
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date updateTime;//修改时间
|
||||
public Long userId;//用户
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
package com.sqx.modules.bl.sadjob.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.sqx.modules.bl.sadjob.entity.BlSadJob;
|
||||
|
||||
public interface BlSadJobService extends IService<BlSadJob> {
|
||||
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package com.sqx.modules.bl.sadjob.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.sqx.modules.bl.sadjob.dao.BlSadJobDao;
|
||||
import com.sqx.modules.bl.sadjob.entity.BlSadJob;
|
||||
import com.sqx.modules.bl.sadjob.service.BlSadJobService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class BlSadJobServiceImpl extends ServiceImpl<BlSadJobDao, BlSadJob> implements BlSadJobService {
|
||||
|
||||
}
|
|
@ -29,6 +29,8 @@ import com.sqx.modules.bl.order.service.UserPackageDetailService;
|
|||
import com.sqx.modules.bl.order.service.UserPackageOrderService;
|
||||
import com.sqx.modules.bl.order.service.UserPackageOrdersMappingService;
|
||||
import com.sqx.modules.bl.order.service.UserPackageService;
|
||||
import com.sqx.modules.bl.sadjob.entity.BlSadJob;
|
||||
import com.sqx.modules.bl.sadjob.service.BlSadJobService;
|
||||
import com.sqx.modules.common.entity.CommonInfo;
|
||||
import com.sqx.modules.common.service.CommonInfoService;
|
||||
import com.sqx.modules.consortia.entity.Consortia;
|
||||
|
@ -135,6 +137,10 @@ public class WxServiceImpl implements WxService {
|
|||
private UserPackageOrderService userPackageOrderService;
|
||||
@Autowired
|
||||
UserPackageOrdersMappingService userPackageOrdersMappingService;
|
||||
@Autowired
|
||||
private UserSadDetailsService userSadDetailsService;
|
||||
@Autowired
|
||||
private BlSadJobService blSadJobService;
|
||||
|
||||
private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
|
@ -510,6 +516,42 @@ public class WxServiceImpl implements WxService {
|
|||
payDetailsDao.insert(payDetails);
|
||||
// return pay(payClassify.getPrice().doubleValue(), classify, userId, generalOrder,request);
|
||||
payOrderResult(generalOrder);
|
||||
|
||||
//判断是否赠送盛安豆
|
||||
if(StringUtils.isNotEmpty(payClassify.getDayNum()+"")){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
String date=sdf.format(new Date());
|
||||
userMoneyService.updateSad(1,userId,payClassify.getDayMoney());
|
||||
UserSadDetails userMoneyDetails=new UserSadDetails();
|
||||
//查询用户当前余额
|
||||
UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(userId);
|
||||
//插入余额
|
||||
userMoneyDetails.setBalance(userNowMoney.getSad());
|
||||
//插入操作类型为已操作用户余额
|
||||
userMoneyDetails.setManipulateType(2);
|
||||
userMoneyDetails.setUserId(userId);
|
||||
userMoneyDetails.setTitle("[充值赠送]标题:充值");
|
||||
userMoneyDetails.setContent("获得盛安豆:"+payClassify.getDayMoney());
|
||||
userMoneyDetails.setType(1);
|
||||
userMoneyDetails.setMoney(userNowMoney.getSad());
|
||||
userMoneyDetails.setCreateTime(date);
|
||||
userMoneyDetails.setBlRole(2);
|
||||
userMoneyDetails.setBlFlag(1);
|
||||
userSadDetailsService.insert(userMoneyDetails);
|
||||
|
||||
//添加定时任务
|
||||
BlSadJob blSadJob = new BlSadJob();
|
||||
blSadJob.setCreateTime(new Date());
|
||||
blSadJob.setUpdateTime(new Date());
|
||||
blSadJob.setDayMoney(payClassify.getDayMoney());
|
||||
blSadJob.setDaySumNum(payClassify.getDayNum());
|
||||
blSadJob.setDayNum(1);
|
||||
blSadJob.setUserId(userId);
|
||||
blSadJob.setSfwc(0);
|
||||
blSadJobService.save(blSadJob);
|
||||
}
|
||||
|
||||
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
package com.sqx.modules.task.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.sqx.modules.app.entity.UserMoney;
|
||||
import com.sqx.modules.app.entity.UserSadDetails;
|
||||
import com.sqx.modules.app.service.UserMoneyService;
|
||||
import com.sqx.modules.app.service.UserSadDetailsService;
|
||||
import com.sqx.modules.artificer.dao.ArtificerDao;
|
||||
import com.sqx.modules.artificer.dao.BlArtificerZqhzDao;
|
||||
import com.sqx.modules.artificer.dao.OrdersDao;
|
||||
|
@ -9,6 +13,8 @@ import com.sqx.modules.artificer.entity.Artificer;
|
|||
import com.sqx.modules.artificer.entity.BlArtificerZqhz;
|
||||
import com.sqx.modules.artificer.entity.Orders;
|
||||
import com.sqx.modules.artificer.entity.UserRecharge;
|
||||
import com.sqx.modules.bl.sadjob.entity.BlSadJob;
|
||||
import com.sqx.modules.bl.sadjob.service.BlSadJobService;
|
||||
import com.sqx.modules.bl.userZxsc.dao.BlUserZxscDao;
|
||||
import com.sqx.modules.bl.userZxsc.entity.BlUserZxsc;
|
||||
import com.sqx.modules.common.dao.ArtificerPartitioningDetailsMapper;
|
||||
|
@ -56,6 +62,13 @@ public class AllTaskServiceImpl implements AllTaskSercice {
|
|||
@Autowired
|
||||
private BlArtificerZqhzDao blArtificerZqhzDao;
|
||||
|
||||
@Autowired
|
||||
private BlSadJobService blSadJobService;
|
||||
@Autowired
|
||||
private UserSadDetailsService userSadDetailsService;
|
||||
@Autowired
|
||||
private UserMoneyService userMoneyService;
|
||||
|
||||
/**
|
||||
* 计算技师升级规则 每天半夜1点执行,预留12点到01点之间的计算间隔,用于触发其他计算逻辑
|
||||
* A0,A1,A2,A3,A4,A5等
|
||||
|
@ -287,4 +300,41 @@ public class AllTaskServiceImpl implements AllTaskSercice {
|
|||
userRechargeDao.insert(userRecharge);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//赠送盛安豆定时任务
|
||||
@Scheduled(cron = "0 00 21 * * ?")
|
||||
public void updateSadJob() {
|
||||
QueryWrapper<BlSadJob> query = new QueryWrapper<>();
|
||||
query.eq("sfwc",0);
|
||||
List<BlSadJob> list = blSadJobService.list(query);
|
||||
for(BlSadJob par : list){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
String date=sdf.format(new Date());
|
||||
userMoneyService.updateSad(1,par.getUserId(),par.getDayMoney());
|
||||
UserSadDetails userMoneyDetails=new UserSadDetails();
|
||||
//查询用户当前余额
|
||||
UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(par.getUserId());
|
||||
//插入余额
|
||||
userMoneyDetails.setBalance(userNowMoney.getSad());
|
||||
//插入操作类型为已操作用户余额
|
||||
userMoneyDetails.setManipulateType(2);
|
||||
userMoneyDetails.setUserId(par.getUserId());
|
||||
userMoneyDetails.setTitle("[充值赠送]标题:充值");
|
||||
userMoneyDetails.setContent("获得盛安豆:"+par.getDayMoney());
|
||||
userMoneyDetails.setType(1);
|
||||
userMoneyDetails.setMoney(userNowMoney.getSad());
|
||||
userMoneyDetails.setCreateTime(date);
|
||||
userMoneyDetails.setBlRole(2);
|
||||
userMoneyDetails.setBlFlag(1);
|
||||
userSadDetailsService.insert(userMoneyDetails);
|
||||
int day = par.getDayNum()+1;
|
||||
par.setDayNum(day);
|
||||
if(day == par.getDaySumNum()){
|
||||
par.setSfwc(1);
|
||||
}
|
||||
blSadJobService.updateById(par);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue