From ddfda2d463753a6e259e646683c6dba0676024c2 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sun, 10 Jul 2022 14:01:27 +0800 Subject: [PATCH] Code optimization --- .../MySql/SqlBuilder/MySqlInsertBuilder.cs | 32 +++++++++++++++---- .../MySql/SqlBuilder/MySqlUpdateBuilder.cs | 32 +++++++++++++++---- 2 files changed, 52 insertions(+), 12 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs index 0522ff8bc..c22d04c5d 100644 --- a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs @@ -44,12 +44,11 @@ namespace SqlSugar var type = UtilMethods.GetUnderType(value.GetType()); if (type == UtilConstants.DateType) { - var date = value.ObjToDate(); - if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) - { - date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); - } - return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + return GetDateTimeString(value); + } + else if (value is DateTimeOffset) + { + return GetDateTimeOffsetString(value); } else if (type == UtilConstants.ByteArrayType) { @@ -84,6 +83,27 @@ namespace SqlSugar } } } + + private object GetDateTimeOffsetString(object value) + { + var date = UtilMethods.ConvertFromDateTimeOffset((DateTimeOffset)value); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } + + private object GetDateTimeString(object value) + { + var date = value.ObjToDate(); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } + private string GetString(object value) { var result = value.ToString(); diff --git a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs index 7a6857324..66841140d 100644 --- a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs @@ -106,12 +106,11 @@ namespace SqlSugar var type = UtilMethods.GetUnderType(value.GetType()); if (type == UtilConstants.DateType) { - var date = value.ObjToDate(); - if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) - { - date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); - } - return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + return GetDateTimeString(value); + } + else if (value is DateTimeOffset) + { + return GetDateTimeOffsetString(value); } else if (type == UtilConstants.ByteArrayType) { @@ -154,6 +153,27 @@ namespace SqlSugar } } } + + private object GetDateTimeString(object value) + { + var date = value.ObjToDate(); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } + + private object GetDateTimeOffsetString(object value) + { + var date = UtilMethods.ConvertFromDateTimeOffset((DateTimeOffset)value); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } + private string GetString(object value) { var result = value.ToString();