package adminkindboxreqvalidator // import ( // "errors" // // param "git.gocasts.ir/ebhomengo/niki/param/admin/kind_box_req" // errmsg "git.gocasts.ir/ebhomengo/niki/pkg/err_msg" // richerror "git.gocasts.ir/ebhomengo/niki/pkg/rich_error" // validation "github.com/go-ozzo/ozzo-validation/v4" //) // // func (v Validator) ValidateUpdateRequest(req param.KindBoxReqUpdateRequest) (map[string]string, error) { // const op = "adminkindboxreqvalidator.ValidateUpdateRequest" // // if err := validation.ValidateStruct(&req, // validation.Field(&req.CountRequested, validation.Min(MinKindBoxReq), validation.Max(MaxKindBoxReq)), // // validation.Field(&req.BenefactorID, // validation.Required, // validation.By(v.doesBenefactorExist)), // // validation.Field(&req.KindBoxReqID, // validation.Required, // validation.By(v.doesKindBoxRequestExist), // validation.By(v.hasPendingStatus), // validation.By(v.doesKindBoxBelongToBenefactor(req.BenefactorID))), // // validation.Field(&req.TypeID, // validation.By(v.doesTypeExist)), // ); err != nil { // fieldErrors := make(map[string]string) // // var errV validation.Errors // if errors.As(err, &errV) { // for key, value := range errV { // if value != nil { // fieldErrors[key] = value.Error() // } // } // } // // return fieldErrors, richerror.New(op). // WithMessage(errmsg.ErrorMsgInvalidInput). // WithKind(richerror.KindInvalid). // WithMeta(map[string]interface{}{"req": req}). // WithErr(err) // } // // return map[string]string{}, nil //}