示例#1
0
        public ActionResult Create([Bind(Include = "id,idAluno,valor,dataProxima,dataBaseInicio,dataBaseFim")] Pagamento pagamento)
        {
            if (pagamento.valor > TipoPlano.Selecionar(Aluno.Selecionar(pagamento.idAluno).tipoPlano).valor)
            {
                ModelState.AddModelError("valor", "O valor pago não pode ser maior que o valor do plano atual");
            }

            if (ModelState.IsValid)
            {
                if (TipoPlano.Selecionar(Aluno.Selecionar(pagamento.idAluno).tipoPlano).descricao.Equals("MENSAL"))
                {
                    pagamento.dataBaseFim = pagamento.dataBaseInicio.AddMonths(1);
                    pagamento.dataProxima = pagamento.dataBaseInicio.AddMonths(1);
                }
                else
                {
                    pagamento.dataBaseFim = pagamento.dataBaseInicio.AddYears(1);
                    pagamento.dataProxima = pagamento.dataBaseInicio.AddYears(1);
                }

                pagamento.dataProxima = pagamento.dataProxima.AddDays(1);

                Pagamento.Incluir(pagamento);
                return(RedirectToAction("Index", new { idAluno = pagamento.idAluno }));
            }

            return(View(pagamento));
        }
示例#2
0
        public IEnumerable <PlanoViewModel> GetByType(TipoPlano tipo)
        {
            var viewModel = new List <PlanoViewModel>();
            var Planos    = _PlanoRepository.GetAll().Where(w => w.Tipo == tipo).ToList();

            Planos.ForEach(p => {
                var record = new PlanoViewModel()
                {
                    Id               = p.Id,
                    Nome             = p.Nome,
                    Minutos          = p.Minutos,
                    FranquiaInternet = p.FranquiaInternet,
                    Tipo             = p.Tipo,
                    Valor            = p.Valor
                };
                record.Operadora = new OperadoraViewModel()
                {
                    Id   = p.Operadora.Id,
                    Nome = p.Operadora.Nome
                };

                viewModel.Add(record);
            });
            return(viewModel);
        }
        public List <Plano> FindByTipo(TipoPlano tipoPlano, int ddd)
        {
            var planos = dataset
                         .Where(p => p.Tipo == tipoPlano && p.PlanoDDDs.Where(d => d.DDD.CodigoDDD == ddd)
                                .Any()).ToList();

            return(planos);
        }
示例#4
0
        // GET: /Pagamento/Create
        public ActionResult Create(int idAluno)
        {
            Pagamento pg = new Pagamento();

            pg.idAluno = idAluno;
            pg.valor   = TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).valor;

            return(View(pg));
        }
示例#5
0
 public Plano(Guid id, string nome, string minutos, string franquiaInternet, decimal valor, TipoPlano tipo)
 {
     Id               = id;
     Nome             = nome;
     Minutos          = minutos;
     FranquiaInternet = franquiaInternet;
     Valor            = valor;
     Tipo             = tipo;
 }
        public ActionResult Edit([Bind(Include = "id,identidade,cpf,nome,endereco,tipoPlano")] Aluno aluno)
        {
            if (ModelState.IsValid)
            {
                aluno.nome = aluno.nome.ToUpper();
                Aluno.Alterar(aluno);
                return(RedirectToAction("Index"));
            }
            ViewBag.TipoPlano = new SelectList(TipoPlano.SelecionarTodos(), "id", "Descricao", aluno.tipoPlano);

            return(View(aluno));
        }
        public List <PlanoVO> FindByTipo(TipoPlano tipoPlano, int ddd)
        {
            var plano = _repository.FindByTipo(tipoPlano, ddd);

            if (plano.Count > 0)
            {
                return(_converter.ParseList(plano));
            }
            else
            {
                return(new List <PlanoVO>());
            }
        }
示例#8
0
        public Plano(int codigo, int minutos, int franquia, double valor, TipoPlano tipo, Operadora operadora, List <int> ddd)
        {
            Codigo    = codigo;
            Minutos   = minutos;
            Franquia  = franquia;
            Valor     = valor;
            Tipo      = tipo.ToString();
            Operadora = operadora.Descricao;

            List <DDD> list = new List <DDD>();

            ddd.ForEach(d => list.Add(new DDD(d)));

            DDDs = list;
        }
        // GET: /Aluno/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Aluno aluno = Aluno.Selecionar(id.Value);

            if (aluno == null)
            {
                return(HttpNotFound());
            }
            ViewBag.TipoPlano = new SelectList(TipoPlano.SelecionarTodos(), "id", "Descricao", aluno.tipoPlano);

            return(View(aluno));
        }
 public IActionResult GetTipo(string ddd, TipoPlano tipo)
 {
     try
     {
         var planos = _planoApplication.GetByTipo(ddd, tipo);
         if (planos is null)
         {
             return(NotFound());
         }
         return(new ObjectResult(planos));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex));
     }
 }
示例#11
0
        // GET: /Ferias/Create
        public ActionResult Create(int idAluno)
        {
            if (TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).descricao.Equals("MENSAL"))
            {
                return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno }));
            }

            if (Pagamento.SelecionarTodos(idAluno).Count > 0)
            {
                Pagamento pg = Pagamento.SelecionarTodos(idAluno).OrderByDescending(x => x.dataProxima).ToList()[0];

                if (DateTime.Now >= pg.dataProxima)
                {
                    return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno }));
                }
                else
                {
                    int qtdeFeriasExistentes = pg.dataProxima.AddDays(-1).Subtract(pg.dataBaseFim).Days;

                    if (qtdeFeriasExistentes >= 30)
                    {
                        return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno }));
                    }
                    else
                    {
                        if (Ferias.SelecionarTodos(idAluno, pg.dataBaseFim).Count >= 3)
                        {
                            return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno }));
                        }
                    }
                }
            }
            else
            {
                return(RedirectToAction("Index", "Ferias", new { idAluno = idAluno }));
            }

            Ferias ferias = new Ferias();

            ferias.idAluno    = idAluno;
            ferias.dataInicio = DateTime.Now;
            ferias.dataFim    = DateTime.Now;

            return(View(ferias));
        }
示例#12
0
        // GET: /Ferias/
        public ActionResult Index(int idAluno)
        {
            ViewData["idAluno"] = idAluno;
            ViewData["Erro"]    = "";

            if (TipoPlano.Selecionar(Aluno.Selecionar(idAluno).tipoPlano).descricao.Equals("MENSAL"))
            {
                ViewData["Erro"] = "O plano do aluno " + Aluno.Selecionar(idAluno).nome + " não possui direito a férias";
            }

            if (Pagamento.SelecionarTodos(idAluno).Count > 0)
            {
                Pagamento pg = Pagamento.SelecionarTodos(idAluno).OrderByDescending(x => x.dataProxima).ToList()[0];

                if (DateTime.Now >= pg.dataProxima)
                {
                    ViewData["Erro"] = "O aluno está inadimplente e não é possivel gerar novas férias";
                }
                else
                {
                    int qtdeFeriasExistentes = pg.dataProxima.AddDays(-1).Subtract(pg.dataBaseFim).Days;

                    if (qtdeFeriasExistentes >= 30)
                    {
                        ViewData["Erro"] = "O aluno já excedeu a quantidade permitida de dias de férias para o plano vigente";
                    }
                    else
                    {
                        if (Ferias.SelecionarTodos(idAluno, pg.dataBaseFim).Count >= 3)
                        {
                            ViewData["Erro"] = "O aluno já excedeu a quantidade permitida de períodos de férias";
                        }
                    }
                }
            }
            else
            {
                ViewData["Erro"] = "O aluno não possui plano vigente para solicitar férias";
            }



            return(View(Ferias.SelecionarTodos(idAluno).OrderByDescending(x => x.dataInicio).ToList()));
        }
示例#13
0
        public IEnumerable <Plano> GetByTipo(string ddd, TipoPlano tipo)
        {
            try
            {
                DDD dDD = ((TelefoniaContext)Context).DDDs.Where(x => x.Sigla == ddd).First();
                if (ddd is null)
                {
                    return(null);
                }

                return(((TelefoniaContext)Context).Planos.Where(x => x.DDDPlanos.Any(y => y.DDDId == dDD.Id))
                       .Where(z => z.Tipo == tipo)
                       .Include(x => x.DDDPlanos)
                       .ThenInclude(y => y.Ddd));
            }
            catch
            {
                return(null);
            }
        }
 // GET: /Aluno/Create
 public ActionResult Create()
 {
     ViewBag.TipoPlano = new SelectList(TipoPlano.SelecionarTodos(), "id", "Descricao");
     return(View());
 }
        public IEnumerable <Plano> GetByTipo(string ddd, TipoPlano tipo)
        {
            IEnumerable <Plano> planos = _planoRepository.GetByTipo(ddd, tipo);

            return(planos);
        }
        public IActionResult GetByType(TipoPlano tipo)
        {
            var viewModel = _appService.GetByType(tipo);

            return(Response(viewModel));
        }
示例#17
0
 public IActionResult Get(TipoPlano tipo, int ddd)
 {
     return(Ok(_planoBusiness.FindByTipo(tipo, ddd)));
 }
示例#18
0
 public IList <Plano> BuscarPorTipo(TipoPlano tipo)
 {
     return(session.QueryOver <Plano>().Where(x => x.Tipo == tipo).List());
 }
示例#19
0
 public void Alterar(TipoPlano obj)
 {
     _tipoPlanoRepository.Update(obj);
 }
示例#20
0
 public void Incluir(TipoPlano obj)
 {
     _tipoPlanoRepository.Add(obj);
 }
示例#21
0
 public IEnumerable <TipoPlano> Filtros(TipoPlano obj)
 {
     return(_tipoPlanoRepository.Filtros(obj));
 }