|
@@ -10,7 +10,7 @@
|
|
|
<n-checkbox label="全选" @update:checked="handleCheckAll" />
|
|
|
</template>
|
|
|
<n-scrollbar
|
|
|
- :style="{ maxHeight: `${height - 350}px` }"
|
|
|
+ :style="{ maxHeight: `${height - 260}px` }"
|
|
|
trigger="none"
|
|
|
@scroll="onScroll"
|
|
|
>
|
|
@@ -79,29 +79,29 @@
|
|
|
<div>
|
|
|
<TemplateForm :task="task" :class-list="classList" />
|
|
|
</div>
|
|
|
- <div class="flex justify-end">
|
|
|
- <n-button type="primary" @click="isShowChart2 = !isShowChart2"
|
|
|
- >显示湿度曲线图</n-button
|
|
|
- >
|
|
|
- </div>
|
|
|
- <n-scrollbar
|
|
|
- :style="{ maxHeight: `${height - 380}px` }"
|
|
|
- trigger="none"
|
|
|
+ <n-tabs
|
|
|
+ type="segment"
|
|
|
+ animated
|
|
|
+ v-model:value="tabChart"
|
|
|
+ @update:value="handleTabChange"
|
|
|
>
|
|
|
- <Chart
|
|
|
- calss="h-full"
|
|
|
- ref="chart1"
|
|
|
- constructor-type="stockChart"
|
|
|
- :options="chartOptions1"
|
|
|
- ></Chart>
|
|
|
- <Chart
|
|
|
- calss="h-full"
|
|
|
- v-if="isShowChart2"
|
|
|
- ref="chart2"
|
|
|
- constructor-type="stockChart"
|
|
|
- :options="chartOptions2"
|
|
|
- ></Chart>
|
|
|
- </n-scrollbar>
|
|
|
+ <n-tab-pane name="温度" tab="温度">
|
|
|
+ <Chart
|
|
|
+ :style="{ minHeight: `${height - 320}px` }"
|
|
|
+ ref="chart1"
|
|
|
+ constructor-type="stockChart"
|
|
|
+ :options="chartOptions1"
|
|
|
+ ></Chart>
|
|
|
+ </n-tab-pane>
|
|
|
+ <n-tab-pane name="湿度" tab="湿度">
|
|
|
+ <Chart
|
|
|
+ :style="{ minHeight: `${height - 320}px` }"
|
|
|
+ ref="chart2"
|
|
|
+ constructor-type="stockChart"
|
|
|
+ :options="chartOptions2"
|
|
|
+ ></Chart>
|
|
|
+ </n-tab-pane>
|
|
|
+ </n-tabs>
|
|
|
</div>
|
|
|
</n-card>
|
|
|
</div>
|
|
@@ -165,11 +165,12 @@ const task = window.sessionStorage.getItem('task')
|
|
|
? JSON.parse(window.sessionStorage.getItem('task'))
|
|
|
: {};
|
|
|
|
|
|
-const isShowChart2 = ref(false);
|
|
|
-
|
|
|
const chart1 = ref(null);
|
|
|
const chart2 = ref(null);
|
|
|
|
|
|
+const chartData1 = ref([]);
|
|
|
+const chartData2 = ref([]);
|
|
|
+
|
|
|
// Modal 数据源
|
|
|
const modal = reactive({
|
|
|
showModal: false,
|
|
@@ -205,6 +206,15 @@ const dataInfo = ref({});
|
|
|
// 选项组受控模式下的值
|
|
|
const checkValues = ref([]);
|
|
|
|
|
|
+// tab
|
|
|
+const tabChart = ref('温度');
|
|
|
+
|
|
|
+const handleTabChange = (value) => {
|
|
|
+ if (value === '温度') {
|
|
|
+ } else {
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
//
|
|
|
const onScroll = (e) => {
|
|
|
const clientHeight = e.target.clientHeight;
|
|
@@ -313,8 +323,7 @@ const handleCheckAll = (checked) => {
|
|
|
|
|
|
// 选项组的值改变时的回调
|
|
|
const onUpdateValues = async (values, meta) => {
|
|
|
- checkValues.value = values;
|
|
|
- const classInfo = classList.value.find((item) => item.T_id === meta.value);
|
|
|
+ const classInfo = values.find((item) => item.T_id === meta.value);
|
|
|
queryData.T_id = classInfo.T_id;
|
|
|
queryData.T_sn = classInfo.T_sn;
|
|
|
await getDataList();
|
|
@@ -325,43 +334,49 @@ const onUpdateValues = async (values, meta) => {
|
|
|
.map((item) => [new Date(item.T_time).getTime(), item.T_rh])
|
|
|
.sort((a, b) => a[0] - b[0]);
|
|
|
if (meta.actionType === 'check') {
|
|
|
- chart1.value.chart.addSeries({
|
|
|
- id: meta.value,
|
|
|
- name: meta.value,
|
|
|
- data: data1,
|
|
|
- lineWidth: 1,
|
|
|
- cursor: 'pointer',
|
|
|
- events: {
|
|
|
- click(e) {
|
|
|
- modal.title = '温度';
|
|
|
- modal.showModal = true;
|
|
|
- formValue.T_t = e.point.y;
|
|
|
- queryData.T_id = e.point.series.name;
|
|
|
- getDataList();
|
|
|
- dataInfo.value = dataList.value[e.point.index];
|
|
|
+ if (tabChart.value === '温度') {
|
|
|
+ chart1.value.chart.addSeries({
|
|
|
+ id: meta.value,
|
|
|
+ name: meta.value,
|
|
|
+ data: data1,
|
|
|
+ lineWidth: 1,
|
|
|
+ cursor: 'pointer',
|
|
|
+ events: {
|
|
|
+ click(e) {
|
|
|
+ modal.title = '温度';
|
|
|
+ modal.showModal = true;
|
|
|
+ formValue.T_t = e.point.y;
|
|
|
+ queryData.T_id = e.point.series.name;
|
|
|
+ getDataList();
|
|
|
+ dataInfo.value = dataList.value[e.point.index];
|
|
|
+ },
|
|
|
},
|
|
|
- },
|
|
|
- });
|
|
|
- chart2.value.chart.addSeries({
|
|
|
- id: meta.value,
|
|
|
- name: meta.value,
|
|
|
- data: data2,
|
|
|
- lineWidth: 1,
|
|
|
- cursor: 'pointer',
|
|
|
- events: {
|
|
|
- click(e) {
|
|
|
- modal.title = '湿度';
|
|
|
- modal.showModal = true;
|
|
|
- formValue.T_rh = e.point.y;
|
|
|
- queryData.T_id = e.point.series.name;
|
|
|
- getDataList();
|
|
|
- dataInfo.value = dataList.value[e.point.index];
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ chart2.value.chart.addSeries({
|
|
|
+ id: meta.value,
|
|
|
+ name: meta.value,
|
|
|
+ data: data2,
|
|
|
+ lineWidth: 1,
|
|
|
+ cursor: 'pointer',
|
|
|
+ events: {
|
|
|
+ click(e) {
|
|
|
+ modal.title = '湿度';
|
|
|
+ modal.showModal = true;
|
|
|
+ formValue.T_rh = e.point.y;
|
|
|
+ queryData.T_id = e.point.series.name;
|
|
|
+ getDataList();
|
|
|
+ dataInfo.value = dataList.value[e.point.index];
|
|
|
+ },
|
|
|
},
|
|
|
- },
|
|
|
- });
|
|
|
+ });
|
|
|
+ }
|
|
|
} else {
|
|
|
- chart1.value.chart.get(meta.value).remove();
|
|
|
- chart2.value.chart.get(meta.value).remove();
|
|
|
+ if (tabChart.value === '温度') {
|
|
|
+ chart1.value.chart.get(meta.value).remove();
|
|
|
+ } else {
|
|
|
+ chart2.value.chart.get(meta.value).remove();
|
|
|
+ }
|
|
|
}
|
|
|
};
|
|
|
|