/// <summary>
 ///
 /// </summary>
 /// <param name="adminID"></param>
 /// <returns></returns>
 public JsonResult DeleteAdmin(int adminID)
 {
     try
     {
         Models.Administrator administrator = dataContext.Administrator.Where(m => m.ID == adminID).FirstOrDefault();
         if (administrator != null)
         {
             //删除管理员绑定的系统
             List <Models.AdminSys> adminSyses = dataContext.AdminSys.Where(m => m.AdminID == administrator.ID).ToList();
             dataContext.AdminSys.DeleteAllOnSubmit(adminSyses);
             dataContext.Administrator.DeleteOnSubmit(administrator);
             dataContext.SubmitChanges();
         }
         else
         {
             errorCode = 20001;
         }
     }
     catch (Exception ex)
     {
         errorCode = 10001;
         new BLL.ServiceException().AddExceptionLog(ex);
     }
     if (errorCode != 0)
     {
         error = new BLL.ServiceError().GetErrorInfo(errorCode);
     }
     return(Json(errorCode, error, null, true));
 }
Beispiel #2
0
        public JsonResult UploadImage(HttpPostedFileBase file)
        {
            int    errorCode = 0;
            string error     = string.Empty;
            string result    = string.Empty;

            try
            {
                DateTime now     = DateTime.Now;
                string   imgName = string.Format("{0}.jpg", now.ToString("yyyyMMddHHmmss"));


                string folder = string.Format(@"{0}Resources\Images\{1}", Models.SharedData.ProjectPath, now.ToString("yyyyMMdd"));
                //检查是否有该文件夹,没有则创建
                Common.HandleFiles.CreateDirectory(folder);

                string localPath = string.Format(@"{0}\{1}", folder, imgName);

                file.SaveAs(localPath);
                string webPath = string.Format(@"{0}\Resources\Images\{1}\{2}", Models.SharedData.DomainName, now.ToString("yyyyMMdd"), imgName);
                result = webPath;
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error     = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }


            return(Json(errorCode, error, result, true));
        }
Beispiel #3
0
        public JsonResult GetOtherSys(int adminID)
        {
            object result = new object();

            try
            {
                List <int> bindSysID   = dataContext.AdminSys.Where(m => m.AdminID == adminID).Select(m => m.SysID).ToList();
                List <int> allSysID    = dataContext.AuthoritySys.Where(m => m.Status == (int)Models.Enums.SharedStatus.Normal).Select(m => m.ID).ToList();
                List <int> noBindSysID = allSysID.Except(bindSysID).ToList();
                List <Models.AuthoritySys> authoritySyses = dataContext.AuthoritySys.Where(m => noBindSysID.Contains(m.ID) && m.Status == (int)Models.Enums.SharedStatus.Normal).ToList();
                List <object> list = new List <object>();
                if (authoritySyses.Count > 0)
                {
                    foreach (Models.AuthoritySys item in authoritySyses)
                    {
                        list.Add(new
                        {
                            item.ID,
                            item.Name
                        });
                    }
                    result = new
                    {
                        list
                    };
                }
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error     = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }
            return(Json(errorCode, error, result, true));
        }
Beispiel #4
0
 public JsonResult DeleteAdminSys(int adminSysID)
 {
     try
     {
         Models.AdminSys adminSys = dataContext.AdminSys.Where(m => m.ID == adminSysID).FirstOrDefault();
         if (adminSys != null)
         {
             dataContext.AdminSys.DeleteOnSubmit(adminSys);
             dataContext.SubmitChanges();
         }
         else
         {
             errorCode = 30001;
         }
     }
     catch (Exception ex)
     {
         errorCode = 10001;
         new BLL.ServiceException().AddExceptionLog(ex);
     }
     if (errorCode != 0)
     {
         error = new BLL.ServiceError().GetErrorInfo(errorCode);
     }
     return(Json(errorCode, error, null, true));
 }
Beispiel #5
0
 public JsonResult AddAdminSys(Models.AdminSys formObj)
 {
     try
     {
         Models.AdminSys adminSys = dataContext.AdminSys.Where(m => m.ID == formObj.ID).FirstOrDefault();
         if (adminSys == null)
         {
             adminSys = new Models.AdminSys
             {
                 AdminID       = formObj.AdminID,
                 SysID         = formObj.SysID,
                 AuthorityTime = DateTime.Now,
                 Status        = formObj.Status
             };
             dataContext.AdminSys.InsertOnSubmit(adminSys);
         }
         else
         {
             adminSys.Status = formObj.Status;
         }
         dataContext.SubmitChanges();
     }
     catch (Exception ex)
     {
         errorCode = 10001;
         error     = new BLL.ServiceError().GetErrorInfo(errorCode);
         new BLL.ServiceException().AddExceptionLog(ex);
     }
     return(Json(errorCode, error, null, true));
 }
Beispiel #6
0
        public JsonResult GetBlogs(string keyword, int status = 0, int page = 1)
        {
            object result = null;
            try
            {
                var query = PredicateBuilder.True<Models.Blog>();
                if (!string.IsNullOrEmpty(keyword))
                {
                    query = query.And(m => m.Title.Contains(keyword) || m.Author.Contains(keyword));
                }
                if (status != 0)
                {
                    query = query.And(m => m.Status == status);
                }

                int pageSize = Models.SharedData.PageSize;
                int pagePre = page * pageSize - pageSize;
                int totalCount = dataContext.Blog.Where(query).Count();
                int mod = totalCount % pageSize;
                int pageCout = totalCount / pageSize + (mod == 0 ? 0 : 1);
                int totalPage = totalCount / pageSize + (totalCount % pageSize == 0 ? 0 : 1);

                List<Models.Blog> blogs = dataContext.Blog.Where(query).OrderByDescending(m => m.CreateTime).Skip(pagePre).Take(pageSize).ToList();

                List<object> list = new List<object>();
                if (blogs.Count > 0)
                {

                    foreach (Models.Blog item in blogs)
                    {
                        list.Add(new
                        {
                            item.ID,
                            item.Title,
                            item.Cover,
                            CreateTime = Common.ConvertData.ConvertDateTimeToStr(item.CreateTime, 2),
                            item.Status,
                            item.Author,
                            item.Content
                        });
                    }
                }
                result = new
                {
                    list,
                    page,
                    totalCount,
                    totalPage,
                    pageSize
                };
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }
            return Json(errorCode, error, result, true);
        }
Beispiel #7
0
        public JsonResult LoginSystem(string name, string password)
        {
            int    errorCode = 0;
            string error     = string.Empty;
            object result    = null;

            try
            {
                Models.Administrator administrator = dataContext.Administrator.Where(m => m.Name == name && m.Status == (int)Models.Enums.RoleStatus.Normal).FirstOrDefault();
                if (administrator != null)
                {
                    //验证用户密码
                    if (administrator.Password != Common.HandleString.MD5(password + administrator.Token))
                    {
                        errorCode = 20002;
                    }
                }
                else
                {
                    errorCode = 20001;
                }

                if (errorCode == 0)
                {
                    //更新管理员登陆时间
                    administrator.LoginTime = DateTime.Now;
                    dataContext.SubmitChanges();
                    result = new
                    {
                        administrator.ID,
                        administrator.Name,
                        administrator.Token,
                        administrator.Type,
                        administrator.Avatar,
                        administrator.Status,
                        administrator.Password,
                        Menus = administrator.Type == (int)Models.Enums.AdminType.SuperAdmin ? null : new BLL.ServiceAuthority().GetAdminMenu(administrator.ID)
                    };
                }
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                new BLL.ServiceException().AddExceptionLog(ex);
            }

            if (errorCode != 0)
            {
                error = new BLL.ServiceError().GetErrorInfo(errorCode);
            }

            return(Json(errorCode, error, result, true));
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="formAdmin"></param>
 /// <returns></returns>
 public JsonResult ModifyAdmin(Models.Administrator formAdmin)
 {
     try
     {
         Models.Administrator objAdmin = dataContext.Administrator.Where(m => m.ID == formAdmin.ID).FirstOrDefault();
         //对象为空,则增加
         if (objAdmin == null)
         {
             //生成管理员Token
             string token = BLL.ServiceAdministrator.GetAdminToken();
             objAdmin = new Models.Administrator
             {
                 Name  = formAdmin.Name,
                 Token = token,
                 //密码进行md5加密
                 Password  = Common.HandleString.MD5(formAdmin.Password + token),
                 Avatar    = formAdmin.Avatar,
                 Type      = formAdmin.Type,
                 Status    = formAdmin.Status,
                 LoginTime = Models.SharedData.MinTime
             };
             dataContext.Administrator.InsertOnSubmit(objAdmin);
         }
         //否则为修改
         else
         {
             //如果密码不为空则是修改密码
             if (formAdmin.Password != null)
             {
                 objAdmin.Password = Common.HandleString.MD5(formAdmin.Password + objAdmin.Token);
             }
             //否则为修改信息
             else
             {
                 objAdmin.Name   = formAdmin.Name;
                 objAdmin.Avatar = formAdmin.Avatar;
                 objAdmin.Status = formAdmin.Status;
                 objAdmin.Type   = formAdmin.Type;
             }
         }
         //数据入库
         dataContext.SubmitChanges();
     }
     catch (Exception ex)
     {
         errorCode = 10001;
         new BLL.ServiceException().AddExceptionLog(ex);
         error = new BLL.ServiceError().GetErrorInfo(errorCode);
     }
     return(Json(errorCode, error, null, true));
 }
Beispiel #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="adminID"></param>
        /// <param name="page"></param>
        /// <returns></returns>
        public JsonResult GetAdminSys(int adminID, int page = 1)
        {
            object result = new object();

            try
            {
                List <Models.AdminSys> adminSyses = dataContext.AdminSys.Where(m => m.AdminID == adminID).ToList();

                int pageSize   = Models.SharedData.PageSize;
                int pagePre    = page * pageSize - pageSize;
                int totalCount = adminSyses.Count;
                int mod        = totalCount % pageSize;
                int pageCout   = totalCount / pageSize + (mod == 0 ? 0 : 1);
                int totalPage  = totalCount / pageSize + (totalCount % pageSize == 0 ? 0 : 1);

                adminSyses = adminSyses.OrderByDescending(m => m.AuthorityTime).Skip(pagePre).Take(pageSize).ToList();

                List <object> list = new List <object>();
                if (adminSyses.Count > 0)
                {
                    foreach (Models.AdminSys adminSys in adminSyses)
                    {
                        list.Add(new
                        {
                            adminSys.ID,
                            AdminName     = adminSys.Administrator.Name,
                            SysName       = adminSys.AuthoritySys.Name,
                            AuthorityTime = Common.ConvertData.ConvertDateTimeToStr(adminSys.AuthorityTime, 2),
                            adminSys.Status
                        });
                    }
                }
                result = new
                {
                    list,
                    page,
                    totalCount,
                    totalPage,
                    pageSize
                };
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error     = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }
            return(Json(errorCode, error, result, true));
        }
Beispiel #10
0
 public JsonResult DeleteBlog(int blogID)
 {
     try
     {
         Models.Blog blog = dataContext.Blog.Where(m => m.ID == blogID).FirstOrDefault();
         if (blog != null)
         {
             dataContext.Blog.DeleteOnSubmit(blog);
             dataContext.SubmitChanges();
         }
     }
     catch (Exception ex)
     {
         errorCode = 10001;
         error = new BLL.ServiceError().GetErrorInfo(errorCode);
         new BLL.ServiceException().AddExceptionLog(ex);
     }
     return Json(errorCode, error, null, true);
 }
Beispiel #11
0
        //当表单提交东内容是包含图片和文字是会出现表单提交错误
        public JsonResult ModifyBlog(Models.Blog formObj)
        {
            try
            {
                Models.Blog blog = dataContext.Blog.Where(m => m.ID == formObj.ID).FirstOrDefault();
                if (blog == null)
                {
                    blog = new Models.Blog
                    {
                        Title = formObj.Title,
                        Cover = formObj.Cover,
                        Content = formObj.Content,
                        CreateTime = DateTime.Now,
                        Author = formObj.Author,
                        Status = formObj.Status
                    };
                    dataContext.Blog.InsertOnSubmit(blog);
                }
                else
                {
                    blog.Title = formObj.Title;
                    blog.Cover = formObj.Cover;
                    blog.Content = formObj.Content;
                    blog.Author = formObj.Author;
                    blog.Status = formObj.Status;
                }
                dataContext.SubmitChanges();

            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }
            return Json(errorCode, error, null, true);
        }
Beispiel #12
0
        public JsonResult GetWeather()
        {
            object result = null;

            try
            {
                //参数ip是淘宝ip地址库特定的参数
                string strRegion = Common.HandleHttp.HttpGet("http://ip.taobao.com/service/getIpInfo.php", "ip=myip");
                //将json数据转化为动态类型
                dynamic ObjRegion = Common.HandleJson.JsonToDynamic(strRegion);
                //获取城市
                string city = string.Format("{0}{1}", ObjRegion.data.region, ObjRegion.data.city);
                //读取xml,获取城市的代码
                string    path     = string.Format(@"{0}\Models\weatherConfig.xml", Models.SharedData.ProjectPath);
                XDocument document = XDocument.Load(path);
                XElement  element  = document.Descendants("City").Where(m => m.Attribute("FullName").Value == city).FirstOrDefault();
                //根据城市代码获取天气
                string url        = string.Format("http://t.weather.sojson.com/api/weather/city/{0}", element.Attribute("Code").Value);
                string strWeather = Common.HandleHttp.HttpGet(url, null);
                //将天气信息转换为实体数据
                Models.Weather.Root weatherInfo = Common.HandleJson.DeserializeJsonToObject <Models.Weather.Root>(strWeather);
                //图表数据
                List <string> date  = new List <string>();
                List <int>    hight = new List <int>();
                List <int>    low   = new List <int>();
                //表格数据
                List <object> list = new List <object>();

                foreach (var item in weatherInfo.data.forecast)
                {
                    date.Add(item.ymd);
                    hight.Add(int.Parse(new BLL.ServiceOther().GetTemperature(item.high)));
                    low.Add(int.Parse(new BLL.ServiceOther().GetTemperature(item.low)));

                    list.Add(new
                    {
                        date = item.ymd,
                        item.week,
                        item.sunrise,
                        item.sunset,
                        item.fx,
                        item.fl,
                        item.aqi,
                        item.type
                    });
                }
                result = new
                {
                    city,
                    map = new
                    {
                        date,
                        hight,
                        low
                    },
                    table = list
                };
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                new BLL.ServiceException().AddExceptionLog(ex);
            }
            if (errorCode != 0)
            {
                error = new BLL.ServiceError().GetErrorInfo(errorCode);
            }
            return(Json(errorCode, error, result, true));
        }
Beispiel #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="startTime">开始时间</param>
        /// <param name="endTime">结束时间</param>
        /// <param name="page">页码</param>
        /// <returns></returns>
        public JsonResult GetExceptionLogList(string startTime, string endTime, int page = 1)
        {
            object result = new object();

            try
            {
                DateTime?sTime = Common.ConvertData.StrToDateTime(startTime);
                DateTime?eTime = Common.ConvertData.StrToDateTime(endTime);

                if (sTime == null)
                {
                    sTime = Models.SharedData.MinTime;
                }
                if (eTime == null)
                {
                    eTime = Models.SharedData.MaxTime;
                }

                List <Models.ExceptionLog> exceptionLogs = dataContext.ExceptionLog.Where(m => m.Time >= sTime && m.Time < eTime).ToList();

                int pageSize   = 10;
                int pagePre    = page * pageSize - pageSize;
                int totalCount = exceptionLogs.Count;
                int mod        = totalCount % pageSize;
                int pageCout   = totalCount / pageSize + (mod == 0 ? 0 : 1);
                int totalPage  = totalCount / pageSize + (totalCount % pageSize == 0 ? 0 : 1);

                exceptionLogs = exceptionLogs.OrderByDescending(m => m.Time).Skip(pagePre).Take(pageSize).ToList();
                List <object> list = new List <object>();

                if (exceptionLogs.Count > 0)
                {
                    foreach (var exceptionLog in exceptionLogs)
                    {
                        list.Add(new
                        {
                            exceptionLog.ID,
                            exceptionLog.Source,
                            exceptionLog.Message,
                            exceptionLog.StackTrace,
                            Time = Common.ConvertData.ConvertDateTimeToStr(exceptionLog.Time, 2)
                        });
                    }
                }
                result = new
                {
                    list,
                    page,
                    totalCount,
                    totalPage,
                    pageSize
                };
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                new BLL.ServiceException().AddExceptionLog(ex);
                error = new BLL.ServiceError().GetErrorInfo(errorCode);
            }
            return(Json(errorCode, error, result, true));
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="name">名字</param>
        /// <param name="type">管理员类型</param>
        /// <param name="status">角色状态</param>
        /// <param name="page">页码</param>
        /// <returns></returns>
        public JsonResult GetAdmins(string name = null, int type = 0, int status = 0, int page = 1)
        {
            object result = null;

            try
            {
                var query = PredicateBuilder.True <Models.Administrator>();
                if (!string.IsNullOrEmpty(name))
                {
                    query = query.And(m => m.Name.Contains(name));
                }
                if (type != 0)
                {
                    query = query.And(m => m.Type == type);
                }
                if (status != 0)
                {
                    query = query.And(m => m.Status == status);
                }

                int pageSize   = Models.SharedData.PageSize;
                int pagePre    = page * pageSize - pageSize;
                int totalCount = dataContext.Administrator.Where(query).Count();
                int mod        = totalCount % pageSize;
                int pageCout   = totalCount / pageSize + (mod == 0 ? 0 : 1);
                int totalPage  = totalCount / pageSize + (totalCount % pageSize == 0 ? 0 : 1);

                List <Models.Administrator> administrators = dataContext.Administrator.Where(query).OrderByDescending(m => m.ID).Skip(pagePre).Take(pageSize).ToList();
                List <object> list = new List <object>();
                if (administrators.Count > 0)
                {
                    foreach (Models.Administrator administrator in administrators)
                    {
                        list.Add(new
                        {
                            administrator.ID,
                            administrator.Name,
                            administrator.Avatar,
                            administrator.Status,
                            administrator.Type,
                            LoginTime = Common.ConvertData.ConvertDateTimeToStr(administrator.LoginTime, 2)
                        });
                    }
                }
                result = new
                {
                    list,
                    page,
                    totalCount,
                    totalPage,
                    pageSize
                };
            }
            catch (Exception ex)
            {
                errorCode = 10001;
                error     = new BLL.ServiceError().GetErrorInfo(errorCode);
                new BLL.ServiceException().AddExceptionLog(ex);
            }

            return(Json(errorCode, error, result, true));
        }