public ActionResult Contact1(PrimalParam param, string mailname, string telegramname) { bool[] num = new bool[10]; num[0] = param.num0; num[1] = param.num1; num[2] = param.num2; num[3] = param.num3; if (param.num4) { for (int i = 4; i < 10; i++) { num[i] = true; } } Parameters parameters = new Parameters(num, Convert.ToInt64(param.price1.Replace(" ", "").Replace(" ", "")), Convert.ToInt64(param.price2.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.flat1), Convert.ToInt32(param.flat2), Convert.ToInt32(param.max_flat1), Convert.ToInt32(param.max_flat2), Convert.ToDouble(param.metro_distance1.Replace(" ", "").Replace(" ", "")), Convert.ToDouble(param.metro_distance2.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.centre_distance1.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.centre_distance2.Replace(" ", "").Replace(" ", "")), Convert.ToDouble(param.S1), Convert.ToDouble(param.S2)); NotificationList.Refresh(parameters, mailname, telegramname); return(View()); }
public ActionResult RoomItems(PrimalParam param, int n, string sort, int page) { int count = Convert.ToInt32(n); int skip = count * (page - 1); bool[] num = new bool[10]; num[0] = param.num0; num[1] = param.num1; num[2] = param.num2; num[3] = param.num3; if (param.num4) { for (int i = 4; i < 10; i++) { num[i] = true; } } Parameters parameters = new Parameters(num, Convert.ToInt64(param.price1.Replace(" ", "").Replace(" ", "")), Convert.ToInt64(param.price2.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.flat1), Convert.ToInt32(param.flat2), Convert.ToInt32(param.max_flat1), Convert.ToInt32(param.max_flat2), Convert.ToDouble(param.metro_distance1.Replace(" ", "").Replace(" ", "")), Convert.ToDouble(param.metro_distance2.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.centre_distance1.Replace(" ", "").Replace(" ", "")), Convert.ToInt32(param.centre_distance2.Replace(" ", "").Replace(" ", "")), Convert.ToDouble(param.S1), Convert.ToDouble(param.S2)); ICollection <Room> rooms = new LinkedList <Room>(); ViewBag.page = page; Polynomial p = new Polynomial(2, 1); double[] inp; foreach (Room room in repo.List()) { if (parameters.IsEqual(room)) { int t = 1; if (room.room_type == "Вторичка") { t = 0; } double k = 0; foreach (MetroInfo info in MetroInfos) { if (info.metro == room.metro) { k = info.k; break; } } inp = new double[] { k, room.centre_distance, room.metro_distance, room.S, room.num, t }; double[] transformed = p.Transform(inp); room.prediction = Convert.ToInt64((regression1.Transform(transformed))); room.adress = regression1.Transform(transformed).ToString("#,#", new CultureInfo("ru-RU")); room.room_type = room.price.ToString("#,#", new CultureInfo("ru-RU")); rooms.Add(room); } } if (sort == "1") { return(PartialView(rooms.OrderBy(x => x.price).Skip(skip).Take(count))); } if (sort == "2") { return(PartialView(rooms.OrderByDescending(x => x.price).Skip(skip).Take(count))); } if (sort == "3") { return(PartialView(rooms.OrderByDescending(x => x.dateTime).Skip(skip).Take(count))); } return(PartialView()); }