diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/assembler/ElecTrainInvoiceAssembler.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/assembler/ElecTrainInvoiceAssembler.java index 8cebeddb..9882f92b 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/assembler/ElecTrainInvoiceAssembler.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/assembler/ElecTrainInvoiceAssembler.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.plugin.cinvoice.entity.CInvoiceImportHEntity; import com.hzya.frame.plugin.cinvoice.lexmis.entity.LexmisPublicinfoEntity; import com.hzya.frame.plugin.cinvoice.lexmis.entity.LexmiscivTrainticketEntity; import com.hzya.frame.plugin.cinvoice.util.TaxCalculator; @@ -34,9 +35,11 @@ public class ElecTrainInvoiceAssembler implements ParamAssembler{ JSONObject param = new JSONObject(); String trainInvoice = jsonObject.getString("trainInvoice");//火车票 String publicInvoice = jsonObject.getString("publicInvoice");//发票公共信息 + String cInvoiceH = jsonObject.getString("cInvoiceH"); if (StrUtil.isNotEmpty(trainInvoice)){ LexmiscivTrainticketEntity trainticketEntity = JSONObject.parseObject(trainInvoice, LexmiscivTrainticketEntity.class); LexmisPublicinfoEntity publicInfo = JSONObject.parseObject(publicInvoice, LexmisPublicinfoEntity.class); + CInvoiceImportHEntity importHEntity = JSONObject.parseObject(cInvoiceH, CInvoiceImportHEntity.class); if (null != trainticketEntity){ // 1. 火车票号,必填 param.put("hcph", trainticketEntity.getTT_CODE()); @@ -80,9 +83,9 @@ public class ElecTrainInvoiceAssembler implements ParamAssembler{ // 18. 销方名称,非必填 param.put("xfmc", ""); // 19. 购方税号,非必填 - param.put("gfsh", Convert.toStr(trainticketEntity.getTT_BUYERTAXNO(),publicInfo.getPI_BUYERTAXNO())); + param.put("gfsh", Convert.toStr(trainticketEntity.getTT_BUYERTAXNO(),importHEntity.getMc_taxno())); // 20. 购方名称,非必填 - param.put("gfmc", Convert.toStr(trainticketEntity.getTT_BUYERNAME(),publicInfo.getPI_BUYERNAME())); + param.put("gfmc", Convert.toStr(trainticketEntity.getTT_BUYERNAME(),importHEntity.getMc_name())); // 21. 出发站拼音,非必填 param.put("cfzpy", ""); // 22. 到达站拼音,非必填 diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.java index 52288e89..70bbdf36 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.java @@ -10,6 +10,8 @@ import com.hzya.frame.web.entity.BaseEntity; public class CInvoiceImportHEntity extends BaseEntity { //表名称 private String tab_name; + private String mc_name;//入账公司名称 + private String mc_taxno;//入账公司税号 //单据类型 private String bill_type; //单据编码 @@ -107,4 +109,20 @@ public class CInvoiceImportHEntity extends BaseEntity { public void setStart_date_end(String start_date_end) { this.start_date_end = start_date_end; } + + public String getMc_name() { + return mc_name; + } + + public void setMc_name(String mc_name) { + this.mc_name = mc_name; + } + + public String getMc_taxno() { + return mc_taxno; + } + + public void setMc_taxno(String mc_taxno) { + this.mc_taxno = mc_taxno; + } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.xml index 58c381e6..f707823c 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.xml +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/entity/CInvoiceImportHEntity.xml @@ -4,6 +4,8 @@ + + @@ -14,13 +16,14 @@ diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/lexmis/entity/LexmisPublicinfoEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/lexmis/entity/LexmisPublicinfoEntity.xml index 55417fa8..8fc78cac 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/lexmis/entity/LexmisPublicinfoEntity.xml +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/lexmis/entity/LexmisPublicinfoEntity.xml @@ -29,6 +29,8 @@ + + @@ -59,6 +61,8 @@ PI_SALERNAME, PI_BUYERTAXNO, PI_BUYERNAME, + PI_USEACCOUNTNM, + PI_USEACCOUNTID, PI_TAXRATE, PI_TAXAMOUNT, PI_NOTAXAMOUNT diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/service/impl/CInvoiceImportPluginServiceImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/service/impl/CInvoiceImportPluginServiceImpl.java index aa3e7312..914f492d 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/service/impl/CInvoiceImportPluginServiceImpl.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/cinvoice/service/impl/CInvoiceImportPluginServiceImpl.java @@ -147,7 +147,7 @@ public class CInvoiceImportPluginServiceImpl implements ICInvoiceImportPluginSer zzsInvoice(dataSourceCode, info, invoiceInfo, baseInfo); break; case "LEXMISCIV_TRAINTICKET"://火车票 - trainInvoice(dataSourceCode, inputInfos, info, inputInfo, invoiceInfo, baseInfo); + trainInvoice(dataSourceCode, inputInfos, info, inputInfo, invoiceInfo, baseInfo,cInvoiceH); break; case "LEXMISCIV_PLANETICKET"://飞机行程单 planeInvoice(dataSourceCode, info, invoiceInfo, baseInfo); @@ -161,7 +161,7 @@ public class CInvoiceImportPluginServiceImpl implements ICInvoiceImportPluginSer } no++; } - head.put("taxNo", publicinfoList.get(0).getPI_TAXNO());//当前企业税号 + head.put("taxNo", cInvoiceH.getMc_taxno());//当前企业税号 } logger.info("调用有度发票批量导入接口请求参数:{}", head.toString()); //调用税务接口 @@ -305,7 +305,7 @@ public class CInvoiceImportPluginServiceImpl implements ICInvoiceImportPluginSer * @param invoiceInfo * @param baseInfo */ - private void trainInvoice(String dataSourceCode, JSONArray inputInfos, LexmisPublicinfoEntity info, JSONObject inputInfo, JSONObject invoiceInfo, JSONObject baseInfo) { + private void trainInvoice(String dataSourceCode, JSONArray inputInfos, LexmisPublicinfoEntity info, JSONObject inputInfo, JSONObject invoiceInfo, JSONObject baseInfo,CInvoiceImportHEntity cInvoiceH) { JSONObject contentInfo; ParamAssembler assembler; ParamAssemblerContext context;//策略上下文类 @@ -317,6 +317,7 @@ public class CInvoiceImportPluginServiceImpl implements ICInvoiceImportPluginSer JSONObject trainObj = new JSONObject(); trainObj.put("trainInvoice", JSONObject.toJSONString(trainticket)); trainObj.put("publicInvoice", JSONObject.toJSONString(info)); + trainObj.put("cInvoiceH", JSONObject.toJSONString(cInvoiceH)); String fplx = "a2"; //1是电子票 if ("1".equals(trainticket.getTT_ELECTRONIC())) { diff --git a/base-buildpackage/src/test/java/com/hzya/frame/Test1.java b/base-buildpackage/src/test/java/com/hzya/frame/Test1.java index 2dc1c8ee..7fabdd2d 100644 --- a/base-buildpackage/src/test/java/com/hzya/frame/Test1.java +++ b/base-buildpackage/src/test/java/com/hzya/frame/Test1.java @@ -3,6 +3,7 @@ package com.hzya.frame; import com.alibaba.fastjson.JSONObject; import com.hzya.frame.plugin.cinvoice.plugin.CInvoiceImportPluginInitializer; import com.hzya.frame.plugin.contract.plugin.ContractAuditPluginInitializer; +import com.hzya.frame.seeyon.util.OARestUtil; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @@ -20,10 +21,18 @@ import javax.annotation.Resource; public class Test1 { + @Resource + private OARestUtil oaRestUtil; @Resource private ContractAuditPluginInitializer contractPlugin; @Resource private CInvoiceImportPluginInitializer cInvoiceImportPluginInitializer; + + @Test + public void getToken(){ + String token = oaRestUtil.getToken("hzya", "8000590001"); + System.out.println(token); + } @Test public void contractAuditPluginTest(){ JSONObject jsonObject = new JSONObject();