public ActionResult DeleteConfirmed(string id) { BuyFlowModel buyflow = _context.BuyFlows.Find(id); _context.BuyFlows.Remove(buyflow); _context.SaveChanges(); return(RedirectToAction("Index")); }
// // GET: /BuyFlow/Delete/5 public ActionResult Delete(string id = null) { BuyFlowModel buyflow = _context.BuyFlows.Find(id); if (buyflow == null) { return(NotFound()); } return(View(buyflow)); }
public ActionResult Edit(BuyFlowModel buyflow) { if (ModelState.IsValid) { _context.Entry(buyflow).State = EntityState.Modified; _context.SaveChanges(); return(RedirectToAction("Index")); } return(View(buyflow)); }
public ActionResult Create(BuyFlowModel buyflow) { if (ModelState.IsValid) { _context.BuyFlows.Add(buyflow); _context.SaveChanges(); return(RedirectToAction("Index")); } return(View(buyflow)); }
public ActionResult FlowRecovery(string docId) { // Get Login User's details. var loginUser = _userRepo.Find(ur => ur.UserName == User.Identity.Name).FirstOrDefault(); if (!userManager.IsInRole(User, "MedToDo")) { throw new Exception("權限不足!"); } var lastFlow = _context.BuyFlows.Where(bf => bf.DocId == docId && bf.Status == "2").FirstOrDefault(); if (lastFlow != null) { lastFlow.Status = "1"; lastFlow.Opinions += "(*恢復流程)"; BuyFlowModel rf = new BuyFlowModel(); rf.DocId = docId; rf.StepId = lastFlow.StepId + 1; rf.UserId = loginUser.Id; rf.Status = "?"; rf.Role = roleManager.GetRolesForUser(loginUser.Id).FirstOrDefault(); rf.Rtp = null; rf.Rdt = null; rf.Rtt = DateTime.Now; rf.Cls = "設備經辦"; _context.BuyFlows.Add(rf); // _context.SaveChanges(); return(new JsonResult(docId) { Value = new { success = true, error = "" }, }); } else { throw new Exception("流程恢復失敗!"); } }
public ActionResult NextFlow(BuyFlowModel BuyFlow) { // Get Login User's details. var loginUser = _userRepo.Find(ur => ur.UserName == User.Identity.Name).FirstOrDefault(); if (ModelState.IsValid) { if (BuyFlow.SelOpin == "其他" && string.IsNullOrEmpty(BuyFlow.Opinions)) { throw new Exception("請填寫意見欄!!"); } BuyFlowModel rf = _context.BuyFlows.Where(f => f.DocId == BuyFlow.DocId && f.Status == "?").FirstOrDefault(); List <BuyFlowModel> rflist = _context.BuyFlows.Where(f => f.DocId == BuyFlow.DocId).ToList(); BuyEvaluateModel r; BuySFlowModel s = _context.BuySFlows.Where(b => b.DocSid == BuyFlow.DocId).FirstOrDefault(); if (s != null) { r = _context.BuyEvaluates.Find(s.DocId); } else { r = _context.BuyEvaluates.Find(BuyFlow.DocId); } AppUserModel u; Tmail mail; string body = ""; string sto = ""; if (BuyFlow.Cls == "結案") { rf.Opinions = BuyFlow.SelOpin + Environment.NewLine + BuyFlow.Opinions; rf.Status = "2"; rf.Rtt = DateTime.Now; rf.Rtp = loginUser.Id; if (s != null) { s.Status = "2"; s.Rtt = DateTime.Now; s.Rtp = loginUser.Id; _context.Entry(s).State = EntityState.Modified; } _context.Entry(rf).State = EntityState.Modified; _context.SaveChanges(); // if (s != null) //會簽 { List <BuySFlowModel> sf = _context.BuySFlows.Where(bs => bs.DocId == s.DocId) .Where(bs => bs.Status == "?").ToList(); if (sf.Count() == 0) { BuyFlowModel f = _context.BuyFlows.Where(bf => bf.DocId == s.DocId) .Where(bf => bf.Status == "E").FirstOrDefault(); if (f != null) { f.Status = "?"; _context.Entry(f).State = EntityState.Modified; _context.SaveChanges(); // mail = new Tmail(); u = _context.AppUsers.Find(loginUser.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email mail.to = new System.Net.Mail.MailAddress(_context.AppUsers.Find(f.UserId).Email); //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫工智能保修系統[採購評估案-會簽完成通知]:儀器名稱: " + r.PlantCnam; body += "<p>申請人:" + r.UserName + "</p>"; body += "<p>儀器名稱:" + r.PlantCnam + "</p>"; body += "<br/>"; body += "<h3>此封信件為系統通知郵件,請勿回覆。</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; mail.SendMail(); } } } else { mail = new Tmail(); u = _context.AppUsers.Find(loginUser.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email foreach (BuyFlowModel rr in rflist) { u = _context.AppUsers.Find(rr.UserId); sto += u.Email + ","; } mail.sto = sto.TrimEnd(new char[] { ',' }); //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫工智能保修系統[採購評估案-結案通知]:儀器名稱: " + r.PlantCnam; body += "<p>申請人:" + r.UserName + "</p>"; body += "<p>儀器名稱:" + r.PlantCnam + "</p>"; body += "<p><a href='http://dms.cch.org.tw/BMED/Account/Login'>前往網站檢視</a></p>"; body += "<br/>"; body += "<h3>此封信件為系統通知郵件,請勿回覆。</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; mail.SendMail(); } return(new JsonResult(BuyFlow) { Value = new { success = true, error = "" }, }); } else if (BuyFlow.Cls == "廢除") { rf.Opinions = BuyFlow.SelOpin + Environment.NewLine + BuyFlow.Opinions; rf.Status = "3"; rf.Rtt = DateTime.Now; rf.Rtp = loginUser.Id; _context.Entry(rf).State = EntityState.Modified; _context.SaveChanges(); // mail = new Tmail(); u = _context.AppUsers.Find(loginUser.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email foreach (BuyFlowModel rr in rflist) { u = _context.AppUsers.Find(rr.UserId); sto += u.Email + ","; } mail.sto = sto.TrimEnd(new char[] { ',' }); //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫工智能保修系統[採購評估案-廢除通知]:儀器名稱: " + r.PlantCnam; body += "<p>申請人:" + r.UserName + "</p>"; body += "<p>儀器名稱:" + r.PlantCnam + "</p>"; body += "<br/>"; body += "<h3>此封信件為系統通知郵件,請勿回覆。</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; mail.SendMail(); return(new JsonResult(BuyFlow) { Value = new { success = true, error = "" }, }); } BuyFlow.StepId = rf.StepId + 1; BuyFlow.Rtt = DateTime.Now; switch (BuyFlow.Cls) { case "申請者": BuyFlow.UserId = r.UserId; break; case "設備經辦": break; } BuyFlow.Status = "?"; u = _context.AppUsers.Find(BuyFlow.UserId); BuyFlow.Role = roleManager.GetRolesForUser(u.Id).FirstOrDefault(); rf.Opinions = BuyFlow.SelOpin + Environment.NewLine + BuyFlow.Opinions; rf.Status = "1"; rf.Rtp = loginUser.Id; BuyFlow.Opinions = null; _context.Entry(rf).State = EntityState.Modified; _context.BuyFlows.Add(BuyFlow); _context.SaveChanges(); // mail = new Tmail(); body = ""; u = _context.AppUsers.Find(loginUser.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email u = _context.AppUsers.Find(BuyFlow.UserId); mail.to = new System.Net.Mail.MailAddress(u.Email); //u.Email //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫工智能保修系統[採購評估案]:儀器名稱: " + r.PlantCnam; body += "<p>申請人:" + r.UserName + "</p>"; body += "<p>儀器名稱:" + r.PlantCnam + "</p>"; body += "<p><a href='http://dms.cch.org.tw/BMED/Account/Login'>處理案件</a></p>"; body += "<br/>"; body += "<h3>此封信件為系統通知郵件,請勿回覆。</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; mail.SendMail(); return(new JsonResult(BuyFlow) { Value = new { success = true, error = "" }, }); } return(View(BuyFlow)); }
public ActionResult InEvaluate(string docid = null) { BuyFlowModel buyflow = _context.BuyFlows.Where(b => b.DocId == docid) .Where(b => b.Status == "?").FirstOrDefault(); if (buyflow == null) { return(NotFound()); } else { buyflow.Status = "E"; buyflow.Rtt = DateTime.Now; _context.Entry(buyflow).State = EntityState.Modified; // BuyEvaluateModel e = _context.BuyEvaluates.Find(docid); BuySFlowModel s = new BuySFlowModel(); s.DocId = docid; s.DocSid = buyflow.DocId + "_1"; s.StepId = 2; s.Status = "?"; s.Rtp = buyflow.UserId; s.Rtt = DateTime.Now; _context.BuySFlows.Add(s); BuySFlowModel s2 = new BuySFlowModel(); s2.DocId = docid; s2.DocSid = buyflow.DocId + "_2"; s2.StepId = 2; s2.Status = "?"; s2.Rtp = buyflow.UserId; s2.Rtt = DateTime.Now; _context.BuySFlows.Add(s2); // BuyFlowModel bf = new BuyFlowModel(); BuyFlowModel bf2 = new BuyFlowModel(); bf.DocId = buyflow.DocId + "_1"; bf2.DocId = buyflow.DocId + "_2"; bf.StepId = 1; bf2.StepId = 1; bf.UserId = buyflow.UserId; bf2.UserId = buyflow.UserId; bf.Status = "1"; bf2.Status = "1"; bf.Cls = "採購人員"; bf2.Cls = "採購人員"; bf.Rtp = buyflow.UserId; bf2.Rtp = buyflow.UserId; bf.Rtt = DateTime.Now; bf2.Rtt = DateTime.Now; _context.Entry(buyflow).State = EntityState.Modified; _context.BuyFlows.Add(bf); _context.BuyFlows.Add(bf2); // bf.StepId = 2; bf2.StepId = 2; bf.UserId = e.UserId; bf2.UserId = e.EngId; bf.Status = "?"; bf2.Status = "?"; bf.Cls = "申請者"; bf2.Cls = "維修工程師"; bf.Rtp = buyflow.UserId; bf2.Rtp = buyflow.UserId; bf.Rtt = DateTime.Now; bf2.Rtt = DateTime.Now; _context.BuyFlows.Add(bf); _context.BuyFlows.Add(bf2); _context.SaveChanges(); } return(RedirectToAction("Index", "Home", new { Area = "" })); }
public IActionResult TransToBuyEvaluate() { // Get Login User's details. var user = _userRepo.Find(ur => ur.UserName == User.Identity.Name).FirstOrDefault(); String[] st = { "?", "2" }; var s = _context.BuyFlows.Where(b => st.Contains(b.Status)) .Join(_context.BuyEvaluates, b => b.DocId, e => e.DocId, (b, e) => e).Where(e => !string.IsNullOrEmpty(e.BudgetId)) .Select(e => e.BudgetId).Distinct(); List <BudgetModel> bs = _context.Budgets.Where(b => !s.Contains(b.DocId)).ToList(); BuyEvaluateModel r; BuyFlowModel rf; Tmail mail; string body = ""; AppUserModel a = _context.AppUsers.Find(user.Id); AppUserModel u; DepartmentModel c = _context.Departments.Find(a.DptId); int dc = 0; foreach (BudgetModel b in bs) { r = new BuyEvaluateModel(); if (dc <= 0) { dc = Convert.ToInt32(r.GetID(ref _context)); } else { dc++; } r.DocId = Convert.ToString(dc); r.PlantCnam = b.PlantName; r.PlantEnam = b.PlantName; r.Standard = b.Standard; r.Price = b.Price; r.Amt = b.Amt; r.Unit = b.Unit; r.TotalPrice = b.TotalPrice; r.UserId = a.Id; r.UserName = a.FullName; r.Company = c.DptId == null ? "" : c.Name_C; r.AccDpt = b.AccDpt == null ? "" : b.AccDpt; r.AccDptNam = _context.Departments.Find(b.AccDpt) == null ? "" : _context.Departments.Find(b.AccDpt).Name_C; r.Contact = a.Mobile; r.PlantType = "醫療儀器"; r.Place = r.AccDptNam; if (_context.AppUsers.Where(up => up.FullName == b.EngName && up.Status == "Y").FirstOrDefault() == null) { throw new Exception("無工程師[" + b.EngName + "]資料!!請建立使用者資料。"); } r.EngId = _context.AppUsers.Where(up => up.FullName == b.EngName && up.Status == "Y").FirstOrDefault() == null ? user.Id : _context.AppUsers.Where(up => up.FullName == b.EngName && up.Status == "Y").FirstOrDefault().Id; r.Rtp = a.Id; r.Rtt = DateTime.Now; r.BudgetId = b.DocId; _context.BuyEvaluates.Add(r); // rf = new BuyFlowModel(); rf.DocId = r.DocId; rf.StepId = 1; rf.UserId = user.Id; rf.Status = "1"; rf.Role = roleManager.GetRolesForUser(user.Id).GetValue(0).ToString(); rf.Rtp = user.Id; rf.Rdt = null; rf.Rtt = DateTime.Now; rf.Cls = "申請者"; _context.BuyFlows.Add(rf); // rf = new BuyFlowModel(); rf.DocId = r.DocId; rf.StepId = 2; rf.UserId = r.EngId; rf.Status = "?"; u = _context.AppUsers.Find(r.EngId); rf.Role = roleManager.GetRolesForUser(u.Id).FirstOrDefault(); rf.Rtp = null; rf.Rdt = null; rf.Rtt = DateTime.Now; rf.Cls = "設備工程師"; _context.BuyFlows.Add(rf); // try { _context.SaveChanges(); // mail = new Tmail(); body = ""; u = _context.AppUsers.Find(user.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email u = _context.AppUsers.Find(rf.UserId); mail.to = new System.Net.Mail.MailAddress(u.Email); //u.Email //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫療儀器管理資訊系統[採購評估案]:儀器名稱: " + r.PlantCnam; body += "<p>申請人:" + r.UserName + "</p>"; body += "<p>儀器名稱:" + r.PlantCnam + "</p>"; body += "<p><a href='http://dms.cch.org.tw/MvcMedEngMgr'>處理案件</a></p>"; body += "<br/>"; body += "<h3>this is a inform letter from system manager.Do not reply for it.</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; //mail.SendMail(); } catch (Exception e) { throw new Exception(e.Message); } } return(new JsonResult(bs) { Value = new { success = true, error = "" }, }); }
public IActionResult Create(BuyEvaluateModel buyevaluate) { if (ModelState.IsValid) { // Get Login User's details. var user = _userRepo.Find(ur => ur.UserName == User.Identity.Name).FirstOrDefault(); DepartmentModel dpt = _context.Departments.Where(d => d.Name_C == buyevaluate.AccDptNam).FirstOrDefault(); if (dpt != null) { buyevaluate.AccDpt = dpt.DptId; } else { ModelState.AddModelError("", "成本中心無此資料!!"); return(View(buyevaluate)); } buyevaluate.Rtp = user.Id; buyevaluate.Rtt = DateTime.Now; _context.Entry(buyevaluate).State = EntityState.Modified; // BuyFlowModel rf = new BuyFlowModel(); rf.DocId = buyevaluate.DocId; rf.StepId = 1; rf.UserId = user.Id; rf.Status = "1"; rf.Role = roleManager.GetRolesForUser(user.Id).GetValue(0).ToString(); rf.Rtp = user.Id; rf.Rdt = null; rf.Rtt = DateTime.Now; rf.Cls = "申請者"; _context.BuyFlows.Add(rf); // rf = new BuyFlowModel(); rf.DocId = buyevaluate.DocId; rf.StepId = 2; rf.UserId = buyevaluate.EngId; rf.Status = "?"; AppUserModel u = _context.AppUsers.Find(buyevaluate.EngId); rf.Role = roleManager.GetRolesForUser(u.Id).FirstOrDefault(); rf.Rtp = null; rf.Rdt = null; rf.Rtt = DateTime.Now; rf.Cls = "設備工程師"; _context.BuyFlows.Add(rf); // _context.SaveChanges(); // Tmail mail = new Tmail(); string body = ""; u = _context.AppUsers.Find(user.Id); mail.from = new System.Net.Mail.MailAddress(u.Email); //u.Email u = _context.AppUsers.Find(buyevaluate.PurchaserId); mail.to = new System.Net.Mail.MailAddress(u.Email); //u.Email //mail.cc = new System.Net.Mail.MailAddress("*****@*****.**"); mail.message.Subject = "醫療儀器管理資訊系統[採購評估案]:儀器名稱: " + buyevaluate.PlantCnam; body += "<p>申請人:" + buyevaluate.UserName + "</p>"; body += "<p>儀器名稱:" + buyevaluate.PlantCnam + "</p>"; body += "<p><a href='http://dms.cch.org.tw/MvcMedEngMgr'>處理案件</a></p>"; body += "<br/>"; body += "<h3>this is a inform letter from system manager. Do not reply for it.</h3>"; mail.message.Body = body; mail.message.IsBodyHtml = true; //mail.SendMail(); return(RedirectToAction("Index", "Home", new { Area = "" })); } return(View(buyevaluate)); }