Bladeren bron

Merge remote-tracking branch 'origin/master'

zhouger 8 maanden geleden
bovenliggende
commit
bce86e06b3

+ 17 - 9
src/main/java/fi/em/editPlugin/BusinessProcessingEditPlugin.java → src/main/java/fi/em/formPlugin/BusinessProcessingEditPlugin.java

@@ -1,4 +1,4 @@
-package fi.em.editPlugin;
+package fi.em.formPlugin;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
@@ -316,10 +316,13 @@ public class BusinessProcessingEditPlugin extends AbstractListPlugin implements
                     for (DynamicObject entryentity : dynamicObject.getDynamicObjectCollection("entry_bank")) {
                         String bankaccount = entryentity.getString("bankaccount");
                         DynamicObject bank = entryentity.getDynamicObject("bank");
-                        QFilter banks = new QFilter("nckd_bankaccount", QCP.equals, bankaccount);
-                        DynamicObject nckd_bank = BusinessDataServiceHelper.loadSingle("nckd_supplierbankinfor", "id", new QFilter[]{banks});
-                        this.getModel().setValue("nckd_payeebanknumlb", nckd_bank);
-                        this.getView().updateView("nckd_payeebanknumlb");
+                        boolean nckdIsdefaultBank = entryentity.getBoolean("isdefault_bank");
+                        if(nckdIsdefaultBank){
+                            QFilter banks = new QFilter("nckd_bankaccount", QCP.equals, bankaccount);
+                            DynamicObject nckd_bank = BusinessDataServiceHelper.loadSingle("nckd_supplierbankinfor", "id", new QFilter[]{banks});
+                            this.getModel().setValue("nckd_payeebanknumlb", nckd_bank);
+                            this.getView().updateView("nckd_payeebanknumlb");
+                        }
                     }
                 }
             }
@@ -339,10 +342,15 @@ public class BusinessProcessingEditPlugin extends AbstractListPlugin implements
                     for (DynamicObject entryentity : dynamicObject.getDynamicObjectCollection("entry_bank")) {
                         String bankaccount = entryentity.getString("bankaccount");
                         DynamicObject bank = entryentity.getDynamicObject("bank");
-                        QFilter banks = new QFilter("nckd_bankaccount", QCP.equals, bankaccount);
-                        DynamicObject nckd_bank = BusinessDataServiceHelper.loadSingle("nckd_supplierbankinfor", "id", new QFilter[]{banks});
-                        this.getModel().setValue("nckd_payeebanknumlbs", nckd_bank);
-                        this.getView().updateView("nckd_payeebanknumlbs");
+                        boolean nckdIsdefaultBank = entryentity.getBoolean("isdefault_bank");
+                        if(nckdIsdefaultBank){
+                            QFilter banks = new QFilter("nckd_bankaccount", QCP.equals, bankaccount);
+                            banks.and("nckd_isdefault_bank", QCP.equals, "1");
+                            DynamicObject nckd_bank = BusinessDataServiceHelper.loadSingle("nckd_supplierbankinfor", "id", new QFilter[]{banks});
+                            this.getModel().setValue("nckd_payeebanknumlbs", nckd_bank);
+                            this.getView().updateView("nckd_payeebanknumlbs");
+                        }
+
                     }
                 }
             }

+ 1 - 1
src/main/java/fi/em/editPlugin/CostAllocationEditPlugin.java → src/main/java/fi/em/formPlugin/CostAllocationEditPlugin.java

@@ -1,4 +1,4 @@
-package fi.em.editPlugin;
+package fi.em.formPlugin;
 
 import kd.bos.dataentity.entity.DynamicObjectCollection;
 import kd.bos.exception.KDBizException;

+ 18 - 0
src/main/java/fi/em/formPlugin/YwclF7ListtenerFromPlugin.java

@@ -25,6 +25,7 @@ public class YwclF7ListtenerFromPlugin extends AbstractBillPlugIn implements Plu
     private final static String nckd_payeeaccbanknum="nckd_payeeaccbanknum";//调拨收款账户
     private final static String nckd_payeebanknumlb="nckd_payeebanknumlb";//收款信息修改付款账号
     private final static String nckd_payeebanknumlbs="nckd_payeebanknumlbs";//付款信息修改收款账号111
+    private final static String nckd_basedatafield="nckd_basedatafield";//付款信息修改收款账号111
 
     @Override
     public void registerListener(EventObject e) {
@@ -42,6 +43,8 @@ public class YwclF7ListtenerFromPlugin extends AbstractBillPlugIn implements Plu
         fieldEdit5.addBeforeF7SelectListener(this);
         BasedataEdit fieldEdit6 = this.getView().getControl(nckd_payeebanknumlbs);
         fieldEdit6.addBeforeF7SelectListener(this);
+        BasedataEdit fieldEdit7 = this.getView().getControl(nckd_basedatafield);
+        fieldEdit7.addBeforeF7SelectListener(this);
     }
     @Override
     public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
@@ -59,6 +62,9 @@ public class YwclF7ListtenerFromPlugin extends AbstractBillPlugIn implements Plu
         if (StringUtils.equals(fieldKey, nckd_payeeaccbanknum)){
             this.getQFilters(beforeF7SelectEvent,nckd_payeeaccbanknum);
         }
+        if (StringUtils.equals(fieldKey, nckd_basedatafield)){
+            this.getQFiltersbf(beforeF7SelectEvent,nckd_basedatafield);
+        }
 
     }
 
@@ -139,4 +145,16 @@ public class YwclF7ListtenerFromPlugin extends AbstractBillPlugIn implements Plu
         ListShowParameter showParameter = (ListShowParameter)arg0.getFormShowParameter();
         showParameter.getListFilterParameter().setFilter(filter);
     }
+    private void getQFiltersbf(BeforeF7SelectEvent arg0, String type) {
+        DynamicObject data = (DynamicObject)this.getModel().getValue("nckd_costcompany") ;
+        if(data ==null){
+            throw new KDBizException("资产组织为空!");
+        }
+        String number = data.getString("number");
+        QFilter filter;
+        //给基础资料添加过滤
+        filter = new QFilter("assetunit.number", QCP.equals, number);
+        ListShowParameter showParameter = (ListShowParameter)arg0.getFormShowParameter();
+        showParameter.getListFilterParameter().setFilter(filter);
+    }
 }

+ 17 - 9
src/main/java/fi/fa/webService/DispatchMidController.java

@@ -55,8 +55,6 @@ public class DispatchMidController implements Serializable {
                 if (StringUtils.isEmpty(errorCode) && StringUtils.isEmpty(errorChange)) {
                     //下推生成资产调拨单
                     Push(eobject, map);
-                    //生单后反写中间表,防止反复生单
-                    OncePush(eobject.getString("billno"));
                 }
                 // 错误拼接
                 appendErrorMessages(resultString, errorChange, errorCode);
@@ -193,7 +191,7 @@ public class DispatchMidController implements Serializable {
         if ("0".equals(dispatchType)) {
             DynamicObject dispatch = BusinessDataServiceHelper.newDynamicObject("fa_dispatch");
             String nckd_card_real_code = jsonObject.getString("nckd_card_real_code");
-            nckd_card_real_code = "A00100101900240600007";
+            nckd_card_real_code = "A00100101900240600005";
 
             //单据头
             dispatch.set("outuser", map.get("sendUser"));//调出申请人
@@ -234,13 +232,19 @@ public class DispatchMidController implements Serializable {
             }
             //执行保存-提交-审核
             OperationResult saveResult = SaveServiceHelper.saveOperate("fa_dispatch", new DynamicObject[]{dispatch}, OperateHelper.createOperate());
-            OperationResult submitResult = OperationServiceHelper.executeOperate("submit", "fa_dispatch",saveResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
-            OperationResult auditResult = OperationServiceHelper.executeOperate("audit", "fa_dispatch",submitResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+            if (saveResult.isSuccess()){
+                //生单后反写中间表,防止反复生单
+                OncePush(jsonObject.getString("billno"));
+                OperationResult submitResult = OperationServiceHelper.executeOperate("submit", "fa_dispatch",saveResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+                OperationResult auditResult = OperationServiceHelper.executeOperate("audit", "fa_dispatch",submitResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+            }
+
+
         }//组织内,生成资产变更单
         else if ("1".equals(dispatchType)) {
             DynamicObject changeDept = BusinessDataServiceHelper.newDynamicObject("fa_change_dept");
             String nckd_card_real_code = jsonObject.getString("nckd_card_real_code");
-            nckd_card_real_code = "A00100101900240600004";
+            nckd_card_real_code = "A00100101900240600007";
             DynamicObject orgInfo = queryOrg(map.get("orgId"));
             //单据头
             changeDept.set("org", orgInfo);//核算组织
@@ -314,10 +318,14 @@ public class DispatchMidController implements Serializable {
                 finentry1.set("bizdate", jsonObject.getDate("sendDate"));
 
             }
-//            //执行保存-提交-审核
+            //执行保存-提交-审核
             OperationResult saveResult = SaveServiceHelper.saveOperate("fa_change_dept", new DynamicObject[]{changeDept}, OperateHelper.createOperate());
-            OperationResult submitResult = OperationServiceHelper.executeOperate("submit", "fa_change_dept",saveResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
-            OperationResult auditResult = OperationServiceHelper.executeOperate("audit", "fa_change_dept",submitResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+            if (saveResult.isSuccess()) {
+                //生单后反写中间表,防止反复生单
+                OncePush(jsonObject.getString("billno"));
+                OperationResult submitResult = OperationServiceHelper.executeOperate("submit", "fa_change_dept",saveResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+                OperationResult auditResult = OperationServiceHelper.executeOperate("audit", "fa_change_dept",submitResult.getSuccessPkIds().toArray(),OperateHelper.createOperate());
+            }
         }
 
     }

+ 0 - 48
src/main/java/fi/rim/utils/ApiHttpUtils.java

@@ -1,48 +0,0 @@
-package fi.rim.utils;
-
-
-import com.alibaba.fastjson.JSON;
-import kd.bos.script.annotations.KSObject;
-import org.apache.http.HttpEntity;
-import org.apache.http.client.methods.CloseableHttpResponse;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.entity.StringEntity;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClientBuilder;
-import org.apache.http.util.EntityUtils;
-@KSObject
-public class ApiHttpUtils {
-
-    public static String Posthttp(String url, String Params) throws Exception {
-        // 获得Http客户端
-        CloseableHttpClient httpClient = HttpClientBuilder.create().build();
-        // 创建Post请求
-        //设置请求路径
-        HttpPost httpPost = new HttpPost(url);
-        httpPost.setHeader("Content-type", "application/json;charset=utf-8");
-        StringEntity entity = new StringEntity(Params,"UTF-8");
-        // post请求是将参数放在请求体里面传过去的;这里将entity放入post请求体中
-        // 设置编码格式
-        entity.setContentEncoding("UTF-8");
-        // 发送Json格式的数据请求
-        entity.setContentType("application/json");
-        httpPost.setEntity(entity);
-        // 响应模型(发送post请求)
-        CloseableHttpResponse response = httpClient.execute(httpPost);
-        // 从响应模型中获取响应实体
-        HttpEntity responseEntity = response.getEntity();
-        com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject();
-        if (responseEntity != null) {
-            jsonObject = JSON.parseObject(EntityUtils.toString(response.getEntity()));
-            return jsonObject.toJSONString();
-        }
-        // 释放资源
-        if (httpClient != null) {
-            httpClient.close();
-        }
-        if (response != null) {
-            response.close();
-        }
-        return "";
-    }
-}

+ 26 - 40
src/main/java/fi/rim/fromPlugin/FpzsMainEXPlugin.java → src/main/java/kd/imc/rim/FpzsMainEXPlugin.java

@@ -1,4 +1,4 @@
-package fi.rim.fromPlugin;
+package kd.imc.rim;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
@@ -7,7 +7,17 @@ import com.google.common.collect.Maps;
 import java.io.IOException;
 import java.io.InputStream;
 import java.math.BigDecimal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 import kd.bos.cache.CacheFactory;
@@ -79,7 +89,6 @@ import kd.imc.rim.common.constant.InputInvoiceTypeEnum;
 import kd.imc.rim.common.helper.ExcelHelper;
 import kd.imc.rim.common.helper.ImcSaveServiceHelper;
 import kd.imc.rim.common.invoice.collector.ScannerServiceEx;
-import kd.imc.rim.common.invoice.collector.ScannerService;
 import kd.imc.rim.common.invoice.fpzs.FpzsAwsService;
 import kd.imc.rim.common.invoice.fpzs.FpzsMainService;
 import kd.imc.rim.common.invoice.query.AttachQueryService;
@@ -446,27 +455,8 @@ public class FpzsMainEXPlugin extends LicenseFormPlugin implements RowClickEvent
     }
 
     public void customEvent(CustomEventArgs e) {
-        //操作类型
         String eventName = e.getEventName();
-        //附件信息obj
         String eventArgs = e.getEventArgs();
-        JSONObject filejson = JSON.parseObject(eventArgs);
-        String  Fileurl = filejson.getString("url");
-        String  Filetype = filejson.getString("type");
-        boolean pdf = Filetype.contains("pdf");
-        boolean jpg = Filetype.contains("jpg");
-        boolean jpeg = Filetype.contains("jpeg");
-        boolean png = Filetype.contains("png");
-        String FileType="";
-        if(pdf){
-            FileType="pdf";
-        } else if (jpg){
-            FileType="jpg";
-        }else if (jpeg){
-            FileType="jpeg";
-        }else if (png){
-            FileType="png";
-        }
         if ("pushData".equals(eventName) || "onMessage".equals(eventName)) {
             this.dealWebSoceketMsag(eventArgs);
         }
@@ -589,6 +579,20 @@ public class FpzsMainEXPlugin extends LicenseFormPlugin implements RowClickEvent
                     json = JSON.parseObject(eventArgs);
                     type = json.getString("status");
                     name = json.getString("name");
+                    boolean pdf = name.contains("pdf");
+                    boolean jpg = name.contains("jpg");
+                    boolean jpeg = name.contains("jpeg");
+                    boolean png = name.contains("png");
+                    String FileType="";
+                    if(pdf){
+                        FileType="pdf";
+                    } else if (jpg){
+                        FileType="jpg";
+                    }else if (jpeg){
+                        FileType="jpeg";
+                    }else if (png){
+                        FileType="png";
+                    }
                     cache = json.getString("errcode");
                     description = json.getString("description");
                     if ("success".equals(type) && !"40002".equals(cache)) {
@@ -743,24 +747,6 @@ public class FpzsMainEXPlugin extends LicenseFormPlugin implements RowClickEvent
                         }
 
                         JSONObject data = FpzsMainService.getInvoiceDataCache(pageId);
-
-                       /*  if(!FileType.isEmpty()){
-                             if("pdf".equals(FileType) || "jpg".equals(FileType) || "png".equals(FileType)){
-                                 String cache = CacheHelper.get("fpzsinvoicecache" + pageId);
-                                 if (StringUtils.isNotEmpty(cache)) {
-                                     data = new JSONObject((Map) JSONObject.parseObject(cache, LinkedHashMap.class));
-                                     JSONObject jsonObject = data.getJSONObject(cache);
-                                     if(jsonObject!=null){
-                                         jsonObject.put("salerName","徐昊测试发票");
-                                         jsonObject.put("taxAmount","8888");
-                                         jsonObject.put("totalAmount","18888");
-                                         jsonObject.put("invoiceNo","123456789");
-                                         data.put(cache,jsonObject);
-                                     }
-                                 }
-                             }
-
-                         }*/
                         FpzsMainService.updateInvoiceGrid(this, data);
                         this.updateInvoiceCard(data);
                         Map<String, String> attIdSerialMap = Maps.newLinkedHashMap();

+ 1 - 1
src/main/java/kd/imc/rim/common/helper/RecognitionCheckHelperEx.java

@@ -157,7 +157,7 @@ public class RecognitionCheckHelperEx {
                             exceptionDecr = true;
                             threadCount = CacheHelper.inc("recogThread", countTimeOut);
                             logger.info("识别线程数量{}", threadCount);
-
+                            //调用接口
                             recognitionResult = RecognitionFactory.getRecognitionService(awsRecognitionImpl).recognitionInvoice(recognitionParam);
 
                             threadCount = CacheHelper.decr("recogThread", countTimeOut);

+ 13 - 11
src/main/java/kd/imc/rim/common/invoice/recognitionnew/impl/AwsRecognitionServiceEx.java

@@ -8,10 +8,12 @@ package kd.imc.rim.common.invoice.recognitionnew.impl;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.google.common.collect.Maps;
-import java.io.ByteArrayInputStream;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+
+import kd.imc.rim.utils.FileOutputStreamExample;
 import kd.bos.logging.Log;
 import kd.bos.logging.LogFactory;
 import kd.bos.util.StringUtils;
@@ -22,8 +24,6 @@ import kd.imc.rim.common.invoice.recognitionnew.RecognitionService;
 import kd.imc.rim.common.invoice.recognitionnew.model.RecognitionParam;
 import kd.imc.rim.common.invoice.recognitionnew.model.RecognitionResult;
 import kd.imc.rim.common.message.exception.MsgException;
-import kd.imc.rim.common.utils.AwsFpyService;
-import kd.imc.rim.common.utils.HttpUtil;
 import org.apache.commons.compress.utils.Lists;
 
 public class AwsRecognitionServiceEx implements RecognitionService {
@@ -51,19 +51,21 @@ public class AwsRecognitionServiceEx implements RecognitionService {
         bodyMap.put("taxNo", extMap.get("taxNo") + "");
         bodyMap.put("recogType", recognitionParam.getRecogType());
         bodyMap.put("overseaAppCode", recognitionParam.getAppCode());
-
+        String fileUrl = recognitionParam.getFileUrl();
+        String imgStrToBase64 = FileOutputStreamExample.getImgStrToBase64(fileUrl);
         try {
             String serviceType = this.getServiceType(recognitionParam);
-            String token = AwsFpyService.newInstance().getAccessToken(Long.parseLong(extMap.get("orgId") + ""));
-            if (StringUtils.isNotEmpty(token)) {
+            if (StringUtils.isNotEmpty(fileUrl)) {
                 long start = System.currentTimeMillis();
-                String url = AwsFpyService.newInstance().getUrl("pure_recognition", token);
-                ByteArrayInputStream valueInputStream = recognitionParam.getFileByteArrayInputStream();
-                String valueFileName = recognitionParam.getFileName();
+                String url = "http://ip:port/icr/demo/demo_receipt_crop_and_recog_image.html";
+                //ByteArrayInputStream valueInputStream = recognitionParam.getFileByteArrayInputStream();
+                //String valueFileName = recognitionParam.getFileName();
                 int retryTimes = 1;
-
                 for(int times = 1; times <= retryTimes; ++times) {
-                    String result = HttpUtil.postFormData(url + "&t=" + start, AwsFpyService.newInstance().getProxy(), (Map)null, valueInputStream, valueFileName, bodyMap, 3000, 60000);
+                    //调用接口位置
+                    String result = "";//ApiHttpUtils.Posthttp(url, imgStrToBase64)
+
+
                     logger.info("aws识别接口返回结果{}:{}", times, result);
                     boolean reTry = false;
                     if (!StringUtils.isNotEmpty(result)) {

+ 141 - 0
src/main/java/kd/imc/rim/utils/ApiHttpUtils.java

@@ -0,0 +1,141 @@
+package kd.imc.rim.utils;
+
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import kd.bos.script.annotations.KSObject;
+import org.apache.http.HttpEntity;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClientBuilder;
+import org.apache.http.util.EntityUtils;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@KSObject
+public class ApiHttpUtils {
+
+    public static String Posthttp(String url, String Params) throws Exception {
+        // 获得Http客户端
+        CloseableHttpClient httpClient = HttpClientBuilder.create().build();
+        // 创建Post请求
+        //设置请求路径
+        HttpPost httpPost = new HttpPost(url);
+        httpPost.setHeader("Content-type", "application/json;charset=utf-8");
+        httpPost.setHeader("mesgtype", "bills_crop_base64");
+        httpPost.setHeader("channelcode", "JSX");
+        Date date = new Date();
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String formatDate = dateFormat.format(date);
+        httpPost.setHeader("channeldate", formatDate);
+        long time = new Date().getTime();
+        String channeltime = Long.toString(time);
+        httpPost.setHeader("channeltime",channeltime);
+        long l = System.currentTimeMillis();
+        String channelserno = Long.toString(l);
+        httpPost.setHeader("channelserno", channelserno);
+        httpPost.setHeader("brno", "");
+        httpPost.setHeader("tellerno", "*DMY");
+        httpPost.setHeader("terminalno", "");
+        httpPost.setHeader("APP_", "");
+        httpPost.setHeader("reserve", "");
+        httpPost.setHeader("dealcode", "");
+        httpPost.setHeader("dealmsg", "");
+        StringEntity entity = new StringEntity(Params,"UTF-8");
+        // post请求是将参数放在请求体里面传过去的;这里将entity放入post请求体中
+        // 设置编码格式
+        entity.setContentEncoding("UTF-8");
+        // 发送Json格式的数据请求
+        entity.setContentType("application/json");
+        httpPost.setEntity(entity);
+        // 响应模型(发送post请求)
+        CloseableHttpResponse response = httpClient.execute(httpPost);
+        // 从响应模型中获取响应实体
+        HttpEntity responseEntity = response.getEntity();
+        com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject();
+        if (responseEntity != null) {
+            jsonObject = JSON.parseObject(EntityUtils.toString(response.getEntity()));
+            return jsonObject.toJSONString();
+        }
+        // 释放资源
+        if (httpClient != null) {
+            httpClient.close();
+        }
+        if (response != null) {
+            response.close();
+        }
+        return "";
+    }
+    public static String toJsonString(String Params) throws Exception {
+        JSONObject json = new JSONObject();//返回最外层json
+        json.put("errcode","");
+        json.put("traceId","");
+        json.put("description","");
+        JSONObject data = new JSONObject();//数据层json
+        json.put("batchNo","");
+        JSONArray recoginitionData = new JSONArray();//数据层数组
+        JSONObject fileObj = new JSONObject();//实际数据json
+        fileObj.put("canBeDeduction","");
+        fileObj.put("salerName","");
+        fileObj.put("invoiceMoney","");
+        fileObj.put("signStatus","");
+        fileObj.put("downloadUrl","");
+        fileObj.put("fileHash","");
+        fileObj.put("invoiceAmount","");
+        fileObj.put("localUrl","");
+        fileObj.put("deductionStatus","");
+        fileObj.put("salerTaxNo","");
+        fileObj.put("invoiceType","");
+        fileObj.put("invoiceNo","");
+        fileObj.put("isRepeat","");
+        fileObj.put("pixel","");
+        fileObj.put("oriImageSize","");
+        fileObj.put("pdfToImgSnapshotUrl","");
+        fileObj.put("orientation","");
+        fileObj.put("batchNo","");
+        fileObj.put("clientId","");
+        fileObj.put("buyerTaxNo","");
+        fileObj.put("warningCode","");
+        fileObj.put("originalState","");
+        fileObj.put("companySeal","");
+        fileObj.put("originalUrl","");
+        fileObj.put("invoiceDate","");
+        fileObj.put("buyerName","");
+        fileObj.put("invoiceCode","");
+        fileObj.put("serialNo","");
+        fileObj.put("totalAmount","");
+        fileObj.put("taxRate","");
+        fileObj.put("oriOrientation","");
+        fileObj.put("oriRegion","");
+        fileObj.put("rotationAngle","");
+        fileObj.put("snapshotUrl","");
+        fileObj.put("imageSerialNo","");
+        fileObj.put("recognitionSerialNo","");
+        fileObj.put("totalTaxAmount","");
+        fileObj.put("taxAmount","");
+        fileObj.put("region","");
+        fileObj.put("isExpend","");
+        fileObj.put("expendStatus","");
+        fileObj.put("fileType","");
+        JSONArray items = new JSONArray();//数据明细层数组
+        JSONObject mxFileObj = new JSONObject();//明细数据json
+        mxFileObj.put("unitPrice","");
+        mxFileObj.put("taxRate","");
+        mxFileObj.put("unit","");
+        mxFileObj.put("num","");
+        mxFileObj.put("detailAmount","");
+        mxFileObj.put("taxAmount","");
+        mxFileObj.put("goodsName","");
+        //值拼接完成后开始set数据结构
+        items.add(mxFileObj);
+        fileObj.put("items",items);
+        recoginitionData.add(fileObj);
+        data.put("recoginitionData",recoginitionData);
+        json.put("data",data);
+        return json.toJSONString();
+    }
+}

+ 1 - 1
src/main/java/fi/rim/utils/CodecUtil.java → src/main/java/kd/imc/rim/utils/CodecUtil.java

@@ -1,4 +1,4 @@
-package fi.rim.utils;
+package kd.imc.rim.utils;
 
 
 import com.alibaba.fastjson.JSON;

+ 1 - 1
src/main/java/fi/rim/utils/FileOutputStreamExample.java → src/main/java/kd/imc/rim/utils/FileOutputStreamExample.java

@@ -1,4 +1,4 @@
-package fi.rim.utils;
+package kd.imc.rim.utils;
 
 import java.io.ByteArrayOutputStream;
 import java.io.FileInputStream;