restgolanggowhatsapp-multi-devicewhatsapp-apiwhatsappwhatsapp-web-multi-devicewhatsapp-api-gorest-apigolang-whatsapp-apigolang-whatsappbot
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.6 KiB
59 lines
1.6 KiB
package controllers
|
|
|
|
import (
|
|
"github.com/aldinokemal/go-whatsapp-web-multidevice/services"
|
|
"github.com/aldinokemal/go-whatsapp-web-multidevice/structs"
|
|
"github.com/aldinokemal/go-whatsapp-web-multidevice/utils"
|
|
"github.com/aldinokemal/go-whatsapp-web-multidevice/validations"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
type UserController struct {
|
|
Service services.UserService
|
|
}
|
|
|
|
func NewUserController(service services.UserService) UserController {
|
|
return UserController{Service: service}
|
|
}
|
|
|
|
func (controller *UserController) Route(app *fiber.App) {
|
|
app.Get("/user/info", controller.UserInfo)
|
|
app.Get("/user/avatar", controller.UserAvatar)
|
|
}
|
|
|
|
func (controller *UserController) UserInfo(c *fiber.Ctx) error {
|
|
var request structs.UserInfoRequest
|
|
err := c.QueryParser(&request)
|
|
utils.PanicIfNeeded(err)
|
|
|
|
// add validation send message
|
|
validations.ValidateUserInfo(request)
|
|
|
|
request.PhoneNumber = request.PhoneNumber + "@s.whatsapp.net"
|
|
response, err := controller.Service.UserInfo(c, request)
|
|
utils.PanicIfNeeded(err)
|
|
|
|
return c.JSON(utils.ResponseData{
|
|
Code: 200,
|
|
Message: "Success",
|
|
Results: response,
|
|
})
|
|
}
|
|
func (controller *UserController) UserAvatar(c *fiber.Ctx) error {
|
|
var request structs.UserAvatarRequest
|
|
err := c.QueryParser(&request)
|
|
utils.PanicIfNeeded(err)
|
|
|
|
// add validation send message
|
|
validations.ValidateUserAvatar(request)
|
|
|
|
request.PhoneNumber = request.PhoneNumber + "@s.whatsapp.net"
|
|
response, err := controller.Service.UserAvatar(c, request)
|
|
utils.PanicIfNeeded(err)
|
|
|
|
return c.JSON(utils.ResponseData{
|
|
Code: 200,
|
|
Message: "Success",
|
|
Results: response,
|
|
})
|
|
}
|