public ActionResult Edit(vFUNC_Manage VFM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Fun"; SL.Action = "Edit"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { FUNC F = context.FUNCS.Find(VFM.SN); F.FuncName = VFM.FuncName; F.Controller = VFM.Controller; F.Action = VFM.Action; F.Url = VFM.Url; F.PId = VFM.PId; F.ShowOrder = VFM.ShowOrder; F.IsEnable = VFM.IsEnable; F.UpadteAccount = Session["UserID"].ToString().Trim(); F.UpdateTime = DateTime.Now; context.Entry(F).State = EntityState.Modified; context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "編輯功能作業成功,FId:[" + VFM.FId.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Fun")); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "編輯功能作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["EditMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("Edit", "Fun", new { SN = VFM.SN })); } }
public ActionResult Edit(string UId) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Account"; SL.Action = "Create"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vEPSUSER_Manage VUM = new vEPSUSER_Manage(); EPSUSER U = context.EPSUSERS.Find(UId); VUM.UId = UId; VUM.UserName = U.UserName; VUM.UserPwd = U.UserPwd; VUM.UserEmail = U.UserEmail; VUM.RId = U.RId; var query = from r in context.EPSROLES select new { r.RId, r.RoleName }; VUM.Role = new SelectList(query, "RId", "RoleName"); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得使用者資料作業成功,UId:[" + UId + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VUM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得使用者資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Create", "Account")); } }
public ActionResult Index() { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Account"; SL.Action = "Index"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { var query = from u in context.EPSUSERS join r in context.EPSROLES on u.RId equals r.RId into USERS from x in USERS.DefaultIfEmpty() select new vEPSUSER { UId = u.UId, UserName = u.UserName, UserEmail = u.UserEmail, RoleName = x.RoleName, CreateAccount = u.CreateAccount, CreateTime = u.CreateTime, UpadteAccount = u.UpadteAccount, UpdateTime = u.UpdateTime }; SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得使用者清單作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(query.ToList())); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得使用者清單作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Login", "Account")); } }
/// <summary> /// 建立vCHECKs模型 /// </summary> /// <param name="CheckDate">檢核日期</param> /// <param name="Shift">班別代號</param> /// <returns></returns> private vCHECKs GenChecks(string CheckDate, string Shift) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "GenChecks"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { //組合vCHECKs var CP = context.CHECKPROCESSES.Where(b => b.CheckDate == CheckDate).ToList(); vCHECKs vCs = new vCHECKs(); vCHECKPROCESS[] vCPList = new vCHECKPROCESS[CP.Count()]; int i = 0; foreach (var item in CP) { vCHECKPROCESS vCP = new vCHECKPROCESS(); vCP = GetProcess(item.CheckSN, item.CheckDate, item.CheckID, Shift); vCPList[i] = vCP; i++; } vCs.vCHECKPROCESS = vCPList.ToList(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "建立[" + CheckDate + "]值班人員主畫面資料作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(vCs); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立[" + CheckDate + "]值班人員主畫面資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
public ActionResult Detail(string CheckSN, string CheckDate) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "Detail"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vCHECKPROCESS vCP = GetProcess(CheckSN, CheckDate); if (vCP != null) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]明細作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(vCP)); } else { //沒有檢核項目錯誤 SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]明細作業失敗,查無明細資料"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得[" + CheckSN + "]明細作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
// GET: Fun/Edit public ActionResult Edit(int SN) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Fun"; SL.Action = "Edit"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vFUNC_Manage VFM = new vFUNC_Manage(); FUNC F = context.FUNCS.Find(SN); VFM.SN = F.SN; VFM.FId = F.FId; VFM.FuncName = F.FuncName; VFM.PId = F.PId; VFM.Controller = F.Controller; VFM.Action = F.Action; VFM.Url = F.Url; VFM.ShowOrder = F.ShowOrder; VFM.IsEnable = F.IsEnable; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得功能資料作業成功,FId:[" + F.FId.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VFM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得功能資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Fun")); } }
public ActionResult Create() { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Role"; SL.Action = "Create"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vEPSROLE_Manage VRM = new vEPSROLE_Manage(); var query = from f in context.FUNCS select new { f.FId, f.FuncName }; VRM.Funcs = new SelectList(query, "FId", "FuncName"); //預設給予登出功能 VRM.FuncList = new int[] { 100 }; SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "建立角色表單作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VRM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立角色表單作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Role")); } }
/// <summary> /// 產生檢核編號 /// </summary> /// <param name="CheckDate">檢核日期</param> /// <param name="Count">要產生幾個編號</param> /// <param name="initCount">從幾號開始產生</param> /// <returns></returns> private List <string> GenCheckSN(string CheckDate, int Count, int initCount) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "GenCheckSN"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { List <string> ResutlList = new List <string>(); for (int i = initCount; i <= Count; i++) { char c = '0'; ResutlList.Add(CheckDate + i.ToString().PadLeft(2, c)); } SL.EndDateTime = DateTime.Now; SL.TotalCount = ResutlList.Count(); SL.SuccessCount = ResutlList.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "建立[" + CheckDate + "]檢核編號作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(ResutlList); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立[" + CheckDate + "]檢核編號作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
// // GET: /Fun/Create public ActionResult Create() { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Fun"; SL.Action = "Create"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vFUNC_Manage VFM = new vFUNC_Manage(); VFM.PId = 0; VFM.IsEnable = true; SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "建立角色表單作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VFM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立功能表單作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Fun")); } }
// GET: Fun public ActionResult Index() { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Fun"; SL.Action = "Index"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { var query = context.FUNCS.ToList(); SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得功能清單作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(query)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得功能清單作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Login", "Account")); } }
public ActionResult Logout() { //初始化系統參數 Configer.Init(); SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Account"; SL.Action = "Logout"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "登出作業成功,UId:[" + Session["UserID"].ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); Session.Clear(); return(RedirectToAction("Login", "Account")); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "登出作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Login", "Account")); } }
public ActionResult Edit(vEPSROLE_Manage VRM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Role"; SL.Action = "Edit"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { EPSROLE R = context.EPSROLES.Find(VRM.RId); R.RoleName = VRM.RoleName; R.UpadteAccount = Session["UserID"].ToString().Trim(); R.UpdateTime = DateTime.Now; //取得目前角色擁有的權限 var query1 = from rm in context.ROLEFUNCMAPPINGS where rm.RId == VRM.RId select new { rm.FId }; List <int> TmpList = new List <int>(); foreach (var item in query1) { TmpList.Add(item.FId); } //取得新增清單 var addResultList = VRM.FuncList.Except(TmpList); //取得移除清單 var delResultList = TmpList.Except(VRM.FuncList); //新增權限作業 if (addResultList != null) { foreach (var item in addResultList) { ROLEFUNCMAPPING RM = new ROLEFUNCMAPPING(); RM.RId = VRM.RId; RM.FId = item; RM.CreateAccount = Session["UserID"].ToString().Trim(); RM.CreateTime = DateTime.Now; RM.UpadteAccount = Session["UserID"].ToString().Trim(); RM.UpdateTime = DateTime.Now; context.ROLEFUNCMAPPINGS.Add(RM); context.SaveChanges(); } } //移除權限作業 if (delResultList != null) { foreach (var item in delResultList) { ROLEFUNCMAPPING RM = context.ROLEFUNCMAPPINGS.Where(b => b.RId == VRM.RId) .Where(b => b.FId == item) .First(); context.Entry(RM).State = EntityState.Deleted; context.SaveChanges(); } } context.Entry(R).State = EntityState.Modified; context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "編輯角色作業成功,RId:[" + VRM.RId.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Role")); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "編輯角色作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["EditMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("Edit", "Role", new { RId = VRM.RId })); } }
// GET: Role/Edit public ActionResult Edit(int RId) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Role"; SL.Action = "Edit"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vEPSROLE_Manage VRM = new vEPSROLE_Manage(); EPSROLE R = context.EPSROLES.Find(RId); VRM.RId = RId; VRM.RoleName = R.RoleName; //取得系統提供之所有權限 var query = from f in context.FUNCS select new { f.FId, f.FuncName }; VRM.Funcs = new SelectList(query, "FId", "FuncName"); //取得目前角色擁有的權限 var query1 = from rm in context.ROLEFUNCMAPPINGS where rm.RId == RId select new { rm.FId }; List <int> TmpList = new List <int>(); foreach (var item in query1) { TmpList.Add(item.FId); } VRM.FuncList = TmpList.ToArray(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得角色資料作業成功,RId:[" + RId.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VRM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得角色資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("Index", "Role")); } }
public ActionResult Create(vEPSROLE_Manage VRM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Role"; SL.Action = "Create"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { if (ModelState.IsValid) { EPSROLE R = new EPSROLE(); R.RoleName = VRM.RoleName; R.CreateAccount = Session["UserID"].ToString().Trim(); R.CreateTime = DateTime.Now; R.UpadteAccount = Session["UserID"].ToString().Trim(); R.UpdateTime = DateTime.Now; context.EPSROLES.Add(R); context.SaveChanges(); foreach (var item in VRM.FuncList) { ROLEFUNCMAPPING RM = new ROLEFUNCMAPPING(); RM.RId = R.RId; RM.FId = item; RM.CreateAccount = Session["UserID"].ToString().Trim(); RM.CreateTime = DateTime.Now; RM.UpadteAccount = Session["UserID"].ToString().Trim(); RM.UpdateTime = DateTime.Now; context.ROLEFUNCMAPPINGS.Add(RM); context.SaveChanges(); } SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "建立使用者作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); //TempData["CreateMsg"] = "<script>alert('新增成功');</script>"; return(RedirectToAction("Index", "Role")); } else { TempData["CreateMsg"] = "<script>alert('新增失敗');</script>"; return(RedirectToAction("Create", "Role")); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "建立角色作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["CreateMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("Create", "Role")); } }
/// <summary> /// 值班人員簽核 /// </summary> /// <param name="CheckSNs">日常檢核件編號集合</param> /// <param name="CheckIDs">機房檢核項目ID集合</param> /// <param name="CheckDate">檢核日期</param> /// <param name="Shift">班別</param> /// <param name="SignedDatas">簽章值集合</param> /// <returns></returns> public string Confirm(string[] CheckSNs, int[] CheckIDs, string CheckDate, string Shift, string[] SignedDatas) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "Confirm"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { int i = 0; foreach (var item in CheckSNs) { //取得CHECKPROCESS物件 CHECKPROCESS CP = context.CHECKPROCESSES.Find(item); if (CP != null) { //update CHECKPROCESSES EPSUSER U = context.EPSUSERS.Find(Session["UserID"].ToString().Trim()); switch (Shift) { //早班 case "01": CP.ShiftOne = U.UserName; CP.ShiftOneSign = SignedDatas[i]; CP.CloseStutus = "早班檢核完畢"; break; //晚班 case "03": CP.ShiftThree = U.UserName; CP.ShiftThreeSign = SignedDatas[i]; CP.CloseStutus = "晚班檢核完畢"; break; //假日班 case "04": CP.ShiftFour = U.UserName; CP.ShiftFourSign = SignedDatas[i]; CP.CloseStutus = "假日班檢核完畢"; break; } CP.UpadteAccount = Session["UserID"].ToString().Trim(); CP.UpdateTime = DateTime.Now; context.Entry(CP).State = EntityState.Modified; context.SaveChanges(); string CheckTitle = ""; CHECKTITLE CT = context.CHECKTITLES.Find(CheckIDs[i]); if (CT != null) { CheckTitle = CT.Title; } //更新覆核表單 var query = context.REVIEWDATAS.Where(b => b.CheckDate == CheckDate); if (query.Count() > 0) { foreach (var q in query.ToList()) { if (q.ListName == "事件描述及行動" || q.ListName == "交接事項") { if (Shift == "01") { q.ShiftOneChecked = ""; } else if (Shift == "03") { q.ShiftTrheeChecked = ""; } else if (Shift == "04") { q.ShiftFourChecked = ""; } } else { var query01 = context.CHECKLISTS.Where(b => b.ShiftID == Shift) .Where(b => b.ListName == q.ListName); if (query01.Count() > 0) { if (Shift == "01") { if (getCheckReuslt(CheckDate, Shift, q.ListName)) { q.ShiftOneChecked = "正常"; } else { q.ShiftOneChecked = "異常"; } } else if (Shift == "03") { if (getCheckReuslt(CheckDate, Shift, q.ListName)) { q.ShiftTrheeChecked = "正常"; } else { q.ShiftTrheeChecked = "異常"; } } else if (Shift == "04") { if (getCheckReuslt(CheckDate, Shift, q.ListName)) { q.ShiftFourChecked = "正常"; } else { q.ShiftFourChecked = "異常"; } } } } q.UpadteAccount = Session["UserID"].ToString().Trim(); q.UpdateTime = DateTime.Now; context.Entry(q).State = EntityState.Modified; context.SaveChanges(); } } else { //沒有覆核表單 } } SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = false; SL.Msg = "確認[" + item + "]作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } i++; if (Shift == "03" || Shift == "04") { bool CanNotify = true; string CloseStutus = ""; var queryCP = context.CHECKPROCESSES.Where(b => b.CheckDate == CheckDate); foreach (var item1 in queryCP.ToList()) { if (Shift == "03") { CloseStutus = "晚班檢核完畢"; if (item1.ShiftOne == "" || item1.ShiftThree == "") { CanNotify = false; break; } } else if (Shift == "04") { CloseStutus = "假日班檢核完畢"; if (item1.ShiftFour == "") { CanNotify = false; break; } } } if (CanNotify) { //通知下一位負責人 SF.emailNotify2ReviewbyDate(CloseStutus, Session["UserID"].ToString(), CheckDate, "覆核"); } } return("確認成功"); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "確認作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("確認失敗"); } }
/// <summary> /// 項目檢核 /// </summary> /// <param name="CheckSN">日常檢核件編號</param> /// <param name="CheckID">機房檢核項目ID</param> /// <param name="ListID">檢核項目ID</param> /// <param name="CheckResult">檢核結果</param> /// <param name="CheckDate">檢核日期</param> /// <param name="ShiftID">班別</param> /// <returns></returns> public string Check(string CheckSN, int CheckID, int ListID, string CheckResult, string CheckDate, string Shift) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "GetProcess"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { string Title = context.CHECKTITLES.Find(CheckID).Title; string CheckName = context.CHECKLISTS.Find(ListID).Definition; CHECKLIST CL = context.CHECKLISTS.Find(ListID); if (CL.ShiftID == "00") { Shift = "00"; } //檢查CHECKPROCESS有沒有資料 var query = context.CHECKPROCESSDETAILS.Where(b => b.ListID == ListID) .Where(b => b.CheckSN == CheckSN) .Where(b => b.CheckID == CheckID) .Where(b => b.CheckDate == CheckDate) .Where(b => b.ShiftID == Shift); if (query.Count() > 0) { //update CHECKPROCESSDETAILS CHECKPROCESSDETAIL CPD = context.CHECKPROCESSDETAILS.Where(b => b.ListID == ListID) .Where(b => b.CheckSN == CheckSN) .Where(b => b.CheckID == CheckID) .Where(b => b.CheckDate == CheckDate) .Where(b => b.ShiftID == Shift).First(); CPD.CheckResult = CheckResult; CPD.UpadteAccount = Session["UserID"].ToString().Trim(); CPD.UpdateTime = DateTime.Now; context.Entry(CPD).State = EntityState.Modified; context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckSN + "]檢核[" + Title + "][" + CheckName + "]作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("檢核成功"); } else { //insert CHECKPROCESSDETAILS CHECKPROCESSDETAIL newCPD = new CHECKPROCESSDETAIL(); newCPD.CheckSN = CheckSN; newCPD.CheckID = CheckID; newCPD.ListID = ListID; newCPD.ShiftID = Shift; newCPD.CheckDate = CheckDate; newCPD.CheckResult = CheckResult; newCPD.CreateAccount = Session["UserID"].ToString().Trim(); newCPD.CreateTime = DateTime.Now; newCPD.UpadteAccount = Session["UserID"].ToString().Trim(); newCPD.UpdateTime = DateTime.Now; context.CHECKPROCESSDETAILS.Add(newCPD); context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckSN + "]檢核[" + Title + "][" + CheckName + "]作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("檢核成功"); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckSN + "]檢核流程作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("檢核失敗"); } }
/// <summary> /// 建立覆核表單 /// </summary> /// <param name="CheckDate">檢核日期</param> private void GenReviewData(string CheckDate) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "GenReviewData"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { var query = context.CHECKPROCESSES.Where(b => b.CheckDate == CheckDate).ToList(); foreach (var q in query) { var ListNames = context.CHECKLISTS.Where(b => b.CheckID == q.CheckID).Select(m => new { m.ListName, m.ShowOrder }).Distinct().OrderBy(c => c.ShowOrder); foreach (var item in ListNames.ToList()) { REVIEWDATA RD = new REVIEWDATA(); RD.CheckDate = CheckDate; RD.CheckSN = q.CheckSN; RD.ListName = item.ListName; RD.ShiftOneChecked = "N/A"; RD.ShiftTrheeChecked = "N/A"; RD.ShiftFourChecked = "N/A"; RD.CreateAccount = "System"; RD.CreateTime = DateTime.Now; RD.UpadteAccount = "System"; RD.UpdateTime = DateTime.Now; context.REVIEWDATAS.Add(RD); context.SaveChanges(); } SL.EndDateTime = DateTime.Now; SL.TotalCount = ListNames.Count(); SL.SuccessCount = ListNames.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "建立[" + CheckDate + "]覆核表單作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立[" + CheckDate + "]覆核表單作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } }
private vSystemLog getSystemLog(string nowUser, DateTime STime, DateTime ETime, string nowResult, int CurrentPage) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Log"; SL.Action = "getSystemLog"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; vSystemLog vSL = new vSystemLog(); try { Expression <Func <SYSTEMLOG, bool> > SystemLogUserWhereCondition; if (nowUser != "-1") { SystemLogUserWhereCondition = b => b.UId == nowUser; } else { SystemLogUserWhereCondition = b => 1 == 1; } Expression <Func <SYSTEMLOG, bool> > SystemLogResultWhereCondition; if (nowResult != "-1") { bool x = bool.Parse(nowResult); SystemLogResultWhereCondition = b => b.Result == x; } else { SystemLogResultWhereCondition = b => 1 == 1; } var query = context.SYSTEMLOG.Where(SystemLogUserWhereCondition) .Where(SystemLogResultWhereCondition) .Where(b => b.StartDateTime >= STime) .Where(b => b.EndDateTime <= ETime) .OrderBy(b => b.StartDateTime); if (query.Count() > 0) { var SystemLogList = query.ToPagedList(CurrentPage, Configer.NumofgridviewPage_perrows); vSL.SYSTEMLOGList = SystemLogList; vSL.nowUser = nowUser; vSL.PageIndex = CurrentPage; vSL.nowResult = nowResult; vSL.UserList = SF.getUserList(nowUser); // Adds the empty item at the top of the list List <SelectListItem> ResultListItmes = new List <SelectListItem>(); ResultListItmes.Add(new SelectListItem { Text = "全部", Value = "-1" }); ResultListItmes.Add(new SelectListItem { Text = "成功", Value = "true" }); ResultListItmes.Add(new SelectListItem { Text = "失敗", Value = "false" }); vSL.ResultList = ResultListItmes; SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得系統紀錄作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(vSL); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得系統紀錄作業成功,本次查詢無資料"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得系統紀錄作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
/// <summary> /// 取得vCHECKPROCESS模型 /// </summary> /// <param name="CheckSN">檢核編號</param> /// <param name="CheckDate">檢核日期</param> /// <param name="CheckID">檢核項目代號</param> /// <param name="Shift">班別代號</param> /// <returns></returns> private vCHECKPROCESS GetProcess(string CheckSN, string CheckDate, int CheckID, string Shift) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Process"; SL.Action = "GetProcess"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vCHECKPROCESS vCP = new vCHECKPROCESS(); vCP.CheckSN = CheckSN; vCP.CheckDate = CheckDate; CHECKTITLE CT = context.CHECKTITLES.Find(CheckID); vCP.Title = CT.Title; vCP.CheckID = CT.CheckID; var query = from cp in context.CHECKPROCESSES where cp.CheckSN == CheckSN where cp.CheckDate == CheckDate join cl in context.CHECKLISTS on cp.CheckID equals cl.CheckID join cd in context.CHECKPROCESSDETAILS.Where(b => b.CheckDate == CheckDate) on cl.ListID equals cd.ListID into x from y in x.DefaultIfEmpty() select new vCHECKDETAIL { ListID = cl.ListID, CheckID = cl.CheckID, ListName = cl.ListName, CheckType = cl.CheckType, Shift = cl.ShiftID, Charger = cl.ChargerID, StartTime = cl.StartTime, EndTime = cl.EndTime, CheckResult = y.CheckResult, CloseStatus = cp.CloseStutus }; if (query.Count() > 0) { //根據班別挑出檢核項目 var Shifts = new string[] { "00", Shift }; query = query.Where(b => Shifts.Contains(b.Shift)); //取得特定角色下的使用者清單 int RId = Convert.ToInt32(Session["UserRole"].ToString()); //只有OPManager角色需要處理 if (RId == 3) { //依據負責人挑出檢核項目 var Users = context.EPSUSERS.Where(b => b.RId == RId).Select(b => b.UId).ToList(); SF.logandshowInfo("Users:" + Users.ToString(), log_Info); int C = query.Where(b => Users.Contains(b.Charger)).Count(); SF.logandshowInfo("C:" + C.ToString(), log_Info); if (C > 0) { query = query.Where(b => Users.Contains(b.Charger)); } } vCP.vCHECKDETAILs = query.OrderBy(b => b.StartTime).ToList(); SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]檢核流程作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(vCP); } else { //沒有檢核項目錯誤 SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]檢核流程作業失敗,沒有對應檢核項目"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得[" + CheckSN + "]檢核流程作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
public ActionResult EditItem(vCHECKLIST_Manage VCLM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Document"; SL.Action = "EditItem"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { if (ModelState.IsValid) { CHECKLIST nowCL = context.CHECKLISTS.Find(VCLM.ListID); //nowCL.ListID = CL.ListID; nowCL.CheckID = VCLM.CheckID; nowCL.ListName = VCLM.ListName; nowCL.Definition = VCLM.Definition; nowCL.StartTime = VCLM.StartTime; nowCL.EndTime = VCLM.EndTime; nowCL.ShiftID = VCLM.ShiftID; nowCL.ClassID = VCLM.ClassID; nowCL.CheckType = VCLM.CheckType; nowCL.AlwaysShow = VCLM.AlwaysShow; nowCL.ChargerID = VCLM.ChargerID; nowCL.ShowOrder = VCLM.ShowOrder; nowCL.UpadteAccount = Session["UserID"].ToString().Trim();; nowCL.UpdateTime = DateTime.Now; context.Entry(nowCL).State = EntityState.Modified; context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "編輯檢核項目作業成功,ListID:[" + VCLM.ListID + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); //string Title = context.CHECKTITLES.Find(VCLM.CheckID).Title; return(RedirectToAction("ListItem", "Document", new { CheckID = VCLM.CheckID, Title = VCLM.CheckTitle })); } else { TempData["EditMsg"] = "<script>alert('編輯失敗');</script>"; return(RedirectToAction("EditItem", "Document", new { ListID = VCLM.ListID })); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "編輯檢核項目作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["EditMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("EditItem", "Document", new { ListID = VCLM.ListID })); } }
/// <summary> /// 簽核 /// </summary> /// <param name="CheckSNs"></param> /// <param name="CheckDates"></param> /// <param name="SignedData"></param> /// <returns></returns> public string Confirm(List <string> CheckSNs, List <string> CheckDates, string SignedData) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "Confirm"; SL.StartDateTime = DateTime.Now; string UId = Session["UserID"].ToString(); string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; int TotalCount = 0; int SuccessCount = 0; int FailCount = 0; bool ReviewOK = true; try { string CloseStutus = ""; TotalCount = CheckSNs.Count(); foreach (var item in CheckSNs) { CHECKPROCESS CP = context.CHECKPROCESSES.Find(item); if (CP != null) { //update CHECKPROCESSES EPSUSER U = context.EPSUSERS.Find(UId); int Role = U.RId;// int.Parse(UId); switch (Role) { //機房領班 case 3: CP.ShiftTop = U.UserName; CP.ShiftTopSign = SignedData; CP.CloseStutus = "領班覆核完畢"; CloseStutus = "領班覆核完畢"; break; //主管 case 4: CP.ManageOne = U.UserName; CP.ManageOneSign = SignedData; CP.CloseStutus = "主管覆核完畢"; CloseStutus = "主管覆核完畢"; break; //系統部主管 case 5: CP.ManageTop = U.UserName; CP.ManageTopSign = SignedData; CP.CloseStutus = "已結案"; CloseStutus = "已結案"; break; } CP.UpadteAccount = UId; CP.UpdateTime = DateTime.Now; context.Entry(CP).State = EntityState.Modified; context.SaveChanges(); SuccessCount += 1; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = false; SL.Msg = "覆核[" + item + "]作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } else { FailCount += 1; ReviewOK = false; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "覆核[" + item + "]作業失敗,查無檢核流程資料"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } } if (ReviewOK) { //通知下一位負責人,已結案則通知機房領班、機房主管、系統部主管 if (CloseStutus == "已結案") { SF.emailNotify2ClosebyDate(CloseStutus, UId, CheckDates[0].ToString(), CloseStutus); } else { SF.emailNotify2ReviewbyDate(CloseStutus, UId, CheckDates[0].ToString(), "覆核"); } SL.EndDateTime = DateTime.Now; SL.TotalCount = TotalCount; SL.SuccessCount = SuccessCount; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckDates[0].ToString() + "]覆核作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("全部覆核成功"); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = TotalCount; SL.SuccessCount = SuccessCount; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckDates[0].ToString() + "]覆核作業失敗"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("有" + FailCount.ToString() + "筆資料覆核失敗"); } } catch (Exception ex) { ReviewOK = false; SL.EndDateTime = DateTime.Now; SL.TotalCount = CheckSNs.Count(); SL.SuccessCount = 0; SL.FailCount = CheckSNs.Count(); SL.Result = false; SL.Msg = "覆核作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("覆核發生異常"); } }
/// <summary> /// 駁回 /// </summary> /// <param name="CheckSNs"></param> /// <param name="CheckDates"></param> /// <param name="Reason"></param> /// <returns></returns> public string Reject(List <string> CheckSNs, List <string> CheckDates, string Reason) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "Reject"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; int TotalCount = 0; int SuccessCount = 0; int FailCount = 0; bool RejectOK = true; try { TotalCount = CheckSNs.Distinct().Count(); foreach (var item in CheckSNs.Distinct()) { CHECKPROCESS CP = context.CHECKPROCESSES.Find(item); REJECTREASON RR = new REJECTREASON(); if (CP != null) { CP.CloseStutus = "檢查中"; CP.UpadteAccount = Session["UserID"].ToString().Trim(); CP.UpdateTime = DateTime.Now; context.Entry(CP).State = EntityState.Modified; RR.CheckSN = item; RR.Reason = Reason; RR.CreateAccount = Session["UserID"].ToString().Trim(); RR.CreateTime = DateTime.Now; context.REJECTREASONS.Add(RR); context.SaveChanges(); SuccessCount += 1; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = false; SL.Msg = "駁回[" + item + "]作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } else { FailCount += 1; RejectOK = false; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "駁回[" + item + "]作業失敗,查無檢核流程資料"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); } } if (RejectOK) { int Role = int.Parse(Session["UserRole"].ToString()); string CloseStutus = ""; ////通知下一位負責人 switch (Role) { //機房領班 case 3: CloseStutus = "領班駁回"; break; //主管 case 4: CloseStutus = "主管駁回"; break; //系統部主管 case 5: CloseStutus = "系統部主管駁回"; break; } SF.emailNotify2RejectbyDate(CloseStutus, Session["UserID"].ToString(), CheckDates[0].ToString()); SL.EndDateTime = DateTime.Now; SL.TotalCount = TotalCount; SL.SuccessCount = SuccessCount; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckDates[0].ToString() + "]駁回作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("全部駁回成功"); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = TotalCount; SL.SuccessCount = SuccessCount; SL.FailCount = 0; SL.Result = false; SL.Msg = "[" + CheckDates[0].ToString() + "]駁回作業失敗"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("有" + FailCount.ToString() + "筆資料駁回失敗"); } } catch (Exception ex) { RejectOK = false; SL.EndDateTime = DateTime.Now; SL.TotalCount = CheckSNs.Count(); SL.SuccessCount = 0; SL.FailCount = CheckSNs.Count(); SL.Result = false; SL.Msg = "駁回作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return("駁回發生異常"); } }
/// <summary> /// 取得vCHECKPROCESS模型 /// </summary> /// <param name="CheckSN">檢核編號</param> /// <param name="CheckDate">檢核日期</param> /// <returns></returns> private vCHECKPROCESS GetProcess(string CheckSN, string CheckDate) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "GetProcess"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vCHECKPROCESS vCP = new vCHECKPROCESS(); vCP.CheckSN = CheckSN; vCP.CheckDate = CheckDate; int CheckID = context.CHECKPROCESSES.Find(CheckSN).CheckID; CHECKTITLE CT = context.CHECKTITLES.Find(CheckID); vCP.Title = CT.Title; var query = from cp in context.CHECKPROCESSES where cp.CheckSN == CheckSN where cp.CheckDate == CheckDate join cd in context.CHECKPROCESSDETAILS.Where(b => b.CheckDate == CheckDate) on cp.CheckID equals cd.CheckID join cl in context.CHECKLISTS on cd.ListID equals cl.ListID into x from y in x.DefaultIfEmpty() select new vCHECKDETAIL { ListID = y.ListID, CheckID = y.CheckID, ListName = y.ListName, CheckType = y.CheckType, Shift = y.ShiftID, StartTime = y.StartTime, EndTime = y.EndTime, CheckResult = cd.CheckResult, CloseStatus = cp.CloseStutus }; if (query.Count() > 0) { //根據班別挑出檢核項目 //var Shifts = new string[] { "00", Shift }; //query = query.Where(b => Shifts.Contains(b.Shift)); vCP.vCHECKDETAILs = query.OrderBy(b => b.StartTime).ToList(); SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]檢核流程作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(vCP); } else { //沒有檢核項目錯誤 SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckSN + "]檢核流程作業失敗,沒有對應檢核項目"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得[" + CheckSN + "]檢核流程作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
public ActionResult Summary(string CheckDate) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "Summary"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { vReviewSummary vRS = new vReviewSummary(); vRS.CheckDate = CheckDate; string CheckSN = CheckDate + "01"; vRS.EventItem = context.CHECKPROCESSDETAILS.Where(b => b.CheckSN == CheckSN).Where(b => b.ListID == 1).First().CheckResult; vRS.HandoverItem = context.CHECKPROCESSDETAILS.Where(b => b.CheckSN == CheckSN).Where(b => b.ListID == 2).First().CheckResult; var query01 = context.CHECKPROCESSES.Where(b => b.CheckDate == CheckDate).Where(b => b.CheckID == 1); if (query01.Count() > 0) { vRS.ShiftOne = query01.First().ShiftOne; vRS.ShiftThree = query01.First().ShiftThree; vRS.ShiftFour = query01.First().ShiftFour; vRS.ShiftTop = query01.First().ShiftTop; vRS.ManageOne = query01.First().ManageOne; vRS.ManageTop = query01.First().ManageTop; } var query = context.REVIEWDATAS.Where(b => b.CheckDate == CheckDate); //.Where(b=>b.ListName!= "事件描述及行動").Where(b=>b.ListName != "交接事項"); if (query.Count() > 0) { SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckDate + "]覆核資料作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); DateTime parsed; string parsedTime = "取得檢核件時間錯誤"; if (DateTime.TryParseExact(CheckDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed)) { parsedTime = parsed.ToString("yyyy-MM-dd"); } TempData["TitleText"] = parsedTime + " 檢核資料"; vRS.RD = query.ToList(); return(View(vRS)); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[" + CheckDate + "]覆核資料作業失敗," + "錯誤訊息[找不到待覆核資料]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得[" + CheckDate + "]覆核資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
// GET: Review public ActionResult Index() { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Review"; SL.Action = "Index"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; //int RoleID = Int32.Parse(Session["UserRole"].ToString()); string RoleID = Session["UserRole"].ToString(); try { var query = from rp in context.REVIEWPROFILES.Where(b => b.NextReviews == RoleID) join cp in context.CHECKPROCESSES.Where(b => b.CloseStutus != "檢查中") .Where(b => b.CloseStutus != "早班檢核完畢") on rp.CloseStauts equals cp.CloseStutus join ct in context.CHECKTITLES on cp.CheckID equals ct.CheckID into x from y in x.DefaultIfEmpty() select new vReview { CheckSN = cp.CheckSN, CheckDate = cp.CheckDate, Title = y.Title, CloseStutus = cp.CloseStutus, ShiftOne = cp.ShiftOne, ShiftThree = cp.ShiftThree, ShiftFour = cp.ShiftFour, ShiftTop = cp.ShiftTop, ManageOne = cp.ManageOne, ManageTop = cp.ManageTop }; if (query.Count() > 0) { SL.EndDateTime = DateTime.Now; SL.TotalCount = query.Count(); SL.SuccessCount = query.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[待覆核資料]流程作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(query.OrderBy(b => b.CheckSN).ToList())); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得[待覆核資料]流程作業成功,目前無待覆核資料"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "取得[待覆核資料]流程作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(null); } }
public ActionResult Create(vFUNC_Manage VFM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Fun"; SL.Action = "Create"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { if (ModelState.IsValid) { FUNC F = new FUNC(); F.FId = VFM.FId; F.FuncName = VFM.FuncName; F.Controller = VFM.Controller; F.Action = VFM.Action; F.Url = VFM.Url; F.PId = VFM.PId; F.ShowOrder = VFM.ShowOrder; F.IsEnable = VFM.IsEnable; F.CreateAccount = Session["UserID"].ToString().Trim(); F.CreateTime = DateTime.Now; F.UpadteAccount = Session["UserID"].ToString().Trim(); F.UpdateTime = DateTime.Now; context.FUNCS.Add(F); context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "建立功能作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); //TempData["CreateMsg"] = "<script>alert('新增成功');</script>"; return(RedirectToAction("Index", "Fun")); } else { TempData["CreateMsg"] = "<script>alert('新增失敗');</script>"; return(RedirectToAction("Create", "Fun")); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "建立功能作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["CreateMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("Create", "Fun")); } }
public ActionResult Login(LoginInfo model) { //初始化系統參數 Configer.Init(); AD AD = new AD(); VA VA = new VA(); LoginProcessor LP = new LoginProcessor(); bool UseCertLogin = false; string LDAPName = Configer.LDAPName; //string VAVerifyURL = WebConfigurationManager.AppSettings["VAVerifyURL"]; //string ConnStr = Configer.C_DBConnstring; Boolean ContinueLogin = true; //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = model.UserID; SL.Controller = "Account"; SL.Action = "Login"; SL.StartDateTime = DateTime.Now; SL.TotalCount = 1; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; //string SendResult = string.Empty; if (ModelState.IsValid) { if (LDAPName == "") { //缺少系統參數,需記錄錯誤 SL.EndDateTime = DateTime.Now; SL.SuccessCount = 0; SL.FailCount = 1; SL.Msg = "登入作業失敗,錯誤訊息:[缺少系統參數LDAPName]"; SL.Result = false; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); ContinueLogin = false; } if (ContinueLogin) { AD.UserName = model.UserID; AD.Pwd = model.Pwd; AD.validType = AD.ValidType.Domain; AD.LDAPName = LDAPName; //VA.SignData = model.SignData; //VA.Plaintext = model.Plaintext; //VA.txnCode = "TxnCode"; //VA.VAVerifyURL = VAVerifyURL; //VA.Tolerate = 120; DateTime LoginStartTime = DateTime.Now; SF.logandshowInfo("登入開始@" + LoginStartTime.ToString(Configer.SystemDateTimeFormat), log_Info); bool LoginResult = LP.DoLogin(UseCertLogin, AD, VA); DateTime LoginEndTime = DateTime.Now; SF.logandshowInfo("登入結束@" + LoginEndTime.ToString(Configer.SystemDateTimeFormat), log_Info); string LoginSpanTime = OtherProcesser.TimeDiff(LoginStartTime, LoginEndTime, "Milliseconds"); SF.logandshowInfo("本次登入共花費@" + LoginSpanTime + "毫秒", log_Info); if (LoginResult == true) { //登入成功,需紀錄 SL.EndDateTime = DateTime.Now; SL.SuccessCount = 1; SL.FailCount = 0; SL.Msg = "登入成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); Session["UseCertLogin"] = UseCertLogin; //Session["UseCertLogin"] = true; Session["UserID"] = model.UserID; //Session["UserID"] = "TAS191"; int UserRole = SF.getUserRole(model.UserID); Session["UserRole"] = UserRole; //主管導向覆核頁面 if (UserRole > 3) { return(RedirectToAction("Index", "Review")); } else { //導向檢查頁面 return(RedirectToAction("Index", "Process")); } } else { //string a=VA.ResultStr; //登入失敗,需記錄錯誤 SL.EndDateTime = DateTime.Now; SL.FailCount = 1; if (UseCertLogin) { SL.Msg = "登入失敗,錯誤訊息:[AD或VA驗證失敗]"; } else { SL.Msg = "登入失敗,錯誤訊息:[AD驗證失敗]"; } SL.Result = false; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["LoginMsg"] = SL.Msg; return(RedirectToAction("Login", "Account")); } } else { TempData["LoginMsg"] = "登入失敗,錯誤訊息:[系統登入參數遺失]"; return(RedirectToAction("Login", "Account")); } } else { return(RedirectToAction("Login", "Account")); } }
/// <summary> /// 產生CHECKPROCESS資料 /// </summary> /// <param name="CheckSNList">檢核編號清單</param> /// <param name="CheckDate">檢核日期</param> /// <returns></returns> private bool GenCheckProcess(List <string> CheckSNList, string CheckDate) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = "System"; SL.Controller = "Process"; SL.Action = "GenCheckProcess"; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; bool Result = true; try { var CT = context.CHECKTITLES.ToList(); if (CheckSNList != null) { //產生CHECKPROCESS int i = 0; foreach (var item in CT) { CHECKPROCESS newCP = new CHECKPROCESS(); newCP.CheckSN = CheckSNList[i]; newCP.CheckID = item.CheckID; newCP.CheckDate = CheckDate; newCP.CloseStutus = "檢查中"; newCP.CreateAccount = "System"; newCP.CreateTime = DateTime.Now; newCP.UpadteAccount = "System"; newCP.UpdateTime = DateTime.Now; newCP.CheckDate = CheckDate; context.CHECKPROCESSES.Add(newCP); context.SaveChanges(); i++; } SL.EndDateTime = DateTime.Now; SL.TotalCount = CheckSNList.Count(); SL.SuccessCount = CheckSNList.Count(); SL.FailCount = 0; SL.Result = true; SL.Msg = "建立[" + CheckDate + "]檢核流程作業成功"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(Result); } else { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立[" + CheckDate + "]檢核流程作業失敗," + "錯誤訊息[無檢核編號]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); Result = false; return(Result); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 0; SL.SuccessCount = 0; SL.FailCount = 0; SL.Result = false; SL.Msg = "建立[" + CheckDate + "]檢核流程作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); Result = false; return(Result); } }
public ActionResult Edit(vEPSUSER_Manage VUM) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Account"; SL.Action = "Create"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { if (ModelState.IsValid) { EPSUSER U = context.EPSUSERS.Find(VUM.UId); U.UserPwd = VUM.UserPwd; U.UserEmail = VUM.UserEmail; U.RId = VUM.RId; U.UpadteAccount = Session["UserID"].ToString().Trim(); U.UpdateTime = DateTime.Now; context.Entry(U).State = EntityState.Modified; context.SaveChanges(); SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "編輯使用者資料作業成功,UId:[" + VUM.UId + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); //TempData["EditMsg"] = "<script>alert('編輯成功');</script>"; return(RedirectToAction("Index", "Account")); } else { TempData["EditMsg"] = "<script>alert('編輯失敗');</script>"; return(RedirectToAction("Edit", "Account", new { UId = VUM.UId })); } } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "編輯使用者作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); TempData["EditMsg"] = "<script>alert('發生異常');</script>"; return(RedirectToAction("Edit", "Account", new { UId = VUM.UId })); } }
public ActionResult EditItem(int ListID) { //初始化系統參數 Configer.Init(); //Log記錄用 SYSTEMLOG SL = new SYSTEMLOG(); SL.UId = Session["UserID"].ToString(); SL.Controller = "Document"; SL.Action = "EditItem"; SL.TotalCount = 1; SL.StartDateTime = DateTime.Now; string MailServer = Configer.MailServer; int MailServerPort = Configer.MailServerPort; string MailSender = Configer.MailSender; List <string> MailReceiver = Configer.MailReceiver; try { CHECKLIST CL = context.CHECKLISTS.Find(ListID); CHECKTITLE CT = context.CHECKTITLES.Find(CL.CheckID); vCHECKLIST_Manage VCTM = new vCHECKLIST_Manage(); VCTM.CheckTitle = CT.Title; VCTM.CheckID = CL.CheckID; VCTM.ListName = CL.ListName; VCTM.Definition = CL.Definition; VCTM.CheckTitle = CT.Title; TempData["CheckID"] = CL.CheckID; TempData["Title"] = CT.Title; //取得班別清單 var query1 = from s in context.CHECKSHIFTS select new { s.ShiftID, s.ShiftValue }; VCTM.ShiftID = CL.ShiftID; VCTM.ShiftIDList = new SelectList(query1, "ShiftID", "ShiftValue"); //取得分類清單 var query2 = from c in context.CHECKCLASSES select new { c.ClassID, c.ClassValue }; VCTM.ClassID = CL.ClassID; VCTM.ClassIDList = new SelectList(query2, "ClassID", "ClassValue"); //取得負責人清單 var query = from u in context.EPSUSERS select new { u.UId, u.UserName }; VCTM.ChargerID = CL.ChargerID; VCTM.ChargerList = new SelectList(query, "UId", "UserName"); VCTM.CheckType = CL.CheckType; VCTM.AlwaysShow = CL.AlwaysShow; VCTM.StartTime = CL.StartTime; VCTM.EndTime = CL.EndTime; VCTM.ShowOrder = CL.ShowOrder; SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 1; SL.FailCount = 0; SL.Result = true; SL.Msg = "取得檢核項目資料作業成功,ListID:[" + ListID.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(View(VCTM)); } catch (Exception ex) { SL.EndDateTime = DateTime.Now; SL.TotalCount = 1; SL.SuccessCount = 0; SL.FailCount = 1; SL.Result = false; SL.Msg = "取得檢核項目資料作業失敗," + "錯誤訊息[" + ex.ToString() + "]"; SF.log2DB(SL, MailServer, MailServerPort, MailSender, MailReceiver); return(RedirectToAction("ListItem", "Document")); } }