示例#1
0
        public bool UpdatePagos(string consorcioId, UnidadesFuncionales item, string gastosExtraordinarios,
                                string totalGastosOrdinarios, int periodoNumerico, string periodoDetalle)
        {
            var pago = _context.Pagos.Where(x => x.UnidadesFuncionales.UF == item.UF && x.Periodo == periodoNumerico &&
                                            x.UnidadesFuncionales.Consorcios.ID == consorcioId).FirstOrDefault();

            if (pago == null)
            {
                return(false);
            }

            var Coeficiente           = item.Coeficiente.Value;
            var GastosExtraordinarios = Constantes.GetDecimalFromCurrency(gastosExtraordinarios);
            var ImporteExtraordinario = GastosExtraordinarios * Coeficiente / 100;
            var GastosOrdinarios      = Constantes.GetDecimalFromCurrency(totalGastosOrdinarios); //CONTROLAR !!!!
            var ImporteOrdinario      = GastosOrdinarios * Coeficiente / 100;
            var TotalVencimiento1     = GastosOrdinarios + GastosExtraordinarios;

            pago.ImportePago1          = TotalVencimiento1;
            pago.ImportePago2          = TotalVencimiento1 + 10;
            pago.ImporteExtraordinario = ImporteExtraordinario;
            pago.PeriodoDetalle        = periodoDetalle;

            _context.SaveChanges();

            return(true);
        }
示例#2
0
        public void AddPagos(string consorcioId, UnidadesFuncionales unidadFuncional, string gastosExtraordinarios, string totalGastosOrdinarios,
                             int periodoNumerico, List <GastosEvOrdModel> gastosEvOrd, List <GastosFijos> expensaDetalle, string periodoDetalle)
        {
            unidadesFuncionalesServ _unidadesFuncServ = new unidadesFuncionalesServ();
            var Coeficiente = unidadFuncional.Coeficiente.Value;

            //var GastosExtraordinarios = Constantes.GetDecimalFromCurrency(gastosExtraordinarios);
            //var ImporteExtraordinario = GastosExtraordinarios * Coeficiente / 100;
            //var GastosOrdinarios = Constantes.GetDecimalFromCurrency(totalGastosOrdinarios);  //CONTROLAR !!!!
            //var ImporteOrdinario = GastosOrdinarios * Coeficiente / 100;
            //var TotalVencimiento1 = ImporteOrdinario + ImporteExtraordinario;

            #region Add Pagos
            var pago = new Pagos()
            {
                ImporteGastoParticular = Convert.ToDecimal("0"),
                Coeficiente            = Coeficiente,
                //ImportePago1 = TotalVencimiento1,
                //ImportePago2 = TotalVencimiento1 + 10,
                //ImporteExtraordinario = ImporteExtraordinario,
                Periodo             = periodoNumerico,
                UnidadesFuncionales = unidadFuncional,
                PeriodoDetalle      = periodoDetalle,
                Estado = Constantes.EstadoAdeudado
            };

            _context.AddToPagos(pago);
            _context.SaveChanges();
            pago = _context.Pagos.OrderByDescending(x => x.ID).FirstOrDefault();
            #endregion

            _context.SaveChanges();
        }
示例#3
0
        public void AceptarExpensa_Modificando_Pagos_OK()
        {
            int          expensaId = 1000;
            ExpensaModel expensa   = new ExpensaModel()
            {
                ConsorcioId = "1", PeriodoNumerico = 201801
            };
            List <decimal> pagos = new List <decimal>()
            {
                100
            };
            string gastosExtraordinarios = "100";
            string totalGastosOrdinarios = "600";
            UnidadesFuncionales uf       = new UnidadesFuncionales()
            {
                ID          = 1,
                Apellido    = "Apellido Test 1",
                Nombre      = "Nombre Test 1",
                UF          = "1",
                Coeficiente = 5
            };
            List <UnidadesFuncionales> unidadesFuncionales = new List <UnidadesFuncionales>();

            unidadesFuncionales.Add(uf);

            _mockExpensasServ.Setup(x => x.GetDatosExpensa(expensaId)).Returns(expensa);
            _mockExpensasServ.Setup(x => x.GetUnidadesFuncionales(expensa.ConsorcioId)).Returns(unidadesFuncionales);
            _mockPagosServ.Setup(x => x.GetPagos(expensa.PeriodoNumerico, expensa.ConsorcioId)).Returns(pagos);
            _mockPagosServ.Setup(x => x.UpdatePagos(expensa.ConsorcioId, uf, gastosExtraordinarios, totalGastosOrdinarios, expensa.PeriodoNumerico, expensa.PeriodoDetalle));
            _mockExpensasServ.Setup(x => x.CambiarEstadoExpensa(expensaId, Constantes.EstadoAceptado)).Returns(true);

            var respuesta = _expensasNeg.AceptarExpensa(expensaId, "400", "50");

            Assert.AreEqual(respuesta, unidadesFuncionales.Count, "La cantidad de pagos no es correcta");
        }
示例#4
0
        public IEnumerable <UnidadesFuncionalesNumericoModel> AgregarUnidad(string idConsorcio, string idUf, string departamento, decimal coeficiente, string cochera, decimal idDueño)
        {
            var consorcio = context.Consorcios.Where(x => x.ID == idConsorcio).FirstOrDefault();
            var dueño     = context.Dueños.Where(x => x.ID == idDueño).FirstOrDefault();

            UnidadesFuncionales UF = new UnidadesFuncionales();

            UF.UF           = idUf;
            UF.Departamento = departamento;
            UF.Consorcios   = consorcio;
            UF.Coeficiente  = coeficiente;
            context.AddToUnidadesFuncionales(UF);
            UF.Cochera = cochera == "SI" ? true : false;
            UF.Dueños  = dueño;
            context.SaveChanges();

            return(GetUnidadesFuncionales(idConsorcio, string.Empty));
        }