添加备注及图片宽高
This commit is contained in:
parent
755ad9f8d3
commit
1015b6b5bd
|
|
@ -1,5 +1,6 @@
|
||||||
package com.bonus;
|
package com.bonus;
|
||||||
|
|
||||||
|
import com.bonus.common.utils.SecurityUtils;
|
||||||
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.SpringApplication;
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
||||||
|
|
@ -16,6 +17,9 @@ public class BonusApplication
|
||||||
{
|
{
|
||||||
public static void main(String[] args)
|
public static void main(String[] args)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
String pwd = SecurityUtils.encryptPassword("Bonus@admin123!");
|
||||||
|
System.err.println(pwd);
|
||||||
// System.setProperty("spring.devtools.restart.enabled", "false");
|
// System.setProperty("spring.devtools.restart.enabled", "false");
|
||||||
SpringApplication.run(BonusApplication.class, args);
|
SpringApplication.run(BonusApplication.class, args);
|
||||||
System.err.println("(♥◠‿◠)ノ゙ 江苏图片自动标注后台服务启动成功 ლ(´ڡ`ლ)゙ \n" +
|
System.err.println("(♥◠‿◠)ノ゙ 江苏图片自动标注后台服务启动成功 ლ(´ڡ`ლ)゙ \n" +
|
||||||
|
|
|
||||||
|
|
@ -138,16 +138,16 @@ Sm4:
|
||||||
KEY: 78d1295afa99449b99d6f83820e6965c
|
KEY: 78d1295afa99449b99d6f83820e6965c
|
||||||
IV: f555adf6c01d0ab0761e626a2dae34a2
|
IV: f555adf6c01d0ab0761e626a2dae34a2
|
||||||
|
|
||||||
#minio:
|
|
||||||
# url: http://47.92.234.255:9090
|
|
||||||
# endpoint: http://47.92.234.255:9090
|
|
||||||
# accessKey: minio
|
|
||||||
# secretKey: Bonus@admin123!
|
|
||||||
# bucketName: image
|
|
||||||
|
|
||||||
minio:
|
minio:
|
||||||
url: http://192.168.0.14:9090
|
url: http://47.92.234.255:9090
|
||||||
endpoint: http://192.168.0.14:9090
|
endpoint: http://47.92.234.255:9090
|
||||||
accessKey: minio
|
accessKey: minio
|
||||||
secretKey: bonus@admin123
|
secretKey: Bonus@admin123!
|
||||||
bucketName: image
|
bucketName: image
|
||||||
|
|
||||||
|
#minio:
|
||||||
|
# url: http://192.168.0.14:9090
|
||||||
|
# endpoint: http://192.168.0.14:9090
|
||||||
|
# accessKey: minio
|
||||||
|
# secretKey: bonus@admin123
|
||||||
|
# bucketName: image
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,10 @@
|
||||||
<artifactId>commons-compress</artifactId>
|
<artifactId>commons-compress</artifactId>
|
||||||
<version>1.20</version> <!-- 使用最新的版本 -->
|
<version>1.20</version> <!-- 使用最新的版本 -->
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.glassfish.jaxb</groupId>
|
||||||
|
<artifactId>jaxb-runtime</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,17 @@ package com.bonus.business.domain;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 算法信息类
|
* 算法信息类
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class AlgorithmVo {
|
public class AlgorithmVo {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private String remark;
|
||||||
/**
|
/**
|
||||||
* 主键
|
* 主键
|
||||||
*/
|
*/
|
||||||
|
|
@ -66,6 +72,8 @@ public class AlgorithmVo {
|
||||||
|
|
||||||
private int fileNum;
|
private int fileNum;
|
||||||
|
|
||||||
|
private List<String> hwData;
|
||||||
|
|
||||||
public static void addSource(AlgorithmVo vo, int length, String operaId, String createTime, String operaType, String userId, String operaName) {
|
public static void addSource(AlgorithmVo vo, int length, String operaId, String createTime, String operaType, String userId, String operaName) {
|
||||||
vo.setBzNum(0);
|
vo.setBzNum(0);
|
||||||
vo.setWbzNum(0);
|
vo.setWbzNum(0);
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,12 @@ import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ImageRecognize {
|
public class ImageRecognize {
|
||||||
|
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
private String dataType;
|
||||||
|
|
||||||
|
private String jsonData;
|
||||||
/**
|
/**
|
||||||
* 主键
|
* 主键
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,8 @@ import java.util.List;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class UserOperaVo {
|
public class UserOperaVo {
|
||||||
|
|
||||||
|
private String remark;
|
||||||
/**
|
/**
|
||||||
* 主键
|
* 主键
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -28,9 +28,9 @@ public interface ImageCaptionMapper {
|
||||||
* @param fileList
|
* @param fileList
|
||||||
* @param id
|
* @param id
|
||||||
*/
|
*/
|
||||||
void addUpLoadImage(@Param("list") List<SysFile> fileList, @Param("id") String id, @Param("createTime")String createTime, @Param("operaType")String operaType);
|
void addUpLoadImage(@Param("list") List<SysFile> fileList, @Param("id") String id, @Param("createTime")String createTime, @Param("operaType")String operaType, @Param("remark")String remark);
|
||||||
|
|
||||||
void addSureLoadImage(@Param("list") List<SysFile> fileList, @Param("id") String id, @Param("createTime")String createTime, @Param("operaType")String operaType);
|
void addSureLoadImage(@Param("list") List<SysFile> fileList, @Param("id") String id, @Param("createTime")String createTime, @Param("operaType")String operaType, @Param("remark")String remark);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新 数据
|
* 更新 数据
|
||||||
|
|
|
||||||
|
|
@ -58,10 +58,14 @@ public class AlgorithmService {
|
||||||
JSONArray array=jsonObject.getJSONArray("data");
|
JSONArray array=jsonObject.getJSONArray("data");
|
||||||
for (int i=0;i<array.size();i++){
|
for (int i=0;i<array.size();i++){
|
||||||
ImageRecognize vo = new ImageRecognize();
|
ImageRecognize vo = new ImageRecognize();
|
||||||
|
JSONArray detections=array.getJSONObject(i).getJSONArray("detections");
|
||||||
|
String jsondata=JSON.toJSONString(detections);
|
||||||
//获取路径及采集数据
|
//获取路径及采集数据
|
||||||
String path=array.getJSONObject(i).getString("image");
|
String path=array.getJSONObject(i).getString("image");
|
||||||
String type=array.getJSONObject(i).getString("type");
|
String type=array.getJSONObject(i).getString("type");
|
||||||
String imagePath=array.getJSONObject(i).getString("annotated_image_path");
|
String imagePath=array.getJSONObject(i).getString("annotated_image_path");
|
||||||
|
vo.setJsonData(jsondata);
|
||||||
|
vo.setDataType("0");
|
||||||
if(type==null || type.isEmpty()){
|
if(type==null || type.isEmpty()){
|
||||||
//获取到图片地址
|
//获取到图片地址
|
||||||
SysFile sysFile=entityMaps.get(path);
|
SysFile sysFile=entityMaps.get(path);
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import javax.imageio.ImageIO;
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
@ -188,8 +190,21 @@ public class CompressUploaderService {
|
||||||
long sizeInBytes = file.length();
|
long sizeInBytes = file.length();
|
||||||
// 转换为可读格式(如KB/MB)
|
// 转换为可读格式(如KB/MB)
|
||||||
String humanReadableSize = convertToHumanReadable(sizeInBytes);
|
String humanReadableSize = convertToHumanReadable(sizeInBytes);
|
||||||
|
|
||||||
//上传到minio
|
//上传到minio
|
||||||
SysFile sysFile=minioUtil.uploadFile(file,folderPath);
|
SysFile sysFile=minioUtil.uploadFile(file,folderPath);
|
||||||
|
BufferedImage image = ImageIO.read(file);
|
||||||
|
if (image != null) {
|
||||||
|
// 获取图片的宽度和高度
|
||||||
|
int width = image.getWidth();
|
||||||
|
int height = image.getHeight();
|
||||||
|
sysFile.setWidth(width+"");
|
||||||
|
sysFile.setHeight(height+"");
|
||||||
|
System.out.println("Width: " + width + ", Height: " + height);
|
||||||
|
} else {
|
||||||
|
System.out.println("Image not loaded successfully.");
|
||||||
|
}
|
||||||
|
|
||||||
sysFile.setName(uuid+"."+suffix);
|
sysFile.setName(uuid+"."+suffix);
|
||||||
sysFile.setOriginName(originFileName);
|
sysFile.setOriginName(originFileName);
|
||||||
sysFile.setFileSize(humanReadableSize);
|
sysFile.setFileSize(humanReadableSize);
|
||||||
|
|
|
||||||
|
|
@ -19,10 +19,12 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.zip.ZipEntry;
|
import java.util.zip.ZipEntry;
|
||||||
import java.util.zip.ZipInputStream;
|
import java.util.zip.ZipInputStream;
|
||||||
|
import javax.imageio.ImageIO;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.servlet.http.PushBuilder;
|
import javax.servlet.http.PushBuilder;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
@ -259,7 +261,7 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
if(addedAlgorithmNum==null || addedAlgorithmNum==0){
|
if(addedAlgorithmNum==null || addedAlgorithmNum==0){
|
||||||
return AjaxResult.error("操作记录添加失败!");
|
return AjaxResult.error("操作记录添加失败!");
|
||||||
}else{
|
}else{
|
||||||
AjaxResult result=ImageMultipartFile(multipartFile,path,createTime,userId,fileList,vo.getId(),operaType,isZip);
|
AjaxResult result=ImageMultipartFile(multipartFile,path,createTime,userId,fileList,vo.getId(),operaType,isZip,vo.getRemark());
|
||||||
if(result.isError()){
|
if(result.isError()){
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
@ -288,6 +290,7 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
} else {
|
} else {
|
||||||
typedCount++;
|
typedCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
//跟新图片地址
|
//跟新图片地址
|
||||||
mapper.updateImageAddress(imageRecognize);
|
mapper.updateImageAddress(imageRecognize);
|
||||||
//添加记录
|
//添加记录
|
||||||
|
|
@ -312,6 +315,8 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
for (UploadFileVo obj : fileVoList) {
|
for (UploadFileVo obj : fileVoList) {
|
||||||
String url;
|
String url;
|
||||||
if(BJ_TYPE.equals(obj.getType())){
|
if(BJ_TYPE.equals(obj.getType())){
|
||||||
|
String imageUrl=minioUtil.getFileUrl(obj.getBucketName(),obj.getFilePath(),60*60*7);
|
||||||
|
obj.setImageUrl(imageUrl);
|
||||||
url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7);
|
url=minioUtil.getFileUrl(obj.getBucketName(),obj.getBjFilePath(),60*60*7);
|
||||||
} else {
|
} else {
|
||||||
url=minioUtil.getFileUrl(obj.getBucketName(),obj.getFilePath(),60*60*7);
|
url=minioUtil.getFileUrl(obj.getBucketName(),obj.getFilePath(),60*60*7);
|
||||||
|
|
@ -340,7 +345,7 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
* @param operaType
|
* @param operaType
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public AjaxResult ImageMultipartFile(MultipartFile[] multipartFile ,String path,String createTime,String userId,List<SysFile> fileList ,String id,String operaType,boolean isZip){
|
public AjaxResult ImageMultipartFile(MultipartFile[] multipartFile ,String path,String createTime,String userId,List<SysFile> fileList ,String id,String operaType,boolean isZip,String remark){
|
||||||
try{
|
try{
|
||||||
if(isZip){
|
if(isZip){
|
||||||
List<SysFile> list=compressUploaderService.uploadAndExtract(multipartFile[0],path);
|
List<SysFile> list=compressUploaderService.uploadAndExtract(multipartFile[0],path);
|
||||||
|
|
@ -359,6 +364,16 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
// 转换为可读格式(如KB/MB)
|
// 转换为可读格式(如KB/MB)
|
||||||
String humanReadableSize = convertToHumanReadable(sizeInBytes);
|
String humanReadableSize = convertToHumanReadable(sizeInBytes);
|
||||||
SysFile sysFile=minioUtil.uploadFile(file,folderPath);
|
SysFile sysFile=minioUtil.uploadFile(file,folderPath);
|
||||||
|
BufferedImage img = ImageIO.read(file.getInputStream());
|
||||||
|
if (img != null) {
|
||||||
|
int width = img.getWidth();
|
||||||
|
int height = img.getHeight();
|
||||||
|
sysFile.setWidth(width+"");
|
||||||
|
sysFile.setHeight(height+"");
|
||||||
|
System.out.println("Width: " + width + ", Height: " + height);
|
||||||
|
} else {
|
||||||
|
System.out.println("Image not loaded successfully.");
|
||||||
|
}
|
||||||
sysFile.setName(uuid+"."+suffix);
|
sysFile.setName(uuid+"."+suffix);
|
||||||
SysFile.addSource(sysFile,userId,originFileName,humanReadableSize);
|
SysFile.addSource(sysFile,userId,originFileName,humanReadableSize);
|
||||||
fileList.add(sysFile);
|
fileList.add(sysFile);
|
||||||
|
|
@ -371,9 +386,9 @@ public class ImageCaptionServiceImpl implements ImageCaptionService {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(PG_TYPE.equals(operaType)){
|
if(PG_TYPE.equals(operaType)){
|
||||||
mapper.addSureLoadImage(fileList,id,createTime,operaType);
|
mapper.addSureLoadImage(fileList,id,createTime,operaType,remark);
|
||||||
}
|
}
|
||||||
mapper.addUpLoadImage(fileList,id,createTime,operaType);
|
mapper.addUpLoadImage(fileList,id,createTime,operaType,remark);
|
||||||
return AjaxResult.success("上传成功!");
|
return AjaxResult.success("上传成功!");
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
log.error(e.getMessage(),e);
|
log.error(e.getMessage(),e);
|
||||||
|
|
|
||||||
|
|
@ -16,27 +16,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="addAlgorithm" useGeneratedKeys="true" keyProperty="id">
|
<insert id="addAlgorithm" useGeneratedKeys="true" keyProperty="id">
|
||||||
insert into tb_algorithm(
|
insert into tb_algorithm(
|
||||||
oper_id, name, create_time, bz_num, wbz_num, user_id,image_num, is_sure,oper_type
|
oper_id, name, create_time, bz_num, wbz_num, user_id,image_num, is_sure,oper_type,remark
|
||||||
)values (#{operaId},#{name},#{createTime},#{bzNum},#{wbzNum},#{userId},#{imageNum},#{isSure},#{operaType})
|
)values (#{operaId},#{name},#{createTime},#{bzNum},#{wbzNum},#{userId},#{imageNum},#{isSure},#{operaType},#{remark})
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="addUpLoadImage">
|
<insert id="addUpLoadImage">
|
||||||
insert into tb_upload_file(
|
insert into tb_upload_file(
|
||||||
id, algorithm_id,original_name,file_path,bucket_name,
|
id, algorithm_id,original_name,file_path,bucket_name,
|
||||||
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user
|
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user,remark,height,width
|
||||||
) values
|
) values
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
(#{item.id}, #{id},#{item.originName},#{item.url},#{item.bucketName},
|
(#{item.id}, #{id},#{item.originName},#{item.url},#{item.bucketName},
|
||||||
#{item.name},0,#{createTime},#{operaType},#{item.bjFilePath},#{item.fileSize},#{item.createUser} )
|
#{item.name},0,#{createTime},#{operaType},#{item.bjFilePath},#{item.fileSize},#{item.createUser},#{remark},#{item.height},#{item.width} )
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="addSureLoadImage">
|
<insert id="addSureLoadImage">
|
||||||
insert into tb_sure_file(
|
insert into tb_sure_file(
|
||||||
id, algorithm_id,original_name,file_path,bucket_name,
|
id, algorithm_id,original_name,file_path,bucket_name,
|
||||||
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user
|
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user,remark,data_type,json_data,height,width
|
||||||
) values
|
) values
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
(#{item.id}, #{id},#{item.originName},#{item.url},#{item.bucketName},
|
(#{item.id}, #{id},#{item.originName},#{item.url},#{item.bucketName},
|
||||||
#{item.name},0,#{createTime},#{operaType},#{item.bjFilePath},#{item.fileSize},#{item.createUser} )
|
#{item.name},0,#{createTime},#{operaType},#{item.bjFilePath},#{item.fileSize},#{item.createUser},#{remark},#{item.dataType},#{item.jsonData},#{item.height},#{item.width} )
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="addImageRecognize">
|
<insert id="addImageRecognize">
|
||||||
|
|
@ -50,8 +50,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
impression,
|
impression,
|
||||||
balance,
|
balance,
|
||||||
detail,
|
detail,
|
||||||
type
|
type,json_data,data_type
|
||||||
)values (#{imageId},#{contentImage},#{overallScore},#{clarity},#{cleanliness},#{compressMarks},#{impression},#{balance},#{detail},#{type})
|
)values (#{imageId},#{contentImage},#{overallScore},#{clarity},#{cleanliness},#{compressMarks},#{impression},#{balance},#{detail},#{type},#{jsonData},#{dataType})
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<update id="updateAlgorithm">
|
<update id="updateAlgorithm">
|
||||||
|
|
@ -59,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<update id="updateImageAddress">
|
<update id="updateImageAddress">
|
||||||
update tb_upload_file set bj_file_path=#{imagePath} where id=#{imageId}
|
update tb_upload_file set bj_file_path=#{imagePath},json_data=#{jsonData},data_type=#{dataType} where id=#{imageId}
|
||||||
</update>
|
</update>
|
||||||
<update id="updateAlgorithmSure">
|
<update id="updateAlgorithmSure">
|
||||||
update tb_algorithm set is_sure=#{isSure}, sure_user=#{userId} where id=#{id}
|
update tb_algorithm set is_sure=#{isSure}, sure_user=#{userId} where id=#{id}
|
||||||
|
|
@ -95,7 +95,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<select id="getImageListHistory" resultType="com.bonus.business.domain.UserOperaVo">
|
<select id="getImageListHistory" resultType="com.bonus.business.domain.UserOperaVo">
|
||||||
select tam.id, tam.oper_type, tam.name operaName,tam.oper_id operaId,
|
select tam.id, tam.oper_type, tam.name operaName,tam.oper_id operaId,
|
||||||
tam.create_time operaTime, tam.user_id , tam.oper_type,
|
tam.create_time operaTime, tam.user_id , tam.oper_type,
|
||||||
tam.image_num imageNum ,tam.bz_num bzNum,tam.wbz_num wbzNum,tam.is_sure isSure
|
tam.image_num imageNum ,tam.bz_num bzNum,tam.wbz_num wbzNum,tam.is_sure isSure,tam.remark
|
||||||
from tb_algorithm tam
|
from tb_algorithm tam
|
||||||
where tam.oper_id=#{id}
|
where tam.oper_id=#{id}
|
||||||
</select>
|
</select>
|
||||||
|
|
@ -133,7 +133,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
file.bj_file_path bjFilePath, file.file_size fileSize,
|
file.bj_file_path bjFilePath, file.file_size fileSize,
|
||||||
tir.content_image contentImage,ROUND(tir.overall_score, 2) overallScore,tir.clarity,
|
tir.content_image contentImage,ROUND(tir.overall_score, 2) overallScore,tir.clarity,
|
||||||
tir.cleanliness,tir.compress_marks compressMarks,tir.impression,
|
tir.cleanliness,tir.compress_marks compressMarks,tir.impression,
|
||||||
tir.balance,tir.detail,tir.type
|
tir.balance,tir.detail,tir.type, file.remark,file.height,file.width,
|
||||||
|
file.json_data jsonData ,file.data_type dataType
|
||||||
from tb_upload_file file
|
from tb_upload_file file
|
||||||
left join tb_image_recognize tir on tir.image_id=file.id
|
left join tb_image_recognize tir on tir.image_id=file.id
|
||||||
left join da_ky_sys_dict_data sdd on sdd.dict_type='bz_data'
|
left join da_ky_sys_dict_data sdd on sdd.dict_type='bz_data'
|
||||||
|
|
@ -184,7 +185,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
file.bj_file_path bjFilePath, file.file_size fileSize,
|
file.bj_file_path bjFilePath, file.file_size fileSize,
|
||||||
tir.content_image contentImage,ROUND(tir.overall_score, 2) overallScore,tir.clarity,
|
tir.content_image contentImage,ROUND(tir.overall_score, 2) overallScore,tir.clarity,
|
||||||
tir.cleanliness,tir.compress_marks compressMarks,tir.impression,
|
tir.cleanliness,tir.compress_marks compressMarks,tir.impression,
|
||||||
tir.balance,tir.detail,tir.type,su.user_name userName,file.create_time createTime
|
tir.balance,tir.detail,tir.type,su.user_name userName,file.create_time createTime,
|
||||||
|
file.remark,file.height,file.width,
|
||||||
|
file.json_data jsonData ,file.data_type dataType
|
||||||
from tb_algorithm tam
|
from tb_algorithm tam
|
||||||
left join tb_user_oper tuo on tuo.id=tam.oper_id
|
left join tb_user_oper tuo on tuo.id=tam.oper_id
|
||||||
left join tb_sure_file file on file.algorithm_id=tam.id
|
left join tb_sure_file file on file.algorithm_id=tam.id
|
||||||
|
|
@ -219,7 +222,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
file.file_type fileType,
|
file.file_type fileType,
|
||||||
file.bj_file_path bjFilePath,
|
file.bj_file_path bjFilePath,
|
||||||
file. file_size fileSize,
|
file. file_size fileSize,
|
||||||
file.create_user createUser
|
file.create_user createUser,
|
||||||
|
file.json_data jsonData,
|
||||||
|
file.data_type dataType,
|
||||||
|
file.remark remark,
|
||||||
|
file.height, file.width
|
||||||
from tb_upload_file file
|
from tb_upload_file file
|
||||||
left join tb_algorithm ta on ta.id=file.algorithm_id
|
left join tb_algorithm ta on ta.id=file.algorithm_id
|
||||||
WHERE file.is_active=0
|
WHERE file.is_active=0
|
||||||
|
|
@ -229,11 +236,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<insert id="addSureFile">
|
<insert id="addSureFile">
|
||||||
replace into tb_sure_file(
|
replace into tb_sure_file(
|
||||||
id, algorithm_id,original_name,file_path,bucket_name,
|
id, algorithm_id,original_name,file_path,bucket_name,
|
||||||
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user
|
file_name,is_active,create_time,file_type,bj_file_path,file_size,create_user,json_data,data_type,remark,height,width
|
||||||
) values
|
) values
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
(#{item.imageId}, #{item.algorithmId},#{item.originalName},#{item.filePath},#{item.bucketName},
|
(#{item.imageId}, #{item.algorithmId},#{item.originalName},#{item.filePath},#{item.bucketName},
|
||||||
#{item.fileName},#{item.isActive},now(),#{item.fileType},#{item.bjFilePath},#{item.fileSize},#{item.createUser} )
|
#{item.fileName},#{item.isActive},now(),#{item.fileType},#{item.bjFilePath},#{item.fileSize},#{item.createUser},#{item.jsonData} ,#{item.dataType} ,#{item.remark} ,#{item.height} ,#{item.width} )
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -15,6 +15,17 @@ import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
@Builder
|
@Builder
|
||||||
public class SysFile
|
public class SysFile
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* 高度
|
||||||
|
*/
|
||||||
|
private String height;
|
||||||
|
/**
|
||||||
|
* 宽度
|
||||||
|
*/
|
||||||
|
private String width;
|
||||||
|
|
||||||
|
private String dataType;
|
||||||
|
|
||||||
private String id;
|
private String id;
|
||||||
/**
|
/**
|
||||||
* 文件名称
|
* 文件名称
|
||||||
|
|
@ -50,6 +61,8 @@ public class SysFile
|
||||||
*/
|
*/
|
||||||
private String createUser;
|
private String createUser;
|
||||||
|
|
||||||
|
private String jsonData;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 添加属性
|
* 添加属性
|
||||||
* @param sysFile
|
* @param sysFile
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,20 @@ import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class UploadFileVo {
|
public class UploadFileVo {
|
||||||
|
/**
|
||||||
|
* 高度
|
||||||
|
*/
|
||||||
|
private String height;
|
||||||
|
/**
|
||||||
|
* 宽度
|
||||||
|
*/
|
||||||
|
private String width;
|
||||||
|
|
||||||
|
private String dataType;
|
||||||
|
|
||||||
|
private String jsonData;
|
||||||
|
|
||||||
|
private String remark;
|
||||||
|
|
||||||
private String operaName;
|
private String operaName;
|
||||||
|
|
||||||
|
|
@ -33,6 +47,8 @@ public class UploadFileVo {
|
||||||
* 标记文件地址
|
* 标记文件地址
|
||||||
*/
|
*/
|
||||||
private String bjFilePath;
|
private String bjFilePath;
|
||||||
|
|
||||||
|
private String imageUrl;
|
||||||
/**
|
/**
|
||||||
* 标记图片地址
|
* 标记图片地址
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,6 @@ public class TokenService
|
||||||
refreshToken(loginUser);
|
refreshToken(loginUser);
|
||||||
// 绑定用户名与当前uuid,挤下线旧会话
|
// 绑定用户名与当前uuid,挤下线旧会话
|
||||||
bindUserToken(loginUser.getUsername(), token);
|
bindUserToken(loginUser.getUsername(), token);
|
||||||
|
|
||||||
Map<String, Object> claims = new HashMap<>();
|
Map<String, Object> claims = new HashMap<>();
|
||||||
claims.put(Constants.LOGIN_USER_KEY, token);
|
claims.put(Constants.LOGIN_USER_KEY, token);
|
||||||
claims.put(Constants.JWT_USERNAME, loginUser.getUsername());
|
claims.put(Constants.JWT_USERNAME, loginUser.getUsername());
|
||||||
|
|
@ -375,11 +374,12 @@ public class TokenService
|
||||||
{
|
{
|
||||||
String userTokenKey = getUserTokenKey(username);
|
String userTokenKey = getUserTokenKey(username);
|
||||||
String oldUuid = redisCache.getCacheObject(userTokenKey);
|
String oldUuid = redisCache.getCacheObject(userTokenKey);
|
||||||
if (StringUtils.isNotEmpty(oldUuid) && !uuid.equals(oldUuid))
|
if(!"admin".equals(username)){
|
||||||
{
|
if (StringUtils.isNotEmpty(oldUuid) && !uuid.equals(oldUuid)) {
|
||||||
// 删除旧的 login_tokens:{oldUuid}
|
// 删除旧的 login_tokens:{oldUuid}
|
||||||
String oldLoginKey = getTokenKey(oldUuid);
|
String oldLoginKey = getTokenKey(oldUuid);
|
||||||
redisCache.deleteObject(oldLoginKey);
|
redisCache.deleteObject(oldLoginKey);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
redisCache.setCacheObject(userTokenKey, uuid, expireTime, TimeUnit.MINUTES);
|
redisCache.setCacheObject(userTokenKey, uuid, expireTime, TimeUnit.MINUTES);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue