package com.example.jz.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.jz.dao.CauseDao; import com.example.jz.dao.GroupDao; import com.example.jz.dao.GroupUserDao; import com.example.jz.dao.ReportDao; import com.example.jz.modle.entity.Group; import com.example.jz.modle.entity.GroupUser; import com.example.jz.modle.entity.Report; import com.example.jz.service.ReportService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; /** * 报案表(Report)表服务实现类 * * @author makejava * @since 2022-07-13 11:52:58 */ @Service("reportService") public class ReportServiceImpl extends ServiceImpl implements ReportService { @Autowired private ReportDao reportDao; @Autowired private GroupDao groupDao; @Autowired private GroupUserDao groupUserDao; /** * 审核报案 * * @param report * @return */ @Override @Transactional public Boolean audit(Report report) { // 1. 更新报案表 report.setStatus(1); reportDao.updateById(report); // 2. 更新群用户表 Group group = groupDao.selectOne(new LambdaQueryWrapper<>(Group.class) .eq(Group::getCauseId, report.getCauseId())); GroupUser groupUser = new GroupUser().setGroupId(group.getId()).setUserId(report.getUserId()).setCtime(new Date()).setBanSpeech(0); groupUserDao.insert(groupUser); return true; } @Override public void leaveGroup(Integer id, Integer groupId) { groupUserDao.delete(new QueryWrapper().eq("user_id",id).eq("group_id",groupId)); } }