public static List <HealthFacilityCohortData> GetHealthFacilityCohortDataAsList(DataTable dt)
        {
            List <HealthFacilityCohortData> oList = new List <HealthFacilityCohortData>();

            foreach (DataRow row in dt.Rows)
            {
                try
                {
                    HealthFacilityCohortData o = new HealthFacilityCohortData();
                    o.Id = Helper.ConvertToInt(row["ID"]);
                    o.HealthFacilityId = Helper.ConvertToInt(row["HEALTH_FACILITY_ID"]);
                    o.Year             = Helper.ConvertToInt(row["YEAR"]);
                    o.Cohort           = Helper.ConvertToInt(row["COHORT"]);
                    o.Notes            = row["NOTES"].ToString();
                    o.ModifiedOn       = Helper.ConvertToDate(row["MODIFIED_ON"]);
                    o.ModifiedBy       = Helper.ConvertToInt(row["MODIFIED_BY"]);
                    oList.Add(o);
                }
                catch (Exception ex)
                {
                    Log.InsertEntity("HealthFacilityCohortData", "GetHealthFacilityCohortDataAsList", 1, ex.StackTrace.Replace("'", ""), ex.Message.Replace("'", ""));
                    throw ex;
                }
            }
            return(oList);
        }
 public static int Update(HealthFacilityCohortData o)
 {
     try
     {
         string query = @"UPDATE ""HEALTH_FACILITY_COHORT_DATA"" SET ""ID"" = @Id, ""HEALTH_FACILITY_ID"" = @HealthFacilityId, ""YEAR"" = @Year, ""COHORT"" = @Cohort, ""NOTES"" = @Notes, ""MODIFIED_ON"" = @ModifiedOn, ""MODIFIED_BY"" = @ModifiedBy WHERE ""ID"" = @Id ";
         List <Npgsql.NpgsqlParameter> parameters = new List <NpgsqlParameter>()
         {
             new NpgsqlParameter("@HealthFacilityId", DbType.Int32)
             {
                 Value = o.HealthFacilityId
             },
             new NpgsqlParameter("@Year", DbType.Int32)
             {
                 Value = o.Year
             },
             new NpgsqlParameter("@Cohort", DbType.Int32)
             {
                 Value = o.Cohort
             },
             new NpgsqlParameter("@Notes", DbType.String)
             {
                 Value = (object)o.Notes ?? DBNull.Value
             },
             new NpgsqlParameter("@ModifiedOn", DbType.DateTime)
             {
                 Value = o.ModifiedOn
             },
             new NpgsqlParameter("@ModifiedBy", DbType.Int32)
             {
                 Value = o.ModifiedBy
             },
             new NpgsqlParameter("@Id", DbType.Int32)
             {
                 Value = o.Id
             }
         };
         int rowAffected = DBManager.ExecuteNonQueryCommand(query, CommandType.Text, parameters);
         AuditTable.InsertEntity("HealthFacilityCohortData", o.Id.ToString(), 2, DateTime.Now, 1);
         return(rowAffected);
     }
     catch (Exception ex)
     {
         Log.InsertEntity("HealthFacilityCohortData", "Update", 2, ex.StackTrace.Replace("'", ""), ex.Message.Replace("'", ""));
     }
     return(-1);
 }
 public static int Insert(HealthFacilityCohortData o)
 {
     try
     {
         string query = @"INSERT INTO ""HEALTH_FACILITY_COHORT_DATA"" (""HEALTH_FACILITY_ID"", ""YEAR"", ""COHORT"", ""NOTES"", ""MODIFIED_ON"", ""MODIFIED_BY"") VALUES (@HealthFacilityId, @Year, @Cohort, @Notes, @ModifiedOn, @ModifiedBy) returning ""ID"" ";
         List <Npgsql.NpgsqlParameter> parameters = new List <NpgsqlParameter>()
         {
             new NpgsqlParameter("@HealthFacilityId", DbType.Int32)
             {
                 Value = o.HealthFacilityId
             },
             new NpgsqlParameter("@Year", DbType.Int32)
             {
                 Value = o.Year
             },
             new NpgsqlParameter("@Cohort", DbType.Int32)
             {
                 Value = o.Cohort
             },
             new NpgsqlParameter("@Notes", DbType.String)
             {
                 Value = (object)o.Notes ?? DBNull.Value
             },
             new NpgsqlParameter("@ModifiedOn", DbType.DateTime)
             {
                 Value = o.ModifiedOn
             },
             new NpgsqlParameter("@ModifiedBy", DbType.Int32)
             {
                 Value = o.ModifiedBy
             }
         };
         object id = DBManager.ExecuteScalarCommand(query, CommandType.Text, parameters);
         AuditTable.InsertEntity("HealthFacilityCohortData", id.ToString(), 1, DateTime.Now, 1);
         return(int.Parse(id.ToString()));
     }
     catch (Exception ex)
     {
         Log.InsertEntity("HealthFacilityCohortData", "Insert", 1, ex.StackTrace.Replace("'", ""), ex.Message.Replace("'", ""));
     }
     return(-1);
 }