public ActionResult Forecast( ) { ActionResult view = View("Index"); ViewBag.EGHLayout = "RGE.Forecast"; try { RGEContext db = new RGEContext(this); view = View(db); ChoiceRiskObjectViewContext coc = ChoiceRiskObjectViewContext.Handler(db, this.HttpContext.Request.Params); ForecastViewConext fvc = ForecastViewConext.Handler(db, this.HttpContext.Request.Params); string menuitem = this.HttpContext.Request.Params["menuitem"]; if (menuitem != null && menuitem.Equals("Forecast.Point")) { if (fvc.menuitempoint == fvc.menuitemgeop) { fvc.menuitempoint = fvc.menuitemrobj; } else { fvc.menuitempoint = fvc.menuitemgeop; } coc.Regim = ChoiceRiskObjectViewContext.REGIM.INIT; } else if (coc.Regim == ChoiceRiskObjectViewContext.REGIM.SET && fvc.Regim == ForecastViewConext.REGIM.SET) { if (menuitem != null && menuitem.Equals("Forecast.Forecast")) { SpreadPoint spreadpoint = new SpreadPoint(coc.riskobject, fvc.petrochemicaltype, (float)fvc.Volume, (float)fvc.Temperature); Incident incident = new Incident((DateTime)fvc.Incident_date, (DateTime)fvc.Incident_date_message, fvc.incidenttype, spreadpoint); // fvc.ecoforecast = new RGEContext.ECOForecast(incident); fvc.ecoforecastx = new RGEContext.ECOForecastX(db, incident); fvc.Regim = ForecastViewConext.REGIM.REPORT; } else if (menuitem != null && menuitem.Equals("Forecast.Cancel")) { view = View("Index", db); } else if (menuitem != null && menuitem.Equals("Forecast.Save")) { if (fvc.ecoforecastx != null) { XmlNode xn = fvc.ecoforecastx.CreateReport().toXmlNode(); EGH01DB.Primitives.Report report = new EGH01DB.Primitives.Report(1000, "П", DateTime.Now, xn); EGH01DB.Primitives.Report.Create(db, report); // RGEContext.Report rrr = new RGEContext.Report(xn); // public Report(int id, string stage, DateTime date, XmlNode xmlcontetnt, string comment = "") // report.Save(); } } } } catch (RGEContext.Exception e) { ViewBag.msg = e.message; } catch (Exception e) { ViewBag.msg = e.Message; } return(view); }
public ActionResult Forecast( ) { RGEContext context = null; ActionResult view = View("Index"); ViewBag.EGHLayout = "RGE.Forecast"; try { context = new RGEContext(this); view = View(context); if (!ForecastViewConext.Handler(context, this.HttpContext.Request.Params)) { if (ChoiceRiskObjectContext.Handler(context, this.HttpContext.Request.Params)) { } } else { string menuitem = this.HttpContext.Request.Params["menuitem"]; if (menuitem.Equals("Forecast.Forecast")) { ForecastViewConext viewcontext = context.GetViewContext("Forecast") as ForecastViewConext; if (viewcontext != null) { RiskObject riskobject = new RiskObject(); if (RiskObject.GetById(context, (int)viewcontext.RiskObjectId, ref riskobject)) { PetrochemicalType petrochemicaltype = new PetrochemicalType(); if (PetrochemicalType.GetByCode(context, (int)viewcontext.Petrochemical_type_code, ref petrochemicaltype)) { SpreadPoint spreadpoint = new SpreadPoint(riskobject, petrochemicaltype, (float)viewcontext.Volume); EGH01DB.Types.IncidentType incidenttype = new EGH01DB.Types.IncidentType(); if (EGH01DB.Types.IncidentType.GetByCode(context, (int)viewcontext.Incident_type_code, out incidenttype)) { Incident incident = new Incident( (DateTime)viewcontext.Incident_date, (DateTime)viewcontext.Incident_date_message, incidenttype, spreadpoint ); viewcontext.ecoforecast = new RGEContext.ECOForecast(incident); viewcontext.Regim = ForecastViewConext.REGIM.REPORT; } else { viewcontext.Regim = ForecastViewConext.REGIM.RUNERROR; } } else { viewcontext.Regim = ForecastViewConext.REGIM.RUNERROR; } } else { viewcontext.Regim = ForecastViewConext.REGIM.RUNERROR; } } else { viewcontext.Regim = ForecastViewConext.REGIM.RUNERROR; } } else if (menuitem.Equals("Forecast.Cancel")) { view = View("Index", context); //view = Redirect("Index"); } else if (menuitem.Equals("Forecast.Save")) { ForecastViewConext viewcontext = context.GetViewContext("Forecast") as ForecastViewConext; EGH01DB.RGEContext.ECOForecast forecast = viewcontext.ecoforecast; //XmlNode node = forecast.toXmlNode("Отладка"); //XmlDocument doc = new XmlDocument(); //doc.AppendChild(doc.ImportNode(node, true)); //doc.Save(@"C:\Report.xml"); if (RGEContext.ECOForecast.Create(context, forecast, "отладка")) { } } } } catch (RGEContext.Exception e) { ViewBag.msg = e.message; } catch (Exception e) { ViewBag.msg = e.Message; } return(view); }