public IEnumerable <DocumentoSeguimientoResponse> GetAllDocumentos(string estado, string indicador, string evaluador, string asunto, string externo, string id_tipo_documento, string num_doc, string nom_doc, int oficina_crea, string expediente) { DB_GESDOCEntities _dataContext = base.Context.GetContext() as DB_GESDOCEntities; /* if(evaluador=="") { var result = (from MDS in _dataContext.MAE_DOCUMENTO_SEGUIMIENTO from MTD in _dataContext.MAE_TIPO_DOCUMENTO .Where(MTD => MDS.ID_TIPO_DOCUMENTO == MTD.ID_TIPO_DOCUMENTO) from VPER in _dataContext.vw_CONSULTAR_DNI .Where(VPER => MDS.EVALUADOR == VPER.persona_num_documento) .DefaultIfEmpty() // <== makes join left join from DDOSEG in _dataContext.DAT_DET_SEG_DOC .Where(DDOSEG => MDS.ID_DOCUMENTO_SEG == DDOSEG.ID_DOCUMENTO_SEG) .DefaultIfEmpty() // <== makes join left join from MSEG in _dataContext.MAE_SEGUIMIENTO_DHCPA .Where(MSEG => DDOSEG.ID_SEGUIMIENTO == MSEG.ID_SEGUIMIENTO) .DefaultIfEmpty() // <== makes join left join from VCDIR in _dataContext.vw_CONSULTAR_DIRECCION .Where(VCDIR => MSEG.ID_OFI_DIR == VCDIR.ID_OFICINA_DIRECCION) .DefaultIfEmpty() // <== makes join left join from VCOF in _dataContext.vw_CONSULTAR_OFICINA .Where(VCOF => VCDIR.ID_OFICINA == VCOF.ID_OFICINA) .DefaultIfEmpty() // <== makes join left join from VPER_EXTER in _dataContext.vw_CONSULTAR_DNI .Where(VPER_EXTER => MSEG.PERSONA_NUM_DOCUMENTO == VPER_EXTER.persona_num_documento) .DefaultIfEmpty() // <== makes join left join where MDS.ESTADO.Contains(estado) && MDS.INDICADOR.Contains(indicador) select new DocumentoSeguimientoResponse { id_documento_seg = MDS.ID_DOCUMENTO_SEG, id_tipo_documento = MDS.ID_TIPO_DOCUMENTO, fecha_crea = MDS.FECHA_CREA, fecha_documento = MDS.FECHA_DOCUMENTO, tipo_documento = new TipoDocumentoResponse { nombre = MTD.NOMBRE }, nom_externo = MSEG.PERSONA_NUM_DOCUMENTO == null ? VCOF.RUC + " - " + VCOF.NOMBRE : VPER_EXTER.paterno + " " + VPER_EXTER.materno + " " + VPER_EXTER.nombres, asunto = MDS.ASUNTO, num_documento = MDS.NUM_DOCUMENTO, nom_documento = MTD.NOMBRE + " " + (MDS.NUM_DOCUMENTO == null ? "" : " N° " + MDS.NUM_DOCUMENTO.ToString()) + " " + MDS.NOM_DOCUMENTO, // documento evaluador = VPER.persona_num_documento + " - " + VPER.paterno + " " + VPER.materno + " " + VPER.nombres }).Distinct().OrderByDescending(r => r.id_documento_seg).Skip((pageIndex - 1) * pageSize).Take(pageSize).AsEnumerable(); return result; } else {*/ var data = _dataContext.SP_CONSULTAR_EXPEDIENTES_X_DOCUMENTO_HABILITACIONES(estado, indicador, asunto, externo, nom_doc, evaluador, id_tipo_documento, num_doc, oficina_crea, expediente); var result = (from MDS in data select new DocumentoSeguimientoResponse { id_documento_seg = MDS.ID_DOCUMENTO_SEG, id_tipo_documento = MDS.ID_TIPO_DOCUMENTO, fecha_crea = MDS.FECHA_CREA, fecha_documento = MDS.FECHA_DOCUMENTO, tipo_documento = new TipoDocumentoResponse { nombre = MDS.NOMBRE_TIPO_DOCUMENTO }, documento_codigo_habilitacion = MDS.CODIGO_HABILITANTE, nom_externo = MDS.NOMBRE_EXTERNO, asunto = MDS.ASUNTO, num_documento = MDS.NUM_DOCUMENTO, nom_documento = MDS.NOMBRE_DOCUMENTO, evaluador = MDS.EVALUADOR, group_expedientes = MDS.EXPEDIENTES, fecha_od = MDS.FECHA_OD, ruta_pdf = MDS.RUTA_PDF, nom_ofi_crea = MDS.NOM_OFICINA_CREA, usu_crea = MDS.USU_CREA }).Distinct().OrderByDescending(r => r.id_documento_seg).AsEnumerable(); return(result); /*}*/ }