niki/service/admin/admin/get_all_agent.go

32 lines
768 B
Go

package adminservice
import (
"context"
param "git.gocasts.ir/ebhomengo/niki/param/admin/admin"
richerror "git.gocasts.ir/ebhomengo/niki/pkg/rich_error"
)
func (s Service) GetAllAgent(ctx context.Context) (param.GetAllAgentResponse, error) {
const op = "adminservice.GetAllAgent"
agentsInfo := make([]param.Agent, 0)
agents, err := s.repo.GetAllAgent(ctx)
if err != nil {
return param.GetAllAgentResponse{}, richerror.New(op).WithErr(err).WithKind(richerror.KindUnexpected)
}
for _, agent := range agents {
agentsInfo = append(agentsInfo, param.Agent{
ID: agent.ID,
FirstName: agent.FirstName,
LastName: agent.LastName,
PhoneNumber: agent.PhoneNumber,
})
}
return param.GetAllAgentResponse{Agents: agentsInfo}, nil
}