Example #1
0
        // PUT api/<controller>/5
        /// <summary>
        /// Modifica un UnitConfiguration
        /// </summary>
        /// <param name="UnitConfiguration">UnitConfiguration a modificar</param>
        /// <returns></returns>
        public IHttpActionResult Put(int id, UnitConfigurationRequest UnitConfiguration)
        {
            var originalUnitConfiguration = UnitConfigurationService.GetById(id);

            var ret = UnitConfigurationService.UpdateUnitConfiguration(originalUnitConfiguration, UnitConfiguration);

            return(Ok());
        }
Example #2
0
        public IHttpActionResult Post(UnitConfigurationRequest UnitConfiguration)
        {
            var result = UnitConfigurationService.CreateUnitConfiguration(UnitConfiguration);

            return(Created <Entidad>("", new Entidad {
                Id = result.Id
            }));
        }
Example #3
0
        public UnitConfiguration CreateUnitConfiguration(UnitConfigurationRequest UnitConfiguration)
        {
            var entityToInsert = new UnitConfiguration()
            {
            };

            MergeUnitConfiguration(entityToInsert, UnitConfiguration);
            UnitConfigurationRepository.Insert(entityToInsert);
            return(entityToInsert);
        }
        public ActionResult CreateUpdateUnitConfiguration(UnitConfigurationViewModel configurationModel)
        {
            var configurationTypes = this.UnitConfigurationTypeService.GetAll();
            var configurations     = this.UnitConfigurationService.GetByUnitId(configurationModel.UnitId, DateTime.Now.AddYears(-1), DateTime.Now);
            var configDictionary   = new Dictionary <int, UnitConfiguration>();

            foreach (var conft in configurationTypes)
            {
                var lastConfig = configurations.Where(x => x.Type.Id == conft.Id)
                                 .OrderByDescending(x => x.ConfigurationDate).FirstOrDefault();
                if (lastConfig != null)
                {
                    configDictionary.Add(conft.Id, lastConfig);
                }
            }

            foreach (var configuration in configurationModel.UnitConfigurations)
            {
                var actualConfig = configDictionary.ContainsKey(configuration.UnitConfigurationTypeId) ?
                                   configDictionary[configuration.UnitConfigurationTypeId] : null;

                if (configuration.Value != 0 && (actualConfig == null || actualConfig.Value != configuration.Value))
                {
                    var confRequest = new UnitConfigurationRequest()
                    {
                        UnitConfigurationTypeId = configuration.UnitConfigurationTypeId,
                        UnitId = configurationModel.UnitId,
                        Value  = configuration.Value,
                    };

                    this.UnitConfigurationService.CreateUnitConfiguration(confRequest);
                }
            }

            return(View("CreateUpdateUnitConfigurationSuccess", configurationModel.UnitId));
        }
Example #5
0
 public bool CreateUnitConfiguration(UnitConfigurationRequest UnitConfiguration)
 {
     return(IntegrationService.RestCallNoReturn(ConfigurationManager.AppSettings["ApiCoreUrl"], ApiCore.CreateUnitConfiguration, RestMethod.Post, null, UnitConfiguration));
 }
Example #6
0
 private void MergeUnitConfiguration(UnitConfiguration originalUnitConfiguration, UnitConfigurationRequest UnitConfiguration)
 {
     originalUnitConfiguration.Unit              = this.UnitRepository.GetById(UnitConfiguration.UnitId);
     originalUnitConfiguration.Type              = this.UnitConfigurationTypeRepository.GetById(UnitConfiguration.UnitConfigurationTypeId);
     originalUnitConfiguration.Value             = UnitConfiguration.Value;
     originalUnitConfiguration.ConfigurationDate = DateTime.Now;
 }
Example #7
0
 public UnitConfiguration UpdateUnitConfiguration(UnitConfiguration originalUnitConfiguration, UnitConfigurationRequest UnitConfiguration)
 {
     this.MergeUnitConfiguration(originalUnitConfiguration, UnitConfiguration);
     UnitConfigurationRepository.Update(originalUnitConfiguration);
     return(originalUnitConfiguration);
 }
Example #8
0
        public ActionResult ProcessConfigurationsCsv()
        {
            if (Request.Files.Count > 0)
            {
                var file = Request.Files[0];

                if (file != null && file.ContentLength > 0)
                {
                    var unitConfigurationList  = new List <UnitConfigurationRequest>();
                    var consortiums            = this.ConsortiumService.GetAll();
                    var unitConfigurationTypes = this.UnitConfigurationTypeService.GetAll();

                    var gastosATypeId      = unitConfigurationTypes.Where(x => x.Description == "gasto tipo A").FirstOrDefault().Id;
                    var gastosBTypeId      = unitConfigurationTypes.Where(x => x.Description == "gasto tipo B").FirstOrDefault().Id;
                    var gastosCTypeId      = unitConfigurationTypes.Where(x => x.Description == "gasto tipo C").FirstOrDefault().Id;
                    var gastosDTypeId      = unitConfigurationTypes.Where(x => x.Description == "gasto tipo D").FirstOrDefault().Id;
                    var gastosExtraTypeId  = unitConfigurationTypes.Where(x => x.Description == "expensas extraordinarias").FirstOrDefault().Id;
                    var gastosAysaTypeId   = unitConfigurationTypes.Where(x => x.Description == "AYSA").FirstOrDefault().Id;
                    var gastosEdesurTypeId = unitConfigurationTypes.Where(x => x.Description == "EDESUR").FirstOrDefault().Id;
                    var provider           = new CultureInfo("en-ES");

                    StreamReader csvreader = new StreamReader(file.InputStream);

                    var path = AppDomain.CurrentDomain.BaseDirectory + "/" + file.FileName;

                    while (!csvreader.EndOfStream)
                    {
                        var line   = csvreader.ReadLine();
                        var values = line.Split(';').ToList();


                        var consortiumCuit = values[0];
                        var consortium     = consortiums.Where(x => x.CUIT == consortiumCuit).FirstOrDefault();

                        if (consortium != null)
                        {
                            var ufNumber         = int.Parse(values[1]);
                            var unit             = consortium.Ownership.FunctionalUnits.Where(x => x.Number == ufNumber).FirstOrDefault();
                            var numberFormatInfo = new NumberFormatInfo {
                                NumberDecimalSeparator = "."
                            };
                            if (unit != null)
                            {
                                //decimal gastosAValue = 0;
                                //decimal gastosBValue = 0;
                                //decimal gastosCValue = 0;
                                //decimal gastosDValue = 0;
                                //decimal gastosExtraValue = 0;
                                //decimal gastosAYSAValue = 0;
                                //decimal gastosEDESURValue = 0;

                                //var addA = decimal.TryParse(values[3],out gastosAValue);
                                //gastosAValue = gastosAValue * 100;

                                //var addB = decimal.TryParse(values[4], out gastosBValue);
                                //gastosBValue = gastosBValue * 100;

                                //var addC = decimal.TryParse(values[5], out gastosCValue);
                                //gastosCValue = gastosCValue * 100;

                                //var addD = decimal.TryParse(values[6], out gastosDValue);
                                //gastosDValue = gastosDValue * 100;

                                //var addExtra = decimal.TryParse(values[7], out gastosExtraValue);
                                //gastosExtraValue = gastosExtraValue * 100;

                                //var addAYSA = decimal.TryParse(values[8], out gastosAYSAValue);
                                //gastosAYSAValue = gastosAYSAValue * 100;

                                //var addEDESUR = decimal.TryParse(values[9], out gastosEDESURValue);
                                //gastosEDESURValue = gastosEDESURValue * 100;

                                var gastosAValue      = decimal.Parse(values[3], numberFormatInfo) * 100;
                                var gastosBValue      = decimal.Parse(values[4], numberFormatInfo) * 100;
                                var gastosCValue      = decimal.Parse(values[5], numberFormatInfo) * 100;
                                var gastosDValue      = decimal.Parse(values[6], numberFormatInfo) * 100;
                                var gastosExtraValue  = decimal.Parse(values[7], numberFormatInfo) * 100;
                                var gastosAYSAValue   = decimal.Parse(values[8], numberFormatInfo) * 100;
                                var gastosEDESURValue = decimal.Parse(values[9], numberFormatInfo) * 100;


                                var configurationGastoA = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosAValue,
                                    UnitConfigurationTypeId = gastosATypeId
                                };

                                var configurationGastoB = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosBValue,
                                    UnitConfigurationTypeId = gastosBTypeId
                                };

                                var configurationGastoC = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosCValue,
                                    UnitConfigurationTypeId = gastosCTypeId
                                };

                                var configurationGastoD = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosDValue,
                                    UnitConfigurationTypeId = gastosDTypeId
                                };

                                var configurationGastoExtra = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosExtraValue,
                                    UnitConfigurationTypeId = gastosExtraTypeId
                                };

                                var configurationGastoAysa = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosAYSAValue,
                                    UnitConfigurationTypeId = gastosAysaTypeId
                                };

                                var configurationGastoEdesur = new UnitConfigurationRequest()
                                {
                                    UnitId = unit.Id,
                                    Value  = gastosEDESURValue,
                                    UnitConfigurationTypeId = gastosEdesurTypeId
                                };

                                //if(addA) unitConfigurationList.Add(configurationGastoA);
                                //if (addB) unitConfigurationList.Add(configurationGastoB);
                                //if (addC) unitConfigurationList.Add(configurationGastoC);
                                //if (addD) unitConfigurationList.Add(configurationGastoD);
                                //if (addExtra) unitConfigurationList.Add(configurationGastoExtra);
                                //if (addAYSA) unitConfigurationList.Add(configurationGastoAysa);
                                //if (addEDESUR) unitConfigurationList.Add(configurationGastoEdesur);

                                unitConfigurationList.Add(configurationGastoA);
                                unitConfigurationList.Add(configurationGastoB);
                                unitConfigurationList.Add(configurationGastoC);
                                unitConfigurationList.Add(configurationGastoD);
                                unitConfigurationList.Add(configurationGastoExtra);
                                unitConfigurationList.Add(configurationGastoAysa);
                                unitConfigurationList.Add(configurationGastoEdesur);
                            }
                        }
                    }

                    unitConfigurationList.ForEach(x => this.UnitConfigurationService.CreateUnitConfiguration(x));
                }
            }

            return(Redirect(string.Format("/Consortium/Index")));
        }