From 3191b29c31471b0f9a68fe4caab3035656d184c7 Mon Sep 17 00:00:00 2001 From: linfso Date: Sat, 1 Jun 2024 14:30:14 +0800 Subject: [PATCH] md --- .../erp/web/emis/EmisCommonController.java | 6 +-- .../erp/emis/service/EmisBaseService.java | 45 ++++++++++++++----- .../xdadan/erp/emis/utils/WaybillHelper.java | 17 +++++++ 3 files changed, 54 insertions(+), 14 deletions(-) diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisCommonController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisCommonController.java index 542737258..b91f98989 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisCommonController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisCommonController.java @@ -33,6 +33,7 @@ import com.xdadan.erp.emis.domain.vo.Reciever; import com.xdadan.erp.emis.domain.vo.Sender; import com.xdadan.erp.emis.domain.vo.WaybillOrder; import com.xdadan.erp.emis.service.*; +import com.xdadan.erp.emis.utils.WaybillHelper; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; @@ -233,6 +234,7 @@ public class EmisCommonController extends BaseController } + @RequestMapping("/getPrintDataByPrinter") public AjaxResult getPrintDataByPrinter(HttpServletRequest request, HttpServletResponse response, String billCode, String billCodeRange,String tplCode, String lang, String printType) { @@ -249,9 +251,7 @@ public class EmisCommonController extends BaseController printItem.put("billCode",billCode); if(order!=null) { - // 将对象中为空的字段 不忽略,value从null转换为"" - String billDetail = JSON.toJSONString(order,SerializerFeature.WriteNullStringAsEmpty); - logger.debug("==>PrintBillDetail"+billDetail); + String billDetail = WaybillHelper.cvtBillToJsonString(order); printItem.put("billDetail", Base64.getEncoder().encodeToString(billDetail.getBytes(Charset.forName("UTF-8")))); printItem.put("isEncrpt",false); printItem.put("printCount",1); diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java index 61f13b563..584018dc9 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java @@ -13,7 +13,12 @@ package com.xdadan.erp.emis.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.IdUtil; + import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; + import com.alibaba.fastjson.serializer.PropertyFilter; + import com.alibaba.fastjson.serializer.SerializeFilter; + import com.alibaba.fastjson.serializer.SerializerFeature; + import com.alibaba.fastjson.serializer.ValueFilter; import com.fasterxml.jackson.annotation.JsonFormat; import com.xdadan.erp.common.core.domain.entity.SysUser; import com.xdadan.erp.common.utils.DateUtils; @@ -35,6 +40,7 @@ package com.xdadan.erp.emis.service; import com.xdadan.erp.emis.utils.WaybillHelper; import com.xdadan.erp.emis.utils.sensitive.Convert; import com.xdadan.erp.system.mapper.SysUserMapper; + import jdk.nashorn.internal.runtime.Undefined; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -1151,19 +1157,36 @@ public class EmisBaseService { String mainBillCode="T70803005000020002"; - boolean isSubBill=false; - // 判断是否是子单 - String queryBillCode=""; - if(mainBillCode.startsWith("T7080") && mainBillCode.length()>14 ){ - isSubBill = true; - queryBillCode=mainBillCode.substring(0,14); - String subBillSuffix=mainBillCode.substring(14); - System.out.println(mainBillCode); - System.out.println(queryBillCode); - System.out.println(Integer.valueOf(subBillSuffix)); - } +// boolean isSubBill=false; +// // 判断是否是子单 +// String queryBillCode=""; +// if(mainBillCode.startsWith("T7080") && mainBillCode.length()>14 ){ +// isSubBill = true; +// queryBillCode=mainBillCode.substring(0,14); +// String subBillSuffix=mainBillCode.substring(14); +// System.out.println(mainBillCode); +// System.out.println(queryBillCode); +// System.out.println(Integer.valueOf(subBillSuffix)); +// } + + Map order = new HashMap(); + order.put("s1","123"); + order.put("s2",null); + + + + +// JSONObject result = JSON.parseObject(JSON.toJSONString(order,new BigDecimalValueFilter(),SerializerFeature.WriteMapNullValue,SerializerFeature.WriteNullStringAsEmpty,SerializerFeature.WriteNullNumberAsZero)) +// String billDetail = JSON.toJSONString(order, serializerFeatures); + String billDetail = cvtBillToJsonString(order); + System.out.println(billDetail); + } + + + + } \ No newline at end of file diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/utils/WaybillHelper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/utils/WaybillHelper.java index 606e7f3ba..261622b01 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/utils/WaybillHelper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/utils/WaybillHelper.java @@ -2,7 +2,10 @@ package com.xdadan.erp.emis.utils; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.IdUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.serializer.SerializerFeature; +import com.alibaba.fastjson.serializer.ValueFilter; import com.xdadan.erp.common.utils.DBUtil; import com.xdadan.erp.common.utils.HTTPHelperV3; import com.xdadan.erp.common.utils.StringUtils; @@ -215,4 +218,18 @@ public class WaybillHelper { e.printStackTrace(); } } + + /** + * 保留运单的所有字段 + * @param obj + * @return + */ + public static String cvtBillToJsonString(Object obj) { + return JSON.toJSONString(obj, (ValueFilter) (object, name, value) -> { + if(value == null){ + return ""; + } + return value; + }, SerializerFeature.WriteMapNullValue); + } }