def crear_estudiantes(pprograma, pcodigo , papellido, pnombre, pemail, pstatus): #Parametros para la llamada de la llamada de un estudiante BASE_PATH_STUDENT = "http://localhost:8000/map/api/student/codigo_student/?operation=6" headers_student = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_STUDENT = BASE_PATH_STUDENT.replace("codigo_student", str(pcodigo)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_estudiante = fork_service.llamada_get(BASE_PATH_STUDENT, headers_student) s_code = rta_buscar_estudiante.status_code if s_code == 500: json_rta = json.loads(rta_buscar_estudiante.text)['mensaje'] if json_rta == 'No existe el estudiante': rta_dar_maestria = maestrias.dar_maestria(pprograma) s_code_dar_maestria = rta_dar_maestria.status_code json_maestria = {} if rta_dar_maestria != None: if s_code_dar_maestria == 500: print 'No se encontro la maestría: ' + pprograma rta_crear = maestrias.crear_maesria(pprograma) if rta_crear.status_code == 500: print "Error en la creacion de la maestria" + pprograma elif rta_crear.status_code == 200: print('Se creó la maestria:') json_maestria = json.loads(rta_crear.text) elif s_code_dar_maestria == 200: decode_dar_maestria = rta_dar_maestria.text json_maestria = json.loads(decode_dar_maestria) master_id=json_maestria["id"] data = { 'lastname': papellido, 'code': pcodigo, 'email': pemail, 'name': pnombre, 'student_status': pstatus, 'master_id': master_id } rta = servicio_crear_estudiante(data) return rta else: print "Error en la busqueda de la maestría: " + pcodigo else: print "Estudiante ya existe: " + str(pcodigo) return rta_buscar_estudiante
def dar_cursos_pensum(id_pensum): #Parametros para la llamada de la llamada de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/pensum/id_pensum/?operation=1" BASE_PATH_MASTER = BASE_PATH_MASTER.replace("id_pensum", str(id_pensum)) headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } rta_cursos_del_pensum = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_cursos_del_pensum
def dar_estudiantes( ): #Parametros para la llamada de la llamada de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/student" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } #Se llama al servicio de llamada de estudiante para verificar si este existe rta_estudiantes = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_estudiantes
def dar_secciones_estudiantes(prm_id_estudiante): #Parametros para la llamada de la llamada de una maestría BASE_PATH_COURSE = "http://localhost:8000/map/api/student/id_estudiante/?operation=1" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_COURSE = BASE_PATH_COURSE.replace("id_estudiante", str(prm_id_estudiante)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_secciones = fork_service.llamada_get(BASE_PATH_COURSE, headers_master) return rta_secciones
def dar_pensum_maestria( pid_maestria ): #Parametros para la llamada del pensum de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/master/id_maestria/?operation=1" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_MASTER = BASE_PATH_MASTER.replace("id_maestria", str(pid_maestria)) rta_pensum = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_pensum
def dar_maestria( pnombre ): #Parametros para la llamada de la llamada de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/master/?operation=5&master_name=param_nombre" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_MASTER = BASE_PATH_MASTER.replace("param_nombre", pnombre) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_estudiante = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_buscar_estudiante
def dar_profesor( p_code ): #Parametros para la llamada de la llamada de una maestría BASE_PATH_TEACHER = "http://localhost:8000/map/api/teacher/code_teacher?operation=1" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_TEACHER = BASE_PATH_TEACHER.replace("code_teacher", str(p_code)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_teacher = fork_service.llamada_get(BASE_PATH_TEACHER, headers_course) return rta_buscar_teacher
def dar_seccion_crn( p_crn ): #Parametros para la llamada de la llamada de una maestría BASE_PATH_seccion = "http://localhost:8000/map/api/section/crn_seccion/?operation=6" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_seccion = BASE_PATH_seccion.replace("crn_seccion", str(p_crn)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_seccion = fork_service.llamada_get(BASE_PATH_seccion, headers_course) return rta_buscar_seccion
def dar_pensum_maestria(pid_maestria): #Parametros para la llamada del pensum de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/master/id_maestria/?operation=1" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_MASTER = BASE_PATH_MASTER.replace("id_maestria", str(pid_maestria)) rta_pensum = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_pensum
def dar_maestria(pnombre): #Parametros para la llamada de la llamada de una maestría BASE_PATH_MASTER = "http://localhost:8000/map/api/master/?operation=5&master_name=param_nombre" headers_master = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_MASTER = BASE_PATH_MASTER.replace("param_nombre", pnombre) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_estudiante = fork_service.llamada_get(BASE_PATH_MASTER, headers_master) return rta_buscar_estudiante
def dar_seccion_curso(p_id_curso): #Parametros para la_ llamada de la llamada de una maestría BASE_PATH_SECCIONES_COURSE = "http://localhost:8000/map/api/course/id_curso/?operation=1" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_SECCIONES_COURSE = BASE_PATH_SECCIONES_COURSE.replace("id_curso", str(p_id_curso)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_curso = fork_service.llamada_get(BASE_PATH_SECCIONES_COURSE, headers_course) return rta_buscar_curso
def dar_seccion_crn(p_crn): #Parametros para la llamada de la llamada de una maestría BASE_PATH_seccion = "http://localhost:8000/map/api/section/crn_seccion/?operation=6" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_seccion = BASE_PATH_seccion.replace("crn_seccion", str(p_crn)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_seccion = fork_service.llamada_get(BASE_PATH_seccion, headers_course) return rta_buscar_seccion
def dar_profesor(p_code): #Parametros para la llamada de la llamada de una maestría BASE_PATH_TEACHER = "http://localhost:8000/map/api/teacher/code_teacher?operation=1" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_TEACHER = BASE_PATH_TEACHER.replace("code_teacher", str(p_code)) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_teacher = fork_service.llamada_get(BASE_PATH_TEACHER, headers_course) return rta_buscar_teacher
def dar_curso(p_code): #Parametros para la llamada de la llamada de una maestría BASE_PATH_COURSE = "http://localhost:8000/map/api/course/?operation=2&code_curso=p_code_curso" headers_course = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } BASE_PATH_COURSE = BASE_PATH_COURSE.replace("p_code_curso", p_code) #Se llama al servicio de llamada de estudiante para verificar si este existe rta_buscar_curso = fork_service.llamada_get(BASE_PATH_COURSE, headers_course) return rta_buscar_curso
def cargar_estudiantes_graduados(parchivo): #Parametros para la llamada de un estudiante headers_student = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } #Parametros para actualizar los datos de un estudiante BASE_PATH_EDIT_STUDENT = "http://localhost:8000/map/api/student/codigo_student" headers_edit_student = { 'API-KEY': '123', 'Authorization': 'Token ef3859d862f572ad532fceb04536e948da1d5270' } delimiter = ' ' with open(local_settings.path_student_graduated + parchivo, 'rb') as csvfile: reader = csv.DictReader(csvfile, delimiter=delimiter) for row in reader: BASE_PATH_STUDENT = "http://localhost:8000/map/api/student/codigo_student/?operation=6" pprograma = row["PROGRAMA"] papellido = row['APELLIDOS'] pcodigo = row['CARNET'] pnombre = row['NOMBRES'] pstatus = 3 BASE_PATH_STUDENT = BASE_PATH_STUDENT.replace("codigo_student", row['CARNET']) rta_buscar_estudiante = fork_service.llamada_get(BASE_PATH_STUDENT, headers_student) s_code = rta_buscar_estudiante.status_code if s_code == 500: rta_dar_maestria = maestrias.dar_maestria(pprograma) s_code_dar_maestria = rta_dar_maestria.status_code if rta_dar_maestria != None: if s_code_dar_maestria == 500: print 'No se encontro la maestría: ' + pprograma rta_crear = maestrias.crear_maesria(pprograma) if rta_crear == 500: print "Error en la creacion de la maestria" + pprograma elif rta_crear == 200: print('Se creó la maestria:') print rta_crear.text print elif s_code_dar_maestria == 200: decode_dar_maestria = rta_dar_maestria.text json_maestria = json.loads(decode_dar_maestria) master_id=json_maestria["id"] data = { 'lastname': papellido, 'code': pcodigo, 'name': pnombre, 'student_status': pstatus, 'master_id': master_id } rta = servicio_crear_estudiante( data ) print rta else: print "Error en el estudiante" + pcodigo else: print "Error en la busqueda de la maestría: " + pcodigo else: json_id_estudiante = json.loads(rta_buscar_estudiante.text)['id'] BASE_PATH_EDIT_STUDENT = BASE_PATH_EDIT_STUDENT.replace("codigo_student", str(json_id_estudiante)) data_edit = { 'student_status': 3 } print(BASE_PATH_EDIT_STUDENT) print(data_edit) rta = fork_service.llamada_put(BASE_PATH_EDIT_STUDENT, headers_edit_student, data_edit) print "Estudiante ya existe: " + pcodigo print "Se actualiza el estado a graduado" print(rta.text)