def save(self): try: check_achievement = sess.query(achievement).filter(achievement.lecturer_nip == self.lecturer_nip).filter(achievement.title==self.title).\ filter(achievement.year == self.year).first() if check_achievement is None: sess.add(self) sess.commit() new_achievement = { 'id': self.id, 'lecturer_nip': self.lecturer_nip, 'title': self.title, 'issuer': self.issuer, 'year': self.year, 'filepath': self.filepath } ret = { 'status': 200, 'message': 'New Achievement Registered', 'results': new_achievement } else: ret = { 'status': 200, 'message': 'Your achievement already registered before, please try again another achievement!' } return ret except Exception as e: ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def edit_research_file(id, filepath): try: selected_research = sess.query(research_file).filter(research_file.research_id == id).first() if selected_research is not None: data = { 'filepath': filepath } edit = sess.query(research_file).filter(research_file.research_id == id).update(data, synchronize_session=False) sess.commit() if edit == 1: ret = { 'status': 200, 'message': 'Data updated!' } else: ret = { 'status': 500, 'message': "Something's went wrong with our server. Please try again later!" } return ret else: ret = { 'status': 200, 'message': "Research is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: check_course = sess.query(academic).filter( academic.course_id == self.course_id).first() if check_course is not None: ret = { 'status': 200, 'message': "Course already registered, try again another Course" } return ret sess.add(self) sess.commit() new_course = { 'id': self.id, 'course_id': self.course_id, 'course_name': self.course_name, 'total_classes': self.total_classes } ret = { 'status': 200, 'message': 'Course Registered', 'results': new_course } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def delete(self, nip): try: selected_lecturer = sess.query(lecturer).filter(lecturer.nip == nip).first() if selected_lecturer is not None: sess.delete(selected_lecturer) sess.commit() ret = { 'status': 200, 'message': 'Data deleted!' } return ret else: ret = { 'status': 200, 'message': "NIP is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: check_user = sess.query(admin).filter(admin.auth_id == self.auth_id).first() if check_user is not None: ret = { 'status': 200, 'message': "Auth_ID already registered, try again another Auth_ID" } return ret sess.add(self) sess.commit() new_admin = { 'id': self.id, 'auth_id': self.auth_id, 'name': self.name, 'role': self.role, 'email': self.email } ret = { 'status': 200, 'message': 'Admin Registered', 'results': new_admin } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def delete_research(id): try: selected_research = sess.query(research).filter(research.id == id).first() if selected_research is not None: sess.delete(selected_research) sess.commit() ret = { 'status': 200, 'message': 'Data deleted!' } return ret else: ret = { 'status': 200, 'message': "Research is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args } return ret finally: sess.close()
def save(self): try: check_user = sess.query(lecturer).filter(lecturer.nip == self.nip).first() if check_user is not None: ret = { 'status': 200, 'message': "NIP already registered, try again another NIP" } return ret new_lecturer = { 'name': self.name, 'role': self.role, 'nip': self.nip, 'email': self.email } ret = { 'status': 200, 'message': 'Lecturer Registered', 'results': new_lecturer } sess.add(self) sess.commit() return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def edit_experience(id, request): try: selected_experience = sess.query(experience).filter( experience.id == id).first() if selected_experience is not None: data = {} for k in request.keys(): param = k data[k] = request[param] edit = sess.query(experience).filter(experience.id == id).update( data, synchronize_session=False) sess.commit() if edit == 1: ret = {'status': 200, 'message': 'Data updated!'} else: ret = { 'status': 500, 'message': "Something's went wrong with our server. Please try again later!" } return ret else: ret = {'status': 200, 'message': "Experience is not registered"} return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: sess.add(self) sess.commit() new_final_task_lecturer = { 'id': self.id, 'final_task_id': self.final_task_id, 'lecturer_nip': self.lecturer_nip, 'lecturer_position': self.lecturer_position, } ret = { 'status': 200, 'message': 'New Final Task Lecturer Registered', 'results': "Sukses" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: check_others = sess.query(other_publication).filter(other_publication.lecturer_nip == self.lecturer_nip). \ filter(other_publication.title == self.title).first() if check_others is None: sess.add(self) sess.commit() new_other_publication = { 'id': self.id, 'lecturer_nip': self.lecturer_nip, 'title': self.title, 'year': self.year, 'publisher': self.publisher, 'filepath': self.filepath } ret = { 'status': 200, 'message': 'New Publication Registered', 'results': new_other_publication } else: ret = { 'status': 200, 'message': 'Your publication already registered before, please try again another publication!' } return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def edit_final_task_lecturer(id, request): try: selected_final_task_lecturer = sess.query(finalTask_lecturer).filter( finalTask_lecturer.final_task_id == id) if selected_final_task_lecturer.first() is not None: # data_finalTask = {} # for k in request.keys(): # param = k # data_finalTask[k] = request[param] # edit = selected_final_task_lecturer.update(data_finalTask, synchronize_session=False) edit = selected_final_task_lecturer.update( request, synchronize_session=False) sess.commit() if edit == 1: ret = {'status': 200, 'message': 'Data updated!'} else: ret = { 'status': 500, 'message': "Something's went wrong with our server. Please try again later!" } return ret else: ret = {'status': 400, 'message': "Final Task is not registered"} return ret except Exception as e: sess.rollback() ret = { 'status': 500, 'message': e.args, } return ret finally: sess.close()
def save(self): try: sess.add(self) sess.commit() new_final_task = { 'id': self.id, 'student_name': self.student_name, 'student_nim': self.student_nim, 'student_type': self.student_type, 'title': self.title, 'starting_date': self.starting_date, 'graduation_date': self.graduation_date } ret = { 'status': 200, 'message': 'New Final Task Registered', 'results': new_final_task } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def delete_publication(cat, id): try: # selected_publication = sess.query(cat).filter(cat.id == id).first() if cat == 'journal': selected_publication = sess.query(journal).filter( journal.id == id).first() elif cat == 'patent': selected_publication = sess.query(patent).filter( patent.id == id).first() elif cat == 'other': selected_publication = sess.query(other_publication).filter( other_publication.id == id).first() else: ret = {'status': 400, 'message': "Wrong category"} return ret if selected_publication is not None: sess.delete(selected_publication) sess.commit() ret = {'status': 200, 'message': 'Data deleted!'} return ret else: ret = {'status': 200, 'message': "Publication is not registered"} return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def delete_achievement(id): try: selected_achievement = sess.query(achievement).filter(achievement.id == id).first() if selected_achievement is not None: sess.delete(selected_achievement) sess.commit() ret = { 'status': 200, 'message': 'Data deleted!' } return ret else: ret = { 'status': 200, 'message': "Achievement is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def delete(self, auth_id): try: selected_admin = sess.query(admin).filter(admin.auth_id == auth_id).first() if selected_admin is not None: sess.delete(selected_admin) sess.commit() ret = { 'status': 200, 'message': 'Data deleted!' } return ret else: ret = { 'status': 200, 'message': "Auth_ID is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): global saveJourCorr try: check_journal = sess.query(journal).filter(journal.lecturer_nip == self.lecturer_nip). \ filter(journal.title == self.title).first() if check_journal is None: sess.add(self) sess.commit() new_journal = { 'lecturer_nip': self.lecturer_nip, 'title': self.title, 'issue': self.issue, 'year': self.year, 'number': self.number, 'total_page': self.total_page, 'type': self.type, 'doi': self.doi, 'link': self.link, 'filepath': self.filepath, 'names': self.names } # savejourCorr = True # for name in self.names: # if saveJourCorr: # saveJourCorr = journalCorrespondingAuthor(journal_id=self.id, names=name).save() # else: # return {'status': 200, # 'message': 'something went wrong when we try to save corresponding author!'} if self.names: names = self.names.split(",") for name in names: journalCorrespondingAuthor(journal_id=self.id, names=name).save() # else: # return {'status': 200, 'message': 'no corresponding author'} ret = { 'status': 200, 'message': 'New Journal Registered', 'results': new_journal } else: ret = { 'status': 200, 'message': 'Your journal already registered before, please try again another journal!' } return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def save(self): try: sess.add(self) sess.commit() return True except Exception as e: sess.rollback() return e finally: sess.close()
def edit_final_task(id, request): try: selected_final_task = sess.query(finalTask).filter(finalTask.id == id) if selected_final_task.first() is not None: data_finalTask = {} data_finalTask['student_name'] = request['student_name'] data_finalTask['student_nim'] = request['student_nim'] data_finalTask['student_type'] = request['student_type'] data_finalTask['title'] = request['title'] data_finalTask['starting_date'] = request['starting_date'] data_finalTask['graduation_date'] = request['graduation_date'] data_finalTaskLecturer = {} data_finalTaskLecturer['lecturer_nip'] = request['lecturer_nip'] data_finalTaskLecturer['lecturer_position'] = request[ 'lecturer_position'] # data_finalTaskFile = {} # data_finalTaskLecturer['file_path'] = request['file_path'] # for k in request.keys(): # param = k # data_finalTask[k] = request[param] editFinalTask = selected_final_task.update( data_finalTask, synchronize_session=False) editFinalTaskLecturer = edit_final_task_lecturer( id, data_finalTaskLecturer) # editFinalTaskFile = edit_final_task_lecturer(id, data_finalTaskFile) sess.commit() if ((editFinalTask == 1) and (editFinalTaskLecturer['status'] == 200)): # and (editFinalTaskFile.status == 200)): ret = {'status': 200, 'message': 'Data updated!'} else: ret = { 'status': 500, 'message': "Something's went wrong with our server. Please try again later!" } return ret else: ret = {'status': 400, 'message': "Final Task is not registered"} return ret except Exception as e: sess.rolback() ret = { 'status': 500, 'message': e.args, } return ret finally: sess.close()
def save(self): try: check_course = sess.query(academic).filter( academic.course_id == self.course_id).first() if check_course is None: ret = { 'status': 200, 'message': "Course is not registered yet, try again another Course" } return ret check_lecturer = sess.query(academic_lecturer).filter( academic_lecturer.course_id == self.course_id, academic_lecturer.lecturer_nip == self.lecturer_nip).first() if check_lecturer is not None: ret = { 'status': 200, 'message': 'You have already registered for this course!' } return ret sess.add(self) sess.commit() new_academic_lecturer = { 'id': self.id, 'course_id': self.course_id, 'course_name': check_course.course_name, 'course_class': self.course_class, 'lecturer_nip': self.lecturer_nip, 'lecturer_credit': self.lecturer_credit, 'total_credit': self.total_credit, } ret = { 'status': 200, 'message': 'New Academic Lecturer Registered', 'results': new_academic_lecturer } return ret except Exception as e: sess.rollback ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def delete(self, academic_id): try: selected_course = sess.query(academic).filter( academic.id == academic_id).first() if selected_course is not None: sess.delete(selected_course) sess.commit() ret = {'status': 200, 'message': 'Data deleted!'} return ret else: ret = {'status': 200, 'message': "Course ID is not registered"} return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def deleteTask(id): try: selected_final_task = sess.query(finalTask).filter( finalTask.id == id).first() if selected_final_task is not None: sess.delete(selected_final_task) sess.commit() ret = {'status': 200, 'message': 'Data deleted!'} return ret else: ret = {'status': 200, 'message': "Final Task is not registered"} return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def delete_experience(id): try: selected_experience = sess.query(experience).filter( experience.id == id).first() if selected_experience is not None: sess.delete(selected_experience) sess.commit() ret = {'status': 200, 'message': 'Data deleted!'} return ret else: ret = {'status': 200, 'message': "Experience is not registered"} return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def save(self): try: sess.add(self) sess.commit() res = { 'research_id': self.research_id, 'filepath': self.filepath } return res except Exception as e: sess.rollback() res = { 'status': 200, 'message': e.args } return res finally: sess.close()
def edit_publication(cat, id, request): try: if cat == 'journal': selected_publication = sess.query(journal).filter(journal.id == id) elif cat == 'patent': selected_publication = sess.query(patent).filter(patent.id == id) elif cat == 'other': selected_publication = sess.query(other_publication).filter( other_publication.id == id) else: ret = {'status': 400, 'message': "Wrong category"} return ret if selected_publication is not None: data = {} for k in request.keys(): param = k data[k] = request[param] edit = selected_publication.update(data, synchronize_session=False) sess.commit() if edit == 1: ret = {'status': 200, 'message': 'Data updated!'} else: ret = { 'status': 500, 'message': "Something's went wrong with our server. Please try again later!" } else: ret = {'status': 400, 'message': "Publication is not registered"} return ret except Exception as e: sess.rollback() ret = { 'status': 500, 'message': e.args, } return ret finally: sess.close()
def delete(self, id): try: selected_academic_lecturer = sess.query(academic_lecturer).filter( academic_lecturer.id == id).first() if selected_academic_lecturer is not None: sess.delete(selected_academic_lecturer) sess.commit() ret = {'status': 200, 'message': 'Data deleted!'} return ret else: ret = { 'status': 200, 'message': "Academic Lecturer is not registered" } return ret except Exception as e: sess.rollback() ret = {'status': 200, 'message': e.args} return ret finally: sess.close()
def edit(self, auth_id, request): try: selected_admin = sess.query(admin).filter(admin.auth_id == auth_id).first() if selected_admin is not None: data = {} for k in request.keys(): param = k if param == "password": data[k] = bcrypt.hashpw(request[param].encode('utf-8'), bcrypt.gensalt()) else: data[k] = request[param] check = sess.query(admin).filter(admin.auth_id == auth_id).update(data, synchronize_session=False) sess.commit() if check == 1: ret = { 'status': 200, 'message': 'Data updated!' } else: ret = { 'status': 500, 'message': "Something's wrong with our server. Please try again later!" } return ret else: ret = { 'status': False, 'message': "Auth_ID is not registered" } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: check_research = sess.query(research).filter(research.lecturer_nip == self.lecturer_nip). \ filter(research.title == self.title).first() if check_research is None: sess.add(self) sess.commit() files = research_file(research_id=self.id, filepath=self.filepath) new_research = { 'id': self.id, 'lecturer_nip': self.lecturer_nip, 'title': self.title, 'investor': self.investor, 'amount': self.amount, 'position': self.position, 'year': self.year, 'term': self.term, } ret = { 'status': 200, 'message': 'New Research Registered', 'results': [new_research, files.save()] } else: ret = { 'status': 200, 'message': 'Your research already registered before, please try again another research!' } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args } return ret finally: sess.close()
def save(self): try: check_experience = sess.query(experience).filter(experience.lecturer_nip == self.lecturer_nip).\ filter(experience.job_name == self.job_name).first() if check_experience is None: sess.add(self) sess.commit() new_experience = { 'id': self.id, 'lecturer_nip': self.lecturer_nip, 'job_name': self.job_name, 'job_type': self.job_type, 'year': self.year, 'term': self.term, 'filepath': self.filepath } ret = { 'status': 200, 'message': 'New Experience Registered', 'results': new_experience } else: ret = { 'status': 200, 'message': 'Your experience already registered before, please try again another experience!' } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()
def save(self): try: sess.add(self) sess.commit() new_final_task_path = { 'id': self.id, 'final_task_id': self.final_task_id, 'file_path': self.file_path, } ret = { 'status': 200, 'message': 'New Final Task File Saved', 'results': new_final_task_path } return ret except Exception as e: sess.rollback() ret = { 'status': 200, 'message': e.args, } return ret finally: sess.close()