public ActionResult EditPerson(PersonVM model) { if (ModelState.IsValid) { using (var context = new LabEntities()) { Person editedPerson = new Person { Id = model.Id, LastName = model.LastName, FirstName = model.FirstName, Patronymic = model.Patronymic, Gender = model.Gender, Age = model.Age, HasJob = model.HasJob }; context.People.Attach(editedPerson); context.Entry(editedPerson).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } return(RedirectToAction("ListOfPeople")); } ViewBag.Genders = new SelectList(GetGendersList(), "Item1", "Item2"); return(View(model)); }
public ActionResult CreatePerson(PersonVM newPerson) { if (ModelState.IsValid) { using (var context = new LabEntities()) { Person person = new Person { Id = Guid.NewGuid(), LastName = newPerson.LastName, FirstName = newPerson.FirstName, Patronymic = newPerson.Patronymic, Gender = newPerson.Gender, Age = newPerson.Age, HasJob = newPerson.HasJob }; context.People.Add(person); context.SaveChanges(); } return(RedirectToAction("ListOfPeople")); } ViewBag.Genders = new SelectList(GetGendersList(), "Item1", "Item2"); return(View(newPerson)); }
public ActionResult PersonDetails(Guid personId) { Person model = new Person(); using (var db = new LabEntities()) { model = db.People.Find(personId); } return(View(model)); }
public ActionResult DeletePerson(Guid personID) { Person personToDelete; using (var context = new LabEntities()) { personToDelete = context.People.Find(personID); } return(View(personToDelete)); }
public ActionResult QuestionAnswered(Guid personID) { string message = ""; using (var context = new LabEntities()) { int questionAnsweredNumber = context.People.Find(personID).Answers.Count; message = $"Вопросов отвечено: { questionAnsweredNumber}."; } return(PartialView("QuestionAnswered", message)); }
public ActionResult ListOfPeople() { List <Person> people = new List <Person>(); using (var db = new LabEntities()) { people = db.People.OrderByDescending(x => x.Age) .ThenBy(x => x.LastName) .ThenBy(x => x.FirstName).ToList(); } return(View(people)); }
public ActionResult DeleteConfirmed(Guid personID) { using (var context = new LabEntities()) { Person personToDelete = new Person { Id = personID }; context.Entry(personToDelete).State = System.Data.Entity.EntityState.Deleted; context.SaveChanges(); } return(RedirectToAction("ListOfPeople")); }
public ActionResult Login(UserVM webUser) { System.Console.WriteLine(webUser); if (ModelState.IsValid) { using (LabEntities context = new LabEntities()) { User user = null; user = context.Users.Where(u => u.Login == webUser.Login).FirstOrDefault(); if (user != null) { string passwordHash = ReturnHashCode(webUser.Password + user.Salt.ToString().ToUpper()); if (passwordHash == user.PasswordHash) { string userRole = ""; switch (user.UserRole) { case 1: userRole = "Admin"; break; case 2: userRole = "Participant"; break; } FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket( 1, user.Login, DateTime.Now, DateTime.Now.AddDays(1), false, userRole); string encryptedTicket = FormsAuthentication.Encrypt(authTicket); HttpContext.Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket)); return(RedirectToAction("ListOfPeople", "Lab2")); } } } } ViewBag.Error = "Пользователя с таким логином и паролем не существует, попробуйте еще раз"; return(View(webUser)); }
public static List <string> GetNames(string pre) { List <string> all = new List <string>(); LabEntities db = new LabEntities(); all = (from a in db.LAB_HYDRATE_ANALYSIS where a.CONTAINERID.StartsWith(pre) select a.CONTAINERID).Take(1).ToList(); string stritem = ""; foreach (var item in all) { stritem = item.Substring(0, item.IndexOf(' ')); } all.Add(stritem); all.RemoveAt(0); return(all); }
public ActionResult EditPerson(Guid personID) { PersonVM model; using (var context = new LabEntities()) { Person person = context.People.Find(personID); model = new PersonVM { Id = person.Id, LastName = person.LastName, FirstName = person.FirstName, Patronymic = person.Patronymic, Gender = person.Gender, Age = person.Age, HasJob = person.HasJob }; } return(View(model)); }
public void PiInsert(string Product, DataTable dt) { //**********************Insert records into pi******************************************** try { LabEntities db = new LabEntities(); PIServers myPIServers = new PIServers(); PIServer myPIServer = myPIServers.DefaultPIServer; NetworkCredential credential = new NetworkCredential("labserver", "labserver1"); myPIServer.Connect(credential); Dictionary <string, decimal?> piTagValues = new Dictionary <string, decimal?>(); var PiTaglist = (from v in db.Lab_TagTable orderby v.Id select v).Skip(39).Take(44); var date = Convert.ToDateTime(Session["alumina_date"].ToString()); int utc = DateTime.UtcNow.Hour; int dt_ = DateTime.Now.Hour; bool dst = DSTcheck(); if (dst) { dt_ = dt_ - 1; } int diff; if (utc > dt_) { diff = utc - dt_; } else { diff = utc + 24 - dt_; } //type is not feed moisture if (Product == "ALUMINA") { //string s = type.Substring(0, type.Length - 4); //string input = type.Substring(type.Length - 4); //int time = Convert.ToInt16(input.TrimEnd('0')); //DateTime datetime; //TimeSpan ts; //if (time == 24) //{ // ts = new TimeSpan(23, 59, 59); //} //else ts = new TimeSpan(time, 0, 0); //datetime = date + ts; //decimal? s = (decimal?)null; //bool nulloremtpy = string.IsNullOrWhiteSpace(dt.Rows[0]["value"].ToString()); piTagValues.Add("LABALUMINA_LOI", string.IsNullOrWhiteSpace(dt.Rows[0]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[0]["value"].ToString())); piTagValues.Add("LABALUMINA_P100", string.IsNullOrWhiteSpace(dt.Rows[1]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[1]["value"].ToString())); piTagValues.Add("LABALUMINA_P200", string.IsNullOrWhiteSpace(dt.Rows[2]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[2]["value"].ToString())); piTagValues.Add("LABALUMINA_P325", string.IsNullOrWhiteSpace(dt.Rows[3]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[3]["value"].ToString())); piTagValues.Add("LABALUMINA_BULKDENS", string.IsNullOrWhiteSpace(dt.Rows[4]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[4]["value"].ToString())); piTagValues.Add("LABALUMINA_SI", string.IsNullOrWhiteSpace(dt.Rows[5]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[5]["value"].ToString())); piTagValues.Add("LABALUMINA_FE", string.IsNullOrWhiteSpace(dt.Rows[6]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[6]["value"].ToString())); piTagValues.Add("LABALUMINA_NA", string.IsNullOrWhiteSpace(dt.Rows[7]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[7]["value"].ToString())); piTagValues.Add("LABALUMINA_ZN", string.IsNullOrWhiteSpace(dt.Rows[8]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[8]["value"].ToString())); piTagValues.Add("LABALUMINA_MN", string.IsNullOrWhiteSpace(dt.Rows[9]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[9]["value"].ToString())); piTagValues.Add("LABALUMINA_CA", string.IsNullOrWhiteSpace(dt.Rows[10]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[10]["value"].ToString())); piTagValues.Add("LABALUMINA_TI", string.IsNullOrWhiteSpace(dt.Rows[11]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[11]["value"].ToString())); piTagValues.Add("LABALUMINA_AI", string.IsNullOrWhiteSpace(dt.Rows[12]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[12]["value"].ToString())); piTagValues.Add("LABALUMINA_M20", string.IsNullOrWhiteSpace(dt.Rows[13]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[13]["value"].ToString())); foreach (KeyValuePair <string, decimal?> entry in piTagValues) { foreach (var item in PiTaglist) { string TagName = item.Pi_Tags_Test.Substring(0, item.Pi_Tags_Test.Length - 5); string TagName_test = item.Pi_Tags_Test; if (TagName == entry.Key) { //PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName_test); PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName); //use this when go to production AFValue currentTag = myPIPoint.CurrentValue(); currentTag.Value = Convert.ToString(entry.Value); //string ctv = currentTag.Value.ToString(); //DateTime cttimestamp = currentTag.Timestamp; //DateTime d = cttimestamp.Date; currentTag.Timestamp = date.AddHours(diff); if (!string.IsNullOrEmpty(currentTag.Value.ToString())) { //if (ctv != null && d != date) //{ myPIPoint.UpdateValue(currentTag, AFUpdateOption.Insert); //} //else //{ // currentTag.Timestamp = date.AddHours(diff); // myPIPoint.UpdateValue(currentTag, AFUpdateOption.Replace); //} } } } } } else if (Product == "HYDRATE") { piTagValues.Add("LABHYDRATE_P100", string.IsNullOrWhiteSpace(dt.Rows[0]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[0]["value"].ToString())); piTagValues.Add("LABHYDRATE_P200", string.IsNullOrWhiteSpace(dt.Rows[1]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[1]["value"].ToString())); piTagValues.Add("LABHYDRATE_P325", string.IsNullOrWhiteSpace(dt.Rows[2]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[2]["value"].ToString())); piTagValues.Add("LABHYDRATE_SI", string.IsNullOrWhiteSpace(dt.Rows[3]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[3]["value"].ToString())); piTagValues.Add("LABHYDRATE_FE", string.IsNullOrWhiteSpace(dt.Rows[4]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[4]["value"].ToString())); piTagValues.Add("LABHYDRATE_NA", string.IsNullOrWhiteSpace(dt.Rows[5]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[5]["value"].ToString())); piTagValues.Add("LABHYDRATE_ZN", string.IsNullOrWhiteSpace(dt.Rows[6]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[6]["value"].ToString())); piTagValues.Add("LABHYDRATE_MN", string.IsNullOrWhiteSpace(dt.Rows[7]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[7]["value"].ToString())); piTagValues.Add("LABHYDRATE_CA", string.IsNullOrWhiteSpace(dt.Rows[8]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[8]["value"].ToString())); piTagValues.Add("LABHYDRATE_TI", string.IsNullOrWhiteSpace(dt.Rows[9]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[9]["value"].ToString())); piTagValues.Add("LABHYDRATE_AI", string.IsNullOrWhiteSpace(dt.Rows[10]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[10]["value"].ToString())); piTagValues.Add("LABHYDRATE_FREEMOIST", string.IsNullOrWhiteSpace(dt.Rows[11]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[11]["value"].ToString())); piTagValues.Add("LABHYDRATE_CSEDS", string.IsNullOrWhiteSpace(dt.Rows[12]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[12]["value"].ToString())); piTagValues.Add("LABHYDRATE_INSOLS", string.IsNullOrWhiteSpace(dt.Rows[13]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[13]["value"].ToString())); piTagValues.Add("LABHYDRATE_BULKDENS", string.IsNullOrWhiteSpace(dt.Rows[14]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[14]["value"].ToString())); piTagValues.Add("LABHYDRATE_HUNTERL", string.IsNullOrWhiteSpace(dt.Rows[15]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[15]["value"].ToString())); piTagValues.Add("LABHYDRATE_HUNTERA", string.IsNullOrWhiteSpace(dt.Rows[16]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[16]["value"].ToString())); piTagValues.Add("LABHYDRATE_HUNTERB", string.IsNullOrWhiteSpace(dt.Rows[17]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[17]["value"].ToString())); foreach (KeyValuePair <string, decimal?> entry in piTagValues) { foreach (var item in PiTaglist) { string TagName = item.Pi_Tags_Test.Substring(0, item.Pi_Tags_Test.Length - 5); string TagName_test = item.Pi_Tags_Test; if (TagName == entry.Key) { //PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName_test); PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName); // use this when go to production AFValue currentTag = myPIPoint.CurrentValue(); currentTag.Value = Convert.ToString(entry.Value); //string ctv = currentTag.Value.ToString(); //DateTime cttimestamp = currentTag.Timestamp; //DateTime d = cttimestamp.Date; currentTag.Timestamp = date.AddHours(diff); if (!string.IsNullOrEmpty(currentTag.Value.ToString())) { //if (ctv != null && d != date) //{ // currentTag.Timestamp = date.AddHours(diff); myPIPoint.UpdateValue(currentTag, AFUpdateOption.Insert); // } // else // { // currentTag.Timestamp = date.AddHours(diff); // myPIPoint.UpdateValue(currentTag, AFUpdateOption.Replace); // } } } } } } else { piTagValues.Add("LABWETHYDRATE_P100", string.IsNullOrWhiteSpace(dt.Rows[0]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[0]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_P200", string.IsNullOrWhiteSpace(dt.Rows[1]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[1]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_P325", string.IsNullOrWhiteSpace(dt.Rows[2]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[2]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_SI", string.IsNullOrWhiteSpace(dt.Rows[3]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[3]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_FE", string.IsNullOrWhiteSpace(dt.Rows[4]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[4]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_NA", string.IsNullOrWhiteSpace(dt.Rows[5]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[5]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_ZN", string.IsNullOrWhiteSpace(dt.Rows[6]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[6]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_MN", string.IsNullOrWhiteSpace(dt.Rows[7]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[7]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_CA", string.IsNullOrWhiteSpace(dt.Rows[8]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[8]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_TI", string.IsNullOrWhiteSpace(dt.Rows[9]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[9]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_CSEDS", string.IsNullOrWhiteSpace(dt.Rows[10]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[10]["value"].ToString())); piTagValues.Add("LABWETHYDRATE_INSOLS", string.IsNullOrWhiteSpace(dt.Rows[11]["value"].ToString()) ? (decimal?)null : Convert.ToDecimal(dt.Rows[11]["value"].ToString())); foreach (KeyValuePair <string, decimal?> entry in piTagValues) { foreach (var item in PiTaglist) { string TagName = item.Pi_Tags_Test.Substring(0, item.Pi_Tags_Test.Length - 5); string TagName_test = item.Pi_Tags_Test; if (TagName == entry.Key) { // PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName_test); PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName); // use this when go to production AFValue currentTag = myPIPoint.CurrentValue(); currentTag.Value = Convert.ToString(entry.Value); //string ctv = currentTag.Value.ToString(); //DateTime cttimestamp = currentTag.Timestamp; //DateTime d = cttimestamp.Date; currentTag.Timestamp = date.AddHours(diff); if (!string.IsNullOrEmpty(currentTag.Value.ToString())) { //if (ctv != null && d != date) //{ myPIPoint.UpdateValue(currentTag, AFUpdateOption.Insert); //} //else //{ // currentTag.Timestamp = date.AddHours(diff); // myPIPoint.UpdateValue(currentTag, AFUpdateOption.Replace); //} } } } } } myPIServer.Disconnect(); } catch (Exception ex) { } //*************************End******************************* }
public void PiInsert(string area, DataTable dt) { //**********************Insert records into pi******************************************** try { LabEntities db = new LabEntities(); PIServers myPIServers = new PIServers(); PIServer myPIServer = myPIServers.DefaultPIServer; NetworkCredential credential = new NetworkCredential("labserver", "labserver1"); myPIServer.Connect(credential); var date = Convert.ToDateTime(Session["sec3_date"].ToString()); int utc = DateTime.UtcNow.Hour; int dt_ = DateTime.Now.Hour; bool dst = DSTcheck(); if (dst) { dt_ = dt_ - 1; } int diff; if (utc > dt_) { diff = utc - dt_; } else { diff = utc + 24 - dt_; } if (area == "caustic_clean") { var PiTagList = (from v in db.Lab_TagTable where v.Tag_Name == area orderby v.Max, v.Min select v).ToList(); DataTable dt_copy = new DataTable(); dt_copy = dt.Copy(); dt_copy.Columns.RemoveAt(0); dt_copy.Columns.RemoveAt(3); for (int i = 0; i < dt_copy.Rows.Count; i++) { for (int j = 0; j < dt_copy.Columns.Count; j++) { string TagName = PiTagList[j].Pi_Tags; string TagName_test = PiTagList[j].Pi_Tags_Test;; { //PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName_test); PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName); //-- use this when go to production AFValue currentTag = myPIPoint.CurrentValue(); currentTag.Timestamp = date; currentTag.Value = Convert.ToString(dt_copy.Rows[i][j]); string ctv = currentTag.Value.ToString(); DateTime cttimestamp = currentTag.Timestamp; DateTime d = cttimestamp.Date; if (!string.IsNullOrEmpty(currentTag.Value.ToString())) { currentTag.Value = Convert.ToString(dt_copy.Rows[i][j]); currentTag.Timestamp = date.AddHours(diff + i); myPIPoint.UpdateValue(currentTag, AFUpdateOption.Insert); } } } } } else { var PiTagList = (from v in db.Lab_TagTable where v.Tag_Name == area orderby v.Max, v.Min select v).ToList(); DataTable dt_copy = new DataTable(); dt_copy = dt.Copy(); dt_copy.Columns.RemoveAt(0); dt_copy.Columns.RemoveAt(0); { for (int i = 0; i < dt_copy.Rows.Count; i++) { for (int j = 0; j < dt_copy.Columns.Count; j++) { //string TagName = item.Pi_Tags_Test.Substring(0, item.Pi_Tags_Test.Length - 5); //string TagName_test = item.Pi_Tags_Test; //int g; //if (i != 0) //{ // g = (8 * i) + j; //} //else // g = j; if (area == "st_topsamples" || area == "tt_topsamples") { TagName = PiTagList[j].Pi_Tags; TagName_test = PiTagList[j].Pi_Tags_Test;; } else { int g; if (i != 0) { g = (8 * i) + j; TagName = PiTagList[g].Pi_Tags; TagName_test = PiTagList[g].Pi_Tags_Test; } else { TagName = PiTagList[j].Pi_Tags; TagName_test = PiTagList[j].Pi_Tags_Test; } } { //PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName_test); PIPoint myPIPoint = PIPoint.FindPIPoint(myPIServer, TagName); //-- use this when go to production AFValue currentTag = myPIPoint.CurrentValue(); string s = Convert.ToString(dt_copy.Rows[i][j]); currentTag.Value = Convert.ToString(dt_copy.Rows[i][j]); currentTag.Timestamp = date.AddHours(diff); if (!string.IsNullOrEmpty(currentTag.Value.ToString())) { myPIPoint.UpdateValue(currentTag, AFUpdateOption.Insert); } } } } } myPIServer.Disconnect(); } } catch (Exception exs) { string filePath = @"C:\Error.txt"; using (StreamWriter writer = new StreamWriter(filePath, true)) { writer.WriteLine("Message :" + exs.Message + "<br/>" + Environment.NewLine + "StackTrace :" + exs.StackTrace + "" + Environment.NewLine + "Date :" + DateTime.Now.ToString()); writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine); } } //*************************End******************************* }