快捷冲红接口

beta
kk 2 years ago
parent f7d001aa5a
commit ad1595560f
  1. 37
      jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java
  2. 3
      jianshui-framework/src/main/java/com/jianshui/framework/config/SecurityConfig.java
  3. 4
      jianshui-invoice/src/main/java/com/jianshui/invoice/constant/elephant/ElephantConstantsV6.java
  4. 3
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java
  5. 5
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java
  6. 5
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiZhongQiServiceImpl.java
  7. 5
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java
  8. 18
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiV6ServiceImpl.java
  9. 5
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java

@ -1955,5 +1955,42 @@ public class InvoiceController {
}
/**
* 订单快捷冲红接口数电专用接口
*/
@ApiImplicitParams({
@ApiImplicitParam(name = "identity", value = "身份认证", dataType = "java.lang.Void", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", dataType = "java.lang.Void", required = true)})
@PostMapping({"/api/invoice/v1/fastRedInvoice/{identity}", "/api/invoice/v1/fastRedInvoice","/invoice/fastRedInvoice"})
public Object fastRedInvoice(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.fastRedInvoice(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
}

@ -128,7 +128,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/invoice/rpaLogin",
"/invoice/qrcode",
"/invoice/qrcodeResult",
"/invoice/mailDelivery"
"/invoice/mailDelivery",
"/invoice/fastRedInvoice"
)
.permitAll() // 所有原有发票
.antMatchers(

@ -70,6 +70,10 @@ public class ElephantConstantsV6 {
public static String QUERY_RED_CONFIRMATION_LIST_LOCALHOST = "/invoice/api/v6/QueryRedConfirmationList";
public static String QUERY_RED_CONFIRMATION_LIST_METHOD = "QueryRedConfirmationList";
// 数电-订单快捷冲红接口(数电专用接口)
public static String ORDER_TO_FAST_RED_INVOICE_LOCALHOST = "/invoice/api/v6/OrderToFastRedInvoice";
public static String ORDER_TO_FAST_RED_INVOICE_METHOD = "OrderToFastRedInvoice";
// 数电-红字确认单明细查询
public static String QUERY_RED_CONFIRMATION_ITEM_LIST_LOCALHOST = "/invoice/api/v6/QueryRedConfirmationItemList";
public static String QUERY_RED_CONFIRMATION_ITEM_LIST_METHOD = "QueryRedConfirmationItemList";

@ -354,4 +354,7 @@ public interface IInvoiceApiService {
/** 邮箱交付*/
HXResponse mailDelivery(InvoiceMailDeliveryDTO mailDeliveryDTO, Companyservice companyservice);
/** 订单快捷冲红接口(数电专用接口) */
HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice);
}

@ -1051,6 +1051,11 @@ public class AisinoConsoleInvoiceApiServiceImpl implements IInvoiceApiService {
return null;
}
@Override
public HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public AjaxResult syncStockInfo(Companyservice companyservice) {

@ -537,6 +537,11 @@ public class AisinoConsoleInvoiceApiZhongQiServiceImpl implements IInvoiceApiSer
return null;
}
@Override
public HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
/**
* 发票打印

@ -874,6 +874,11 @@ public class ElephantInvoiceApiServiceImpl implements IInvoiceApiService {
return null;
}
@Override
public HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
/**
* 申请/上传 红字发票

@ -1009,6 +1009,24 @@ public class ElephantInvoiceApiV6ServiceImpl implements IInvoiceApiService {
}
/* 订单快捷冲红接口(数电专用接口)*/
@Override
public HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
decryptResult = JsonKeyCase.JsonKeyCase(decryptResult);
log.info("调用大象V6接口报文key转大写后的报文为{}",decryptResult);
DxhyInterfaceResponse dxhyInterfaceResponse = null;
try {
dxhyInterfaceResponse = ElephantUtils.sendRequestWithoutTokenV6(ElephantConstantsV6.ORDER_TO_FAST_RED_INVOICE_LOCALHOST, ElephantConstantsV6.ORDER_TO_FAST_RED_INVOICE_METHOD, JSONUtil.parse(decryptResult), companyservice);
} catch (UnsupportedEncodingException | InvalidKeyException | NoSuchAlgorithmException e) {
log.error("【销项发票】【大象接口】【数电】【订单快捷冲红接口】发票请求异常,请求报文{},销方信息{}", decryptResult, JSONObject.toJSONString(companyservice));
e.printStackTrace();
return new HXResponse("009999", "系统异常!");
}
return parseResult(dxhyInterfaceResponse);
}
/**
* 红字确认单列表查询数电专用
*/

@ -1659,6 +1659,11 @@ public class JcskInvoiceApiServiceImpl implements IInvoiceApiService {
return null;
}
@Override
public HXResponse fastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
/**
* 简税和金财数科 发票类型互换
*

Loading…
Cancel
Save