public IActionResult FormUpdateOrdemServico(OrdemServicoViewModel entrada) { OrdemServico modelo = new OrdemServico(); entrada.contexto = this.contexto; try { if (OrdemServicoRules.OrdemServicoUpdate(entrada, out modelo)) { OrdemServicoRules.CalculoOrdem(ref modelo, servicoOrdemData, produtoOrdemData); ordemServicoData.Update(modelo); //Se fechar o Ordem insere o faturamento if (entrada.ordemServico.statusOrdemServico == CustomEnumStatus.StatusOrdemServico.Fechado && entrada.ordemServico.condicaoPagamento == CustomEnum.codicaoPagamento.Avista) { FaturamentoRules.InsereFaturamento(modelo, contexto.idOrganizacao); } StatusMessage = "Registro Atualizado com Sucesso!"; return(RedirectToAction("FormUpdateOrdemServico", new { id = modelo.id.ToString() })); } } catch (Exception ex) { LogOsca log = new LogOsca(); log.GravaLog(1, 5, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormUpdateOrdemServico-post", ex.Message); } return(RedirectToAction("FormUpdateOrdemServico", new { id = modelo.id.ToString() })); }
public IActionResult FormUpdateAtendimento(AtendimentoViewModel entrada) { Atendimento modelo = new Atendimento(); entrada.contexto = this.contexto; try { if (AtendimentoRules.AtendimentoUpdate(entrada, out modelo)) { atendimentoData.Update(modelo); //Se fechar o Atendimento insere o faturamento if (entrada.atendimento.statusAtendimento == CustomEnumStatus.StatusAtendimento.atendido && entrada.atendimento.CondicaoPagamento == CustomEnum.codicaoPagamento.Avista) { FaturamentoRules.InsereFaturamento(modelo, contexto.idOrganizacao); } StatusMessage = "Registro Atualizado com Sucesso!"; return(RedirectToAction("FormUpdateAtendimento", new { id = modelo.id.ToString() })); } } catch (Exception ex) { LogOsca log = new LogOsca(); log.GravaLog(1, 3, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormUpdateAtendimento-post", ex.Message); } return(RedirectToAction("FormUpdateAtendimento", new { id = modelo.id.ToString() })); }
public IActionResult FormUpdatePedido(PedidoViewModel entrada) { Pedido pedido = new Pedido(); entrada.contexto = this.contexto; try { if (PedidoRules.PedidoUpdate(entrada, out pedido)) { PedidoRules.CalculoPedido(ref pedido, produtoPedidoData); pedidoData.Update(pedido); //Se fechar o Pedido insere o faturamento if (entrada.pedido.statusPedido == CustomEnumStatus.StatusPedido.Fechado && entrada.pedido.condicaoPagamento == CustomEnum.codicaoPagamento.Avista) { FaturamentoRules.InsereFaturamento(pedido, contexto.idOrganizacao); } StatusMessage = "Registro Atualizado com Sucesso!"; return(RedirectToAction("FormUpdatePedido", new { id = pedido.id.ToString() })); } } catch (Exception ex) { LogOsca log = new LogOsca(); log.GravaLog(1, 4, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormUpdatePedido-post", ex.Message); } return(View()); }
public IActionResult FormUpdateContasReceber(ContasReceberViewModel entrada) { ContasReceber modelo = new ContasReceber(); entrada.contexto = this.contexto; try { if (ContasReceberRules.ContasReceberUpdate(entrada, out modelo)) { if (entrada.contasReceber.statusContaReceber == CustomEnumStatus.StatusContaReceber.recebido) { //Valida se houve Pagamento total if (entrada.contasReceber.valorPago == entrada.contasReceber.valor) { if (ContasReceberRules.ValidaCalculoPagamento(ref modelo, pagamentoData)) { contasReceberData.Update(modelo); FaturamentoRules.InsereFaturamento((int)entrada.contasReceber.origemContaReceber, entrada.contasReceber.id, entrada.contasReceber.valor, this.contexto.idOrganizacao); } else { StatusMessage = "Valor Pago inconsistente, favor Atualizar Calculo"; } } else { StatusMessage = "Valor Pago inconsistente, favor verificar"; } } else { contasReceberData.Update(modelo); StatusMessage = "Registro Atualizado com Sucesso!"; } return(RedirectToAction("FormUpdateContasReceber", new { id = modelo.id.ToString() })); } } catch (Exception ex) { LogOsca log = new LogOsca(); log.GravaLog(1, 21, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormUpdateContasReceber-post", ex.Message); } return(RedirectToAction("FormUpdateContasReceber", new { id = modelo.id.ToString() })); }
public JsonResult GravarVenda(BalcaoVendas modelo, ProdutoBalcao[] produtosBalcao, Cliente cliente) { ResultServiceList retorno = new ResultServiceList(); BalcaoVendasViewModel entrada = new BalcaoVendasViewModel(); entrada.balcaoVendas = modelo; entrada.contexto = this.contexto; Guid idBalcaoVendas = new Guid(); try { if (cliente.id != Guid.Empty) { entrada.cliente = new Relacao(); entrada.cliente.id = cliente.id; } else { if (cliente.nomeCliente != null) { entrada.cliente = new Relacao(); entrada.cliente.id = ClienteRules.CreateClienteResumo(cliente, this.contexto, clienteData); } } idBalcaoVendas = BalcaoVendasRules.BalcaoVendasCreate(entrada, this.contexto, balcaoVendasData); if (BalcaoVendasRules.GravaProdutoBalcao(produtosBalcao, this.contexto, this.sqlGeneric, idBalcaoVendas)) { //Grava lançamento na tabela de faturamento entrada.balcaoVendas.id = idBalcaoVendas; //Grava Parcelas if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Prazo) { ContasReceberRules.GravaParcela(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig); } if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Avista) { //Grava Debito if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.CartaoDebito) { ContasReceberRules.GravaDebito(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig); } if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Dinheiro || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Online) { FaturamentoRules.InsereFaturamento(entrada.balcaoVendas, this.contexto.idOrganizacao); } if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Tranferencia || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Deposito || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Cheque) { FaturamentoRules.InsereFaturamento(entrada.balcaoVendas, this.contexto.idOrganizacao); } } if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Consignado) { ContasReceberRules.GravaConsignado(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig); } //Baixa Estoque ProdutoRules.BaixaProdutoBalcao(produtosBalcao, contexto, produtoData); retorno.id = idBalcaoVendas.ToString(); retorno.statusOperation = true; return(Json(retorno)); } } catch (Exception ex) { retorno.statusMensagem = ex.Message; } return(Json(retorno)); }