master
周文涛 2 years ago
parent 5e66e6f273
commit bfd96e88e5

@ -9,6 +9,8 @@ import java.io.UnsupportedEncodingException;
import java.net.URLDecoder; import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.api.vo.Result; import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.AssertUtils; import org.jeecg.common.util.AssertUtils;
@ -72,6 +74,13 @@ public class OcrIdentifyDetailController extends JeecgController<OcrIdentifyDeta
QueryWrapper<OcrIdentifyDetail> queryWrapper = QueryGenerator.initQueryWrapper(ocrIdentifyDetail, req.getParameterMap()); QueryWrapper<OcrIdentifyDetail> queryWrapper = QueryGenerator.initQueryWrapper(ocrIdentifyDetail, req.getParameterMap());
Page<OcrIdentifyDetail> page = new Page<OcrIdentifyDetail>(pageNo, pageSize); Page<OcrIdentifyDetail> page = new Page<OcrIdentifyDetail>(pageNo, pageSize);
IPage<OcrIdentifyDetail> pageList = ocrIdentifyDetailService.page(page, queryWrapper); IPage<OcrIdentifyDetail> pageList = ocrIdentifyDetailService.page(page, queryWrapper);
if (pageList!=null&& pageList.getRecords()!=null) {
for (OcrIdentifyDetail record : pageList.getRecords()) {
if (StringUtils.isNotBlank(record.getMessage())) {
record.setMessages(Arrays.asList(record.getMessage().split(",")));
}
}
}
return Result.OK(pageList); return Result.OK(pageList);
} }

@ -2,12 +2,12 @@ package org.jeecg.modules.ocr.entity;
import java.io.Serializable; import java.io.Serializable;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType; import java.util.List;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data; import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@ -57,6 +57,10 @@ public class OcrIdentifyDetail implements Serializable {
@Excel(name = "识别描述", width = 15) @Excel(name = "识别描述", width = 15)
@ApiModelProperty(value = "识别描述") @ApiModelProperty(value = "识别描述")
private java.lang.String message; private java.lang.String message;
@TableField(exist = false)
private List<String> messages=new ArrayList<>();
/**语义化结果*/ /**语义化结果*/
@Excel(name = "语义化结果", width = 15) @Excel(name = "语义化结果", width = 15)
@ApiModelProperty(value = "语义化结果") @ApiModelProperty(value = "语义化结果")

@ -69,7 +69,7 @@ public class OcrIdentifyServiceImpl extends ServiceImpl<OcrIdentifyMapper, OcrId
String imgPath = responseBody.getString("img_path");//图片路径 String imgPath = responseBody.getString("img_path");//图片路径
String imgName = null;//图片名称 String imgName = null;//图片名称
if (StringUtils.isNotBlank(imgPath)) { if (StringUtils.isNotBlank(imgPath)) {
imgName = imgPath.substring(imgPath.lastIndexOf("/"),imgPath.length()); imgName = imgPath.substring(imgPath.lastIndexOf("/")+1,imgPath.length());
} }
String message = responseBody.getString("message");//描述 String message = responseBody.getString("message");//描述
String taskStatus = responseBody.getString("taskStatus");//任务是否完成 String taskStatus = responseBody.getString("taskStatus");//任务是否完成
@ -98,13 +98,10 @@ public class OcrIdentifyServiceImpl extends ServiceImpl<OcrIdentifyMapper, OcrId
//// ////
String text;//ocr 识别的文本, String text;//ocr 识别的文本,
Double probability=0d; Double probability=0d;
OcrResult copyOcrResult=new OcrResult();
//用于数据结构化的对象 //用于数据结构化的对象
List<OcrResult> ocrResultList=new ArrayList<>(); List<OcrResult> ocrResultList=new ArrayList<>();
StringBuffer rMessage=new StringBuffer(); StringBuffer rMessage=new StringBuffer();
rMessage.append("<br/>");
Map<String,Boolean> fieldRightMap=new LinkedHashMap<>();//存放 字段判断正确map Map<String,Boolean> fieldRightMap=new LinkedHashMap<>();//存放 字段判断正确map
//========================== //==========================
checkSemanticFor: for (CheckSemanticModel value : checkSemanticModelMap.values()) { checkSemanticFor: for (CheckSemanticModel value : checkSemanticModelMap.values()) {
@ -128,7 +125,6 @@ public class OcrIdentifyServiceImpl extends ServiceImpl<OcrIdentifyMapper, OcrId
} }
} }
ocrArrayFor:for (int i = 0; i < ocrArray.size(); i++) { ocrArrayFor:for (int i = 0; i < ocrArray.size(); i++) {
copyOcrResult=new OcrResult();
JSONObject ocrItem = ocrArray.get(i); JSONObject ocrItem = ocrArray.get(i);
text = ocrItem.getString("text");//ocr 识别的文本 text = ocrItem.getString("text");//ocr 识别的文本
probability = ocrItem.getDouble("probability");//置信度 probability = ocrItem.getDouble("probability");//置信度
@ -150,8 +146,8 @@ public class OcrIdentifyServiceImpl extends ServiceImpl<OcrIdentifyMapper, OcrId
} }
} }
} }
rMessage.append(field+"_未查到ocr结果,"); rMessage.append(field+"_未查到ocr结果");
ocrResultAdd(ocrResultList,field,inputText,null,0d,imgPath,"未查到ocr结果",false); ocrResultAdd(ocrResultList,field,inputText,null,0d,imgPath,"ocr结果未获取",false);
fieldRightMap.put(field,false); fieldRightMap.put(field,false);
} }

Loading…
Cancel
Save