set_business_info_logic.go 980 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package whatsapp
  2. import (
  3. "context"
  4. "wechat-api/hook/aliyun"
  5. "wechat-api/internal/svc"
  6. "wechat-api/internal/types"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. type SetBusinessInfoLogic struct {
  10. logx.Logger
  11. ctx context.Context
  12. svcCtx *svc.ServiceContext
  13. }
  14. func NewSetBusinessInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *SetBusinessInfoLogic {
  15. return &SetBusinessInfoLogic{
  16. Logger: logx.WithContext(ctx),
  17. ctx: ctx,
  18. svcCtx: svcCtx}
  19. }
  20. func (l *SetBusinessInfoLogic) SetBusinessInfo(req *types.SetBusinessReq) (*types.BaseMsgResp, error) {
  21. resp := types.BaseMsgResp{}
  22. websites := make([]*string, 0)
  23. for _, v := range req.Websites {
  24. if v == "" {
  25. continue
  26. }
  27. websites = append(websites, &v)
  28. }
  29. _, err := aliyun.SetCamsBusiness(*req.Phone, *req.WaId, req.Address, req.Description, req.Vertical, req.Email, req.ProfilePictureUrl, req.About, websites)
  30. if err != nil {
  31. resp.Msg = err.Error()
  32. resp.Code = 1
  33. }
  34. return &resp, nil
  35. }