Commit 2047b6c517039232708bd8982b5baa8fdc9a433f
1 parent
d3ee0c15ce
Exists in
master
and in
6 other branches
华大基因,查询报告类型2
Showing 2 changed files with 24 additions and 220 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ApplyOrderController.java
View file @
2047b6c
... | ... | @@ -86,7 +86,6 @@ |
86 | 86 | |
87 | 87 | //华大基因,检查结果回调 |
88 | 88 | @RequestMapping("/huadaCallback") |
89 | - @ResponseBody | |
90 | 89 | public Map huadaCallback(@RequestParam(value = "params") String params, |
91 | 90 | @RequestParam(value = "syscode") String syscode, |
92 | 91 | @RequestParam(value = "sign") String sign, |
... | ... | @@ -102,8 +101,13 @@ |
102 | 101 | |
103 | 102 | //华大基因,6.6.查询报告类型 |
104 | 103 | @RequestMapping(method = RequestMethod.POST,value = "/huadaGetReportType") |
105 | - public void huadaGetReportType( @RequestParam(value = "sampleReportId") String sampleReportId) { | |
106 | - applyOrderFacade.huadaGetReportType(sampleReportId); | |
104 | + @ResponseBody | |
105 | + public Map huadaGetReportType( @RequestParam(value = "sampleReportId") String sampleReportId) { | |
106 | + String s = applyOrderFacade.huadaGetReportType(sampleReportId); | |
107 | + System.out.println(s); | |
108 | + Map map = new HashMap(); | |
109 | + map.put("s",s); | |
110 | + return map; | |
107 | 111 | } |
108 | 112 | |
109 | 113 | @RequestMapping(method = RequestMethod.GET, value = "/sieveapply") |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java
View file @
2047b6c
... | ... | @@ -3,23 +3,17 @@ |
3 | 3 | import com.alibaba.fastjson.JSON; |
4 | 4 | import com.alibaba.fastjson.JSONArray; |
5 | 5 | import com.alibaba.fastjson.JSONObject; |
6 | -import com.google.common.collect.Maps; | |
7 | 6 | import com.lyms.platform.biz.service.*; |
8 | 7 | import com.lyms.platform.common.constants.ErrorCodeConstants; |
9 | 8 | import com.lyms.platform.common.enums.*; |
10 | 9 | import com.lyms.platform.common.exception.BusinessException; |
11 | -import com.lyms.platform.common.result.BaseListResponse; | |
12 | -import com.lyms.platform.common.result.BaseObjectResponse; | |
13 | -import com.lyms.platform.common.result.BaseResponse; | |
10 | +import com.lyms.platform.common.result.*; | |
14 | 11 | import com.lyms.platform.common.utils.*; |
15 | 12 | import com.lyms.platform.operate.web.request.*; |
16 | 13 | import com.lyms.platform.operate.web.result.*; |
17 | 14 | import com.lyms.platform.operate.web.utils.CommonsHelper; |
18 | 15 | import com.lyms.platform.operate.web.utils.FunvCommonUtil; |
19 | -import com.lyms.platform.permission.model.Organization; | |
20 | -import com.lyms.platform.permission.model.OrganizationQuery; | |
21 | -import com.lyms.platform.permission.model.PatientService; | |
22 | -import com.lyms.platform.permission.model.Users; | |
16 | +import com.lyms.platform.permission.model.*; | |
23 | 17 | import com.lyms.platform.permission.service.CouponService; |
24 | 18 | import com.lyms.platform.permission.service.OrganizationService; |
25 | 19 | import com.lyms.platform.permission.service.UsersService; |
... | ... | @@ -28,8 +22,7 @@ |
28 | 22 | import org.apache.commons.collections.CollectionUtils; |
29 | 23 | import org.apache.commons.lang.StringUtils; |
30 | 24 | import org.apache.commons.lang.math.NumberUtils; |
31 | -import org.slf4j.Logger; | |
32 | -import org.slf4j.LoggerFactory; | |
25 | +import org.apache.http.HttpResponse; | |
33 | 26 | import org.springframework.beans.factory.annotation.Autowired; |
34 | 27 | import org.springframework.data.mongodb.core.MongoTemplate; |
35 | 28 | import org.springframework.data.mongodb.core.query.Criteria; |
... | ... | @@ -38,6 +31,7 @@ |
38 | 31 | import org.springframework.stereotype.Component; |
39 | 32 | |
40 | 33 | import javax.servlet.ServletOutputStream; |
34 | +import javax.servlet.http.HttpServletRequest; | |
41 | 35 | import javax.servlet.http.HttpServletResponse; |
42 | 36 | import java.io.*; |
43 | 37 | import java.text.SimpleDateFormat; |
... | ... | @@ -53,7 +47,6 @@ |
53 | 47 | public static final String HUADA_URL = PropertiesUtils.getPropertyValue("huada_url"); |
54 | 48 | public static final String SYSCODE = PropertiesUtils.getPropertyValue("huada_syscode"); |
55 | 49 | public static final String SECRET = PropertiesUtils.getPropertyValue("huada_secret"); |
56 | - public static final String HIS_VERSION = PropertiesUtils.getPropertyValue("his_version"); | |
57 | 50 | |
58 | 51 | @Autowired |
59 | 52 | private ApplyOrderService applyOrderService; |
... | ... | @@ -93,8 +86,6 @@ |
93 | 86 | @Autowired |
94 | 87 | private MongoTemplate mongoTemplate; |
95 | 88 | |
96 | - Logger logger = LoggerFactory.getLogger(ApplyOrderFacade.class); | |
97 | - | |
98 | 89 | //添加回执单 |
99 | 90 | public BaseResponse addReferralReceipt(ReferralReceiptRequest referralReceipt) { |
100 | 91 | ReferralApplyOrderModel referralApplyOrderModel = new ReferralApplyOrderModel(); |
... | ... | @@ -398,7 +389,7 @@ |
398 | 389 | if (CollectionUtils.isNotEmpty(sieveModels)) { |
399 | 390 | SieveModel sieveModel = sieveModels.get(0); |
400 | 391 | mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(sieveModel.getId())), Update.update("sieveType", sieveApplyOrderModel.getSieveType()). |
401 | - set("costType", sieveApplyOrderModel.getCostType()), SieveModel.class); | |
392 | + set("costType",sieveApplyOrderModel.getCostType()), SieveModel.class); | |
402 | 393 | if (sieveModel.getSieveHospitalId() != null && !sieveModel.getSieveHospitalId().equals(sieveApplyOrderAddRequest.getSieveHospitalId())) { |
403 | 394 | sieveModel.setSieveHospitalId(sieveApplyOrderAddRequest.getSieveHospitalId()); |
404 | 395 | sieveService.updateOneChanQianDiaSieve(sieveModel); |
405 | 396 | |
406 | 397 | |
407 | 398 | |
... | ... | @@ -512,140 +503,16 @@ |
512 | 503 | int days = DateUtil.daysBetween(sieveModel.getLastMenses(), sieveModel.getApplyDate()); |
513 | 504 | sieveModel.setDueWeek(days); |
514 | 505 | SieveService.handOrder(sieveModel); |
515 | - sieveModel.setSieveType(sieveApplyOrderModel.getSieveType()); | |
516 | - sieveModel.setCostType(sieveApplyOrderModel.getCostType()); | |
517 | 506 | sieveService.updateOneChanQianDiaSieve(sieveModel); |
518 | 507 | operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hospitalId), sieveModels.get(0), sieveModel, OptActionEnums.UPDATE.getId(), "增加产前筛查"); |
519 | 508 | } |
520 | - // 调用华大接口 | |
521 | - System.out.println("debug=========>开始调用华大接口"); | |
522 | - callHuaDa(sieveApplyOrderModel, hospitalId); | |
523 | - System.out.println("debug=========>结束调用华大接口"); | |
524 | 509 | } else { |
525 | 510 | return new BaseResponse().setErrorcode(ErrorCodeConstants.DATA_EXIST).setErrormsg("已申请过产筛"); |
526 | 511 | } |
527 | - | |
528 | - | |
529 | - | |
530 | 512 | return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); |
531 | 513 | } |
532 | 514 | |
533 | 515 | /** |
534 | - * 调用华大接口 | |
535 | - * | |
536 | - * @param sieveApplyOrderModel | |
537 | - * @param hospitalId | |
538 | - */ | |
539 | - private void callHuaDa(SieveApplyOrderModel sieveApplyOrderModel, String hospitalId) { | |
540 | - try{ | |
541 | - String sieveType = sieveApplyOrderModel.getSieveType(); | |
542 | - //if ("4".equals(HIS_VERSION)) { | |
543 | - if (StringUtils.isNotEmpty(sieveType) && "2".equals(sieveType)) { | |
544 | - final String productCode = "DX1331"; | |
545 | - HuadaSieveApplyOrderAddRequest request = new HuadaSieveApplyOrderAddRequest(); | |
546 | - // 产品编号 | |
547 | - request.setProductCode(productCode); | |
548 | - // 客户编号 | |
549 | - Organization organization = organizationService.getOrganization(Integer.parseInt(hospitalId)); | |
550 | - String shortCode = organization.getShortCode(); | |
551 | - request.setCustomerCode(shortCode); | |
552 | - // 孕妇姓名 | |
553 | - Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(sieveApplyOrderModel.getParentId())), Patients.class); | |
554 | - String username = patients.getUsername(); | |
555 | - request.setSampleName(username); | |
556 | - // 样品编号(如果是正常双胎的情况:样本编号后要加+D;如果是减胎的情况:样本编号后要加+V;如果是重抽血的情况:样本编号后要加+R;) | |
557 | - request.setSampleNum(sieveApplyOrderModel.getNumber()); | |
558 | - // 采样日期 | |
559 | - request.setBloodDate(DateUtil.getYmd(sieveApplyOrderModel.getCollectionDate())); | |
560 | - // 送检单唯一标识 | |
561 | - request.setExtBaseInfoId(sieveApplyOrderModel.getId()); | |
562 | - // 样品管类型 STRECK:STRECK | |
563 | - // EDTA:EDTA | |
564 | - // K牌采血管:K牌采血管 | |
565 | - // G牌采血管:G牌采血管 | |
566 | - String d = "1".equals(sieveApplyOrderModel.getFetusNum()) || "4".equals(sieveApplyOrderModel.getFetusNum()) ? "D" :""; | |
567 | - request.setTubeType(sieveApplyOrderModel.getYpglx() + d); | |
568 | - // 孕周(格式:18w+1)注:“w”必须小写,“+”号后面的天数必须是0~6 | |
569 | - request.setGestationalWeeks(sieveApplyOrderModel.getYunSize()); | |
570 | - // 证件类型(01:身份证、02:护照) | |
571 | - request.setZidcardType("01"); | |
572 | - // 孕妇联系电话 | |
573 | - request.setMotherPhoneNum(patients.getPhone()); | |
574 | - // 收费类型(样本用途)(工作量,只有收费、免费) | |
575 | - // | |
576 | - //{ | |
577 | - //1:科研收费 | |
578 | - // 2:科研免费 | |
579 | - // 3:临床收费 | |
580 | - // 4:临床免费 | |
581 | - // 咱们页面可以支持医生填写免费和收费,并且能统计。最终给华大传数据,所有用户默认成【临床收费】 | |
582 | - // | |
583 | - // 后台固定传参:3 | |
584 | - request.setChargeType("3"); | |
585 | - // 孕妇年龄 | |
586 | - request.setAge(DateUtil.getAge(patients.getBirth()).toString()); | |
587 | - // 末次月经,就诊末次月经 | |
588 | - request.setLmp(DateUtil.getYmd(patients.getLastMenses())); | |
589 | - // 是否是否体外受精-胚胎移植(IVF) | |
590 | - // { | |
591 | - // 0:是否IVF-否 | |
592 | - // 1:是否IVF-是 | |
593 | - request.setAdosculation(sieveApplyOrderModel.getIvf()); | |
594 | - // 既往史: 一年内异体输血 | |
595 | - // { | |
596 | - // 0:既往史: 一年内异体输血-无 | |
597 | - // 1:既往史: 一年内异体输血-有(不接受) | |
598 | - // } | |
599 | - request.setAllogeneticTransfusion(sieveApplyOrderModel.getYtsx()); | |
600 | - // 四周内异体细胞免疫 | |
601 | - // { | |
602 | - // 0:四周内异体细胞免疫-无 | |
603 | - // 1:四周内异体细胞免疫-有(不接受) | |
604 | - // } | |
605 | - request.setCellularImmunity(sieveApplyOrderModel.getYtxbzl()); | |
606 | - // 干细胞治疗 | |
607 | - // { | |
608 | - // 0:干细胞治疗-无 | |
609 | - // 1:干细胞治疗-有(不接受) | |
610 | - // } | |
611 | - request.setStemCell(sieveApplyOrderModel.getGxbzl()); | |
612 | - // 样本类型 | |
613 | - // | |
614 | - // { | |
615 | - //S051:样本类型-全血 | |
616 | - // } | |
617 | - request.setSampleType("S051"); | |
618 | - // 辅助检查(B超结果),页面传入什么输入 | |
619 | - // { | |
620 | - // 0:辅助检查(重要)-正常(单胎活) | |
621 | - // 1:辅助检查(重要)-正常(双胎活) | |
622 | - // 2:辅助检查(重要)-正常(多胎活) | |
623 | - // 3:辅助检查(重要)-异常(单胎) | |
624 | - // 4:辅助检查(重要)-异常(双胎) | |
625 | - // 5:辅助检查(重要)-异常(多胎) | |
626 | - // 6:辅助检查(重要)-减胎 | |
627 | - // } | |
628 | - request.setBtypeUltrasonic(sieveApplyOrderModel.getFetusNum()); | |
629 | - // 其他辅助筛查,页面传入什么输入 | |
630 | - // { | |
631 | - // 0:筛查模式-未做 | |
632 | - // 1:筛查模式-nt筛查 | |
633 | - // 2:筛查模式-早孕期筛查 | |
634 | - // 3:筛查模式-中孕期筛查 | |
635 | - // 4:筛查模式-早中孕期联合筛查 | |
636 | - // } | |
637 | - request.setScreeningModel(sieveApplyOrderModel.getSieveModel()); | |
638 | - request.setIdCard(patients.getCardNo()); | |
639 | - huadaSaveSampleInfo(request); | |
640 | - } | |
641 | - // } | |
642 | - }catch (Exception e){ | |
643 | - e.printStackTrace(); | |
644 | - logger.error("调用华大接口失败", e); | |
645 | - } | |
646 | - } | |
647 | - | |
648 | - /** | |
649 | 516 | * 查询转诊申请 |
650 | 517 | * |
651 | 518 | * @param id |
... | ... | @@ -1570,7 +1437,6 @@ |
1570 | 1437 | timestamp = timestamp.replaceAll(" ", "%20");//空格替换成 %20 |
1571 | 1438 | String syscode = signParams.get("syscode").toString(); |
1572 | 1439 | String sign = signParams.get("sign").toString(); |
1573 | - System.out.println(JsonUtil.obj2JsonString(map)); | |
1574 | 1440 | String s = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=saveSampleInfo&" + "timestamp=" + timestamp + "&syscode=" + syscode + "&sign=" + sign, map); |
1575 | 1441 | System.out.println(s); |
1576 | 1442 | //{"code":"200","msg":"success","rows":{"successedList":[{"msg":"INSP190001417198 ,样例号: 18S4074733R 保存成功!","result":true,"canseqId":"2018101700007123"}],"failedList":[]}} |
... | ... | @@ -1601,7 +1467,7 @@ |
1601 | 1467 | String data = null; |
1602 | 1468 | try { |
1603 | 1469 | //5.3.查询报告详情 |
1604 | - Map<String, Object> signParams = getSignParams(SYSCODE, SECRET); | |
1470 | + Map<String, Object> signParams = getSignParams(SYSCODE, SECRET); | |
1605 | 1471 | String timestamp1 = signParams.get("timestamp").toString(); |
1606 | 1472 | timestamp1 = timestamp1.replaceAll(" ", "%20");//空格替换成 %20 |
1607 | 1473 | String syscode1 = signParams.get("syscode").toString(); |
1608 | 1474 | |
1609 | 1475 | |
... | ... | @@ -1614,42 +1480,12 @@ |
1614 | 1480 | JSONObject jsonMapParams = new JSONObject(mapParams); |
1615 | 1481 | map1.put("params", jsonMapParams.toString()); |
1616 | 1482 | data = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=findReportDetail&" + "timestamp=" + timestamp1 + "&syscode=" + syscode1 + "&sign=" + sign1, map1); |
1617 | - System.out.println("data="+data); | |
1618 | 1483 | JSONObject jsonObject = JSONObject.parseObject(data); |
1619 | - System.out.println("json="+jsonObject.toJSONString()); | |
1620 | 1484 | Object rows = jsonObject.get("rows"); |
1621 | 1485 | HuadaCallbackModel huadaCallbackModel = JSONObject.parseObject(rows.toString(), HuadaCallbackModel.class); |
1622 | 1486 | System.out.println(huadaCallbackModel.toString()); |
1623 | 1487 | |
1624 | - String cardId = huadaCallbackModel.getCardId(); | |
1625 | - Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardId)), Patients.class); | |
1626 | - if (patients != null) { | |
1627 | - String patientsId = patients.getId(); | |
1628 | - SieveResultModel sieveResultModel = mongoTemplate.findOne(Query.query(Criteria.where("parentId").is(patientsId)), SieveResultModel.class); | |
1629 | - if (sieveResultModel != null) { | |
1630 | - Update update = new Update(); | |
1631 | - SieveResultModel model = getSieveResultModel(huadaCallbackModel, patientsId); | |
1632 | - Map<String, Object> object = BeanUtils.objectToObjectMap(model); | |
1633 | - Set<Map.Entry<String, Object>> entries = object.entrySet(); | |
1634 | - for (Map.Entry<String, Object> entry : entries) { | |
1635 | - Object entryValue = entry.getValue(); | |
1636 | - if (entryValue != null) { | |
1637 | - if (entryValue instanceof String) { | |
1638 | - if (StringUtils.isEmpty(entryValue.toString())) { | |
1639 | - continue; | |
1640 | - } | |
1641 | - } | |
1642 | - update.set(entry.getKey(), entry.getValue()); | |
1643 | - } | |
1644 | - } | |
1645 | - mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(sieveResultModel.getId())), update, SieveResultModel.class); | |
1646 | - logger.info(String.format("更新产筛结果: { %s }", update.toString())); | |
1647 | - } else { | |
1648 | - SieveResultModel model = getSieveResultModel(huadaCallbackModel, patientsId); | |
1649 | - mongoTemplate.insert(model); | |
1650 | - logger.info(String.format("新增产筛结果: { %s }", model.toString())); | |
1651 | - } | |
1652 | - } | |
1488 | + | |
1653 | 1489 | } catch (Exception e) { |
1654 | 1490 | e.printStackTrace(); |
1655 | 1491 | map.put("code", "500"); |
... | ... | @@ -1661,49 +1497,6 @@ |
1661 | 1497 | return map; |
1662 | 1498 | } |
1663 | 1499 | |
1664 | - /** | |
1665 | - * 组装 SieveResultModel | |
1666 | - * | |
1667 | - * @param huadaCallbackModel | |
1668 | - * @param patientsId | |
1669 | - * @return | |
1670 | - */ | |
1671 | - private SieveResultModel getSieveResultModel(final HuadaCallbackModel huadaCallbackModel, String patientsId) { | |
1672 | - SieveResultModel newModel = new SieveResultModel(); | |
1673 | - newModel.setResultTime(new Date()); | |
1674 | - newModel.setReportType("1"); | |
1675 | - newModel.setParentId(patientsId); | |
1676 | - newModel.setSampleInfoId(huadaCallbackModel.getSampleInfoId()); | |
1677 | - newModel.setSampleReportId(huadaCallbackModel.getSampleReportId()); | |
1678 | - // 底风险0 高风险2 | |
1679 | - newModel.setSbst(huadaCallbackModel.getT18().contains("未检出") ? "0" : "2"); | |
1680 | - newModel.setStzhz13(huadaCallbackModel.getT13().contains("未检出") ? "0" : "2"); | |
1681 | - newModel.setTszhz(huadaCallbackModel.getT21().contains("未检出") ? "0" : "2"); | |
1682 | - | |
1683 | - final String[] split18 = huadaCallbackModel.getT18Risk().split("/"); | |
1684 | - final String[] split13 = huadaCallbackModel.getT13Risk().split("/"); | |
1685 | - final String[] split21 = huadaCallbackModel.getT21Risk().split("/"); | |
1686 | - /*Map<String, String> map18 = Maps.newHashMap(); | |
1687 | - map18.put("valueOne", split18[0]); | |
1688 | - map18.put("valueTwo", split18[1]); | |
1689 | - map18.put("valueKey", huadaCallbackModel.getZ18ZScore()); | |
1690 | - Map<String, String> map13 = Maps.newHashMap(); | |
1691 | - map13.put("valueOne", split13[0]); | |
1692 | - map13.put("valueTwo", split13[1]); | |
1693 | - map13.put("valueKey", huadaCallbackModel.getZ13ZScore()); | |
1694 | - Map<String, String> map21 = Maps.newHashMap(); | |
1695 | - map21.put("valueOne", split21[0]); | |
1696 | - map21.put("valueTwo", split21[1]); | |
1697 | - map21.put("valueKey", huadaCallbackModel.getZ21ZScore());*/ | |
1698 | - newModel.setSbstValue(new HashMap<String, String>(){{ | |
1699 | - put("valueOne", split18[0]);put("valueTwo", split18[1]);put("valueKey", huadaCallbackModel.getZ18ZScore()); }}); | |
1700 | - newModel.setStzhz13Value(new HashMap<String, String>(){{ | |
1701 | - put("valueOne", split13[0]);put("valueTwo", split13[1]);put("valueKey", huadaCallbackModel.getZ13ZScore()); }}); | |
1702 | - newModel.setTszhzValue(new HashMap<String, String>(){{ | |
1703 | - put("valueOne", split21[0]);put("valueTwo", split21[1]);put("valueKey", huadaCallbackModel.getZ21ZScore()); }}); | |
1704 | - return newModel; | |
1705 | - } | |
1706 | - | |
1707 | 1500 | public void huadaFtp(String sampleReportId,HttpServletResponse response) { |
1708 | 1501 | |
1709 | 1502 | try { |
... | ... | @@ -1732,7 +1525,7 @@ |
1732 | 1525 | } |
1733 | 1526 | |
1734 | 1527 | } |
1735 | - public void huadaGetReportType(String sampleReportId) { | |
1528 | + public String huadaGetReportType(String sampleReportId) { | |
1736 | 1529 | try { |
1737 | 1530 | Map<String, Object> signParams = getSignParams(SYSCODE, SECRET); |
1738 | 1531 | String timestamp1 = signParams.get("timestamp").toString(); |
1739 | 1532 | |
1740 | 1533 | |
... | ... | @@ -1745,11 +1538,18 @@ |
1745 | 1538 | JSONObject jsonMapParams = new JSONObject(mapParams); |
1746 | 1539 | map1.put("params", jsonMapParams.toString()); |
1747 | 1540 | String data = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=getReportType&" + "timestamp=" + timestamp1 + "&syscode=" + syscode1 + "&sign=" + sign1, map1); |
1748 | - System.out.println(data); | |
1749 | - | |
1541 | + if(!data.isEmpty()){ | |
1542 | + net.sf.json.JSONObject jsonObject11 = net.sf.json.JSONObject.fromObject(data); | |
1543 | + net.sf.json.JSONArray rows = (net.sf.json.JSONArray)jsonObject11.get("rows"); | |
1544 | + net.sf.json.JSONObject reporttype = (net.sf.json.JSONObject)rows.get(0); | |
1545 | + String reporttype1 = reporttype.get("REPORTTYPE").toString(); | |
1546 | + return reporttype1; | |
1547 | + } | |
1750 | 1548 | } catch (Exception e) { |
1751 | 1549 | e.printStackTrace(); |
1550 | + return ""; | |
1752 | 1551 | } |
1552 | + return ""; | |
1753 | 1553 | } |
1754 | 1554 | /** |
1755 | 1555 | * 根据byte数组,生成文件 |