package com.brilliance.isc.esb.test.embfe;

public class dztest {

//    private static final OkHttpClient httpClient;
//
//    static {
//        httpClient = new OkHttpClient().
//                newBuilder().connectTimeout(60, TimeUnit.SECONDS)
//                .writeTimeout(60, TimeUnit.SECONDS)
//                .readTimeout(60, TimeUnit.SECONDS).build();
//    }
//
//
//    static void httpCall(Object object, String path) throws IOException {
//
//        ObjectMapper objectMapper = new ObjectMapper();
//        String content = objectMapper.writeValueAsString(object);
//
//        System.out.println(content);
//        RequestBody requestBody = RequestBody.create(content, MediaType.parse("application/json;charset=UTF-8"));
//        Request request = new Request.Builder()
//                .url("http://10.233.154.130:8081/webapi" + path)
//                .post(requestBody)
//                .build();
//        try {
//            Response response = httpClient.newCall(request).execute();
//
//            System.out.println(response.body().string());
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    @Test
//    public void dzl1() {
//        try {
//            ReqDZL1 reqDZL1 = new ReqDZL1();
//            reqDZL1.TRAFLG = "0";
//            reqDZL1.RCVPAT = "";
//            String json = "";
//            json = IOUtils.toString(dztest.class.getClassLoader().getResourceAsStream("dztest/dzl1.json"), "utf-8");
//            reqDZL1.RCVMSG = json;
//            httpCall(reqDZL1, "/SSTF/DZL1");
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    @Test
//    public void dzw1() {
//        try {
//
//            String json = "";
//            json = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("dztest/dzw1.txt"), "utf-8");
//            String[] reqstr = json.split("|");
//
//            Map jsonmap = JSON.parseObject(json);
//            String source = (String) jsonmap.get("MesgID");
//            long str = Long.parseLong(source.substring(12));
//            Random random = new Random();
//            int i = 1 + random.nextInt(900);
//            String newstr = str + i + "";
//            String json2 = json.replace(source + "", source.substring(0, 12) + newstr);
//            InnerReqDzw1 innerReqDzw1 = new InnerReqDzw1(json2, "00000001", "H");
//
//            InnerReq<InnerReqDzw1> innerReqDzw1InnerReq = new InnerReq(innerReqDzw1);
//            innerReqDzw1InnerReq.header = new Header();
//            httpCall(innerReqDzw1InnerReq, "/jk/DZW1");
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    @Test
//    public void lcl1() {
//        try {
//
//            String xml = "";
//            xml = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("lctest/lcl1.xml"), "utf-8");
//            ReqLCL1 reqDZL1 = new ReqLCL1(xml, "", "", "");
//
//            httpCall(reqDZL1, "/SSTF/LCL1");
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    @Test
//    public void lcl2() {
//        try {
//
//            String xml = "";
//            xml = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("lctest/lcl2.xml"), "utf-8");
//            ReqLCL2 reqDZL2 = new ReqLCL2(xml, "", "", "");
//
//
//            httpCall(reqDZL2, "/SSTF/LCL2");
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    @Test
//    public void lcw1() {
//        try {
//            String json = "";
//            json = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("dztest/dzw1.txt"), "utf-8");
//            String[] reqstr = json.split("|");
//            InnerReqLcw1 innerReqLcw1 = new InnerReqLcw1("T105", "/sstf/data/docs/202308/18904829.xml", "11295398", "", "", "0");
//
//            InnerReq<InnerReqLcw1> innerReqLcw1InnerReq = new InnerReq(innerReqLcw1);
//            innerReqLcw1InnerReq.header = new Header();
//            httpCall(innerReqLcw1InnerReq, "/jk/LCW1");
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
//
//    /**
//     * cecm补额度的数据
//     */
//    @Test
//    public void modifycecm() {
//
//        String cecmdata = "";
//        String limdata = "";
//        StringBuffer stringBuffer = new StringBuffer();
//        try {
//            cecmdata = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("cecm/gid_opn20240328.unl"), "gbk");
//            limdata = IOUtils.toString(dztest.class.getClassLoader()
//                    .getResourceAsStream("cecm/limdata.txt"), "gbk");
//
//            String[] lines = cecmdata.split("\n");
//            String[] limline = limdata.split("\r\n");
//
//
//            for (String line : lines) {
//                List<String> linelist = new ArrayList<>();
//                String[] propties = line.split("\\|");
//                String limtype = "";
//                String limref = "";
//                for (String lim : limline) {
//                    String[] lims = lim.split("\t");
//                    if (propties[0].equals(lims[2])) {
//                        limtype = lims[0];
//                        limref = lims[1];
//                    }
//                }
//                for (int i = 0; i < propties.length; i++) {
//                    if (i == 12) {
//                        linelist.add(limtype);
//                    } else if (i == 13) {
//                        linelist.add(limref);
//                    } else {
//                        linelist.add(propties[i]);
//                    }
//                }
//                for (String newline : linelist) {
//                    stringBuffer.append(newline).append("|");
//                }
//                stringBuffer.append("\n");
//
//            }
//
//            FileUtils.writeStringToFile(new File("/sstf/data/gid_opn20240330.unl"), stringBuffer.toString(), "gbk");
//        } catch (IOException ioException) {
//            ioException.printStackTrace();
//        }
//
//    }
//
//    /**
//     * cecm补额度的数据
//     */
//    @Test
//    public void modifycecm2() throws IOException {
//
//        String cecmdata = "";
//
//        cecmdata = IOUtils.toString(dztest.class.getClassLoader()
//                .getResourceAsStream("cecm/cecm.txt"), "utf-8");
//
//        String[] cecmlines = cecmdata.split("\r\n");
//        StringBuffer stringBuffer = new StringBuffer();
//        int i = 0;
//        for (String cecmline : cecmlines) {
//            i++;
//            System.out.println("正在处理第"+i+"行");
//            String[] cecmmod=new String[]{"","","","","","","","","","","","","","","","","","","","","","","","","","","",""};
//            cecmmod = cecmline.split("\t",-1);
//
//            stringBuffer.append(cecmmod[4] + "|");
//            String gid_gartyp = cecmmod[9];
//            String trncode = getGidTrnCodeOwnref(gid_gartyp);
//            stringBuffer.append(trncode + "|");
//            String opndate = cecmmod[10].substring(0, 10);
//            opndate = DateUtil.format(opndate, "yyyy-MM-dd", "yyyyMMdd");
//            stringBuffer.append(opndate + "|");
//            String gid_expdat = cecmmod[11].substring(0, 10);
//            gid_expdat = DateUtil.format(gid_expdat, "yyyy-MM-dd", "yyyyMMdd");
//            stringBuffer.append(gid_expdat + "|");
//
//            stringBuffer.append(cecmmod[7] + "|");
//            stringBuffer.append(cecmmod[8] + "|");
//
//            stringBuffer.append(cecmmod[16] + "|");
//            stringBuffer.append(cecmmod[17] + "|");
//
//            stringBuffer.append(cecmmod[20] + "|");
//            BigDecimal b1 = new BigDecimal(cecmmod[21]);
//            String amt = String.format("%.6f", b1);
//            stringBuffer.append(amt + "|");
//
//            stringBuffer.append(cecmmod[22] + "|");
//            String cshstr = "";
//            if (StringUtil.isEmpty(cecmmod[12])) {
//                BigDecimal csh = BigDecimal.valueOf(0);
//                cshstr = String.format("%.6f", csh);
//            } else {
//                BigDecimal csh = new BigDecimal(cecmmod[12]);
//                cshstr = String.format("%.6f", csh);
//            }
//
//            stringBuffer.append(cshstr + "|");
//
//            stringBuffer.append(cecmmod[24] + "|");
//            stringBuffer.append(cecmmod[25] + "|");
//
//            stringBuffer.append(cecmmod[13] + "|");
//
//            String gidtyp = "0158";
//            if (gid_gartyp.startsWith("U")) {
//                gidtyp = "2747";
//            }
//            // 加贸保函业务本金代号定义为"2743"
//            if (gid_gartyp.startsWith("X")) {
//                gidtyp = "2743";
//            }
//            // 20160626,应青姐业务要求，当保函类型为银行信贷证明时，业务代号传2239
//            if (gid_gartyp.startsWith("V")) {
//                gidtyp = "2239";
//            }
//            if ("Z".equals(cecmmod[4].substring(8, 9))) {
//                gidtyp = "2747";
//            }
//
//            stringBuffer.append(gidtyp + "|");
//
//            String gid_isSeparation = cecmmod[14];
//            // 批量文件中的分离式
//            if (gid_isSeparation == null || ("").equals(gid_isSeparation.trim())
//                    || "0".equals(gid_isSeparation.trim())) {
//                gid_isSeparation = "0";
//            } else {
//                gid_isSeparation = "1";
//            }
//
//            stringBuffer.append(gid_isSeparation);
//
//            stringBuffer.append("\n");
//        }
//
//        FileUtils.writeStringToFile(new File("/sstf/data/bucecm/gid_opn20240401.unl"), stringBuffer.toString(), "gbk");
//
//    }
//
//    public String getGidTrnCodeOwnref(String gartyp) {
//        String trncode; // 业务品种
//        if (gartyp.startsWith("A")) {
//            trncode = "05140201";
//        } else if (gartyp.startsWith("B")) {
//            trncode = "05140202";
//        } else if (gartyp.startsWith("C")) {
//            trncode = "05140203";
//        } else if (gartyp.startsWith("D")) {
//            trncode = "05140204";
//        } else if (gartyp.startsWith("F")) {
//            trncode = "05140206";
//        } else if (gartyp.startsWith("2")) {
//            trncode = "05140210";
//        } else if (gartyp.startsWith("G")) {
//            trncode = "05140101";
//        } else if (gartyp.startsWith("H")) {
//            trncode = "05140102";
//        } else if (gartyp.startsWith("J")) {
//            trncode = "05140205";
//        } else if (gartyp.startsWith("S")) {
//            trncode = "05140104";
//        } else if (gartyp.startsWith("T")) {
//            trncode = "05140103";
//        } else if (gartyp.startsWith("U")) {
//            trncode = "05140207";
//        } else if (gartyp.startsWith("V")) {
//            trncode = "051419";
//        } else if (gartyp.startsWith("X")) {
//            trncode = "05140208";
//        } else if (gartyp.startsWith("W")) {
//            trncode = "05140105";
//        } else {
//            trncode = "05140299";
//        }
//        return trncode;
//    }
}
