|
|
@ -1,14 +1,17 @@ |
|
|
|
package com.ccsens.ptccsens.api; |
|
|
|
|
|
|
|
import cn.hutool.core.codec.Base64; |
|
|
|
import cn.hutool.core.io.FileUtil; |
|
|
|
import cn.hutool.core.util.IdUtil; |
|
|
|
import cn.hutool.core.util.ImageUtil; |
|
|
|
import cn.hutool.extra.servlet.ServletUtil; |
|
|
|
import com.ccsens.cloudutil.annotation.MustLogin; |
|
|
|
import com.ccsens.ptccsens.bean.dto.ProjectFinanceDto; |
|
|
|
import com.ccsens.ptccsens.bean.vo.OcrVo; |
|
|
|
import com.ccsens.ptccsens.bean.vo.ProjectFinanceVo; |
|
|
|
import com.ccsens.ptccsens.service.IOcrService; |
|
|
|
import com.ccsens.ptccsens.util.BasicsConstant; |
|
|
|
import com.ccsens.util.JsonResponse; |
|
|
|
import com.ccsens.util.*; |
|
|
|
import com.ccsens.util.baidu.BaiDuDto; |
|
|
|
import com.ccsens.util.baidu.BaiDuUtil; |
|
|
|
import com.ccsens.util.baidu.BaiDuVo; |
|
|
@ -25,8 +28,10 @@ import javax.annotation.Resource; |
|
|
|
import javax.imageio.ImageIO; |
|
|
|
import javax.servlet.http.Part; |
|
|
|
import java.io.ByteArrayOutputStream; |
|
|
|
import java.io.File; |
|
|
|
import java.io.IOException; |
|
|
|
import java.text.ParseException; |
|
|
|
import java.util.Date; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
@ -49,7 +54,25 @@ public class OcrController { |
|
|
|
ByteArrayOutputStream out = new ByteArrayOutputStream(); |
|
|
|
ImageUtil.scale(ImageIO.read(part.getInputStream()), out, 1f); |
|
|
|
String img = Base64.encode(out.toByteArray()); |
|
|
|
OcrVo.BillInfo billInfo = ocrService.identifyBill(img); |
|
|
|
//保存文件
|
|
|
|
// String extName = FileUtil.extName(part.getSubmittedFileName());
|
|
|
|
// String dir = PropUtil.path + File.separator + Constant.OrcImg.FILE_DIR;
|
|
|
|
// String extraPath = DateUtil.format(new Date(), "yyyyMMdd");
|
|
|
|
// String path = extraPath + File.separator+firstAidInfo.getId()+firstAidInfo.getName()+File.separator+ IdUtil.simpleUUID() + "." + extName;
|
|
|
|
// //转成file
|
|
|
|
// File saveFile = new File(dir + extraPath);
|
|
|
|
// if (!saveFile.exists()) {
|
|
|
|
// saveFile.mkdirs();
|
|
|
|
// }
|
|
|
|
// String fullPath = dir + File.separator + path;
|
|
|
|
// FileUtil.writeFromStream(file.getInputStream(), fullPath);
|
|
|
|
//1.上传文件
|
|
|
|
String allowedExts = BasicsConstant.FILE_TYPE_IMG; |
|
|
|
String dir = PropUtil.path; |
|
|
|
String path = UploadFileUtil_Servlet3.uploadFile(part, allowedExts, dir); |
|
|
|
String realPath = PropUtil.imgDomain+""+path; |
|
|
|
log.info("文件保存路径:{}",realPath); |
|
|
|
OcrVo.BillInfo billInfo = ocrService.identifyBill(img,realPath); |
|
|
|
log.info("图像识别结束:{}", billInfo); |
|
|
|
return JsonResponse.newInstance().ok(billInfo); |
|
|
|
} |
|
|
|