From 7f24b11d327af691cd851c18771458d6643d91bd Mon Sep 17 00:00:00 2001 From: haozq <1611483981@qq.com> Date: Mon, 29 Sep 2025 15:06:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=BE=E5=83=8F=E6=A0=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/business/domain/UserOperaVo.java | 4 +- .../business/mapper/ImageCaptionMapper.java | 14 ++ .../service/impl/ImageCaptionServiceImpl.java | 127 ++++++++++-------- .../mapper/business/ImageCaptionMapper.xml | 45 +++++-- 4 files changed, 124 insertions(+), 66 deletions(-) diff --git a/bonus-business/src/main/java/com/bonus/business/domain/UserOperaVo.java b/bonus-business/src/main/java/com/bonus/business/domain/UserOperaVo.java index 58abefb..44c5ec8 100644 --- a/bonus-business/src/main/java/com/bonus/business/domain/UserOperaVo.java +++ b/bonus-business/src/main/java/com/bonus/business/domain/UserOperaVo.java @@ -49,7 +49,9 @@ public class UserOperaVo { * 是否去微软 */ private String isSure; - + /** + * 图片集合 + */ private List fileVoList; /** * 图片id的集合 diff --git a/bonus-business/src/main/java/com/bonus/business/mapper/ImageCaptionMapper.java b/bonus-business/src/main/java/com/bonus/business/mapper/ImageCaptionMapper.java index b476cac..c4d4eab 100644 --- a/bonus-business/src/main/java/com/bonus/business/mapper/ImageCaptionMapper.java +++ b/bonus-business/src/main/java/com/bonus/business/mapper/ImageCaptionMapper.java @@ -86,4 +86,18 @@ public interface ImageCaptionMapper { * @return */ List getSelected(); + + /** + * 查询历史全部记录 + * @param userOperaVo + * @return + */ + List getImageListHistory(UserOperaVo userOperaVo); + + /** + * 查询每个批次的图片数量 + * @param userOperaVo2 + * @return + */ + List getImageListDetailsHistory(UserOperaVo userOperaVo2); } diff --git a/bonus-business/src/main/java/com/bonus/business/service/impl/ImageCaptionServiceImpl.java b/bonus-business/src/main/java/com/bonus/business/service/impl/ImageCaptionServiceImpl.java index 24e8e66..f33296b 100644 --- a/bonus-business/src/main/java/com/bonus/business/service/impl/ImageCaptionServiceImpl.java +++ b/bonus-business/src/main/java/com/bonus/business/service/impl/ImageCaptionServiceImpl.java @@ -51,30 +51,33 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { */ @Override public AjaxResult addImageInfo(MultipartFile[] multipartFile, AlgorithmVo vo) { - try{ - String createTime=DateUtils.getTime(); - if(multipartFile == null || multipartFile.length == 0){ - return AjaxResult.error("请上传图片"); - } - if(StringUtils.isEmpty(vo.getParam())){ - return AjaxResult.error("请至少选择一个算法!"); - } - String userId="1"; - // String userId= SecurityUtils.getUserId().toString(); - String operaName=vo.getParam(); - //操作日期 - String path="image/"+year+"/"+month+"/"+day+"/"; - List fileList=new ArrayList<>(); - //文件路径 - - //1 图片标注 - UserOperaVo userOperaVo=new UserOperaVo(userId,operaName,createTime,"1"); - Integer addOperaNum=mapper.addUserOperaVo(userOperaVo); - if(addOperaNum==null || addOperaNum==0){ - return AjaxResult.error("操作添加失败!"); - }else{ + try{ + String createTime=DateUtils.getTime(); + if(multipartFile == null || multipartFile.length == 0){ + return AjaxResult.error("请上传图片"); + } + if(StringUtils.isEmpty(vo.getParam())){ + return AjaxResult.error("请至少选择一个算法!"); + } + // String userId="1"; + String userId= SecurityUtils.getUserId().toString(); + String operaName=vo.getParam(); + //操作日期 + String path="image/"+year+"/"+month+"/"+day+"/"; + List fileList=new ArrayList<>(); + //文件路径 + UserOperaVo userOperaVo=new UserOperaVo(userId,operaName,createTime,"1"); + if(StringUtils.isEmpty(vo.getId())){ + //1 图片标注 + Integer addOperaNum=mapper.addUserOperaVo(userOperaVo); + if(addOperaNum==null || addOperaNum==0){ + return AjaxResult.error("操作添加失败!"); + } + }else{ + userOperaVo.setId(vo.getId()); + } //操作记录 - vo.setImageNum(fileList.size()); + vo.setImageNum(multipartFile.length); vo.setBzNum(0); vo.setWbzNum(0); vo.setIsSure("0"); @@ -87,6 +90,7 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { if(addedAlgorithmNum==null || addedAlgorithmNum==0){ return AjaxResult.error("操作记录添加失败!"); }else{ + //文件上传标记 for (MultipartFile file : multipartFile) { String originFileName = file.getOriginalFilename(); String suffix=StringUtils.substringAfterLast(originFileName, "."); @@ -107,8 +111,6 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { } mapper.addUpLoadImage(fileList,vo.getId(),createTime,"1"); } - - //TODO 调用算法识别 ,然后进行图片更换 List list= algorithmService.getImageList(fileList,operaName); //更新标记的数量 和未标记的数量,同时更新 标记图片地址 @@ -126,15 +128,18 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { vo.setBzNum(bjNum); vo.setWbzNum(wbjNum); mapper.updateAlgorithm(vo); + // 查询数据历史集合 + List hisImageList=mapper.getImageListHistory(userOperaVo); + for (UserOperaVo userOperaVo2 : hisImageList) { + //查询 每次历史的 图片集合 + List fileVoList=mapper.getImageListDetailsHistory(userOperaVo2); + for (UploadFileVo obj : fileVoList) { + String url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7); + obj.setBjUrl(url); + } + userOperaVo2.setFileVoList(fileVoList); } - List list=mapper.getImageList(userOperaVo); - List fileVoList=mapper.getImageListDetails(userOperaVo); - for (UploadFileVo obj : fileVoList) { - String url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7); - obj.setBjUrl(url); - } - list.get(0).setFileVoList(fileVoList); - return AjaxResult.success(list.get(0)); + return AjaxResult.success(hisImageList); }catch (Exception e){ log.error(e.getMessage(),e); } @@ -154,8 +159,8 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { if(multipartFile == null || multipartFile.length == 0){ return AjaxResult.error("请上传图片"); } - String userId="1"; - // String userId= SecurityUtils.getUserId().toString(); + + String userId= SecurityUtils.getUserId().toString(); String operaName=DateUtils.getDate(); //操作日期 String path="image/"+year+"/"+month+"/"+day+"/"; @@ -163,12 +168,18 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { //1 图片标注 UserOperaVo userOperaVo=new UserOperaVo(userId,operaName,createTime,"2"); - Integer addOperaNum=mapper.addUserOperaVo(userOperaVo); - if(addOperaNum==null || addOperaNum==0){ - return AjaxResult.error("操作添加失败!"); + //文件路径 + if(StringUtils.isEmpty(vo.getId())){ + //1 图片标注 + Integer addOperaNum=mapper.addUserOperaVo(userOperaVo); + if(addOperaNum==null || addOperaNum==0){ + return AjaxResult.error("操作添加失败!"); + } }else{ + userOperaVo.setId(vo.getId()); + } //操作记录 - vo.setImageNum(fileList.size()); + vo.setImageNum(multipartFile.length); vo.setBzNum(0); vo.setWbzNum(0); vo.setIsSure("1"); @@ -203,20 +214,24 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { //图片存储 mapper.addUpLoadImage(fileList,vo.getId(),createTime,"2"); } - } //TODO 调用算法进行照片评估 List list= algorithmService.getImageRecognizeList(fileList,operaName); for (ImageRecognize sysFile : list) { mapper.addImageRecognize(sysFile); } - List userOperaVos=mapper.getImageList(userOperaVo); - List fileVoList=mapper.getImageListDetails(userOperaVo); - for (UploadFileVo obj : fileVoList) { - String url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7); - obj.setBjUrl(url); + + // 查询数据历史集合 + List hisImageList=mapper.getImageListHistory(userOperaVo); + for (UserOperaVo userOperaVo2 : hisImageList) { + //查询 每次历史的 图片集合 + List fileVoList=mapper.getImageListDetailsHistory(userOperaVo2); + for (UploadFileVo obj : fileVoList) { + String url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7); + obj.setBjUrl(url); + } + userOperaVo2.setFileVoList(fileVoList); } - userOperaVos.get(0).setFileVoList(fileVoList); - return AjaxResult.success(userOperaVos.get(0)); + return AjaxResult.success(hisImageList); }catch (Exception e){ log.error(e.getMessage(),e); } @@ -233,7 +248,6 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { try{ vo.setUserId(SecurityUtils.getUserId().toString()); List list=mapper.getImageList(vo); - return AjaxResult.success(list); }catch (Exception e){ log.error(e.getMessage(),e); @@ -250,13 +264,18 @@ public class ImageCaptionServiceImpl implements ImageCaptionService { @Override public AjaxResult getImageListDetails(UserOperaVo vo) { try{ - List list=mapper.getImageListDetails(vo); - for (UploadFileVo userOperaVo : list) { - String url=minioUtil.getFileUrl(userOperaVo.getBucketName(),userOperaVo.getBjFilePath(),60*60*7); - userOperaVo.setBjUrl(url); - + // 查询数据历史集合 + List hisImageList=mapper.getImageListHistory(vo); + for (UserOperaVo userOperaVo2 : hisImageList) { + //查询 每次历史的 图片集合 + List fileVoList=mapper.getImageListDetailsHistory(userOperaVo2); + for (UploadFileVo obj : fileVoList) { + String url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7); + obj.setBjUrl(url); + } + userOperaVo2.setFileVoList(fileVoList); } - return AjaxResult.success(list); + return AjaxResult.success(hisImageList); }catch (Exception e){ log.error(e.getMessage(),e); } diff --git a/bonus-business/src/main/resources/mapper/business/ImageCaptionMapper.xml b/bonus-business/src/main/resources/mapper/business/ImageCaptionMapper.xml index 376c6e7..90d26b6 100644 --- a/bonus-business/src/main/resources/mapper/business/ImageCaptionMapper.xml +++ b/bonus-business/src/main/resources/mapper/business/ImageCaptionMapper.xml @@ -24,7 +24,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" id, algorithm_id,original_name,file_path,bucket_name, file_name,is_active,create_time,file_type,bj_file_path,file_size ) values - (#{item.id}, #{id},#{item.originName},#{item.url},#{item.bucketName},#{item.name},0,#{createTime},'1',#{item.bjFilePath},#{item.fileSize} ) @@ -58,23 +57,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update tb_upload_file set is_active=1 where id in - - #{item} - + + #{item} + + + + + + + \ No newline at end of file