63 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| from flask import request, jsonify
 | |
| from flask_login import current_user, logout_user, login_user, login_required
 | |
| from app.admin import admin
 | |
| from app import db
 | |
| from datetime import datetime
 | |
| from app.classes.pricing import (
 | |
|                                  Pricing_Oil_Oil,
 | |
|                                  Pricing_Oil_Oil_schema)
 | |
| from app.classes.admin import Admin_Company, Admin_Company_schema
 | |
| 
 | |
| @admin.route("/oil/create", methods=["POST"])
 | |
| def create_oil_price():
 | |
|     """
 | |
|     Changes the price for oil deliveries
 | |
|     """
 | |
|     now = datetime.utcnow()
 | |
|     price_from_supplier = request.json["price_from_supplier"]
 | |
|     price_for_customer = request.json["price_for_customer"]
 | |
|     price_for_employee = request.json["price_for_employee"]
 | |
|     price_same_day = request.json["price_same_day"]
 | |
|     price_prime = request.json["price_prime"]
 | |
| 
 | |
|     new_admin_oil_price = Pricing_Oil_Oil(
 | |
|         price_from_supplier=price_from_supplier,
 | |
|         price_for_customer=price_for_customer,
 | |
|         price_for_employee=price_for_employee,
 | |
|         price_same_day=price_same_day,
 | |
|         price_prime=price_prime,
 | |
|         date=now,
 | |
|     )
 | |
| 
 | |
|     db.session.add(new_admin_oil_price)
 | |
|     db.session.commit()
 | |
| 
 | |
|     return jsonify({
 | |
|         "ok": True,
 | |
|         'price': new_admin_oil_price.id,
 | |
|     }), 200
 | |
| 
 | |
| 
 | |
| 
 | |
| @admin.route("/oil/get", methods=["GET"])
 | |
| def get_oil_price():
 | |
|     """
 | |
|     gets oil prices
 | |
|     """
 | |
|     get_oil_prices = (db.session
 | |
|                       .query(Pricing_Oil_Oil)
 | |
|                       .order_by(Pricing_Oil_Oil.date.desc())
 | |
|                       .first())
 | |
|     price_schema = Pricing_Oil_Oil_schema(many=False)
 | |
|     return jsonify(price_schema.dump(get_oil_prices))
 | |
| 
 | |
| 
 | |
| @admin.route("/company/<int:company_id>", methods=["GET"])
 | |
| def get_company(company_id):
 | |
|     get_data_company = (db.session
 | |
|                         .query(Admin_Company)
 | |
|                         .first())
 | |
| 
 | |
|     company_schema = Admin_Company_schema(many=False)
 | |
|     return jsonify(company_schema.dump(get_data_company))
 |