fei
22 小时以前 cb703ae5b5afdd4a7d614a948ee4d4c457b77185
archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
@@ -1,23 +1,26 @@
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.ArchiveCategory;
import com.ruoyi.domain.ArchiveSignature;
import com.ruoyi.domain.Archiverecordstouser;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.*;
import com.ruoyi.mapper.ArchiveSignatureMapper;
import com.ruoyi.mapper.ArchiverecordstouserMapper;
import com.ruoyi.service.IArchiveSignatureService;
import com.ruoyi.service.IArchiverecordstouserService;
import com.ruoyi.util.ErrorcodeExceptionextends;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
@Service
public class ArchiveSignatureServiceImpl extends ServiceImpl<ArchiveSignatureMapper, ArchiveSignature> implements IArchiveSignatureService {
@@ -54,31 +57,127 @@
    @Override
    public ArchiveSignature selectArchiveSignatureById(Long id) {
        return null;
        LambdaQueryWrapper<ArchiveSignature> lqw = new LambdaQueryWrapper<>();
        lqw.eq(id!=null, ArchiveSignature::getId, id);
        List<ArchiveSignature> lists = this.list(lqw);
        if(!lists.isEmpty())
            return lists.get(0);
        else
            return null;
    }
    @Override
    public AjaxResult importExcel(MultipartFile file) {
        ExcelUtil<ArchiveSignature> util = new ExcelUtil<>(ArchiveSignature.class);
        List<ArchiveSignature> dataList = null;
        try {
            dataList = util.importExcel(file.getInputStream());
        } catch (Exception e) {
            throw new RuntimeException("没有按照规则导入数据");
        }
        assert dataList != null;
        for (ArchiveSignature archiveSignature : dataList) {
            // physcialService.mySave(physcial);
            this.insertArchiveSignature(archiveSignature);
        }
        return AjaxResult.success();
    }
    @Override
    public List<ArchiveSignature> selectArchiveSignatureList(ArchiveSignature archiveSignature) {
        return Collections.emptyList();
        LambdaQueryWrapper<ArchiveSignature> lqw = new LambdaQueryWrapper<>();
        LambdaQueryWrapper<ArchiveSignature> lambdaQueryWrapper = buildCondition(archiveSignature);
        List<ArchiveSignature> beanRecords = list(lambdaQueryWrapper);
        return beanRecords;
    }
    @Override
    public List<ArchiveSignature> selectArchiveSignatureByIds(Long[] ids) {
        // 创建查询条件
        LambdaQueryWrapper<ArchiveSignature> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        // 根据ids查询
        lambdaQueryWrapper.in(ArchiveSignature::getId, Arrays.asList(ids));
        // 如果不是管理员,需要考虑权限过滤(可根据实际权限需求调整)
//        if (userid != 1) {
//            // 这里可以添加权限相关的过滤条件
//        }
        List<ArchiveSignature> beanRecords = list(lambdaQueryWrapper);
        return beanRecords;
    }
    @Override
    public int insertArchiveSignature(ArchiveSignature archiveSignature) {
        return 0;
        LocalDateTime time = LocalDateTime.now();
        if(archiveSignature.getSigaName()==null||StringUtils.isEmpty(archiveSignature.getSigaName()))
            throw new RuntimeException("签名信息不能为空!");
        Date date = Date.from(time.atZone(ZoneId.systemDefault()).toInstant());
        archiveSignature.setCreateTime(date);
    //    System.out.println(archiveRecords.getRecordId());
        //根据档号查询,是否已经有档号,有的话,就不让插入
        LambdaQueryWrapper<ArchiveSignature> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.eq(!StringUtils.isEmpty(archiveSignature.getSigaName()), ArchiveSignature::getSigaName,
                archiveSignature.getSigaName());
        List<ArchiveSignature> lis = list(lambdaQueryWrapper);
        if(!lis.isEmpty())
        {
            return 0;
        }
      //  archiveRecords.setRecordStatus("未录入");
        //  archiveRecords
        boolean res = this.save(archiveSignature);
        //0表示失败,1表示成功
        if(res)
            return 1;
        else
            return 0;
    }
    @Override
    public int updateArchiveSignature(ArchiveSignature archiveSignature) {
        return 0;
        boolean result = false;
        try {
            // 使用LambdaUpdateWrapper构造更新条件,确保null值也能更新到数据库
            LambdaUpdateWrapper<ArchiveSignature> updateWrapper = new LambdaUpdateWrapper<>();
            updateWrapper.eq(ArchiveSignature::getId, archiveSignature.getId());
            // 明确设置需要更新的字段
            updateWrapper.set(ArchiveSignature::getSigaName, archiveSignature.getSigaName());
            updateWrapper.set(ArchiveSignature::getCreateTime, archiveSignature.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 deleteArchiveSignatureByIds(Long[] ids) {
        return 0;
        if (this.removeByIds(Arrays.asList(ids))) {
            return 1;
        }
        else
            return 0;
    }
    @Override
    public int deleteArchiveSignatureById(Long id) {
        return 0;
        return this.baseMapper.deleteById(id);
    }
}