package com.ruoyi.basic.service.impl; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.*; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.basic.dto.CopyStandardProductListDto; import com.ruoyi.basic.dto.InsSampleReceiveDto; import com.ruoyi.basic.dto.ResetTreeDragDTO; import com.ruoyi.basic.dto.StandardProductListUpdateRecordDto; import com.ruoyi.basic.enums.StandardProductListChcekTypeEnums; import com.ruoyi.basic.mapper.*; import com.ruoyi.basic.pojo.*; import com.ruoyi.basic.service.StandardMethodListService; import com.ruoyi.basic.service.StandardProductListService; import com.ruoyi.basic.service.StandardProductListUpdateRecordService; import com.ruoyi.common.core.domain.MinioResult; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.QueryWrappers; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.file.MinioUtils; import lombok.AllArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; /** * @author Administrator * @description 针对表【standard_product_list(标准树下的检验项目)】的数据库操作Service实现 * @createDate 2024-03-05 10:33:29 */ @Service public class StandardProductListUpdateRecordServiceImpl extends ServiceImpl implements StandardProductListUpdateRecordService { @Autowired private StandardProductListUpdateRecordMapper standardProductListUpdateRecordMapper; @Autowired private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper; @Resource private MinioUtils minioUtils; @Value("${minio.bucketName}") private String bucketName; /** * 标准树下检验项修改记录分页查询 * @param page * @param record * @return */ @Override public IPage standardProductListRecordPage(Page page, StandardProductListUpdateRecordDto record) { return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,record); } /** * 标准树下检验项修改记录查询 * @param standardProductListUpdateRecordRel * @return */ @Override public Map standardProductListRecordRelPage(StandardProductListUpdateRecordRel standardProductListUpdateRecordRel) { Map resultMap = new HashMap<>(); List recordRelList = standardProductListUpdateRecordRelMapper.standardProductListRecordRelPage(QueryWrappers.queryWrappers(standardProductListUpdateRecordRel)); resultMap.put("productList",recordRelList); resultMap.put("total",recordRelList.size()); return resultMap; } /** * 标准树下修改记录文件上传 * * @param file * @param id */ @Override public void uploadRecordFile(MultipartFile file, Long id) { try { MinioResult result = minioUtils.upload(bucketName, file, true); // 保存路径 StandardProductListUpdateRecord standardProductListUpdateRecord = new StandardProductListUpdateRecord(); standardProductListUpdateRecord.setId(id); standardProductListUpdateRecord.setFileName(result.getOriginalName()); standardProductListUpdateRecord.setFilePath(result.getBucketFileName()); standardProductListUpdateRecord.setFilePreviewPath(result.getPreviewExpiry()); standardProductListUpdateRecordMapper.updateById(standardProductListUpdateRecord); }catch (Exception e){ throw new RuntimeException("文件上传失败"); } } }