1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- // pages/threshold/threshold.js
- Page({
- data: {
- refluxThreshold: null, // 反酸阈值
- reduceAcidThreshold: null, // 降酸阈值
- newReflux: null, // 新反酸阈值输入
- newReduce: null, // 新降酸阈值输入
- loading: true
- },
- onLoad() {
- this.getThresholds();
- },
- // 获取双阈值
- getThresholds() {
- this.setData({ loading: true });
- wx.request({
- url: 'https://soilgd.com:5000/get-threshold',
- method: 'GET',
- success: (res) => {
- if (res.statusCode === 200 && res.data) {
- this.setData({
- reduceThreshold: res.data.reduce.current_threshold || null,
- refluxThreshold: res.data.reflux.current_threshold || null
- });
- }
- },
- fail: (err) => {
- wx.showToast({ title: '获取失败', icon: 'error' });
- },
- complete: () => {
- this.setData({ loading: false });
- }
- });
- },
- // 统一输入处理
- onInput(e) {
- const type = e.currentTarget.dataset.type;
- const value = Number(e.detail.value);
- const field = `new${type.charAt(0).toUpperCase() + type.slice(1)}`;
-
- if (!isNaN(value)) {
- this.setData({ [field]: value });
- }
- },
- // 统一更新处理
- updateThreshold(e) {
- const type = e.currentTarget.dataset.type;
- const field = `new${type.charAt(0).toUpperCase() + type.slice(1)}`;
- const value = this.data[field];
- if (value === 0) {
- wx.showToast({ title: '阈值不能为0', icon: 'error' });
- this.setData({ [field]: null }); // 清空非法输入
- return;
- }
- if (value === null || isNaN(value)) {
- wx.showToast({ title: '请输入有效数字', icon: 'error' });
- return;
- }
- wx.showLoading({ title: '更新中...' });
- wx.request({
- url: 'https://soilgd.com:5000/update-threshold',
- method: 'POST',
- data: {
- data_type: type === 'reduce' ? 'reduce' : 'reflux',
- threshold: value
- },
- success: (res) => {
- if (res.statusCode === 200) {
- wx.showToast({ title: '更新成功' });
- this.setData({ [`${type}Threshold`]: value });
- }
- },
- complete: () => wx.hideLoading()
- });
- }
- });
|