Пример #1
0
        static public bool Create(EGH01DB.IDBContext dbcontext, EcoObjectType ecoobject_type)
        {
            bool rc = false;

            using (SqlCommand cmd = new SqlCommand("EGH.CreateEcoObjectType", dbcontext.connection))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                {
                    SqlParameter parm = new SqlParameter("@КодТипаПриродоохранногоОбъекта", SqlDbType.Int);
                    int          new_ecoobject_type_code = 0;
                    if (GetNextCode(dbcontext, out new_ecoobject_type_code))
                    {
                        ecoobject_type.type_code = new_ecoobject_type_code;
                    }
                    parm.Value = ecoobject_type.type_code;
                    cmd.Parameters.Add(parm);
                }
                {
                    SqlParameter parm = new SqlParameter("@НаименованиеТипаПриродоохранногоОбъекта", SqlDbType.VarChar);
                    parm.Value = ecoobject_type.name;
                    cmd.Parameters.Add(parm);
                }
                {
                    SqlParameter parm = new SqlParameter("@КатегорияВодоохрТер", SqlDbType.Int);
                    parm.IsNullable = true;
                    parm.Value      = ecoobject_type.waterprotectionarea.type_code;
                    cmd.Parameters.Add(parm);
                }
                {
                    SqlParameter parm = new SqlParameter("@exitrc", SqlDbType.Int);
                    parm.Direction = ParameterDirection.ReturnValue;
                    cmd.Parameters.Add(parm);
                }
                try
                {
                    cmd.ExecuteNonQuery();
                    rc = (int)cmd.Parameters["@exitrc"].Value == ecoobject_type.type_code;
                }
                catch (Exception e)
                {
                    rc = false;
                };
            }

            return(rc);
        }
Пример #2
0
        static public bool GetByCode(EGH01DB.IDBContext dbcontext, int type_code, out EcoObjectType eco_object_type)
        {
            bool rc = false;

            eco_object_type = new EcoObjectType();
            using (SqlCommand cmd = new SqlCommand("EGH.GetEcoObjectTypeByCode", dbcontext.connection))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                {
                    SqlParameter parm = new SqlParameter("@КодТипаПриродоохранногоОбъекта", SqlDbType.Int);
                    parm.Value = type_code;
                    cmd.Parameters.Add(parm);
                }
                {
                    SqlParameter parm = new SqlParameter("@exitrc", SqlDbType.Int);
                    parm.Direction = ParameterDirection.ReturnValue;
                    cmd.Parameters.Add(parm);
                }
                try
                {
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (reader.Read())
                    {
                        int    code = (int)reader["КодТипаПриродоохранногоОбъекта"];
                        string name = (string)reader["НаименованиеТипаПриродоохранногоОбъекта"];

                        int    cat_water_name = (int)reader["КатегорияВодоохрТер"];
                        int    category_code  = (int)reader["КодТипаКатегории"];
                        string category_name  = (string)reader["НаименованиеКатегории"];
                        WaterProtectionArea waterprotectionarea = new WaterProtectionArea(category_code, category_name);
                        eco_object_type = new EcoObjectType(code, name, waterprotectionarea);
                    }

                    reader.Close();
                    rc = (int)cmd.Parameters["@exitrc"].Value > 0;
                }
                catch (Exception e)
                {
                    rc = false;
                };
            }
            return(rc);
        }