public static Common.Models.Events.EventNote Create(Common.Models.Events.EventNote model, Common.Models.Account.Users creator) { model.Created = model.Modified = DateTime.UtcNow; model.CreatedBy = model.ModifiedBy = creator; DBOs.Events.EventNote dbo = Mapper.Map <DBOs.Events.EventNote>(model); using (IDbConnection conn = Database.Instance.GetConnection()) { Common.Models.Events.EventNote currentModel = Get(model.Event.Id.Value, model.Note.Id.Value); if (currentModel != null) { // Update conn.Execute("UPDATE \"event_note\" SET \"utc_modified\"=@UtcModified, \"modified_by_user_pid\"=@ModifiedByUserPId " + "\"utc_disabled\"=null, \"disabled_by_user_pid\"=null WHERE \"id\"=@Id", dbo); model.Created = currentModel.Created; model.CreatedBy = currentModel.CreatedBy; } else { // Create conn.Execute("INSERT INTO \"event_note\" (\"id\", \"note_id\", \"event_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " + "VALUES (@Id, @NoteId, @EventId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)", dbo); } } return(model); }
public static Common.Models.Events.EventNote Create(Common.Models.Events.EventNote model, Common.Models.Account.Users creator, IDbConnection conn = null, bool closeConnection = true) { model.Created = model.Modified = DateTime.UtcNow; model.CreatedBy = model.ModifiedBy = creator; DBOs.Events.EventNote dbo = Mapper.Map <DBOs.Events.EventNote>(model); conn = DataHelper.OpenIfNeeded(conn); Common.Models.Events.EventNote currentModel = Get(model.Event.Id.Value, model.Note.Id.Value, conn, false); if (currentModel != null) { // Update conn.Execute("UPDATE \"event_note\" SET \"utc_modified\"=@UtcModified, \"modified_by_user_pid\"=@ModifiedByUserPId " + "\"utc_disabled\"=null, \"disabled_by_user_pid\"=null WHERE \"id\"=@Id", dbo); model.Created = currentModel.Created; model.CreatedBy = currentModel.CreatedBy; } else { // Create if (conn.Execute("INSERT INTO \"event_note\" (\"id\", \"note_id\", \"event_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " + "VALUES (@Id, @NoteId, @EventId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)", dbo) > 0) { model.Id = conn.Query <DBOs.Events.EventNote>("SELECT currval(pg_get_serial_sequence('event_note', 'id')) AS \"id\"").Single().Id; } } DataHelper.Close(conn, closeConnection); return(model); }