You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

162 lines
5.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using Utils;
using VM;
namespace Web
{
public class MvcHelper
{
/// <summary>
/// 登录页常量
/// </summary>
public const string LoginUrl = "/SignIn";
/// <summary>
/// 系统名称
/// </summary>
public const string SiteName = "智能理财分析教学系统";
/// <summary>
/// 获取当前用户(为空时会创建新实体)
/// </summary>
public static UserInfoVM User
{
get
{
SessionUser su = SessionHelper.GetSession(SessionKey.UserInfo) as SessionUser;
if (su == null)
return new UserInfoVM();
int UserID = (SessionHelper.GetSession(SessionKey.UserInfo) as SessionUser).UserID;
UserInfoVM model = null;
//StructureCaches.UserCache.Remove(UserID, out model);
var a = StructureCaches.UserCache;
StructureCaches.UserCache.TryGetValue(UserID, out model);
if (model != null)
{
//if (model.RoleId == 3)
//{
// if (model.UserClassInfo != null)
// {
// List<string> classidOne = new List<string>();
// List<int> ClassIds = new List<int>();
// foreach (var itemOne in model.UserClassInfo)
// {
// if (!string.IsNullOrEmpty(itemOne.ClassIds))
// {
// var a = itemOne.ClassIds.Split(',');
// if (a.Length > 0)
// {
// for (int i = 0; i < a.Length; i++)
// {
// ClassIds.Add(Convert.ToInt32(a[i]));
// }
// }
// ClassIds = ClassIds.Distinct().ToList();
// item.UserClassInfo = new List<UserClass>();
// foreach (var itemT in ClassIds)
// {
// item.UserClassInfo.Add(getClassInfo.Where(x => x.ClassId == itemT).FirstOrDefault());
// }
// model.UserClassInfo = new List<UserClassVM>();
// foreach (var itemOne in ClassIds)
// {
// }
// }
// }
// }
//}
return model;
}
else
{
return new UserInfoVM();
}
}
}
//public List<UserClassVM> GetClassList(int Id)
//{
// StringBuilder strSql = new StringBuilder();
// strSql.Append("select EduTeachers.Id as UserId ,ClassId,3 as RoleId,ClassIds as ClassIds ");
// //strSql.Append(" FROM EduSchedules left join EduTeachers on EduTeachers.id = EduSchedules.TeacherId left join EduUsers on EduUsers.UserName = EduTeachers.TeacherNo");
// strSql.Append(" FROM EduTeachers ");
// strSql.Append(" where 1 = 1 and EduTeachers.IsDeleted = 0 ");
// LogHelper.Log.WriteDebug(strSql.ToString());
// List<UserClassVM> list = new List<UserClassVM>();
// using (var conn = DBHelper.CreateConnection())
// {
// conn.Open();
// list = conn.Query<UserClass>(strSql.ToString()).ToList();
// }
// return list;
//}
/// <summary>
/// 用户是否在线
/// </summary>
public static bool IsUserOnline
{
get
{
if (SessionHelper.GetSession(SessionKey.UserInfo) != null)
{
return true;
}
else
{
return false;
}
}
}
/// <summary>
/// 根据角色跳转首页
/// </summary>
public static string RedirectToDefault
{
get
{
string defaultpages = AppSettingsHelper.GetStringByKey("DefaultPage", "");
if (!string.IsNullOrEmpty(defaultpages))
{
var pages = defaultpages.Split(',');
if (pages != null && pages.Length == 3)
{
UserInfoVM user = User;
if (user.RoleId == (int)UserType.Admin)
{
return pages[0];
}
else if (user.RoleId == (int)UserType.Teacher)
{
return pages[1];
}
else if (user.RoleId == (int)UserType.Student)
{
return pages[2];
}
}
}
return LoginUrl;
}
}
}
}