From 4ffe57b4856f35565aac3f33718b55d0df62f0ba Mon Sep 17 00:00:00 2001 From: wet <1034391973@qq.com> Date: Fri, 17 Mar 2023 17:41:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BookingOrder/BookingOrderService.cs | 7 ++- .../Service/DataSync/Dto/BookingOrderDto.cs | 31 ++++++++++ .../Service/DataSync/Dto/DjyCustomerDto.cs | 4 ++ Myshipping.Core/Myshipping.Core.xml | 9 +-- Myshipping.Core/Util/JsonUtil.cs | 62 +++++++++++-------- 5 files changed, 82 insertions(+), 31 deletions(-) diff --git a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs index 9eedf8f7..9acfe01e 100644 --- a/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs +++ b/Myshipping.Application/Service/BookingOrder/BookingOrderService.cs @@ -324,7 +324,7 @@ namespace Myshipping.Application var list = entities.Adapt>(); - var status = await _repBookingStatus.AsQueryable().ToListAsync(); + var status = await _repBookingStatus.AsQueryable().ToListAsync(); var remark = await _bookingremark.AsQueryable().ToListAsync(); @@ -364,8 +364,11 @@ namespace Myshipping.Application { throw Oops.Bah("请传入正常数据!"); } + if (!JsonUtil.TrimFields(input)) { + throw Oops.Bah("l录入字符存在中文"); + } + JsonUtil.PropToUpper(input, "ORDNO", "BSSTATUS", "YardContract", "YardContractTel", "YardContractEmail", "MARKS", "DESCRIPTION", "CONSIGNEENAME", "SHIPPERNAME", "NOTIFYPARTYNAME"); - JsonUtil.TrimFields(input); if (input.ctnInputs != null) { var groupList = input.ctnInputs.Where(x => x.CTNNUM > 0).GroupBy(c => c.CTNALL).Select(g => $"{g.Key}*{g.Sum(gg => gg.CTNNUM)}"); diff --git a/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs b/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs index 46a3f69d..b4fdfb87 100644 --- a/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs +++ b/Myshipping.Application/Service/DataSync/Dto/BookingOrderDto.cs @@ -1236,5 +1236,36 @@ namespace Myshipping.Application.Service.DataSync.Dto /// 品名 /// public string GOODSNAME { get; set; } + + + + public string PKGSTOTAL { get; set; } + + + + public string KGSTOTAL { get; set; } + + + + public string CBMTOTAL { get; set; } + + public string ROUTEID { get; set; } + + + + + public string ROUTE { get; set; } + + + public string Warehouse { get; set; } + + + + + public string WarehouseID { get; set; } + + + + public string EPCode { get; set; } } } diff --git a/Myshipping.Application/Service/DataSync/Dto/DjyCustomerDto.cs b/Myshipping.Application/Service/DataSync/Dto/DjyCustomerDto.cs index e0ee03d4..da4169b8 100644 --- a/Myshipping.Application/Service/DataSync/Dto/DjyCustomerDto.cs +++ b/Myshipping.Application/Service/DataSync/Dto/DjyCustomerDto.cs @@ -127,6 +127,10 @@ namespace Myshipping.Application /// public string Remark { get; set; } + /// + /// 服务项目 + /// + public string ServiceItem { get; set; } /// /// 联系人 /// diff --git a/Myshipping.Core/Myshipping.Core.xml b/Myshipping.Core/Myshipping.Core.xml index 1e64146c..14c53fcb 100644 --- a/Myshipping.Core/Myshipping.Core.xml +++ b/Myshipping.Core/Myshipping.Core.xml @@ -17033,15 +17033,16 @@ 数据对象 不需要转大写的字段 - + - 处理所有时间字段,将Datetime.Min设置为null + 全角改为半角 - + + - 去空格 + 长TAB键的识别替换空格 diff --git a/Myshipping.Core/Util/JsonUtil.cs b/Myshipping.Core/Util/JsonUtil.cs index 2136a3ef..6a90d90a 100644 --- a/Myshipping.Core/Util/JsonUtil.cs +++ b/Myshipping.Core/Util/JsonUtil.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; +using System.Text.RegularExpressions; using Furion.JsonSerialization; using Newtonsoft.Json; using Newtonsoft.Json.Linq; @@ -138,12 +139,18 @@ public static class JsonUtil { prop.SetValue(model, ToDBC(sourceVal.ToString().ToUpper())); } + } } } } } + /// + /// 全角改为半角 + /// + /// + /// public static string ToDBC(string input) { char[] c = input.ToCharArray(); @@ -160,32 +167,10 @@ public static class JsonUtil return new string(c); } - - /// - /// 处理所有时间字段,将Datetime.Min设置为null - /// - /// - public static void MinDateToNull(object model) - { - var props = model.GetType().GetProperties(); - foreach (PropertyInfo prop in props) - { - if (prop.PropertyType == typeof(DateTime?)) - { - DateTime? sourceVal = (DateTime?)prop.GetValue(model); - if (sourceVal != null && sourceVal.HasValue && sourceVal.Value == DateTime.MinValue) - { - prop.SetValue(model, null); - } - } - } - } - - /// - /// 去空格 + /// 长TAB键的识别替换空格 /// - public static void TrimFields(object model) + public static bool TrimFields(object model) { var props = model.GetType().GetProperties(); foreach (PropertyInfo prop in props) @@ -196,9 +181,36 @@ public static class JsonUtil object sourceVal = prop.GetValue(model); if (sourceVal != null) { - prop.SetValue(model, ToDBC(sourceVal.ToString().Trim())); + + prop.SetValue(model, sourceVal.ToString().Replace(" ", " ")); + prop.SetValue(model, sourceVal.ToString().Replace(" "," ")); + prop.SetValue(model, sourceVal.ToString().Replace(",", ",")); + prop.SetValue(model, sourceVal.ToString().Replace("。", ".")); + prop.SetValue(model, sourceVal.ToString().Replace("?", "?")); + prop.SetValue(model, sourceVal.ToString().Replace("!", "!")); + prop.SetValue(model, sourceVal.ToString().Replace("《", "<<")); + prop.SetValue(model, sourceVal.ToString().Replace("》", ">>")); + prop.SetValue(model, sourceVal.ToString().Replace("》", ">>")); + prop.SetValue(model, sourceVal.ToString().Replace(";", ";")); + prop.SetValue(model, sourceVal.ToString().Replace("‘", "'")); + prop.SetValue(model, sourceVal.ToString().Replace("’", "'")); + prop.SetValue(model, sourceVal.ToString().Replace("、", ",")); + if (Regex.IsMatch(sourceVal.ToString(), @"[\u4e00-\u9fa5]")&&!(propName.ToUpper()=="YARD"|| propName.ToUpper() == "CARRIER" || propName.ToUpper() == "YARDREMARK" || propName.ToUpper() == "SOREMARK" + || propName.ToUpper() == "SIREMARK" || propName.ToUpper() == "OP" || propName.ToUpper() == "DOC" || propName.ToUpper() == "SALE" || propName.ToUpper() == "CUSTSERVICE" + || propName.ToUpper() == "CUSTOMERNAME" || propName.ToUpper() == "SIREMARK" || propName.ToUpper() == "SHIPAGENCY" + )) { + return false; + } + + + + } + + + } } + return true; } }