You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1123 lines
58 KiB
1123 lines
58 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.Security;
|
|
using System.Web.Script.Serialization;
|
|
using System.Text;
|
|
using System.Data;
|
|
using System.Web.SessionState;
|
|
namespace FangYar.WebUI.ashx
|
|
{
|
|
/// <summary>
|
|
/// LoginHandler 的摘要说明
|
|
/// </summary>
|
|
public class LoginHandler : IHttpHandler, IRequiresSessionState
|
|
{
|
|
string app = System.Configuration.ConfigurationManager.AppSettings["APP"];
|
|
/// <summary>
|
|
/// 是否添加Cook域缓存设置
|
|
/// </summary>
|
|
public static string CookSet = System.Configuration.ConfigurationManager.AppSettings["CookSet"] + "";
|
|
public void ProcessRequest(HttpContext context)
|
|
{
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录操作请求", "");
|
|
|
|
context.Response.ContentType = "text/json";
|
|
string action = context.Request.Params["Action"];
|
|
string returnStr = "";
|
|
switch (action)
|
|
{
|
|
case "LoginAction":
|
|
returnStr = login(context);
|
|
break;
|
|
case "APPLoginAction":
|
|
returnStr = APPlogin(context);
|
|
break;
|
|
case "XJAPPLoginAction":
|
|
returnStr = XJAPPlogin(context);
|
|
break;
|
|
case "loginOut":
|
|
returnStr = loginOut(context);
|
|
break;
|
|
case "ZGlogin":
|
|
returnStr = ZGlogin(context);
|
|
break;
|
|
case "ZGloginXJ":
|
|
returnStr = ZGloginXJ(context);
|
|
break;
|
|
case "XCXlogin":
|
|
returnStr = XCXlogin(context);
|
|
break;
|
|
case "AppLoginByAppId":
|
|
returnStr = AppLoginByAppId(context);
|
|
break;
|
|
case "XCXLoginByOpenId":
|
|
returnStr = XCXLoginByOpenId(context);
|
|
break;
|
|
case "SendVerification":
|
|
returnStr = SendVerification(context);
|
|
break;
|
|
case "AppUpdateCid":
|
|
returnStr = AppUpdateCid(context);
|
|
break;
|
|
case "AppUpdateOpenId":
|
|
returnStr = AppUpdateOpenId(context);
|
|
break;
|
|
|
|
case "TestData":
|
|
returnStr = TestData(context);
|
|
break;
|
|
}
|
|
|
|
context.Response.Write(returnStr);
|
|
|
|
}
|
|
|
|
// 解锁
|
|
private string TestData(HttpContext context)
|
|
{
|
|
return "{\"code\":1,\"msg\":\"信息内容\"}";
|
|
}
|
|
|
|
private string login(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
FangYar.Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
FangYar.BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
FangYar.BLL.TBL.SysEmpBLL empbll = new BLL.TBL.SysEmpBLL();
|
|
try
|
|
{
|
|
FangYar.Model.TBL.TBL_SYS_APP_Model appmodel = new FangYar.BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = FangYar.Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = FangYar.BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户权限
|
|
string rigths = FangYar.BLL.CommomBLL.GetTableIDS("PERM_VALUE", "app_id", "TBL_SYS_PERM", " where id in(select perm_id from TBL_SYS_ROLEPERM where ROLE_ID in('" + rolesid.Replace(",", "','") + "') and app_id='" + app + "' ) ");
|
|
buser.rights = rigths;
|
|
//获取用户区域
|
|
FangYar.Model.FIRE.FIRE_ORG area = new BLL.FIRE.FIRE_ORG().GetModel(buser.OrgID);
|
|
if (area != null) { buser.AreaID = area.CITY; }
|
|
StringBuilder userdata = new StringBuilder();
|
|
new JavaScriptSerializer().Serialize(buser, userdata);
|
|
//数据放入ticket
|
|
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, UserID, DateTime.Now, DateTime.Now.AddMinutes(720), true, userdata.ToString());
|
|
//数据加密
|
|
string enyTicket = FormsAuthentication.Encrypt(ticket);
|
|
//将身份信息保存在cookie中,验证当前请求是否是有效请求
|
|
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, enyTicket);
|
|
HttpContext.Current.Response.Cookies.Add(cookie);
|
|
//buser.OrgName,buser.DeptName;
|
|
|
|
//营区政工需要的参数数据获取:员工ID+PWD+NAME、机构ID+NAME、部门ID+NAME、手机、民族、照片、学历、性别、政治面貌、职位
|
|
FangYar.Model.TBL.TBL_SYS_EMP_Model empModel = empbll.GetModelByUserID(buser.OrgID, UserID);
|
|
if (empModel == null)
|
|
{
|
|
return "{\"code\":-1,\"msg\":\"账户不存在!\"}";
|
|
}
|
|
//总队机关七个领导单独处理
|
|
switch (UserID)
|
|
{
|
|
//测试
|
|
case "13866138665":
|
|
//胡东宁
|
|
case "19809889000":
|
|
//魏治宇
|
|
case "19889201111":
|
|
//王岗
|
|
case "18388586666":
|
|
//扎西平措
|
|
case "13908906669":
|
|
//王涛
|
|
case "13908919779":
|
|
//何峰
|
|
case "18489206999":
|
|
//加阿次登
|
|
case "13518906666":
|
|
//钟捷
|
|
case "13880281199":
|
|
//许卫东
|
|
case "13908905245":
|
|
empModel.ORG_ID = "D8DC637B8B984848A63F82A018AFAEB0";
|
|
empModel.ORG_NAME = "西藏消防总队";
|
|
empModel.IS_ADMIN = "1";
|
|
buser.IsAdmin = "1";
|
|
buser.OrgName = "西藏消防总队";
|
|
buser.OrgID = "D8DC637B8B984848A63F82A018AFAEB0";
|
|
buser.SubOrgCount = 8;
|
|
break;
|
|
}
|
|
if (buser.IsAdmin == "1" && UserID.Substring(0, 1) == "1")
|
|
{
|
|
empModel.ORG_ID = Common.WebCommonUtil.GetOrgIdDownLevelToUpLevel(buser.OrgID);
|
|
buser.OrgID = Common.WebCommonUtil.GetOrgIdDownLevelToUpLevel(buser.OrgID);
|
|
}
|
|
|
|
|
|
HttpCookie cookie2 = new HttpCookie("kn_root_cookie", "{\"usersUid\":\"" + UserID + "\",\"usersName\":\"" + buser.USERS_NAME + "\",\"IsAdmin\":\"" + buser.IsAdmin + "\",\"cityId\":\"" + buser.CityCode + "\",\"orgId\":\"" + buser.OrgID + "\",\"orgName\":\"" + buser.OrgName + "\",\"deptId\":\"" + buser.DeptID + "\",\"deptName\":\"" + buser.DeptName + "\",\"pid\":\"" + buser.Pid + "\",\"userMobile\":\"" + buser.USERS_MOBILE + "\",\"userSex\":\"" + empModel.EMP_SEX + "\",\"userNation\":\"" + empModel.NATION_NAME + "\",\"userFace\":\"" + empModel.FACE_NAME + "\",\"userCert\":\"" + empModel.CERT_NAME + "\",\"userProf\":\"" + empModel.PROF_NAME + "\",\"userPhoto\":\"" + empModel.PHOTO + "\",\"roles\":\"" + buser.roles + "\"}");
|
|
|
|
// 令 Cookie 永不过期
|
|
//cookie2.Expires = System.DateTime.Now.AddDays(7.0);
|
|
// 保存用户的 Cookie
|
|
if (CookSet != "1")
|
|
{
|
|
cookie2.Domain = ".xfzn365.com";
|
|
}
|
|
HttpContext.Current.Response.Cookies.Add(cookie2);
|
|
|
|
//营区logger使用
|
|
HttpCookie cookie3 = new HttpCookie("kn_root_UserID", UserID);
|
|
// 令 Cookie 永不过期
|
|
cookie2.Expires = System.DateTime.Now.AddDays(7.0);
|
|
// 保存用户的 Cookie
|
|
if (CookSet != "1")
|
|
{
|
|
cookie2.Domain = ".xfzn365.com";
|
|
}
|
|
HttpContext.Current.Response.Cookies.Add(cookie3);
|
|
|
|
//roadflow session存储
|
|
FangYar.BLL.TBL.SysUsersBLL userbll = new FangYar.BLL.TBL.SysUsersBLL();
|
|
string uniqueID = "";
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserID.ToString()] = buser.UserCode;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.OrgID.ToString()] = buser.OrgID;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserUniqueID.ToString()] = uniqueID;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.User.ToString()] = userbll.GetModelByUID(buser.UserCode);
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + "}";
|
|
//revlue += "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + ",\"Ticket\":" + enyTicket + "}";
|
|
Common.logger logger = new Common.logger();
|
|
//logger.Info("PC登录系统成功");
|
|
}
|
|
else if (buser.state == "9")
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已删除!请联系管理员!\"}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "后台登录请求异常:" + e);
|
|
|
|
string str = "PC登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "后台登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
private string APPlogin(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
FangYar.Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
FangYar.BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
try
|
|
{
|
|
FangYar.Model.TBL.TBL_SYS_APP_Model appmodel = new FangYar.BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = FangYar.Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = FangYar.BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
//获取APP更新信息
|
|
DataTable appupdate = new BLL.OA.TBL_APPUPDATE().GetAppUpdate(buser.OrgCityType).Tables[0];
|
|
|
|
//roadflow session存储
|
|
string uniqueID = "";
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserID.ToString()] = buser.UserCode;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.OrgID.ToString()] = buser.OrgID;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserUniqueID.ToString()] = uniqueID;
|
|
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser);
|
|
revlue += ",\"data2\":" + FangYar.Common.JsonHelper.ToJson(appupdate) + "}";
|
|
//revlue += "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + ",\"Ticket\":" + enyTicket + "}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "APP登录请求异常:" + e);
|
|
string str = "APP登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "APP登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
private string XJAPPlogin(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string versionFramework = context.Request.Params["version1"].Trim();
|
|
string versionHotUpdate = context.Request.Params["version2"].Trim();
|
|
string AppId = context.Request.Params["AppId"].Trim();
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
|
|
//密码原始字符串
|
|
string pwdStr = context.Request.Params["strPwd"];
|
|
|
|
|
|
Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
try
|
|
{
|
|
Model.TBL.TBL_SYS_APP_Model appmodel = new BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
//if (buser.OrgID == "D8DC637B8B984848A63F82A018AFAEB0")
|
|
//{
|
|
// buser.OrgID = "734389c7ae364584aea9918693bba3de";
|
|
// buser.OrgName = "总队机关";
|
|
//}
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
//获取APP更新信息
|
|
DataTable appupdate = new BLL.OA.TBL_APPUPDATE().GetAppUpdate(buser.OrgCityType).Tables[0];
|
|
if (appupdate.Rows.Count > 0)
|
|
{
|
|
appupdate.Columns.Add("IsUpdate", typeof(int));
|
|
appupdate.Rows[0]["IsUpdate"] = 0;
|
|
if (versionFramework != appupdate.Rows[0]["APP_VERSION"].ToString().Trim())
|
|
{
|
|
appupdate.Rows[0]["IsUpdate"] = 1;
|
|
|
|
}
|
|
else
|
|
{
|
|
if (versionHotUpdate != appupdate.Rows[0]["HOTUPDATEVERSION"].ToString().Trim())
|
|
{
|
|
appupdate.Rows[0]["IsUpdate"] = 2;
|
|
}
|
|
}
|
|
|
|
}
|
|
//roadflow session存储
|
|
string uniqueID = "";
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserID.ToString()] = buser.UserCode;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.OrgID.ToString()] = buser.OrgID;
|
|
context.Session[RoadFlow.Utility.Keys.SessionKeys.UserUniqueID.ToString()] = uniqueID;
|
|
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser);
|
|
revlue += ",\"data2\":" + FangYar.Common.JsonHelper.ToJson(appupdate);
|
|
//revlue += "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + ",\"Ticket\":" + enyTicket + "}";
|
|
|
|
string userMenuList = GetUserMenu(buser, "0");
|
|
revlue += ",\"MENUARRAY\":" + userMenuList;
|
|
bool isupcid = new BLL.TBL.SysEmpBLL().updateCid(UserID, AppId);
|
|
revlue += ",\"isUpdateCid\":\"" + isupcid + "\"}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "西藏APP登录请求异常:" + e);
|
|
string str = "西藏APP登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "西藏APP登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
// 政工登录调用(西藏)
|
|
private string ZGlogin(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
FangYar.Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
FangYar.BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
FangYar.BLL.TBL.SysEmpBLL empbll = new BLL.TBL.SysEmpBLL();
|
|
try
|
|
{
|
|
FangYar.Model.TBL.TBL_SYS_APP_Model appmodel = new FangYar.BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = FangYar.Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = FangYar.BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
|
|
//营区政工需要的参数数据获取:员工ID+PWD+NAME、机构ID+NAME、部门ID+NAME、手机、民族、照片、学历、性别、政治面貌、职位
|
|
FangYar.Model.TBL.TBL_SYS_EMP_Model empModel = empbll.GetModelByUserID(buser.OrgID, UserID);
|
|
if (empModel == null)
|
|
{
|
|
return "{\"code\":-1,\"msg\":\"账户不存在!\"}";
|
|
}
|
|
string data = "{\"usersUid\":\"" + UserID + "\",\"usersName\":\"" + buser.USERS_NAME + "\",\"orgId\":\"" + buser.OrgID + "\",\"IS_SUPER\":\"" + buser.IS_SUPER + "\",\"orgName\":\"" + buser.OrgName + "\",\"deptId\":\"" + buser.DeptID + "\",\"deptName\":\"" + buser.DeptName + "\",\"userMobile\":\"" + buser.USERS_MOBILE + "\",\"userSex\":\"" + empModel.EMP_SEX + "\",\"userNation\":\"" + empModel.NATION_NAME + "\",\"userFace\":\"" + empModel.FACE_NAME + "\",\"userCert\":\"" + empModel.CERT_NAME + "\",\"userProf\":\"" + empModel.PROF_NAME + "\",\"userPhoto\":\"" + empModel.PHOTO + "\",\"roles\":\"" + buser.roles + "\"}";
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + data + "}";
|
|
//revlue += "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + ",\"Ticket\":" + enyTicket + "}";
|
|
}
|
|
else if (buser.state == "9")
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已删除!请联系管理员!\"}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "西藏政工登录请求异常:" + e);
|
|
string str = "西藏政工登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "西藏政工登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
// 政工登录调用(新疆)
|
|
private string ZGloginXJ(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string revlue = "";
|
|
|
|
FangYar.Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
FangYar.BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
FangYar.BLL.TBL.SysEmpBLL empbll = new BLL.TBL.SysEmpBLL();
|
|
try
|
|
{
|
|
FangYar.Model.TBL.TBL_SYS_APP_Model appmodel = new FangYar.BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
|
|
buser = bll.UserLoginByUID(UserID);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = FangYar.BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
|
|
//营区政工需要的参数数据获取:员工ID+PWD+NAME、机构ID+NAME、部门ID+NAME、手机、民族、照片、学历、性别、政治面貌、职位 IS_SUPER
|
|
FangYar.Model.TBL.TBL_SYS_EMP_Model empModel = empbll.GetModelByUserID(buser.OrgID, UserID);
|
|
string data = "{\"usersUid\":\"" + UserID + "\",\"usersName\":\"" + buser.USERS_NAME + "\",\"orgId\":\"" + buser.OrgID + "\",\"IS_SUPER\":\"" + buser.IS_SUPER + "\",\"orgName\":\"" + buser.OrgName + "\",\"deptId\":\"" + buser.DeptID + "\",\"deptName\":\"" + buser.DeptName + "\",\"userMobile\":\"" + buser.USERS_MOBILE + "\",\"userSex\":\"" + empModel.EMP_SEX + "\",\"userNation\":\"" + empModel.NATION_NAME + "\",\"userFace\":\"" + empModel.FACE_NAME + "\",\"userCert\":\"" + empModel.CERT_NAME + "\",\"userProf\":\"" + empModel.PROF_NAME + "\",\"userPhoto\":\"" + empModel.PHOTO + "\",\"roles\":\"" + buser.roles + "\"}";
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + data + "}";
|
|
//revlue += "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser) + ",\"Ticket\":" + enyTicket + "}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "新疆政工登录请求异常:" + e);
|
|
string str = "新疆政工登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "新疆政工登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
// 解锁
|
|
private string unLock(HttpContext context)
|
|
{
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string revlue = "";
|
|
try
|
|
{
|
|
FangYar.Model.LoginUserModel user = FangYar.WebUI.WebCommon.HttpUtil.GetUser(context);
|
|
if (user != null)
|
|
{
|
|
FangYar.Model.TBL.TBL_SYS_USERS_Model model = new BLL.TBL.SysUsersBLL().GetModelByUID(user.UserCode);
|
|
if (model.USERS_PWD == FangYar.Common.Md5.GetMD5String(UserPwd))
|
|
{
|
|
revlue = "{\"code\":1,\"msg\":\"解锁成功!\"}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"密码错误!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-2,\"msg\":\"登录超时!\"}";
|
|
}
|
|
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
}
|
|
return revlue;
|
|
}
|
|
|
|
// 注销登陆
|
|
private string loginOut(HttpContext context)
|
|
{
|
|
context.Response.Cookies.Clear();
|
|
FormsAuthentication.SignOut();
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "注销登录");
|
|
return "{\"code\":1,\"msg\":\"注销成功!\"}";
|
|
}
|
|
|
|
public string checklogin(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string revlue = "";
|
|
FangYar.Model.BaseUserModel buser = new Model.BaseUserModel();
|
|
FangYar.BLL.BaseUserBLL bll = new BLL.BaseUserBLL();
|
|
try
|
|
{
|
|
|
|
UserPwd = FangYar.Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
revlue += "{\"status\":1,\"message\":" + FangYar.Common.JsonHelper.ToJson(buser) + "}";
|
|
}
|
|
else
|
|
{
|
|
revlue += "{\"status\":0,\"message\":\"用户名密码错误\"}";
|
|
}
|
|
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"status\":-1,\"message\":\"" + e.Message + "\"}";
|
|
}
|
|
return revlue;
|
|
}
|
|
|
|
//小程序登录
|
|
private string XCXlogin(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
//密码原始字符串
|
|
string pwdStr = context.Request.Params["strPwd"];
|
|
|
|
Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
try
|
|
{
|
|
Model.TBL.TBL_SYS_APP_Model appmodel = new BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser);
|
|
|
|
string userMenuList = GetUserMenu(buser, "1");
|
|
revlue += ",\"MENUARRAY\":" + userMenuList + "}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "登录请求", "小程序登录请求异常:" + e);
|
|
string str = "小程序登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "小程序登录请求");
|
|
return revlue;
|
|
}
|
|
|
|
//App登录校验是否更新、校验AppId是否为常用设备登录
|
|
private string AppLoginByAppId(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string versionFramework = context.Request.Params["version1"].Trim();
|
|
string versionHotUpdate = context.Request.Params["version2"].Trim();
|
|
string AppId = context.Request.Params["AppId"].Trim();
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
|
|
|
|
Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
try
|
|
{
|
|
Model.TBL.TBL_SYS_APP_Model appmodel = new BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取APP更新信息
|
|
DataTable appupdate = new BLL.OA.TBL_APPUPDATE().GetAppUpdate(buser.OrgCityType).Tables[0];
|
|
if (appupdate.Rows.Count > 0)
|
|
{
|
|
appupdate.Columns.Add("IsUpdate", typeof(int));
|
|
appupdate.Rows[0]["IsUpdate"] = 0;
|
|
if (versionFramework != appupdate.Rows[0]["APP_VERSION"].ToString().Trim())
|
|
{
|
|
appupdate.Rows[0]["IsUpdate"] = 1;
|
|
}
|
|
else
|
|
{
|
|
if (versionHotUpdate != appupdate.Rows[0]["HOTUPDATEVERSION"].ToString().Trim())
|
|
{
|
|
appupdate.Rows[0]["IsUpdate"] = 2;
|
|
}
|
|
}
|
|
}
|
|
//获取用户角色
|
|
string rolesid = BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
|
|
if (buser.Cid == AppId)
|
|
{
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\"";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-2,\"msg\":\"登录新设备需要安全认证!\"";
|
|
}
|
|
revlue += ",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser);
|
|
revlue += ",\"data2\":" + FangYar.Common.JsonHelper.ToJson(appupdate);
|
|
|
|
string userMenuList = GetUserMenu(buser, "0");
|
|
revlue += ",\"MENUARRAY\":" + userMenuList + "\"}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "App登录校验是否更新异常:" + e);
|
|
string str = "App登录校验是否更新:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "App登录校验是否更新");
|
|
return revlue;
|
|
}
|
|
|
|
|
|
//微信小程序、校验OpenId是否为常用设备登录
|
|
private string XCXLoginByOpenId(HttpContext context)
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string UserPwd = context.Request.Params["strPwd"];
|
|
string OpenId = context.Request.Params["OpenId"].Trim();
|
|
string usersPwd = UserPwd;
|
|
string revlue = "";
|
|
|
|
try
|
|
{
|
|
bool isupcid = new BLL.TBL.SysEmpBLL().updateOpenId(UserID, OpenId);
|
|
}
|
|
catch (Exception ex) { }
|
|
|
|
Model.LoginUserModel buser = new Model.LoginUserModel();
|
|
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
|
|
try
|
|
{
|
|
Model.TBL.TBL_SYS_APP_Model appmodel = new BLL.TBL.SysAppBLL().GetModelByAppCode(app);
|
|
if (appmodel == null || appmodel.APP_STATE != "0") { revlue = "{\"code\":-1,\"msg\":\"平台已禁止使用\"}"; }
|
|
else
|
|
{
|
|
UserPwd = Common.Md5.GetMD5String(UserPwd);
|
|
buser = bll.UserLogin(UserID, UserPwd);
|
|
if (buser != null)
|
|
{
|
|
if (buser.state == "0")
|
|
{
|
|
//获取用户角色
|
|
string rolesid = BLL.CommomBLL.GetTableIDS("rules_id", "users_uid", "TBL_SYS_USERSRULES", " where users_uid='" + UserID + "' and app_id='" + app + "' and rules_type='2' ");
|
|
buser.roles = rolesid;
|
|
//获取用户区域
|
|
DataTable area = new BLL.FIRE.FIRE_ORG().GetFireOrg(" ORG_ID='" + buser.OrgID + "'").Tables[0];
|
|
if (area != null) { buser.AreaID = area.Rows[0]["CITY"].ToString(); buser.AreaName = area.Rows[0]["AREA_NAME"].ToString(); }
|
|
|
|
//if (buser.OpenId == OpenId)
|
|
//{
|
|
revlue = "{\"code\":1,\"msg\":\"登录成功\"";
|
|
//}
|
|
//else
|
|
//{
|
|
// revlue = "{\"code\":-2,\"msg\":\"登录新设备需要安全认证!\"";
|
|
//}
|
|
|
|
revlue += ",\"data\":" + FangYar.Common.JsonHelper.ToJson(buser);
|
|
|
|
string userMenuList = GetUserMenu(buser, "1");
|
|
revlue += ",\"MENUARRAY\":" + userMenuList + "}";
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"您的账户已锁定!请联系管理员!\"}";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
revlue = "{\"code\":0,\"msg\":\"用户名密码错误\"}";
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
revlue = "{\"code\":-1,\"msg\":\"" + e.Message + "\"}";
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "微信小程序、校验OpenId是否为常用设备登录异常:" + e);
|
|
string str = "微信小程序校验OpenId是否为常用设备登录异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
// 记录操作日志
|
|
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "登录请求", "微信小程序、校验OpenId是否为常用设备登录");
|
|
return revlue;
|
|
}
|
|
|
|
|
|
#region 通用
|
|
|
|
/// <summary>
|
|
/// 根据用户获取菜单列表
|
|
/// </summary>
|
|
/// <param name="user"></param>
|
|
/// <param name="flag">0:APP;1:小程序</param>
|
|
/// <returns></returns>
|
|
private string GetUserMenu(FangYar.Model.LoginUserModel user, string flag) //平台菜单、主菜单、子菜单需要设置好等级
|
|
{
|
|
string returnstr = "[";
|
|
try
|
|
{
|
|
if (user != null)
|
|
{
|
|
string menuidFirst = "5307AA9161184B7CA323D044FFB11416";
|
|
switch (flag)
|
|
{
|
|
case "1":
|
|
menuidFirst = "025e981ac3c54c769f861ce3c06a529d";
|
|
break;
|
|
}
|
|
|
|
DataTable dt = getmenu(user, null, menuidFirst);
|
|
string id, title, url, fid, type, level, order, state, action, icon, idone, idtwo, flowtype;
|
|
var index = 0;
|
|
for (int i = 0; i < dt.Rows.Count; i++)
|
|
{
|
|
if (dt.Rows[i]["MENU_PARENT"].ToString() == menuidFirst)
|
|
{
|
|
id = dt.Rows[i]["ID"].ToString();
|
|
title = dt.Rows[i]["MENU_TITLE"].ToString();
|
|
url = dt.Rows[i]["MENU_URL"].ToString();
|
|
fid = dt.Rows[i]["MENU_PARENT"].ToString();
|
|
type = dt.Rows[i]["MENU_TYPE"].ToString();
|
|
level = dt.Rows[i]["MENU_LEVEL"].ToString();
|
|
order = dt.Rows[i]["MENU_ORDER"].ToString();
|
|
state = dt.Rows[i]["MENU_FLAG"].ToString();
|
|
action = dt.Rows[i]["MENU_ACTION"].ToString();
|
|
icon = dt.Rows[i]["MENU_ICON"].ToString();
|
|
flowtype = dt.Rows[i]["FLOWTYPE"].ToString();
|
|
if (index > 0) { returnstr += ","; }
|
|
returnstr += "{";
|
|
returnstr += "\"TITLE\":\"" + title + "\"";
|
|
//returnstr += ",\"ICON\":\"layui-icon " + icon + "\"";
|
|
returnstr += ",\"ICON\":\"iconfont " + icon + "\"";
|
|
returnstr += ",\"SPREAD\":\"false\"";
|
|
returnstr += ",\"HREF\":\"" + url + "\"";
|
|
returnstr += ",\"ID\":\"" + id + "\"";
|
|
returnstr += ",\"TYPE\":\"" + type + "\"";
|
|
returnstr += ",\"STATE\":\"" + state + "\"";
|
|
returnstr += ",\"LEVEL\":\"" + level + "\"";
|
|
returnstr += ",\"ORDER\":\"" + order + "\"";
|
|
returnstr += ",\"ACTION\":\"" + action + "\"";
|
|
returnstr += ",\"FLOWTYPE\":\"" + flowtype + "\"";
|
|
returnstr += ",\"BADGE\":" + 0 + "";
|
|
returnstr += ",\"CHILDREN\":[";
|
|
dt.Rows.RemoveAt(i);
|
|
i--; index++;
|
|
int a = 0;
|
|
idone = id;
|
|
for (int j = 0; j < dt.Rows.Count; j++)
|
|
{
|
|
string aw = dt.Rows[j]["MENU_TITLE"].ToString();
|
|
|
|
if (dt.Rows[j]["MENU_PARENT"].ToString() == idone)
|
|
{
|
|
|
|
id = dt.Rows[j]["ID"].ToString();
|
|
title = dt.Rows[j]["MENU_TITLE"].ToString();
|
|
url = dt.Rows[j]["MENU_URL"].ToString();
|
|
|
|
type = dt.Rows[j]["MENU_TYPE"].ToString();
|
|
level = dt.Rows[j]["MENU_LEVEL"].ToString();
|
|
order = dt.Rows[j]["MENU_ORDER"].ToString();
|
|
state = dt.Rows[j]["MENU_FLAG"].ToString();
|
|
action = dt.Rows[j]["MENU_ACTION"].ToString();
|
|
icon = dt.Rows[j]["MENU_ICON"].ToString();
|
|
flowtype = dt.Rows[j]["FLOWTYPE"].ToString();
|
|
dt.Rows.RemoveAt(j);
|
|
j--;
|
|
if (a > 0) { returnstr += ","; }
|
|
a++;
|
|
returnstr += "{";
|
|
returnstr += "\"TITLE\":\"" + title + "\"";
|
|
//returnstr += ",\"ICON\":\"layui-icon " + "layui-icon-rate-half" + "\"";
|
|
returnstr += ",\"ICON\":\"iconfont " + icon + "\"";
|
|
returnstr += ",\"SPREAD\":\"false\"";
|
|
returnstr += ",\"HREF\":\"" + url + "\"";
|
|
returnstr += ",\"ID\":\"" + id + "\"";
|
|
returnstr += ",\"TYPE\":\"" + type + "\"";
|
|
returnstr += ",\"STATE\":\"" + state + "\"";
|
|
returnstr += ",\"LEVEL\":\"" + level + "\"";
|
|
returnstr += ",\"ORDER\":\"" + order + "\"";
|
|
returnstr += ",\"ACTION\":\"" + action + "\"";
|
|
returnstr += ",\"FLOWTYPE\":\"" + flowtype + "\"";
|
|
returnstr += ",\"BADGE\":" + 0 + "";
|
|
returnstr += ",\"CHILDREN\":[";
|
|
idtwo = id;
|
|
int b = 0;
|
|
for (int k = 0; k < dt.Rows.Count; k++)
|
|
{
|
|
if (dt.Rows[k]["MENU_PARENT"].ToString() == idtwo)
|
|
{
|
|
id = dt.Rows[k]["ID"].ToString();
|
|
title = dt.Rows[k]["MENU_TITLE"].ToString();
|
|
url = dt.Rows[k]["MENU_URL"].ToString();
|
|
|
|
type = dt.Rows[k]["MENU_TYPE"].ToString();
|
|
level = dt.Rows[k]["MENU_LEVEL"].ToString();
|
|
state = dt.Rows[k]["MENU_FLAG"].ToString();
|
|
order = dt.Rows[k]["MENU_ORDER"].ToString();
|
|
action = dt.Rows[k]["MENU_ACTION"].ToString();
|
|
icon = dt.Rows[k]["MENU_ICON"].ToString();
|
|
flowtype = dt.Rows[k]["FLOWTYPE"].ToString();
|
|
dt.Rows.RemoveAt(k);
|
|
k--;
|
|
if (b > 0) { returnstr += ","; }
|
|
b++;
|
|
returnstr += "{";
|
|
returnstr += "\"TITLE\":\"" + title + "\"";
|
|
//returnstr += ",\"ICON\":\"layui-icon " + "layui-icon-rate-half" + "\"";
|
|
returnstr += ",\"ICON\":\"iconfont " + icon + "\"";
|
|
returnstr += ",\"SPREAD\":\"false\"";
|
|
returnstr += ",\"HREF\":\"" + url + "\"";
|
|
returnstr += ",\"ID\":\"" + id + "\"";
|
|
returnstr += ",\"TYPE\":\"" + type + "\"";
|
|
returnstr += ",\"STATE\":\"" + state + "\"";
|
|
returnstr += ",\"LEVEL\":\"" + level + "\"";
|
|
returnstr += ",\"ORDER\":\"" + order + "\"";
|
|
returnstr += ",\"ACTION\":\"" + action + "\"";
|
|
returnstr += ",\"FLOWTYPE\":\"" + flowtype + "\"";
|
|
returnstr += ",\"BADGE\":" + 0 + "";
|
|
returnstr += ",\"CHILDREN\":[";
|
|
returnstr += "]";
|
|
returnstr += "}";
|
|
}
|
|
}
|
|
returnstr += "]";
|
|
returnstr += "}";
|
|
}
|
|
}
|
|
returnstr += "]";
|
|
returnstr += "}";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
string str = "根据用户获取菜单列表信息异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
returnstr += "]";
|
|
return returnstr;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取用户角色菜单详情
|
|
/// </summary>
|
|
/// <param name="user"></param>
|
|
/// <param name="fid"></param>
|
|
/// <param name="menuidFirst"></param>
|
|
/// <returns></returns>
|
|
private DataTable getmenu(FangYar.Model.LoginUserModel user, string fid, string menuidFirst)
|
|
{
|
|
DataTable dt = new DataTable();
|
|
try
|
|
{
|
|
|
|
if (user != null)
|
|
{
|
|
string baseRoleId = ",''";
|
|
FangYar.BLL.FIRE.FIRE_ORG bll_org = new BLL.FIRE.FIRE_ORG();
|
|
var org = bll_org.GetModel(user.OrgID);//所在单位
|
|
if (org != null)
|
|
{
|
|
//0:支队;1:特勤站;2:大队;3:总队
|
|
switch (org.EXTENDCODE1)
|
|
{
|
|
case "0":
|
|
baseRoleId = ",'d7f83a97208f4e049fe2e980095a7a65'";
|
|
break;
|
|
case "1":
|
|
baseRoleId = ",'03c85152f80a49f0ad3cfea202af00b4'";
|
|
break;
|
|
case "2":
|
|
baseRoleId = ",'5805857f2fae4daf9482996dbed726b7'";
|
|
break;
|
|
case "3":
|
|
baseRoleId = ",'ca8b271020d047db816cf6b18a6852ad'";
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
string sqlwhere = " find_in_set(id,cids) and id in(select menu_id from TBL_SYS_ROLEMENU t where role_id in ('" + user.roles.Replace(",", "','") + "'" + baseRoleId + ")) " +
|
|
" and id not in (SELECT id from tbl_sys_menu WHERE id in(select menu_id from tbl_sys_rolemenu_not t where role_id in ('" + user.roles.Replace(",", "','") + "')) and MENU_LEVEL = 3 ) " +
|
|
" order by MENU_TYPE ,menu_level,menu_order ";
|
|
if (user.OrgID == "1" || user.UserCode == "iamasuperman")
|
|
{
|
|
sqlwhere = " 1=1 order by MENU_TYPE ,menu_level,menu_order ";
|
|
}
|
|
dt = new FangYar.BLL.CommomBLL().GetTableList("*", " tbl_sys_menu ,(select get_Menu_child_list('" + menuidFirst + "') cids) s ", sqlwhere);
|
|
}
|
|
else
|
|
{
|
|
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
string str = "获取用户角色菜单详情异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
return dt;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//App登录发送短信验证码
|
|
private string SendVerification(HttpContext context)
|
|
{
|
|
try
|
|
{
|
|
string phone = context.Request.Params["phone"];
|
|
string templateCode = "SMS_234675567";
|
|
Random ran = new Random();
|
|
int code = ran.Next(1000, 9999);
|
|
string param = "{\"code\":\"" + code + "\"}";
|
|
|
|
FYMQTT.RemindMessages ms = new FYMQTT.RemindMessages();
|
|
ms.AloneVerificationCodePush(phone, templateCode, param);
|
|
|
|
return code + "";
|
|
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
|
|
string str = "App登录发送短信验证码异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
return "";
|
|
}
|
|
|
|
//App登录修改Cid
|
|
private string AppUpdateCid(HttpContext context)
|
|
{
|
|
try
|
|
{
|
|
string UserID = context.Request.Params["strUser"];
|
|
string AppId = context.Request.Params["AppId"].Trim();
|
|
bool isupcid = new BLL.TBL.SysEmpBLL().updateCid(UserID, AppId);
|
|
return "\"isUpdateCid\":\"" + isupcid + "\"";
|
|
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
string str = "App登录修改Cid异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
return "";
|
|
|
|
}
|
|
|
|
//App登录修改OpenId
|
|
private string AppUpdateOpenId(HttpContext context)
|
|
{
|
|
try
|
|
{
|
|
|
|
string UserID = context.Request.Params["strUser"];
|
|
string OpenId = context.Request.Params["OpenId"].Trim();
|
|
bool isupcid = new BLL.TBL.SysEmpBLL().updateOpenId(UserID, OpenId);
|
|
return "\"isUpdateCid\":\"" + isupcid + "\"";
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
string str = "App登录修改OpenId异常:" + e;
|
|
FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "LoginError" });
|
|
}
|
|
return "";
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
public bool IsReusable
|
|
{
|
|
get
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
}
|