using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; using System.Web.Http.Description; namespace GSYWApi.Controllers { /// /// 系统登录相关接口 /// public class LoggingController : BaseController { #region 方法 -> 用户登录 /// /// 用户登录,参数:登录账号【UserPassport】,登录密码【UserPassWord】,用户登录token【accessToken】 /// /// /// 100:登录成功 /// 200:登录失败 /// 300:token失效 /// [Route("Logging/UserLogin")] [AcceptVerbs("POST")] [ResponseType(typeof(Models.JsonMsg))] public IHttpActionResult UserLogin() { string accessToken = Helper.Pub.Request("accessToken"); string UserPassport = Helper.Pub.Request("UserPassport"); string UserPassWord = Helper.Pub.Request("UserPassWord"); try { //定义错误提示内容 string FailureString = ""; //定义登录用户对象,返回给前端 Model.PassportInfo passportInfo = new Model.PassportInfo(); //验证用户登录信息 if (!string.IsNullOrWhiteSpace(accessToken)) { if (Helper.LoggingHelper.UserLogin(transaction, accessToken, ref passportInfo, ref FailureString)) { return Ok(Models.JsonMsg.Success(passportInfo, 100, "登录成功")); } else { return Ok(Helper.Common.ReturnJson(300, FailureString)); } } else { bool LoginFlag = Helper.LoggingHelper.UserLogin(transaction, UserPassport, UserPassWord, ref passportInfo, ref FailureString); if (LoginFlag) { return Ok(Models.JsonMsg.Success(passportInfo, 100, "登录成功")); } else { return Ok(Helper.Common.ReturnJson(200, FailureString)); } } } catch (Exception ex) { //事务回滚 transaction.Rollback(); Helper.LogUtil.WriteLog(null, "登录失败!失败原因:" + ex.Message + "\r\n", DateTime.Now.ToString("yyyyMMdd") + "_UserLogin"); return Ok(Helper.Common.ReturnJson(999, "登录失败" + ex.Message)); } } #endregion #region 方法 -> 用户登出 /// /// 用户登出,参数:用户登录token【accessToken】 /// /// [Route("Logging/UserLogout")] [AcceptVerbs("POST")] [ResponseType(typeof(Models.JsonMsg))] public IHttpActionResult UserLogout() { string accessToken = Helper.Pub.Request("accessToken", Helper.Pub.Request("token")); Helper.LogUtil.WriteLog(null, "用户登录token:" + accessToken, DateTime.Now.ToString("yyyyMMdd") + "_UserLogout"); try { Helper.RedisHelper redisHelper = new Helper.RedisHelper(); if (Helper.LoggingHelper.LogoutPlatform(redisHelper, accessToken)) { return Ok(Helper.Common.ReturnJson(100, "登出成功")); } else { return Ok(Helper.Common.ReturnJson(200, "登出失败")); } } catch (Exception ex) { //事务回滚 transaction.Rollback(); Helper.LogUtil.WriteLog(null, "登录失败!失败原因:" + ex.Message, DateTime.Now.ToString("yyyyMMdd") + "_UserLogout"); return Ok(Helper.Common.ReturnJson(999, "登录失败" + ex.Message)); } } #endregion } }