def changePassword(request): try: data = json.loads(request.body) user = User() token = Token() token = Token.objects.get(token=data['token']) user = token.user if(not check_password(data['old_password'],user.password)): raise myError('Wrong old password.') if(data['new_password'] != data['re_password']): raise myError('Two passwords are different.') user.password = make_password(data['new_password']) user.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '' } } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def createNewProject(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_name = data['project_name'] if not project_name: raise myError('Project_name can\'t be null.') track = Tracks.objects.filter(track=data['track']).first() # function = Functions.objects.filter(function=data['function']),first() project = Project() project.creator = user project.project_name = project_name project.track = track # project.function = function project.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def changeProjectName(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Change Failed.') project.project_name = data['project_name'] project.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getResultImage(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Get Failed.') chainid = data['chain_id'] chain = Chain.objects.filter(id=data['chain_id']).first() sequence = chain.sequence if not sequence: filepath = None raise myError('no img.') else: if sequence.startswith('_'): sequence = sequence[1:] if sequence.endswith('_'): sequence = sequence[:-1] chainName = chain.name width = 80 * len(sequence.split('_')) height = 100 if width > 800: width = 800 height = 200 * (len(sequence.split('_')) // 10) filepath = getSequenceResultImage(sequence, width, height, chainName) chain.isModified = False chain.image_file_path = filepath chain.save() result = { 'successful': True, 'data': filepath, 'error': { 'id': '', 'msg': '', } } except myError as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } } except Exception as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.args, } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def createProjectDevice(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Create Failed.') if not data['device_name']: raise myError('Devicee_name can\'t be Null.' ) chain = Chain() chain.name = data['device_name'] chain.project = project chain.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def changeProjectName(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Change Failed.') project.project_name = data['project_name'] project.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def createProjectDevice(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Create Failed.') if not data['device_name']: raise myError('Devicee_name can\'t be Null.') chain = Chain() chain.name = data['device_name'] chain.project = project chain.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getParts(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') part_name = data['part_name'] searchResult = getPart(part_name) if searchResult['successful']: result = { 'successful': True, 'data': searchResult, 'error': { 'id': '', 'msg': '', } } else: raise myError('Check Failed.') except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def deleteProjectDevice(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Delete Failed.') chain = Chain.objects.filter(id=data['device_id']).first() deleteMassage = chain.delete() print deleteMassage result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def deleteProjectDevice(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Delete Failed.') chain = Chain.objects.filter(id=data['device_id']).first() deleteMassage = chain.delete() print deleteMassage result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def deleteProject(request): try: body = request.body.decode('utf-8') data = json.loads(body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Delete Failed.') project.delete() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def createNewProject(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_name = data['project_name'] if not project_name: raise myError('Project_name can\'t be null.' ) track = Tracks.objects.filter(track=data['track']).first() # function = Functions.objects.filter(function=data['function']),first() project = Project() project.creator = user project.project_name = project_name project.track = track # project.function = function project.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getParts(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') part_name = data['part_name'] searchResult = getPart(part_name) if searchResult['successful']: result = { 'successful': True, 'data': searchResult, 'error': { 'id': '', 'msg': '', } } else: raise myError('Check Failed.') except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def changePassword(request): try: data = json.loads(request.body) user = User() token = Token() token = Token.objects.get(token=data['token']) user = token.user if (not check_password(data['old_password'], user.password)): raise myError('Wrong old password.') if (data['new_password'] != data['re_password']): raise myError('Two passwords are different.') user.password = make_password(data['new_password']) user.save() result = {'successful': True, 'error': {'id': '', 'msg': ''}} except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = { 'successful': False, 'error': { 'id': '1024', 'msg': e.args, } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def register(request): try: data = json.loads(request.body) userName = noneIfEmptyString(data['username']) if not userName: raise myError('The username can\'t be none.') email = noneIfEmptyString(data['email']) if not email: raise myError('Wrong email.') password = data['password'] repassword = data['repassword'] existEmail = User.objects.filter(email=email).first() if existEmail: raise myError('The email already exists.') existName = User.objects.filter(userName=userName).first() if existName: raise myError('The username already exists.') if password != repassword: raise myError('Two passwords are different.') user = User() user.userName = userName user.password = make_password(password) user.email = email user.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = {'successful': False, 'error': {'id': '1', 'msg': e.value}}
def getChain(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Check Failed.') chain = Chain.objects.filter(id=data['chain_id']).first() sequence = chain.sequence sequenceList = [] if (sequence): if sequence.startswith('_'): sequence = sequence[1:] if sequence.endswith('_'): sequence = sequence[:-1] sequenceList = sequence.split('_') partList = [] for seq in sequenceList: part = Parts.objects.filter(part_id=seq).first() partList.append({ 'part_id': part.part_id, 'part_name': part.part_name, 'part_type': part.part_type }) result = { 'successful': True, 'data': partList, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except myError as e: result = { 'successful': False, 'error': { 'id': '1024', 'msg': e.args } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getProjectDevices(request): try: body = request.body.decode('utf-8') data = json.loads(body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Check Failed.') chains = Chain.objects.filter(project=project) chainsList = [] for chain in chains: seq = chain.sequence if not seq: chainLength = 0 else: if seq.startswith('_'): seq = seq[1:] if seq.endswith('_'): seq = seq[:-1] chainLength = len(seq.split('_')) chainsList.append({ 'chain_id': chain.id, 'chain_sequence': chain.sequence, 'chain_name': chain.name, 'chain_isModified': chain.isModified, 'chain_image_file_path': chain.image_file_path, 'chain_Length': chainLength }) result = { 'successful': True, 'data': chainsList, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def updateChain(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Update Failed.') chainid = data['chain_id'] chain = Chain() chain = Chain.objects.filter(id=data['chain_id']).first() if len(data['chain_info']): seq = '' for chain_item in data['chain_info']: if seq: seq += '_' + str(chain_item[u'part_id']) else: seq += str(chain_item[u'part_id']) chain.sequence = seq chain.save() result = { 'successful': True, 'data': seq, 'error': { 'id': '', 'msg': '', } } except myError as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } } except Exception as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.args, } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getProjectDevices(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Check Failed.') chains = Chain.objects.filter(project=project) chainsList = [] for chain in chains: seq = chain.sequence if not seq: chainLength = 0 else: if seq.startswith('_'): seq = seq[1:] if seq.endswith('_'): seq = seq[:-1] chainLength = len(seq.split('_')) chainsList.append( { 'chain_id': chain.id, 'chain_sequence': chain.sequence, 'chain_name': chain.name, 'chain_isModified': chain.isModified, 'chain_image_file_path': chain.image_file_path, 'chain_Length': chainLength }) result = { 'successful': True, 'data': chainsList, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getResultImage(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Get Failed.') chainid = data['chain_id'] chain = Chain.objects.filter(id=data['chain_id']).first() sequence = chain.sequence if not sequence: filepath = None raise myError('no img.') else: if sequence.startswith('_'): sequence = sequence[1:] if sequence.endswith('_'): sequence = sequence[:-1] chainName = chain.name width = 80 * len(sequence.split('_')) height = 100 if width > 800: width = 800 height = 100 * (len(sequence.split('_')) / 10) filepath = getSequenceResultImage(sequence, width, height, chainName) chain.isModified = False chain.image_file_path = filepath chain.save() result = { 'successful': True, 'data': filepath, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def getProjectDevices(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Check Failed.') chains = Chain.objects.filter(project=project) chainsList = [] for chain in chains: seq = chain.sequence if not seq: chainLength = 0 else: if seq.startswith('_'): seq = seq[1:] if seq.endswith('_'): seq = seq[:-1] chainLength = len(seq.split('_')) chainsList.append({ 'chain_id': chain.id, 'chain_sequence': chain.sequence, 'chain_name': chain.name, 'chain_isModified': chain.isModified, 'chain_image_file_path': chain.image_file_path, 'chain_Length': chainLength }) result = { 'successful': True, 'data': chainsList, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getRelatedDisease(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] realated_disease_list = search_related_disease(gene_name) result = { 'successful': True, 'data': realated_disease_list, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def searchParts(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') keyword = data['keyword'] try: funcs = data['funcs'] except: funcs = None searchResult = ambiguousSearch(keyword, funcs) result = { 'successful': True, 'data': searchResult, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def getUserProject(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') projects = Project.objects.filter(creator=user) projectsList = [] for project in projects: projectsList.append({ 'project_name': noneIfEmptyString(project.project_name), 'project_id': project.id, 'track': noneIfEmptyString(project.track.track), 'function': noneIfEmptyString(project.function), 'creator': project.creator.userName }) result = { 'successful': True, 'data': projectsList, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getGeneInfo(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] gene = Gene.objects.filter(name=gene_name).first() gene_id = gene.gene_id get_result = get_gene_info(gene_id) result = { 'successful': get_result[0], 'data': get_result[1], 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getMRecommend(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') part_id = str(data['part_id']) part_id_before = str(data['part_id_before']) recommend_list_back = getMarkovRecommend(part_id) recommend_list_front = getBeforeMarkovRecommend(part_id) recommend_list_middle = getBetweenMarkovRecommend(part_id_before, part_id) result = { 'successful': True, 'data': { 'recommend_list_front': recommend_list_front, 'recommend_list_middle': recommend_list_middle, 'recommend_list_back': recommend_list_back, }, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def getRelatedGene(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] realated_gene_list = [] realated_genes = search_relation(gene_name) if realated_genes['children'] > 10: realated_genes['children'].sort(key=lambda d:float(d['relations']), reverse=True) realated_genes['children'] = realated_genes['children'][:10] result = { 'successful': True, 'data': realated_genes, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def searchGenes(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') keyword = data['keyword'] search_result = search_genes(keyword) result = { 'successful': True, 'data': search_result, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getRelatedCompound(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') compound_tags = data['compound_tags'] cid_list = [] for compound in compound_tags: cid_list.append(compound['id']) graph = gene_graph(cid_list, None) graph.cal_graph() graph_result = graph.get_graph() result = { 'successful': True, 'data': graph_result, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def searchParts(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') keyword = data['keyword'] try: funcs = data['funcs'] except: funcs = None searchResult = ambiguousSearch(keyword, funcs) result = { 'successful': True, 'data': searchResult, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def getThreeSentences(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name_one = data['source_name'] gene_name_two = data['target_name'] sentenceList = search_three_sentence(gene_name_one, gene_name_two) result = { 'successful': True, 'data': sentenceList, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getRelatedGene(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] realated_gene_list = [] realated_genes = search_relation(gene_name) if realated_genes['children'] > 10: realated_genes['children'].sort( key=lambda d: float(d['relations']), reverse=True) realated_genes['children'] = realated_genes['children'][:10] result = { 'successful': True, 'data': realated_genes, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def searchGenes(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') keyword = data['keyword'] search_result = search_genes(keyword) result = { 'successful': True, 'data': search_result, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getCompound(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') compound_id = data['compound_id'] get_result = get_compound_info(compound_id) result = { 'successful': get_result[0], 'data': get_result[1], 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getThreeSentences(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name_one = data['source_name'] gene_name_two = data['target_name'] sentenceList = search_three_sentence(gene_name_one, gene_name_two) result = { 'successful': True, 'data': sentenceList, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getMRecommend(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') part_id = str(data['part_id']) part_id_before = str(data['part_id_before']) recommend_list_back = getMarkovRecommend(part_id) recommend_list_front = getBeforeMarkovRecommend(part_id) recommend_list_middle = getBetweenMarkovRecommend(part_id_before, part_id) result = { 'successful': True, 'data': { 'recommend_list_front': recommend_list_front, 'recommend_list_middle': recommend_list_middle, 'recommend_list_back': recommend_list_back, }, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def getGeneInfo(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] gene = Gene.objects.filter(name=gene_name).first() gene_id = gene.gene_id get_result = get_gene_info(gene_id) result = { 'successful': get_result[0], 'data': get_result[1], 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getThreeSentences(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name_one = data['source_name'] gene_name_two = data['target_name'] sentenceList = search_three_sentence(gene_name_one,gene_name_two) result = { 'successful': True, 'data': sentenceList, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getRelatedDisease(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] realated_disease_list = search_related_disease(gene_name) result = { 'successful': True, 'data': realated_disease_list, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getRelatedDisease(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_name = data['gene_name'] realated_disease_list = search_related_disease(gene_name) result = { 'successful': True, 'data': realated_disease_list, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getGene(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_id = data['gene_id'] get_result = get_gene_info(gene_id) result = { 'successful': get_result[0], 'data': get_result[1], 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def searchCompound(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') keyword = data['keyword'] search_result = search_compound(keyword) result = { 'successful': True, 'data': search_result, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getRelatedCompound(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') compound_tags = data['compound_tags'] cid_list = [] for compound in compound_tags: cid_list.append(compound['id']) graph = gene_graph(cid_list, None) graph.cal_graph() graph_result = graph.get_graph() result = { 'successful': True, 'data': graph_result, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getChain(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Check Failed.') chain = Chain.objects.filter(id=data['chain_id']).first() sequence = chain.sequence if sequence.startswith('_'): sequence = sequence[1:] if sequence.endswith('_'): sequence = sequence[:-1] sequenceList = sequence.split('_') partList = [] for seq in sequenceList: part = Parts.objects.filter(part_id=seq).first() partList.append({ 'part_id': part.part_id, 'part_name': part.part_name, 'part_type': part.part_type }) result = { 'successful': True, 'data': partList, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def login(request): try: data = json.loads(request.body) user = data['username'] password = data['password'] customerUser = User() customerUser = User.objects.filter(userName=user).first() if not customerUser: raise myError("The user doesn't exist.") if (check_password(password, customerUser.password)): token = Token() token = Token.objects.filter(user=customerUser) if (len(token) != 0): token.delete() else: raise myError('Wrong login name or password.') confirmed = customerUser.isConfirmed customerToken = ''.join( random.sample(string.ascii_letters + string.digits, 30)) token = Token() token.token = customerToken token.user = customerUser token.expire = '-1' token.save() result = { 'data': { 'confirmed': confirmed, 'token': customerToken, 'expire': -1, }, 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = {'successful': False, 'error': {'id': '1', 'msg': e.value}} except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def login(request): try: data = json.loads(request.body) user = data['username'] password = data['password'] customerUser = User() customerUser = User.objects.filter(userName=user).first() if not customerUser: raise myError("The user doesn't exist.") if(check_password(password, customerUser.password)): token = Token() token = Token.objects.filter(user=customerUser) if(len(token) != 0): token.delete() else: raise myError('Wrong login name or password.') confirmed = customerUser.isConfirmed customerToken = ''.join(random.sample(string.ascii_letters + string.digits, 30)) token = Token() token.token = customerToken token.user = customerUser token.expire = '-1' token.save() result = { 'data': { 'confirmed': confirmed, 'token': customerToken, 'expire': -1, }, 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '1', 'msg': e.value } }
def updateChain(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_id = data['project_id'] project = Project() project = Project.objects.filter(id=project_id).first() if user != project.creator: raise myError('Update Failed.') chainid = data['chain_id'] chain = Chain() chain = Chain.objects.filter(id=data['chain_id']).first() if len(data['chain_info']): seq = '' for chain_item in data['chain_info']: if seq: seq += '_' + str(chain_item[u'part_id']) else: seq += str(chain_item[u'part_id']) chain.sequence = seq chain.save() result = { 'successful': True, 'data': seq, 'error': { 'id': '', 'msg': '', } } except myError, e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } }
def createNewProject(request): try: body = request.body.decode('utf-8') data = json.loads(body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') project_name = data['project_name'] if not project_name: raise myError('Project_name can\'t be null.') track = Tracks.objects.filter(track=data['track']).first() # function = Functions.objects.filter(function=data['function']),first() project = Project() project.creator = user project.project_name = project_name project.track = track # project.function = function project.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = {'successful': False, 'error': {'id': '1024', 'msg': e.args}} finally: return HttpResponse(json.dumps(result), content_type='application/json')
def getParts(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') part_name = data['part_name'] searchResult = getPart(part_name) if searchResult['successful']: result = { 'successful': True, 'data': searchResult, 'error': { 'id': '', 'msg': '', } } else: raise myError('Check Failed.') except myError as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.value, } } except Exception as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.args, } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def register(request): try: data = json.loads(request.body) userName = noneIfEmptyString(data['username']) if not userName: raise myError('The username can\'t be none.' ) email = noneIfEmptyString(data['email']) if not email: raise myError('Wrong email.') password = data['password'] repassword = data['repassword'] existEmail = User.objects.filter(email=email).first() if existEmail: raise myError('The email already exists.') existName = User.objects.filter(userName=userName).first() if existName: raise myError('The username already exists.') if password != repassword: raise myError('Two passwords are different.') user = User() user.userName = userName user.password = make_password(password) user.email = email user.save() result = { 'successful': True, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '1', 'msg': e.value } }
def changePassword(request): try: data = json.loads(request.body) user = User() token = Token() token = Token.objects.get(token=data['token']) user = token.user if (not check_password(data['old_password'], user.password)): raise myError('Wrong old password.') if (data['new_password'] != data['re_password']): raise myError('Two passwords are different.') user.password = make_password(data['new_password']) user.save() result = {'successful': True, 'error': {'id': '', 'msg': ''}} except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }
def getUserProject(request): try: body = request.body.decode('utf-8') data = json.loads(body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') projects = Project.objects.filter(creator=user) projectsList = [] for project in projects: projectsList.append({ 'project_name': noneIfEmptyString(project.project_name), 'project_id': project.id, 'track': noneIfEmptyString(project.track.track), 'function': noneIfEmptyString(project.function), 'creator': project.creator.userName }) result = { 'successful': True, 'data': projectsList, 'error': { 'id': '', 'msg': '', } } except myError as e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } } except Exception as e: result = { 'successful': False, 'error': { 'id': '', 'msg': e.args, } } finally: return HttpResponse(json.dumps(result), content_type='application/json')
def randomGene(request): try: data = json.loads(request.body) try: token = Token.objects.filter(token=data['token']).first() user = token.user except: raise myError('Please Log In.') gene_file = open('data/gene_name.json', 'r') gene_list = json.loads(gene_file.read()) gene_name = random.choice(gene_list) search_result = search_relation(gene_name) if len(search_result['children']) > 10: search_result['children'].sort(key=lambda d:float(d['relations']), reverse=True) search_result['children'] = search_result['children'][:10] for gene in search_result['children']: gene_name = gene['name'] temp_result = search_relation(gene_name) if len(temp_result['children']) > 10: temp_result['children'].sort(key=lambda d:float(d['relations']), reverse=True) gene['children'] = temp_result['children'][:10] else: gene['children'] = temp_result['children'] result = { 'successful': True, 'data': search_result, 'error': { 'id': '', 'msg': '', }, } except myError, e: result = { 'successful': False, 'error': { 'id': '3', 'msg': e.value, } }