예제 #1
0
        public static Common.Models.Events.EventTask Create(Common.Models.Events.EventTask model,
                                                            Common.Models.Account.Users creator)
        {
            DBOs.Events.EventTask          dbo;
            Common.Models.Events.EventTask currentModel;

            if (!model.Id.HasValue)
            {
                model.Id = Guid.NewGuid();
            }
            model.Created   = model.Modified = DateTime.UtcNow;
            model.CreatedBy = model.ModifiedBy = creator;

            currentModel = Get(model.Task.Id.Value, model.Event.Id.Value);

            if (currentModel != null)
            {
                return(currentModel);
            }

            dbo = Mapper.Map <DBOs.Events.EventTask>(model);

            using (IDbConnection conn = Database.Instance.GetConnection())
            {
                conn.Execute("INSERT INTO \"event_task\" (\"id\", \"task_id\", \"event_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " +
                             "VALUES (@Id, @TaskId, @EventId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)",
                             dbo);
            }

            return(model);
        }
예제 #2
0
 public static void Delete(Common.Models.Events.EventTask model, Common.Models.Account.Users deleter)
 {
     using (IDbConnection conn = Database.Instance.GetConnection())
     {
         conn.Execute("DELETE FROM \"event_task\" WHERE \"id\"=@Id",
                      new { Id = model.Id.Value });
     }
 }
예제 #3
0
        public static void Delete(Common.Models.Events.EventTask model,
                                  Common.Models.Account.Users deleter,
                                  IDbConnection conn = null, bool closeConnection = true)
        {
            conn = DataHelper.OpenIfNeeded(conn);

            conn.Execute("DELETE FROM \"event_task\" WHERE \"id\"=@Id",
                         new { Id = model.Id.Value });

            DataHelper.Close(conn, closeConnection);
        }
예제 #4
0
        public static Common.Models.Events.EventTask RelateToTask(Common.Models.Events.Event model,
                                                                  Common.Models.Tasks.Task task,
                                                                  Common.Models.Account.Users actor,
                                                                  IDbConnection conn = null, bool closeConnection = true)
        {
            Common.Models.Events.EventTask et;
            DBOs.Events.EventTask          dbo = null;

            et = Data.Events.EventTask.Get(task.Id.Value, model.Id.Value);

            if (et != null)
            {
                return(et);
            }

            et           = new Common.Models.Events.EventTask();
            et.Id        = Guid.NewGuid();
            et.CreatedBy = et.ModifiedBy = actor;
            et.Created   = et.Modified = DateTime.UtcNow;
            et.Event     = model;
            et.Task      = task;

            dbo = Mapper.Map <DBOs.Events.EventTask>(et);

            conn = DataHelper.OpenIfNeeded(conn);

            if (conn.Execute("INSERT INTO \"event_task\" (\"id\", \"event_id\", \"task_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " +
                             "VALUES (@Id, @EventId, @TaskId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)",
                             dbo) > 0)
            {
                model.Id = conn.Query <DBOs.Events.EventTask>("SELECT currval(pg_get_serial_sequence('event_task', 'id')) AS \"id\"").Single().Id;
            }

            DataHelper.Close(conn, closeConnection);

            return(et);
        }
예제 #5
0
        public static Common.Models.Events.EventTask RelateToTask(Common.Models.Events.Event model,
            Common.Models.Tasks.Task task,
            Common.Models.Account.Users actor)
        {
            Common.Models.Events.EventTask et;
            DBOs.Events.EventTask dbo = null;

            et = Data.Events.EventTask.Get(task.Id.Value, model.Id.Value);

            if (et != null)
                return et;

            et = new Common.Models.Events.EventTask();
            et.Id = Guid.NewGuid();
            et.CreatedBy = et.ModifiedBy = actor;
            et.Created = et.Modified = DateTime.UtcNow;
            et.Event = model;
            et.Task = task;

            dbo = Mapper.Map<DBOs.Events.EventTask>(et);

            using (IDbConnection conn = Database.Instance.GetConnection())
            {
                conn.Execute("INSERT INTO \"event_task\" (\"id\", \"event_id\", \"task_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " +
                    "VALUES (@Id, @EventId, @TaskId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)",
                    dbo);
            }

            return et;
        }
예제 #6
0
        public static Common.Models.Events.EventTask RelateToTask(Common.Models.Events.Event model,
            Common.Models.Tasks.Task task,
            Common.Models.Account.Users actor,
            IDbConnection conn = null, bool closeConnection = true)
        {
            Common.Models.Events.EventTask et;
            DBOs.Events.EventTask dbo = null;

            et = Data.Events.EventTask.Get(task.Id.Value, model.Id.Value);

            if (et != null)
                return et;

            et = new Common.Models.Events.EventTask();
            et.Id = Guid.NewGuid();
            et.CreatedBy = et.ModifiedBy = actor;
            et.Created = et.Modified = DateTime.UtcNow;
            et.Event = model;
            et.Task = task;

            dbo = Mapper.Map<DBOs.Events.EventTask>(et);

            conn = DataHelper.OpenIfNeeded(conn);

            if (conn.Execute("INSERT INTO \"event_task\" (\"id\", \"event_id\", \"task_id\", \"utc_created\", \"utc_modified\", \"created_by_user_pid\", \"modified_by_user_pid\") " +
                "VALUES (@Id, @EventId, @TaskId, @UtcCreated, @UtcModified, @CreatedByUserPId, @ModifiedByUserPId)",
                dbo) > 0)
                model.Id = conn.Query<DBOs.Events.EventTask>("SELECT currval(pg_get_serial_sequence('event_task', 'id')) AS \"id\"").Single().Id;

            DataHelper.Close(conn, closeConnection);

            return et;
        }