| | |
| | | package com.ruoyi.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | | 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.utils.MapUtils; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.domain.ArchiveAnnotation; |
| | | import com.ruoyi.domain.ArchiveCategory; |
| | | import com.ruoyi.domain.ArchiveSignature; |
| | | import com.ruoyi.mapper.ArchiveAnnotationMapper; |
| | | import com.ruoyi.mapper.ArchiveCategoryMapper; |
| | | import com.ruoyi.service.IArchiveAnnotationService; |
| | | import com.ruoyi.service.IArchiveCategoryService; |
| | | import com.ruoyi.util.ErrorcodeExceptionextends; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.time.LocalDateTime; |
| | | import java.time.ZoneId; |
| | | import java.util.*; |
| | | |
| | | @Service |
| | | public class ArchiveAnnotationServiceImpl extends ServiceImpl<ArchiveAnnotationMapper, ArchiveAnnotation> implements IArchiveAnnotationService { |
| | | @Override |
| | | public ArchiveAnnotation selectArchiveAnnotationById(Long id) { |
| | | return null; |
| | | public class ArchiveAnnotationServiceImpl extends ServiceImpl<ArchiveAnnotationMapper, ArchiveAnnotation> implements IArchiveAnnotationService { |
| | | |
| | | private LambdaQueryWrapper<ArchiveAnnotation> buildCondition(ArchiveAnnotation archiveAnnotation) { |
| | | LambdaQueryWrapper<ArchiveAnnotation> lqw = new LambdaQueryWrapper<>(); |
| | | lqw.like(!StringUtils.isEmpty(archiveAnnotation.getName()), ArchiveAnnotation::getName, archiveAnnotation.getName()); |
| | | |
| | | lqw.orderByDesc(ArchiveAnnotation::getSrt); |
| | | return lqw; |
| | | } |
| | | |
| | | @Override |
| | | public List<ArchiveAnnotation> selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation) { |
| | | public ArchiveAnnotation selectArchiveAnnotationById(Long id) { |
| | | LambdaQueryWrapper<ArchiveAnnotation> lqw = new LambdaQueryWrapper<>(); |
| | | lqw.eq(id != null, ArchiveAnnotation::getId, id); |
| | | List<ArchiveAnnotation> lists = this.list(lqw); |
| | | if (!lists.isEmpty()) |
| | | return lists.get(0); |
| | | else |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public AjaxResult selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation, Integer pageNum, Integer pageSize) { |
| | | LambdaQueryWrapper<ArchiveAnnotation> lqw = buildCondition(archiveAnnotation); |
| | | |
| | | |
| | | Page<ArchiveAnnotation> archiveSignaturePage = new Page<>(pageNum, pageSize); |
| | | Page<ArchiveAnnotation> pageResult = page(archiveSignaturePage, lqw); |
| | | |
| | | List<ArchiveAnnotation> beanRecords = pageResult.getRecords();//得到查询出来的数据 |
| | | |
| | | |
| | | |
| | | // List<ArchiveRecords> beanRecords = list(lqw); |
| | | // log.info("从数据库中查到的为:{}", beanRecords); |
| | | // return markOwnData(familyId, fatherFaId, motherFaId, beanRecords); |
| | | HashMap<String, Object> data = MapUtils.getResult(pageResult, beanRecords); |
| | | |
| | | |
| | | return AjaxResult.success(data); |
| | | } |
| | | |
| | | @Override |
| | | public List<ArchiveAnnotation> selectArchiveAnnoList(ArchiveAnnotation archiveAnnotation) { |
| | | return Collections.emptyList(); |
| | | } |
| | | |
| | | @Override |
| | | public int insertArchiveAnnotation(ArchiveAnnotation archiveAnnotation) { |
| | | return 0; |
| | | LocalDateTime time = LocalDateTime.now(); |
| | | if (archiveAnnotation.getName() == null || StringUtils.isEmpty(archiveAnnotation.getName())) |
| | | throw new RuntimeException("注解名称不能为空!"); |
| | | Date date = Date.from(time.atZone(ZoneId.systemDefault()).toInstant()); |
| | | archiveAnnotation.setCreateTime(date); |
| | | |
| | | // 根据注解名称查询,是否已经存在,存在的话不让插入 |
| | | LambdaQueryWrapper<ArchiveAnnotation> lambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | lambdaQueryWrapper.eq(!StringUtils.isEmpty(archiveAnnotation.getName()), ArchiveAnnotation::getName, |
| | | archiveAnnotation.getName()); |
| | | List<ArchiveAnnotation> lis = list(lambdaQueryWrapper); |
| | | if (!lis.isEmpty()) { |
| | | return 0; |
| | | } |
| | | |
| | | boolean res = this.save(archiveAnnotation); |
| | | |
| | | // 0表示失败,1表示成功 |
| | | if (res) |
| | | return 1; |
| | | else |
| | | return 0; |
| | | } |
| | | |
| | | @Override |
| | | public int updateArchiveAnnotation(ArchiveAnnotation archiveAnnotation) { |
| | | return 0; |
| | | boolean result = false; |
| | | try { |
| | | // 使用LambdaUpdateWrapper构造更新条件,确保null值也能更新到数据库 |
| | | LambdaUpdateWrapper<ArchiveAnnotation> updateWrapper = new LambdaUpdateWrapper<>(); |
| | | updateWrapper.eq(ArchiveAnnotation::getId, archiveAnnotation.getId()); |
| | | |
| | | // 明确设置需要更新的字段 |
| | | updateWrapper.set(ArchiveAnnotation::getName, archiveAnnotation.getName()); |
| | | updateWrapper.set(ArchiveAnnotation::getSrt, archiveAnnotation.getSrt()); |
| | | updateWrapper.set(ArchiveAnnotation::getCreateTime, archiveAnnotation.getCreateTime()); |
| | | |
| | | // 执行更新操作 |
| | | result = update(updateWrapper); |
| | | } catch (Exception e) { |
| | | System.out.println(e); |
| | | throw new ErrorcodeExceptionextends(500, "不允许注解名称重复!"); |
| | | } |
| | | if (result) |
| | | return 1; |
| | | else |
| | | return 0; |
| | | } |
| | | |
| | | @Override |
| | | public int deleteArchiveAnnotationByIds(Long[] ids) { |
| | | return 0; |
| | | if (this.removeByIds(Arrays.asList(ids))) { |
| | | return 1; |
| | | } else { |
| | | return 0; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public int deleteArchiveAnnotationById(Long id) { |
| | | return 0; |
| | | return this.baseMapper.deleteById(id); |
| | | } |
| | | } |