github.com/mundipagg/boleto-api@v0.0.0-20230620145841-3f9ec742599f/bradescoNetEmpresa/validations.go (about)

     1  package bradescoNetEmpresa
     2  
     3  import (
     4  	"github.com/mundipagg/boleto-api/models"
     5  	"github.com/mundipagg/boleto-api/validations"
     6  )
     7  
     8  func bradescoNetEmpresaValidateAgency(b interface{}) error {
     9  	switch t := b.(type) {
    10  	case *models.BoletoRequest:
    11  		err := t.Agreement.IsAgencyValid()
    12  		if err != nil {
    13  			return models.NewErrorResponse("MP400", err.Error())
    14  		}
    15  		return nil
    16  	default:
    17  		return validations.InvalidType(t)
    18  	}
    19  }
    20  
    21  func bradescoNetEmpresaValidateAccount(b interface{}) error {
    22  	switch t := b.(type) {
    23  	case *models.BoletoRequest:
    24  		err := t.Agreement.IsAccountValid(7)
    25  		if err != nil {
    26  			return models.NewErrorResponse("MP400", err.Error())
    27  		}
    28  		return nil
    29  	default:
    30  		return validations.InvalidType(t)
    31  	}
    32  }
    33  
    34  func bradescoNetEmpresaValidateWallet(b interface{}) error {
    35  	switch t := b.(type) {
    36  	case *models.BoletoRequest:
    37  		if t.Agreement.Wallet != 4 && t.Agreement.Wallet != 9 && t.Agreement.Wallet != 19 {
    38  			return models.NewErrorResponse("MP400", "a carteira deve ser 4, 9 ou 19 para o bradescoNetEmpresa")
    39  		}
    40  		return nil
    41  	default:
    42  		return validations.InvalidType(t)
    43  	}
    44  }
    45  
    46  func bradescoNetEmpresaBoletoTypeValidate(b interface{}) error {
    47  	bt := bradescoNetEmpresaBoletoTypes()
    48  
    49  	switch t := b.(type) {
    50  
    51  	case *models.BoletoRequest:
    52  		if len(t.Title.BoletoType) > 0 && bt[t.Title.BoletoType] == "" {
    53  			return models.NewErrorResponse("MP400", "espécie de boleto informada não existente")
    54  		}
    55  		return nil
    56  	default:
    57  		return validations.InvalidType(t)
    58  	}
    59  }