public AfdNodoBase(DbConnection cn, DbTransaction transaction, String sDataAdapter) : base(cn, transaction, sDataAdapter) { _nodoDao = new SIT_RED_NODODao(_cn, _transaction, _sDataAdapter); _redAristaDao = new SIT_RED_ARISTADao(_cn, _transaction, _sDataAdapter); _segDao = new SIT_SOL_SEGUIMIENTODao(_cn, _transaction, _sDataAdapter); // RESPUESTA _redNodoRespDao = new SIT_RED_NODORESPDao(_cn, _transaction, _sDataAdapter); _respRespDao = new SIT_RESP_RESPUESTADao(_cn, _transaction, _sDataAdapter); ////////////_respRespDatosDao = new SIT_RESP_DATOSDao(_cn, _transaction, _sDataAdapter); ////////////_docDocumentoDao = new SIT_DOC_DOCUMENTODao(_cn, _transaction, _sDataAdapter); _prcGralDao = new ProcesoGralDao(_cn, _transaction, _sDataAdapter); }
public Object Accion(Object oDatos) { _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; int iClaveProceso = (int)_afdEdoDataMdl.solicitud.prcclave; if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.CORREGIR) { SIT_RED_NODORESP nodoResp = _afdEdoDataMdl.dicAuxRespuesta[ProcesoGralDao.PARAM_RED_NODORESP] as SIT_RED_NODORESP; _redNodoRespDao.dmlEditar(nodoResp); //revisar el usuario y el area a donde se dirije el nuevo--.-. AccionBase(false); _respRespDao = new SIT_RESP_RESPUESTADao(_cn, _transaction, _sDataAdapter); Dictionary <SIT_RESP_RESPUESTA, SIT_RESP_DETALLE> dicRespDet = _afdEdoDataMdl.dicAuxRespuesta[ProcesoGralDao.PARAM_DIC_RESP_DETALLE] as Dictionary <SIT_RESP_RESPUESTA, SIT_RESP_DETALLE>; foreach (KeyValuePair <SIT_RESP_RESPUESTA, SIT_RESP_DETALLE> entry in dicRespDet) { Int64 irespClave = (long)_respRespDao.dmlAgregar(entry.Key); SIT_RESP_DETALLEDao oRespDetalle = new SIT_RESP_DETALLEDao(_cn, _transaction, _sDataAdapter); entry.Value.repclave = irespClave; oRespDetalle.dmlAgregar(entry.Value); // al nuevo nodo le agregamos el esado.. SIT_RED_NODORESP oNodoRespCorregir = new SIT_RED_NODORESP { repclave = irespClave, nodclave = _afdEdoDataMdl.AFDnodoActMdl.nodclave, sdoclave = Constantes.RespuestaEstado.PROPUESTA }; _redNodoRespDao.dmlAgregar(oNodoRespCorregir); } } //// long repClave = (long)prcGralDao.InsertarRegistro(_afdEdoDataMdl.dicAuxRespuesta); //// _afdEdoDataMdl.ID_Hito = Constantes.RespuestaHito.NO; //// _afdEdoDataMdl.ID_AreaDestino = _afdEdoDataMdl.ID_AreaInai; //// AccionBase(true); //// // ACTUALIZAMOS LOS DATOS DEL SEGUIMIENTO //// _afdEdoDataMdl.AFDseguimientoMdl.segfecfin = _afdEdoDataMdl.AFDnodoActMdl.nodfeccreacion; //// _afdEdoDataMdl.AFDseguimientoMdl.segultimonodo = _afdEdoDataMdl.AFDnodoActMdl.nodclave; //// _afdEdoDataMdl.AFDseguimientoMdl.segedoproceso = AfdConstantes.PROCESO_ESTADO.TERMINADO; //// _afdEdoDataMdl.AFDseguimientoMdl.usrclave = _afdEdoDataMdl.usrClaveOrigen; //// // SE ACTUALZIA LA ARISTA DE RESPUESTA... //// _afdEdoDataMdl.AFDseguimientoMdl.repclave = repClave; //// _segDao.dmlEditar(_afdEdoDataMdl.AFDseguimientoMdl); //// // FINALIZAMOS EL NODOD CREADO CON LA RESPUESTA //// _afdEdoDataMdl.AFDnodoActMdl.nodatendido = AfdConstantes.NODO.FINALIZADO; //// return _nodoDao.dmlEditar(_afdEdoDataMdl.AFDnodoActMdl); ////} ////else if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.TURNAR) ////{ //// _afdEdoDataMdl.ID_Hito = Constantes.RespuestaHito.SI; //// //BUSCAMOS QUIEN ES EL QUE ESTA ATENIDNEDO LA SOLICITUD.. PARA CREAR LA BARRERA //// SIT_SOL_SEGUIMIENTO solSegBuscar = new SIT_SOL_SEGUIMIENTO(); //// solSegBuscar.solclave = _afdEdoDataMdl.solClave; //// solSegBuscar.prcclave = iClaveProceso; //// SIT_SOL_SEGUIMIENTO segAux = _segDao.dmlSelectID(solSegBuscar); //// _afdEdoDataMdl.AFDseguimientoMdl.usrclave = segAux.usrclave; //// SIT_RED_NODO nodoNvoUTanalizar = ExisteNodo(_afdEdoDataMdl.solClave, Constantes.NodoEstado.UT_SOLICITUD_RECIBIR, (int)segAux.usrclave, _afdEdoDataMdl.ID_Capa + 1); //// // BUSCAR QUIEN ATIENDE LA SOLICUTD.... PARA BUSCAR LE NODO... //// if (nodoNvoUTanalizar == null) //// { //// // CREAR NODO ACTUAL SIGUIENTE DE LA UTanalizar que es la barrera //// nodoNvoUTanalizar = new SIT_RED_NODO //// { //// prcclave = iClaveProceso, //// solclave = _afdEdoDataMdl.solClave, //// araclave = _afdEdoDataMdl.ID_AreaUT, //// nodcapa = _afdEdoDataMdl.ID_Capa + 1, //// nodatendido = AfdConstantes.NODO.INDETERMINADO, //// nedclave = Constantes.NodoEstado.UT_SOLICITUD_RECIBIR, //// nodfeccreacion = _afdEdoDataMdl.FechaRecepcion, //// nodclave = Constantes.General.ID_PENDIENTE, //// usrclave = segAux.usrclave, //// perclave = Constantes.Perfil.UT //// }; //// _nodoDao.dmlAgregar(nodoNvoUTanalizar); //// } //// // Aqui me falta agregar el proceso Gral Dao.. //// long iRespClave = prcGralDao.AdmRegistro(_afdEdoDataMdl.dicAuxRespuesta); //// _afdEdoDataMdl.repClave = iRespClave; //// return Turnar(_afdEdoDataMdl); ////} ////else if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.ASIGNAR) ////{ //// _afdEdoDataMdl.ID_EstadoSiguiente = _afdEdoDataMdl.dicAfdFlujo[_afdEdoDataMdl.ID_EstadoActual].dicAccionEstado[_afdEdoDataMdl.rtpclave]; //// _afdEdoDataMdl.ID_Hito = Constantes.RespuestaHito.NO; //// long repClave = (long)prcGralDao.AdmRegistro(_afdEdoDataMdl.dicAuxRespuesta); //// // ACTUALIZAMOS QUE PERSONA LE VA A DAR SEGUIMIENTO //// _afdEdoDataMdl.AFDseguimientoMdl.usrclave = _afdEdoDataMdl.usrClaveDestino; //// _afdEdoDataMdl.ID_AreaDestino = _afdEdoDataMdl.ID_AreaUT; //// AccionBase(true); ////} return(0); }