コード例 #1
0
ファイル: views.py プロジェクト: orentola/prediction_project
def add_to_portfolio(request, company_id):
	event_date = str(date.today())
	event_name = 'add_to_porftolio'
	event_parameter = str(company_id)
	do_not_insert = False
	succeeded = False
	
	try:
		port_data_raw_temp = stock_portfolio.objects.values('current_portfolio', 'event_id').order_by('-event_id')
		

		if len(port_data_raw_temp) == 0:
			current_portfolio = str(company_id)
			event_id = 0
		else:
			port_data_raw = port_data_raw_temp[0]
			
			if (str(company_id) in port_data_raw['current_portfolio'].split(',')):
				return_value = 'You passed parameter ' + str(company_id) + ' , it is already in the portfolio! Didnt add.'
				do_not_insert = True
				succeeded = True
			else:
				current_portfolio = port_data_raw['current_portfolio']
				event_id = int(port_data_raw['event_id']) + 1		
				current_portfolio = current_portfolio + str(',' + str(company_id))
				temp_portfolio_raw = current_portfolio.split(',')
				temp_portfolio = []
				for j in temp_portfolio_raw:
					temp_portfolio.append(int(j))
				temp_portfolio.sort()
				current_portfolio = '' 
				for i in temp_portfolio:
					current_portfolio = current_portfolio + str(i) + ','
				current_portfolio = current_portfolio[:-1]
		try:
			if do_not_insert == False:
				event = stock_portfolio(
								event_id = event_id,
								event_date = event_date, 
								event_name = event_name, 
								event_parameter = event_parameter,
								current_portfolio = current_portfolio)
				event.save()
				succeeded = True
				return_value = 'You passed parameter ' + str(company_id) + ' , insertion was successful'
		except:
			return_value = 'Insertion failed, no idea why.'			
	except:
		return_value = 'Unknown error. Probably erroneous input, exception: ' + str(sys.exc_info()[0])
	
	return_values = {}
	return_values['status'] = str(succeeded)
	return_values['message'] = return_value
	return HttpResponse(json.dumps(return_values), content_type = "application/javascript")
コード例 #2
0
ファイル: views.py プロジェクト: orentola/prediction_project
def remove_from_portfolio(request, company_id):
	port_data_raw_temp = stock_portfolio.objects.values('current_portfolio', 'event_id').order_by('-event_id')[0]
	event_id = port_data_raw_temp['event_id']
	current_portfolio = port_data_raw_temp['current_portfolio']
	event_date = str(date.today())
	event_name = 'remove company from portfolio'
	event_parameter = str(company_id)
	
	return_values = {}
		
	temp_portfolio = current_portfolio.split(',')
	port_string = ''
	
	return_values['status'] = 'false'
	return_values['message'] = 'Successulfully added new event, but nothing to remove'

	for i in temp_portfolio:
		if i == company_id:
			#status_string = "did not add " + str(company_id)
			return_values['status'] = 'true'	
			return_values['message'] = "Successfully added new event, removed " + str(company_id)
			continue
		port_string = port_string + str(i) + ','
	current_portfolio = port_string[:-1]
	
	try:
		event = stock_portfolio(
			event_id = event_id + 1,
			event_date = event_date,
			event_name = event_name,
			event_parameter = event_parameter,
			current_portfolio = current_portfolio)
		event.save()
	except:
		return_values['message'] = "Failed to remove the company, " + str(company_id)
		return_values['status'] = 'error'
	
	return HttpResponse(json.dumps(return_values), content_type = 'application/javascript')