login_service.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /*
  2. * @description:登陆相关数据操作
  3. * @Author: CP
  4. * @Date: 2020-09-02 09:56:28
  5. * @FilePath: \construction_management\services\login_service.go
  6. */
  7. package services
  8. import (
  9. "log"
  10. "unicode"
  11. "github.com/kataras/iris/v12"
  12. "go.mod/dao"
  13. "go.mod/datasource"
  14. "go.mod/web/viewmodels"
  15. )
  16. //定义项目用户Service接口
  17. type LoginService interface {
  18. ValidLogin(ctx iris.Context) error
  19. }
  20. //返回service操作类
  21. type loginService struct {
  22. dao *dao.ProjectAccountDao
  23. }
  24. //创建项目用户service
  25. func NewLoginService() LoginService {
  26. return &loginService{
  27. dao: dao.NewProjectAccountDao(datasource.InstanceDbMaster()),
  28. }
  29. }
  30. func Ucfirst(str string) string {
  31. for i, v := range str {
  32. return string(unicode.ToUpper(v)) + str[i+1:]
  33. }
  34. return ""
  35. }
  36. // 登陆验证
  37. func (s *loginService) ValidLogin(ctx iris.Context) error {
  38. loginVaild := viewmodels.Login{}
  39. err := ctx.ReadForm(&loginVaild)
  40. if err != nil {
  41. log.Println("ReadForm转换异常, error=", err)
  42. return err
  43. }
  44. err = loginVaild.Validate()
  45. if err != nil {
  46. log.Println("登录验证, error=", err)
  47. return err
  48. }
  49. return nil
  50. }
  51. //fmt.Println(ctx.FormValues())
  52. // list := ctx.FormValues()
  53. // loginVaild := viewmodels.Login{}
  54. // v := reflect.ValueOf(&loginVaild).Elem()
  55. // for path, values := range list {
  56. // //fmt.Println(path)
  57. // //fmt.Println(values)
  58. // if path != "csrf.Token" {
  59. // v.FieldByName(Ucfirst(path)).Set(reflect.ValueOf(values[0]))
  60. // }
  61. // }
  62. //fmt.Println(loginVaild)
  63. // loginVaild := viewmodels.Login{
  64. // Code: ctx.FormValue("code"),
  65. // Account: ctx.FormValue("account"),
  66. // Password: ctx.FormValue("password"),
  67. // }