package com.ruoyi.service.impl; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.MapUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.domain.Archiverecordstouser; import com.ruoyi.mapper.ArchiverecordstouserMapper; import com.ruoyi.service.IArchiverecordstouserService; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** * 【请填写功能名称】Service业务层处理 * * @author ruoyi * @date 2025-07-20 */ @Service public class ArchiverecordstouserServiceImpl extends ServiceImpl implements IArchiverecordstouserService { @Autowired private SysUserMapper userMapper; @Autowired private ISysUserService iSysUserService; private LambdaQueryWrapper buildCondition(Archiverecordstouser archiverecordstouser) { LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(!StringUtils.isEmpty(archiverecordstouser.getArchiveRecordsId()),Archiverecordstouser::getArchiveRecordsId, archiverecordstouser.getArchiveRecordsId()); //保存相关用户的userId List arr = new ArrayList<>(); List all = new ArrayList<>(); if(!StringUtils.isEmpty(archiverecordstouser.getUserName())||!StringUtils.isEmpty(archiverecordstouser.getPhonenumber())) { //根据用户名查询用户相关id SysUser sysUser = new SysUser(); sysUser.setUserName(archiverecordstouser.getUserName()); sysUser.setPhonenumber(archiverecordstouser.getPhonenumber()); all = userMapper.selectUserList(sysUser); } arr = all.stream().map(SysUser::getUserId).collect(Collectors.toList()); lqw.in(!all.isEmpty(), Archiverecordstouser::getUserId, arr); // System.out.println(archiverecordstouser.getSysUser().getUserName()+"098643"); return lqw; } @Override public int insertRecordToUsers(String recordId, Long[] userIds) { // 新增用户与案卷记录 List list = new ArrayList(); for (Long userId : userIds) { Archiverecordstouser ur = new Archiverecordstouser(); ur.setArchiveRecordsId(recordId); ur.setUserId(userId); list.add(ur); } boolean res = this.saveBatch(list); if(res) return 1; else return 0; // return userRoleMapper.batchUserRole(list); } @Override public AjaxResult selectDataList(Archiverecordstouser archiverecordstouser, Integer pageNum, Integer pageSize) { System.out.println(archiverecordstouser.getArchiveRecordsId()); System.out.println("sssssssssssssssssssssssss"); LambdaQueryWrapper lqw = buildCondition(archiverecordstouser); Page zfClanPage = new Page<>(pageNum, pageSize); Page pageResult = page(zfClanPage, lqw); List beanRecords = pageResult.getRecords();//得到查询出来的数据 beanRecords.forEach(record -> { if (record.getUserId() != null) { SysUser user = userMapper.selectUserById(record.getUserId()); record.setSysUser(user); // 假设Archiverecordstouser中有setUser方法 } }); // List beanRecords = list(lqw); // log.info("从数据库中查到的为:{}", beanRecords); // return markOwnData(familyId, fatherFaId, motherFaId, beanRecords); HashMap data = MapUtils.getResult(pageResult, beanRecords); return AjaxResult.success(data); } /** * 查询【请填写功能名称】 * * @param id 【请填写功能名称】主键 * @return 【请填写功能名称】 */ @Override public Archiverecordstouser selectArchiverecordstouserById(Long id) { return null; } @Override public List selectArchiverecordstouserList(Archiverecordstouser archiverecordstouser) { return null; } /** * 查询【请填写功能名称】列表 * * @param archiverecordstouser 【请填写功能名称】 * @return 【请填写功能名称】 */ /** * 新增【请填写功能名称】 * * @param archiverecordstouser 【请填写功能名称】 * @return 结果 */ @Override public int insertArchiverecordstouser(Archiverecordstouser archiverecordstouser) { return 0; } /** * 修改【请填写功能名称】 * * @param archiverecordstouser 【请填写功能名称】 * @return 结果 */ @Override public int updateArchiverecordstouser(Archiverecordstouser archiverecordstouser) { return 0; } /** * 批量删除【请填写功能名称】 * * @param ids 需要删除的【请填写功能名称】主键 * @return 结果 */ @Override public int deleteArchiverecordstouserByIds(Long[] ids) { return 0; } /** * 删除【请填写功能名称】信息 * * @param id 【请填写功能名称】主键 * @return 结果 */ @Override public int deleteArchiverecordstouserById(Long id) { return 0; } @Override public int deleteArchiverecordstouserByRecordId(String recordId, Long userId) { LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(!StringUtils.isEmpty(recordId), Archiverecordstouser::getArchiveRecordsId, recordId) .eq(userId!=null, Archiverecordstouser::getUserId, userId); if(this.remove(lqw)) return 1; else return 0; } @Override public int queryArchiverecordstouserByRecordId(String recordId, Long userId) { LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(!StringUtils.isEmpty(recordId), Archiverecordstouser::getArchiveRecordsId, recordId) .eq(userId!=null, Archiverecordstouser::getUserId, userId); List lis = list(lqw); if(!lis.isEmpty()) return 1; else return 0; } }