public string BuscarEnderecoHelper(int idFilial) { var unidade = _unidadeAplicacao.BuscarPorId(idFilial); if (unidade?.Endereco == null || string.IsNullOrEmpty(unidade.Endereco.Logradouro) || string.IsNullOrEmpty(unidade.Endereco.Numero)) { return(""); } return($"{unidade.Endereco.Logradouro}, {unidade.Endereco.Numero}"); }
public void SalvarDados(ParametrizacaoLocacaoViewModel entity) { var entidade = new ParametrizacaoLocacao() { Id = entity.Id, DataInsercao = entity.DataInsercao, TipoLocacao = _tipoLocacaoAplicacao.BuscarPorId(entity.TipoLocacao.Id) ?? entity.TipoLocacao.ToEntity() //, //Unidade = entity.ListaUnidades == null || entity.ListaUnidades.Count <= 0 ? entity.Unidade.ToEntity() : null }; if (entidade.Id == 0) { foreach (var item in entity.ListaUnidades) { if (this.BuscarPor(x => x.TipoLocacao.Id == entity.TipoLocacao.Id && x.Unidade.Id == item).Any()) { var objUnidadeEncontrada = _unidadeAplicacao.BuscarPorId(item); throw new BusinessRuleException("Tipo Locação " + entity.TipoLocacao.Descricao + " já possui cadastro para Unidade " + objUnidadeEncontrada.Nome); } } foreach (var item in entity.ListaUnidades) { entidade.Id = 0; entidade.Unidade = _unidadeAplicacao.BuscarPorId(item); if (!ObjetoValido(entidade)) { throw new BusinessRuleException("Objeto Invalido!"); } this.Salvar(entidade); } } else { var objNovo = this.BuscarPorId(entidade.Id) ?? entidade; objNovo.Id = entity.Id; objNovo.TipoLocacao = entidade.TipoLocacao; objNovo.Unidade = entity.Unidade != null?_unidadeAplicacao.BuscarPorId(entity.Unidade.Id) : null; objNovo.DataInsercao = entidade.DataInsercao; if (!ObjetoValido(objNovo)) { throw new BusinessRuleException("Objeto Invalido!"); } this.Salvar(objNovo); } }
public void Salvar(TabelaPrecoAvulsoViewModel viewModel, int idUsuario) { var entidade = viewModel.ToEntity(); entidade.ListaHoraValor = viewModel.ListaHoraValor. Select(x => new TabelaPrecoAvulsoHoraValor { TabelaPrecoAvulso = entidade, Hora = x.Hora, Valor = Convert.ToDecimal(x.Valor) }) .ToList(); entidade.ListaUnidade = viewModel.ListaUnidade .Select(x => new TabelaPrecoAvulsoUnidade { TabelaPrecoAvulso = entidade, HoraFim = x.HoraFim, HoraInicio = x.HoraInicio, ValorDiaria = decimal.Parse(x.ValorDiaria), Unidade = new Unidade { Id = x.Unidade.Id } }) .ToList(); entidade.ListaPeriodo = viewModel.Periodo.ListaPeriodoSelecionado .Select(x => new TabelaPrecoAvulsoPeriodo { TabelaPrecoAvulso = entidade, Periodo = x }) .ToList(); entidade.Usuario = new Usuario { Id = idUsuario }; _tabelaPrecoAvulsoServico.Salvar(entidade, idUsuario); var tabelaPrecoAvulso = _tabelaPrecoAvulsoServico.BuscarPorId(entidade.Id); foreach (var unidade in tabelaPrecoAvulso.ListaUnidade.Select(x => x.Unidade)) { tabelaPrecoAvulso.ListaUnidade.Select(x => x.Unidade = _unidadeAplicacao.BuscarPorId(unidade.Id)); } var tabelaPreco = new TabelaPrecoSoftparkViewModel(tabelaPrecoAvulso); _tabelaPrecoSoftparkAplicacao.Salvar(tabelaPreco); }
public bool ObjetoValido(UnidadeCondomino entity) { if (entity.NumeroVagas <= 0) { throw new BusinessRuleException("Informe um numero válido de vagas!"); } if (entity.Unidade == null || entity.Unidade.Id == 0) { throw new BusinessRuleException("Informe uma Unidade!"); } if (entity.Id == 0) { var UnidadeCondomino = BuscarPor(x => x.Unidade.Id == entity.Unidade.Id); if (UnidadeCondomino.Any()) { var unidadeCondominoExistente = UnidadeCondomino.FirstOrDefault(); throw new BusinessRuleException($"A Unidade {unidadeCondominoExistente.Unidade.Nome} já possui cadastro de Vagas Condomino definida!"); } } var unidade = _unidadeAplicacao.BuscarPorId(entity.Unidade.Id); if (entity.NumeroVagas > unidade.NumeroVaga) { //throw new BusinessRuleException($"A Unidade possui apenas {unidade.NumeroVaga} vagas disponíveis !"); throw new BusinessRuleException($"Numero Total de Vagas nao pode ser maior do que cadastrado em unidade"); } return(true); }
public void SalvarDados(EstoqueViewModel entity) { if (!ObjetoValido(entity.ToEntity())) { throw new BusinessRuleException("Objeto Invalido!"); } var estoque = BuscarPorId(entity.Id) ?? entity.ToEntity(); estoque.Id = entity.Id; estoque.Nome = entity.Nome; estoque.DataInsercao = entity.DataInsercao; estoque.Numero = entity.Numero; estoque.Tipo = entity.Tipo; estoque.CidadeNome = entity.CidadeNome; estoque.UF = entity.UF; estoque.Logradouro = entity.Logradouro; estoque.EstoquePrincipal = entity.EstoquePrincipal; if (entity == null || entity.Unidade.Id == 0) { estoque.Unidade = null; } else { estoque.Unidade = _unidadeAplicacao.BuscarPorId(entity.Unidade.Id); } if (estoque.EstoquePrincipal) { SubstituirEstoquePrincipal(); } Servico.Salvar(estoque); }
public HttpResponseMessage Billings([FromBody] FaturamentoViewModel faturamentoViewModel) { try { if (!ModelState.IsValid) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.ErrorMessage)); if (string.IsNullOrEmpty(JsonResult.Message)) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.Exception.Message)); } return(Request.CreateResponse(HttpStatusCode.PreconditionFailed, JsonResult)); } var unidade = _unidadeAplicacao.BuscarPorId(faturamentoViewModel.Estacionamento.Id); var usuario = _usuarioServico.BuscarPorId(faturamentoViewModel.Operador.Id); if (usuario == null) { JsonResult.Message = "Usuário Não Existe"; return(Request.CreateResponse(HttpStatusCode.NotFound, JsonResult)); } var mensagemDeErro = Validar(faturamentoViewModel.Id, unidade); if (mensagemDeErro != null) { return(mensagemDeErro); } var faturamento = faturamentoViewModel.ToEntity(); faturamento.Unidade = unidade; faturamento.Usuario = usuario; var faturamentoExistenteComIdSoftpark = faturamento.IdSoftpark.HasValue ? _faturamentoAplicacao .PrimeiroPor(x => x.IdSoftpark.HasValue && x.IdSoftpark.Value == faturamento.IdSoftpark.Value && x.Unidade != null && faturamento.Unidade != null && x.Unidade.Id == faturamento.Unidade.Id) : null; if (faturamentoExistenteComIdSoftpark != null) { faturamento.Id = faturamentoExistenteComIdSoftpark.Id; } _faturamentoAplicacao.Salvar(faturamento); JsonResult.Status = true; JsonResult.Object = faturamento; return(Request.CreateResponse(HttpStatusCode.Created, JsonResult.Message = "Faturamento Cadastrado!")); } catch (Exception ex) { JsonResult.Status = false; JsonResult.Message = ex.Message; return(Request.CreateResponse(HttpStatusCode.BadRequest, JsonResult.Message)); } }
public new void Salvar(Usuario entity) { Servico.Salvar(entity); if (entity.TemAcessoAoPDV) { var usuario = Servico.BuscarPorId(entity.Id); usuario.Unidade = _unidadeAplicacao.BuscarPorId(usuario.Unidade.Id); var operador = new OperadorSoftparkViewModel(usuario); _operadorSoftparkAplicacao.Salvar(operador); } }
public HttpResponseMessage GetById(int id) { try { var unidade = _unidadeAplicacao.BuscarPorId(id); var unidadeVM = AutoMapper.Mapper.Map <Unidade, UnidadeViewModel>(unidade); JsonResult.Status = true; JsonResult.Object = unidadeVM; return(Request.CreateResponse(HttpStatusCode.OK, JsonResult)); } catch (Exception ex) { JsonResult.Status = false; JsonResult.Message = ex.Message; return(Request.CreateResponse(HttpStatusCode.BadRequest, JsonResult)); } }
public HttpResponseMessage MonthlyPayments([FromBody] PagamentoMensalidadeSoftparkViewModel pagamentoMensalidadeVM) { try { if (!ModelState.IsValid) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.ErrorMessage)); if (string.IsNullOrEmpty(JsonResult.Message)) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.Exception.Message)); } return(Request.CreateResponse(HttpStatusCode.PreconditionFailed, JsonResult)); } var cliente = pagamentoMensalidadeVM.Condutor.ERPId.HasValue ? _clienteAplicacao.BuscarPorId(pagamentoMensalidadeVM.Condutor.ERPId.Value) : null; if (cliente == null) { cliente = pagamentoMensalidadeVM.Condutor.ToCliente(null); } if (cliente.Id == 0) { cliente = _clienteAplicacao.SalvarComRetorno(cliente); } var unidade = _unidadeAplicacao.BuscarPorId(pagamentoMensalidadeVM.Estacionamento.Id); var mensagemDeErro = Validar(pagamentoMensalidadeVM, cliente, unidade); if (mensagemDeErro != null) { return(mensagemDeErro); } var lancamentoCobranca = _lancamentoCobrancaAplicacao .PrimeiroPor(x => x.Cliente.Id == cliente.Id && x.DataVencimento > SqlDateTime.MinValue.Value && x.DataVencimento.Date == pagamentoMensalidadeVM.DataValidade.Date); if (lancamentoCobranca == null) { lancamentoCobranca = new LancamentoCobranca { Unidade = unidade, Cliente = cliente, TipoServico = TipoServico.Mensalista, DataGeracao = DateTime.Now, DataVencimento = pagamentoMensalidadeVM.DataValidade, ValorContrato = pagamentoMensalidadeVM.Valor }; } if (lancamentoCobranca.Recebimento == null) { lancamentoCobranca.Recebimento = new Recebimento(); } if (lancamentoCobranca.Recebimento.Pagamentos == null) { lancamentoCobranca.Recebimento.Pagamentos = new List <Pagamento>(); } if (lancamentoCobranca.Recebimento.Pagamentos .Any(x => x.PagamentoMensalistaId == pagamentoMensalidadeVM.Id && x.Unidade.Id == pagamentoMensalidadeVM.Estacionamento.Id)) { JsonResult.Message = "Já existe um pagamento com esse Id para esta Unidade"; return(Request.CreateResponse(HttpStatusCode.InternalServerError, JsonResult)); } lancamentoCobranca.StatusLancamentoCobranca = StatusLancamentoCobranca.Pago; lancamentoCobranca.DataBaixa = pagamentoMensalidadeVM.DataPagamento; var pagamento = pagamentoMensalidadeVM.ToPagamento(lancamentoCobranca.Recebimento); pagamento.Unidade = unidade; lancamentoCobranca.Recebimento.Pagamentos.Add(pagamento); lancamentoCobranca.StatusLancamentoCobranca = StatusLancamentoCobranca.Pago; lancamentoCobranca.DataBaixa = pagamento.DataPagamento; _lancamentoCobrancaAplicacao.Salvar(lancamentoCobranca); return(Request.CreateResponse(HttpStatusCode.Created, JsonResult.Message = "Pagamento Cadastrado!")); } catch (Exception ex) { JsonResult.Status = false; JsonResult.Message = ex.Message; return(Request.CreateResponse(HttpStatusCode.BadRequest, JsonResult)); } }
public HttpResponseMessage Movements([FromBody] MovimentacaoSoftparkViewModel movimentacaoVM) { try { if (!ModelState.IsValid) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.ErrorMessage)); if (string.IsNullOrEmpty(JsonResult.Message)) { JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.Exception.Message)); } return(Request.CreateResponse(HttpStatusCode.PreconditionFailed, JsonResult)); } var unidade = _unidadeAplicacao.BuscarPorId(movimentacaoVM.Estacionamento.Id); var cliente = _clienteAplicacao.BuscarPorId(movimentacaoVM.ClienteId); var usuario = _usuarioServico.BuscarPorId(movimentacaoVM.Operador.Id); var validado = Validar(movimentacaoVM.Id, unidade, usuario); if (validado != null) { return(validado); } var movimentacao = movimentacaoVM.ToEntity(); movimentacao.Unidade = unidade; movimentacao.Usuario = usuario; movimentacao.Cliente = cliente; var movimentacaoExistenteComIdSoftpark = movimentacao.IdSoftpark.HasValue ? _movimentacaoAplicacao .PrimeiroPor(x => x.IdSoftpark.HasValue && x.IdSoftpark.Value == movimentacao.IdSoftpark.Value && x.Unidade != null && movimentacao.Unidade != null && x.Unidade.Id == movimentacao.Unidade.Id) : null; if (movimentacaoExistenteComIdSoftpark != null) { movimentacao.Id = movimentacaoExistenteComIdSoftpark.Id; } if (movimentacao.Usuario != null) { movimentacao.Usuario.Unidade = movimentacao.Unidade; movimentacao.Usuario.TemAcessoAoPDV = true; } if (movimentacao.MovimentacaoSelo != null && movimentacao.MovimentacaoSelo.Any()) { RegistrarSelo(movimentacao); } JsonResult.Status = true; _movimentacaoAplicacao.Salvar(movimentacao); return(Request.CreateResponse(HttpStatusCode.Created, JsonResult.Message = "Movimentação Cadastrada!")); } catch (Exception ex) { JsonResult.Status = false; JsonResult.Message = ex.Message; return(Request.CreateResponse(HttpStatusCode.BadRequest, JsonResult)); } }
private void SalvarOcorrencias(Cliente cliente, int usuarioLogadoCurrent) { var clienteBase = BuscarPorId(cliente.Id); var clienteVeiculosSalvos = clienteBase.Veiculos; foreach (var ocorrencia in cliente.Ocorrencias) { ocorrencia.Id = ocorrencia.Id < 0 ? 0 : ocorrencia.Id; ocorrencia.Cliente = new Cliente { Id = cliente.Id }; if (ocorrencia.Veiculo != null) { var clienteVeiculo = BuscarPor(x => x.Id == cliente.Id).Select(s => s.Veiculos.FirstOrDefault(f => f.Veiculo.Placa == ocorrencia.Veiculo.Placa)).FirstOrDefault(); if (!ReferenceEquals(clienteVeiculo, null)) { ocorrencia.Veiculo = clienteVeiculo.Veiculo; } } var entityOcorrencia = AutoMapper.Mapper.Map <OcorrenciaCliente>(ocorrencia); entityOcorrencia.FuncionarioAtribuido = _funcionarioAplicacao.BuscarPorId(ocorrencia.FuncionarioAtribuido.Pessoa.Id) ?? null; entityOcorrencia.Cliente = clienteBase; entityOcorrencia.Unidade = entityOcorrencia.Unidade != null && entityOcorrencia.Unidade.Id > 0 ? _unidadeAplicacao.BuscarPorId(entityOcorrencia.Unidade.Id) ?? null : null; entityOcorrencia.Veiculo = entityOcorrencia.Veiculo != null && entityOcorrencia.Veiculo.Id > 0 ? _veiculoAplicacao.BuscarPorId(entityOcorrencia.Veiculo.Id) ?? null : null; _ocorrenciaAplicacao.SalvarDadosOcorrenciaComNotificacao(entityOcorrencia, usuarioLogadoCurrent); } }