ApiCompanyServiceImpl.java 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package com.jkcredit.invoice.hub.service.apiCompany;
  2. import cn.com.taiji.common.manager.net.http.binclient.ApiRequestException;
  3. import cn.com.taiji.sdk.comm.ETCCommHelper;
  4. import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyAddRequest;
  5. import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyAddResponse;
  6. import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyQueryRequest;
  7. import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyQueryResponse;
  8. import com.alibaba.fastjson.JSON;
  9. import com.alibaba.fastjson.JSONObject;
  10. import com.jkcredit.invoice.hub.constant.CommonConstant;
  11. import com.jkcredit.invoice.hub.enums.ApiResponseCodeEnum;
  12. import com.jkcredit.invoice.hub.model.dto.apiCompany.CompanyAddDto;
  13. import com.jkcredit.invoice.hub.model.dto.apiCompany.CompanyQueryDto;
  14. import com.jkcredit.invoice.hub.service.base.BaseService;
  15. import com.jkcredit.invoice.hub.spi.lang.exception.ServiceException;
  16. import com.jkcredit.invoice.hub.spi.rest.data.ApiResponseData;
  17. import lombok.extern.slf4j.Slf4j;
  18. import org.springframework.stereotype.Service;
  19. import java.io.IOException;
  20. /**
  21. * @description:
  22. * @author: xusonglin
  23. * @create: 2020/1/15 23:50
  24. * @version: V1.0
  25. **/
  26. @Slf4j
  27. @Service
  28. public class ApiCompanyServiceImpl extends BaseService implements ApiCompanyService {
  29. @Override
  30. public ApiResponseData companyQuery(JSONObject param) {
  31. long costTimeStart = System.currentTimeMillis();
  32. String result;
  33. try {
  34. CompanyQueryDto dto = JSON.toJavaObject(param, CompanyQueryDto.class);
  35. validate(dto);
  36. CompanyQueryRequest request = new CompanyQueryRequest();
  37. request.setCompanyName(dto.getCompanyName());
  38. request.setTaxpaterCode(dto.getTaxplayerCode());
  39. String fileName = request.getFilename();
  40. // 调用upload 发送数据
  41. CompanyQueryResponse response = ETCCommHelper.upload(fileName, request, CompanyQueryResponse.class);
  42. result = response.toJson();
  43. long costTimeEnd = System.currentTimeMillis();
  44. log.info("[-companyQuery-] result is " + result.replaceAll("\r|\n", "") + " , request is "
  45. + param + ",costtime=" + (costTimeEnd - costTimeStart) + ",startTime=" + costTimeStart
  46. + ",endTime=" + costTimeEnd);
  47. } catch (IOException e) {
  48. log.error("[-companyQuery-] 网络异常 " + e);
  49. throw new ServiceException(CommonConstant.QUERY_FAILED);
  50. } catch (ApiRequestException apie) {
  51. log.error("[-companyQuery-] 错误信息:" + apie.getMessage());
  52. throw new com.jkcredit.invoice.hub.spi.lang.exception.ApiRequestException(apie.getMessage());
  53. } catch (ServiceException se) {
  54. log.error("[-companyQuery-] 错误信息:" + se.getMessage());
  55. throw new ServiceException(se.getMessage());
  56. }
  57. return analyzeApiResultItems(result);
  58. }
  59. @Override
  60. public ApiResponseData companyAdd(JSONObject param) {
  61. long costTimeStart = System.currentTimeMillis();
  62. String result;
  63. try {
  64. CompanyAddDto dto = JSON.toJavaObject(param, CompanyAddDto.class);
  65. validate(dto);
  66. CompanyAddRequest request = new CompanyAddRequest();
  67. request.setName(dto.getName());
  68. request.setCompanyType(dto.getCompanyType());
  69. request.setTaxpayerCode(dto.getBuyerTaxpayerCode());
  70. request.setOperatingRangeType(dto.getOperatingRangeType());
  71. request.setContact(dto.getContact());
  72. request.setTel(dto.getTel());
  73. request.setEmergencyContact(dto.getEmergencyContact());
  74. request.setEmergencyTel(dto.getEmergencyTel());
  75. request.setBuyerName(dto.getBuyerName());
  76. request.setBuyerTaxpayerCode(dto.getBuyerTaxpayerCode());
  77. request.setBuyerAddr(dto.getBuyerAddr());
  78. request.setBuyerTel(dto.getBuyerTel());
  79. request.setBuyerBank(dto.getBuyerBank());
  80. request.setBuyerBankAccount(dto.getBuyerBankAccount());
  81. String fileName = request.getFilename();
  82. // 调用upload 发送数据
  83. CompanyAddResponse response = ETCCommHelper.upload(fileName, request, CompanyAddResponse.class);
  84. result = response.toJson();
  85. long costTimeEnd = System.currentTimeMillis();
  86. log.info("[-companyAdd-] result is " + result.replaceAll("\r|\n", "") + " , request is "
  87. + param + ",costtime=" + (costTimeEnd - costTimeStart) + ",startTime=" + costTimeStart
  88. + ",endTime=" + costTimeEnd);
  89. } catch (IOException e) {
  90. log.error("[-companyAdd-] 网络异常 " + e);
  91. throw new ServiceException(CommonConstant.QUERY_FAILED);
  92. } catch (ApiRequestException apie) {
  93. log.error("[-companyAdd-] 错误信息:" + apie.getMessage());
  94. throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
  95. } catch (ServiceException se) {
  96. log.error("[-companyAdd-] 错误信息:" + se.getMessage());
  97. throw new ServiceException(se.getMessage());
  98. }
  99. return analyzeApiResultItems(result);
  100. }
  101. }