From de36026739b5153364694d8854a5bec8f9cb9509 Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Fri, 21 Mar 2025 01:06:52 +0800 Subject: [PATCH] rjquwhtn --- .../com/heyu/api/data/utils/MapUtils.java | 98 +++++++++++++++++++ .../BusinessLicenseRecognizeController.java | 7 ++ .../certificate/AccountOpeningController.java | 44 +++++++++ .../certificate/AccountOpeningReq.java | 8 ++ .../resp/certificate/AccountOpeningResp.java | 48 +++++++++ 5 files changed, 205 insertions(+) create mode 100644 api-mapper/src/main/java/com/heyu/api/data/utils/MapUtils.java create mode 100644 api-web/api-interface/src/main/java/com/heyu/api/controller/certificate/AccountOpeningController.java create mode 100644 api-web/api-interface/src/main/java/com/heyu/api/request/certificate/AccountOpeningReq.java create mode 100644 api-web/api-interface/src/main/java/com/heyu/api/resp/certificate/AccountOpeningResp.java diff --git a/api-mapper/src/main/java/com/heyu/api/data/utils/MapUtils.java b/api-mapper/src/main/java/com/heyu/api/data/utils/MapUtils.java new file mode 100644 index 0000000..600dd56 --- /dev/null +++ b/api-mapper/src/main/java/com/heyu/api/data/utils/MapUtils.java @@ -0,0 +1,98 @@ +package com.heyu.api.data.utils; + +import com.alibaba.fastjson.JSONObject; + +import java.util.List; +import java.util.Map; + +public class MapUtils { + + + public static T getByExpr(Map map, String expression) { + String expressions[] = expression.split("\\."); + Object value = null; + for (int i = 0; i < expressions.length; i++) { + String expr = expressions[i]; + if (expr.startsWith("[")) { + if (value != null) { + Integer exprVal = NumberUtil.objToIntDefault(expr.substring(1, expr.length() - 1), -1); + if(exprVal == -1){ + return null; + } + + List list = JSONObject.parseArray(value.toString(), Object.class); + if (list.size() < exprVal || list.get(exprVal) == null) { + return null; + } + + if (i < expressions.length - 1) { + map = JSONObject.parseObject(list.get(exprVal).toString(), Map.class); + } else { + value = list.get(exprVal); + } + + } + } + Object object = map.get(expr); + if (object != null) { + if (i < expressions.length - 1) { + if (expressions[i + 1].contains("[")) { + value = object; + } else { + map = JSONObject.parseObject(object.toString(), Map.class); + } + } else { + value = object; + } + } + + } + + + return (T) value; + + } + + + public static void main(String[] args) { + String a = "{\n" + + " \"words_result\": {\n" + + " \"账号\": {\n" + + " \"word\": [\n" + + " \"254653912299\"\n" + + " ]\n" + + " },\n" + + " \"公司名称\": {\n" + + " \"word\": [\n" + + " \"河南专开机械设备有限公司\"\n" + + " ]\n" + + " },\n" + + " \"核准号\": {\n" + + " \"word\": [\n" + + " \"J4910057237101\"\n" + + " ]\n" + + " },\n" + + " \"法人\": {\n" + + " \"word\": [\n" + + " \"郭娟\"\n" + + " ]\n" + + " },\n" + + " \"编号\": {\n" + + " \"word\": [\n" + + " \"4910-02691732\"\n" + + " ]\n" + + " },\n" + + " \"开户银行\": {\n" + + " \"word\": [\n" + + " \"中国银行股份有限公司郑州高新技术开发区支行\"\n" + + " ]\n" + + " }\n" + + " },\n" + + " \"words_result_num\": 6,\n" + + " \"log_id\": 1754840007553369396\n" + + "}"; + + Map data = JSONObject.parseObject(a, Map.class); + System.out.println(getByExpr(data, "words_result.账号.word.[0]")); + } +} diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/card/BusinessLicenseRecognizeController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/card/BusinessLicenseRecognizeController.java index 35ffab6..c39974d 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/card/BusinessLicenseRecognizeController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/card/BusinessLicenseRecognizeController.java @@ -40,6 +40,13 @@ public class BusinessLicenseRecognizeController extends BaseController { @Autowired private ARecognizeBusinessLicenseHandle arRecognizeBusinessLicenseHandle; + + + + + + + @RequestMapping("/recognize") @CacheResult public R recognize(BusinessLicenseRecognizeRequest request) { diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/certificate/AccountOpeningController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/certificate/AccountOpeningController.java new file mode 100644 index 0000000..1a4a282 --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/certificate/AccountOpeningController.java @@ -0,0 +1,44 @@ +package com.heyu.api.controller.certificate; + + +import com.heyu.api.baidu.handle.certificate.BAccountOpeningHandle; +import com.heyu.api.baidu.request.certificate.BAccountOpeningRequest; +import com.heyu.api.data.annotation.CacheResult; +import com.heyu.api.data.annotation.NotIntercept; +import com.heyu.api.data.utils.ApiR; +import com.heyu.api.data.utils.R; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +@Slf4j +@RestController +@RequestMapping("/account") +@NotIntercept +public class AccountOpeningController { + + + @Autowired + private BAccountOpeningHandle bAccountOpeningHandle; + + + @RequestMapping("/opening") + @CacheResult + public R recognize(BAccountOpeningRequest request) { + + ApiR bR = bAccountOpeningHandle.handle(request); + + if (bR.isSuccess()) { + Map data = bR.getData(); + + + + } + + + return R.error(); + } +} diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/AccountOpeningReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/AccountOpeningReq.java new file mode 100644 index 0000000..06add70 --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/AccountOpeningReq.java @@ -0,0 +1,8 @@ +package com.heyu.api.request.certificate; + + +import lombok.Data; + +@Data +public class AccountOpeningReq { +} diff --git a/api-web/api-interface/src/main/java/com/heyu/api/resp/certificate/AccountOpeningResp.java b/api-web/api-interface/src/main/java/com/heyu/api/resp/certificate/AccountOpeningResp.java new file mode 100644 index 0000000..2a7bfa7 --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/resp/certificate/AccountOpeningResp.java @@ -0,0 +1,48 @@ +package com.heyu.api.resp.certificate; + + +import com.heyu.api.data.dto.BaseResp; +import lombok.Data; + +@Data +public class AccountOpeningResp extends BaseResp { + + /*** + * 账号 + * + */ + private String account ; + + /*** + * 公司名称 + */ + + private String companyName; + /*** + * 核准号 + */ + private String checkNumber; + + + /*** + *法人 + */ + private String legalPerson; + + /** + * 编号 + */ + + private String serialNumber; + + /*** + * 开户银行 + */ + private String openAccountBank; + + + public static void main(String[] args) { + + } + +}