private void btnclose_Click(object sender, EventArgs e) { int id2 = Convert.ToInt32(lblid.Text.ToString()); pp_dbEntities db = new pp_dbEntities(); orders or = db.orders.Where(c => c.id == id2).FirstOrDefault(); or.closed_date = DateTime.Now; if (or.status == "1" || or.status == "2") { or.status = 0.ToString(); db.Entry(or).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); this.Close(); } else { MessageBox.Show("Заказ уже закрыт"); } }
public void proverka() { pp_dbEntities db = new pp_dbEntities(); // Добавление в список просроченных var Orders = db.orders.Where(c => c.status == "1"); // Ищем только среди действующих заказов. orders or = Orders.Where(c => c.rent < DateTime.Now).FirstOrDefault(); if (or != null) // Если есть просроченный заказ то меняем статус на 2 { or.status = 2.ToString(); db.Entry(or).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } if (Orders.Where(c => c.rent < DateTime.Now).FirstOrDefault() != null) // Если есть еще просроченные заказы, то вызываем функцию снова. { proverka(); // Рекурсия о_О } DateTime D = DateTime.Now; // Добавление в список проваленных D = D.AddDays(-14); var Orders2 = db.orders.Where(c => c.status == "2"); // Ищем только среди просроченных заказов. orders or2 = Orders2.Where(c => c.rent < D).FirstOrDefault(); if (or2 != null) // Если есть проваленный заказ то меняем статус на 3 { or2.status = 3.ToString(); or2.closed_date = DateTime.Now; clients cl = db.clients.Where(c => c.id == or2.clid).FirstOrDefault(); cl.blackliststatus = 1; db.Entry(cl).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); db.Entry(or2).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } if (Orders2.Where(c => c.rent < D).FirstOrDefault() != null) // Если есть еще проваленные заказы, то вызываем функцию снова. { proverka(); // Рекурсия о_О } }