|
@@ -11,12 +11,19 @@
|
|
|
|
|
|
</div>
|
|
|
<div class="paramsList" v-for="(item, key) in paramsList" :key="key">
|
|
|
- <van-field v-model="item.val" name="phone" type="tel" :label="paramName[key]">
|
|
|
+ <van-field v-model="item.val" v-if="item.name != 'M502' && item.name != 'M506'" name="phone" type="tel"
|
|
|
+ :label="paramName[key]">
|
|
|
<template #button>
|
|
|
- <van-button size="small" type="primary" class="updataButton"
|
|
|
- @click="updateParams(item)">{{ $t('device.submitUpdates') }}</van-button>
|
|
|
+ <van-button size="small" type="primary" class="updataButton" @click="updateParams(item)">{{
|
|
|
+ $t('device.submitUpdates') }}</van-button>
|
|
|
</template>
|
|
|
</van-field>
|
|
|
+ <div class="flex-row" v-else>
|
|
|
+ <span class="txt3 o-pl-15 o-mtb-18">{{ paramName[key] }}
|
|
|
+ </span>
|
|
|
+ <van-switch class="o-mt-8" :model-value="checked[key]" @update:model-value="onUpdateValue(item, key)">
|
|
|
+ </van-switch>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -27,7 +34,7 @@ import { onMounted, ref } from "vue";
|
|
|
import sHeader from "@/components/SimpleHeader";
|
|
|
import { useRoute } from "vue-router";
|
|
|
import { getDeviceDetal, getParameters, updateParameters } from "@/service/device";
|
|
|
-import { Toast } from "vant";
|
|
|
+import { Toast, Dialog } from "vant";
|
|
|
import { useI18n } from 'vue-i18n';
|
|
|
import { styleUrl } from "../../../common/js/utils";
|
|
|
|
|
@@ -42,6 +49,7 @@ export default {
|
|
|
const paramsList = ref([]);
|
|
|
const comParams = ref([]);
|
|
|
const paramName = ref([]);
|
|
|
+ const checked = ref([]);
|
|
|
|
|
|
// 初始化页面获取列表
|
|
|
onMounted(async () => {
|
|
@@ -83,13 +91,16 @@ export default {
|
|
|
if (data.code) {
|
|
|
paramsList.value = data.data;
|
|
|
paramsList.value.forEach((paramItem) => {
|
|
|
- // console.log(paramItem.name);
|
|
|
+ // console.log("paramItem:", paramItem);
|
|
|
comParams.value.push(paramItem.name);
|
|
|
paramName.value.push(t("paramNames." + paramItem.name));
|
|
|
- // paramName.value.push(paramItem.name);
|
|
|
- // console.log(zh.paramNames[paramItem.name]);
|
|
|
+ if (paramItem.val === '1') {
|
|
|
+ checked.value.push(true);
|
|
|
+ } else {
|
|
|
+ checked.value.push(false);
|
|
|
+ }
|
|
|
})
|
|
|
- // console.log(comParams.value);
|
|
|
+ // console.log("checked:", checked.value);
|
|
|
|
|
|
} else {
|
|
|
Toast.fail(data.message);
|
|
@@ -110,13 +121,37 @@ export default {
|
|
|
Toast.fail(data.message);
|
|
|
}
|
|
|
}
|
|
|
+ const onUpdateValue = async (item, key) => {
|
|
|
+ console.log(item);
|
|
|
+ const params = {
|
|
|
+ id: deviceId,
|
|
|
+ name: item.name,
|
|
|
+ val: item.val === '0' ? '1' : '0',
|
|
|
+ };
|
|
|
+ Dialog.confirm({
|
|
|
+ title: '提醒',
|
|
|
+ message: '是否切换开关?',
|
|
|
+ }).then(() => {
|
|
|
+ checked.value[key] = !checked.value[key];
|
|
|
+ const { data } = updateParameters(params);
|
|
|
+ if (data.code) {
|
|
|
+ Toast.success(t('device.modificationSucceeded'));
|
|
|
+ } else {
|
|
|
+ Toast.fail(data.message);
|
|
|
+ }
|
|
|
+ }).catch(() => {
|
|
|
+ // on cancel
|
|
|
+ });
|
|
|
+ };
|
|
|
return {
|
|
|
deviceDetal,
|
|
|
paramsTitle,
|
|
|
paramsList,
|
|
|
// getParamName,
|
|
|
updateParams,
|
|
|
- paramName
|
|
|
+ paramName,
|
|
|
+ checked,
|
|
|
+ onUpdateValue,
|
|
|
};
|
|
|
},
|
|
|
};
|