示例#1
0
        public async Task <IEnumerable <SourceItemBaseRp> > CreateAvailabilityItem(SourceItemAvailabilityPostRp model)
        {
            var createdBy = this._identityGateway.GetIdentity();
            var on        = this._datetimeGateway.GetCurrentDateTime();
            var source    = await this._dbContext.Sources.SingleAsync(c => c.Id == model.SourceId);

            var range = SourceEntity.Factory.CreateItemsFromRange(source,
                                                                  model.Start,
                                                                  model.End,
                                                                  model.Good,
                                                                  model.Total,
                                                                  model.Measure,
                                                                  on,
                                                                  createdBy,
                                                                  SourceGroupEnum.Availability);

            foreach (var item in range)
            {
                this._dbContext.SourcesItems.Add(item);
            }

            await this._dbContext.SaveChangesAsync();

            return(this._mapper.Map <IEnumerable <SourceItemBaseRp> >(range));
        }
        public async Task <IActionResult> PostAvailability([FromBody] SourceItemAvailabilityPostRp model)
        {
            var result = await this._sourceItemComponent.CreateAvailabilityItem(model);

            return(this.Ok(result));
        }