package api

import (
	"net/http"

	commonDomain "github.com/AlchemyTelcoSolutions/utils/service/domain"
	"github.com/deepmap/oapi-codegen/pkg/runtime"
)

// Scan loads json data, and binds it to the receiver.
func (b *UpdateSaleOrderMultipartBody) Scan(r *http.Request) error {
	multipartReader, err := r.MultipartReader()
	if err != nil {
		return commonDomain.Wrap(err, "failed to get multipart reader")
	}

	if err = runtime.BindMultipart(b, *multipartReader); err != nil {
		return commonDomain.Wrap(err, "failed to bind multipart form")
	}
	return nil
}
