diff --git a/src/components/ServiceConfigurationActionLog.vue b/src/components/ServiceConfigurationActionLog.vue
index 6a4ecbd..d449758 100644
--- a/src/components/ServiceConfigurationActionLog.vue
+++ b/src/components/ServiceConfigurationActionLog.vue
@@ -6,7 +6,7 @@
参数列表:
-
+
{{ JSON.stringify(item, null, 2) }}
@@ -26,7 +26,7 @@ import * as echarts from 'echarts';
import { ref, nextTick, watch } from 'vue';
/** @var {Object} */
const props = defineProps({
- log: Object,
+ log: Object,
});
/** @var {Element} */
const chartContainer = ref(null);
@@ -35,65 +35,96 @@ const chartEnable = ref(false);
/** @var {echarts} */
let chart = null;
// watch log
-watch(() => props.log, handleLogChange, {deep:true});
+watch(() => props.log, handleLogChange, { deep: true });
// handle log change
async function handleLogChange() {
- chartEnable.value = false;
- if ( null !== chart ) {
- chart.dispose();
- chart = null;
- }
+ chartEnable.value = false;
+ if (null !== chart) {
+ chart.dispose();
+ chart = null;
+ }
- if ( null === props.log
- || undefined === props.log.response
- || null === props.log.response ) {
- return ;
- }
+ if (null === props.log
+ || undefined === props.log.response
+ || null === props.log.response) {
+ return;
+ }
- if ( 'A8kScanCurve' === props.log.response.$dataType ) {
- chartEnable.value = true;
- let minY = Math.min(... props.log.response.scanDataCurve) - 100;
- let maxY = Math.max(... props.log.response.scanDataCurve) + 100;
-
- let refLine = props.log.response.refLine.map((v,i) => [i,v]);
- let scanDataCurve = props.log.response.scanDataCurve.map((v,i) => [i,v]);
- let refCurve = props.log.response.refCurve || [];
- refCurve = refCurve.map(v => ({xAxis:v}));
+ if ('A8kScanCurve' === props.log.response.$dataType) {
+ chartEnable.value = true;
+ let minY = Math.min(...props.log.response.scanDataCurve) - 100;
+ let maxY = Math.max(...props.log.response.scanDataCurve) + 100;
- await nextTick();
- chart = echarts.init(chartContainer.value);
- chart.setOption({
- xAxis: {type: 'value', axisLabel : {show:true}},
- yAxis: {type: 'value', axisLabel : {show:true}, min:minY, max:maxY},
- grid: {left: '3%', right: '4%', bottom: '3%', top:'3%', containLabel: true},
- dataZoom : [{type:'inside'},{type:'inside',orient:'vertical'}],
- tooltip: {trigger:'axis'},
- series: [{
- name: 'RefLine',
- type: 'line',
- itemStyle : {normal:{lineStyle:{width:1},color:'#ffb2b3'}},
- showSymbol : false,
- data: refLine
- }, {
- name: 'ScanDataCurve',
- type: 'line',
- data: scanDataCurve,
- itemStyle : {normal:{lineStyle:{width:1},color:'#4d90ff'}},
- showSymbol : false,
- markLine : {
- slient : true,
- symbol : 'none',
- data : refCurve,
- label:{show:false},
- lineStyle : {normal:{type:'solid'}}
- },
- }]
- });
- }
- else if ( 'FileToBeDownload' === props.log.response.$dataType ) {
- var url = process.env.NODE_ENV === 'production' ? `${props.log.response.url}` : `http://localhost:80${props.log.response.url}`;
- window.open(url);
- }
+ let refLine = props.log.response.refLine.map((v, i) => [i, v]);
+ let scanDataCurve = props.log.response.scanDataCurve.map((v, i) => [i, v]);
+ let refCurve = props.log.response.refCurve || [];
+ refCurve = refCurve.map(v => ({ xAxis: v }));
+
+ await nextTick();
+ chart = echarts.init(chartContainer.value);
+ chart.setOption({
+ xAxis: { type: 'value', axisLabel: { show: true } },
+ yAxis: { type: 'value', axisLabel: { show: true }, min: minY, max: maxY },
+ grid: { left: '3%', right: '4%', bottom: '3%', top: '3%', containLabel: true },
+ dataZoom: [{ type: 'inside' }, { type: 'inside', orient: 'vertical' }],
+ tooltip: { trigger: 'axis' },
+ series: [{
+ name: 'RefLine',
+ type: 'line',
+ itemStyle: { normal: { lineStyle: { width: 1 }, color: '#ffb2b3' } },
+ showSymbol: false,
+ data: refLine
+ }, {
+ name: 'ScanDataCurve',
+ type: 'line',
+ data: scanDataCurve,
+ itemStyle: { normal: { lineStyle: { width: 1 }, color: '#4d90ff' } },
+ showSymbol: false,
+ markLine: {
+ slient: true,
+ symbol: 'none',
+ data: refCurve,
+ label: { show: true },
+ lineStyle: { normal: { type: 'solid' } }
+ },
+ }]
+ });
+ }
+ else if ('FileToBeDownload' === props.log.response.$dataType) {
+ var url = process.env.NODE_ENV === 'production' ? `${props.log.response.url}` : `http://localhost:80${props.log.response.url}`;
+ window.open(url);
+ }
+ else if ('ExtApiCurve' === props.log.response.$dataType) {
+ let response = props.log.response;
+ chartEnable.value = true;
+ let curve = response.data;
+ let markLine = response.markLine || [];
+ markLine = markLine.map(v => ({ xAxis: v }));
+
+ await nextTick();
+ chart = echarts.init(chartContainer.value);
+ chart.setOption({
+ xAxis: { type: response.xtype, axisLabel: { show: true } },
+ yAxis: { type: response.ytype, axisLabel: { show: true }, min: response.minY, max: response.maxY },
+ grid: { left: '3%', right: '4%', bottom: '3%', top: '3%', containLabel: true },
+ dataZoom: [{ type: 'inside' }, { type: 'inside', orient: 'vertical' }],
+ tooltip: { trigger: 'axis' },
+ series: [{
+ name: response.name,
+ type: 'line',
+ data: curve,
+ itemStyle: { normal: { lineStyle: { width: 1 }, color: '#4d90ff' } },
+ showSymbol: false,
+ markLine: {
+ slient: true,
+ symbol: 'none',
+ data: markLine,
+ label: { show: true },
+ lineStyle: { normal: { type: 'solid' } }
+ },
+ }]
+ });
+ }
}
\ No newline at end of file