Commit 4e830ef5 by 黄明步

新增接口状态监控及接收保存发票识别数据

parent fe224774
...@@ -2,6 +2,8 @@ package com.gxmailu.ocrCloudPlatform.controller; ...@@ -2,6 +2,8 @@ package com.gxmailu.ocrCloudPlatform.controller;
import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.util.MapUtils; import com.alibaba.excel.util.MapUtils;
...@@ -9,13 +11,16 @@ import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; ...@@ -9,13 +11,16 @@ import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.gxmailu.ocrCloudPlatform.dto.RecordDto; import com.gxmailu.ocrCloudPlatform.dto.RecordDto;
import com.gxmailu.ocrCloudPlatform.entity.AppAbilityRecordAll; import com.gxmailu.ocrCloudPlatform.entity.*;
import com.gxmailu.ocrCloudPlatform.entity.OaCallRecord;
import com.gxmailu.ocrCloudPlatform.excel.handler.ExcelFillCellMergeStrategy; import com.gxmailu.ocrCloudPlatform.excel.handler.ExcelFillCellMergeStrategy;
import com.gxmailu.ocrCloudPlatform.excel.model.CallRecordModel; import com.gxmailu.ocrCloudPlatform.excel.model.CallRecordModel;
import com.gxmailu.ocrCloudPlatform.excel.utils.ExcelStyleUtils; import com.gxmailu.ocrCloudPlatform.excel.utils.ExcelStyleUtils;
import com.gxmailu.ocrCloudPlatform.mapper.AppAbilityRecord8Mapper;
import com.gxmailu.ocrCloudPlatform.mapper.ConfigAbilityMapper;
import com.gxmailu.ocrCloudPlatform.mapper.ConfigApplicationMapper;
import com.gxmailu.ocrCloudPlatform.service.AppAbilityRecordAllService; import com.gxmailu.ocrCloudPlatform.service.AppAbilityRecordAllService;
import com.gxmailu.ocrCloudPlatform.service.OaCallRecordService; import com.gxmailu.ocrCloudPlatform.service.OaCallRecordService;
import com.gxmailu.ocrCloudPlatform.vo.AppAbilityRecordVo; import com.gxmailu.ocrCloudPlatform.vo.AppAbilityRecordVo;
...@@ -31,6 +36,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -31,6 +36,7 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -54,6 +60,15 @@ public class AppAbilityRecordAllController { ...@@ -54,6 +60,15 @@ public class AppAbilityRecordAllController {
@Autowired @Autowired
private OaCallRecordService oaCallRecordService; private OaCallRecordService oaCallRecordService;
@Autowired
private ConfigApplicationMapper configApplicationMapper;
@Autowired
private ConfigAbilityMapper configAbilityMapper;
@Autowired
private AppAbilityRecord8Mapper record8Mapper;
/** /**
* 导出应用调用记录 * 导出应用调用记录
* *
...@@ -314,4 +329,43 @@ public class AppAbilityRecordAllController { ...@@ -314,4 +329,43 @@ public class AppAbilityRecordAllController {
return Result.success("查询成功", oaCallRecordService.getOaCallRecordList(dto)); return Result.success("查询成功", oaCallRecordService.getOaCallRecordList(dto));
} }
@PostMapping("/saveInvoiceRecord")
@ApiOperation(value = "保存发票识别记录")
public Result saveInvoiceRecord(@RequestParam Map<String, Object> params) {
try {
List<String> list = Arrays.asList("147.2.4.1", "147.2.4.2", "147.2.4.3", "147.2.4.4", "147.2.4.5");
String serverIp = list.get(RandomUtil.randomInt(0, 5));
String appId = (String) params.get("appId");
String fileId = (String) params.get("fileId");
String code = (String) params.get("code");
String ip = (String) params.get("ip");
String originName = (String) params.get("originName");
AppAbilityRecord8 record = new AppAbilityRecord8();
ConfigApplication configApplication = configApplicationMapper.selectOne(Wrappers.lambdaQuery(ConfigApplication.class)
.eq(ConfigApplication::getAppId, appId));
ConfigAbility configAbility = configAbilityMapper.selectOne(Wrappers.lambdaQuery(ConfigAbility.class)
.eq(ConfigAbility::getCode, code).select(ConfigAbility::getId));
record.setFileId(fileId);
record.setTaskId(IdUtil.fastSimpleUUID());
record.setApplicationId(configApplication.getId());
record.setAbilityId(Long.parseLong(configAbility.getId()));
record.setUserId(configApplication.getUserId());
record.setOcrState(Byte.parseByte("1"));
record.setOriginName(originName);
record.setOcrFileName("");
record.setIp(ip);
record.setServerIp(serverIp);
record.setCallTime(DateUtil.date());
record.setFileCount(1);
record8Mapper.insert(record);
return Result.success("成功");
} catch (Exception e) {
log.error("执行失败", e);
}
return Result.error("保存发票识别记录失败");
}
} }
package com.gxmailu.ocrCloudPlatform.controller;
import com.gxmailu.ocrCloudPlatform.service.InterfaceInfoService;
import com.gxmailu.ocrCloudPlatform.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 法庭表 前端控制器
* </p>
*
* @author zyz
* @since 2023-05-11
*/
@RestController
@RequestMapping("/interface")
public class InterfaceInfoController {
@Autowired
private InterfaceInfoService interfaceInfoService;
@GetMapping("/list")
public Result list() {
return Result.success("成功", interfaceInfoService.list());
}
}
package com.gxmailu.ocrCloudPlatform.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 角色表
* </p>
*
* @author zyz
* @since 2023-06-19
*/
@Data
@TableName("interface_info")
public class InterfaceInfo implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@TableField("interface_name")
private String interfaceName;
@TableField("interface_path")
private String interfacePath;
@TableField("status")
private String status;
@TableField("create_time")
private String createTime;
@TableField("update_time")
private String updateTime;
}
package com.gxmailu.ocrCloudPlatform.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gxmailu.ocrCloudPlatform.entity.InterfaceInfo;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* 法庭表 Mapper 接口
* </p>
*
* @author zyz
* @since 2023-05-11
*/
@Mapper
public interface InterfaceInfoMapper extends BaseMapper<InterfaceInfo> {
}
package com.gxmailu.ocrCloudPlatform.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gxmailu.ocrCloudPlatform.entity.InterfaceInfo;
public interface InterfaceInfoService extends IService<InterfaceInfo> {
}
package com.gxmailu.ocrCloudPlatform.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gxmailu.ocrCloudPlatform.entity.InterfaceInfo;
import com.gxmailu.ocrCloudPlatform.mapper.InterfaceInfoMapper;
import com.gxmailu.ocrCloudPlatform.service.InterfaceInfoService;
import org.springframework.stereotype.Service;
/**
* <p>
* OaOCR调用记录 服务实现类
* </p>
*
* @author zyz
* @since 2024-04-12
*/
@Service
public class InterfaceInfoServiceImpl extends ServiceImpl<InterfaceInfoMapper, InterfaceInfo> implements InterfaceInfoService {
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment