99 lines
3.0 KiB
Python
99 lines
3.0 KiB
Python
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_Service_General,
|
|
Pricing_Oil_Oil,
|
|
Pricing_Service_General_schema,
|
|
Pricing_Oil_Oil_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"]
|
|
|
|
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,
|
|
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("/service/create", methods=["POST"])
|
|
def create_service_price():
|
|
"""
|
|
Changes general labor rates prices
|
|
"""
|
|
now = datetime.utcnow()
|
|
|
|
price_service_hour = request.json["price_service_hour"]
|
|
price_emergency_service_hourly_rate = request.json["price_emergency_service_hour"]
|
|
price_emergency_call = request.json["price_emergency_call"]
|
|
price_out_of_oil = request.json["price_out_of_oil"]
|
|
price_prime = request.json["price_prime"]
|
|
price_cleaning = request.json["price_cleaning"]
|
|
|
|
|
|
price_service = Pricing_Service_General(
|
|
price_service_hour=price_service_hour,
|
|
price_out_of_oil=price_out_of_oil,
|
|
price_emergency_service_hour=price_emergency_service_hourly_rate,
|
|
price_prime=price_prime,
|
|
price_emergency_call=price_emergency_call,
|
|
price_cleaning=price_cleaning,
|
|
date=now,
|
|
)
|
|
|
|
db.session.add(price_service)
|
|
db.session.commit()
|
|
|
|
return jsonify({
|
|
"ok": True,
|
|
'price': price_service.id,
|
|
}), 200
|
|
|
|
|
|
@admin.route("/service/get", methods=["GET"])
|
|
def get_service_price():
|
|
"""
|
|
gets service prices
|
|
"""
|
|
get_service_prices = (db.session
|
|
.query(Pricing_Service_General)
|
|
.order_by(Pricing_Service_General.date.desc())
|
|
.first())
|
|
|
|
price_schema = Pricing_Service_General_schema(many=False)
|
|
return jsonify(price_schema.dump(get_service_prices))
|
|
|
|
|
|
@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))
|