销项合并新增接口合并

beta-enc
dongxiaoke 2 years ago
parent e09a3d691b
commit 943152894b
  1. 303
      jianshui-admin/src/main/java/com/jianshui/api/controller/http/invoice/v1/InvoiceController.java
  2. 71
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/IInvoiceApiService.java
  3. 40
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/AisinoConsoleInvoiceApiServiceImpl.java
  4. 40
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/ElephantInvoiceApiServiceImpl.java
  5. 40
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/api/JcskInvoiceApiServiceImpl.java

@ -17,6 +17,13 @@ import com.jianshui.invoice.factory.IInvoiceResponseFactory;
import com.jianshui.invoice.factory.IInvoiceServiceFactory;
import com.jianshui.invoice.service.IInvoiceResponseService;
import com.jianshui.invoice.utils.ApiRequestUtils;
import com.jianshui.invoiceall.domain.dto.InvoiceAllFileAcquisitionDTO;
import com.jianshui.invoiceall.domain.dto.InvoiceAllFileAcquisitionOnDTO;
import com.jianshui.invoiceall.domain.dto.InvoiceAllKshcDTO;
import com.jianshui.invoiceall.domain.dto.InvoiceAllShhzDTO;
import com.jianshui.invoiceall.service.IInvoiceAll;
import com.jianshui.invoiceall.service.IInvoiceAllRequestService;
import com.jianshui.invoiceall.service.IInvoiceAllResponseService;
import com.jianshui.system.service.ICompanyserviceService;
import com.jianshui.system.service.IServiceManageService;
import io.swagger.annotations.*;
@ -843,8 +850,302 @@ public class InvoiceController {
HXResponse result = invoiceService.createESeal(billInfo, companyservice);
return result;
}
return null;
}
// TODO: 2023/4/6 全电接口
@ApiOperation("获取发票下载地址")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/getFileUrl/{identity}", "/api/invoice_all/v1/getFileUrl"})
public Object getFileUrl(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.getFileUrl(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("全电文件获取")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/getFileAcquisition/{identity}", "/api/invoice_all/v1/getFileAcquisition"})
public Object getFileAcquisition(HttpServletRequest request, String identity) throws Exception {
// TODO: 2023/4/6 getFileAcquisitionOn
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.getFileAcquisitionOn(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("获取人脸识别二维码")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/qrcode/{identity}", "/api/invoice_all/v1/qrcode"})
public Object qrcode(HttpServletRequest request, String identity) throws Exception {
// qrcode
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.qrcode(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("发票查询")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/query/{identity}", "/api/invoice_all/v1/query"})
public Object query(HttpServletRequest request, String identity) throws Exception {
// query
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.query(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("获取发票打印XML")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/print_xml/{identity}", "/api/invoice_all/v1/print_xml"})
public Object printXmlml(HttpServletRequest request, String identity) throws Exception {
// getPrintXML
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.getPrintXML(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("快速红冲")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/issueFastRedInvoice/{identity}", "/api/invoice_all/v1/issueFastRedInvoice"})
public Object issueFastRedInvoice(HttpServletRequest request, String identity) throws Exception {
// issueFastRedInvoice
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.issueFastRedInvoice(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("蓝字发票统计")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/invoice_statistics/{identity}", "/api/invoice_all/v1/invoice_statistics"})
public Object invoiceStatistics(HttpServletRequest request, String identity) throws Exception {
// invoiceStatic
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.invoiceStatic(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
@ApiOperation("审核红字信息表")
@ApiImplicitParams({
@ApiImplicitParam(name = "", value = "身份认证", dataType = "string", example = "1130", required = true),
@ApiImplicitParam(name = "order", value = "请求体", required = true)})
@PostMapping({"/api/invoice_all/v1/auditRedInfo/{identity}", "/api/invoice_all/v1/auditRedInfo"})
public Object auditRedInfo(HttpServletRequest request, String identity) throws Exception {
// auditRedInfo
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.auditRedInfo(decryptResult, companyservice);
String responseAdapterKey = serviceManageService.getResponseAdapterKey("invoice", companyservice.getCompanyid());
IInvoiceResponseService invoiceResponseService = invoiceResponseFactory.getService(responseAdapterKey);
return invoiceResponseService.response(result, companyservice, "");
}
}

@ -9,7 +9,6 @@ import com.jianshui.invoice.domain.Redinfo;
import com.jianshui.invoice.domain.dto.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* 发票服务接口
@ -187,4 +186,74 @@ public interface IInvoiceApiService {
* @return
*/
public Object decryptCallback(HttpServletRequest request);
/** 全电新增接口 **/
/**
* 全电发票文件获取
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse getFileUrl(JSONObject decryptResult, Companyservice companyservice);
/**
* 全电发票文件获取
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse getFileAcquisitionOn(JSONObject decryptResult, Companyservice companyservice);
/**
*获取人脸二维码
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse qrcode(JSONObject decryptResult, Companyservice companyservice);
/**
*获取人脸二维码
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse query(JSONObject decryptResult, Companyservice companyservice);
/**
*获取发票打印XML
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse getPrintXML(JSONObject decryptResult, Companyservice companyservice);
/**
*快速红冲
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse issueFastRedInvoice(JSONObject decryptResult, Companyservice companyservice);
/**
*蓝字发票统计
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse invoiceStatic(JSONObject decryptResult, Companyservice companyservice);
/**
*审核红字信息表
* @param decryptResult
* @param companyservice
* @return
*/
HXResponse auditRedInfo(JSONObject decryptResult, Companyservice companyservice);
}

@ -931,4 +931,44 @@ public class AisinoConsoleInvoiceApiServiceImpl implements IInvoiceApiService {
public Object decryptCallback(HttpServletRequest request) {
return null;
}
@Override
public HXResponse getFileUrl(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getFileAcquisitionOn(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse qrcode(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse query(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getPrintXML(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse issueFastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse invoiceStatic(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse auditRedInfo(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
}

@ -1737,4 +1737,44 @@ public class ElephantInvoiceApiServiceImpl implements IInvoiceApiService {
resp.put("ZFFPXX", respArray);
return resp;
}
@Override
public HXResponse getFileUrl(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getFileAcquisitionOn(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse qrcode(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse query(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getPrintXML(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse issueFastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse invoiceStatic(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse auditRedInfo(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
}

@ -909,6 +909,46 @@ public class JcskInvoiceApiServiceImpl implements IInvoiceApiService {
return null;
}
@Override
public HXResponse getFileUrl(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getFileAcquisitionOn(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse qrcode(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse query(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse getPrintXML(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse issueFastRedInvoice(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse invoiceStatic(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
@Override
public HXResponse auditRedInfo(JSONObject decryptResult, Companyservice companyservice) {
return null;
}
/**
* 简税和金财数科 发票类型互换

Loading…
Cancel
Save