UserServicesController.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Net;
  5. using System.Net.Http;
  6. using EMIS.CommonLogic.SystemServices;
  7. using System.Web.Mvc;
  8. using EMIS.Web.Controls;
  9. using EMIS.ViewModel;
  10. namespace EMIS.Web.ApiControllers.SystemManage
  11. {
  12. public class UserServicesController : Controller
  13. {
  14. public IUserServices UserServices { get; set; }
  15. public IMailVerifyServices MailVerifyServices { get; set; }
  16. public ActionResult Login(string loginID, string password)
  17. {
  18. return Json(UserServices.Login(loginID, password));
  19. }
  20. public ActionResult LoginP(string loginID, string password)
  21. {
  22. return new JSONPResult { Data = UserServices.Login(loginID, password) };
  23. }
  24. [HttpPost]
  25. public ActionResult ForgotPassword(string LoginID)
  26. {
  27. var result = new ReturnMessage { IsSuccess = true, Message = "邮件发送成功,请查收。" };
  28. //string loginID = Request.Form["LoginID"];
  29. string failUrl = Url.Content("~/Account/ForgotPassword?LoginID=" + LoginID);
  30. string successUrl = Url.Content("~/Account/Login");
  31. var user = UserServices.GetUserByLoginID(LoginID);
  32. if (user == null)
  33. {
  34. result.IsSuccess = false;
  35. result.Message = "用户名输入错误。";
  36. return Json(result);
  37. }
  38. var url = HttpContext.Request.Url.Scheme + "://" + HttpContext.Request.Url.Host + ":" + HttpContext.Request.Url.Port + Url.Content("~/").TrimEnd('/');
  39. try
  40. {
  41. var email = UserServices.GetUserEmail(user.UserID);
  42. if (email == null)
  43. {
  44. result.IsSuccess = false;
  45. result.Message = "用户并没有注册电子邮箱信息。";
  46. return Json(result);
  47. }
  48. MailVerifyServices.SendVerifyMail(url, user.UserID, email);
  49. return Json(result);
  50. }
  51. catch (Exception ex)
  52. {
  53. result.IsSuccess = false;
  54. result.Message = ex.Message;
  55. return Json(result);
  56. }
  57. }
  58. }
  59. }