private static void quickSort(Multas[] vetor, int inicio, int fim) { if (inicio < fim) { Multas p = vetor[inicio]; int i = inicio + 1; int f = fim; while (i <= f) { if (vetor[i].dataEmissao <= p.dataEmissao) { i++; } else if (p.dataEmissao < vetor[f].dataEmissao) { f--; } else { Multas troca = vetor[i]; vetor[i] = vetor[f]; vetor[f] = troca; i++; f--; } } vetor[inicio] = vetor[f]; vetor[f] = p; quickSort(vetor, inicio, f - 1); quickSort(vetor, f + 1, fim); } }
protected void btnActualizarobservacion_Click(object sender, EventArgs e) { try { if (txtObservacion.Enabled == false) { lblMensa.Text = "No solo se puede enviar observacion una vez"; } else { DetalleGastosComunes detgas = new DetalleGastosComunes(); detgas.IdPago = decimal.Parse(ddlGasto.Text); detgas.Observacion = txtObservacion.Text; detgas.Update(); MultasCollection multa = new MultasCollection(); if (multa.MultasCountResidente() != 0) { Multas multas = new Multas(); detgas.IdPago = decimal.Parse(ddlGasto.Text); multas.Observacion = txtObservacion.Text; multas.Update(); txtObservacion.Text = ""; } lblMensa.Text = "Observacion ingresada Correctamente"; } } catch (Exception) { lblMensa.Text = "Error al ingresar la observacion"; } }
protected DataSet obtenerMultas() { int id = Int32.Parse(Session["id"].ToString()); Multas datos = new Multas(); DAMultas dMultas = new DAMultas(); DataTable resultado = dMultas.TraerMultas(id); DataTable data = new DataTable(); data = datos._Multas; DataRow fila; for (int i = 0; i < resultado.Rows.Count; i++) { fila = data.NewRow(); fila["Id"] = Int32.Parse(resultado.Rows[i]["id"].ToString()); fila["Fecha"] = DateTime.Parse(resultado.Rows[i]["fecha"].ToString()); fila["Nombre del usuario"] = resultado.Rows[i]["nombre_usuario"].ToString(); fila["Nombre del elemento"] = resultado.Rows[i]["nombre_elemento"].ToString(); fila["Username del usuario"] = resultado.Rows[i]["nickname"].ToString(); fila["Valor"] = resultado.Rows[i]["valor"].ToString(); fila["Dias de mora"] = resultado.Rows[i]["dias_mora"].ToString(); data.Rows.Add(fila); } return(datos); }
private void LoadList() { try { List <dynamic> ListaGravidades = Listas.MultasGravidades; List <dynamic> ListaStatus = Listas.MultasStatus; Multas multas = new Multas(); multas.GetAll(); ListaDados = multas.Results; gridDados.Rows.Clear(); foreach (dynamic multa in ListaDados) { string gravidade = ListaGravidades.Find(find => Convert.ToInt32(find.Value) == Convert.ToInt32(multa.Gravidade)).Text; string status = ListaStatus.Find(find => Convert.ToInt32(find.Value) == Convert.ToInt32(multa.Status)).Text; gridDados.Rows.Add( multa.Id, multa.DataOcorrencia, multa.Placa.ToString().ToUpper(), multa.Motorista, multa.Descricao, gravidade, multa.Valor, multa.DataVencimento, status ); } } catch (Exception e) { MessageBox.Show("Houver um erro ao carregar a lista. (" + e.Message + ")"); } }
private void OnSelectExcluir(object sender, EventArgs e) { try { if (mouseLocation.RowIndex >= 0) { int Id = Convert.ToInt32(gridDados.Rows[mouseLocation.RowIndex].Cells[0].Value); DialogResult Excluir = MessageBox.Show("Tem certeza que excluir esta Multa?", "Excluir Multa", MessageBoxButtons.YesNo); if (Excluir == DialogResult.Yes) { Multas multas = new Multas(); multas.Id = Id; multas.Delete(); if (multas.Success) { MessageBox.Show(multas.Message); LoadList(); } else { throw new Exception("Houver um erro ao excluir a multa. (" + multas.Message + ")"); } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public async Task <IActionResult> Edit(int id, [Bind("IdMulta,IdMunicipalidad,Descripcion,IdPlaca,Idnit")] Multas multas) { if (id != multas.IdMulta) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(multas); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MultasExists(multas.IdMulta)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(multas)); }
public ActionResult Create(MultaFormModel model) { if (ModelState.IsValid) { var multa = new Multas { Infracao = model.Infracao, LocalDaMulta = model.LocalDaMulta, // Os seguintes campos são nullable. // Temos que usar '.Value' para obter o valor, // senão dá erro // (Ex: cannot convert int? to int) DataDaMulta = model.DataDaMulta.Value, ValorMulta = model.ValorMulta.Value, AgenteFK = model.AgenteFK.Value, CondutorFK = model.CondutorFK.Value, ViaturaFK = model.ViaturaFK.Value }; db.Multas.Add(multa); db.SaveChanges(); return(RedirectToAction("Index")); } // Se obtermos um erro, teremos que reinicializar as nossas dropdowns. PreencherDropDownsComDadosBd(model); return(View(model)); }
public ActionResult DeleteConfirmed(int id) { Multas multas = db.Multas.Find(id); db.Multas.Remove(multas); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "IdMultas,Anio,SalarioMinVigentRegionC,SalarioMinVigentRegionB,MontoEquivDiasSalario")] Multas multas) { if (ModelState.IsValid) { db.Entry(multas).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(multas)); }
public async Task <IActionResult> Create([Bind("IdMulta,IdMunicipalidad,Descripcion,IdPlaca,Idnit")] Multas multas) { if (ModelState.IsValid) { _context.Add(multas); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(multas)); }
public ActionResult Create([Bind(Include = "IdMultas,Anio,SalarioMinVigentRegionC,SalarioMinVigentRegionB,MontoEquivDiasSalario")] Multas multas) { if (ModelState.IsValid) { db.Multas.Add(multas); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(multas)); }
public ActionResult Adicionar(Multas multa) { try { new MultasDao().DbAdd(multa); return(RedirectToAction("Index", "Veiculos")); } catch { return(View()); } }
public ActionResult Editar(Multas multa) { try { new MultasDao().DbUpdate(multa); return(RedirectToAction("Index", "Veiculos")); } catch { return(View()); } }
public ActionResult Edit([Bind(Include = "ID,Infracao,LocalDaMulta,ValorMulta,DataDaMulta,AgenteFK,CondutorFK,ViaturaFK")] Multas multas) { if (ModelState.IsValid) { db.Entry(multas).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.AgenteFK = new SelectList(db.Agentes, "ID", "Nome", multas.AgenteFK); ViewBag.CondutorFK = new SelectList(db.Condutores, "ID", "Nome", multas.CondutorFK); ViewBag.ViaturaFK = new SelectList(db.Viaturas, "ID", "Matricula", multas.ViaturaFK); return(View(multas)); }
public ActionResult Deletar(Multas multa) { try { new MultasDao().DeleteRegistro(multa); return(RedirectToAction("Index", "Veiculos")); } catch { return(View()); } }
public MultaFormModel(Multas multas) { this.ID = multas.ID; this.AgenteFK = multas.AgenteFK; this.CondutorFK = multas.CondutorFK; this.ViaturaFK = multas.ViaturaFK; this.DataDaMulta = multas.DataDaMulta; this.Infracao = multas.Infracao; this.LocalDaMulta = multas.LocalDaMulta; this.ValorMulta = multas.ValorMulta; }
// GET: Multas/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Multas multas = db.Multas.Find(id); if (multas == null) { return(HttpNotFound()); } return(View(multas)); }
// GET: Multas/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Multas multas = db.Multas.Find(id); if (multas == null) { return(HttpNotFound()); } ViewBag.AgenteFK = new SelectList(db.Agentes, "ID", "Nome", multas.AgenteFK); ViewBag.CondutorFK = new SelectList(db.Condutores, "ID", "Nome", multas.CondutorFK); ViewBag.ViaturaFK = new SelectList(db.Viaturas, "ID", "Matricula", multas.ViaturaFK); return(View(multas)); }
public List <Multas> mListarPlacas(string placa, string maxRows, string pagina, string colNombre, string colOrden) { ArrayList paramrs = new ArrayList(); SqlParameter sqlparametro = new SqlParameter("@placa", SqlDbType.NVarChar, 20); sqlparametro.Value = placa; paramrs.Add(sqlparametro); sqlparametro = new SqlParameter("@inMaxRows", SqlDbType.NVarChar, 20); sqlparametro.Value = maxRows; paramrs.Add(sqlparametro); sqlparametro = new SqlParameter("@inPagina", SqlDbType.NVarChar, 20); sqlparametro.Value = pagina; paramrs.Add(sqlparametro); sqlparametro = new SqlParameter("@colNombre", SqlDbType.NVarChar, 128); sqlparametro.Value = colNombre; paramrs.Add(sqlparametro); sqlparametro = new SqlParameter("@colOrden", SqlDbType.NVarChar, 10); sqlparametro.Value = colOrden; paramrs.Add(sqlparametro); DataTable dt = conexion.EjecutarProcedure("usp_ConsultarPlacasMultas", paramrs); Multas OMultas = new Multas(); List <Multas> lstmultas = new List <Multas>(); foreach (DataRow rw in dt.Rows) { OMultas = new Multas(); OMultas.placa = rw[0].ToString(); OMultas.falta = rw[1].ToString(); OMultas.fecfraccion = rw[2].ToString(); OMultas.importe = rw[3].ToString(); OMultas.estado = rw[4].ToString(); OMultas.paginas = rw[5].ToString(); lstmultas.Add(OMultas); } return(lstmultas); }
// GET: Multas/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Multas multas = db.Multas.Find(id); if (multas == null) { return(HttpNotFound()); } // Fiz um construtor que recebe uma multa, para "limpar" // o código do controller um bocadinho... var model = new MultaFormModel(multas); PreencherDropDownsComDadosBd(model); return(View(multas)); }
private void PreencherDados() { try { Multas multas = new Multas(); multas.Id = Id; multas.Get(); dynamic multa = multas.Results[0]; combVeiculo.SelectedValue = Convert.ToInt32(multa.Veiculo); combMotorista.SelectedValue = (Convert.ToString(multa.Motorista) != string.Empty ? Convert.ToInt32(multa.Motorista) : ""); combGravidade.SelectedValue = Convert.ToInt32(multa.Gravidade); combStatus.SelectedValue = Convert.ToInt32(multa.Status); timeDataOcorrencia.Text = multa.DataOcorrencia; timeDataNotificacao.Text = multa.DataNotificacao; timeDataVencimento.Text = multa.DataVencimento; textValor.Text = Converter.ToReais(multa.Valor); textDescricao.Text = multa.Descricao; textLocal.Text = multa.Local; } catch (Exception e) { MessageBox.Show("Não foi possivel Preencher os dados. (" + e.Message + ")"); } }
public async void mtdRealizarMultaAutomatica() { var scope = scopeFactory.CreateScope(); var dbContext = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>(); int intIdMulta = 0; //String responseString = await client.GetStringAsync(UrlFecha); //dynamic fecha = JsonConvert.DeserializeObject<dynamic>(responseString); //string strFecha = fecha.resultado.ToString(); //DateTime time = DateTime.Now; ParametrosController par = new ParametrosController(context); ActionResult <DateTime> time = par.mtdObtenerFechaMexico(); var movimientos = await dbContext.tbmovimientos.Where(x => x.dtm_hora_fin.Date == time.Value.Date && x.bit_status == true).ToListAsync(); if (movimientos.Count != 0) { foreach (var item in movimientos) { if (item.str_comentarios == "APARCADO" || item.str_comentarios.Contains("EXTENSIÓN DE TIEMPO")) { if (time.Value == item.dtm_hora_fin || time.Value > item.dtm_hora_fin) { if (item.int_id_espacio == null) { var strategy = dbContext.Database.CreateExecutionStrategy(); await strategy.ExecuteAsync(async() => { using (IDbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { var multa = new Multas() { created_by = "Api Automatica", bit_status = true, dtm_fecha = time.Value, flt_monto = 0.0, str_motivo = "Tiempo vencido", str_tipo_multa = "MULTA AUTOMATICA", str_documento_garantia = "SIN GARANTÍA", str_folio_multa = "N/A", str_placa = item.str_placa, str_clave_candado = "N/A", //Falta modelo //Falta marca str_id_agente_id = "3766f6fd-ebd5-4ad9-a27c-80255557d959", int_id_movimiento_id = item.id, //int_id_saldo_id = item.int_id_saldo_id, int_id_vehiculo_id = item.int_id_vehiculo_id, intidconcesion_id = item.intidconcesion_id }; dbContext.tbmultas.Add(multa); dbContext.SaveChanges(); intIdMulta = multa.id; var response = await dbContext.tbmovimientos.FirstOrDefaultAsync(x => x.id == item.id); response.str_comentarios = "MULTA"; response.boolean_multa = true; response.int_id_multa = intIdMulta; dbContext.SaveChanges(); var usuario = await dbContext.NetUsers.FirstOrDefaultAsync(x => x.Id == item.int_id_usuario_id); dbContext.tbdetallemulta.Add(new DetalleMulta() { int_id_multa = intIdMulta, bit_status = true, dtmFecha = time.Value, str_usuario = usuario.strNombre + " " + usuario.strApellidos, flt_monto = 0, str_comentarios = "MULTA AUTOMÁTICA" }); dbContext.SaveChanges(); var espacio = await dbContext.tbespacios.FirstOrDefaultAsync(x => x.id == item.int_id_espacio); dbContext.tbdetallemovimientos.Add(new DetalleMovimientos() { int_idmovimiento = item.id, int_id_usuario_id = response.int_id_usuario_id, int_duracion = 0, dtm_horaInicio = time.Value, dtm_horaFin = time.Value, flt_importe = 0.0, flt_saldo_anterior = 0.0, flt_saldo_fin = 0.0, str_observaciones = response.str_comentarios }); dbContext.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } }); } else { var strategy = dbContext.Database.CreateExecutionStrategy(); await strategy.ExecuteAsync(async() => { using (IDbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { var multa = new Multas() { created_by = "Api Automatica", bit_status = true, dtm_fecha = time.Value, flt_monto = 0.0, str_motivo = "Tiempo vencido", str_tipo_multa = "MULTA AUTOMATICA", str_documento_garantia = "SIN GARANTÍA", str_folio_multa = "N/A", str_placa = item.str_placa, str_clave_candado = "N/A", //Falta modelo //Falta marca str_id_agente_id = "98f5553e-5fd9-4ade-bd51-66d6dc2fa9d3", int_id_movimiento_id = item.id, //int_id_saldo_id = item.int_id_saldo_id, int_id_vehiculo_id = item.int_id_vehiculo_id, intidconcesion_id = item.intidconcesion_id }; dbContext.tbmultas.Add(multa); dbContext.SaveChanges(); intIdMulta = multa.id; var response = await dbContext.tbmovimientos.FirstOrDefaultAsync(x => x.id == item.id); response.str_comentarios = "MULTA"; response.boolean_multa = true; response.int_id_multa = intIdMulta; dbContext.SaveChanges(); var usuario = await dbContext.NetUsers.FirstOrDefaultAsync(x => x.Id == item.int_id_usuario_id); dbContext.tbdetallemulta.Add(new DetalleMulta() { int_id_multa = intIdMulta, bit_status = true, dtmFecha = time.Value, str_usuario = usuario.strNombre + " " + usuario.strApellidos, flt_monto = 0, str_comentarios = "MULTA AUTOMÁTICA" }); dbContext.SaveChanges(); var espacio = await dbContext.tbespacios.FirstOrDefaultAsync(x => x.id == item.int_id_espacio); dbContext.tbdetallemovimientos.Add(new DetalleMovimientos() { int_idmovimiento = item.id, int_idespacio = response.int_id_espacio.Value, int_id_usuario_id = response.int_id_usuario_id, int_id_zona = espacio.id_zona, int_duracion = 0, dtm_horaInicio = time.Value, dtm_horaFin = time.Value, flt_importe = 0.0, flt_saldo_anterior = 0.0, flt_saldo_fin = 0.0, str_observaciones = response.str_comentarios }); dbContext.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } }); } } } } } }
public void adicionarMulta(string nova_multa) { Multas.Add(nova_multa); }
private void OnEnviar(object sender, EventArgs e) { try { Validate Validate = new Validate(this, ErrorProvider); Validate.AddRule(combVeiculo, "Veiculo", "required|numeric|max:11"); Validate.AddRule(combMotorista, "Motorista", "numeric|max:11"); Validate.AddRule(combGravidade, "Gravidade", "required|numeric|exact:1"); Validate.AddRule(combStatus, "Status", "required|numeric|exact:1"); Validate.AddRule(timeDataOcorrencia, "Data Ocorrencia", "required|date:dd/MM/yyyy"); Validate.AddRule(timeDataNotificacao, "Data Notificacao", "date:dd/MM/yyyy"); Validate.AddRule(timeDataVencimento, "Data Vencimento", "date:dd/MM/yyyy"); Validate.AddRule(textValor, "Valor", "reais|max:11"); Validate.AddRule(textDescricao, "Descrição da Infração", "max:500"); Validate.AddRule(textLocal, "Local da Infração", "max:500"); Validate.Validation(); if (Validate.IsValid()) { Multas multas = new Multas(); multas.Veiculo = combVeiculo.SelectedValue; multas.Motorista = combMotorista.SelectedValue; multas.Gravidade = combGravidade.SelectedValue; multas.Status = combStatus.SelectedValue; multas.DataOcorrencia = timeDataOcorrencia.Text; multas.DataNotificacao = timeDataNotificacao.Text; multas.DataVencimento = timeDataVencimento.Text; multas.Valor = Converter.ToDecimal(textValor.Text, true); multas.Descricao = textDescricao.Text; multas.Local = textLocal.Text; if (Id > 0) { multas.Id = Convert.ToInt32(Id); multas.Update(); } else { multas.Create(); } if (multas.Success) { DialogResult SuccessBox = MessageBox.Show(multas.Message, "CADASTRADO"); if (SuccessBox == DialogResult.OK) { if (fmPrincipal != null) { fmPrincipal.AtivarForm(new TMSForms.List.FormMultas(fmPrincipal)); } else { Close(); } } } else { MessageBox.Show("Houver um erro ao salvar a multas (" + multas.Message + ")"); } } else { Validate.ErrorProviderShow(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public async Task mtdRealizarMultaAutomatica() { var scope = scopeFactory.CreateScope(); var dbContext = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>(); int intIdMulta = 0; ParametrosController par = new ParametrosController(dbContext); ActionResult <DateTime> time1 = par.mtdObtenerFechaMexico(); DateTime time = time1.Value; // DateTime time = DateTime.Now; var movimientos = await dbContext.tbmovimientos.Where(x => x.dtm_hora_fin.Date == time.Date && x.bit_status == true).ToListAsync(); var tipoUsuario = await dbContext.tbtiposusuarios.FirstOrDefaultAsync(x => x.strTipoUsuario == "AGENTE VIAL"); var agente = await dbContext.NetUsers.FirstOrDefaultAsync(x => x.intIdTipoUsuario == tipoUsuario.id); if (movimientos.Count != 0) { foreach (var item in movimientos) { if (item.str_comentarios == "APARCADO" || item.str_comentarios.Contains("EXTENSIÓN DE TIEMPO")) { if (time == item.dtm_hora_fin || time > item.dtm_hora_fin) { if (item.int_id_espacio == null) { var vehiculo = await dbContext.tbvehiculos.FirstOrDefaultAsync(x => x.id == item.int_id_vehiculo_id); var strategy = dbContext.Database.CreateExecutionStrategy(); await strategy.ExecuteAsync(async() => { using (IDbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { var multa = new Multas() { created_by = "Api Automatica", bit_status = true, dtm_fecha = time, flt_monto = 0.00, str_motivo = "Tiempo vencido", str_tipo_multa = "MULTA AUTOMATICA", str_documento_garantia = "SIN GARANTÍA", str_folio_multa = "N/A", str_placa = item.str_placa, str_clave_candado = "N/A", str_modelo = vehiculo.str_modelo, str_marca = vehiculo.str_marca, str_color = vehiculo.str_color, str_id_agente_id = agente.Id, int_id_movimiento_id = item.id, //int_id_saldo_id = item.int_id_saldo_id, int_id_vehiculo_id = item.int_id_vehiculo_id, intidconcesion_id = item.intidconcesion_id }; dbContext.tbmultas.Add(multa); dbContext.SaveChanges(); intIdMulta = multa.id; var response = await dbContext.tbmovimientos.FirstOrDefaultAsync(x => x.id == item.id); response.str_comentarios = "MULTA"; response.boolean_multa = true; response.int_id_multa = intIdMulta; dbContext.SaveChanges(); var usuario = await dbContext.NetUsers.FirstOrDefaultAsync(x => x.Id == item.int_id_usuario_id); dbContext.tbdetallemulta.Add(new DetalleMulta() { int_id_multa = intIdMulta, bit_status = true, dtmFecha = time, str_usuario = usuario.strNombre + " " + usuario.strApellidos, flt_monto = 0, str_comentarios = "MULTA AUTOMÁTICA" }); dbContext.SaveChanges(); var espacio = await dbContext.tbespacios.FirstOrDefaultAsync(x => x.id == item.int_id_espacio); dbContext.tbdetallemovimientos.Add(new DetalleMovimientos() { int_idmovimiento = item.id, int_id_usuario_id = response.int_id_usuario_id, int_duracion = 0, dtm_horaInicio = time, dtm_horaFin = time, flt_importe = 0.00, flt_saldo_anterior = 0.00, flt_saldo_fin = 0.00, str_observaciones = response.str_comentarios }); dbContext.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } }); } else { var strategy = dbContext.Database.CreateExecutionStrategy(); await strategy.ExecuteAsync(async() => { var vehiculo = await dbContext.tbvehiculos.FirstOrDefaultAsync(x => x.id == item.int_id_vehiculo_id); using (IDbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { var multa = new Multas() { created_by = "Api Automatica", bit_status = true, dtm_fecha = time, flt_monto = 0.00, str_motivo = "Tiempo vencido", str_tipo_multa = "MULTA AUTOMATICA", str_documento_garantia = "SIN GARANTÍA", str_folio_multa = "N/A", str_placa = item.str_placa, str_clave_candado = "N/A", str_modelo = vehiculo.str_modelo, str_marca = vehiculo.str_marca, str_color = vehiculo.str_color, str_id_agente_id = agente.Id, int_id_movimiento_id = item.id, //int_id_saldo_id = item.int_id_saldo_id, int_id_vehiculo_id = item.int_id_vehiculo_id, intidconcesion_id = item.intidconcesion_id }; dbContext.tbmultas.Add(multa); dbContext.SaveChanges(); intIdMulta = multa.id; var response = await dbContext.tbmovimientos.FirstOrDefaultAsync(x => x.id == item.id); response.str_comentarios = "MULTA"; response.boolean_multa = true; response.int_id_multa = intIdMulta; dbContext.SaveChanges(); var usuario = await dbContext.NetUsers.FirstOrDefaultAsync(x => x.Id == item.int_id_usuario_id); dbContext.tbdetallemulta.Add(new DetalleMulta() { int_id_multa = intIdMulta, bit_status = true, dtmFecha = time, str_usuario = usuario.strNombre + " " + usuario.strApellidos, flt_monto = 0.00, str_comentarios = "MULTA AUTOMÁTICA" }); dbContext.SaveChanges(); var espacio = await dbContext.tbespacios.FirstOrDefaultAsync(x => x.id == item.int_id_espacio); dbContext.tbdetallemovimientos.Add(new DetalleMovimientos() { int_idmovimiento = item.id, int_idespacio = response.int_id_espacio.Value, int_id_usuario_id = response.int_id_usuario_id, int_id_zona = espacio.id_zona, int_duracion = 0, dtm_horaInicio = time, dtm_horaFin = time, flt_importe = 0.00, flt_saldo_anterior = 0.00, flt_saldo_fin = 0.00, str_observaciones = response.str_comentarios }); dbContext.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } }); } } } } } }