NuoNuoSDKServiceImpl.java 4.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package com.uas.eis.service.Impl;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONArray;
  4. import com.alibaba.fastjson.TypeReference;
  5. import com.uas.eis.config.DonlimConfig;
  6. import com.uas.eis.core.config.SpObserver;
  7. import com.uas.eis.dao.BaseDao;
  8. import com.uas.eis.dto.*;
  9. import com.uas.eis.service.CommonService;
  10. import com.uas.eis.service.NuoNuoSDKService;
  11. import com.uas.eis.utils.Constant;
  12. import com.uas.eis.utils.DateUtil;
  13. import nuonuo.open.sdk.NNOpenSDK;
  14. import org.slf4j.Logger;
  15. import org.slf4j.LoggerFactory;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.stereotype.Service;
  18. import java.util.Date;
  19. import java.util.Map;
  20. import java.util.UUID;
  21. @Service
  22. public class NuoNuoSDKServiceImpl implements NuoNuoSDKService {
  23. private final Logger logger = LoggerFactory.getLogger(this.getClass());
  24. @Autowired
  25. private DonlimConfig donlimConfig;
  26. //nuonuo.OpeMplatform.queryInvoiceRedConfirm(诺税通saas红字确认单查询接口)
  27. @Override
  28. public QueryInvoiceRedConfirmResp queryInvoiceRedConfirm(QueryInvoiceRedConfirmReq qircReq, Map<String,Object> m) {
  29. String url=donlimConfig.getRoute();
  30. String taxnum = m.get("taxnum").toString();
  31. String appKey = m.get("appKey").toString();
  32. String appSecret = m.get("appSecret").toString();
  33. String token = m.get("token").toString();
  34. NNOpenSDK sdk = NNOpenSDK.getIntance();
  35. String method = "nuonuo.OpeMplatform.queryInvoiceRedConfirm"; // API方法名
  36. String content = sdk.convertToUtf8(JSONArray.toJSONString(qircReq));
  37. logger.info("ElecI-queryInvoiceRedConfirm:master {} content {}", SpObserver.getSp(),content);
  38. String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
  39. String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
  40. // System.out.println(result);
  41. QueryInvoiceRedConfirmResp resp = JSON.parseObject(result, new TypeReference<QueryInvoiceRedConfirmResp>() {});
  42. return resp;
  43. }
  44. //nuonuo.OpeMplatform.queryInvoiceResult(诺税通saas发票详情查询接口)
  45. @Override
  46. public QueryInvoiceResultResp queryInvoiceResult(QueryInvoiceResultReq qirReq, Map<String,Object> m) {
  47. String url=donlimConfig.getRoute();
  48. String taxnum = m.get("taxnum").toString();
  49. String appKey = m.get("appKey").toString();
  50. String appSecret = m.get("appSecret").toString();
  51. String token = m.get("token").toString();
  52. NNOpenSDK sdk = NNOpenSDK.getIntance();
  53. String method = "nuonuo.OpeMplatform.queryInvoiceResult"; // API方法名
  54. String content = sdk.convertToUtf8(JSONArray.toJSONString(qirReq));
  55. logger.info("ElecI-queryInvoiceResult:master {} content {}",SpObserver.getSp(),content);
  56. String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
  57. String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
  58. // System.out.println(result);
  59. QueryInvoiceResultResp resp = JSON.parseObject(result, new TypeReference<QueryInvoiceResultResp>() {});
  60. return resp;
  61. }
  62. /*
  63. * nuonuo.OpeMplatform.findOrderState(诺税通Saas订单状态查询接口)
  64. * */
  65. @Override
  66. public FindOrderRelationInvoiceResp findOrderRelationInvoice(FindOrderRelationInvoiceReq foriReq, Map<String, Object> m) {
  67. String url=donlimConfig.getRoute();
  68. String taxnum = m.get("taxnum").toString();
  69. String appKey = m.get("appKey").toString();
  70. String appSecret = m.get("appSecret").toString();
  71. String token = m.get("token").toString();
  72. NNOpenSDK sdk = NNOpenSDK.getIntance();
  73. String method = "nuonuo.OpeMplatform.findOrderRelationInvoice"; // API方法名
  74. String content =sdk.convertToUtf8(JSONArray.toJSONString(foriReq));
  75. logger.info("ElecI-findOrderRelationInvoice:master {} content {}",SpObserver.getSp(),content);
  76. String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
  77. String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
  78. FindOrderRelationInvoiceResp resp = JSON.parseObject(result , new TypeReference<FindOrderRelationInvoiceResp>() {});
  79. return resp;
  80. }
  81. }