static public bool Delete(EGH01DB.IDBContext dbcontext, RiskObjectType risk_object_type) { bool rc = false; using (SqlCommand cmd = new SqlCommand("EGH.DeleteRiskObjectType", dbcontext.connection)) { cmd.CommandType = CommandType.StoredProcedure; { SqlParameter parm = new SqlParameter("@КодТипаТехногенногоОбъекта", SqlDbType.Int); parm.Value = risk_object_type.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 > 0); } catch (Exception e) { rc = false; }; } return(rc); }
public RehabilitationMethod(int type_code, RiskObjectType riskobjecttype, CadastreType cadastretype, PetrochemicalCategories petrochemicalcategory, EmergencyClass emergencyclass, PenetrationDepth penetrationdepth, SoilPollutionCategories soilpollutioncategories, bool waterachieved, WaterPollutionCategories waterpollutioncategories, WaterProtectionArea waterprotectionarea, SoilCleaningMethod soilcleaningmethod, WaterCleaningMethod watercleaningmethod) { this.type_code = type_code; this.riskobjecttype = riskobjecttype; this.cadastretype = cadastretype; this.petrochemicalcategory = petrochemicalcategory; this.emergencyclass = emergencyclass; this.penetrationdepth = penetrationdepth; this.soilpollutioncategories = soilpollutioncategories; this.waterachieved = waterachieved; this.waterpollutioncategories = waterpollutioncategories; this.waterprotectionarea = waterprotectionarea; this.soilcleaningmethod = soilcleaningmethod; this.watercleaningmethod = watercleaningmethod; }
static public bool Create(EGH01DB.IDBContext dbcontext, RiskObjectType risk_object_type) { bool rc = false; using (SqlCommand cmd = new SqlCommand("EGH.CreateRiskObjectType", dbcontext.connection)) { cmd.CommandType = CommandType.StoredProcedure; { SqlParameter parm = new SqlParameter("@КодТипаТехногенногоОбъекта", SqlDbType.Int); int new_risk_object_type_code = 0; if (GetNextCode(dbcontext, out new_risk_object_type_code)) { risk_object_type.type_code = new_risk_object_type_code; } parm.Value = risk_object_type.type_code; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@НаименованиеТипаТехногенногоОбъекта", SqlDbType.VarChar); parm.Value = risk_object_type.name; 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 == risk_object_type.type_code; } catch (Exception e) { rc = false; }; } return(rc); }
static public bool GetByCode(EGH01DB.IDBContext dbcontext, int type_code, out RiskObjectType type) { bool rc = false; type = new RiskObjectType(); using (SqlCommand cmd = new SqlCommand("EGH.GetRiskObjectTypeByCode", dbcontext.connection)) { cmd.CommandType = CommandType.StoredProcedure; { SqlParameter parm = new SqlParameter("@КодТипаТехногенногоОбъекта", SqlDbType.Int); parm.Value = type_code; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@НаименованиеТипаТехногенногоОбъекта", SqlDbType.NVarChar); parm.Size = 50; parm.Direction = ParameterDirection.Output; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@exitrc", SqlDbType.Int); parm.Direction = ParameterDirection.ReturnValue; cmd.Parameters.Add(parm); } try { cmd.ExecuteNonQuery(); string name = (string)cmd.Parameters["@НаименованиеТипаТехногенногоОбъекта"].Value; if (rc = (int)cmd.Parameters["@exitrc"].Value > 0) { type = new RiskObjectType(type_code, name); } } catch (Exception e) { rc = false; }; } return(rc); }
public ActionResult RiskObjectCreate(EGH01.Models.EGHCAI.RiskObject rs) { CAIContext db = null; ViewBag.EGHLayout = "CAI"; ActionResult view = View("Index"); string menuitem = this.HttpContext.Request.Params["menuitem"] ?? "Empty"; try { db = new CAIContext(); view = View("RiskObject", db); if (menuitem.Equals("RiskObject.Create.Create")) { int id = -1; if (EGH01DB.Objects.RiskObject.GetNextId(db, out id)) { String ownership = "f"; int numberofrefuel = 1; int volume = 1; Boolean watertreatment = rs.watertreatment; Boolean watertreatmentcollect = rs.watertreatmentcollect; string base64 = rs.base64; Byte[] map; if (base64 == null) { map = new byte[0]; } else { map = ASCIIEncoding.ASCII.GetBytes(base64); } int groundtank = rs.groundtank; int undergroundtank = rs.undergroundtank; string strlat_s = this.HttpContext.Request.Params["lat_s"] ?? "Empty"; string strlng_s = this.HttpContext.Request.Params["lng_s"] ?? "Empty"; string strwaterdeep = this.HttpContext.Request.Params["waterdeep"] ?? "Empty"; string strheight = this.HttpContext.Request.Params["height"] ?? "Empty"; float lat_s = 0.0f; float lng_s = 0.0f; float waterdeep = 0.0f; float height = 0.0f; if (!Helper.FloatTryParse(strlat_s, out lat_s)) { lat_s = 0.0f; } if (!Helper.FloatTryParse(strlng_s, out lng_s)) { lng_s = 0.0f; } if (!Helper.FloatTryParse(strwaterdeep, out waterdeep)) { waterdeep = 0.0f; } if (!Helper.FloatTryParse(strheight, out height)) { height = 0.0f; } Coordinates coordinates = new Coordinates(rs.latitude, rs.lat_m, lat_s, rs.lngitude, rs.lng_m, lng_s); float latitude = EGH01DB.Primitives.Coordinates.dms_to_d(rs.latitude, rs.lat_m, rs.lat_s); EGH01DB.Types.GroundType ground_type = new EGH01DB.Types.GroundType(); if (EGH01DB.Types.GroundType.GetByCode(db, rs.list_groundType, out ground_type)) { Point point = new Point(coordinates, ground_type, waterdeep, height); EGH01DB.Types.RiskObjectType risk_object_type = new EGH01DB.Types.RiskObjectType(); if (EGH01DB.Types.RiskObjectType.GetByCode(db, rs.selectlist, out risk_object_type)) { EGH01DB.Types.CadastreType cadastre_type = new EGH01DB.Types.CadastreType(); if (EGH01DB.Types.CadastreType.GetByCode(db, rs.list_cadastre, out cadastre_type)) { EGH01DB.Types.District district = new EGH01DB.Types.District(); if (EGH01DB.Types.District.GetByCode(db, rs.list_district, out district)) { EGH01DB.Types.Region region = new EGH01DB.Types.Region(); if (EGH01DB.Types.Region.GetByCode(db, rs.list_region, out region)) { DateTime foundationdate = rs.foundationdate; if (foundationdate.Year == 0001) { foundationdate = new DateTime(1900, 01, 01); } DateTime reconstractiondate = rs.reconstractiondate; if (reconstractiondate.Year == 0001) { reconstractiondate = new DateTime(1900, 01, 01); } string name = rs.name; String phone = rs.phone; String fax = rs.fax; string address = rs.adress; String email = rs.email; String fueltype = rs.fax; String geodescription = rs.fax; EGH01DB.Objects.RiskObject risk_object = new EGH01DB.Objects.RiskObject(id, point, risk_object_type, cadastre_type, name, district, region, address, ownership, phone, fax, email, foundationdate, reconstractiondate, numberofrefuel, volume, watertreatment, watertreatmentcollect, map, groundtank, undergroundtank, fueltype, 0, 0.0f, 0.0f, geodescription); if (EGH01DB.Objects.RiskObject.Create(db, risk_object)) { view = View("RiskObject", db); } } } } } else if (menuitem.Equals("RiskObject.Create.Cancel")) { view = View("RiskObject", db); } } } } } catch (RGEContext.Exception e) { ViewBag.msg = e.message; } catch (Exception e) { ViewBag.msg = e.Message; } return(view); }
// GET: EGHRGEController_RiskObjectType public ActionResult RiskObjectType() { RGEContext db = null; ViewBag.EGHLayout = "RGE.RiskObjectType"; ActionResult view = View("Index"); string menuitem = this.HttpContext.Request.Params["menuitem"] ?? "Empty"; try { db = new RGEContext(this); ViewBag.msg = "Соединение с базой данных установлено"; view = View(db); if (menuitem.Equals("RiskObjectType.Create")) { view = View("RiskObjectTypeCreate"); } else if (menuitem.Equals("RiskObjectType.Delete")) { string type_code_item = this.HttpContext.Request.Params["type_code"]; if (type_code_item != null) { int c = 0; if (int.TryParse(type_code_item, out c)) { EGH01DB.Types.RiskObjectType rt = new EGH01DB.Types.RiskObjectType(); if (EGH01DB.Types.RiskObjectType.GetByCode(db, c, out rt)) { view = View("RiskObjectTypeDelete", rt); } } } } else if (menuitem.Equals("RiskObjectType.Update")) { string type_code_item = this.HttpContext.Request.Params["type_code"]; if (type_code_item != null) { int c = 0; if (int.TryParse(type_code_item, out c)) { EGH01DB.Types.RiskObjectType rt = new EGH01DB.Types.RiskObjectType(); if (EGH01DB.Types.RiskObjectType.GetByCode(db, c, out rt)) { view = View("RiskObjectTypeUpdate", rt); } } } } //else if (menuitem.Equals("RiskObjectType.Excel")) //{ // EGH01DB.Types.RiskObjectTypeList list = new EGH01DB.Types.GroundTypeList(db); // XmlNode node = list.toXmlNode(); // XmlDocument doc = new XmlDocument(); // XmlNode nnode = doc.ImportNode(node, true); // doc.AppendChild(nnode); // doc.Save(Server.MapPath("~/App_Data/GroundType.xml")); // view = View("Index"); // view = File(Server.MapPath("~/App_Data/GroundType.xml"), "text/plain", "Типы грунтов.xml"); //} } catch (RGEContext.Exception e) { ViewBag.msg = e.message; } catch (Exception e) { ViewBag.msg = e.Message; } return(view); }
static public bool GetByParm(EGH01DB.IDBContext dbcontext, int riskobjecttypecode, int cadastretypecode, int petrochemicalcategorytypecode, int emergencyclasstypecode, int penetrationdepthtypecode, int soilpollutioncategoriestypecode, bool waterachieved, int waterpollutioncategoriestypecode, int waterprotectionareatypecode, out RehabilitationMethod rehabilitation_method) { bool rc = false; rehabilitation_method = new RehabilitationMethod(); using (SqlCommand cmd = new SqlCommand("EGH.GetListRehabilitationMethodOnParam", dbcontext.connection)) { cmd.CommandType = CommandType.StoredProcedure; { SqlParameter parm = new SqlParameter("@ТипТехногенногоОбъекта", SqlDbType.Int); parm.Value = riskobjecttypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@НазначениеЗемель", SqlDbType.Int); parm.Value = cadastretypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КатегорияНефтепродукта", SqlDbType.Int); parm.Value = petrochemicalcategorytypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КлассификацияАварий", SqlDbType.Int); parm.Value = emergencyclasstypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КатегорияПроникновенияНефтепродукта", SqlDbType.Int); parm.Value = penetrationdepthtypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КатегорияЗагрязненияГрунта", SqlDbType.Int); parm.Value = soilpollutioncategoriestypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@ДостижениеГоризонтаГрунтовыхВод", SqlDbType.Bit); parm.Value = waterachieved; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КатегорияЗагрязненияГрунтовыхВод", SqlDbType.Int); parm.Value = waterpollutioncategoriestypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@КатегорияВодоохраннойТерритории", SqlDbType.Int); parm.Value = waterprotectionareatypecode; cmd.Parameters.Add(parm); } { SqlParameter parm = new SqlParameter("@exitrc", SqlDbType.Int); parm.Direction = ParameterDirection.ReturnValue; cmd.Parameters.Add(parm); } try { cmd.ExecuteNonQuery(); SqlDataReader reader = cmd.ExecuteReader(); if (reader.Read()) { int code = (int)reader["КодКлассификатора"]; int risk_object_type_code = (int)reader["ТипТехногенногоОбъекта"]; string risk_object_type_name = (string)reader["НаименованиеТипаТехногенногоОбъекта"]; RiskObjectType risk_object_type = new RiskObjectType(risk_object_type_code, risk_object_type_name); int cadastre_type_code = (int)reader["НазначениеЗемель"]; string cadastre_type_name = (string)reader["НаименованиеНазначенияЗемель"]; float cadastre_type_pdk_coef = (float)reader["ПДК"]; float cadastre_type_water_pdk_coef = (float)reader["ПДКводы"]; string cadastre_type_ground_doc_name = (string)reader["НормДокументЗемля"]; string cadastre_type_water_doc_name = (string)reader["НормДокументВода"]; CadastreType cadastre_type = new CadastreType(cadastre_type_code, cadastre_type_name, cadastre_type_pdk_coef, cadastre_type_water_pdk_coef, cadastre_type_ground_doc_name, cadastre_type_water_doc_name); int petrochemical_category_type_code = (int)reader["КатегорияНефтепродукта"]; string petrochemical_category_name = (string)reader["KN_НаименованиеКатегорииНефтепродукта"]; PetrochemicalCategories petrochemical_category = new PetrochemicalCategories(petrochemical_category_type_code, petrochemical_category_name); int emergency_class_type_code = (int)reader["КлассификацияАварий"]; string emergency_class_name = (string)reader["KA_НаименованиеТипаАварии"]; float emergency_class_min = (float)reader["KA_МинМасса"]; float emergency_class_max = (float)reader["KA_МаксМасса"]; EmergencyClass emergency_class = new EmergencyClass(emergency_class_type_code, emergency_class_name, emergency_class_min, emergency_class_max); int penetration_depth_type_code = (int)reader["КатегорияПроникновенияНефтепродукта"]; string penetration_depth_name = (string)reader["PN_НаименованиеТипаКатегории"]; float penetration_depth_min = (float)reader["PN_МинДиапазон"]; float penetration_depth_max = (float)reader["PN_МаксДиапазон"]; PenetrationDepth penetration_depth = new PenetrationDepth(penetration_depth_type_code, penetration_depth_name, penetration_depth_min, penetration_depth_max); int soil_pollution_categories_type_code = (int)reader["КатегорияЗагрязненияГрунта"]; string soil_pollution_categories_name = (string)reader["GP_НаименованиеКатегорииЗагрязненияГрунта"]; float soil_pollution_categories_min = (float)reader["GP_МинДиапазон"]; float soil_pollution_categories_max = (float)reader["GP_МаксДиапазон"]; int soil_pollution_categories_cadastre_type_code = (int)reader["GP_КодНазначенияЗемель"]; CadastreType soil_pollution_categories_cadastre_type = new CadastreType(soil_pollution_categories_cadastre_type_code); SoilPollutionCategories soilpollution_categories = new SoilPollutionCategories(soil_pollution_categories_type_code, soil_pollution_categories_name, soil_pollution_categories_min, soil_pollution_categories_max, soil_pollution_categories_cadastre_type); bool water_achieved = (bool)reader["ДостижениеГоризонтаГрунтовыхВод"]; int water_pollution_categories_type_code = (int)reader["КатегорияЗагрязненияГрунтовыхВод"]; string water_pollution_categories_name = (string)reader["WG_НаименованиеКатегорииЗагрязненияГВ"]; float water_pollution_categories_min = (float)reader["WG_МинДиапазон"]; float water_pollution_categories_max = (float)reader["WG_МаксДиапазон"]; int water_pollution_categories_cadastre_type_code = (int)reader["WG_КодНазначенияЗемель"]; CadastreType water_pollution_categories_cadastre_type = new CadastreType(water_pollution_categories_cadastre_type_code); WaterPollutionCategories water_pollution_categories = new WaterPollutionCategories(water_pollution_categories_type_code, water_pollution_categories_name, water_pollution_categories_min, water_pollution_categories_max, water_pollution_categories_cadastre_type); int water_protection_area_type_code = (int)reader["КатегорияВодоохраннойТерритории"]; string water_protection_area_name = (string)reader["WT_НаименованиеКатегории"]; WaterProtectionArea water_protection_area = new WaterProtectionArea(water_protection_area_type_code, water_protection_area_name); int soil_cleaning_method_type_code = (int)reader["КатегорияМЛЗагрязненияПГ"]; string soil_cleaning_method_name = (string)reader["PG_ОписаниеМетода"]; SoilCleaningMethod soil_cleaning_method = new SoilCleaningMethod(soil_cleaning_method_type_code, soil_cleaning_method_name); int water_cleaning_method_type_code = (int)reader["КатегорияМЛЗагрязненияГВ"]; string water_cleaning_method_name = (string)reader["PW_ОписаниеМетода"]; WaterCleaningMethod water_cleaning_method = new WaterCleaningMethod(water_cleaning_method_type_code, water_cleaning_method_name); if (rc = (int)cmd.Parameters["@exitrc"].Value > 0) { rehabilitation_method = new RehabilitationMethod(code, risk_object_type, cadastre_type, petrochemical_category, emergency_class, penetration_depth, soilpollution_categories, water_achieved, water_pollution_categories, water_protection_area, soil_cleaning_method, water_cleaning_method); } } reader.Close(); } catch (Exception e) { rc = false; }; } return(true); }