|
import flask |
|
from flask import request, jsonify, send_file |
|
import os |
|
|
|
|
|
|
|
from dotenv import load_dotenv |
|
import globs |
|
from flask import render_template |
|
from api_logic import api |
|
|
|
|
|
|
|
load_dotenv() |
|
|
|
app = flask.Flask(__name__, template_folder="./") |
|
app.config['DEBUG'] = True |
|
|
|
|
|
|
|
|
|
|
|
@app.route("/") |
|
def index(): |
|
return flask.render_template('index.html') |
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.route('/online', methods=['GET']) |
|
def online(): |
|
return render_template('online.html') |
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.route('/online_api', methods=['GET']) |
|
def online_api(): |
|
return jsonify(dey=globs.dey, |
|
wek=globs.wek, |
|
v_hid=globs.v_hid, |
|
v_min=globs.v_min, |
|
ph=globs.ph, |
|
ec=globs.ec, |
|
tS=globs.tS, |
|
tA=globs.tA, |
|
hDm=globs.hDm, |
|
sVen=globs.sVen, |
|
rFul=globs.rFul, |
|
rLi=globs.rLi, |
|
rWat=globs.rWat, |
|
rRas=globs.rRas, |
|
rPH=globs.rPH, |
|
rEC=globs.rEC, |
|
rSl=globs.rSl, |
|
rLe=globs.rLe, |
|
alW=globs.alW |
|
) |
|
|
|
|
|
|
|
|
|
|
|
@app.route('/settings', methods=['GET']) |
|
def settings(): |
|
return render_template('settings.html') |
|
|
|
|
|
@app.route('/settings_api', methods=['GET']) |
|
def settings_api(): |
|
return jsonify(ph_eep=globs.ph_eep, |
|
ph_on_eep=globs.ph_on_eep, |
|
ec_eep=globs.ec_eep, |
|
ec_A_eep=globs.ec_A_eep, |
|
ec_B_eep=globs.ec_B_eep, |
|
ec_C_eep=globs.ec_C_eep, |
|
l_ON_h_eep=globs.l_ON_h_eep, |
|
l_ON_m_eep=globs.l_ON_m_eep, |
|
l_OFF_h_eep=globs.l_OFF_h_eep, |
|
l_OFF_m_eep=globs.l_OFF_m_eep, |
|
t_Voz_eep=globs.t_Voz_eep |
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.route('/set_res') |
|
def set_res(): |
|
globs.eep_set = 0 |
|
return jsonify(value_set="reset") |
|
|
|
|
|
|
|
|
|
@app.route('/pH_set') |
|
def set_pH_value(): |
|
ph_value = request.args.get('value') |
|
globs.ph_set = ph_value |
|
globs.eep_set = 1 |
|
return "pH value set successfully" |
|
|
|
|
|
@app.route('/ph_on_set') |
|
def ph_on_value(): |
|
ph_on_value = request.args.get('value') |
|
globs.ph_on_set = ph_on_value |
|
globs.eep_set = 2 |
|
return "EC value set successfully" |
|
|
|
|
|
|
|
@app.route('/EC_set') |
|
def set_EC_value(): |
|
ec_value = request.args.get('value') |
|
globs.ec_set = ec_value |
|
globs.eep_set = 3 |
|
return "EC value set successfully" |
|
|
|
@app.route('/ec_A_set') |
|
def ec_A_setValue(): |
|
ec_A_setValue = request.args.get('value') |
|
globs.ec_A_set = ec_A_setValue |
|
globs.eep_set = 4 |
|
return "EC value set successfully" |
|
|
|
@app.route('/ec_B_set') |
|
def ec_B_setValue(): |
|
ec_B_setValue = request.args.get('value') |
|
globs.ec_B_set = ec_B_setValue |
|
globs.eep_set = 5 |
|
return "EC value set successfully" |
|
|
|
@app.route('/ec_C_set') |
|
def ec_C_setValue(): |
|
ec_C_setValue = request.args.get('value') |
|
globs.ec_C_set = ec_C_setValue |
|
globs.eep_set = 6 |
|
return "EC value set successfully" |
|
|
|
|
|
@app.route('/l_ON_set') |
|
def l_ON_set(): |
|
globs.l_ON_h_set = request.args.get('l_ON_h_set') |
|
globs.l_ON_m_set = request.args.get('l_ON_m_set') |
|
globs.eep_set = 7 |
|
return "EC value set successfully" |
|
|
|
|
|
|
|
@app.route('/l_OFF_set') |
|
def l_OFF_set(): |
|
globs.l_OFF_h_set = request.args.get('l_OFF_h_set') |
|
globs.l_OFF_m_set = request.args.get('l_OFF_m_set') |
|
globs.eep_set = 8 |
|
return "EC value set successfully" |
|
|
|
|
|
|
|
|
|
@app.route('/t_Voz_eep_set') |
|
def t_Voz_eep_set(): |
|
t_Voz_eep_set = request.args.get('value') |
|
globs.ec_t_Voz_set = t_Voz_eep_set |
|
globs.eep_set = 9 |
|
return "EC value set successfully" |
|
|
|
|
|
|
|
@app.route("/api", methods=['GET']) |
|
def handle_api(): |
|
response = api() |
|
return response |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.route('/graf_json', methods=['GET']) |
|
def get_json_file(): |
|
|
|
file_pattern = 'week_{}_data.json' |
|
|
|
|
|
files = [f for f in os.listdir('.') if os.path.isfile(f) and f.startswith('week_') and f.endswith('_data.json')] |
|
|
|
|
|
if files: |
|
|
|
files.sort() |
|
return send_file(files[-1], as_attachment=True) |
|
else: |
|
return "Файлы не найдены", 404 |
|
|
|
|
|
|
|
|
|
if __name__ == '__main__': |
|
app.run(host='0.0.0.0', port=int(os.environ.get('PORT', 7860))) |