123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- package final
- import (
- "strings"
- "zhiyuan/pkg/app"
- "zhiyuan/pkg/config"
- "zhiyuan/pkg/utils"
- adminServices "zhiyuan/services/admin"
- "zhiyuan/services/dept"
- "zhiyuan/services/final/admin"
- "zhiyuan/services/form"
- "zhiyuan/services/role"
- "github.com/gin-gonic/gin"
- )
- func Login(c *gin.Context) {
- var form form.WorkLogin
- if app.Bind(c, &form) != nil {
- return
- }
- token, err := admin.Login(form)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, map[string]string{
- "token": token,
- })
- }
- func Logout(c *gin.Context) {
- err := admin.Logout(c.GetInt("adminID"))
- if err != nil {
- app.ErrorMsg(c, err.Error(), nil)
- return
- }
- app.Success(c, nil)
- }
- func Info(c *gin.Context) {
- type SettingInfo struct {
- ImgHost string `json:"img_host"`
- }
- type AdminInfo struct {
- ID int `json:"id"`
- UserName string `json:"username"`
- Phone string `json:"phone"`
- Headimgurl string `json:"headimgurl"`
- Nickname string `json:"nickname"`
- RoleIds string `json:"role_ids"`
- RoleName string `json:"role_name"`
- DeptId int `json:"dept_id"`
- DeptName string `json:"dept_name"`
- Auths []string `json:"auths"`
- Setting SettingInfo `json:"setting"`
- }
- var adminInfo *AdminInfo
- _, err := adminServices.GetInfoByID(c.GetInt("adminID"), nil, &adminInfo)
- if err != nil {
- app.ErrorMsg(c, err.Error(), nil)
- return
- }
- roleListMap := make(map[int]string)
- if roleList, err := role.GetList(nil, []string{"id, name"}, app.Page{}, nil); err == nil {
- for _, v := range roleList {
- roleListMap[v.ID] = v.Name
- }
- }
- roleNames := ""
- roleSlice := strings.Split(adminInfo.RoleIds, ",")
- for _, vv := range roleSlice {
- roleNames += "," + roleListMap[utils.ToInt(vv)]
- }
- adminInfo.RoleName = strings.TrimLeft(roleNames, ",")
- deptInfo, _ := dept.GetInfoByID(adminInfo.DeptId)
- if deptInfo != nil {
- adminInfo.DeptName = deptInfo.Name
- }
- adminInfo.Auths, err = adminServices.GetAuth(adminInfo.ID)
- if err != nil {
- app.ErrorMsg(c, err.Error(), nil)
- return
- }
- adminInfo.Setting = SettingInfo{
- ImgHost: config.Cfg.App.ImgHost,
- }
- app.Success(c, adminInfo)
- }
- func UnBindWeixin(c *gin.Context) {
- if err := admin.UnBindWeixin(c.GetInt("adminID")); err != nil {
- app.ErrorMsg(c, err.Error(), nil)
- return
- }
- app.Success(c, nil)
- }
- func Password(c *gin.Context) {
- var form form.Password
- if app.Bind(c, &form) != nil {
- return
- }
- if err := admin.Password(c.GetInt("adminID"), form); err != nil {
- app.ErrorMsg(c, err.Error(), nil)
- return
- }
- app.Success(c, nil)
- }
|