public void Agendar(long idEmpresa, DateTime data, long idServico, long idCliente, long idFuncionario, string guidUsuarioAgendou)
        {
            try
            {
                //if (data < DateTime.Now.FirstHourOfDay().AddMonths(-1))
                //    { throw new AtendimentoInvalidoException("Data inválido."); }

                //if (data.DateHourMinute() < DateTime.Now.DateHourMinute())
                //{ throw new AtendimentoInvalidoException("Data inválida, não é possível realizar um agendamento para o passado."); }

                ClienteModel cliente = svCliente.Find(idCliente);
                if (cliente.IsNull())
                {
                    throw new AtendimentoInvalidoException("Cliente inválido.");
                }

                ServicoModel servico = svServico.Find(idServico);
                if (servico.IsNull())
                {
                    throw new AtendimentoInvalidoException("Serviço inválido.");
                }

                FuncionarioModel funcionario = svFuncionario.Find(idFuncionario);
                if (funcionario.IsNull())
                {
                    throw new AtendimentoInvalidoException("Funcionário inválido.");
                }

                AtendimentoModel agendamentoCadastrado = _repository.GetAtendimento(cliente.Id, servico.Id, funcionario.Id, data.DateHourMinute());
                if (agendamentoCadastrado.IsNotNull())
                {
                    throw new AtendimentoInvalidoException("Já existe um atendimento para este cliente com este funcionário neste horário.");
                }

                EmpresaModel empresa = svEmpresa.Find(idEmpresa);

                AtendimentoModel a = new AtendimentoModel(empresa, data.DateHourMinute(), cliente, servico, funcionario, guidUsuarioAgendou, servico.Preco);

                _repository.Save(a);
            }
            catch (DomainException dEx)
            {
                Logger.Log.Warn(dEx);
                throw;
            }
            catch (Exception ex)
            {
                Logger.Log.Error(ex);
                throw;
            }
        }
示例#2
0
        public void Cadastrar(long idEmpresa, string nome, DateTime?dataNascimento, string telefone, string celular, string email, string sexo, long[] idServicos)
        {
            try
            {
                ValidarNomeJaExistente(null, idEmpresa, nome);

                EmpresaModel empresa = svEmpresa.Find(idEmpresa);

                ServicoModel        servico  = null;
                List <ServicoModel> servicos = null;

                if (idServicos.IsNotNull())
                {
                    servicos = new List <ServicoModel>();
                    foreach (int sId in idServicos)
                    {
                        servico = svServico.Find(sId);
                        if (servico.IsNotNull())
                        {
                            servicos.Add(servico);
                        }
                    }
                }

                FuncionarioModel f = new FuncionarioModel(empresa, nome, dataNascimento, telefone, celular, email, sexo, servicos);

                _repo.Save(f);
            }
            catch (DomainException dEx)
            {
                Logger.Log.Warn(dEx);
                throw;
            }
            catch (Exception ex)
            {
                Logger.Log.Error(ex);
                throw;
            }
        }
        public void CleanUp()
        {
            ListaNomesToDelete.Add("Leo 5");
            ListaNomesToDelete.Add("Leo 4");
            ListaNomesToDelete.Add("Leo 3");
            ListaNomesToDelete.Add("Leo 2");
            ListaNomesToDelete.Add("Leo 1");
            ListaNomesToDelete.Add("Leonardo");
            ListaNomesToDelete.Add("Leo Renomeado");
            ListaNomesToDelete.Add("DeletarFuncionario");
            ListaNomesToDelete.Add("RecoverFuncionario");

            if (ListaNomesToDelete.IsNotNull() || ListaNomesToDelete.Count > 0)
            {
                ListaNomesToDelete.ForEach(nome =>
                {
                    FuncionarioModel o = sv.Find(_empresa.Id, nome);
                    if (o.IsNotNull())
                    {
                        repoFuncionario.Delete(o.Id);
                    }
                });
            }

            ServicoModel s = svServico.Find(_empresa.Id, "Corte Teste");

            if (s.IsNotNull())
            {
                svServico.Delete(s.Id);
            }

            s = svServico.Find(_empresa.Id, "Luzes Teste");
            if (s.IsNotNull())
            {
                svServico.Delete(s.Id);
            }

            DeleteEmpresa();
        }
示例#4
0
        public void CleanUp()
        {
            ListaNomesToDelete.Add("Serviço 1");
            ListaNomesToDelete.Add("Serviço 1");
            ListaNomesToDelete.Add("Serviço 2");
            ListaNomesToDelete.Add("Serviço 3");
            ListaNomesToDelete.Add("Serviço 4");
            ListaNomesToDelete.Add("Serviço 5");
            ListaNomesToDelete.Add("Serviço 6");
            ListaNomesToDelete.Add("Serviço 7");
            ListaNomesToDelete.Add("Serviço 8");
            ListaNomesToDelete.Add("Serviço Novo");
            ListaNomesToDelete.Add("Corte de Cabelo");
            ListaNomesToDelete.Add("Serviço Recuperacao");


            if (ListaNomesToDelete.IsNotNull() || ListaNomesToDelete.Count > 0)
            {
                ListaNomesToDelete.ForEach(nome =>
                {
                    ServicoModel o = sv.Find(_empresa.Id, nome);
                    if (o.IsNotNull())
                    {
                        repoServico.Delete(o.Id);
                    }
                });
            }

            DeleteEmpresa();
        }
示例#5
0
        // GET: Servico/Details/5
        public ActionResult Details(long id)
        {
            ServicoModel Servico = sv.Find(id);

            return(View(_mapp.Map <ServicoViewModel>(Servico)));
        }