/// <summary> /// Método que se utiliza /// para eliminar una operación. /// </summary> /// <param name="poOperacion">cls_asignacionOperacion operación.</param> /// <returns>valor del resultado de la ejecución de la sentencia</returns> public static int deleteOperacion(cls_asignacionOperacion poOperacion) { int vi_resultado; try { String vs_comando = "PA_cont_operacionDelete"; cls_parameter[] vu_parametros = { new cls_parameter("@paramPK_operacion", poOperacion.pFK_Operacion.pPK_Codigo), new cls_parameter("@paramUsuario", poOperacion.pFK_Usuario) }; cls_sqlDatabase.beginTransaction(); vi_resultado = cls_sqlDatabase.executeNonQuery(vs_comando, true, vu_parametros); cls_interface.insertarTransacccionBitacora(cls_constantes.ELIMINAR, cls_constantes.OPERACION, poOperacion.pFK_Operacion.pPK_Codigo); cls_sqlDatabase.commitTransaction(); return vi_resultado; } catch (Exception po_exception) { cls_sqlDatabase.rollbackTransaction(); throw new Exception("Ocurrió un error al eliminar la operación.", po_exception); } }
/// <summary> /// Elimina una asiganción de una operación. /// </summary> /// <param name="poOperacion">cls_asignacionOperacion asignación a eliminar.</param> /// <returns>valor del resultado de la ejecución de la sentencia</returns> public static int deleteAsignacionOperacion(cls_asignacionOperacion poOperacion) { int vi_resultado; try { String vs_comando = "PA_cont_asignacionOperacionDelete"; cls_parameter[] vu_parametros = { new cls_parameter("@paramOperacion", poOperacion.pFK_Operacion.pPK_Codigo), new cls_parameter("@paramUsuario", poOperacion.pFK_Usuario) }; vi_resultado = cls_sqlDatabase.executeNonQuery(vs_comando, true, vu_parametros); cls_interface.insertarTransacccionBitacora(cls_constantes.ELIMINAR, cls_constantes.OPERACION_ASIGNACION, poOperacion.pFK_Operacion.pPK_Codigo + "/" + poOperacion.pFK_Usuario, poOperacion.pUsuarioTransaccion); return vi_resultado; } catch (Exception po_exception) { throw new Exception("Ocurrió un error al insertar la asignación de la operación.", po_exception); } }
/// <summary> /// Inserta una operación. /// </summary> /// <param name="poOperacion">cls_asignacionOperacion a insertar</param> /// <returns>valor del resultado de la ejecución de la sentencia</returns> public static int insertOperacion(cls_asignacionOperacion poOperacion) { int vi_resultado; try { String vs_comando = "PA_cont_operacionInsert"; if (poOperacion.pFK_Operacion.pFK_Proyecto == -1) { cls_parameter[] vu_parametros = { new cls_parameter("@paramTipo", poOperacion.pFK_Operacion.pTipo), new cls_parameter("@paramDescripcion", poOperacion.pFK_Operacion.pDescripcion), new cls_parameter("@paramUsuario", poOperacion.pFK_Usuario), new cls_parameter("@paramProyecto", DBNull.Value), new cls_parameter("@paramActivo", poOperacion.pFK_Operacion.pActivo ? 1 : 0), new cls_parameter("@param_PK_codigo", poOperacion.pFK_Operacion.pPK_Codigo,ParameterDirection.Output) }; cls_sqlDatabase.beginTransaction(); vi_resultado = cls_sqlDatabase.executeNonQuery(vs_comando, true, vu_parametros); } else { cls_parameter[] vu_parametros = { new cls_parameter("@paramTipo", poOperacion.pFK_Operacion.pTipo), new cls_parameter("@paramDescripcion", poOperacion.pFK_Operacion.pDescripcion), new cls_parameter("@paramUsuario", poOperacion.pFK_Usuario), new cls_parameter("@paramProyecto", poOperacion.pFK_Operacion.pFK_Proyecto), new cls_parameter("@paramActivo", poOperacion.pIsActivo), new cls_parameter("@param_PK_codigo", poOperacion.pFK_Operacion.pPK_Codigo) }; cls_sqlDatabase.beginTransaction(); vi_resultado = cls_sqlDatabase.executeNonQuery(vs_comando, true, vu_parametros); } poOperacion.pFK_Operacion.pPK_Codigo = obtenerUltimaOperacion(); cls_interface.insertarTransacccionBitacora(cls_constantes.INSERTAR, cls_constantes.OPERACION, poOperacion.pFK_Operacion.pPK_Codigo.ToString()); cls_sqlDatabase.commitTransaction(); return vi_resultado; } catch (Exception po_exception) { cls_sqlDatabase.rollbackTransaction(); throw new Exception("Ocurrió un error al insertar la operación.", po_exception); } }
/// <summary> /// Lista las asignaciones /// existentes de una operación /// </summary> /// <param name="poOperacion">cls_operacion operacion</param> /// <returns>List con las asignaciones existentes de una operación</returns> public static List<cls_asignacionOperacion> listarAsignacionesOperacion(cls_operacion poOperacion) { List<cls_asignacionOperacion> vo_lista = null; cls_asignacionOperacion voAsignacion = null; cls_usuario voUsuario = null; try { String vs_comando = "PA_cont_asignacionOperacion"; cls_parameter[] vu_parametros = { new cls_parameter("@paramOperacion", poOperacion.pPK_Codigo) }; DataSet vu_dataSet = cls_sqlDatabase.executeDataset(vs_comando, true, vu_parametros); vo_lista = new List<cls_asignacionOperacion>(); for (int i = 0; i < vu_dataSet.Tables[0].Rows.Count; i++) { voAsignacion = new cls_asignacionOperacion(); voAsignacion.pFK_Operacion = poOperacion; voAsignacion.pFK_Usuario = vu_dataSet.Tables[0].Rows[i]["PK_usuario"].ToString(); voUsuario = new cls_usuario(); voUsuario.pPK_usuario = voAsignacion.pFK_Usuario; voAsignacion.pUsuario = cls_gestorUsuario.seleccionarUsuario(voUsuario); vo_lista.Add(voAsignacion); } return vo_lista; } catch (Exception po_exception) { throw new Exception("Ocurrió un error al obtener el listado de los paquetes de manera filtrada.", po_exception); } }
/// <summary> /// Guarda la información se que se encuentra /// en el formulario Web, ya sea /// para ingresar o actualizarla /// </summary> /// <returns>Int valor devuelvo por el motor de bases de datos</returns> private int guardarDatos() { int vi_resultado = 1; cls_operacion vo_operacion = this.crearObjeto(); cls_asignacionOperacion vo_asignacion = null; try { vo_asignacion = new cls_asignacionOperacion(); vo_asignacion.pFK_Operacion = vo_operacion; vo_asignacion.pFK_Usuario = ((cls_usuario)(Session["cls_usuario"])).pPK_usuario; switch (cls_variablesSistema.tipoEstado) { case cls_constantes.AGREGAR: vi_resultado = cls_gestorOperacion.insertOperacion(vo_asignacion); break; case cls_constantes.EDITAR: vi_resultado = cls_gestorOperacion.updateOperacion(vo_operacion); break; default: break; } return vi_resultado; } catch (Exception po_exception) { throw new Exception("Ocurrió un error al guardar el registro.", po_exception); } }
/// <summary> /// Método que elimina un entregable /// </summary> /// <param name="po_paquete">Permiso a eliminar</param> private void eliminarDatos(cls_operacion po_operacion) { try { cls_asignacionOperacion vo_asignacion = new cls_asignacionOperacion(); vo_asignacion.pFK_Operacion = po_operacion; vo_asignacion.pFK_Usuario = ((cls_usuario)(Session["cls_usuario"])).pPK_usuario; cls_gestorOperacion.deleteOperacion(vo_asignacion); this.llenarGridView(); this.upd_Principal.Update(); } catch (Exception po_exception) { throw new Exception("Ocurrió un error eliminando la operación.", po_exception); } }
/// <summary> /// Generar las listas con asignaciones /// de eliminar y agregar en la asignacion masiva. /// </summary> /// <param name="poAsignacionesAgregar"></param> /// <param name="poAsignacionesEliminar"></param> private void generarDiferencias(out List<cls_asignacionOperacion> poAsignacionesAgregar, out List<cls_asignacionOperacion> poAsignacionesEliminar) { poAsignacionesAgregar = null; poAsignacionesEliminar = null; cls_operacion voOperacion = null; cls_asignacionOperacion voAsignacion = null; List<cls_asignacionOperacion> poAsignaciones = null; try { voOperacion = (cls_operacion)((CSLA.web.App_Variables.cls_variablesSistema)this.Session[CSLA.web.App_Constantes.cls_constantes.VARIABLES]).obj; poAsignaciones = new List<cls_asignacionOperacion>(); foreach (ListItem voItem in this.ltb_usuarioAsignados.Items) { voAsignacion = new cls_asignacionOperacion(); voAsignacion.pFK_Operacion = voOperacion; voAsignacion.pFK_Usuario = voItem.Value.ToString(); voAsignacion.pIsActivo = true; voAsignacion.pUsuarioTransaccion = ((cls_usuario)Session["cls_usuario"]).pPK_usuario; poAsignaciones.Add(voAsignacion); } poAsignacionesAgregar = new List<cls_asignacionOperacion>(); poAsignacionesEliminar = new List<cls_asignacionOperacion>(); foreach (cls_asignacionOperacion pOperacion in poAsignaciones) { if (!voOperacion.ListaAsignaciones.Exists(c => c.pFK_Usuario == pOperacion.pFK_Usuario)) { pOperacion.pUsuarioTransaccion = ((cls_usuario)Session["cls_usuario"]).pPK_usuario; poAsignacionesAgregar.Add(pOperacion); } } foreach (cls_asignacionOperacion pOperacion in voOperacion.ListaAsignaciones) { if (!poAsignaciones.Exists(c => c.pFK_Usuario == pOperacion.pFK_Usuario)) { pOperacion.pUsuarioTransaccion = ((cls_usuario)Session["cls_usuario"]).pPK_usuario; poAsignacionesEliminar.Add(pOperacion); } } } catch (Exception po_exception) { throw po_exception; } }
/// <summary> /// Carga un registro de tipo operación. /// </summary> /// <param name="ps_actividad">String código</param> /// <param name="ps_proyecto">String proyecto.</param> /// <param name="ps_registro">String registro</param> /// <param name="ps_fecha">String fecha.</param> private void cargarOperacion(string ps_actividad, string ps_proyecto, string ps_registro, string ps_fecha) { cls_registroOperacion vo_registro; cls_operacion vo_operacion; cls_asignacionOperacion vo_asignacion; try { vo_registro = new cls_registroOperacion(); vo_operacion = new cls_operacion(); vo_operacion.pPK_Codigo = ps_actividad; vo_operacion = cls_gestorOperacion.seleccionarOperacion(vo_operacion); vo_operacion.pFK_Proyecto = Convert.ToInt32(ps_proyecto); vo_asignacion = new cls_asignacionOperacion(); vo_asignacion.pFK_Operacion = vo_operacion; vo_asignacion.pFK_Usuario = cls_interface.vs_usuarioActual; vo_registro = new cls_registroOperacion(); vo_registro.pFK_Asignacion = vo_asignacion; vo_registro.pFecha = Convert.ToDateTime(ps_fecha); if (String.IsNullOrEmpty(ps_registro)) { vo_registro.pHoras = 0; vo_registro.pComentario = String.Empty; } else { vo_registro.pPK_registro = Convert.ToDecimal(ps_registro); cls_gestorRegistroOperacion.seleccionarRegistroOperacion(vo_registro); } cls_variablesSistema.obj = vo_registro; } catch (Exception) { throw; } }
/// <summary> /// Carga un registro de tipo operación. /// </summary> /// <param name="ps_actividad">String código</param> /// <param name="ps_proyecto">String proyecto.</param> /// <param name="ps_registro">String registro</param> /// <param name="ps_fecha">String fecha.</param> private void cargarOperacion(string ps_actividad, string ps_proyecto, string ps_registro, string ps_fecha) { cls_registroOperacion vo_registro; cls_operacion vo_operacion; cls_asignacionOperacion vo_asignacion; try { vo_registro = new cls_registroOperacion(); vo_operacion = new cls_operacion(); vo_operacion.pPK_Codigo = ps_actividad; vo_operacion = cls_gestorOperacion.seleccionarOperacion(vo_operacion, ((cls_usuario)Session["cls_usuario"]).pPK_usuario); vo_operacion.pFK_Proyecto = Convert.ToInt32(ps_proyecto); vo_asignacion = new cls_asignacionOperacion(); vo_asignacion.pFK_Operacion = vo_operacion; vo_asignacion.pFK_Usuario = ((COSEVI.CSLA.lib.accesoDatos.App_InterfaceComunes.cls_interface)this.Session[CSLA.web.App_Constantes.cls_constantes.INTERFACES]).vs_usuarioActual; vo_registro = new cls_registroOperacion(); vo_registro.pFK_Asignacion = vo_asignacion; vo_registro.pFecha = Convert.ToDateTime(ps_fecha); if (String.IsNullOrEmpty(ps_registro)) { vo_registro.pHoras = 0; vo_registro.pComentario = String.Empty; } else { vo_registro.pPK_registro = Convert.ToDecimal(ps_registro); cls_gestorRegistroOperacion.seleccionarRegistroOperacion(vo_registro); } ((CSLA.web.App_Variables.cls_variablesSistema)this.Session[CSLA.web.App_Constantes.cls_constantes.VARIABLES]).obj = vo_registro; } catch (Exception) { throw; } }