// Copyright (c) 2023-present schick Informatik // Description: Shadow class to track predefined waste disposal providers using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Text; using System.Threading.Tasks; namespace bsmd.database { public class WasteDisposalServiceProvider_Template : DatabaseEntityAsync, IComparable { #region Construction public WasteDisposalServiceProvider_Template() { this.tablename = "[dbo].[WasteDisposalServiceProvider_Template]"; } #endregion #region Properties [MaxLength(99)] public string WasteDisposalServiceProviderName { get; set; } #endregion #region DatabaseEntity implementation public override List LoadList(IDataReader reader) { List result = new List(); while (reader.Read()) { WasteDisposalServiceProvider_Template wdsp_t = new WasteDisposalServiceProvider_Template(); wdsp_t.id = reader.GetGuid(0); if (!reader.IsDBNull(1)) wdsp_t.WasteDisposalServiceProviderName = reader.GetString(1); result.Add(wdsp_t); } reader.Close(); return result; } public override void PrepareLoadCommand(IDbCommand cmd, Message.LoadFilter filter, params object[] criteria) { cmd.CommandText = string.Format("SELECT Id, WasteDisposalServiceProviderName FROM {0} ", this.Tablename); } public override void PrepareSave(IDbCommand cmd) { SqlCommand scmd = cmd as SqlCommand; if (!this.WasteDisposalServiceProviderName.IsNullOrEmpty()) scmd.Parameters.AddWithValue("@P1", this.WasteDisposalServiceProviderName); else scmd.Parameters.AddWithValue("@P1", DBNull.Value); if (this.IsNew) { this.CreateId(); scmd.Parameters.AddWithValue("@ID", this.Id); cmd.CommandText = string.Format("INSERT INTO {0} (Id, WasteDisposalServiceProviderName) VALUES (@ID, @P1)", this.Tablename); } else { cmd.CommandText = string.Format("UPDATE {0} SET WasteDisposalServiceProviderName = @P1 WHERE Id = @ID", this.Tablename); scmd.Parameters.AddWithValue("@ID", this.Id); } } #endregion #region IComparable implementation public int CompareTo(object obj) { if (obj is WasteDisposalServiceProvider_Template) this.WasteDisposalServiceProviderName.CompareTo(((WasteDisposalServiceProvider_Template)obj).WasteDisposalServiceProviderName); return 0; } protected override DatabaseEntityAsync ReadRowFromReader(IDataReader reader) { WasteDisposalServiceProvider_Template wdsp_t = null; if(reader != null) { wdsp_t = new WasteDisposalServiceProvider_Template(); wdsp_t.id = reader.GetGuid(0); if (!reader.IsDBNull(1)) wdsp_t.WasteDisposalServiceProviderName = reader.GetString(1); } return wdsp_t; } #endregion } }