package cn.lili.modules.lmk.service.impl; import cn.lili.base.Result; import cn.lili.common.security.context.UserContext; import cn.lili.modules.lmk.domain.entity.ActivityAuditRecord; import cn.lili.modules.lmk.domain.form.ActivityAuditRecordForm; import cn.lili.modules.lmk.domain.query.ActivityAuditRecordQuery; import cn.lili.modules.lmk.domain.vo.ActivityAuditRecordVO; import cn.lili.modules.lmk.domain.vo.ActivityVO; import cn.lili.modules.lmk.mapper.ActivityAuditRecordMapper; import cn.lili.modules.lmk.service.ActivityAuditRecordService; import cn.lili.utils.PageUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; /** * lmk-shop-java * 活动审核实现类 * * @author : zxl * @date : 2025-06-30 17:27 **/ @Service @RequiredArgsConstructor public class ActivityAuditRecordServiceImpl extends ServiceImpl implements ActivityAuditRecordService { private final ActivityAuditRecordMapper activityAuditRecordMapper; @Override public Result addOrUpdateAuditActivity(ActivityAuditRecordForm form) { if(form.getId() != null){ //修改审核记录 ActivityAuditRecord entity = baseMapper.selectById(form.getId()); if (entity != null){ BeanUtils.copyProperties(form, entity); baseMapper.updateById(entity); }else { throw new RuntimeException("未找到该审核记录"); } }else { //新增审核记录 ActivityAuditRecord entity = ActivityAuditRecordForm.getEntityByForm(form,null); baseMapper.insert(entity); } return Result.ok("新增审核成功"); } @Override public Result getActivityAuditByIdPage(ActivityAuditRecordQuery query){ //根据活动id获得活动审核记录 IPage page = PageUtil.getPage(query, ActivityAuditRecordVO.class); baseMapper.getPage(page,query); //分页获得活动对应的审核记录 return Result.ok().data(page.getRecords()).total(page.getTotal()); } @Override public Result delActivityAuditById(String activityId){ //删除活动对应的审核记录 LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper().eq(ActivityAuditRecord::getActivityId,activityId); baseMapper.delete(queryWrapper); return Result.ok("删除成功"); } @Override public Boolean getActivityActivityIsAudit(String activityId){ //判断活动是否通过审核, 未审核任然返回false 获得最近一次审核记录 ActivityAuditRecord activityAuditRecord = new LambdaQueryChainWrapper<>(baseMapper) .eq(ActivityAuditRecord::getActivityId,activityId) .orderByDesc(ActivityAuditRecord::getCreateTime)// 按 create_time 降序 .eq(ActivityAuditRecord::getDeleteFlag,0) .last("LIMIT 1") .one(); if (activityAuditRecord == null){ return Boolean.FALSE; }else { if (activityAuditRecord.getAudit() == 1){ return Boolean.TRUE; } } return Boolean.FALSE; } }