Beispiel #1
0
        public Object Accion(AfdEdoDataMdl afdDataMdl)
        {
            Type        type      = Type.GetType(afdDataMdl.dicAfdFlujo[afdDataMdl.ID_EstadoActual].clase);
            Object      objNodo   = Activator.CreateInstance(type, _cn, _transaction, _sDataAdapter);
            AfdNodoBase oNodoBase = (AfdNodoBase)objNodo;

            oNodoBase.AsignarID(afdDataMdl.ID_EstadoActual);

            return(objNodo.GetType().GetMethod("Accion").Invoke(objNodo, new[] { afdDataMdl }));
        }
Beispiel #2
0
        protected Object Turnar(AfdEdoDataMdl afdDataMdl, long nodRegresar)
        {
            object oResultado     = null;
            Int32  iTipoAristaIni = afdDataMdl.rtpclave;

            SIT_RED_NODO nodoInicial = _nodoDao.dmlSelectNodoID(afdDataMdl.AFDnodoActMdl.nodclave);

            SIT_RESP_TURNARDao     turnarDao = new SIT_RESP_TURNARDao(_cn, _transaction, _sDataAdapter);
            List <SIT_RESP_TURNAR> lstTurnar = turnarDao.dmlSelectTurnarResp(afdDataMdl.repClave);

            foreach (SIT_RESP_TURNAR usrTurnar in lstTurnar)
            {
                afdDataMdl.ID_EstadoActual = (int)nodoInicial.nedclave;
                afdDataMdl.AFDnodoActMdl   = nodoInicial;
                afdDataMdl.rtpclave        = iTipoAristaIni;
                afdDataMdl.usrClaveDestino = usrTurnar.usrclave;
                afdDataMdl.Observacion     = usrTurnar.turinstruccion;
                afdDataMdl.ID_AreaDestino  = usrTurnar.araclave;
                afdDataMdl.ID_Capa         = nodoInicial.nodcapa;
                oResultado = AccionBase(true);

                afdDataMdl.AFDnodoActMdl.nodregresar = nodRegresar;
                _nodoDao.dmlUpdateNodoRegresar(afdDataMdl.AFDnodoActMdl);

                // sera uno especial para el aerea que estos turnando
                RespMoverSigNodo(nodoInicial.nodclave, _afdEdoDataMdl.AFDnodoActMdl.nodclave, Constantes.RespuestaEstado.TURNADO, Constantes.RespuestaEstado.ANALIZAR);
            }

            if (lstTurnar.Count > 1)
            {
                _segDao.dmlUpdMultiple(afdDataMdl.AFDseguimientoMdl);
            }


            //List<Tuple<int, string, int>> lstPersonasTurnar = _afdEdoDataMdl.dicAuxRespuesta[ProcesoGralDao.PARAM_LISTA_TURNAR] as List<Tuple<int, string, int>>;
            //foreach (Tuple<int, string, int> areaTurnar in lstPersonasTurnar )
            //{
            //    afdDataMdl.ID_EstadoActual = (int)nodoInicial.nedclave;
            //    afdDataMdl.AFDnodoActMdl = nodoInicial;
            //    afdDataMdl.rtpclave = iTipoAristaIni;
            //    afdDataMdl.usrClaveDestino = areaTurnar.Item1;
            //    afdDataMdl.Observacion = areaTurnar.Item2;
            //    afdDataMdl.ID_AreaDestino = areaTurnar.Item3;
            //    afdDataMdl.ID_Capa = nodoInicial.nodcapa;
            //    oResultado = AccionBase(true);

            //    afdDataMdl.AFDnodoActMdl.nodregresar = nodRegresar;
            //    _nodoDao.dmlUpdateNodoRegresar(afdDataMdl.AFDnodoActMdl);

            //    RespMoverSigNodo(nodoInicial.nodclave, _afdEdoDataMdl.AFDnodoActMdl.nodclave, Constantes.RespuestaEstado.TURNADO, Constantes.RespuestaEstado.ANALIZAR);
            //}
            return(oResultado);
        }