Ejemplo n.º 1
0
        public async Task CreateAsync(string kpiName, short year, int idRealm, int idRegion, int idUnitOfMeasure, string kpiDesc, string calculationFormula, decimal jan, decimal feb, decimal mar, decimal apr, decimal may, decimal jun, decimal jul, decimal aug, decimal sep, decimal oct, decimal nov, decimal dec, int idUserCreate)
        {
            var userCreate = await _repository.GetUserForKpiUpdateAsync(idUserCreate);

            var realm = await _repository.GetRealmForUpdateAsync(idRealm);

            var region = await _repository.GetRegionForUpdateAsync(idRegion);

            var unitOfMeasure = await _repository.GetUnitOfMeasureForUpdateAsync(idUnitOfMeasure);

            var kpi = Kpi.Create(year, realm, region);

            var targets = new MonthlyValuesValueObject(jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec);

            var kpiRev = KpiRev.Create(kpi, kpiName, kpiDesc, calculationFormula, unitOfMeasure, targets, userCreate);

            kpi.Update(kpiRev);

            await _repository.SaveAsync(kpi);
        }