private void btnIngresar_Click(object sender, RoutedEventArgs e) { try { if (cbxSucursal.SelectedValue != null) { if (cbxVehiculo.SelectedValue != null) { if (cbxEmpleadoRecepcion.SelectedValue != null) { if (cbxCliente.SelectedValue != null) { RequerimientoNEG requerimientoNEG = new RequerimientoNEG(); int sucursal = int.Parse(cbxSucursal.SelectedValue.ToString()); int empleado = int.Parse(cbxEmpleadoRecepcion.SelectedValue.ToString()); int cliente = int.Parse(cbxCliente.SelectedValue.ToString()); int vehiculo = int.Parse(cbxVehiculo.SelectedValue.ToString()); string observacion = txtObservacion.Text; DataTable tablaProductos = ((DataView)dgProductos.ItemsSource).ToTable(); DataTable tablaServicios = ((DataView)dgServicios.ItemsSource).ToTable(); string respuesta = requerimientoNEG.CrearRequerimiento(sucursal, empleado, cliente, vehiculo, observacion, tablaProductos, tablaServicios); if (respuesta == "creado") { RequerimeintoDAL req = new RequerimeintoDAL(); RESERVA_HORA obj = req.ObtenerUltimo(); lblidOrdentrabajo.Content = obj.ID; btnExportar.IsEnabled = true; MessageBox.Show("La orden de trabajo ha sido ingresada correctamente. Se habilito la descarga del comprobante"); } else { MessageBox.Show(respuesta); } } else { MessageBox.Show("Debe seleccionar un cliente"); } } else { MessageBox.Show("Debe seleccionar un empleado"); } } else { MessageBox.Show("Debe seleccionar una moneda"); } } else { MessageBox.Show("Debe seleccionar una sucursal"); } } catch (Exception ex) { MessageBox.Show("Error:\n" + ex.TargetSite + "\n" + ex.Message.ToString()); } }
public string CrearRequerimiento(int sucursal, int empleado, int cliente, int vehiculo, string observacion, DataTable tablaProductos, DataTable tablaServicios) { try { if (sucursal > -1) { if (empleado > -1) { if (cliente > -1) { if (vehiculo > -1) { if (tablaServicios.Rows.Count > 0) { RESERVA_HORA reserva = new RESERVA_HORA(); DIAGNOSTICO diagnostico = new DIAGNOSTICO(); List <SERVICIOS_X_DIAGNOSTICO> serviciosDiagnostico = new List <SERVICIOS_X_DIAGNOSTICO>(); List <PRODUCTOS_X_DIAGNOSTICO> productosDiagnostico = new List <PRODUCTOS_X_DIAGNOSTICO>(); RequerimeintoDAL requerimeintoDAL = new RequerimeintoDAL(); reserva.FECHA_CREACION = DateTime.Now; reserva.FECHA_ULTIMO_UPDATE = DateTime.Now; reserva.CLIENTE_ID = cliente; reserva.EMPLEADO_ID = empleado; reserva.ESTADO_RESERVA_ID = 1; reserva.SUCURSAL_ID = sucursal; reserva.TIPO_RESERVA_ID = 1; reserva.VEHICULO_ID = vehiculo; reserva.ORSERVACION_FINAL = observacion; reserva.FECHA_RESERVA = reserva.FECHA_CREACION; decimal montoTotal = 0; foreach (DataRow fila in tablaProductos.Rows) { PRODUCTOS_X_DIAGNOSTICO detalle = new PRODUCTOS_X_DIAGNOSTICO(); detalle.ID_PRODUCTO = int.Parse(fila.ItemArray[0].ToString()); detalle.CANTIDAD_PROD = int.Parse(fila.ItemArray[2].ToString()); productosDiagnostico.Add(detalle); montoTotal = montoTotal + Decimal.Parse(fila.ItemArray[4].ToString()); } foreach (DataRow fila in tablaServicios.Rows) { SERVICIOS_X_DIAGNOSTICO detalle = new SERVICIOS_X_DIAGNOSTICO(); detalle.ID_SERVICIO = int.Parse(fila.ItemArray[0].ToString()); detalle.ID_ESTADO = 1; serviciosDiagnostico.Add(detalle); montoTotal = montoTotal + Decimal.Parse(fila.ItemArray[3].ToString()); } diagnostico.FECHA_CREACION = DateTime.Now; diagnostico.FECHA_ULTIMO_UPDATE = DateTime.Now; diagnostico.SUCURSAL_ID = sucursal; diagnostico.VALOR_FINAL = montoTotal; diagnostico.ESTADO_DIAGNOSTICO = "RESERVADO"; return(requerimeintoDAL.CrearRequerimiento(reserva, serviciosDiagnostico, productosDiagnostico, diagnostico)); } else { return("Debe agregar servicios a la orden de trabajo"); } } else { return("Debe indicar una vehiculo"); } } else { return("Debe indicar un cliente"); } } else { return("Debe indicar un empleado"); } } else { return("Debe indicar una sucursal"); } } catch (Exception ex) { throw ex; } }
public string ActualizarRequerimiento(ReservaVIEW cargaReservaVIEW, DataTable tablaServicios, DataTable tablaProductos) { try { if (tablaServicios.Rows.Count > 0) { RESERVA_HORA reserva = new RESERVA_HORA(); DIAGNOSTICO diagnostico = new DIAGNOSTICO(); List <SERVICIOS_X_DIAGNOSTICO> serviciosDiagnostico = new List <SERVICIOS_X_DIAGNOSTICO>(); List <PRODUCTOS_X_DIAGNOSTICO> productosDiagnostico = new List <PRODUCTOS_X_DIAGNOSTICO>(); RequerimeintoDAL requerimeintoDAL = new RequerimeintoDAL(); reserva.ID = cargaReservaVIEW.ID; reserva.FECHA_ULTIMO_UPDATE = cargaReservaVIEW.FECHA_ULTIMO_UPDATE; reserva.ORSERVACION_FINAL = cargaReservaVIEW.ORSERVACION_FINAL; decimal montoTotal = 0; foreach (DataRow fila in tablaProductos.Rows) { PRODUCTOS_X_DIAGNOSTICO detalle = new PRODUCTOS_X_DIAGNOSTICO(); detalle.ID_DIAGNOSTICO = cargaReservaVIEW.ID_DIAGNOTICO; detalle.ID_PRODUCTO = int.Parse(fila.ItemArray[0].ToString()); detalle.CANTIDAD_PROD = int.Parse(fila.ItemArray[2].ToString()); productosDiagnostico.Add(detalle); montoTotal = montoTotal + Decimal.Parse(fila.ItemArray[4].ToString()); } foreach (DataRow fila in tablaServicios.Rows) { SERVICIOS_X_DIAGNOSTICO detalle = new SERVICIOS_X_DIAGNOSTICO(); detalle.ID_SERVICIO = int.Parse(fila.ItemArray[0].ToString()); detalle.ID_DIAGNOSTICO = cargaReservaVIEW.ID_DIAGNOTICO; string estado = fila.ItemArray[2].ToString(); if (estado == "ANALIZANDO") { detalle.ID_ESTADO = 1; diagnostico.ESTADO_DIAGNOSTICO = "INICIADO"; } if (estado == "EN PROCESO") { detalle.ID_ESTADO = 2; diagnostico.ESTADO_DIAGNOSTICO = "INICIADO"; } if (estado == "COMPLETADO") { detalle.ID_ESTADO = 3; } serviciosDiagnostico.Add(detalle); montoTotal = montoTotal + Decimal.Parse(fila.ItemArray[3].ToString()); } diagnostico.ID = cargaReservaVIEW.ID_DIAGNOTICO; diagnostico.FECHA_ULTIMO_UPDATE = DateTime.Now; diagnostico.VALOR_FINAL = montoTotal; return(requerimeintoDAL.ActualizarRequerimiento(reserva, serviciosDiagnostico, productosDiagnostico, diagnostico)); } else { return("La tabla de servicios no puede estar vacia"); } } catch (Exception ex) { throw ex; } }