public UEV(UEV source) { Name = source.Name; Unit = source.Unit; Value = source.Value; GeobiosphereEmergyBaseline = source.GeobiosphereEmergyBaseline; Reference = source.Reference; }
public ActionResult DeleteConfirmed(int id) { UEV uEV = db.UEVs.Find(id); db.UEVs.Remove(uEV); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,AdresId,Name,KodUEV,Pribor,OtEnergyRub,OtEnergyGkal,HwEnergyRub,HwEnergyGkal,HwVodaRub,HwVodaM3,Date")] UEV uEV) { if (ModelState.IsValid) { db.Entry(uEV).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.AdresId = new SelectList(db.Adres, "Id", "Adress", uEV.AdresId); return(View(uEV)); }
// GET: UEVs/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UEV uEV = db.UEVs.Find(id); if (uEV == null) { return(HttpNotFound()); } return(View(uEV)); }
// GET: UEVs/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UEV uEV = db.UEVs.Find(id); if (uEV == null) { return(HttpNotFound()); } ViewBag.AdresId = new SelectList(db.Adres, "Id", "Adress", uEV.AdresId); return(View(uEV)); }
protected override void SolveInstance(IGH_DataAccess DA) { string i_Name = ""; double i_Value = 0; string i_Unit = ""; double i_GEB = 0; string i_Reference = ""; //TODO: Add defaults and optional fields if (!DA.GetData(0, ref i_Name)) { return; } if (!DA.GetData(1, ref i_Value)) { return; } if (!DA.GetData(2, ref i_Unit)) { return; } if (!DA.GetData(3, ref i_GEB)) { return; } if (!DA.GetData(4, ref i_Reference)) { return; } UEV new_UEV = new UEV(); new_UEV.Name = i_Name; new_UEV.Value = i_Value; Units parsedUnit; //TODO: Better parsing if (!Enum.TryParse(i_Unit, out parsedUnit)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, string.Format("\"{0}\" is not a supported unit", i_Unit)); return; } new_UEV.Unit = parsedUnit; new_UEV.GeobiosphereEmergyBaseline = i_GEB; new_UEV.Reference = i_Reference; DA.SetData(0, new GH_UEVType(new_UEV)); }
protected override void SolveInstance(IGH_DataAccess DA) { GH_UEVType i_GH_UEV = null; if (!DA.GetData(0, ref i_GH_UEV) || i_GH_UEV == null) { return; } UEV i_UEV = i_GH_UEV.Value; DA.SetData(0, i_UEV.Name); DA.SetData(1, i_UEV.Value); DA.SetData(2, i_UEV.Unit.ToString()); DA.SetData(3, i_UEV.GeobiosphereEmergyBaseline); DA.SetData(4, i_UEV.Reference); }
public ActionResult Upload(HttpPostedFileBase upload, DateTime Date, bool JQ = false) { int progress = 0; double pro100 = 0; int procount = 0; if (upload != null) { HttpCookie cookie = new HttpCookie("My localhost cookie"); //найдем старые данные за этот месяц и заменим их не щадя List <UEV> dbUEV = db.UEVs.Where(x => x.Date.Year == Date.Year && x.Date.Month == Date.Month).ToList(); pro100 = dbUEV.Count; foreach (UEV S in dbUEV) { try { db.UEVs.Remove(S); db.SaveChanges(); procount++; progress = Convert.ToInt16(procount / pro100 * 100); if (procount > pro100) { procount = Convert.ToInt32(pro100); } ProgressHub.SendMessage("Удаляем старые данные...", progress); } catch (Exception e) { Console.WriteLine(e.Message); } } //call this method inside your working action ProgressHub.SendMessage("Инициализация и подготовка...", 0); // получаем имя файла string fileName = Path.GetFileName(upload.FileName); // сохраняем файл в папку Files в проекте if (Directory.Exists(Server.MapPath("~/Files/")) == false) { Directory.CreateDirectory(Server.MapPath("~/Files/")); } upload.SaveAs(Server.MapPath("~/Files/" + fileName)); //обрабатываем файл после загрузки string[] Names = new string[] { "Kp", "№прибора", "Тариф", "Общийотпуск", "ИтогосуммасНДСруб.", "Тариф", "Общийотпуск", "ИтогосуммасНДСруб.", "Тариф", "Общийотпуск", "ИтогосуммасНДСруб." }; string Error = ""; List <List <string> > excel = ExcelSVNUpload.IMPORT(Server.MapPath("~/Files/" + fileName), Names, out Error); List <string> Errors = new List <string>(); List <string> SmallErrors = new List <string>(); List <string> Codes = new List <string>(); //коды УЭВ все построчно для сверки с таблицей List <string> Teplos = new List <string>(); //рубли тепло List <string> HWs = new List <string>(); //рубли гв if (excel.Count < 1) { //если нифига не загрузилось то ViewBag.Error = Error; ViewBag.Names = Names; return(View("NotUpload")); } else { procount = 0; pro100 = excel.Count; UEV UEVKA = new UEV(); List <Adres> Adresa = db.Adres.ToList();// грузим все адреса из БД //для каждой строки в экселе foreach (List <string> L in excel) { bool EstName = false; int CodUEV = 0; Codes.Add(L[0]); Teplos.Add(L[4]); HWs.Add(L[7]); try { CodUEV = Convert.ToInt32(L[0]); } catch { SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Ошибка конвертации кода"); } if (CodUEV != 0) { foreach (Adres A in Adresa) { if (A.UEV == CodUEV) { //если в массиве адресов есть адрес из строчки то сохраняем айдишник EstName = true; UEVKA.AdresId = A.Id; UEVKA.KodUEV = A.UEV; UEVKA.Date = Date; UEVKA.Name = ""; break; } } //если имени нет в списке то и сохранять не будем if (EstName) { int Pribor = 0; decimal OtEnergyGkal = 0; decimal OtEnergyRub = 0; decimal HwEnergyGkal = 0; decimal HwEnergyRub = 0; decimal HwVodaM3 = 0; decimal HwVodaRub = 0; try { Pribor = Convert.ToInt32(L[1]); } catch (Exception e) { Console.WriteLine("Не преобразуется в инт " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется ПУ"); } try { OtEnergyGkal = Convert.ToDecimal(L[3]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется отопление энергия объём"); } try { OtEnergyRub = Convert.ToDecimal(L[4]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется отопление энергия руб."); } try { HwEnergyGkal = Convert.ToDecimal(L[6]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется ГВ энергия"); } try { HwEnergyRub = Convert.ToDecimal(L[7]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется ГВ энергия руб"); } try { HwVodaM3 = Convert.ToDecimal(L[9]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется ГВ объём"); } try { HwVodaRub = Convert.ToDecimal(L[10]); } catch (Exception e) { Console.WriteLine("Не преобразуется в децимал " + UEVKA.AdresId + " " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не преобразуется ГВ руб"); } UEVKA.Pribor = Pribor; UEVKA.OtEnergyGkal = OtEnergyGkal; UEVKA.OtEnergyRub = OtEnergyRub; UEVKA.HwEnergyGkal = HwEnergyGkal; UEVKA.HwEnergyRub = HwEnergyRub; UEVKA.HwVodaM3 = HwVodaM3; UEVKA.HwVodaRub = HwVodaRub; try { db.UEVs.Add(UEVKA); db.SaveChanges(); } catch (Exception e) { Console.WriteLine("Ошибка записи в базу данных " + e.Message); SmallErrors.Add(L[0] + ";" + L[1] + ";" + L[2] + " Не смогли сохранить в БД адрес ИД=" + UEVKA.AdresId); } } else {//если имени нет в списке, значит нужно вывести предупреждение чтобы часами не искать if (CodUEV != 0) { if (Errors.Count == 0) { Errors.Add("Найдены коды, отсутствующие в БД!"); } Errors.Add("Код=" + CodUEV.ToString() + " не найден в БД."); } } } procount++; progress = Convert.ToInt16(50 + procount / pro100 * 50); ProgressHub.SendMessage("Обрабатываем файл УЭВ...", progress); if (procount > pro100) { procount = Convert.ToInt32(pro100); } } List <string> Adr = Adresa.Select(x => x.Adress).ToList(); for (int a = 0; a < Adr.Count; a++) { Adr[a] = Adr[a].Replace(" ", "").ToUpper(); } if (Errors.Count == 0) { Errors.Add("Ошибок загрузки нет!"); } ViewBag.VsegoUEV = db.UEVs.Where(x => x.Date.Year == Date.Year && x.Date.Month == Date.Month).Count(); //ViewBag.Services = Services; ViewBag.UEV = db.UEVs.Where(x => x.Date == Date).Include(z => z.Adres.Adress).Select(y => y.Adres.Adress + "ОТ(энергия руб.)=" + y.OtEnergyRub + " ГВ(энергия руб.)=" + y.HwEnergyRub + "ГВ(теплоноситель руб.)=" + y.HwVodaRub).ToList(); ViewBag.date = Date; ViewBag.file = fileName; ViewBag.Gkal = db.UEVs.Where(x => x.Date.Year == Date.Year && x.Date.Month == Date.Month).Sum(y => y.OtEnergyGkal); ViewBag.M3Water = db.UEVs.Where(x => x.Date.Year == Date.Year && x.Date.Month == Date.Month).Sum(y => y.HwVodaM3); ViewBag.GkalWater = db.UEVs.Where(x => x.Date.Year == Date.Year && x.Date.Month == Date.Month).Sum(y => y.HwEnergyGkal); ViewBag.Errors = Errors; ViewBag.Codes = Codes; ViewBag.HWs = HWs; ViewBag.Teplos = Teplos; ViewBag.SmallErrors = SmallErrors; if (JQ == false) { return(View("UploadComplete")); } else { Errors.Add(Error); return(Json(Errors)); } } } if (!JQ) { return(RedirectToAction("Index")); } else { return(Json("Файл не выбран! Выберните файл EXCEL формата XLS или XLSX НЕ CSV!!!")); } }