diff --git a/base-service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java b/base-service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java index ee5ee3a1..ac2aaef4 100644 --- a/base-service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java +++ b/base-service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java @@ -34,49 +34,67 @@ public class GroovyIntegrationServiceImpl implements IGroovyIntegrationService { } public static void main(String[] args) { - java.lang.String str = "{\"data\":{\"enablestate\":\"2\",\"user_password\":\"Hzya@1314\",\"gender\":\"12312\",\"user_name\":\"测试用户\",\"modify_time\":1719305835000,\"document_rule_num\":112,\"pk_org\":{\"org_mnecode\":\"1\",\"modify_time\":1718866279000,\"document_rule_num\":4,\"add_status\":\"0\",\"org_address\":\"1\",\"delete_status\":\"1\",\"org_innercode\":\"1\",\"id\":\"f7a8cee35fce4aa8ab266b3c7f125d7d\",\"data_status\":\"F\",\"modify_user_id\":\"1\",\"org_name\":\"开发部\",\"sorts\":4,\"document_rule\":\"ZZ-2024-06-20-00004\",\"create_user_id\":\"1\",\"create_time\":1718864103000,\"company_id\":\"Y\",\"org_memo\":\"1\",\"update_status\":\"0\",\"sts\":\"Y\",\"org_tel\":\"1\",\"org_id\":\"Y\",\"org_ncindustry\":\"1\",\"org_fatherorg\":\"c4913dde8da142bab4206fc084269382\",\"org_code\":\"003\",\"org_principal\":\"1\",\"org_countryzone\":\"1\"},\"add_status\":\"0\",\"pwdlevelcode\":\"\",\"user_type\":\"1\",\"user_code\":\"17633965916\",\"delete_status\":\"1\",\"id\":\"d99fe4e1c211450a960f7a1057da0d2c\",\"data_status\":\"F\",\"modify_user_id\":\"1\",\"sorts\":346,\"document_rule\":\"YH-2024-06-25-00112\",\"create_user_id\":\"1\",\"create_time\":1719305229000,\"company_id\":\"Y\",\"user_code_q\":\"KP003\",\"format\":\"ZH-CN\",\"mobile\":\"123123\",\"identityverifycode\":\"静态密码验证\",\"islocked\":\"N\",\"update_status\":\"0\",\"base_doc_type\":\"0\",\"sts\":\"Y\",\"login_name\":\"123123\",\"pwdparam\":\"2024-06-17\",\"org_id\":\"Y\",\"abledate\":\"2024-06-17 00:00:00\",\"isca\":\"Y\",\"contentlang\":\"ZH\"},\"query\":\"[]\",\"header\":\"[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"length\\\":\\\"100\\\",\\\"index\\\":0,\\\"description\\\":\\\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA87rrNR\\\",\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"7127798c-b731-453a-b3ac-cfe9033eeace\\\",\\\"parameterName\\\":\\\"pubKey\\\",\\\"required\\\":true,\\\"example\\\":\\\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA87rrNREgMNeOEOwlvM2iqqEfshDadRHziDSB2PbRnoMqSv1nGr3XBlZuseNj5HmxDEkLhOdfyw0yjzoz3wK7XhFpeN4Iyf7NT7hps5jAQMEpnul9Qwmj5qUr/eK5SaO9H8n7sh9BvCdrX9oRUh+U2/ceA3O+y/MUHk5DRvSadc8FhpqbOaNBbAzPnyYAwpVUPvaJ90jcGN1ZG99HR1GEzC+Cn9s6vgt7dYL6ysMs36bSP47xraDSxpfr0CLwa6JV/9KjLIeqL1ZaMtK0CJ1zJGCBA6O6kgxeE9Ul7q2lSS6mPAEJ78izaTYsrjhLpKT+eTtFBOLFbiCrbLp8tVE5kwIDAQAB\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"length\\\":\\\"50\\\",\\\"index\\\":1,\\\"description\\\":\\\"OA\\\",\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"7f965281-df0f-4d2f-b005-07e061fcde49\\\",\\\"parameterName\\\":\\\"client_id\\\",\\\"required\\\":true,\\\"example\\\":\\\"OA\\\"},{\\\"parameterType\\\":\\\"authport\\\",\\\"length\\\":\\\"50\\\",\\\"index\\\":2,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"cbc0e105-17c0-4385-8863-8903303edc1f\\\",\\\"parameterName\\\":\\\"access_token\\\",\\\"example\\\":[\\\"attribute\\\",\\\"data\\\",\\\"access_token\\\"]}]\",\"body\":\"[{\\\"index\\\":0,\\\"id\\\":\\\"beeedbc6-24c2-4093-9a5e-20fced9fb1b4\\\",\\\"parameterName\\\":\\\"body\\\",\\\"first\\\":true}]\"}"; + java.lang.String str = "{\"data\":{\"year\":\"2024\",\"prepared\":\"demo\",\"modify_time\":1730863191000,\"num\":\"13\",\"gl_detail\":[{\"create_user_id\":\"1\",\"amount\":\"5000\",\"formmain_id\":\"9da5a28900084951913df0d233427178\",\"create_time\":1730863191000,\"company_id\":\"0\",\"globalcreditamount\":\"0\",\"modify_time\":1730863191000,\"localcreditamount\":\"0\",\"localdebitamount\":\"5000\",\"explanation\":\"演示分录1\",\"globaldebitamount\":\"5000\",\"detail_id\":\"1\",\"groupdebitamount\":\"5000\",\"sts\":\"Y\",\"currtype_code\":\"CNY\",\"org_id\":\"0\",\"busidate\":\"2024-11-05\",\"groupcreditamount\":\"0\",\"detailindex\":\"1\",\"account_code\":\"100210\",\"id\":\"0eb6d3d5f12944e1bcbb00883cc4f13e\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":1},{\"create_user_id\":\"1\",\"amount\":\"5000\",\"formmain_id\":\"9da5a28900084951913df0d233427178\",\"create_time\":1730863191000,\"company_id\":\"0\",\"globalcreditamount\":\"5000\",\"modify_time\":1730863191000,\"localcreditamount\":\"5000\",\"localdebitamount\":\"0\",\"explanation\":\"演示分录2\",\"globaldebitamount\":\"0\",\"detail_id\":\"2\",\"groupdebitamount\":\"0\",\"sts\":\"Y\",\"currtype_code\":\"CNY\",\"org_id\":\"0\",\"busidate\":\"2024-11-05\",\"groupcreditamount\":\"5000\",\"detailindex\":\"2\",\"account_code\":\"2231\",\"id\":\"db9c531af7a94af2975d1c9f1ae21813\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":2}],\"document_rule_num\":1,\"add_status\":\"0\",\"vouchertype\":\"01\",\"attachment\":\"0\",\"delete_status\":\"1\",\"id\":\"9da5a28900084951913df0d233427178\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":1,\"document_rule\":\"PZ-20241106-00001\",\"create_user_id\":\"1\",\"period\":\"11\",\"create_time\":1730863191000,\"company_id\":\"Y\",\"update_status\":\"1\",\"accbook_code\":\"101-0002\",\"sts\":\"Y\",\"org_id\":\"Y\",\"prepareddate\":\"2024-11-05\",\"voucher_id\":\"1\",\"gl_fixtmpfreevalue\":[{\"create_user_id\":\"1\",\"formmain_id\":\"9da5a28900084951913df0d233427178\",\"create_time\":1730863191000,\"company_id\":\"0\",\"checktypecode\":\"0012\",\"modify_time\":1730863191000,\"checkvaluecode\":\"101\",\"detail_id\":\"2\",\"sts\":\"Y\",\"org_id\":\"0\",\"voucher_id\":\"1\",\"id\":\"779d40051ae3470583885d9c202d5ba1\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":1},{\"create_user_id\":\"1\",\"formmain_id\":\"9da5a28900084951913df0d233427178\",\"create_time\":1730863191000,\"company_id\":\"0\",\"checktypecode\":\"0006\",\"modify_time\":1730863191000,\"checkvaluecode\":\"000001\",\"detail_id\":\"2\",\"sts\":\"Y\",\"org_id\":\"0\",\"voucher_id\":\"1\",\"id\":\"f313361e495445958245ec61a00a1216\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":2}]},\"query\":\"[]\",\"header\":\"[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":0,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"77ba4bd1-c693-488f-b3b7-69bb4c02be76\\\",\\\"parameterName\\\":\\\"pubKey\\\",\\\"example\\\":\\\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmlnN6sXjhJN6wUY0DILqiIL1ZX9ZU5Q40Hrr+4qhf3fddV/+/D1CyJo7aVGd3mJjD1BC1RXtnfxetaLzLrfTViq80RQvmmmKgt6rKiYMiW8ibcWoKaWMvwrlm0uT7RzYeXDP0l4qvoe8vjVWL63mQbx0y17p4opwTA9BV7P/CZ+9QyIJstN+yAg/owlNn48Jq4WspQps0/Zl/HvpiRjAPggVOqZLXkCjoBGrpNn/tlrDFbt+btK7tjhvsfT1zPMVAq8dNUKCMw5LoLsMxfT/ZWlI62zUAIbyO2/0iv5kCZw0I+DxPmGKVEOQ4x9FwXosSSD202H93CuBvVy/P31iUwIDAQAB\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":1,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"df32aa53-9c8e-4d31-8a9b-d78bc70f9214\\\",\\\"parameterName\\\":\\\"client_id\\\",\\\"example\\\":\\\"u8c\\\"},{\\\"parameterType\\\":\\\"authport\\\",\\\"index\\\":2,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"de304f55-ca04-47d9-93f9-70b52d9bba50\\\",\\\"parameterName\\\":\\\"access_token\\\",\\\"example\\\":[\\\"attribute\\\",\\\"data\\\",\\\"access_token\\\"]}]\",\"body\":\"[{\\\"parameterType\\\":\\\"complex\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"complex\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"parameterName\\\":\\\"accbookCode\\\",\\\"id\\\":\\\"95ff2224-bdb7-4a9d-a45b-8c19f444022b\\\",\\\"example\\\":\\\"X0644-0001\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"parameterName\\\":\\\"prepareddate\\\",\\\"id\\\":\\\"7106bf79-133c-446e-be58-bf18d43a7c14\\\",\\\"example\\\":\\\"2023-09-19\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":4,\\\"parameterName\\\":\\\"year\\\",\\\"id\\\":\\\"9b005ca9-e246-41c0-bbbb-aead5d6f44f1\\\",\\\"example\\\":\\\"2023\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":5,\\\"parameterName\\\":\\\"num\\\",\\\"id\\\":\\\"fbe1d3a2-69e9-4df7-91d0-bb9005cd333e\\\",\\\"example\\\":\\\"4\\\"},{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":7,\\\"parameterName\\\":\\\"detailindex\\\",\\\"id\\\":\\\"386e20b9-5992-4a95-8fa7-fb64677d55e9\\\",\\\"example\\\":\\\"1\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":8,\\\"parameterName\\\":\\\"explanation\\\",\\\"id\\\":\\\"20cab876-bd5a-46b8-96ba-7112104a273f\\\",\\\"example\\\":\\\"测试\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":9,\\\"parameterName\\\":\\\"accountCode\\\",\\\"id\\\":\\\"e1a89672-8449-4bda-a404-478f0594ac70\\\",\\\"example\\\":\\\"150401\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":10,\\\"parameterName\\\":\\\"currtypeCode\\\",\\\"id\\\":\\\"43b33900-c5da-4afb-bbd7-0865bd02db58\\\",\\\"example\\\":\\\"CNY\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":11,\\\"parameterName\\\":\\\"amount\\\",\\\"id\\\":\\\"4b0fd6a4-b1d0-489e-aec1-ca509e9221ad\\\",\\\"example\\\":\\\"1000\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":12,\\\"parameterName\\\":\\\"localdebitamount\\\",\\\"id\\\":\\\"9a43ad19-f903-4a8a-a5ac-f13c9fba445e\\\",\\\"example\\\":\\\"1000\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":13,\\\"parameterName\\\":\\\"localcreditamount\\\",\\\"id\\\":\\\"df2d1f92-89cb-411d-83ba-62366e931dba\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":14,\\\"parameterName\\\":\\\"groupdebitamount\\\",\\\"id\\\":\\\"61965366-0500-40d7-bae4-5dd16eb90761\\\",\\\"example\\\":\\\"1000\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":15,\\\"parameterName\\\":\\\"groupcreditamount\\\",\\\"id\\\":\\\"bdc3c6c2-de87-45f1-85cf-24f3b92920c6\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":16,\\\"parameterName\\\":\\\"globaldebitamount\\\",\\\"id\\\":\\\"a6069792-2a6b-43ba-97d7-504e1c5e3156\\\",\\\"example\\\":\\\"1000\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":17,\\\"parameterName\\\":\\\"globalcreditamount\\\",\\\"id\\\":\\\"528b2c6b-86a5-47ec-8b26-00259dacb0b4\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":18,\\\"parameterName\\\":\\\"busidate\\\",\\\"id\\\":\\\"11636e2a-b9d8-4ee3-81fc-0e809d11bf4f\\\",\\\"example\\\":\\\"2023-09-19\\\"},{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":20,\\\"parameterName\\\":\\\"checktypecode\\\",\\\"id\\\":\\\"b56bf160-7180-47ea-996a-acd8307eb5fa\\\",\\\"example\\\":\\\"0004\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":21,\\\"parameterName\\\":\\\"checkvaluecode\\\",\\\"id\\\":\\\"88d4fbb0-d3b7-4f1e-981d-71e60d10e603\\\",\\\"example\\\":\\\"X0015\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":19,\\\"parameterName\\\":\\\"ass\\\",\\\"id\\\":\\\"c10103af-f382-4c9b-a8f4-0738b664abb0\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":6,\\\"parameterName\\\":\\\"detail\\\",\\\"id\\\":\\\"70f9d810-039e-4884-b986-bc5b75331fb4\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":22,\\\"parameterName\\\":\\\"period\\\",\\\"id\\\":\\\"de91d6ad-c07b-4f84-a8c9-52e87de39d50\\\",\\\"example\\\":\\\"09\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":23,\\\"parameterName\\\":\\\"vouchertype\\\",\\\"id\\\":\\\"5de12ed3-d27e-4848-a008-5fb2e5c656a8\\\",\\\"example\\\":\\\"01\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":24,\\\"parameterName\\\":\\\"attachment\\\",\\\"id\\\":\\\"cc0ae4fb-5f33-46c9-a0bf-775b46ae8511\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":25,\\\"parameterName\\\":\\\"prepared\\\",\\\"id\\\":\\\"4b1622d6-980e-4920-82d0-e078e8bdb009\\\",\\\"example\\\":\\\"zhuc\\\"}],\\\"concreteType\\\":\\\"Object\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"sendData\\\",\\\"id\\\":\\\"2fc2918b-73fd-4c31-ba9f-1721132f1fdf\\\"}],\\\"concreteType\\\":\\\"Object\\\",\\\"index\\\":0,\\\"id\\\":\\\"669eebef-e4ae-474e-9b88-46a5490dc3db\\\",\\\"parameterName\\\":\\\"body\\\",\\\"first\\\":true}]\"}"; A88772 s = new A88772(); s.execute(str); } static class A88772 { String execute(String jsonStr) { - com.alibaba.fastjson.JSONObject returnObject = new com.alibaba.fastjson.JSONObject(); - com.alibaba.fastjson.JSONObject bodys = new com.alibaba.fastjson.JSONObject(); - com.alibaba.fastjson.JSONObject reqData = com.alibaba.fastjson.JSON.parseObject(jsonStr); com.alibaba.fastjson.JSONObject data = reqData.getJSONObject("data"); - com.alibaba.fastjson.JSONObject ufinterfaceObject = new com.alibaba.fastjson.JSONObject(); - ufinterfaceObject.put("billtype", "customer"); - ufinterfaceObject.put("isexchange", "Y"); - ufinterfaceObject.put("replace", "Y"); - ufinterfaceObject.put("sender", "openUser"); - ufinterfaceObject.put("account", "ycjf"); - ufinterfaceObject.put("groupcode", "ycjf"); - com.alibaba.fastjson.JSONObject billObject = new com.alibaba.fastjson.JSONObject(); - com.alibaba.fastjson.JSONObject billheadObject = new com.alibaba.fastjson.JSONObject(); - billheadObject.put("code", data.get("code")); - billheadObject.put("custprop", data.get("custprop")); - billheadObject.put("custstate", data.get("custstate")); - billheadObject.put("pk_custclass", data.get("pk_custclass")); - billheadObject.put("pk_country", data.get("pk_country")); - billheadObject.put("pk_timezone", "P0800"); - billheadObject.put("pk_format", "ZH-CN"); - billheadObject.put("enablestate", data.get("enablestate")); - billheadObject.put("name", data.get("name")); - billheadObject.put("pk_group", data.get("pk_group")); - billheadObject.put("pk_org", data.get("pk_org")); - billheadObject.put("taxpayerid", data.get("taxpayerid")); - billObject.put("billhead", billheadObject); - ufinterfaceObject.put("bill", billObject); - bodys.put("ufinterface", ufinterfaceObject); - returnObject.put("bodys",bodys.toJSONString()); + com.alibaba.fastjson.JSONArray gl_detail = data.getJSONArray("gl_detail"); + com.alibaba.fastjson.JSONArray gl_fixtmpfreevalue = data.getJSONArray("gl_fixtmpfreevalue"); + + com.alibaba.fastjson.JSONObject returnObject = new com.alibaba.fastjson.JSONObject(); + com.alibaba.fastjson.JSONObject sendData = new com.alibaba.fastjson.JSONObject(); + sendData.put("accbookCode",data.getString("accbook_code")); + sendData.put("prepareddate",data.getString("prepareddate")); + sendData.put("year",data.getString("year")); + sendData.put("num",data.getString("num")); + sendData.put("period",data.getString("period")); + sendData.put("vouchertype",data.getString("vouchertype")); + sendData.put("attachment",data.getString("attachment")); + sendData.put("prepared",data.getString("prepared")); + com.alibaba.fastjson.JSONArray detail = new com.alibaba.fastjson.JSONArray(); + if(gl_detail != null && gl_detail.size() > 0){ + for (int i = 0; i < gl_detail.size(); i++) { + com.alibaba.fastjson.JSONObject detaildata = gl_detail.getJSONObject(i); + com.alibaba.fastjson.JSONObject object1 = new com.alibaba.fastjson.JSONObject(); + object1.put("detailindex",detaildata.getString("detailindex")); + object1.put("explanation",detaildata.getString("explanation")); + object1.put("accountCode",detaildata.getString("account_code")); + object1.put("currtypeCode",detaildata.getString("currtype_code")); + object1.put("amount",detaildata.getString("amount")); + object1.put("localdebitamount",detaildata.getString("localdebitamount")); + object1.put("localcreditamount",detaildata.getString("localcreditamount")); + object1.put("groupdebitamount",detaildata.getString("groupdebitamount")); + object1.put("groupcreditamount",detaildata.getString("groupcreditamount")); + object1.put("globaldebitamount",detaildata.getString("globaldebitamount")); + object1.put("globalcreditamount",detaildata.getString("globalcreditamount")); + object1.put("busidate",detaildata.getString("busidate")); + detail.add(object1); + if(gl_fixtmpfreevalue != null && gl_fixtmpfreevalue.size() > 0){ + com.alibaba.fastjson.JSONArray ass = new com.alibaba.fastjson.JSONArray(); + for (int i1 = 0; i1 < gl_fixtmpfreevalue.size(); i1++) { + if(gl_fixtmpfreevalue.getJSONObject(i1).getString("voucher_id").equals(data.getString("voucher_id")) + && gl_fixtmpfreevalue.getJSONObject(i1).getString("detail_id").equals(detaildata.getString("detail_id"))){ + com.alibaba.fastjson.JSONObject assdetail1 = new com.alibaba.fastjson.JSONObject(); + assdetail1.put("checktypecode",gl_fixtmpfreevalue.getJSONObject(i1).getString("checktypecode")); + assdetail1.put("checkvaluecode",gl_fixtmpfreevalue.getJSONObject(i1).getString("checkvaluecode")); + ass.add(assdetail1); + } + } + if(ass.size() > 0){ + object1.put("ass",ass); + + } + } + } + } + sendData.put("detail",detail); + returnObject.put("bodys",sendData); return returnObject.toJSONString(); - - - - - } } diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/IBipArchivesDao.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/IBipArchivesDao.java new file mode 100644 index 00000000..02516313 --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/IBipArchivesDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.bip.v3.v2207.dao; + +import com.hzya.frame.basedao.dao.IBaseDao; +import com.hzya.frame.bip.v3.v2207.entity.BipArchivesEntity; +import com.hzya.frame.bip.v3.v2207.entity.BipOrgsEntity; + +import java.util.List; + + +public interface IBipArchivesDao extends IBaseDao { + + List queryArchivesData(BipArchivesEntity archivesEntity); + List queryArchivesDatays(BipArchivesEntity archivesEntity); + +} diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/impl/BipArchivesDaoImpl.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/impl/BipArchivesDaoImpl.java new file mode 100644 index 00000000..987d702c --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/dao/impl/BipArchivesDaoImpl.java @@ -0,0 +1,25 @@ +package com.hzya.frame.bip.v3.v2207.dao.impl; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +import com.hzya.frame.bip.v3.v2207.dao.IBipArchivesDao; +import com.hzya.frame.bip.v3.v2207.dao.IBipOrgsDao; +import com.hzya.frame.bip.v3.v2207.entity.BipArchivesEntity; +import com.hzya.frame.bip.v3.v2207.entity.BipOrgsEntity; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository("bipArchivesDaoImpl") +public class BipArchivesDaoImpl extends MybatisGenericDao implements IBipArchivesDao { + + @Override + public List queryArchivesData(BipArchivesEntity entity) { + List o = super.query(getSqlIdPrifx() + "queryArchivesData", entity); + return o; + } @Override + public List queryArchivesDatays(BipArchivesEntity entity) { + List o = super.query(getSqlIdPrifx() + "queryArchivesDatays", entity); + return o; + } +} diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.java new file mode 100644 index 00000000..eef1c56d --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.java @@ -0,0 +1,188 @@ +package com.hzya.frame.bip.v3.v2207.entity; + +import cn.dev33.satoken.stp.StpUtil; +import com.hzya.frame.uuid.UUIDUtils; +import com.hzya.frame.web.entity.BaseEntity; + +import java.util.Date; + +/** + * (BdCorp)实体类 + * + * @author makejava + * @since 2023-09-06 14:47:18 + */ +public class BipArchivesEntity extends BaseEntity { + + private String archivesType;//类型 + private String leftCode;//左编码 + private String rightCode;//右编码 + + private String leftAppId;//左应用id + private String leftAppCode;//左应用编码 + private String leftAppName;//左应用名称 + private String leftApiId;//左接口ID + private String leftId;//左id + private String leftName;//左名称 + private String rightAppId;//右应用id + private String rightAppCode;//右应用编码 + private String rightAppName;//右应用名称 + private String rightApiId;//右接口ID + private String rightId;//右id + private String rightName;//右名称 + private String leftOrg;//左公司 + private String rightOrg;//右公司 + + public String getArchivesType() { + return archivesType; + } + + public void setArchivesType(String archivesType) { + this.archivesType = archivesType; + } + + public String getLeftCode() { + return leftCode; + } + + public void setLeftCode(String leftCode) { + this.leftCode = leftCode; + } + + public String getRightCode() { + return rightCode; + } + + public void setRightCode(String rightCode) { + this.rightCode = rightCode; + } + + public String getLeftAppId() { + return leftAppId; + } + + public void setLeftAppId(String leftAppId) { + this.leftAppId = leftAppId; + } + + public String getLeftAppCode() { + return leftAppCode; + } + + public void setLeftAppCode(String leftAppCode) { + this.leftAppCode = leftAppCode; + } + + public String getLeftAppName() { + return leftAppName; + } + + public void setLeftAppName(String leftAppName) { + this.leftAppName = leftAppName; + } + + public String getLeftApiId() { + return leftApiId; + } + + public void setLeftApiId(String leftApiId) { + this.leftApiId = leftApiId; + } + + public String getLeftId() { + return leftId; + } + + public void setLeftId(String leftId) { + this.leftId = leftId; + } + + public String getLeftName() { + return leftName; + } + + public void setLeftName(String leftName) { + this.leftName = leftName; + } + + public String getRightAppId() { + return rightAppId; + } + + public void setRightAppId(String rightAppId) { + this.rightAppId = rightAppId; + } + + public String getRightAppCode() { + return rightAppCode; + } + + public void setRightAppCode(String rightAppCode) { + this.rightAppCode = rightAppCode; + } + + public String getRightAppName() { + return rightAppName; + } + + public void setRightAppName(String rightAppName) { + this.rightAppName = rightAppName; + } + + public String getRightApiId() { + return rightApiId; + } + + public void setRightApiId(String rightApiId) { + this.rightApiId = rightApiId; + } + + public String getRightId() { + return rightId; + } + + public void setRightId(String rightId) { + this.rightId = rightId; + } + + public String getRightName() { + return rightName; + } + + public void setRightName(String rightName) { + this.rightName = rightName; + } + + public String getLeftOrg() { + return leftOrg; + } + + public void setLeftOrg(String leftOrg) { + this.leftOrg = leftOrg; + } + + public String getRightOrg() { + return rightOrg; + } + + public void setRightOrg(String rightOrg) { + this.rightOrg = rightOrg; + } + + public void setCreate() { + this.setId(UUIDUtils.getUUID()); + this.setSts("Y"); + this.setCreate_user_id("1"); + this.setModify_user_id("1"); + this.setCreate_time(new Date()); + this.setModify_time(new Date()); + this.setOrg_id("0"); + this.setCompanyId("0"); + } + //修改信息 + public void setUpdate() { + this.setModify_user_id("1"); + this.setModify_time(new Date()); + } +} + diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.xml b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.xml new file mode 100644 index 00000000..1a2f96ab --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipArchivesEntity.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipAss.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipAss.java new file mode 100644 index 00000000..ebb9d80b --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipAss.java @@ -0,0 +1,24 @@ +package com.hzya.frame.bip.v3.v2207.entity; + + +public class BipAss { + private String checktypecode; + private String checkvaluecode; + + + public String getChecktypecode() { + return checktypecode; + } + + public void setChecktypecode(String checktypecode) { + this.checktypecode = checktypecode; + } + + public String getCheckvaluecode() { + return checkvaluecode; + } + + public void setCheckvaluecode(String checkvaluecode) { + this.checkvaluecode = checkvaluecode; + } +} \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipCashflow.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipCashflow.java new file mode 100644 index 00000000..f29cb81c --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipCashflow.java @@ -0,0 +1,23 @@ +package com.hzya.frame.bip.v3.v2207.entity; + + +public class BipCashflow { + private String money; + private String pk_cashflow; + + public String getMoney() { + return money; + } + + public void setMoney(String money) { + this.money = money; + } + + public String getPk_cashflow() { + return pk_cashflow; + } + + public void setPk_cashflow(String pk_cashflow) { + this.pk_cashflow = pk_cashflow; + } +} \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucher.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucher.java new file mode 100644 index 00000000..00a23a11 --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucher.java @@ -0,0 +1,69 @@ +package com.hzya.frame.bip.v3.v2207.entity; + +import java.util.List; + +public class BipVoucher { + private List details; + private String no; + private String pk_corp; + private String pk_glorgbook; + private String pk_prepared; + private String pk_vouchertype; + private String pk_voucher; + + public List getDetails() { + return details; + } + + public void setDetails(List details) { + this.details = details; + } + + public String getNo() { + return no; + } + + public void setNo(String no) { + this.no = no; + } + + public String getPk_corp() { + return pk_corp; + } + + public void setPk_corp(String pk_corp) { + this.pk_corp = pk_corp; + } + + public String getPk_glorgbook() { + return pk_glorgbook; + } + + public void setPk_glorgbook(String pk_glorgbook) { + this.pk_glorgbook = pk_glorgbook; + } + + public String getPk_prepared() { + return pk_prepared; + } + + public void setPk_prepared(String pk_prepared) { + this.pk_prepared = pk_prepared; + } + + public String getPk_vouchertype() { + return pk_vouchertype; + } + + public void setPk_vouchertype(String pk_vouchertype) { + this.pk_vouchertype = pk_vouchertype; + } + + public String getPk_voucher() { + return pk_voucher; + } + + public void setPk_voucher(String pk_voucher) { + this.pk_voucher = pk_voucher; + } +} \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucherDetails.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucherDetails.java new file mode 100644 index 00000000..ff8cf3e6 --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/entity/BipVoucherDetails.java @@ -0,0 +1,105 @@ +package com.hzya.frame.bip.v3.v2207.entity; + +import java.util.List; + +public class BipVoucherDetails { + private List ass; + private List cashflow; + private String creditamount; + private String debitamount; + private String explanation; + private String localcreditamount; + private String localdebitamount; + private String pk_accsubj; + private String pk_currtype; + private String debitquantity; + private String price; + + public List getAss() { + return ass; + } + + public void setAss(List ass) { + this.ass = ass; + } + + public List getCashflow() { + return cashflow; + } + + public void setCashflow(List cashflow) { + this.cashflow = cashflow; + } + + public String getCreditamount() { + return creditamount; + } + + public void setCreditamount(String creditamount) { + this.creditamount = creditamount; + } + + public String getDebitamount() { + return debitamount; + } + + public void setDebitamount(String debitamount) { + this.debitamount = debitamount; + } + + public String getExplanation() { + return explanation; + } + + public void setExplanation(String explanation) { + this.explanation = explanation; + } + + public String getLocalcreditamount() { + return localcreditamount; + } + + public void setLocalcreditamount(String localcreditamount) { + this.localcreditamount = localcreditamount; + } + + public String getLocaldebitamount() { + return localdebitamount; + } + + public void setLocaldebitamount(String localdebitamount) { + this.localdebitamount = localdebitamount; + } + + public String getPk_accsubj() { + return pk_accsubj; + } + + public void setPk_accsubj(String pk_accsubj) { + this.pk_accsubj = pk_accsubj; + } + + public String getPk_currtype() { + return pk_currtype; + } + + public void setPk_currtype(String pk_currtype) { + this.pk_currtype = pk_currtype; + } + + public String getDebitquantity() { + return debitquantity; + } + + public void setDebitquantity(String debitquantity) { + this.debitquantity = debitquantity; + } + + public String getPrice() { + return price; + } + + public void setPrice(String price) { + this.price = price; + } +} \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipPzService.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipPzService.java new file mode 100644 index 00000000..1582e8d7 --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipPzService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.bip.v3.v2207.service; + + +import com.hzya.frame.basedao.service.IBaseService; +import com.hzya.frame.bip.v3.v2207.entity.BipTokenVo; +import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; + +public interface IBipPzService extends IBaseService{ + + + SysExtensionApiEntity getPz(SysExtensionApiEntity entity); +} \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipV32207BillService.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipV32207BillService.java index f9881deb..31806e42 100644 --- a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipV32207BillService.java +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/IBipV32207BillService.java @@ -15,4 +15,5 @@ public interface IBipV32207BillService extends IBaseService{ */ SysExtensionApiEntity getBipBill(SysExtensionApiEntity entity); + SysExtensionApiEntity getBipBillYs(SysExtensionApiEntity entity); } \ No newline at end of file diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipPzServiceImpl.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipPzServiceImpl.java new file mode 100644 index 00000000..b41af4e6 --- /dev/null +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipPzServiceImpl.java @@ -0,0 +1,72 @@ +package com.hzya.frame.bip.v3.v2207.service.impl; + + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.basedao.service.impl.BaseService; +import com.hzya.frame.bip.v3.v2207.dao.IBipArchivesDao; +import com.hzya.frame.bip.v3.v2207.entity.BipArchivesEntity; +import com.hzya.frame.bip.v3.v2207.entity.BipAss; +import com.hzya.frame.bip.v3.v2207.entity.BipTokenVo; +import com.hzya.frame.bip.v3.v2207.entity.BipVoucher; +import com.hzya.frame.bip.v3.v2207.entity.BipVoucherDetails; +import com.hzya.frame.bip.v3.v2207.service.IBipPzService; +import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; +import com.hzya.frame.web.entity.BaseResult; +import jdk.nashorn.internal.ir.annotations.Reference; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Arrays; +import java.util.List; + + +@Service(value = "bipPzService") +public class BipPzServiceImpl extends BaseService implements IBipPzService { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Resource + private IBipArchivesDao bipArchivesDao; + /** + * @param entity + * @return com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity + * @Author lvleigang + * @Description 组装凭证数据 + * @Date 10:52 上午 2024/11/5 + **/ + @Override + public SysExtensionApiEntity getPz(SysExtensionApiEntity entity) { + String bodys = entity.getBodys(); + BipVoucher voucher = JSONObject.parseObject(bodys, BipVoucher.class); + List fzhs = Arrays.asList(new String[]{"1", "2", "6", "73", "D01", "jobass", "93", "96", "22"}); + if (voucher.getDetails() != null && voucher.getDetails().size() > 0) { + for (int a = 0; a < voucher.getDetails().size(); a++) { + BipVoucherDetails voucherDetails = voucher.getDetails().get(a); + if (voucherDetails.getAss() != null && voucherDetails.getAss().size() > 0) { + for (int b = 0; b < voucherDetails.getAss().size(); b++) { + BipAss ass = voucherDetails.getAss().get(b); + if (ass.getChecktypecode() != null && !"".equals(ass.getChecktypecode())) { + //存在需要转换的 + if (fzhs.contains(ass.getChecktypecode())) { + BipArchivesEntity archivesEntity = new BipArchivesEntity(); + archivesEntity.setArchivesType(ass.getChecktypecode()); + archivesEntity.setLeftCode(ass.getCheckvaluecode()); + archivesEntity.setLeftOrg(voucher.getPk_corp()); + + List archivesEntities = bipArchivesDao.queryArchivesData(archivesEntity); + if (archivesEntities != null && archivesEntities.size() > 0) { + ass.setCheckvaluecode(archivesEntities.get(0).getRightCode()); + } + } + } + } + } + } + } + bodys = JSON.toJSONString(voucher); + entity.setBodys(bodys); + return entity; + } +} diff --git a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipV32207BillServiceImpl.java b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipV32207BillServiceImpl.java index 1c59cc16..d5858c28 100644 --- a/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipV32207BillServiceImpl.java +++ b/fw-bip/src/main/java/com/hzya/frame/bip/v3/v2207/service/impl/BipV32207BillServiceImpl.java @@ -1,8 +1,15 @@ package com.hzya.frame.bip.v3.v2207.service.impl; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.hzya.frame.basedao.service.impl.BaseService; +import com.hzya.frame.bip.v3.v2207.dao.IBipArchivesDao; +import com.hzya.frame.bip.v3.v2207.entity.BipArchivesEntity; +import com.hzya.frame.bip.v3.v2207.entity.BipAss; import com.hzya.frame.bip.v3.v2207.entity.BipTokenVo; +import com.hzya.frame.bip.v3.v2207.entity.BipVoucher; +import com.hzya.frame.bip.v3.v2207.entity.BipVoucherDetails; import com.hzya.frame.bip.v3.v2207.service.IBipV32207BillService; import com.hzya.frame.bip.v3.v2207.service.IBipV32207TokenService; import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; @@ -13,14 +20,19 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.net.URLEncoder; +import java.util.Arrays; import java.util.HashMap; +import java.util.List; import java.util.Map; @Service(value = "BipV32207BillServiceImpl") public class BipV32207BillServiceImpl extends BaseService implements IBipV32207BillService { private final Logger logger = LoggerFactory.getLogger(this.getClass()); + @Resource + private IBipArchivesDao bipArchivesDao; /** * * @content 此方法获取拼接单据动态加密,heade参数动态传入 @@ -59,4 +71,64 @@ public class BipV32207BillServiceImpl extends BaseService im } return entity; } + @Override + public SysExtensionApiEntity getBipBillYs(SysExtensionApiEntity entity) { + try { + String bodys = entity.getBodys(); + BipVoucher voucher = JSONObject.parseObject(bodys, BipVoucher.class); + List fzhs = Arrays.asList(new String[]{"0012", "0006", "0004"}); + if (voucher.getDetails() != null && voucher.getDetails().size() > 0) { + for (int a = 0; a < voucher.getDetails().size(); a++) { + BipVoucherDetails voucherDetails = voucher.getDetails().get(a); + if (voucherDetails.getAss() != null && voucherDetails.getAss().size() > 0) { + for (int b = 0; b < voucherDetails.getAss().size(); b++) { + BipAss ass = voucherDetails.getAss().get(b); + if (ass.getChecktypecode() != null && !"".equals(ass.getChecktypecode())) { + //存在需要转换的 + if (fzhs.contains(ass.getChecktypecode())) { + BipArchivesEntity archivesEntity = new BipArchivesEntity(); + archivesEntity.setArchivesType(ass.getChecktypecode()); + archivesEntity.setLeftCode(ass.getCheckvaluecode()); + archivesEntity.setLeftOrg(voucher.getPk_corp()); + + List archivesEntities = bipArchivesDao.queryArchivesData(archivesEntity); + if (archivesEntities != null && archivesEntities.size() > 0) { + ass.setCheckvaluecode(archivesEntities.get(0).getRightCode()); + } + } + } + } + } + } + } + bodys = JSON.toJSONString(voucher); + entity.setBodys(bodys); + + Map headers = entity.getHeaders(); + String client_id = headers.get("client_id"); + //token信息 + String access_token = headers.get("access_token"); + //公钥 + String pubKey = headers.get("pubKey"); + StringBuffer sb = new StringBuffer(); + sb.append(client_id); + String parm = entity.getBodys(); + if (StringUtils.isNotBlank(parm)) { + sb.append(parm); + } + sb.append(pubKey); + // 签名 + String sign = SHA256Util.getSHA256(sb.toString(), pubKey); + StringBuffer querys = new StringBuffer(); + querys.append("access_token="+access_token); + querys.append("&signature="+sign); + querys.append("&client_id="+client_id); + entity.setQuerys(querys.toString()); + headers.put("signature",sign); +// headers.put("content-type","application/x-www-form-urlencoded"); + } catch (Exception e) { + e.printStackTrace(); + } + return entity; + } }