修改导表日期处理

Test_HIR_Net8
hang 2024-11-11 12:23:58 +08:00
parent 4d4af84716
commit 28587c8e91
4 changed files with 29 additions and 21 deletions

View File

@ -377,7 +377,7 @@ namespace IRaCIS.Core.Application.Contracts
//public bool IsUrgent { get; set; } //public bool IsUrgent { get; set; }
//[ExcelColumn(Name = "FirstGiveMedicineTime", Format = "yyyy-MM-dd")] //[ExcelColumn(Name = "FirstGiveMedicineTime", Format = "yyyy-MM-dd")]
public DateTime? FirstGiveMedicineTime { get; set; } public DateOnly? FirstGiveMedicineTime { get; set; }
public string FirstGiveMedicineTimeStr => FirstGiveMedicineTime?.ToString("yyyy-MM-dd"); public string FirstGiveMedicineTimeStr => FirstGiveMedicineTime?.ToString("yyyy-MM-dd");

View File

@ -263,8 +263,7 @@ public partial class Trial : BaseFullDeleteAuditEntity
[Comment("项目术语配置Json字符串")] [Comment("项目术语配置Json字符串")]
[StringLength(2000)] [StringLength(2000)]
public List<TrialObjectNameConfig> TrialObjectNameList { get; set; } public List<TrialObjectNameConfig> TrialObjectNameList { get; set; }
//[NotMapped]
//public List<TrialObjectNameConfig> TrialObjectNameList => JsonConvert.DeserializeObject<List<TrialObjectNameConfig>>(TrialObjectNameConfigStr) ?? new List<TrialObjectNameConfig>();
} }
[ComplexType] [ComplexType]
@ -275,5 +274,4 @@ public class TrialObjectNameConfig
public string TrialName { get; set; } public string TrialName { get; set; }
public bool IsDefault { get; set; } public bool IsDefault { get; set; }
} }

View File

@ -67,13 +67,13 @@ public class IRaCISDBContext : DbContext
// 使用部分加密值转换器,前 2 个字符不加密,方便模糊搜索 // 使用部分加密值转换器,前 2 个字符不加密,方便模糊搜索
entity.Property(e => e.Name).HasConversion(new PartialEncryptionConverter(2)); entity.Property(e => e.Name).HasConversion(new PartialEncryptionConverter(2));
entity.OwnsMany(x => x.TestJsonObjectLsit, ownedNavigationBuilder => //entity.OwnsMany(x => x.TestJsonObjectLsit, ownedNavigationBuilder =>
{ //{
ownedNavigationBuilder.ToJson(); // ownedNavigationBuilder.ToJson();
}); //});
//entity.Property(e => e.TestJsonObjectLsit).HasConversion(v => v == null ? "[]" : JsonConvert.SerializeObject(v), entity.Property(e => e.TestJsonObjectLsit).HasConversion(v => v == null ? "[]" : JsonConvert.SerializeObject(v),
// v => string.IsNullOrEmpty(v) ? null : JsonConvert.DeserializeObject<List<TestJsonObject>>(v)); v => string.IsNullOrEmpty(v) ? null : JsonConvert.DeserializeObject<List<TestJsonObject>>(v));
}); });
modelBuilder.Entity<Trial>(entity => modelBuilder.Entity<Trial>(entity =>
@ -81,7 +81,7 @@ public class IRaCISDBContext : DbContext
//项目术语配置 //项目术语配置
entity.OwnsMany(x => x.TrialObjectNameList, ownedNavigationBuilder => entity.OwnsMany(x => x.TrialObjectNameList, ownedNavigationBuilder =>
{ {
ownedNavigationBuilder.ToJson(); ownedNavigationBuilder.ToJson() ;
}); });
}); });
@ -595,8 +595,9 @@ public class TestLength : Entity
[StringLength(1000)] [StringLength(1000)]
public List<TestEnum> TestEnumList { get; set; } = new List<TestEnum>(); public List<TestEnum> TestEnumList { get; set; } = new List<TestEnum>();
[MaxLength]
public List<TestJsonObject> TestJsonObjectLsit { get; set; } public List<TestJsonObject> TestJsonObjectLsit { get; set; }
public DateOnly? TestDate { get; set; }
} }

View File

@ -19,7 +19,7 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
} }
public override bool CanConvert(Type objectType) public override bool CanConvert(Type objectType)
{ {
return objectType == typeof(DateTime) || objectType == typeof(DateTime?); return objectType == typeof(DateTime) || objectType == typeof(DateTime?);
} }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
@ -37,7 +37,7 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
writer.WriteNull(); writer.WriteNull();
} }
} }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
@ -58,7 +58,7 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
} }
public class ExportExcelConverterDate public class ExportExcelConverterDate
{ {
public static T ConvertToClientTimeInObject<T>(T obj, string timeZoneId) public static T ConvertToClientTimeInObject<T>(T obj, string timeZoneId)
{ {
@ -67,7 +67,7 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
return obj; return obj;
// 将对象序列化为 JSON 字符串 // 将对象序列化为 JSON 字符串
string json = JsonConvert.SerializeObject(obj,new JsonSerializerSettings() { DateFormatString= "yyyy-MM-dd HH:mm:ss.fff" }); string json = JsonConvert.SerializeObject(obj, new JsonSerializerSettings() { DateFormatString = "yyyy-MM-dd HH:mm:ss.fff" });
// 将 JSON 字符串反序列化回对象 // 将 JSON 字符串反序列化回对象
var deserializedObj = JsonConvert.DeserializeObject<T>(json, new JsonSerializerSettings var deserializedObj = JsonConvert.DeserializeObject<T>(json, new JsonSerializerSettings
@ -80,7 +80,7 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
return deserializedObj!; return deserializedObj!;
} }
public static string DateTimeInternationalToString(DateTime? dateTime, string? clientZoneId=null) public static string DateTimeInternationalToString(DateTime? dateTime, string? clientZoneId = null)
{ {
var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US; var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US;
@ -94,15 +94,24 @@ namespace IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson
needDealTime = TimeZoneInfo.ConvertTime(needDealTime, TimeZoneInfo.Local, TimeZoneInfo.FindSystemTimeZoneById(clientZoneId)); needDealTime = TimeZoneInfo.ConvertTime(needDealTime, TimeZoneInfo.Local, TimeZoneInfo.FindSystemTimeZoneById(clientZoneId));
} }
if (isEn_US) if (needDealTime.Hour == 0 && needDealTime.Minute == 0 && needDealTime.Second == 0)
{ {
//暂时保持一致,等需求确认,修改英文要展示的日期格式 return needDealTime.ToString("yyyy-MM-dd");
return needDealTime.ToString("yyyy-MM-dd HH:mm:ss");
} }
else else
{ {
return needDealTime.ToString("yyyy-MM-dd HH:mm:ss"); if (isEn_US)
{
//暂时保持一致,等需求确认,修改英文要展示的日期格式
return needDealTime.ToString("yyyy-MM-dd HH:mm:ss");
}
else
{
return needDealTime.ToString("yyyy-MM-dd HH:mm:ss");
}
} }
} }
else else
{ {