Пример #1
0
        private void Apply(ArticoloCreated @event)
        {
            this.Id = @event.AggregateId;

            this._articoloDescrizione = @event.ArticoloDescrizione;
            this._unitaMisura         = @event.UnitaMisura;
            this._scortaMinima        = @event.ScortaMinima;
        }
Пример #2
0
        public ArticoloCreated(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                               ScortaMinima scortaMinima, AccountInfo who, When when) : base(who, when)
        {
            this.SetAggregateIdFromDomainId(articoloId);

            this.ArticoloId          = articoloId;
            this.ArticoloDescrizione = articoloDescrizione;
            this.UnitaMisura         = unitaMisura;
            this.ScortaMinima        = scortaMinima;
        }
Пример #3
0
 public static void ChkUnitaMisura(UnitaMisura unitaMisura) =>
 unitaMisura.ChkIsValid(DomainExceptions.UnitaMisuraNullException);
Пример #4
0
        internal static Articolo CreateArticolo(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                                                ScortaMinima scortaMinima, AccountInfo who, When when)
        {
            DomainRules.ChkArticoloId(articoloId);
            DomainRules.ChkArticoloDescrizione(articoloDescrizione);
            DomainRules.ChkUnitaMisura(unitaMisura);

            return(new Articolo(articoloId, articoloDescrizione, unitaMisura, scortaMinima, who, when));
        }
Пример #5
0
        public async Task CreateArticoloAsync(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                                              ScortaMinima scortaMinima)
        {
            try
            {
                var filter = Builders <NoSqlArticolo> .Filter.Eq("_id", articoloId.GetValue());

                var documentsResult = await this._documentUnitOfWork.NoSqlArticoloRepository.FindAsync(filter);

                if (documentsResult.Any())
                {
                    return;
                }

                var noSqlDocument =
                    NoSqlArticolo.CreateNoSqlArticolo(articoloId, articoloDescrizione, unitaMisura, scortaMinima);
                await this._documentUnitOfWork.NoSqlArticoloRepository.InsertOneAsync(noSqlDocument);
            }
            catch (Exception ex)
            {
                this._logger.LogError($"[ArticoloFactory.CreateArticoloAsync] - {CommonServices.GetErrorMessage(ex)}");
                throw new Exception($"[ArticoloFactory.CreateArticoloAsync] - {CommonServices.GetErrorMessage(ex)}");
            }
        }
Пример #6
0
 internal Articolo(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                   ScortaMinima scortaMinima, AccountInfo who, When when)
 {
     this.RaiseEvent(new ArticoloCreated(articoloId, articoloDescrizione, unitaMisura, scortaMinima, who, when));
 }
Пример #7
0
        private NoSqlArticolo(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                              ScortaMinima scortaMinima)
        {
            this.Id = articoloId.GetValue();

            this.ArticoloDescrizione = articoloDescrizione.GetValue();
            this.UnitaMisura         = unitaMisura.GetValue();
            this.ScortaMinima        = scortaMinima.GetValue();
        }
Пример #8
0
        public static NoSqlArticolo CreateNoSqlArticolo(ArticoloId articoloId, ArticoloDescrizione articoloDescrizione, UnitaMisura unitaMisura,
                                                        ScortaMinima scortaMinima)

        {
            return(new NoSqlArticolo(articoloId, articoloDescrizione, unitaMisura, scortaMinima));
        }