Merge remote-tracking branch 'origin/master'

This commit is contained in:
曹磊 2024-08-06 22:52:28 +08:00
commit ab02b71b1e
11 changed files with 205 additions and 3 deletions

View File

@ -364,7 +364,7 @@ public class ArtificerServiceImpl extends ServiceImpl<ArtificerDao, Artificer> i
}else{
stringBuilder.append(minuteInt);
}
ArtificerTime artificerTime = artificerTimeService.getOne(new QueryWrapper<ArtificerTime>().eq("artificer_id", artificer.getArtificerId()).eq("artificer_date", date).eq("artificer_time", stringBuilder.toString()));
ArtificerTime artificerTime = artificerTimeService.getOne(new QueryWrapper<ArtificerTime>().eq("artificer_id", artificer.getArtificerId()).eq("artificer_date", date).eq("artificer_time", stringBuilder.toString()).last("limit 1"));
if(artificerTime==null){
if(oldDate.equals(date)){
artificer.setTime(stringBuilder.toString());

View File

@ -51,7 +51,7 @@ public class UserPackageDetailServiceImpl extends ServiceImpl<UserPackageDetailD
List<UserPackageDetail> list = Lists.newArrayList();
if(type == 105){
list = baseMapper.findDetailUsedQuantity(userPackageDetail);
}else if(type == 106){
}else if(type == 106 || type == 114 ){
list = baseMapper.findLcDetailUsedQuantity(userPackageDetail);
}else{
list = baseMapper.findDetailList(userPackageDetail);

View File

@ -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> {
}

View File

@ -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;//用户
}

View File

@ -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> {
}

View File

@ -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 {
}

View File

@ -87,7 +87,9 @@ public class PayClassifyController {
@ApiOperation("查询充值分类")
public Result selectPayClassifyList(Integer page,Integer limit){
Page<PayClassify> pages=new Page<>(page,limit);
IPage<PayClassify> page1 = payClassifyService.page(pages);
QueryWrapper<PayClassify> payClassifyQueryWrapper = new QueryWrapper<>();
payClassifyQueryWrapper.orderByDesc("create_time");
IPage<PayClassify> page1 = payClassifyService.page(pages,payClassifyQueryWrapper);
List<PayClassify> records = page1.getRecords();
for(PayClassify payClassify:records){
List<PayClassifyDetail> list = payClassifyDetailService.findList(payClassify.getPayClassifyId());

View File

@ -39,6 +39,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;
@ -143,6 +145,10 @@ public class AliPayController {
UserPackageOrdersMappingService userPackageOrdersMappingService;
@Autowired
private UserRechargeDao userRechargeDao;
@Autowired
private UserSadDetailsService userSadDetailsService;
@Autowired
private BlSadJobService blSadJobService;
private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@ -2275,6 +2281,38 @@ public class AliPayController {
o.setCreateTime(DateUtils.format(new Date()));
userRechargeDao.insert(o);
}
//判断是否赠送盛安豆
if(StringUtils.isNotEmpty(payClassify.getDayNum()+"")){
String date=sdf.format(new Date());
userMoneyService.updateSad(1,payDetails.getUserId(),payClassify.getDayMoney());
UserSadDetails userSadDetails=new UserSadDetails();
//查询用户当前余额
UserMoney userNowMoney2 = userMoneyService.selectUserMoneyByUserId(payDetails.getUserId());
//插入余额
userSadDetails.setBalance(userNowMoney2.getSad());
//插入操作类型为已操作用户余额
userSadDetails.setManipulateType(2);
userSadDetails.setUserId(payDetails.getUserId());
userSadDetails.setTitle("[充值赠送]标题:充值");
userSadDetails.setContent("获得盛安豆:"+payClassify.getDayMoney());
userSadDetails.setType(1);
userSadDetails.setMoney(userNowMoney2.getSad());
userSadDetails.setCreateTime(date);
userSadDetails.setBlRole(2);
userSadDetails.setBlFlag(1);
userSadDetailsService.insert(userSadDetails);
//添加定时任务
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(payDetails.getUserId());
blSadJob.setSfwc(0);
blSadJobService.save(blSadJob);
}
}
else if(payDetails.getType()==4){

View File

@ -56,6 +56,11 @@ public class PayClassify implements Serializable {
*/
private String createTime;
private Integer dayNum;
private Integer dayMoney;
/**
* 子表列表
*/

View File

@ -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();
}

View File

@ -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 0/1 * * * ?")
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);
}
}
}