user_controller.go 1.2 KB
package controllers

import (
	"github.com/linmadan/egglib-go/core/application"
	"github.com/linmadan/egglib-go/web/beego"
	"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/user"
	"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/user/query"
	"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain"
	"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/port/beego/middlewares"
)

type UserController struct {
	beego.BaseController
}

// ListUsers 搜索用户
func (controller *UserController) ListUsers() {
	listUserQuery := &query.ListUserQuery{}
	_ = controller.Unmarshal(listUserQuery)
	userAuth := controller.Ctx.Input.GetData(domain.UserAuth{}).(*domain.UserAuth)
	listUserQuery.CompanyId = userAuth.CompanyId
	resp, err := (&user.UserService{}).ListUsers(listUserQuery)
	controller.Response(resp, err)
}

func (controller *UserController) ListByDepartment() {
	in := &query.ListByDepartmentQuery{}
	if err := controller.Unmarshal(in); err != nil {
		controller.Response(nil, application.ThrowError(application.ARG_ERROR, err.Error()))
	} else {
		ua := middlewares.GetUser(controller.Ctx)
		in.CompanyId = ua.CompanyId
		controller.Response((&user.UserService{}).ListByDepartment(in))
	}
}