TienChin 活动管理-活动状态完善

发布时间 2023-09-22 01:10:47作者: BNTang

修改字典

修改活动状态字典,将之前的数据键值为 0 的数据标签内容改为 过期

image-20230906234524368

更改下数据库的描述,禁用改为过期:

ALTER TABLE `tienchin_activity` 
MODIFY COLUMN `activity_status` int NULL DEFAULT NULL COMMENT '活动状态,0.表示过期、1.表示正常' AFTER `activity_type`;

Activity

/**
 * 活动状态,0.表示过期、1.表示正常
 */
private Integer activityStatus;

ActivityServiceImpl

编写一个将超过当前时间的活动状态设置为禁用,在列表查询的时候进行更改一下调用一下方法。

@Override
public List<ActivityVO> selectActivityList() {
    // 将超过当前时间的活动状态设置为禁用
    expireActivity();

    return activityMapper.selectActivityList();
}
/**
 * 将超过当前时间的活动状态设置为禁用
 */
private void expireActivity() {
    UpdateWrapper<Activity> uw = new UpdateWrapper<>();

    // 将原本状态为正常的活动状态为1,并且 endTime 小于当前时间的活动状态设置为过期
    uw.lambda()
            .set(Activity::getActivityStatus, 0)
            .eq(Activity::getActivityStatus, 1)
            .lt(Activity::getEndTime, LocalDateTime.now());

    update(uw);
}