using AyCode.Core.Interfaces;
using FruitBank.Common.Entities;

namespace FruitBank.Common.Models
{
    public class MeasuringModel : IAcSerializableToJson
    {
        public string Name { get; set; }

        public Shipping Shipping { get; set; }
        public List<Partner> Partners { get; set; }
        public List<ShippingItem> ShippingItems { get; set; }
        public List<ShippingDocument> ShippingDocuments { get; set; }


        public MeasuringModel()
        {
        }

        public MeasuringModel(string name) : this()
        {
            Name = name;
        }

        public MeasuringModel(Shipping shipping, List<Partner> partners, List<ShippingItem> shippingItems, List<ShippingDocument> shippingDocuments) : this()
        {
            Shipping = shipping;
            Partners = partners ?? [];
            ShippingItems = shippingItems ?? [];
            ShippingDocuments = shippingDocuments ?? [];
        }
    }
}
