public ActionResult CrearEditarGasto(CompraServicioViewModel viewModel, IList <ComprasDetalleServicioViewModel> model2, int estado) { try { if (viewModel.Id != 0 || model2.Count() > 0) { var compra = service.GetCompraByDocumento(viewModel.NumeroDocumento, viewModel.TipoDocumento, viewModel.IdProveedor); if (compra == null || compra.Id == viewModel.Id) { long idCD = 0; if (estado == 1) { if (viewModel.ComprasDetalleServicio != null && viewModel.ComprasDetalleServicio.Count() > 0 && model2.Count() == 0) { var c = map.UpdateGasto(viewModel); var cd = map.CreateCDS(viewModel); idCD = cd.IdCompraDetalle; } } var G = map.UpdateGasto(viewModel); if (estado == 2) { if (model2.Count() > 0) { viewModel.ComprasDetalleServicio = model2; var cds = map.UpdateCDS(viewModel); } } return(Json(new { success = true, idCD = idCD })); } else { return(Json(new { success = false })); } } else { if (!service.ExisteDocumento(viewModel.NumeroDocumento, viewModel.TipoDocumento, (int)viewModel.IdProveedor)) { viewModel.IdUsuario = int.Parse(User.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier)?.Value); var compra = map.CreateGasto(viewModel); return(Json(new { success = true, idCompra = compra.Id })); } else { return(Json(new { success = false })); } } } catch (Exception ex) { AltivaLog.Log.Insertar(ex.ToString(), "Error"); throw; } }
public ActionResult CambiarEstadoBorradorGasto(CompraServicioViewModel viewModel) { try { var compraBD = service.GetCompraByDocumento(viewModel.NumeroDocumento, viewModel.TipoDocumento, viewModel.IdProveedor); if (compraBD == null || compraBD.Id == viewModel.Id) { viewModel.Borrador = false; var compra = map.UpdateGasto(viewModel); return(Json(new { success = true })); } else { return(Json(new { succes = false })); } } catch (Exception ex) { AltivaLog.Log.Insertar(ex.ToString(), "Error"); return(BadRequest()); } }