public static bool CheckDateAndSendSpecificMailReminder() { DMS_Winkhardt_DB dms = new DMS_Winkhardt_DB(); DateTime date = DateTime.Now; string aktuellesJahr = date.Year.ToString(); //if(date.Date) if (date.Day == 1) { SendMailReminder(1, "es ist wieder an der Zeit die Rückläufer in Augenschein zu nehmen."); } if (date.ToString("dd.MM.yyyy") == "31.03." + aktuellesJahr || date.ToString("dd.MM.yyyy") == "30.09." + aktuellesJahr || date.ToString("dd.MM.yyyy") == "30.06." + aktuellesJahr || date.ToString("dd.MM.yyyy") == "31.12." + aktuellesJahr || date.ToString("dd.MM.yyyy") == "25.05." + aktuellesJahr) { SendMailReminder(4, "viele Marketingartikel sind raus. Jetzt muss Kohle rein!"); } List <Messe> messen = dms.Messen.Where(r => !(r.abgegrechnet && r.RestmengenlisteVerschickt)).OrderBy(r => r.Startdatum).ToList(); //SendCheckMail(messen); foreach (var messe in messen) { DateTime startDatum = messe.Startdatum; int daysBetweenStartAndToday = (startDatum - date).Days; string textMesseRestmengenlieferung = "die Messe \"" + messe.Name + " (Stardatum: " + messe.Startdatum.ToString("dd.MM.yyy") + ") \" möchtet ihre Restmengen zurück."; string textMesseAbrechnung = "die Messe \"" + messe.Name + " (Enddatum: " + messe.Enddatum.ToString("dd.MM.yyy") + ") \" möchte abgerechnet werden."; if ((date - messe.Enddatum).Days == 1) { SendMailReminder(3, textMesseAbrechnung); } if (date.DayOfWeek == DayOfWeek.Monday) { if (daysBetweenStartAndToday > 5 && daysBetweenStartAndToday < 8) { SendMailReminder(2, textMesseRestmengenlieferung); } } if (date.DayOfWeek == DayOfWeek.Tuesday) { if (daysBetweenStartAndToday == 7) { SendMailReminder(2, textMesseRestmengenlieferung); } } if (date.DayOfWeek == DayOfWeek.Wednesday) { if (daysBetweenStartAndToday == 7) { SendMailReminder(2, textMesseRestmengenlieferung); } } if (date.DayOfWeek == DayOfWeek.Thursday) { if (daysBetweenStartAndToday == 7) { SendMailReminder(2, textMesseRestmengenlieferung); } } if (date.DayOfWeek == DayOfWeek.Friday) { if (daysBetweenStartAndToday > 6 && daysBetweenStartAndToday < 10) { SendMailReminder(2, textMesseRestmengenlieferung); } } } return(true); }
public ActionResult AenderungSpeichern(FormCollection fc, Artikel artikels, Artikelart art, HttpPostedFileBase file, Artikelsprache sprache, int MeldeOld, int SicherOld, ArtikelKategorie Kategorie = null, string Messename = "") { bool changeMeldeSicherheitsbestand = false; if (artikels.Meldebestand != MeldeOld || artikels.Sicherheitsbestand != SicherOld) { changeMeldeSicherheitsbestand = true; } if (file != null && !String.IsNullOrEmpty(artikels.Bildpfad)) { var path = Path.Combine(Server.MapPath("~/Images/Artikelbilder"), artikels.ArtikelID + Path.GetExtension(file.FileName)); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } file.SaveAs(path); artikels.Bildpfad = artikels.ArtikelID + Path.GetExtension(file.FileName); } if (fc["AllgemeinerMesserartikel"].ToString() == "true") { artikels.MesseartikelAllgemein = true; } if (fc["Landesmesseartikel"].ToString() == "true") { artikels.Landesmesseartikel = true; } bool stateModel = false; if (ModelState.IsValid) { dms.Entry(artikels).State = EntityState.Modified; try { dms.SaveChanges(); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine("Mist:" + ex.Message); } dms.SaveChanges(); stateModel = true; } else { ViewBag.artikelsprachen = new SelectList(dms.Artikelsprachen.OrderBy(r => r.Sprache), "ArtikelspracheID", "Sprache"); ViewBag.artikelarten = new SelectList(dms.Artikelarten.OrderBy(r => r.Art), "ArtikelartID", "Art"); } dms.Dispose(); dms = new DMS_Winkhardt_DB(); Artikel artikel = dms.Artikell.Find(artikels.ArtikelID); Messe messe = dms.Messen.SingleOrDefault(r => r.Name == Messename); if (!(artikels.MesseartikelAllgemein || artikels.Landesmesseartikel)) { if (messe == null) { ViewData["KMerr"] = true; } else { if (artikel.Messe.MesseID != messe.MesseID) { artikel.Messe = dms.Messen.Find(messe.MesseID); dms.SaveChanges(); } } } else { if (artikel.Messe != null) { if (artikel.Landesmesseartikel) { artikel.Messe = dms.Messen.Single(r => r.isLandesmesse); } else { dms.Messen.Find(artikel.Messe.MesseID).artikel.Remove(artikel); } } dms.SaveChanges(); } if (art.ArtikelartID == 0) { ViewData["Arterr"] = true; } else { dms.Artikelarten.Find(artikel.artikelart.ArtikelartID).artikel.Remove(artikel); artikel.artikelart = dms.Artikelarten.Find(art.ArtikelartID); dms.SaveChanges(); } if (sprache.ArtikelspracheID == 0) { ViewData["Spracheerr"] = true; } else { dms.Artikelsprachen.Find(artikel.Sprache.ArtikelspracheID).artikel.Remove(artikel); artikel.Sprache = dms.Artikelsprachen.Find(sprache.ArtikelspracheID); dms.SaveChanges(); } //if (Kategorie != null) //{ // artikel.ArtikelKategorie = dms.ArtikelKategorien.Find(Kategorie.ArtikelKategorieID); //} if ((messe != null || artikel.Landesmesseartikel || artikel.MesseartikelAllgemein) && art.ArtikelartID != 0 && sprache.ArtikelspracheID != 0 && stateModel) { if (changeMeldeSicherheitsbestand) { if (artikel.Meldebestand >= artikel.Bestand && artikel.Active) { Extensions.NotificationUndercutMeldebestand(artikel); } if (artikel.Sicherheitsbestand >= artikel.Bestand && artikel.Active) { Extensions.NotificationUndercutSicherheitsbestand(artikel); } } return(RedirectToAction("Index")); } else { ViewBag.artikelarten = new SelectList(dms.Artikelarten.OrderBy(r => r.Art), "ArtikelartID", "Art", artikel.artikelart.ArtikelartID); ViewBag.artikelsprachen = new SelectList(dms.Artikelsprachen.OrderBy(r => r.Sprache), "ArtikelspracheID", "Sprache", artikel.Sprache.ArtikelspracheID); return(View("ArtikeldatenEingabe", artikels)); } }