diff --git a/app.py b/app.py index a9d0bd23c094f73f1d9d9558914fb54c25bea96d..7f6bac956c1b302d511e15122235d573ae14d33d 100644 --- a/app.py +++ b/app.py @@ -4,15 +4,18 @@ from flask_cors import CORS app = Flask(__name__, static_folder="./dist/assets", template_folder="./dist") CORS(app) + @app.route("/") def main(): return render_template("index.html") + @app.route("/values") def values(): values = [{"N": 10}, {"P": 11}, {"K": 12}, {"T": 5}, {"H": 6}, {"M": 7}] return jsonify(values) + @app.route('/favicon.ico') def favicon(): return send_from_directory(app.template_folder, diff --git a/src/App.vue b/src/App.vue index f91836fb33d06ec0315b9db3aa34a41f8639caa0..c0e49b96a51b70ce45ec68e6d54f70f0bf6c0493 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,5 +1,5 @@ <script setup> -import ValueTabs from './components/ValueTabs.vue' +import ValueTabs from "./components/ValueTabs.vue" </script> <template> diff --git a/src/components/ValueTabs.vue b/src/components/ValueTabs.vue index 38e7d1c275eca39212df270f178ef2c81ea6af48..04e004e9d220621745d01d71d8fc465276b80853 100644 --- a/src/components/ValueTabs.vue +++ b/src/components/ValueTabs.vue @@ -1,35 +1,35 @@ <script> - import axios from 'axios' +import axios from "axios" - export default { - data() { - return { - values: {0: {N:0}, 1: {P:0}, 2: {K:0}, 3: {T:0}, 4: {H:0}, 5: {M:0}}, - } - }, - mounted() { - this.getValues(); - setInterval(this.getValues, 5000); - }, - methods: { - getValues() { - axios - .get('http://127.0.0.1:5000/values') - .then((response) => { - this.values = response.data +export default { + data() { + return { + values: { 0: { N: 0 }, 1: { P: 0 }, 2: { K: 0 }, 3: { T: 0 }, 4: { H: 0 }, 5: { M: 0 } }, + } + }, + mounted() { + this.getValues(); + setInterval(this.getValues, 5000); + }, + methods: { + getValues() { + axios + .get('http://127.0.0.1:5000/values') + .then((response) => { + this.values = response.data }) - }, - getClass(value, warn_min, good_min, good_max, warn_max) { - if (value > good_min && value <= good_max) { - return 'list-group-item-success'; // Success class - } else if ((value >= warn_min && value <= good_min) || (value > good_max && value <= warn_max)) { - return 'list-group-item-warning'; // Warning class - } else { - return 'list-group-item-danger'; // Danger class - } - }, }, - } + getClass(value, warn_min, good_min, good_max, warn_max) { + if (value > good_min && value <= good_max) { + return 'list-group-item-success'; // Success class + } else if ((value >= warn_min && value <= good_min) || (value > good_max && value <= warn_max)) { + return 'list-group-item-warning'; // Warning class + } else { + return 'list-group-item-danger'; // Danger class + } + }, + }, +} </script> <template> @@ -37,27 +37,27 @@ <div> <div class="valueBox"> Nitrogen (N): - <li class="list-group-item" v-bind:class="getClass(values[0].N, 0, 5, 10, 15)">{{values[0].N}} ppm</li> + <li class="list-group-item" v-bind:class="getClass(values[0].N, 0, 5, 10, 15)">{{ values[0].N }} ppm</li> </div> <div class="valueBox"> Phosphorus (P): - <li class="list-group-item" v-bind:class="getClass(values[1].P, 0, 5, 10, 15)">{{values[1].P}} ppm</li> + <li class="list-group-item" v-bind:class="getClass(values[1].P, 0, 5, 10, 15)">{{ values[1].P }} ppm</li> </div> <div class="valueBox"> Potassium (K): - <li class="list-group-item" v-bind:class="getClass(values[2].K, 0, 5, 10, 15)">{{values[2].K}} ppm</li> + <li class="list-group-item" v-bind:class="getClass(values[2].K, 0, 5, 10, 15)">{{ values[2].K }} ppm</li> </div> <div class="valueBox"> Temperature: - <li class="list-group-item" v-bind:class="getClass(values[3].T, 0, 5, 10, 15)">{{values[3].T}} °C</li> + <li class="list-group-item" v-bind:class="getClass(values[3].T, 0, 5, 10, 15)">{{ values[3].T }} °C</li> </div> <div class="valueBox"> Humidity: - <li class="list-group-item" v-bind:class="getClass(values[4].H, 0, 5, 10, 15)">{{values[4].H}} gmâ»Â³</li> + <li class="list-group-item" v-bind:class="getClass(values[4].H, 0, 5, 10, 15)">{{ values[4].H }} gmâ»Â³</li> </div> <div class="valueBox"> Moisture: - <li class="list-group-item" v-bind:class="getClass(values[5].M, 0, 5, 10, 15)">{{values[5].M}} °C</li> + <li class="list-group-item" v-bind:class="getClass(values[5].M, 0, 5, 10, 15)">{{ values[5].M }} °C</li> </div> </div> </div>