/// <summary> /// 清除黑名单 /// </summary> /// <param name="readingRooms"></param> public void BlacklistOperating() { try { DateTime nowDateTime = ServiceDateTime.Now; List <BlackListInfo> bllist = T_SM_Blacklist.GetBlackListInfo(null); if (bllist != null) { foreach (BlackListInfo bli in bllist) { if ((bli.OutTime < nowDateTime) && (bli.OutBlacklistMode == LeaveBlacklistMode.AutomaticMode)) { bli.BlacklistState = LogStatus.Fail; T_SM_Blacklist.UpdateBlackList(bli); WriteLog.Write("监控服务:读者" + bli.CardNo + ",处罚结束,离开黑名单"); //ReaderNoticeInfo notice = new ReaderNoticeInfo(); //notice.CardNo = bli.CardNo; //notice.Type = NoticeType.DeleteBlacklistWarning; //notice.Note = "您的黑名单处罚已结束,请遵守座位使用规则,请勿再次违规。"; //T_SM_ReaderNotice.AddReaderNotice(notice); } } } } catch (Exception e) { WriteLog.Write(string.Format("监控服务:黑名单处理遇到异常:{0}", e.Message)); } }
public static void WriteLogs(string geturl) { string IllegalityLoginIsAddBlackList = System.Configuration.ConfigurationManager.AppSettings["IllegalityLoginIsAddBlackList"].ToString(); if (IllegalityLoginIsAddBlackList == "1") { #region 非法登录的,捕获到学号,一律加入黑名单 if (loginId != "admin" && loginId.Length > 0) { SeatManage.SeatManageComm.WriteLog.Write(string.Format("用户通过非法登录访问网站,访问页面地址为:{0},用户IP地址为:{1},登录名为:{2}", geturl, GetIP(), loginId)); if (T_SM_Blacklist.GetBlackListInfo(loginId).Count == 0) { SeatManage.ClassModel.BlackListInfo bli = new SeatManage.ClassModel.BlackListInfo(); SeatManage.ClassModel.RegulationRulesSetting regulationRulesSetting = SeatManage.Bll.T_SM_SystemSet.GetRegulationRulesSetting(); string CardNo = loginId; string Remark = "登录名为" + loginId + "的用户有非法登录访问网站行为,被拉入黑名单"; bli.CardNo = CardNo; bli.AddTime = SeatManage.Bll.ServiceDateTime.Now; bli.OutTime = DateTime.Parse(SeatManage.Bll.ServiceDateTime.Now.AddDays(30).ToShortDateString() + " 23:59:59"); bli.OutBlacklistMode = LeaveBlacklistMode.ManuallyMode;//(SeatManage.EnumType.LeaveBlacklistMode)int.Parse(ddlleaveMode.SelectedValue); bli.ReMark = Remark; int blackId = 0; int roomCount = 0; List <SeatManage.ClassModel.ReadingRoomInfo> roomlist = SeatManage.Bll.ClientConfigOperate.GetReadingRooms(null); foreach (SeatManage.ClassModel.ReadingRoomInfo roominfo in roomlist) { if (roominfo.Setting.BlackListSetting.Used) { bli.ReadingRoomID = roominfo.No; if (!(SeatManage.Bll.T_SM_Blacklist.AddBlackList(bli) > 0)) { // FineUI.Alert.Show("添加失败!"); WriteLog.Write("添加黑名单失败:" + loginId + ""); continue;// return; } else { roomCount++; } } } if (roomCount == 0) { blackId = SeatManage.Bll.T_SM_Blacklist.AddBlackList(bli); } } } #endregion } else { SeatManage.SeatManageComm.WriteLog.Write(string.Format("用户通过非法登录访问网站,访问页面地址为:{0},用户IP地址为:{1},登录名为:{2}", geturl, GetIP(), loginId)); } HttpContext.Current.Response.Redirect("~/Default.aspx"); }
public string StuBlacklistLog(string stuNo, string startDate, string EndDate) { try { if (!Verifylicensing()) { return("非法操作,此接口未进行授权!"); } List <BlackListInfo> list = T_SM_Blacklist.GetAllBlackListInfo(stuNo, SeatManage.EnumType.LogStatus.None, startDate + " 00:00:00", EndDate + " 23:59:59"); XmlDocument xmlDoc = new XmlDocument(); XmlDeclaration dec = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null); xmlDoc.AppendChild(dec); //创建根节点 XmlElement root = xmlDoc.CreateElement("BlacklistLog"); xmlDoc.AppendChild(root); for (int i = 0; i < list.Count; i++) { string readngRoomName = list[i].ReadingRoomName; string outBlcklist = list[i].OutBlacklistMode.ToString();; string AddTime = list[i].AddTime.ToString(); string outTime = list[i].OutTime.ToString(); string BlacklistState = list[i].BlacklistState.ToString(); XmlElement logNode = xmlDoc.CreateElement("Log"); logNode.SetAttribute("ReadingRoomName", readngRoomName); logNode.SetAttribute("AddTime", AddTime); logNode.SetAttribute("OutTime", outTime); logNode.SetAttribute("BlacklistState", BlacklistState); root.AppendChild(logNode); } return(xmlDoc.OuterXml); } catch (Exception ex) { return(ex.Message); } }
/// <summary> /// 开始计算 /// </summary> public static bool Upload() { try { DateTime sdt; string lastdate = GetLastDate(); if (!string.IsNullOrEmpty(lastdate)) { sdt = DateTime.Parse(lastdate); } else { sdt = SeatManage.Bll.T_SM_EnterOutLog_bak.GetFristLogDate(); } if (sdt <= DateTime.Parse("2000-1-1")) { return(true); } AMS.ServiceProxy.FileOperate fileOperate = new ServiceProxy.FileOperate(); sdt = sdt.AddDays(1); while (true) { //获取进出记录 List <EnterOutLogInfo> enterOutLogList = T_SM_EnterOutLog_bak.GetStatisticsLogsByDate(sdt); List <BespeakLogInfo> bespeakLogList = T_SM_SeatBespeak.GetBespeakList(null, null, sdt, 0, null); List <ViolationRecordsLogInfo> violationLogList = T_SM_ViolateDiscipline.GetViolationRecords(null, null, sdt.ToShortDateString(), sdt.Date.AddDays(1).AddSeconds(-1).ToString(), LogStatus.None, LogStatus.None); List <BlackListInfo> blacklistList = T_SM_Blacklist.GetAllBlackListInfo(null, LogStatus.None, sdt.ToShortDateString(), sdt.Date.AddDays(1).AddSeconds(-1).ToString()); if (enterOutLogList.Count <= 0 && bespeakLogList.Count <= 0 && violationLogList.Count <= 0 && sdt >= ServiceDateTime.Now.Date.AddDays(-1)) { break; } StringBuilder eolsb = new StringBuilder(); StringBuilder blisb = new StringBuilder(); StringBuilder vrisb = new StringBuilder(); StringBuilder bllsb = new StringBuilder(); foreach (EnterOutLogInfo eol in enterOutLogList) { //记录内容 eolsb.Append(eol.EnterOutLogID + ","); eolsb.Append(eol.EnterOutLogNo + ","); eolsb.Append(eol.EnterOutState + ","); eolsb.Append(eol.EnterOutTime + ","); //座位信息 eolsb.Append(eol.TerminalNum + ","); eolsb.Append(eol.SeatNo + ","); eolsb.Append(eol.ReadingRoomNo + ","); eolsb.Append(eol.ReadingRoomName + ","); //备注 eolsb.Append(eol.Flag + ","); eolsb.Append(eol.Remark + ","); //读者信息 eolsb.Append(eol.CardNo + ","); eolsb.Append(eol.ReaderName + ","); eolsb.Append(eol.Sex + ","); vrisb.Append(eol.DeptName + ","); vrisb.Append(eol.TypeName + ";"); eolsb.AppendLine(); } foreach (BespeakLogInfo bli in bespeakLogList) { blisb.Append(bli.BsepeaklogID + ","); blisb.Append(bli.BsepeakTime + ","); blisb.Append(bli.BsepeakState + ","); blisb.Append(bli.SubmitTime + ","); blisb.Append(bli.CancelPerson + ","); blisb.Append(bli.CancelTime + ","); blisb.Append(bli.SeatNo + ","); blisb.Append(bli.ReadingRoomNo + ","); blisb.Append(bli.ReadingRoomName + ","); blisb.Append(bli.Remark + ","); blisb.Append(bli.CardNo + ","); blisb.Append(bli.ReaderName + ","); blisb.Append(bli.Sex + ","); vrisb.Append(bli.DeptName + ","); vrisb.Append(bli.TypeName + ";"); blisb.AppendLine(); } foreach (ViolationRecordsLogInfo vri in violationLogList) { vrisb.Append(vri.ID + ","); vrisb.Append(vri.BlacklistID + ","); vrisb.Append(vri.WarningState + ","); vrisb.Append(vri.EnterFlag + ","); vrisb.Append(vri.EnterOutTime + ","); vrisb.Append(vri.Flag + ","); vrisb.Append(vri.SeatID + ","); vrisb.Append(vri.ReadingRoomID + ","); vrisb.Append(vri.ReadingRoomName + ","); vrisb.Append(vri.Remark + ","); vrisb.Append(vri.CardNo + ","); vrisb.Append(vri.ReaderName + ","); vrisb.Append(vri.Sex + ","); vrisb.Append(vri.DeptName + ","); vrisb.Append(vri.TypeName + ";"); vrisb.AppendLine(); } foreach (BlackListInfo bli in blacklistList) { bllsb.Append(bli.ID + ","); bllsb.Append(bli.AddTime + ","); bllsb.Append(bli.BlacklistState + ","); bllsb.Append(bli.OutBlacklistMode + ","); bllsb.Append(bli.OutTime + ","); bllsb.Append(bli.ReadingRoomID + ","); bllsb.Append(bli.ReadingRoomName + ","); bllsb.Append(bli.ReMark + ","); bllsb.Append(bli.CardNo + ","); bllsb.Append(bli.ReaderName + ","); bllsb.Append(bli.Sex + ","); bllsb.Append(bli.DeptName + ","); bllsb.Append(bli.TypeName + ";"); bllsb.AppendLine(); } try { string filedateName = sdt.Year + "-" + sdt.Month + "-" + sdt.Day; SaveLog("EOL_" + filedateName, eolsb.ToString()); SaveLog("BSL_" + filedateName, blisb.ToString()); SaveLog("VRL_" + filedateName, vrisb.ToString()); SaveLog("BLL_" + filedateName, bllsb.ToString()); //压缩文件 string fileDircetoryPath = AppDomain.CurrentDomain.BaseDirectory + "StatisticsTmp\\"; SeatManage.SeatManageComm.ZipUtil.ZipFile(fileDircetoryPath + "EOL_" + filedateName, fileDircetoryPath + "ZEOL_" + filedateName); SeatManage.SeatManageComm.ZipUtil.ZipFile(fileDircetoryPath + "BSL_" + filedateName, fileDircetoryPath + "ZBSL_" + filedateName); SeatManage.SeatManageComm.ZipUtil.ZipFile(fileDircetoryPath + "VRL_" + filedateName, fileDircetoryPath + "ZVRL_" + filedateName); SeatManage.SeatManageComm.ZipUtil.ZipFile(fileDircetoryPath + "BLL_" + filedateName, fileDircetoryPath + "ZBLL_" + filedateName); //上传文件 fileOperate.UpdateFile(fileDircetoryPath + "ZEOL_" + filedateName, ServiceSet.SchoolNums + "_ZEOL_" + filedateName, SeatManageSubsystem.EnterOutLog); fileOperate.UpdateFile(fileDircetoryPath + "ZBSL_" + filedateName, ServiceSet.SchoolNums + "_ZBSL_" + filedateName, SeatManageSubsystem.BespeakLog); fileOperate.UpdateFile(fileDircetoryPath + "ZVRL_" + filedateName, ServiceSet.SchoolNums + "_ZVRL_" + filedateName, SeatManageSubsystem.ViolateDiscipline); fileOperate.UpdateFile(fileDircetoryPath + "ZBLL_" + filedateName, ServiceSet.SchoolNums + "_ZBLL_" + filedateName, SeatManageSubsystem.Blistlist); //删除缓存文件 Directory.Delete(fileDircetoryPath, true); SetLastDate(sdt.ToShortDateString()); sdt = sdt.AddDays(1); if (sdt >= ServiceDateTime.Now.Date) { break; } } catch (Exception ex) { SeatManage.SeatManageComm.WriteLog.Write(string.Format("统计{0}记录失败:{1}", sdt.ToShortDateString(), ex.Message)); return(false); } } return(true); } catch (Exception ex) { SeatManage.SeatManageComm.WriteLog.Write(string.Format("统计记录失败:{0}", ex.Message)); return(false); } }
protected void Page_Load(object sender, EventArgs e) { if (Session["LoginId"] == null) { Response.Redirect("../Login.aspx"); } if (!IsPostBack) { BindReadingRoomList(Session[CookiesManager.LoginID].ToString()); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } cmd = Request.Form["subCmd"]; if (cmd != null) { #region 座位相关操作 switch (cmd) { case "search": //查询座位 try { GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } catch { } break; case "ShortLeave": //设置暂离 try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; for (int i = 0; i < noArr.Length; i++) { seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && enterOutLog.EnterOutState != EnterOutLogType.ShortLeave) { ReadingRoomInfo roomInfo = T_SM_ReadingRoom.GetSingleRoomInfo(enterOutLog.ReadingRoomNo); enterOutLog.EnterOutState = EnterOutLogType.ShortLeave; enterOutLog.Flag = Operation.Admin; enterOutLog.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备设置为暂离", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); int newId = -1; HandleResult result = EnterOutOperate.AddEnterOutLog(enterOutLog, ref newId); if (result == HandleResult.Successed) { Page.RegisterStartupScript("", "<script>alert('设置读者暂离成功');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } else { Page.RegisterStartupScript("", "<script>alert('设置读者暂离失败');</script>"); } } } } catch { } break; case "ReleaseShortLeave": //取消暂离 try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; for (int i = 0; i < noArr.Length; i++) { seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && enterOutLog.EnterOutState == EnterOutLogType.ShortLeave) { ReadingRoomInfo roomInfo = T_SM_ReadingRoom.GetSingleRoomInfo(enterOutLog.ReadingRoomNo); enterOutLog.EnterOutState = EnterOutLogType.ComeBack; enterOutLog.Flag = Operation.Admin; enterOutLog.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备取消暂离,恢复为在座", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); int newId = -1; HandleResult result = EnterOutOperate.AddEnterOutLog(enterOutLog, ref newId); if (result == HandleResult.Successed) { List <WaitSeatLogInfo> waitSeatLogs = T_SM_SeatWaiting.GetWaitSeatList("", enterOutLog.EnterOutLogID, null, null, null); WaitSeatLogInfo waitSeatLog = null; if (waitSeatLogs.Count > 0) { waitSeatLog = waitSeatLogs[0]; waitSeatLog.NowState = LogStatus.Fail; waitSeatLog.OperateType = Operation.OtherReader; waitSeatLog.WaitingState = EnterOutLogType.WaitingCancel; if (T_SM_SeatWaiting.UpdateWaitLog(waitSeatLog)) { Page.RegisterStartupScript("", "<script>alert('取消读者暂离成功');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } else { Page.RegisterStartupScript("", "<script>alert('取消读者暂离成功,取消读者等待失败');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } } else { Page.RegisterStartupScript("", "<script>alert('取消读者暂离成功');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } } else { Page.RegisterStartupScript("", "<script>alert('取消读者暂离失败');</script>"); } } } } catch { } break; case "Release": //释放座位 try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; for (int i = 0; i < noArr.Length; i++) { seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && enterOutLog.EnterOutState != EnterOutLogType.Leave) { ReadingRoomInfo roomInfo = T_SM_ReadingRoom.GetSingleRoomInfo(enterOutLog.ReadingRoomNo); enterOutLog.EnterOutState = EnterOutLogType.Leave; enterOutLog.Flag = Operation.Admin; enterOutLog.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备设置离开", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); int newId = -1; HandleResult result = EnterOutOperate.AddEnterOutLog(enterOutLog, ref newId); if (result == HandleResult.Successed) { RegulationRulesSetting rulesSet = T_SM_SystemSet.GetRegulationRulesSetting(); if (roomInfo.Setting.IsRecordViolate) { if (roomInfo.Setting.BlackListSetting.Used) { if (roomInfo.Setting.BlackListSetting.ViolateRoule[ViolationRecordsType.LeaveByAdmin]) { ViolationRecordsLogInfo violationRecords = new ViolationRecordsLogInfo(); violationRecords.CardNo = enterOutLog.CardNo; violationRecords.SeatID = enterOutLog.SeatNo.Substring(enterOutLog.SeatNo.Length - roomInfo.Setting.SeatNumAmount, roomInfo.Setting.SeatNumAmount); violationRecords.ReadingRoomID = enterOutLog.ReadingRoomNo; violationRecords.EnterOutTime = ServiceDateTime.Now.ToString(); violationRecords.EnterFlag = ViolationRecordsType.LeaveByAdmin; violationRecords.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备设置离开", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); violationRecords.BlacklistID = "-1"; T_SM_ViolateDiscipline.AddViolationRecords(violationRecords); } } else if (rulesSet.BlacklistSet.Used && rulesSet.BlacklistSet.ViolateRoule[ViolationRecordsType.LeaveByAdmin]) { ViolationRecordsLogInfo violationRecords = new ViolationRecordsLogInfo(); violationRecords.CardNo = enterOutLog.CardNo; violationRecords.SeatID = enterOutLog.SeatNo.Substring(enterOutLog.SeatNo.Length - roomInfo.Setting.SeatNumAmount, roomInfo.Setting.SeatNumAmount); violationRecords.ReadingRoomID = enterOutLog.ReadingRoomNo; violationRecords.EnterOutTime = ServiceDateTime.Now.ToString(); violationRecords.EnterFlag = ViolationRecordsType.LeaveByAdmin; violationRecords.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备设置离开", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); violationRecords.BlacklistID = "-1"; T_SM_ViolateDiscipline.AddViolationRecords(violationRecords); } } Page.RegisterStartupScript("", "<script>alert('设置读者离开成功');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } else { Page.RegisterStartupScript("", "<script>alert('设置读者离开失败');</script>"); } } } } catch { } break; case "onTime": //计时 try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; for (int i = 0; i < noArr.Length; i++) { seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && enterOutLog.EnterOutState != EnterOutLogType.ShortLeave) { DateTime markTime = ServiceDateTime.Now; EnterOutOperate.UpdateMarkTime(enterOutLog.EnterOutLogID, markTime); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } } } catch { } break; case "offTime": //取消计时 try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; for (int i = 0; i < noArr.Length; i++) { seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && !string.IsNullOrEmpty(enterOutLog.MarkTime.ToString()) && enterOutLog.MarkTime.CompareTo(DateTime.Parse("1900/1/1")) != 0) { DateTime markTime = DateTime.Parse("1900-1-1"); EnterOutOperate.UpdateMarkTime(enterOutLog.EnterOutLogID, markTime); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } } } catch { } break; case "AddBlacklist": try { string seatStr = hidSeatNo.Value; string[] noArr = seatStr.Split(','); string seatNo = ""; int newId = -1; RegulationRulesSetting rulesSet = T_SM_SystemSet.GetRegulationRulesSetting(); for (int i = 0; i < noArr.Length; i++) { newId = -1; seatNo = noArr[i].Trim(); EnterOutLogInfo enterOutLog = T_SM_EnterOutLog.GetUsingEnterOutLogBySeatNo(seatNo); if (enterOutLog != null && enterOutLog.EnterOutState != EnterOutLogType.Leave) { ReadingRoomInfo roomInfo = T_SM_ReadingRoom.GetSingleRoomInfo(enterOutLog.ReadingRoomNo); if (roomInfo != null && roomInfo.Setting.BlackListSetting.Used) { BlackListInfo blacklistModel = new BlackListInfo(); blacklistModel.AddTime = ServiceDateTime.Now; blacklistModel.ReadingRoomID = roomInfo.No; blacklistModel.BlacklistState = LogStatus.Valid; blacklistModel.CardNo = enterOutLog.CardNo; blacklistModel.OutBlacklistMode = roomInfo.Setting.BlackListSetting.LeaveBlacklist; if (blacklistModel.OutBlacklistMode == LeaveBlacklistMode.AutomaticMode) { blacklistModel.ReMark = string.Format("管理员{0}通过手持设备{0}把读者加入黑名单,记录黑名单{1}天", Session["LoginID"], roomInfo.Setting.BlackListSetting.LimitDays); blacklistModel.OutTime = blacklistModel.AddTime.AddDays(roomInfo.Setting.BlackListSetting.LimitDays); } else { blacklistModel.ReMark = string.Format("管理员{0}通过手持设备把读者加入黑名单,手动离开黑名单", Session["LoginID"]); } blacklistModel.ReadingRoomID = roomInfo.No; newId = T_SM_Blacklist.AddBlackList(blacklistModel); } else if (rulesSet.BlacklistSet.Used) { BlackListInfo blacklistModel = new BlackListInfo(); blacklistModel.AddTime = ServiceDateTime.Now; blacklistModel.OutTime = blacklistModel.AddTime.AddDays(rulesSet.BlacklistSet.LimitDays); blacklistModel.BlacklistState = LogStatus.Valid; blacklistModel.CardNo = enterOutLog.CardNo; blacklistModel.OutBlacklistMode = rulesSet.BlacklistSet.LeaveBlacklist; if (blacklistModel.OutBlacklistMode == LeaveBlacklistMode.AutomaticMode) { blacklistModel.ReMark = string.Format("管理员{0}通过手持设备把读者加入黑名单,记录黑名单{1}天", Session["LoginID"], rulesSet.BlacklistSet.LimitDays); blacklistModel.OutTime = blacklistModel.AddTime.AddDays(rulesSet.BlacklistSet.LimitDays); } else { blacklistModel.ReMark = string.Format("管理员{0}通过手持设备把读者加入黑名单,手动离开黑名单", Session["LoginID"]); } blacklistModel.ReadingRoomID = roomInfo.No; newId = T_SM_Blacklist.AddBlackList(blacklistModel); } else { Page.RegisterStartupScript("", "<script>alert('对不起,此阅览室以及图书馆没有启用黑名单功能');</script>"); return; } if (newId > 0) { enterOutLog.EnterOutState = EnterOutLogType.Leave; enterOutLog.Flag = Operation.Admin; enterOutLog.Remark = string.Format("在{0},{1}号座位,被管理员{2},通过手持设备设置离开", roomInfo.Name, enterOutLog.ShortSeatNo, Session["LoginID"]); HandleResult result = EnterOutOperate.AddEnterOutLog(enterOutLog, ref newId); if (result == HandleResult.Successed) { Page.RegisterStartupScript("", "<script>alert('设置读者黑名单成功');</script>"); GetSeatList(selectReadingRomm.Items[selectReadingRomm.SelectedIndex].Value, selectSeatState.Items[selectSeatState.SelectedIndex].Value); } else { Page.RegisterStartupScript("", "<script>alert('设置读者黑名单失败');</script>"); } } } } } catch { } break; case "LoginOut": HttpCookie aCookie; string cookieName; int limit = Request.Cookies.Count; for (int i = 0; i < limit; i++) { cookieName = Request.Cookies[i].Name; aCookie = new HttpCookie(cookieName); aCookie.Expires = DateTime.Now.AddDays(-1); Response.Cookies.Add(aCookie); } Response.Redirect("../Login.aspx"); break; } #endregion } }