public Object Accion(Object oDatos) { Object oResultado = null; _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; int iClaveProceso = Constantes.ProcesoTipo.SOLICITUD; oResultado = new SIT_SNT_SOLICITANTEDao(_cn, _transaction, _sDataAdapter).dmlAgregar(_afdEdoDataMdl.solicitante); oResultado = new SIT_SOL_SOLICITUDDao(_cn, _transaction, _sDataAdapter).dmlAgregar(_afdEdoDataMdl.solicitud); _afdEdoDataMdl.solClave = _afdEdoDataMdl.solicitud.solclave; /* CREAMOS EL SEGUIMIENTO DE LA SOLICITUD */ SIT_SOL_SEGUIMIENTO solSegMdl = new SIT_SOL_SEGUIMIENTO( solclave: _afdEdoDataMdl.solClave, prcclave: Constantes.ProcesoTipo.SOLICITUD, segmultiple: AfdConstantes.MULTIPLE.NO, segfecini: new DateTime(_afdEdoDataMdl.solicitud.solfecsol.Ticks), segfecfin: new DateTime(), segfecestimada: _afdEdoDataMdl.ID_FecEstimada, segfeccalculo: new DateTime(), segfecamp: new DateTime(), segdiassemaforo: 0, segdiasnolab: 0, segsemaforocolor: 0, segultimonodo: 0, segedoproceso: AfdConstantes.PROCESO_ESTADO.EN_EJECUCION, afdclave: _afdEdoDataMdl.ID_ClaAfd, repclave: null, usrclave: _afdEdoDataMdl.usrClaveOrigen); oResultado = new SIT_SOL_SEGUIMIENTODao(_cn, _transaction, _sDataAdapter).dmlAgregar(solSegMdl); _afdEdoDataMdl.AFDseguimientoMdl = solSegMdl; /* CREAR NODO INAI CREAR SOLICITUD CERO*/ SIT_RED_NODO nodoINAI = new SIT_RED_NODO { prcclave = iClaveProceso, solclave = _afdEdoDataMdl.solClave, araclave = _afdEdoDataMdl.ID_AreaInai, nodcapa = _afdEdoDataMdl.ID_Capa, nodatendido = AfdConstantes.NODO.FINALIZADO, nodclave = _afdEdoDataMdl.ID_EstadoActual, nodfeccreacion = _afdEdoDataMdl.solicitud.solfecsol, nedclave = Constantes.NodoEstado.INAI_SOLICITUD, usrclave = _afdEdoDataMdl.usrClaveDestino }; oResultado = _nodoDao.dmlAgregar(nodoINAI); nodoINAI.nodclave = _nodoDao.iSecuencia; _afdEdoDataMdl.AFDnodoActMdl = nodoINAI; //////////////////////////////////////////// _afdEdoDataMdl.ID_EstadoActual = Constantes.NodoEstado.UT_RECIBIR_SOL; // Aqui voy a crear el Nodo de la UT _afdEdoDataMdl.ID_Capa = _afdEdoDataMdl.ID_Capa + 1; //GRABAMOS los archivos que vienen en la solicitud GrabarDocSol(_afdEdoDataMdl.solicitud.solclave); return(AccionBase(true)); }
public int dmlUpdConcluirSeg(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " UPDATE SIT_SOL_SEGUIMIENTO " + " SET repclave = :P0, segultimonodo = :P1, segfecfin = :P2, segedoproceso = :P3 " + " WHERE prcclave = :P4 AND solclave = :P5 "; return((int)EjecutaDML(sSQL, oDatos.repclave, oDatos.segultimonodo, oDatos.segfecfin, oDatos.segedoproceso, oDatos.prcclave, oDatos.solclave)); }
public int dmlUpdAmpliacionSeg(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " UPDATE SIT_SOL_SEGUIMIENTO " + " SET segfecamp = :P0 " + " WHERE prcclave = :P1 AND solclave = :P2 "; return((int)EjecutaDML(sSQL, oDatos.segfecamp, oDatos.prcclave, oDatos.solclave)); }
public Object Accion(Object oDatos) { _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; int iClaveProceso = (int)_afdEdoDataMdl.solicitud.prcclave; if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.RESPONDER) { return(ResponderSol()); } 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 nodoNvoPRUDanalizar = ExisteNodo(_afdEdoDataMdl.solClave, Constantes.NodoEstado.PRUD_REVISARRESP_SOLICITUD, (int)segAux.usrclave, _afdEdoDataMdl.ID_Capa + 1); // BUSCAR QUIEN ATIENDE LA SOLICUTD.... PARA BUSCAR LE NODO... if (nodoNvoPRUDanalizar == null) { // CREAR NODO ACTUAL SIGUIENTE DE LA PRUFanalizar que es la barrera nodoNvoPRUDanalizar = 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.PRUD_REVISARRESP_SOLICITUD, nodfeccreacion = _afdEdoDataMdl.FechaRecepcion, nodclave = Constantes.General.ID_PENDIENTE, usrclave = segAux.usrclave, perclave = Constantes.Perfil.PRUT }; _nodoDao.dmlAgregar(nodoNvoPRUDanalizar); } SIT_RED_NODORESP oNodoResp = _redNodoRespDao.dmlSelectRespUnica(_afdEdoDataMdl.AFDnodoActMdl.nodclave); _afdEdoDataMdl.repClave = oNodoResp.repclave; return(Turnar(_afdEdoDataMdl, _nodoDao.iSecuencia)); } else if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.ASIGNAR) { Asignar(); } return(0); }
public Object Accion(Object oDatos) { _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; int iClaveProceso = (int)_afdEdoDataMdl.solicitud.prcclave; /// FALTA GRABAR LA RESOLUCION DE LA UA... if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.TURNAR) { return(base.AccionBase(true)); } else if (_afdEdoDataMdl.rtpclave == Constantes.Respuesta.AMPLIACION_PLAZO) { // SE CREA UN NUEVO FLUJO DE TRABAJO EN PARALELO _calcularPlazoNeg = new CalcularPlazoNeg(_afdEdoDataMdl.dicDiaNoLaboral); return(base.AccionBase(false)); } else // DEFINO UNA RESPUESTA { _calcularPlazoNeg = new CalcularPlazoNeg(_afdEdoDataMdl.dicDiaNoLaboral); // como es una respueta verficamos si existe el nodo siguiente que es la UT. SIT_RED_NODO nodoAnt = _afdEdoDataMdl.AFDnodoActMdl; nodoAnt.nodatendido = AfdConstantes.NODO.FINALIZADO; _nodoDao.dmlEditar(nodoAnt); 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; _afdEdoDataMdl.ID_EstadoSiguiente = _afdEdoDataMdl.dicAfdFlujo[_afdEdoDataMdl.ID_EstadoActual].dicAccionEstado[_afdEdoDataMdl.rtpclave]; //////// VERIFICAR SI EXISTE EL NODO SIGUIENTE UT, ya que solo puede existir uno... y actualizar su estado.. ya que no lo veo... _afdEdoDataMdl.AFDnodoActMdl = ExisteNodo((int)nodoAnt.solclave, _afdEdoDataMdl.ID_EstadoSiguiente, (int)segAux.usrclave, nodoAnt.nodcapa + 1); if (_afdEdoDataMdl.AFDnodoActMdl == null) { throw new System.ArgumentException("NO EXISTE NODO DE BARRERA", "original"); } _afdEdoDataMdl.AFDnodoActMdl.nodatendido = AfdConstantes.NODO.EN_PROCESO; _nodoDao.dmlUpdateNodoAtendido(_afdEdoDataMdl.AFDnodoActMdl); /* CREAR ARISTA NODO_ANTERIOR --> NODO_NUEVO */ int[] aiDias = _calcularPlazoNeg.obtenerDiasNaturalesLaborales(nodoAnt.nodfeccreacion, DateTime.Now); /* EN LA ARISTA SE GUARDA LA RESOLUCION DEL AREA */ SIT_RED_ARISTA aristaMdl = new SIT_RED_ARISTA { arihito = Constantes.RespuestaHito.SI, aridiasnat = aiDias[CalcularPlazoNeg.DIAS_NATURALES], aridiaslab = aiDias[CalcularPlazoNeg.DIAS_LABORALES], arifecenvio = nodoAnt.nodfeccreacion, ariclave = Constantes.General.ID_PENDIENTE, noddestino = _afdEdoDataMdl.AFDnodoActMdl.nodclave, nodorigen = nodoAnt.nodclave }; _redAristaDao.dmlAgregar(aristaMdl); aristaMdl.ariclave = _redAristaDao.iSecuencia; /* ACTUALIZAR EL SEGUIMIENTO */ _afdEdoDataMdl.AFDseguimientoMdl = _calcularPlazoNeg.CalcularSeguimiento((int)_afdEdoDataMdl.solicitud.sotclave, DateTime.Now, _afdEdoDataMdl.lstProcesoPlazos, _afdEdoDataMdl.AFDseguimientoMdl); //////GrabarDocumentos(aristaMdl.ariclave); } return(true); }
public Object Accion(Object oDatos) { _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; int iClaveProceso = (int)_afdEdoDataMdl.solicitud.prcclave; if (_calcularPlazoNeg == null) { _calcularPlazoNeg = new CalcularPlazoNeg(_afdEdoDataMdl.dicDiaNoLaboral); } Dictionary <string, object> dicParam = new Dictionary <string, object>(); dicParam.Add(DButil.SIT_SOL_SEGUIMIENTO_COL.SOLCLAVE, _afdEdoDataMdl.solClave); dicParam.Add(DButil.SIT_SOL_SEGUIMIENTO_COL.PRCCLAVE, Constantes.ProcesoTipo.SOLICITUD); _afdEdoDataMdl.AFDseguimientoMdl = _segDao.dmlSelectSeguimientoPorID(dicParam) as SIT_SOL_SEGUIMIENTO; _afdEdoDataMdl.AFDnodoActMdl = (SIT_RED_NODO)_nodoDao.dmlSelectNodoID(_afdEdoDataMdl.AFDseguimientoMdl.segultimonodo); _afdEdoDataMdl.ID_Capa = _afdEdoDataMdl.AFDnodoActMdl.nodcapa + 1; _afdEdoDataMdl.rtpclave = Constantes.Respuesta.RECEPCION_INFO_ADICIONAL; /* CREAR UN NUEVO SEGUIMIENTO */ SIT_SOL_SEGUIMIENTO solSegMdl = new SIT_SOL_SEGUIMIENTO { repclave = Constantes.Respuesta.SIN_RESPUESTA, segfecestimada = _afdEdoDataMdl.ID_FecEstimada, segultimonodo = 0, segfecini = _afdEdoDataMdl.FechaRecepcion, afdclave = _afdEdoDataMdl.ID_ClaAfd, segedoproceso = AfdConstantes.PROCESO_ESTADO.EN_EJECUCION, prcclave = Constantes.ProcesoTipo.ACLARACION, segfeccalculo = new DateTime(), segdiasnolab = 0, segmultiple = AfdConstantes.MULTIPLE.NO, segfecfin = new DateTime(), segfecamp = new DateTime(), segsemaforocolor = 0, segdiassemaforo = 0, solclave = _afdEdoDataMdl.solClave, usrclave = _afdEdoDataMdl.usrClaveOrigen }; _segDao.dmlAgregar(solSegMdl); // CREAR NODO UT-RECIBIR_SOLICITUD SIT_RED_NODO nodoUT = new SIT_RED_NODO { prcclave = Constantes.ProcesoTipo.ACLARACION, solclave = _afdEdoDataMdl.solClave, araclave = _afdEdoDataMdl.ID_AreaUT, nodcapa = _afdEdoDataMdl.ID_Capa, nodatendido = AfdConstantes.NODO.EN_PROCESO, nodclave = Constantes.NodoEstado.INDEFINIDO, nodfeccreacion = _afdEdoDataMdl.FechaRecepcion, nedclave = Constantes.General.ID_PENDIENTE, usrclave = _afdEdoDataMdl.usrClaveDestino }; _nodoDao.dmlAgregar(nodoUT); nodoUT.nodclave = _nodoDao.iSecuencia; /* CREAR ARISTA NODO_ANTERIOR --> NODO_NUEVO */ int[] aiDias = _calcularPlazoNeg.obtenerDiasNaturalesLaborales(_afdEdoDataMdl.FechaRecepcion, DateTime.Now); SIT_RED_ARISTA aristaMdl = new SIT_RED_ARISTA { arihito = Constantes.RespuestaHito.NO, aridiasnat = aiDias[CalcularPlazoNeg.DIAS_NATURALES], aridiaslab = aiDias[CalcularPlazoNeg.DIAS_LABORALES], arifecenvio = _afdEdoDataMdl.FechaRecepcion, ariclave = Constantes.General.ID_PENDIENTE, noddestino = nodoUT.nodclave, nodorigen = _afdEdoDataMdl.AFDnodoActMdl.nodclave }; _redAristaDao.dmlEditar(aristaMdl); aristaMdl.ariclave = _redAristaDao.iSecuencia; // NODO ACTUAL EL NUEVO CREADO PARA PROCESAR EL SIGUIENTE _afdEdoDataMdl.AFDnodoActMdl = nodoUT; // ACTUALIZAR EL REGISTRO DE LA SOLICICTUD CON UNA ACLARACION _afdEdoDataMdl.solicitud.solfecacl = _afdEdoDataMdl.FechaRecepcion; _afdEdoDataMdl.solicitud.prcclave = Constantes.ProcesoTipo.ACLARACION; SIT_SOL_SOLICITUDDao solDao = new SIT_SOL_SOLICITUDDao(_cn, _transaction, _sDataAdapter); solDao.dmlEditar(_afdEdoDataMdl.solicitud); return(_afdEdoDataMdl); }
public SIT_SOL_SEGUIMIENTO CalcularSeguimiento(int iTipoSolicitud, DateTime dtFechaFin, List <SIT_SOL_PROCESOPLAZOS> lstProcesoPlazo, SIT_SOL_SEGUIMIENTO seguimientoMdl) { SIT_SOL_PROCESOPLAZOS prcPlzActual = null; DateTime FecInicio = new DateTime(seguimientoMdl.segfecini.Ticks); Int32 iVerde = 0; Int32 iAmarillo = 0; Int32 iTipoPlazo = 0; if (seguimientoMdl.segfecamp == DateTime.MinValue) { iTipoPlazo = Constantes.ProcesoTiempo.NO_AMPLIACION; } else { iTipoPlazo = Constantes.ProcesoTiempo.AMPLIACION; } foreach (SIT_SOL_PROCESOPLAZOS procesoPlazo in lstProcesoPlazo) { if (procesoPlazo.prcclave == seguimientoMdl.prcclave && procesoPlazo.sotclave == iTipoSolicitud && procesoPlazo.pczclave == iTipoPlazo) { prcPlzActual = procesoPlazo; break; } } // CALCULAR EL TIEMPO POR LEY int[] iDiasNatLab = obtenerDiasNaturalesLaborales(seguimientoMdl.segfecini, dtFechaFin); seguimientoMdl.segdiasnolab = iDiasNatLab[DIAS_NATURALES] - iDiasNatLab[DIAS_LABORALES]; seguimientoMdl.segdiassemaforo = iDiasNatLab[DIAS_LABORALES]; iVerde = prcPlzActual.pczverde; iAmarillo = prcPlzActual.pczamarillo; if (seguimientoMdl.segdiassemaforo <= iVerde) { seguimientoMdl.segsemaforocolor = Constantes.Semaforo.SOLICITUD_SEMAFORO_IVERDE; } else if (seguimientoMdl.segdiassemaforo > iVerde && seguimientoMdl.segdiassemaforo <= iAmarillo) { seguimientoMdl.segsemaforocolor = Constantes.Semaforo.SOLICITUD_SEMAFORO_IAMARILLO; } else { seguimientoMdl.segsemaforocolor = Constantes.Semaforo.SOLICITUD_SEMAFORO_IROJO; } // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) // Mover este calculo cuando se crea la solicitud. (+1 cuando comienza la soliciutd) seguimientoMdl.segfecestimada = ObtenerFechaFinal(seguimientoMdl.segfecini, prcPlzActual.pczplazo); seguimientoMdl.segfeccalculo = DateTime.Now; // AQUI DEBO DE ENVAIR EL CORREO A TODOS LOS INVOLUCRADOS... // AQUI DEBO DE ENVAIR EL CORREO A TODOS LOS INVOLUCRADOS... // AQUI DEBO DE ENVAIR EL CORREO A TODOS LOS INVOLUCRADOS... return(seguimientoMdl); }
public Object Accion(Object oDatos) { Object oResultado = null; _afdEdoDataMdl = (AfdEdoDataMdl)oDatos; // ESTE ESTADO TIENE DOS ETAPAS 1) CREAR SU PROPIO ESTADO 2) TURNAR LA ACLARACION int iTipoProceso = 0; int?iClaveProceso = _afdEdoDataMdl.solicitud.prcclave; if (_afdEdoDataMdl.solicitud != null) { if (_afdEdoDataMdl.solicitud.solfecacl == DateTime.MinValue) { iTipoProceso = Constantes.ProcesoTipo.SOLICITUD; } else { iTipoProceso = Constantes.ProcesoTipo.ACLARACION; } _afdEdoDataMdl.ID_Hito = Constantes.RespuestaHito.NO; // CREAR MI PROPIO ESTADO // BUSCAR DATOS PARA PROCESAR LA ACCION Dictionary <string, object> dicParam = new Dictionary <string, object>(); dicParam.Add(DButil.SIT_SOL_SOLICITUD_COL.SOLCLAVE, _afdEdoDataMdl.solicitud.solclave); dicParam.Add(DButil.SIT_SOL_SOLICITUD_COL.PRCCLAVE, iTipoProceso); _afdEdoDataMdl.AFDseguimientoMdl = _segDao.dmlSelectSeguimientoPorID(dicParam) as SIT_SOL_SEGUIMIENTO; if (_afdEdoDataMdl.AFDseguimientoMdl.segultimonodo > 0) { _afdEdoDataMdl.AFDnodoActMdl = _nodoDao.dmlSelectNodoID(_afdEdoDataMdl.AFDseguimientoMdl.segultimonodo) as SIT_RED_NODO; _afdEdoDataMdl.ID_Capa = _afdEdoDataMdl.AFDnodoActMdl.nodcapa + 1; _afdEdoDataMdl.rtpclave = Constantes.Respuesta.RECURSO_REVISION; //////_afdEdoDataMdl.dicAuxRespuesta[ProcesoGralDao.PARAM_LISTA_TURNAR] //////if (_afdEdoDataMdl.lstPersonasTurnar.Count > 1) ////// iMultiple = 1; /* CREAR UN NUEVO SEGUIMIENTO */ SIT_SOL_SEGUIMIENTO solSegMdl = new SIT_SOL_SEGUIMIENTO(repclave: Constantes.Respuesta.SIN_RESPUESTA, segfecestimada: _afdEdoDataMdl.ID_FecEstimada, segultimonodo: 0, segfecini: new DateTime(), afdclave: _afdEdoDataMdl.ID_ClaAfd, segedoproceso: AfdConstantes.PROCESO_ESTADO.EN_EJECUCION, prcclave: Constantes.ProcesoTipo.RECURSO_REVISION, segfeccalculo: new DateTime(), segdiasnolab: 0, segmultiple: _afdEdoDataMdl.AFDseguimientoMdl.segmultiple, segfecfin: new DateTime(), segfecamp: new DateTime(), segsemaforocolor: 0, segdiassemaforo: 0, solclave: _afdEdoDataMdl.solClave, usrclave: _afdEdoDataMdl.usrClaveOrigen); ////DEBEMSO DE CALCULAR EL SEGUIMINETO.. ////afdEdoDataMdl = afdDatos; ////CalcularSeguimiento(afdEdoDataMdl.solicitud.sotclave, afdDatos.FechaRecepcion); _segDao.dmlAgregar(solSegMdl); //Actualziamos el seguimiento _afdEdoDataMdl.AFDseguimientoMdl = solSegMdl; // CREAR NODO UT-RECIBIR_SOLICITUD SIT_RED_NODO nodoUT = new SIT_RED_NODO { prcclave = iClaveProceso, solclave = _afdEdoDataMdl.solClave, araclave = _afdEdoDataMdl.ID_AreaUT, nodcapa = _afdEdoDataMdl.ID_Capa, nodatendido = AfdConstantes.NODO.EN_PROCESO, nodclave = Constantes.NodoEstado.UT_RECIBIR_SOLICITUD, nodfeccreacion = _afdEdoDataMdl.FechaRecepcion, nedclave = Constantes.General.ID_PENDIENTE, usrclave = _afdEdoDataMdl.usrClaveDestino }; _nodoDao.dmlAgregar(nodoUT); nodoUT.nodclave = _nodoDao.iSecuencia; /* CREAR ARISTA NODO_ANTERIOR --> NODO_NUEVO */ if (_calcularPlazoNeg == null) { _calcularPlazoNeg = new CalcularPlazoNeg(_afdEdoDataMdl.dicDiaNoLaboral); } int[] aiDias = _calcularPlazoNeg.obtenerDiasNaturalesLaborales(_afdEdoDataMdl.FechaRecepcion, DateTime.Now); SIT_RED_ARISTA aristaMdl = new SIT_RED_ARISTA { arihito = _afdEdoDataMdl.ID_Hito, aridiasnat = aiDias[CalcularPlazoNeg.DIAS_NATURALES], aridiaslab = aiDias[CalcularPlazoNeg.DIAS_LABORALES], arifecenvio = DateTime.Now, ariclave = Constantes.General.ID_PENDIENTE, noddestino = nodoUT.nodclave, nodorigen = _afdEdoDataMdl.AFDnodoActMdl.nodclave }; _redAristaDao.dmlEditar(aristaMdl); aristaMdl.ariclave = _redAristaDao.iSecuencia; // Guardamos los datos del recurso de revision _afdEdoDataMdl.recRevisionMdl.repclave = aristaMdl.ariclave; new SIT_RESP_RREVISIONDao(_cn, _transaction, _sDataAdapter).dmlAgregar(_afdEdoDataMdl.recRevisionMdl); ////////////Grabamos los documentso en al nueva arista ////////////GrabarDocumentos(aristaMdl.ariclave); ////////////Borramos los docuemntso apra que no se graben nuevamente... ////////////if (_afdEdoDataMdl.lstDocContenidoMdl != null) //////////// _afdEdoDataMdl.lstDocContenidoMdl.Clear(); // ACTUALIZAR EL REGISTRO DE LA SOLICICTUD CON UNA ACLARACION _afdEdoDataMdl.solicitud.solfecrecrev = _afdEdoDataMdl.FechaRecepcion; _afdEdoDataMdl.solicitud.prcclave = Constantes.ProcesoTipo.RECURSO_REVISION; new SIT_SOL_SOLICITUDDao(_cn, _transaction, _sDataAdapter).dmlEditar(_afdEdoDataMdl.solicitud); // AHORA QUE SE HA CREADO EL NODO NUEVO ES NECESARIO CREAR LOS TURNOS.. // Y SE EJECUTA LA FUNCION BASE 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) { _afdEdoDataMdl.AFDnodoActMdl = nodoUT; _afdEdoDataMdl.ID_AreaDestino = Convert.ToInt32(areaTurnar.Item1); _afdEdoDataMdl.Observacion = areaTurnar.Item2; _afdEdoDataMdl.ID_PerfilDestino = areaTurnar.Item3; _afdEdoDataMdl.rtpclave = Constantes.Respuesta.TURNAR; _afdEdoDataMdl.ID_EstadoSiguiente = Constantes.NodoEstado.INAI_RECURSO_REVISION; oResultado = AccionBase(true); } } else { return(false); } } return(true); }
public SIT_SOL_SEGUIMIENTO dmlSelectID(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " SELECT * FROM SIT_SOL_SEGUIMIENTO WHERE prcclave = :P0 AND solclave = :P1 "; return(CrearListaMDL <SIT_SOL_SEGUIMIENTO>(ConsultaDML(sSQL, oDatos.prcclave, oDatos.solclave) as DataTable)[0]); }
public int dmlBorrar(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " DELETE FROM SIT_SOL_SEGUIMIENTO WHERE prcclave = :P0 AND solclave = :P1 "; return((int)EjecutaDML(sSQL, oDatos.prcclave, oDatos.solclave)); }
public int dmlEditar(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " UPDATE SIT_SOL_SEGUIMIENTO SET repclave = :P0, usrclave = :P1, segfecestimada = :P2, segultimonodo = :P3, afdclave = :P4, segedoproceso = :P5, segfeccalculo = :P6, segdiasnolab = :P7, segmultiple = :P8, segfecfin = :P9, segfecamp = :P10, segsemaforocolor = :P11, segdiassemaforo = :P12, segfecini = :P13 WHERE prcclave = :P14 AND solclave = :P15 "; return((int)EjecutaDML(sSQL, oDatos.repclave, oDatos.usrclave, oDatos.segfecestimada, oDatos.segultimonodo, oDatos.afdclave, oDatos.segedoproceso, oDatos.segfeccalculo, oDatos.segdiasnolab, oDatos.segmultiple, oDatos.segfecfin, oDatos.segfecamp, oDatos.segsemaforocolor, oDatos.segdiassemaforo, oDatos.segfecini, oDatos.prcclave, oDatos.solclave)); }
public Object dmlAgregar(SIT_SOL_SEGUIMIENTO oDatos) { String sSQL = " INSERT INTO SIT_SOL_SEGUIMIENTO( repclave, usrclave, segfecestimada, segultimonodo, afdclave, segedoproceso, prcclave, segfeccalculo, segdiasnolab, segmultiple, segfecfin, segfecamp, segsemaforocolor, segdiassemaforo, segfecini, solclave) VALUES ( :P0, :P1, :P2, :P3, :P4, :P5, :P6, :P7, :P8, :P9, :P10, :P11, :P12, :P13, :P14, :P15) "; return(EjecutaDML(sSQL, oDatos.repclave, oDatos.usrclave, oDatos.segfecestimada, oDatos.segultimonodo, oDatos.afdclave, oDatos.segedoproceso, oDatos.prcclave, oDatos.segfeccalculo, oDatos.segdiasnolab, oDatos.segmultiple, oDatos.segfecfin, oDatos.segfecamp, oDatos.segsemaforocolor, oDatos.segdiassemaforo, oDatos.segfecini, oDatos.solclave)); }
public object dmlUpdMultiple(SIT_SOL_SEGUIMIENTO oDatos) { String sqlQuery = " UPDATE SIT_SOL_SEGUIMIENTO SET segmultiple = 1 WHERE prcclave = :P0 AND solclave = :P1 "; return(EjecutaDML(sqlQuery, oDatos.prcclave, oDatos.solclave)); }