Пример #1
0
        public ActionResult ResetToken(int id)
        {
            var result = ActionJsonResult.Create();

            using (var db = DbHelper.Create())
            {
                var user = db.Tb_Users.FirstOrDefault(u => u.UserID == id);
                if (user == null)
                {
                    result.Failed("无法查询到指定的用户.");
                }
                else
                {
                    try
                    {
                        user.Token           = GetUserToken();
                        db.Entry(user).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        result.Failed(e.Message);
                    }
                }
            }

            return(result.ToJson());
        }
Пример #2
0
        public ActionResult Login(LoginParam param, string isBer)
        {
            var result = ActionJsonResult.Create();

            using (var db = DbHelper.Create())
            {
                var user = db.Tb_Users.FirstOrDefault(u => u.UserName == param.UserName);
                if (user?.Password != param.Psw)
                {
                    result.Failed("用户或密码错误");
                }
                else if (user.Enabled == 0)
                {
                    result.Failed("用户已被禁用");
                }
                else
                {
                    //保存Cookie
                    HttpCookie cookie = new HttpCookie("Tb_Users");
                    cookie.Values.Add("UserName", HttpUtility.UrlEncode(param.UserName));
                    cookie.Values.Add("PassWord", param.Psw);
                    cookie.Values.Add("IsBer", isBer);
                    Response.AppendCookie(cookie);
                    //保存当前登录用户
                    this.Save(user);
                    //?获取用户菜单
                    var menuReader = new MenuReader(user);
                    menuReader.LoadMenus(GetMenuJson());
                    this.Save(SessionKeys.UserPermissionDic, menuReader.PermissionItems);
                    this.Save(SessionKeys.Menus, menuReader.Menus);
                    result.Success("/home/main");
                }
            }
            return(result.ToJson());
        }
Пример #3
0
        public ActionResult DeleteUser(int?id)
        {
            var result = ActionJsonResult.Create();

            if (id.HasValue) //编辑
            {
                using (var db = DbHelper.Create())
                {
                    var user = db.Tb_Users.FirstOrDefault(u => u.UserID == id);
                    if (user == null)
                    {
                        result.Failed("无法查询到指定的用户.");
                    }
                    else
                    {
                        try
                        {
                            db.Tb_Users.Remove(user);
                            db.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            result.Failed(e.Message);
                        }
                    }
                }
            }
            else
            {
                result.Failed("无效的用户Id.");
            }
            return(result.ToJson());
        }
Пример #4
0
        public ActionResult GetAllMenu()
        {
            var result = ActionJsonResult.Create();
            var menus  = this.Load <List <MenuItem> >(SessionKeys.Menus);

            result.Success(menus);
            return(result.ToJson());
        }
Пример #5
0
        public ActionResult GetSession()
        {
            var result = ActionJsonResult.Create();

            if (Session["Web.EF.Tb_Users"] == null)
            {
                //Tb_Users user = Session["Web.EF.Tb_Users"] as Tb_Users;
                ////保存当前登录用户
                //this.Save(user);
                ////?获取用户菜单
                //var menuReader = new MenuReader(user);
                //menuReader.LoadMenus(GetMenuJson());
                //this.Save(SessionKeys.UserPermissionDic, menuReader.PermissionItems);
                //this.Save(SessionKeys.Menus, menuReader.Menus);
                result.Failed("过期");
            }
            return(result.ToJson());
        }
Пример #6
0
        public ActionResult SaveDeveloper(Tb_Users user)
        {
            var result = ActionJsonResult.Create();

            if (user == null)
            {
                result.Failed("用户数据错误.");
            }
            else
            {
                using (var db = DbHelper.Create())
                {
                    try
                    {
                        //查询是否有相同的记录存在,存在,则更新;否则插入新的
                        var tmp = db.Tb_Users.FirstOrDefault((a => a.UserID == user.UserID));
                        if (tmp != null)
                        {
                            tmp.Enabled         = user.Enabled;
                            tmp.UserName        = user.UserName;
                            db.Entry(tmp).State = EntityState.Modified;
                        }
                        else
                        {
                            user.Level      = 2;
                            user.Password   = "******";
                            user.CreateDate = DateTime.Now;
                            user.Token      = GetUserToken();
                            db.Tb_Users.Add(user);
                        }
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        result.Failed(e.Message);
                    }
                }
            }
            return(result.ToJson());
        }
Пример #7
0
        public ActionResult SaveUserProfile(PasswordChange info)
        {
            var result = ActionJsonResult.Create();

            if (info == null)
            {
                result.Failed("参数错误");
            }
            else
            {
                var user = this.Load <Tb_Users>();
                if (user.Password != info.OldPsw)
                {
                    result.Failed("用户密码不匹配.");
                }
                else
                {
                    using (var db = DbHelper.Create())
                    {
                        user.Password        = info.NewPsw;
                        db.Entry(user).State = EntityState.Modified;
                        try
                        {
                            db.SaveChanges();
                            this.Save(user);
                        }
                        catch (Exception e)
                        {
                            result.Failed(e.Message);
                        }
                    }
                }
            }

            return(result.ToJson());
        }
Пример #8
0
        public ActionResult GetFaceAPIReport(int type)
        {
            //var sw = new Stopwatch();
            //sw.Start();

            var sum      = new List <int>();
            var min      = new List <int>();
            var max      = new List <int>();
            var count    = new List <int>();
            var saveDate = new List <string>();
            var avg      = new List <int>();
            var result   = ActionJsonResult.Create();

            using (var db = DbHelper.Create())
            {
                var    users    = this.Load <Tb_Users>();
                var    level    = users.Level;
                var    userid   = users.UserID;
                string StrSql   = "";
                string sqlWhere = "";
                string UserId   = "";
                if (type == 1)
                {
                    if (level > 1)
                    {
                        sqlWhere = " and UserID=" + userid + " ";
                        UserId   = " UserID, ";
                    }
                    StrSql = " select sum(UseTime) as sumElapsedTime ,max(UseTime) as maxElapsedTime,count(UseTime) as countElapsedTime,avg(UseTime) as avgElapsedTime, min(UseTime) as minElapsedTime," + UserId + " day(Tb_Logs_FaceAPI.CallTime) as SaveDate from Tb_Logs_FaceAPI " +
                             " where year(Tb_Logs_FaceAPI.CallTime) = year(getdate())  and month(Tb_Logs_FaceAPI.CallTime) = month(getdate()) " + sqlWhere + " " +
                             " group by " + UserId + " day(Tb_Logs_FaceAPI.CallTime)";
                }
                else
                {
                    if (level > 1)
                    {
                        sqlWhere = " and UserID=" + userid + " ";
                        UserId   = " UserID, ";
                    }
                    StrSql = "select sum(UseTime) as sumElapsedTime ,max(UseTime) as maxElapsedTime,count(UseTime) as countElapsedTime,avg(UseTime) as avgElapsedTime, min(UseTime) as minElapsedTime," + UserId + " DATEPART(hh,Tb_Logs_FaceAPI.CallTime) as SaveDate from Tb_Logs_FaceAPI " +
                             " where year(Tb_Logs_FaceAPI.CallTime) = year(getdate())  and month(Tb_Logs_FaceAPI.CallTime) = month(getdate()) " +
                             " and  day(Tb_Logs_FaceAPI.CallTime) = day(getdate()) " + sqlWhere + " group by " + UserId + " DATEPART(hh, Tb_Logs_FaceAPI.CallTime)";
                }

                var sql = new StringBuilder(StrSql);

                var list = db.Database.SqlQuery <FaceApiData>(sql.ToString()).ToList();
                //var psr = new PageSearchResult<List<FaceApiData>>(list.Count, list);
                //result.Data = list;
                var month = DateTime.Now.Month; //月
                var day   = DateTime.Now.Day;   //日
                var hour  = DateTime.Now.Hour;  //小时
                var param = type == 1 ? day : hour;
                var m     = 0;
                for (int i = 1; i <= param; i++)
                {
                    m++;
                    if (type == 1)
                    {
                        saveDate.Add(month + "月" + m + "日");
                    }
                    else
                    {
                        saveDate.Add(m + "小时");
                    }
                    count.Add(0);
                    foreach (var item in list)
                    {
                        if (i == item.SaveDate)
                        {
                            if (type == 1)
                            {
                                if (item.SaveDate != null)
                                {
                                    saveDate[i - 1] = month + "月" + item.SaveDate + "日";
                                }
                                if (item.countElapsedTime != null)
                                {
                                    count[i - 1] = (int)item.countElapsedTime;
                                }
                            }
                            else
                            {
                                if (item.SaveDate != null)
                                {
                                    saveDate[i - 1] = item.SaveDate + "小时";
                                }
                                if (item.countElapsedTime != null)
                                {
                                    count[i - 1] = (int)item.countElapsedTime;
                                }
                            }
                        }
                    }
                }
                foreach (var item in list)
                {
                    if (item.avgElapsedTime != null)
                    {
                        avg.Add((int)item.avgElapsedTime);
                    }
                    if (item.sumElapsedTime != null)
                    {
                        sum.Add((int)item.sumElapsedTime);
                    }
                    if (item.maxElapsedTime != null)
                    {
                        max.Add((int)item.maxElapsedTime);
                    }
                    if (item.minElapsedTime != null)
                    {
                        min.Add((int)item.minElapsedTime);
                    }
                }
            }
            var o = new
            {
                sum      = sum,
                min      = min,
                max      = max,
                count    = count,
                saveDate = saveDate,
                avg      = avg,
            };

            return(Json(o, JsonRequestBehavior.AllowGet));
        }