user_controller.go 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. package controllers
  2. import (
  3. "github.com/kataras/iris/v12/mvc"
  4. "xps/service/system"
  5. "xps/viewmodels"
  6. )
  7. type UserController struct {
  8. Base
  9. Service system.UserService
  10. }
  11. func (c *UserController) BeforeActivation(b mvc.BeforeActivation) {
  12. b.Handle("GET", "/page", "GetPage" )
  13. b.Handle("GET", "/{groupId:int64}/{accountId:int64}", "GetById" )
  14. b.Handle("POST", "/add", "Create" )
  15. b.Handle("PUT", "/update", "Update" )
  16. b.Handle("PUT", "/resetPassword/{userId:int64}", "ResetPassword" )
  17. b.Handle("PUT", "/updateStatus/{userId:int64}/{status:int64}", "UpdateStatus" )
  18. b.Handle("DELETE", "/{accountId:int64}", "DeleteById" )
  19. b.Handle("GET", "/IsUserNameExist/{userName: string}", "IsUserNameExist" )
  20. b.Handle("GET", "/IsUserPhoneExist/{userPhone: string}", "IsUserPhoneExist")
  21. b.Handle("GET", "/IsStaffNoExist/{staffNo: string}", "IsStaffNoExist" )
  22. b.Handle("GET", "/IsEmailExist/{email: string}", "IsEmailExist" )
  23. b.Handle("GET", "/select", "SelectUser" )
  24. }
  25. func (c *UserController) GetPage() *JsonResult {
  26. params := c.buildParams()
  27. data, err := c.Service.GetPage(params)
  28. if err != nil {
  29. return ResultErr(err.Error(), nil)
  30. } else {
  31. return ResultOk("获取成功", data)
  32. }
  33. }
  34. func (c *UserController) GetById(groupId, accountId int64) *JsonResult {
  35. ocId := c.GetCurOcId()
  36. data, err := c.Service.GetById(ocId, groupId, accountId)
  37. if err != nil {
  38. return ResultErr(err.Error(), nil)
  39. } else {
  40. return ResultOk("获取成功", data)
  41. }
  42. }
  43. func (c *UserController) Create() *JsonResult {
  44. ocId := c.GetCurOcId()
  45. ocTypeId := c.GetOcTypeId()
  46. user := &viewmodels.UserInfo{}
  47. err := c.Ctx.ReadJSON(user)
  48. if err != nil {
  49. return ResultErr("读取数据失败", nil)
  50. }
  51. user.OcId = ocId
  52. err = c.Service.Create(ocTypeId, user)
  53. if err != nil {
  54. return ResultErr(err.Error(), nil)
  55. } else {
  56. return ResultOk("新增成功", nil)
  57. }
  58. }
  59. func (c *UserController) Update() *JsonResult {
  60. user := &viewmodels.UserInfo{}
  61. err := c.Ctx.ReadJSON(user)
  62. if err != nil {
  63. return ResultErr("读取数据失败", nil)
  64. }
  65. err = c.Service.Update(user)
  66. if err != nil {
  67. return ResultErr(err.Error(), nil)
  68. } else {
  69. return ResultOk("更新成功", nil)
  70. }
  71. }
  72. func (c *UserController) ResetPassword(userId int64)*JsonResult{
  73. ocId := c.GetCurOcId()
  74. err := c.Service.ResetPassword(ocId, userId)
  75. if err != nil {
  76. return ResultErr(err.Error(), nil)
  77. } else {
  78. return ResultOk("密码重置成功", nil)
  79. }
  80. }
  81. func (c *UserController) UpdateStatus(userId, status int64) *JsonResult{
  82. ocId := c.GetCurOcId()
  83. err := c.Service.ChangeStatus(ocId, userId, status)
  84. if err != nil {
  85. return ResultErr(err.Error(), nil)
  86. } else {
  87. return ResultOk("状态变更成功", nil)
  88. }
  89. }
  90. func (c *UserController) DeleteById(accountId int64) *JsonResult {
  91. ocId := c.GetCurOcId()
  92. userId := c.GetCurUserId()
  93. m := make(map[string]interface{})
  94. m["ocId"] = ocId
  95. m["accountId"] = accountId
  96. m["deletedBy"] = userId
  97. err := c.Service.Delete(m)
  98. if err != nil {
  99. return ResultErr(err.Error(), nil)
  100. } else {
  101. return ResultOk("删除成功", nil)
  102. }
  103. }
  104. func (c *UserController) IsUserNameExist(userName string) *JsonResult {
  105. ocId := c.GetCurOcId()
  106. bExist, err := c.Service.IsUserNameExist(ocId, userName)
  107. if err != nil {
  108. return ResultErr(err.Error(), nil)
  109. }
  110. if bExist {
  111. return ResultErr("帐号名称已存在", nil)
  112. } else {
  113. return ResultOk("帐号名称不重复", nil)
  114. }
  115. }
  116. func (c *UserController) IsUserPhoneExist(userPhone string) *JsonResult {
  117. ocId := c.GetCurOcId()
  118. bExist, err := c.Service.IsUserPhoneExist(ocId, userPhone)
  119. if err != nil {
  120. return ResultErr(err.Error(), nil)
  121. }
  122. if bExist {
  123. return ResultErr("电话号码已注册", nil)
  124. } else {
  125. return ResultOk("电话号码无重复", nil)
  126. }
  127. }
  128. func (c *UserController) IsStaffNoExist(staffNo string) *JsonResult {
  129. ocId := c.GetCurOcId()
  130. bExist, err := c.Service.IsStaffNoExist(ocId, staffNo)
  131. if err != nil {
  132. return ResultErr(err.Error(), nil)
  133. }
  134. if bExist {
  135. return ResultErr("工号已存在", nil)
  136. } else {
  137. return ResultOk("工号无重复", nil)
  138. }
  139. }
  140. func (c *UserController) IsEmailExist(email string) *JsonResult {
  141. ocId := c.GetCurOcId()
  142. bExist, err := c.Service.IsEmailExist(ocId, email)
  143. if err != nil {
  144. return ResultErr(err.Error(), nil)
  145. }
  146. if bExist {
  147. return ResultErr("email已存在", nil)
  148. } else {
  149. return ResultOk("email无重复", nil)
  150. }
  151. }
  152. func (c *UserController) SelectUser() *JsonResult {
  153. ocId := c.GetCurOcId()
  154. data, err := c.Service.SelectUser(ocId)
  155. if err != nil {
  156. return ResultErr(err.Error(), nil)
  157. } else {
  158. return ResultOk("获取成功", data)
  159. }
  160. }