using System; using System.Collections.Generic; using System.Linq; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Http; using MySystem.Models; using Library; namespace MySystem.Areas.Admin.Controllers { [Area("Admin")] [Route("Admin/[controller]/[action]")] public class MerchantManageController : Controller { public WebCMSEntities db = new WebCMSEntities(); public BsModels.WebCMSEntities bsdb = new BsModels.WebCMSEntities(); public IHttpContextAccessor _accessor; public MerchantManageController(IHttpContextAccessor accessor) { _accessor = accessor; } /// /// 主界面 /// /// public IActionResult Index() { if (function.GetSession(_accessor.HttpContext, "IsLogin") != "1") { return Redirect("/Admin/Merchants/Login"); } ViewBag.SysUserName = function.GetCookie(_accessor.HttpContext, "SysUserName"); List RightList = bsdb.RightDic.OrderBy(m => m.Id).ToList(); ViewBag.RightList = RightList; ViewBag.SysRealName = function.GetCookie(_accessor.HttpContext, "SysRealName"); ViewBag.RightInfo = function.GetSession(_accessor.HttpContext, "RightInfo"); return View(); } /// /// 统计界面 /// /// public IActionResult Main() { int SysId = int.Parse(function.CheckInt(function.GetCookie(_accessor.HttpContext, "SysId"))); int productCount = db.Products.Count(m => m.MerchantId == SysId); int orderCount = db.Orders.Count(m => m.MerchantId == SysId); ViewBag.productCount = productCount.ToString(); ViewBag.orderCount = orderCount.ToString(); return View(); } #region 后台管理员登录 public IActionResult Login() { return View(); } /// /// 后台管理员登录 /// /// 用户名 /// 密码 /// [HttpPost] public string Login(string UserName, string Pwd, string CheckCode) { string result = ""; if (function.GetCookie(_accessor.HttpContext, "checkcode") != CheckCode) { result = "验证码错误!!"; } else { Pwd = function.MD532(Pwd); var user = db.Merchants.FirstOrDefault(m => m.UserName == UserName && m.LoginPwd == Pwd); if (user != null) { function.WriteCookie(_accessor.HttpContext, "SysUserName", user.UserName); function.WriteCookie(_accessor.HttpContext, "SysRealName", user.Name); function.WriteCookie(_accessor.HttpContext, "SysRealRole", "3"); BsModels.WebCMSEntities db = new BsModels.WebCMSEntities(); BsModels.SysAdminRole Role = db.SysAdminRole.FirstOrDefault(m => m.Id == 3) ?? new BsModels.SysAdminRole(); string Rights = Role.RightInfo; Rights = Rights.Replace(",3_2,", ","); function.WriteSession(_accessor.HttpContext, "RightInfo", Rights); string UserId = user.Id.ToString(); function.WriteCookie(_accessor.HttpContext, "SysId", UserId); function.WriteSession(_accessor.HttpContext, "IsLogin", "1"); db.Dispose(); result = "success"; } else { result = "用户名或密码错误"; } } return result; } #endregion #region 退出登录 /// /// 退出登录 /// public void Quit() { function.WriteCookie(_accessor.HttpContext, "SysUserName", "", -1); function.WriteCookie(_accessor.HttpContext, "SysRealName", "", -1); function.WriteCookie(_accessor.HttpContext, "SysId", "", -1); function.WriteCookie(_accessor.HttpContext, "Role", "", -1); function.WriteCookie(_accessor.HttpContext, "IsLogin", "", -1); _accessor.HttpContext.Response.Redirect("/Admin/Merchants/Login"); } #endregion #region 修改登录密码 /// /// 修改登录密码 /// /// public IActionResult LoginPassword() { return View(); } public string LoginPasswordPost(string OldPassword, string NewPassword, string NewPassword2) { if (string.IsNullOrEmpty(OldPassword)) { return "请输入旧密码"; } if (string.IsNullOrEmpty(NewPassword)) { return "请输入新密码"; } if (string.IsNullOrEmpty(NewPassword2)) { return "请确认密码"; } if (NewPassword != NewPassword2) { return "两次密码输入不一致"; } int SysId = int.Parse(function.CheckInt(function.GetCookie(_accessor.HttpContext, "SysId"))); Merchants sys = db.Merchants.FirstOrDefault(m => m.Id == SysId); if (sys != null) { if (function.MD5_32(OldPassword) != sys.LoginPwd) { return "旧密码不正确"; } sys.LoginPwd = function.MD5_32(NewPassword); db.SaveChanges(); return "success"; } return "修改失败"; } #endregion #region 个人资料 /// /// 修改登录密码 /// /// public IActionResult AdminInfo() { int SysId = int.Parse(function.CheckInt(function.GetCookie(_accessor.HttpContext, "SysId"))); Merchants data = db.Merchants.FirstOrDefault(m => m.Id == SysId) ?? new Merchants(); ViewBag.data = data; return View(); } public string AdminInfoPost(Merchants data) { int SysId = int.Parse(function.CheckInt(function.GetCookie(_accessor.HttpContext, "SysId"))); Merchants sys = db.Merchants.FirstOrDefault(m => m.Id == SysId); if (sys != null) { sys.Name = data.Name; sys.Phone = data.Phone; sys.Areas = data.Areas; sys.Address = data.Address; sys.BusinessLicense = data.BusinessLicense; sys.Logo = data.Logo; sys.Principal = data.Principal; db.SaveChanges(); return "success"; } return "修改失败"; } #endregion } }