/// <summary> /// 增加一条数据 /// </summary> public bool Add(SM.YuQing.Model.Log model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into Log("); strSql.Append("LogType,Message,MenuID,PersonID,IP,CreateTime)"); strSql.Append(" values ("); strSql.Append("@LogType,@Message,@MenuID,@PersonID,@IP,@CreateTime)"); SqlParameter[] parameters = { new SqlParameter("@LogType", SqlDbType.NVarChar, 50), new SqlParameter("@Message", SqlDbType.NVarChar, 500), new SqlParameter("@MenuID", SqlDbType.Int, 4), new SqlParameter("@PersonID", SqlDbType.Int, 4), new SqlParameter("@IP", SqlDbType.NVarChar, 50), new SqlParameter("@CreateTime", SqlDbType.DateTime) }; parameters[0].Value = model.LogType; parameters[1].Value = model.Message; parameters[2].Value = model.MenuID; parameters[3].Value = model.PersonID; parameters[4].Value = model.IP; parameters[5].Value = model.CreateTime; int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
public void ExportToExcel(DataTable dt, string fileName, string menuName) { try { HttpContext.Current.Response.Clear(); HttpContext.Current.Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", fileName)); HttpContext.Current.Response.ContentType = "application/ms-excel"; MemoryStream ms = new MemoryStream(); Workbook workbook = new Workbook(); Worksheet worksheet = new Worksheet("Sheet1"); if (dt.Rows.Count < 30) { for (int i = 0; i < 30; i++) { dt.Rows.Add(dt.NewRow()); } } for (int i = 0; i < dt.Columns.Count; i++) { worksheet.Cells[0, i] = new Cell(dt.Columns[i].ColumnName); } for (int i = 0; i < dt.Rows.Count; i++) { for (int j = 0; j < dt.Columns.Count; j++) { worksheet.Cells[i + 1, j] = new Cell(dt.Rows[i][j].ToString()); } } workbook.Worksheets.Add(worksheet); workbook.SaveToStream(ms); HttpContext.Current.Response.BinaryWrite(ms.ToArray()); HttpContext.Current.Response.Flush(); SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(HttpContext.Current.User.Identity.Name)).Identity; int personid = identity.FID; SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = HttpContext.Current.User.Identity.Name + " 在 " + menuName + " 导出了Excel"; log.IP = HttpContext.Current.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } catch (Exception ex) { throw ex; } }
public void ProcessRequest(HttpContext context) { string id = context.Request.Form["id"]; context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(context.User.Identity.Name)).Identity; int personid = identity.FID; SM.YuQing.BLL.Regions bll = new SM.YuQing.BLL.Regions(); SM.YuQing.Model.Regions region = bll.GetModel(Convert.ToInt32(id)); string mall = region.Mall; bool success; SM.YuQing.BLL.MonitorWebs webBll = new SM.YuQing.BLL.MonitorWebs(); SM.YuQing.BLL.MonitorInfos infoBll = new SM.YuQing.BLL.MonitorInfos(); if (!bll.ExistRegion(Convert.ToInt32(id), personid) && !webBll.ExistRegion(Convert.ToInt32(id)) && !infoBll.ExistRegion(Convert.ToInt32(id))) { bll.Delete(Convert.ToInt32(id)); bll.DeletePersonRegion(personid, Convert.ToInt32(id)); success = true; } else { success = false; } Hashtable ht = new Hashtable(); if (success) { SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 删除了区域 " + mall; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); ht.Add("success", true); } else { ht.Add("errorMsg", "该区域已有关联监测数据,不允许删除"); } context.Response.Write(JsonConvert.SerializeObject(ht)); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); string id = context.Request.QueryString["id"]; string property = context.Request.Form["property"]; bool success; SM.YuQing.BLL.MonitorInfos bll = new SM.YuQing.BLL.MonitorInfos(); SM.YuQing.Model.MonitorInfos monitorInfo = bll.GetModel(Convert.ToInt32(id)); string oldProperty = monitorInfo.Property; monitorInfo.Property = property; monitorInfo.UpdatePerson = context.User.Identity.Name; monitorInfo.UpdateTime = DateTime.Now; success = bll.Update(monitorInfo); Hashtable ht = new Hashtable(); if (success) { SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(context.User.Identity.Name)).Identity; int personid = identity.FID; SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 保存了ID=" + id + "的监测记录的性质为 " + property + " (原性质为 " + (oldProperty == "" ? "空" : oldProperty) + " )"; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); ht.Add("success", true); } else { ht.Add("errorMsg", "Some errors occured."); } context.Response.Write(JsonConvert.SerializeObject(ht)); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(SM.YuQing.Model.Log model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update Log set "); strSql.Append("LogType=@LogType,"); strSql.Append("Message=@Message,"); strSql.Append("MenuID=@MenuID,"); strSql.Append("PersonID=@PersonID,"); strSql.Append("IP=@IP,"); strSql.Append("CreateTime=@CreateTime"); strSql.Append(" where ID=@ID "); SqlParameter[] parameters = { new SqlParameter("@ID", SqlDbType.Int, 4), new SqlParameter("@LogType", SqlDbType.NVarChar, 50), new SqlParameter("@Message", SqlDbType.NVarChar, 500), new SqlParameter("@MenuID", SqlDbType.Int, 4), new SqlParameter("@PersonID", SqlDbType.Int, 4), new SqlParameter("@IP", SqlDbType.NVarChar, 50), new SqlParameter("@CreateTime", SqlDbType.DateTime) }; parameters[0].Value = model.ID; parameters[1].Value = model.LogType; parameters[2].Value = model.Message; parameters[3].Value = model.MenuID; parameters[4].Value = model.PersonID; parameters[5].Value = model.IP; parameters[6].Value = model.CreateTime; int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
public void ProcessRequest(HttpContext context) { string id = context.Request.Form["id"]; context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(context.User.Identity.Name)).Identity; int personid = identity.FID; SM.YuQing.BLL.MonitorWebs bll = new SM.YuQing.BLL.MonitorWebs(); SM.YuQing.Model.MonitorWebs web = bll.GetModel(Convert.ToInt32(id)); string url = web.Url, name = web.Name; bool success = bll.Delete(Convert.ToInt32(id)); Hashtable ht = new Hashtable(); if (success) { SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 删除了网站 " + url + "(" + name + ")";; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); ht.Add("success", true); } else { ht.Add("errorMsg", "Some errors occured."); } context.Response.Write(JsonConvert.SerializeObject(ht)); }
/// <summary> /// 得到一个对象实体 /// </summary> public SM.YuQing.Model.Log DataRowToModel(DataRow row) { SM.YuQing.Model.Log model = new SM.YuQing.Model.Log(); if (row != null) { if (row["ID"] != null && row["ID"].ToString() != "") { model.ID = int.Parse(row["ID"].ToString()); } if (row["LogType"] != null) { model.LogType = row["LogType"].ToString(); } if (row["Message"] != null) { model.Message = row["Message"].ToString(); } if (row["MenuID"] != null && row["MenuID"].ToString() != "") { model.MenuID = int.Parse(row["MenuID"].ToString()); } if (row["PersonID"] != null && row["PersonID"].ToString() != "") { model.PersonID = int.Parse(row["PersonID"].ToString()); } if (row["IP"] != null) { model.IP = row["IP"].ToString(); } if (row["CreateTime"] != null && row["CreateTime"].ToString() != "") { model.CreateTime = DateTime.Parse(row["CreateTime"].ToString()); } } return(model); }
/// <summary> /// 得到一个对象实体 /// </summary> public SM.YuQing.Model.Log GetModel(int ID) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 ID,LogType,Message,MenuID,PersonID,IP,CreateTime from Log "); strSql.Append(" where ID=@ID "); SqlParameter[] parameters = { new SqlParameter("@ID", SqlDbType.Int, 4) }; parameters[0].Value = ID; SM.YuQing.Model.Log model = new SM.YuQing.Model.Log(); DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
public void ProcessRequest(HttpContext context) { string id = context.Request.QueryString["id"]; string Region = context.Request.Form["Region"]; string Mall = context.Request.Form["Mall"]; string Keyword = context.Request.Form["Keyword"]; string errMsg = ""; bool success; Hashtable ht = new Hashtable(); context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(context.User.Identity.Name)).Identity; int personid = identity.FID; SM.YuQing.BLL.Regions bll = new SM.YuQing.BLL.Regions(); if (id == null) { if (!bll.ExistRegion(Region.Trim(), Mall.Trim(), Keyword.Trim())) { SM.YuQing.Model.Regions region = new SM.YuQing.Model.Regions(); region.Region = Region; region.Mall = Mall; region.Keyword = Keyword; region.CreatePerson = context.User.Identity.Name; region.CreateTime = DateTime.Now; region.UpdatePerson = context.User.Identity.Name; region.UpdateTime = DateTime.Now; success = bll.Add(region); if (success) { int maxRegionID = bll.GetMaxRegionID(context.User.Identity.Name); bll.AddPersonRegion(personid, maxRegionID); SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 新增了区域 " + Mall; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } else { success = false; errMsg = "some error occured."; } } else { success = false; errMsg = "此区域已存在"; } } else { SM.YuQing.Model.Regions region = bll.GetModel(Convert.ToInt32(id)); string oldRegion = region.Region, oldMall = region.Mall, oldKeyword = region.Keyword; if (oldRegion == Region && oldMall == Mall && oldKeyword == Keyword) { success = false; errMsg = "您未修改任何信息"; } else if (!bll.ExistRegion(Region.Trim(), Mall.Trim(), Keyword.Trim())) { region.Region = Region; region.Mall = Mall; region.Keyword = Keyword; region.UpdatePerson = context.User.Identity.Name; region.UpdateTime = DateTime.Now; success = bll.Update(region); if (success) { SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 修改了ID=" + id + "的区域信息" + " | " + (oldRegion == Region ? "" : (oldRegion + " -> " + Region + " | ")) + (oldMall == Mall ? "" : (oldMall + " -> " + Mall + " | ")) + (oldKeyword == Keyword ? "" : ("关键字 | ")); log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } else { success = false; errMsg = "some error occured."; } } else { success = false; errMsg = "此区域已存在"; } } //if (!bll.ExistRegion(Region.Trim(), Mall.Trim(), Keyword.Trim())) //{ //} //else //{ // success = false; // errMsg = "此区域已存在"; //} if (success) { ht.Add("success", true); } else { ht.Add("errorMsg", errMsg); } context.Response.Write(JsonConvert.SerializeObject(ht)); }
public DataTable RealTimeMonitor(HttpContext context, int level) { context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); string regionid = context.Request.QueryString["regionid"]; string keyword = context.Request.QueryString["keyword"]; string website = context.Request.QueryString["website"]; string searchLevel = context.Request.QueryString["sl"]; string func = context.Request.QueryString["func"]; if (regionid == "" || regionid.Contains("-1")) { GetRegionIdHelper grih = new GetRegionIdHelper(); regionid = grih.GetRegionID(); } //keyword = System.Web.HttpUtility.UrlDecode(keyword); DataTable dt = new DataTable(); dt.Columns.Add("Title"); dt.Columns.Add("PublishDate"); dt.Columns.Add("ViewsCounts"); dt.Columns.Add("Region"); dt.Columns.Add("RegionID"); dt.Columns.Add("MonitorUrl"); dt.Columns.Add("Keyword"); dt.Columns.Add("Url"); SM.YuQing.BLL.RealTimeMonitorHelper rtmh = new SM.YuQing.BLL.RealTimeMonitorHelper(); try { if (website != "") { //dt = RemoveCommonRecord(rtmh.GetDataRows(dt, website, keyword, null, null)); //searchLevel 搜索级别 if (searchLevel == "1") { dt = rtmh.GetDataRows(dt, website, keyword, null, null); } else if (searchLevel == "2") { dt = rtmh.GetData(dt, website, keyword, null, null); } } else { string[] regs = regionid.Split(','); foreach (string reg in regs) { SM.YuQing.BLL.Regions regionBll = new SM.YuQing.BLL.Regions(); SM.YuQing.Model.Regions region = regionBll.GetModel(Convert.ToInt32(reg.Trim())); SM.YuQing.BLL.MonitorWebs webBll = new SM.YuQing.BLL.MonitorWebs(); List <SM.YuQing.Model.MonitorWebs> webList = webBll.GetModelList("RegionID=" + reg.Trim()); foreach (SM.YuQing.Model.MonitorWebs web in webList) { if (web.Status == "启用") { if (searchLevel == "1") { dt = rtmh.GetDataRows(dt, web.Url, keyword, region, web); } else if (searchLevel == "2") { dt = rtmh.GetData(dt, web.Url, keyword, region, web); } } } } } if (dt.Rows.Count == 0) { DataRow dr = dt.NewRow(); dr["Title"] = "未匹配到关键字“" + keyword + "”"; dr["PublishDate"] = ""; dr["ViewsCounts"] = ""; dr["Region"] = ""; dr["RegionID"] = ""; dr["MonitorUrl"] = ""; dr["Keyword"] = ""; dr["Url"] = ""; dt.Rows.Add(dr); } else { //DataTable去重 int rowsCount = dt.Rows.Count; for (int i = 0; i < rowsCount - 1; i++) { for (int j = i + 1; j < rowsCount;) { if (dt.Rows[i]["Url"].ToString() == dt.Rows[j]["Url"].ToString()) { dt.Rows.RemoveAt(j); rowsCount--; dt.AcceptChanges(); } else { j++; } } } if (func != "1") { //写入数据库 rtmh.RecordToDatabase(dt, context.User.Identity.Name); //写入日志Log SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "实时监测"; log.Message = "本次共新增 " + dt.Rows.Count.ToString() + " 条数据"; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = 0; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } } } catch (Exception ex) { throw ex; //DataRow dr = dt.NewRow(); //dr["Title"] = "Error in ProcessRequest():" + ex.Message; //dr["PublishDate"] = ""; //dr["ViewsCounts"] = ""; //dr["Region"] = ""; //dr["RegionID"] = ""; //dr["MonitorUrl"] = ""; //dr["Keyword"] = ""; //dr["Url"] = ""; //dt.Rows.Add(dr); } if (func == "1") //导出excel { ExportToExcelHelper eteh = new ExportToExcelHelper(); eteh.ExportToExcel(dt, "RealTimeResult.xls", "[监测管理] -> [实时监测]"); } else { context.Response.Write(JsonConvert.SerializeObject(dt)); } return(dt); }
public void ProcessRequest(HttpContext context) { string id = context.Request.QueryString["id"]; string Url = context.Request.Form["Url"]; string Name = context.Request.Form["Name"]; string RegionID = context.Request.Form["RegionID"]; string Status = context.Request.Form["Status"]; string errMsg = ""; bool success; context.Response.ContentType = "text/plain"; context.Response.Cache.SetNoStore(); SM.YuQing.Accounts.SiteIdentity identity = (SM.YuQing.Accounts.SiteIdentity)(new SM.YuQing.Accounts.AccountsPrincipal(context.User.Identity.Name)).Identity; int personid = identity.FID; if (id == null) //新增 { SM.YuQing.BLL.MonitorWebs bll = new SM.YuQing.BLL.MonitorWebs(); if (!bll.ExistWeb(Convert.ToInt32(RegionID), Url, Status)) { SM.YuQing.Model.MonitorWebs web = new SM.YuQing.Model.MonitorWebs(); web.Url = Url; web.Name = Name; web.RegionID = Convert.ToInt32(RegionID); web.Status = Status; web.CreatePerson = context.User.Identity.Name; web.CreateTime = DateTime.Now; web.UpdatePerson = context.User.Identity.Name; web.UpdateTime = DateTime.Now; success = bll.Add(web); if (success) { SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 新增了网站 " + Url + "(" + Name + ")"; log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } else { success = false; errMsg = "some error occured."; } } else { success = false; errMsg = "该网址已存在于此区域中!"; } } else //修改 { SM.YuQing.BLL.MonitorWebs bll = new SM.YuQing.BLL.MonitorWebs(); SM.YuQing.Model.MonitorWebs web = bll.GetModel(Convert.ToInt32(id)); string oldUrl = web.Url, oldName = web.Name, oldRegionID = web.RegionID.ToString(), oldStatus = web.Status; web.Url = Url; web.Name = Name; web.RegionID = Convert.ToInt32(RegionID); web.Status = Status; web.UpdatePerson = context.User.Identity.Name; web.UpdateTime = DateTime.Now; if (oldUrl == Url && oldName == Name && oldRegionID == RegionID && oldStatus == Status) { success = false; errMsg = "您未修改任何信息"; } else if (oldUrl == Url && oldName != Name && oldRegionID == RegionID && oldStatus == Status) { success = bll.Update(web); } else if (!bll.ExistWeb(Convert.ToInt32(RegionID), Url, Status)) { success = bll.Update(web); } else { success = false; errMsg = "该网址已存在于此区域中!"; } if (success) { SM.YuQing.Model.Log log = new SM.YuQing.Model.Log(); log.LogType = "操作"; log.Message = context.User.Identity.Name + " 修改了ID=" + id + "的网站信息" + " | " + (oldUrl == Url ? "" : (oldUrl + " -> " + Url + " | ")) + (oldName == Name ? "" : (oldName + " -> " + Name + " | ")) + (oldRegionID == RegionID ? "" : ("RegionID: " + oldRegionID + " -> " + RegionID + " | ")) + (oldStatus == Status ? "" : (oldStatus + " -> " + Status + " | ")); log.IP = context.Request.UserHostAddress; log.MenuID = 0; log.PersonID = personid; log.CreateTime = DateTime.Now; SM.YuQing.BLL.Log logBll = new SM.YuQing.BLL.Log(); logBll.Add(log); } else if (!success && errMsg == "") { errMsg = "some error occured."; } } Hashtable ht = new Hashtable(); if (success) { ht.Add("success", true); } else { ht.Add("errorMsg", errMsg); } context.Response.Write(JsonConvert.SerializeObject(ht)); }