99 systemReq "gin-vue-admin/model/system/request"
1010 systemRes "gin-vue-admin/model/system/response"
1111 "gin-vue-admin/utils"
12+ "strconv"
1213 "time"
1314
1415 "github.com/dgrijalva/jwt-go"
@@ -119,7 +120,13 @@ func (b *BaseApi) Register(c *gin.Context) {
119120 response .FailWithMessage (err .Error (), c )
120121 return
121122 }
122- user := & system.SysUser {Username : r .Username , NickName : r .NickName , Password : r .Password , HeaderImg : r .HeaderImg , AuthorityId : r .AuthorityId }
123+ var authorities []system.SysAuthority
124+ for _ , v := range r .AuthorityIds {
125+ authorities = append (authorities , system.SysAuthority {
126+ AuthorityId : v ,
127+ })
128+ }
129+ user := & system.SysUser {Username : r .Username , NickName : r .NickName , Password : r .Password , HeaderImg : r .HeaderImg , AuthorityId : r .AuthorityId , Authorities : authorities }
123130 err , userReturn := userService .Register (* user )
124131 if err != nil {
125132 global .GVA_LOG .Error ("注册失败!" , zap .Any ("err" , err ))
@@ -181,7 +188,7 @@ func (b *BaseApi) GetUserList(c *gin.Context) {
181188}
182189
183190// @Tags SysUser
184- // @Summary 设置用户权限
191+ // @Summary 更改用户权限
185192// @Security ApiKeyAuth
186193// @accept application/json
187194// @Produce application/json
@@ -195,7 +202,39 @@ func (b *BaseApi) SetUserAuthority(c *gin.Context) {
195202 response .FailWithMessage (UserVerifyErr .Error (), c )
196203 return
197204 }
198- if err := userService .SetUserAuthority (sua .UUID , sua .AuthorityId ); err != nil {
205+ userID := utils .GetUserID (c )
206+ uuid := utils .GetUserUuid (c )
207+ if err := userService .SetUserAuthority (userID , uuid , sua .AuthorityId ); err != nil {
208+ global .GVA_LOG .Error ("修改失败!" , zap .Any ("err" , err ))
209+ response .FailWithMessage (err .Error (), c )
210+ } else {
211+ claims := utils .GetUserInfo (c )
212+ j := & middleware.JWT {SigningKey : []byte (global .GVA_CONFIG .JWT .SigningKey )} // 唯一签名
213+ claims .AuthorityId = sua .AuthorityId
214+ if token , err := j .CreateToken (* claims ); err != nil {
215+ global .GVA_LOG .Error ("修改失败!" , zap .Any ("err" , err ))
216+ response .FailWithMessage (err .Error (), c )
217+ } else {
218+ c .Header ("new-token" , token )
219+ c .Header ("new-expires-at" , strconv .FormatInt (claims .ExpiresAt , 10 ))
220+ response .OkWithMessage ("修改成功" , c )
221+ }
222+
223+ }
224+ }
225+
226+ // @Tags SysUser
227+ // @Summary 设置用户权限
228+ // @Security ApiKeyAuth
229+ // @accept application/json
230+ // @Produce application/json
231+ // @Param data body systemReq.SetUserAuthorities true "用户UUID, 角色ID"
232+ // @Success 200 {string} string "{"success":true,"data":{},"msg":"修改成功"}"
233+ // @Router /user/setUserAuthorities [post]
234+ func (b * BaseApi ) SetUserAuthorities (c * gin.Context ) {
235+ var sua systemReq.SetUserAuthorities
236+ _ = c .ShouldBindJSON (& sua )
237+ if err := userService .SetUserAuthorities (sua .ID , sua .AuthorityIds ); err != nil {
199238 global .GVA_LOG .Error ("修改失败!" , zap .Any ("err" , err ))
200239 response .FailWithMessage ("修改失败" , c )
201240 } else {
@@ -253,3 +292,20 @@ func (b *BaseApi) SetUserInfo(c *gin.Context) {
253292 response .OkWithDetailed (gin.H {"userInfo" : ReqUser }, "设置成功" , c )
254293 }
255294}
295+
296+ // @Tags SysUser
297+ // @Summary 获取用户信息
298+ // @Security ApiKeyAuth
299+ // @accept application/json
300+ // @Produce application/json
301+ // @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
302+ // @Router /user/getUserInfo [get]
303+ func (b * BaseApi ) GetUserInfo (c * gin.Context ) {
304+ uuid := utils .GetUserUuid (c )
305+ if err , ReqUser := userService .GetUserInfo (uuid ); err != nil {
306+ global .GVA_LOG .Error ("获取失败!" , zap .Any ("err" , err ))
307+ response .FailWithMessage ("获取失败" , c )
308+ } else {
309+ response .OkWithDetailed (gin.H {"userInfo" : ReqUser }, "获取成功" , c )
310+ }
311+ }
0 commit comments