public int Cadastrar(HistoricoStatus entity)
        {
            try
            {
                const string query =
                    @"INSERT INTO HistoricoStatus (IdPedido, IdStatus, DataStatus) 
                          VALUES (:IdPedido, :IdStatus, :DataStatus)";

                var parametros = new
                {
                    entity.IdPedido,
                    entity.IdStatus,
                    entity.DataStatus
                };

                string sequenceName = null;

                if (DataBaseType == DataBaseType.Oracle)
                {
                    sequenceName = SequenceHelper.GetSequenceName <HistoricoStatus>(entity);
                }

                return(Convert.ToInt32(IDbConn.CommandInsert(query, DataBaseType, parametros, sequenceName: sequenceName)));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id_historicoStatus,Data_inicio,Data_final,Funcionario_Cpf,Status")] HistoricoStatus historicoStatus)
        {
            if (id != historicoStatus.Id_historicoStatus)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(historicoStatus);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!HistoricoStatusExists(historicoStatus.Id_historicoStatus))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["Funcionario_Cpf"] = new SelectList(_context.Funcionario, "Cpf", "Cpf", historicoStatus.Funcionario_Cpf);
            return(View(historicoStatus));
        }
        public async Task <ActionResult> Put(HistoricoStatus historicoStatus)
        {
            _db.Entry(historicoStatus).State = EntityState.Modified;
            await _db.SaveChangesAsync();

            return(NoContent());
        }
        public bool Atualizar(HistoricoStatus entity)
        {
            try
            {
                const string query =
                    @"UPDATE HistoricoStatus
                              SET IdStatus = :IdStatus,
                                  DataStatus = :DataStatus
                            WHERE IdPedido = :IdPedido";
                var parametros = new
                {
                    entity.IdPedido,
                    entity.IdStatus,
                    entity.DataStatus
                };

                var resultado = IDbConn.CommandExecute(query, DataBaseType, parametros);

                return(resultado > 0);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <ActionResult> Post(HistoricoStatus historicoStatus)
        {
            _db.Add(historicoStatus);
            await _db.SaveChangesAsync();

            return(new CreatedAtRouteResult(nameof(GetByStatus), new { historicoStatus.Id_historicoStatus }, historicoStatus));
        }
示例#6
0
        public async Task <IActionResult> Create([Bind("Cpf,Nome,Email,Cargo,Data_nascimento,Endereco_Id_endereco,Senha,Status,Telefone_Id_telefone,Salario, Telefone, Endereco")] Funcionario funcionario)
        {
            if (ModelState.IsValid)
            {
                Telefone telefone = new Telefone();
                telefone.Telefones = funcionario.Telefone.Telefones;

                Endereco endereco = new Endereco();
                endereco.Cep    = funcionario.Endereco.Cep;
                endereco.Rua    = funcionario.Endereco.Rua;
                endereco.Numero = funcionario.Endereco.Numero;
                endereco.Bairro = funcionario.Endereco.Bairro;
                endereco.Cidade = funcionario.Endereco.Cidade;
                endereco.Estado = funcionario.Endereco.Estado;

                DateTime localDate = DateTime.Now;

                HistoricoStatus historicoStatus = new HistoricoStatus();
                historicoStatus.Data_inicio     = localDate;
                historicoStatus.Funcionario     = funcionario;
                historicoStatus.Funcionario_Cpf = funcionario.Cpf;
                historicoStatus.Status          = funcionario.Status;

                HistoricoSalario historicoSalario = new HistoricoSalario();
                historicoSalario.Data_inicio     = localDate;
                historicoSalario.Funcionario     = funcionario;
                historicoSalario.Funcionario_Cpf = funcionario.Cpf;
                historicoSalario.Cargo           = funcionario.Cargo;
                historicoSalario.Salario         = funcionario.Salario;

                int lastestTelefoneId = telefone.Id_telefone;
                int lastestEnderecoId = endereco.Id_endereco;

                funcionario.Telefone_Id_telefone = lastestTelefoneId;
                funcionario.Endereco_Id_endereco = lastestEnderecoId;

                var user = new IdentityUser {
                    UserName = funcionario.Email, Email = funcionario.Email
                };
                var result = await _userManager.CreateAsync(user, funcionario.Senha);

                var applicationRole = await _roleManager.FindByNameAsync(funcionario.Cargo);

                if (applicationRole != null)
                {
                    IdentityResult roleResult = await _userManager.AddToRoleAsync(user, applicationRole.Name);
                }

                _context.Add(funcionario);
                _context.Add(historicoStatus);
                _context.Add(historicoSalario);
                await _context.SaveChangesAsync();

                SendEmail(funcionario.Email, funcionario.Senha);
                return(RedirectToAction(nameof(Index)));
            }

            return(View(funcionario));
        }
        public async Task UpdateHistoricoStatus(HistoricoStatus HistoricoStatus)
        {
            var response = await httpService.Put(url, HistoricoStatus);

            if (!response.Success)
            {
                throw new ApplicationException(await response.GetBody());
            }
        }
示例#8
0
 public int Cadastrar(HistoricoStatus entity)
 {
     using (var scope = new TransactionScope())
     {
         entity.DataCadastro = DateTime.Now;
         var identificador = _repository.Cadastrar(entity);
         scope.Complete();
         return(identificador);
     }
 }
        public async Task <IActionResult> Create([Bind("Id_historicoStatus,Data_inicio,Data_final,Funcionario_Cpf,Status")] HistoricoStatus historicoStatus)
        {
            if (ModelState.IsValid)
            {
                _context.Add(historicoStatus);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["Funcionario_Cpf"] = new SelectList(_context.Funcionario, "Cpf", "Cpf", historicoStatus.Funcionario_Cpf);
            return(View(historicoStatus));
        }
示例#10
0
        public void Salvar()
        {
            if (!Enum.TryParse(OpcaoStatus.Text, out OpcoesStatus opcao) ||
                !Enum.IsDefined(typeof(OpcoesStatus), opcao))
            {
                MessageBox.Show("Não foi possível salvar a informação o campo informado não é válido");
                return;
            }

            HistoricoStatus instancia = new HistoricoStatus {
                Status = opcao
            };

            using (LigacoesContext context = new LigacoesContext())
            {
                instancia.Id       = Guid.NewGuid();
                instancia.DataHora = DateTime.Now;

                if (UsuarioLogado is Usuario usuario)
                {
                    instancia.Usuario = new Usuario {
                        Id = usuario.Id
                    };
                    context.Usuarios.Attach(instancia.Usuario);
                }


                if (LigacaoHist != null)
                {
                    instancia.Ligacao = new Ligacao {
                        Id = LigacaoHist.Id
                    };
                    context.Ligacoes.Attach(instancia.Ligacao);
                }

                if (LigacaoHist == null)
                {
                    MessageBox.Show("Selecione uma ligação antes de salvar o status.");
                    Limpar();
                    Close();
                    return;
                }

                context.HistoricosStatus.Add(instancia);
                context.SaveChanges();
                Limpar();
                Close();
            }
        }
示例#11
0
        public bool Atualizar(HistoricoStatus entity)
        {
            using (var scope = new TransactionScope())
            {
                var result = false;
                result = _repository.Atualizar(entity);

                if (!result)
                {
                    throw new Exception("Ocorreu um erro ao atualizar");
                }

                scope.Complete();
                return(result);
            }
        }
示例#12
0
        public CadLigacao()
        {
            InitializeComponent();
            DtGvStatus.AutoGenerateColumns   = true;
            DtGvStatus.MultiSelect           = false;
            DtGvStatus.AllowUserToDeleteRows = false;
            DtGvStatus.ReadOnly                    = true;
            DtGvStatus.RowHeadersVisible           = false;
            DtGvStatus.AllowUserToAddRows          = false;
            DtGvStatus.AllowUserToResizeRows       = false;
            DtGvStatus.SelectionMode               = DataGridViewSelectionMode.FullRowSelect;
            DtGvStatus.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;

            CreateCells = obj =>
            {
                HistoricoStatus historicoStatus = obj;

                if (historicoStatus == null)
                {
                    return(null);
                }

                return(new object[]
                {
                    historicoStatus.Ligacao.Codigo, historicoStatus.Usuario.Nome, historicoStatus.DataHora,
                    historicoStatus.Status
                });
            };
            Carregar = () =>
            {
                using (LigacoesContext context = new LigacoesContext())
                {
                    List <HistoricoStatus> list = (from hs in context.HistoricosStatus
                                                   where LigacaoAtual.Id.Equals(hs.Ligacao.Id)
                                                   select hs).Include(nameof(HistoricoStatus.Usuario))
                                                  .Include(nameof(HistoricoStatus.Ligacao)).ToList();
                    return(list);
                }
            };

            Cliente.KeyPress += Cliente_KeyPress;
            Inicializa();
        }
示例#13
0
        public async Task <IActionResult> Edit(string id, [Bind("Cpf,Nome,Email,Senha,Cargo,Data_nascimento,Status,Endereco_Id_endereco,Telefone_Id_telefone,Salario, Telefone, Endereco")] Funcionario funcionario)
        {
            if (id != funcionario.Cpf)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var telefones = _context.Telefone.First(a => a.Id_telefone == funcionario.Telefone_Id_telefone);
                    telefones.Telefones = funcionario.Telefone.Telefones;

                    var funcionarios = _context.Funcionario.First(a => a.Cpf == funcionario.Cpf);
                    funcionarios.Cpf             = funcionario.Cpf;
                    funcionarios.Email           = funcionario.Email;
                    funcionarios.Cargo           = funcionario.Cargo;
                    funcionarios.Data_nascimento = funcionario.Data_nascimento;
                    funcionarios.Nome            = funcionario.Nome;
                    funcionarios.Senha           = funcionario.Senha;
                    funcionarios.Status          = funcionario.Status;
                    funcionarios.Salario         = funcionario.Salario;

                    var enderecos = _context.Endereco.First(a => a.Id_endereco == funcionario.Endereco_Id_endereco);
                    enderecos.Numero = funcionario.Endereco.Numero;
                    enderecos.Rua    = funcionario.Endereco.Rua;
                    enderecos.Cep    = funcionario.Endereco.Cep;
                    enderecos.Bairro = funcionario.Endereco.Bairro;
                    enderecos.Cidade = funcionario.Endereco.Cidade;
                    enderecos.Estado = funcionario.Endereco.Estado;

                    if (funcionarioAdd.Status != funcionarios.Status)
                    {
                        DateTime localDate = DateTime.Now;

                        var historicoAntigo = _context.HistoricoStatus.Where(x => x.Funcionario_Cpf == funcionario.Cpf && x.Data_final == null).FirstOrDefault();
                        historicoAntigo.Data_final = localDate;

                        HistoricoStatus historico = new HistoricoStatus();
                        historico.Data_inicio     = localDate;
                        historico.Funcionario     = funcionarios;
                        historico.Funcionario_Cpf = funcionarios.Cpf;
                        historico.Status          = funcionarios.Status;

                        _context.Update(historicoAntigo);
                        _context.Add(historico);
                    }

                    if (funcionarioAdd.Salario != funcionarios.Salario || funcionarioAdd.Cargo != funcionario.Cargo)
                    {
                        DateTime localDate = DateTime.Now;

                        var historicoAntigo = _context.HistoricoSalario.Where(x => x.Funcionario_Cpf == funcionario.Cpf && x.Data_final == null).FirstOrDefault();
                        historicoAntigo.Data_final = localDate;

                        HistoricoSalario historico = new HistoricoSalario();
                        historico.Data_inicio     = localDate;
                        historico.Funcionario     = funcionarios;
                        historico.Funcionario_Cpf = funcionarios.Cpf;
                        historico.Cargo           = funcionarios.Cargo;
                        historico.Salario         = funcionarios.Salario;

                        _context.Update(historicoAntigo);
                        _context.Add(historico);
                    }

                    _context.Update(funcionarios);
                    _context.Update(telefones);
                    _context.Update(enderecos);

                    await _context.SaveChangesAsync();

                    System.Diagnostics.Debug.WriteLine(funcionario.Senha);

                    await MudarRole(funcionario.Email, funcionario.Cargo, funcionario.Status, funcionario.Senha);

                    SendEmail(funcionario.Email, funcionario.Senha);
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FuncionarioExists(funcionario.Cpf))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }

            return(View(funcionario));
        }