Browse Source

【英唐电子发票】

DINGYL 2 years ago
parent
commit
2caa4e0293

+ 9 - 27
src/main/java/com/uas/eis/service/Impl/ERPServiceImpl.java

@@ -2,10 +2,7 @@ package com.uas.eis.service.Impl;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.TypeReference;
-import com.alibaba.fastjson.serializer.SerializerFeature;
-import com.google.gson.JsonObject;
 import com.uas.eis.config.DonlimConfig;
 import com.uas.eis.core.config.SpObserver;
 import com.uas.eis.core.support.TokenProperties;
@@ -13,9 +10,6 @@ import com.uas.eis.dao.*;
 import com.uas.eis.dto.FindOrderRelationInvoiceDTO;
 import com.uas.eis.dto.FindOrderRelationInvoiceReq;
 import com.uas.eis.dto.FindOrderRelationInvoiceResp;
-import com.uas.eis.entity.*;
-import com.uas.eis.sdk.entity.ApiResult;
-import com.uas.eis.sdk.resp.ApiResponse;
 import com.uas.eis.service.CommonService;
 import com.uas.eis.service.ERPService;
 import com.uas.eis.utils.*;
@@ -23,7 +17,6 @@ import nuonuo.open.sdk.NNOpenSDK;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jdbc.core.BeanPropertyRowMapper;
 import org.springframework.stereotype.Service;
 
 import java.text.SimpleDateFormat;
@@ -64,7 +57,6 @@ public class ERPServiceImpl implements ERPService {
         }
         logger.info("pushInvoiceOrder begin: master {} ,id {} ",master,id);
         SpObserver.putSp(master);
-        //Object tab_ma=baseDao.getFieldDataByCondition("enterprise","EN_WHICHSYSTEM","1=1");
         SqlRowList rs_main = baseDao.queryForRowSet("select * from invoiceOrder left join customer on io_cucode=cu_code where io_id="+id);
         if(rs_main.next()){
             String autoInvoiceFlag= baseDao.isDBSetting("InvoiceOrder", "autoInvoice")?"true":"false";
@@ -178,24 +170,19 @@ public class ERPServiceImpl implements ERPService {
             return null;//对接信息为配置
         }
         String url=donlimConfig.getRoute();
-//        System.out.println(url);
         String appKey = donlimConfig.getAppKey();
         String appSecret = donlimConfig.getAppSecret();
         String token =  donlimConfig.getToken();
         String taxnum=  donlimConfig.getTaxnum();
         if(donlimConfig.isProd()){
-//            System.out.println("prod");
             appKey =  obs[0].toString();
             appSecret =  obs[1].toString();
             token = obs[2].toString();// 访问令牌
             taxnum = obs[3].toString();// 授权企业税号
-        }else{
-//            System.out.println("dev");
         }
         SpObserver.putSp(master);
         SqlRowList rs_main = baseDao.queryForRowSet("select * from invoiceOrder left join customer on io_cucode=cu_code where io_id="+id);
         if(rs_main.next()){
-//            System.out.println(taxnum);
             String code= rs_main.getGeneralString("io_code");
             NNOpenSDK sdk = NNOpenSDK.getIntance();
             String method = "nuonuo.OpeMplatform.findOrderState"; // API方法名
@@ -209,14 +196,14 @@ public class ERPServiceImpl implements ERPService {
             FindOrderStateResp resp = JSON.parseObject(result , new TypeReference<FindOrderStateResp>() {});
             System.out.println(resp.getCode());
             System.out.println(resp.getMessage());
-//            System.out.println(resp.getData().getInvoiceStatus());
-//            System.out.println(resp.getData().getErrorMsg());
-//            Map<Object, Object> res=JSONUtil.toMap(result);
-            baseDao.execute("update invoiceOrder set IO_INVOICESTATUS = '"+resp.getData().getInvoiceStatus()+"'"
+            if("该订单不存在".equals(resp.getMessage())){
+                baseDao.execute("update invoiceOrder set IO_INVOICESTATUS = '-1' where io_id = '"+id+"'");
+            }else{
+                baseDao.execute("update invoiceOrder set IO_INVOICESTATUS = '"+resp.getData().getInvoiceStatus()+"'"
                         +",io_errorMsg='"+StringUtil.nvl(resp.getData().getErrorMsg(),"")+"'"
-//                    +(StringUtil.hasText(resp.getData().getErrorMsg())?",io_errorMsg ='"+resp.getData().getErrorMsg()+"'":"")
-                    +" where io_id = '"+id+"'");
-//            System.out.println(result);//{"status":"0000","message":"调用成功","data":{"invoiceStatus":"0","errorMsg":null}}
+                        +" where io_id = '"+id+"'");
+            }
+
             map.put("success", true);
             map.put("result", result);
             return map;
@@ -297,13 +284,10 @@ public class ERPServiceImpl implements ERPService {
         String token =  donlimConfig.getToken();
         String taxnum=  donlimConfig.getTaxnum();
         if(donlimConfig.isProd()){
-//            System.out.println("prod");
             appKey =  obs[0].toString();
             appSecret =  obs[1].toString();
             token = obs[2].toString();// 访问令牌
             taxnum = obs[3].toString();// 授权企业税号
-        }else{
-//            System.out.println("dev");
         }
         SpObserver.putSp(master);
         SqlRowList ioList = baseDao.queryForRowSet("select io_id,io_code from "+master+".invoiceOrder left join "+master+".customer on io_cucode=cu_code " +
@@ -325,13 +309,13 @@ public class ERPServiceImpl implements ERPService {
             foriReq.setOriginalOrderNo(ioCode);//订单编号
             foriReq.setSaleTaxNum(taxnum);//销方税号
             foriReq.setNeedInvoiceSourceDetail("0");//是否需要发票所来源的订单明细,1-是, 0-否(不填默认 0) 当为0时,将不回传orderDetailCallBackVOS。先默认不需要明细
-    //                    System.out.println(JSONArray.toJSONString(foriReq));
+
             NNOpenSDK sdk = NNOpenSDK.getIntance();
             String method = "nuonuo.OpeMplatform.findOrderRelationInvoice"; // API方法名
             String content =sdk.convertToUtf8(JSONArray.toJSONString(foriReq));
             String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
             String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
-    //                    System.out.println(result);
+
             FindOrderRelationInvoiceResp resp = JSON.parseObject(result , new TypeReference<FindOrderRelationInvoiceResp>() {});
             errCode = resp.getStatus();
             errMsg = resp.getMessage();
@@ -379,8 +363,6 @@ public class ERPServiceImpl implements ERPService {
         if(syncToBillOut){
             sqls.add("update BillOut set bi_refno = (select max(io_refno) from invoiceOrder where io_id = "+ioid+" and io_biid = bi_id) where bi_id in (select io_biid from invoiceOrder where io_id = "+ioid+" and io_refno is not null)");
         }
-        //System.out.println("sqls:");
-//        System.out.println(sqls);
         return sqls;
     }
 }

+ 2 - 2
src/main/resources/application-dev.yml

@@ -4,7 +4,7 @@ spring:
         driverClassName: oracle.jdbc.OracleDriver
         username: YITOA_DATACENTER
         password: select!#%*(
-        url: jdbc:oracle:thin:@10.1.81.208:11756:orcl
+        url: jdbc:oracle:thin:@110.10.10.103:1521:orcl
         initialSize: 1
         maxActive: 3
         maxWait: 30000
@@ -23,7 +23,7 @@ server:
         uri_encoding: UTF-8
     context-path:
         /EIS
-    port: 8183
+    port: 8184
 
 action:
     api_action: /EIS/api,/EIS/mes,/EIS/erp

+ 1 - 1
src/main/resources/application-prod.yml

@@ -23,7 +23,7 @@ server:
         uri_encoding: UTF-8
     context-path:
         /EIS
-    port: 8183
+    port: 8184
 
 action:
     api_action: /EIS/api,/EIS/mes,/EIS/erp