diff --git a/jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java b/jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java index d461045..acbe390 100644 --- a/jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java +++ b/jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java @@ -2381,6 +2381,42 @@ public class InvoiceController { } + /** + * 企业基本信息查询接口(数电专用) + */ + @ApiImplicitParams({ + @ApiImplicitParam(name = "identity", value = "身份认证", dataType = "java.lang.Void", example = "2003", required = true), + @ApiImplicitParam(name = "order", value = "请求体", dataType = "java.lang.Void", required = true)}) + @PostMapping({"/api/invoice/v1/queryTaxpayerGeneralInfo/{identity}", "/api/invoice/v1/queryTaxpayerGeneralInfo", "/invoice/queryTaxpayerGeneralInfo"}) + public Object queryTaxpayerGeneralInfo(HttpServletRequest request, String identity) throws Exception { + if (StringUtils.isEmpty(identity)) { + return AjaxResult.error(ErrorCode.EMPTY_IDENTITY); + } + Companyservice companyservice = iCompanyserviceService.selectCompanyserviceByIdentity(identity); + if (companyservice == null) { + return AjaxResult.error(ErrorCode.COMPANY_NOT_FOUND); + } + // 获得入口报文适配器 + String requestAdapterKey = serviceManageService.getRequestAdapterKey("invoice", companyservice.getCompanyid()); + IInvoiceRequestService invoiceRequestService = invoiceRequestFactory.getService(requestAdapterKey); + JSONObject decryptResult = invoiceRequestService.decrypt(request, companyservice, ""); + + // 获得请求实例,并且进行扣费 + String serviceKey = serviceManageService.getCompanyServiceSupplier("invoice", companyservice.getCompanyid()); + serviceManageService.companyConsume("invoice", companyservice.getCompanyid()); + + IInvoiceApiService invoiceService = invoiceServiceFactory.getService(serviceKey); + HXResponse result = invoiceService.queryTaxpayerGeneralInfo(decryptResult, companyservice); + +// String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid()); +// IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey); +// +// return invoiceResponseService.response(result, companyservice, ""); + + return result; + + } + } diff --git a/jianshui-framework/src/main/java/com/jianshui/framework/config/SecurityConfig.java b/jianshui-framework/src/main/java/com/jianshui/framework/config/SecurityConfig.java index acc039c..15e7ecc 100644 --- a/jianshui-framework/src/main/java/com/jianshui/framework/config/SecurityConfig.java +++ b/jianshui-framework/src/main/java/com/jianshui/framework/config/SecurityConfig.java @@ -140,7 +140,9 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { "/webservice/income/v1/checkNew/**", "/income/v1/checkNew/**", "/invoice/api/v1/queryRedInvoice", - "/invoice/queryRedInvoice" + "/invoice/queryRedInvoice", + "/invoice/queryInvoiceUseInfo", + "/invoice/queryTaxpayerGeneralInfo" ) .permitAll() // 所有原有发票 .antMatchers( diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java index d620609..6a91efb 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java @@ -183,4 +183,7 @@ public class ElephantConstantsV6 { public static String INVOICE_USE_INFO_LOCALHOST = "/invoice/api/v6/QueryInvoiceUseInfo"; public static String INVOICE_USE_INFO_METHOD = "QueryInvoiceUseInfo"; + // 数电-红字确认单确认 + public static String QUERY_TAXPAYER_GENERAL_INFO_LOCALHOST = "/invoice/api/v6/QueryTaxpayerGeneralInfo"; + public static String QUERY_TAXPAYER_GENERAL_INFO_METHOD = "QueryTaxpayerGeneralInfo"; } diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java index 48393de..57fc8d7 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java @@ -379,4 +379,6 @@ public interface IInvoiceApiService { HXResponse findReadInfoByHzqrdbh(BillInfo billInfo, Companyservice companyservice); HXResponse queryInvoiceUseInfo(JSONObject decryptResult, Companyservice companyservice); + + HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice); } \ No newline at end of file diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java index 6c285da..26d5e2f 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java @@ -1102,6 +1102,11 @@ public class AisinoConsoleInvoiceApiServiceImpl implements IInvoiceApiService { return null; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + return null; + } + @Override public AjaxResult syncStockInfo(Companyservice companyservice) { diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiZhongQiServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiZhongQiServiceImpl.java index 23d9360..dc44beb 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiZhongQiServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiZhongQiServiceImpl.java @@ -585,6 +585,11 @@ public class AisinoConsoleInvoiceApiZhongQiServiceImpl implements IInvoiceApiSer return null; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + return null; + } + /** * 开票接口回调-重汽 diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java index 0a1f5cf..bc12e4d 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java @@ -930,6 +930,11 @@ public class ElephantInvoiceApiServiceImpl implements IInvoiceApiService { return null; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + return null; + } + /** * 申请/上传 红字发票 diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ByInspurServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ByInspurServiceImpl.java index 9affae4..361fb4d 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ByInspurServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ByInspurServiceImpl.java @@ -1489,6 +1489,11 @@ public class ElephantInvoiceApiV6ByInspurServiceImpl implements IInvoiceApiServi return null; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + return null; + } + /** * 红字确认单列表查询(数电专用) diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java index f8e6ed9..ea5221b 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java @@ -1516,8 +1516,7 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService { try { dxhyInterfaceResponse = ElephantUtils.sendRequestWithoutTokenV6(ElephantConstantsV6.INVOICE_USE_INFO_LOCALHOST, ElephantConstantsV6.INVOICE_USE_INFO_METHOD, JSONUtil.parse(decryptResult), companyservice); } catch (UnsupportedEncodingException | InvalidKeyException | NoSuchAlgorithmException e) { - log.error("【销项发票】【大象接口】【数电】【红字确认单确认接口】发票请求异常,请求报文{},销方信息{}", decryptResult, JSONObject.toJSONString(companyservice)); - e.printStackTrace(); + log.error("【销项发票】【大象接口】【数电】【红字确认单确认接口】发票请求异常,请求报文{},销方信息{},异常{}", decryptResult, JSONObject.toJSONString(companyservice),e); return new HXResponse("009999", "系统异常!"); } @@ -1530,6 +1529,27 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService { return hxResponse; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + decryptResult = JsonKeyCase.JsonKeyCase(decryptResult); + log.info("调用大象V6接口报文key转大写后的报文为{}", decryptResult); + DxhyInterfaceResponse dxhyInterfaceResponse = null; + try { + dxhyInterfaceResponse = ElephantUtils.sendRequestWithoutTokenV6(ElephantConstantsV6.QUERY_TAXPAYER_GENERAL_INFO_LOCALHOST, ElephantConstantsV6.QUERY_TAXPAYER_GENERAL_INFO_METHOD, JSONUtil.parse(decryptResult), companyservice); + } catch (UnsupportedEncodingException | InvalidKeyException | NoSuchAlgorithmException e) { + log.error("【销项发票】【大象接口】【数电】【红字确认单确认接口】发票请求异常,请求报文{},销方信息{},异常{}", decryptResult, JSONObject.toJSONString(companyservice),e); + return new HXResponse("009999", "系统异常!"); + } + + HXResponse hxResponse = parseResult(dxhyInterfaceResponse); + hxResponse.put("msg", hxResponse.getMessage()); + if (hxResponse.isSuccess() && ObjectUtils.isNotEmpty(hxResponse.getData()) && StringUtils.isNotBlank(hxResponse.getData().toString())){ + JSONObject jsonObject = JSON.parseObject(hxResponse.getData().toString()); + hxResponse.setData(jsonObject); + } + return hxResponse; + } + /** * 简税和金财数科 发票类型互换 diff --git a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java index 87e762e..b839ce0 100644 --- a/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java +++ b/jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java @@ -1737,6 +1737,11 @@ public class JcskInvoiceApiServiceImpl implements IInvoiceApiService { return null; } + @Override + public HXResponse queryTaxpayerGeneralInfo(JSONObject decryptResult, Companyservice companyservice) { + return null; + } + /** * 简税和金财数科 发票类型互换 * diff --git a/jianshui-ui/vue.config.js b/jianshui-ui/vue.config.js index 506047e..81512df 100644 --- a/jianshui-ui/vue.config.js +++ b/jianshui-ui/vue.config.js @@ -11,8 +11,8 @@ const name = process.env.VUE_APP_TITLE || '简税平台管理系统' // 网页 const port = process.env.port || process.env.npm_config_port || 8088 // 端口 // 'http://dev.goldentaxcloud.com:8081' // www.goldentaxcloud.com:8080 -// let development = 'http://dev.goldentaxcloud.com:8081' -let development = 'www.goldentaxcloud.com:8080' +let development = 'http://dev.goldentaxcloud.com:8081' +// let development = 'www.goldentaxcloud.com:8080' // let development = 'http://192.168.3.106:8081' //刑泽本地环境 const url = process.env.NODE_ENV === 'development' ? development : development