|  | @@ -1,32 +1,71 @@
 | 
	
		
			
				|  |  |  <template>
 | 
	
		
			
				|  |  | -  <el-dialog title="项目基础配置" width="50%" :close-on-click-modal="false" center :visible.sync="visib" :before-close="closeDialog">
 | 
	
		
			
				|  |  | -    <el-form ref="userForm" :model="dialogForm" :rules="rules" size="small" label-width="100px">
 | 
	
		
			
				|  |  | +  <el-dialog
 | 
	
		
			
				|  |  | +    title="项目基础配置"
 | 
	
		
			
				|  |  | +    width="50%"
 | 
	
		
			
				|  |  | +    :close-on-click-modal="false"
 | 
	
		
			
				|  |  | +    center
 | 
	
		
			
				|  |  | +    :visible.sync="visib"
 | 
	
		
			
				|  |  | +    :before-close="closeDialog"
 | 
	
		
			
				|  |  | +  >
 | 
	
		
			
				|  |  | +    <el-form
 | 
	
		
			
				|  |  | +      ref="userForm"
 | 
	
		
			
				|  |  | +      :model="dialogForm"
 | 
	
		
			
				|  |  | +      :rules="rules"
 | 
	
		
			
				|  |  | +      size="small"
 | 
	
		
			
				|  |  | +      label-width="100px"
 | 
	
		
			
				|  |  | +    >
 | 
	
		
			
				|  |  |        <el-row :gutter="10">
 | 
	
		
			
				|  |  | -        <el-col :xs="24" :sm="20" :md="8" :lg="8" :xl="8">
 | 
	
		
			
				|  |  | +        <el-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
 | 
	
		
			
				|  |  |            <el-form-item label="数据源类型" prop="sourceType">
 | 
	
		
			
				|  |  | -            <el-select v-model.trim="dialogForm.sourceType" placeholder="请选择" clearable @change="selectChange">
 | 
	
		
			
				|  |  | -              <el-option v-for="item in dictionaryOptions" :key="item.id" :label="item.text" :value="item.id" />
 | 
	
		
			
				|  |  | +            <el-select
 | 
	
		
			
				|  |  | +              v-model.trim="dialogForm.sourceType"
 | 
	
		
			
				|  |  | +              placeholder="请选择"
 | 
	
		
			
				|  |  | +              clearable
 | 
	
		
			
				|  |  | +              @change="selectChange"
 | 
	
		
			
				|  |  | +            >
 | 
	
		
			
				|  |  | +              <el-option
 | 
	
		
			
				|  |  | +                v-for="item in dictionaryOptions"
 | 
	
		
			
				|  |  | +                :key="item.id"
 | 
	
		
			
				|  |  | +                :label="item.text"
 | 
	
		
			
				|  |  | +                :value="item.id"
 | 
	
		
			
				|  |  | +              />
 | 
	
		
			
				|  |  |              </el-select>
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |          </el-col>
 | 
	
		
			
				|  |  | -        <el-col :xs="24" :sm="20" :md="6" :lg="6" :xl="6">
 | 
	
		
			
				|  |  | +        <el-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
 | 
	
		
			
				|  |  |            <el-form-item label="数据源编码" prop="sourceCode">
 | 
	
		
			
				|  |  | -            <el-input :disabled="updataDisabled" v-model.trim="dialogForm.sourceCode" placeholder="唯一标识" />
 | 
	
		
			
				|  |  | +            <el-input
 | 
	
		
			
				|  |  | +              :disabled="updataDisabled"
 | 
	
		
			
				|  |  | +              v-model.trim="dialogForm.sourceCode"
 | 
	
		
			
				|  |  | +              placeholder="唯一标识"
 | 
	
		
			
				|  |  | +            />
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |          </el-col>
 | 
	
		
			
				|  |  | -        <el-col :xs="24" :sm="20" :md="6" :lg="6" :xl="6">
 | 
	
		
			
				|  |  | +        <el-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
 | 
	
		
			
				|  |  |            <el-form-item label="数据源名称" prop="sourceName">
 | 
	
		
			
				|  |  |              <el-input v-model.trim="dialogForm.sourceName" />
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |          </el-col>
 | 
	
		
			
				|  |  | -        <el-col :xs="24" :sm="20" :md="20" :lg="20" :xl="20">
 | 
	
		
			
				|  |  | +        <el-col :xs="24" :sm="20" :md="24" :lg="24" :xl="24">
 | 
	
		
			
				|  |  |            <el-form-item label="数据源描述">
 | 
	
		
			
				|  |  | -            <el-input v-model.trim="dialogForm.sourceDesc" type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" />
 | 
	
		
			
				|  |  | +            <el-input
 | 
	
		
			
				|  |  | +              v-model.trim="dialogForm.sourceDesc"
 | 
	
		
			
				|  |  | +              type="textarea"
 | 
	
		
			
				|  |  | +              :autosize="{ minRows: 2, maxRows: 4 }"
 | 
	
		
			
				|  |  | +            />
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |          </el-col>
 | 
	
		
			
				|  |  |        </el-row>
 | 
	
		
			
				|  |  |        <el-row :gutter="10">
 | 
	
		
			
				|  |  | -        <el-col v-for="(data, index) in dataLink" :key="index" :xs="24" :sm="20" :md="20" :lg="20" :xl="20">
 | 
	
		
			
				|  |  | +        <el-col
 | 
	
		
			
				|  |  | +          v-for="(data, index) in dataLink"
 | 
	
		
			
				|  |  | +          :key="index"
 | 
	
		
			
				|  |  | +          :xs="24"
 | 
	
		
			
				|  |  | +          :sm="24"
 | 
	
		
			
				|  |  | +          :md="24"
 | 
	
		
			
				|  |  | +          :lg="24"
 | 
	
		
			
				|  |  | +          :xl="24"
 | 
	
		
			
				|  |  | +        >
 | 
	
		
			
				|  |  |            <el-form-item :label="data.labelValue">
 | 
	
		
			
				|  |  |              <el-input v-model.trim="data.value" />
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
	
		
			
				|  | @@ -36,37 +75,44 @@
 | 
	
		
			
				|  |  |      <div slot="footer" class="dialog-footer">
 | 
	
		
			
				|  |  |        <el-button @click="closeDialog">取消</el-button>
 | 
	
		
			
				|  |  |        <el-button type="warning" @click="test">测试</el-button>
 | 
	
		
			
				|  |  | -      <el-button type="primary" @click="UserConfirm('userForm')">确定</el-button>
 | 
	
		
			
				|  |  | +      <el-button type="primary" @click="UserConfirm('userForm')"
 | 
	
		
			
				|  |  | +        >确定</el-button
 | 
	
		
			
				|  |  | +      >
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  |    </el-dialog>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | -import { testConnection, reportDataSourceDetail, reportDataSourceAdd, reportDataSourceUpdate } from '@/api/reportDataSource'
 | 
	
		
			
				|  |  | -import { getDictList } from '@/api/dict-data' // 获取数据字典
 | 
	
		
			
				|  |  | -import Dictionary from '@/components/Dictionary/index'
 | 
	
		
			
				|  |  | -import {validateEngOrNum} from "@/utils/validate";
 | 
	
		
			
				|  |  | +import {
 | 
	
		
			
				|  |  | +  testConnection,
 | 
	
		
			
				|  |  | +  reportDataSourceDetail,
 | 
	
		
			
				|  |  | +  reportDataSourceAdd,
 | 
	
		
			
				|  |  | +  reportDataSourceUpdate
 | 
	
		
			
				|  |  | +} from "@/api/reportDataSource";
 | 
	
		
			
				|  |  | +import { getDictList } from "@/api/dict-data"; // 获取数据字典
 | 
	
		
			
				|  |  | +import Dictionary from "@/components/Dictionary/index";
 | 
	
		
			
				|  |  | +import { validateEngOrNum } from "@/utils/validate";
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  | -  name: 'Support',
 | 
	
		
			
				|  |  | +  name: "Support",
 | 
	
		
			
				|  |  |    components: { Dictionary },
 | 
	
		
			
				|  |  |    props: {
 | 
	
		
			
				|  |  |      visib: {
 | 
	
		
			
				|  |  |        required: true,
 | 
	
		
			
				|  |  |        type: Boolean,
 | 
	
		
			
				|  |  | -      default: false,
 | 
	
		
			
				|  |  | +      default: false
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      dataSource: {
 | 
	
		
			
				|  |  |        required: false,
 | 
	
		
			
				|  |  |        type: Object,
 | 
	
		
			
				|  |  |        default: () => {
 | 
	
		
			
				|  |  | -        return ''
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | +        return "";
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  |        dictionaryOptions: [], // 数据源类型
 | 
	
		
			
				|  |  |        selectedList: [],
 | 
	
		
			
				|  |  | -      clickType: '',
 | 
	
		
			
				|  |  | +      clickType: "",
 | 
	
		
			
				|  |  |        formData: {},
 | 
	
		
			
				|  |  |        list: null,
 | 
	
		
			
				|  |  |        totalCount: 0,
 | 
	
	
		
			
				|  | @@ -76,140 +122,139 @@ export default {
 | 
	
		
			
				|  |  |        dialogFormVisible: false,
 | 
	
		
			
				|  |  |        basicDialog: false,
 | 
	
		
			
				|  |  |        params: {
 | 
	
		
			
				|  |  | -        sourceName: '',
 | 
	
		
			
				|  |  | -        sourceCode: '',
 | 
	
		
			
				|  |  | -        sourceType: '',
 | 
	
		
			
				|  |  | +        sourceName: "",
 | 
	
		
			
				|  |  | +        sourceCode: "",
 | 
	
		
			
				|  |  | +        sourceType: "",
 | 
	
		
			
				|  |  |          pageNumber: 1,
 | 
	
		
			
				|  |  |          pageSize: 10,
 | 
	
		
			
				|  |  | -        order: 'DESC',
 | 
	
		
			
				|  |  | -        sort: 'update_time',
 | 
	
		
			
				|  |  | +        order: "DESC",
 | 
	
		
			
				|  |  | +        sort: "update_time"
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        dialogForm: {
 | 
	
		
			
				|  |  | -        sourceName: '',
 | 
	
		
			
				|  |  | -        sourceCode: '',
 | 
	
		
			
				|  |  | -        sourceType: '',
 | 
	
		
			
				|  |  | -        sourceDesc: '',
 | 
	
		
			
				|  |  | -        sourceConfig: '',
 | 
	
		
			
				|  |  | +        sourceName: "",
 | 
	
		
			
				|  |  | +        sourceCode: "",
 | 
	
		
			
				|  |  | +        sourceType: "",
 | 
	
		
			
				|  |  | +        sourceDesc: "",
 | 
	
		
			
				|  |  | +        sourceConfig: ""
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        dataLink: [],
 | 
	
		
			
				|  |  |        rules: {
 | 
	
		
			
				|  |  |          sourceType: [
 | 
	
		
			
				|  |  | -          { required: true, message: '数据集名称必选', trigger: 'change' },
 | 
	
		
			
				|  |  | +          { required: true, message: "数据集名称必选", trigger: "change" }
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          sourceCode: [
 | 
	
		
			
				|  |  | -          { required: true, message: '数据集编码必填', trigger: 'blur' },
 | 
	
		
			
				|  |  | -          { validator: validateEngOrNum, trigger: 'blur' },
 | 
	
		
			
				|  |  | +          { required: true, message: "数据集编码必填", trigger: "blur" },
 | 
	
		
			
				|  |  | +          { validator: validateEngOrNum, trigger: "blur" }
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          sourceName: [
 | 
	
		
			
				|  |  | -          { required: true, message: '数据源名称必选', trigger: 'blur' },
 | 
	
		
			
				|  |  | -        ],
 | 
	
		
			
				|  |  | +          { required: true, message: "数据源名称必选", trigger: "blur" }
 | 
	
		
			
				|  |  | +        ]
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | -      value: '',
 | 
	
		
			
				|  |  | +      value: "",
 | 
	
		
			
				|  |  |        updataDisabled: false,
 | 
	
		
			
				|  |  | -      testReplyCode: null,
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +      testReplyCode: null
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    // 在生命周期 beforeCreate里面改变this指向
 | 
	
		
			
				|  |  | -  beforeCreate: function () {},
 | 
	
		
			
				|  |  | +  beforeCreate: function() {},
 | 
	
		
			
				|  |  |    mounted() {},
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  |      async setDataSource() {
 | 
	
		
			
				|  |  |        this.dialogForm = {
 | 
	
		
			
				|  |  | -        sourceName: '',
 | 
	
		
			
				|  |  | -        sourceCode: '',
 | 
	
		
			
				|  |  | -        sourceType: '',
 | 
	
		
			
				|  |  | -        sourceDesc: '',
 | 
	
		
			
				|  |  | -        sourceConfig: '',
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +        sourceName: "",
 | 
	
		
			
				|  |  | +        sourceCode: "",
 | 
	
		
			
				|  |  | +        sourceType: "",
 | 
	
		
			
				|  |  | +        sourceDesc: "",
 | 
	
		
			
				|  |  | +        sourceConfig: ""
 | 
	
		
			
				|  |  | +      };
 | 
	
		
			
				|  |  |        //根据dataSourceId判断新增还是编辑
 | 
	
		
			
				|  |  |        if (this.dataSource.id) {
 | 
	
		
			
				|  |  | -        const {code, data} = await reportDataSourceDetail(this.dataSource)
 | 
	
		
			
				|  |  | -        if (code != '200') return
 | 
	
		
			
				|  |  | -        this.dialogForm = data
 | 
	
		
			
				|  |  | -        const newSourceType = this.dialogForm
 | 
	
		
			
				|  |  | -        let newDataLink = []
 | 
	
		
			
				|  |  | -        this.dictionaryOptions.map((item) => {
 | 
	
		
			
				|  |  | +        const { code, data } = await reportDataSourceDetail(this.dataSource);
 | 
	
		
			
				|  |  | +        if (code != "200") return;
 | 
	
		
			
				|  |  | +        this.dialogForm = data;
 | 
	
		
			
				|  |  | +        const newSourceType = this.dialogForm;
 | 
	
		
			
				|  |  | +        let newDataLink = [];
 | 
	
		
			
				|  |  | +        this.dictionaryOptions.map(item => {
 | 
	
		
			
				|  |  |            if (item.id == newSourceType.sourceType) {
 | 
	
		
			
				|  |  | -            newDataLink = JSON.parse(item.extend)
 | 
	
		
			
				|  |  | -            var sourceConfigJson = JSON.parse(newSourceType.sourceConfig)
 | 
	
		
			
				|  |  | +            newDataLink = JSON.parse(item.extend);
 | 
	
		
			
				|  |  | +            var sourceConfigJson = JSON.parse(newSourceType.sourceConfig);
 | 
	
		
			
				|  |  |              for (var i = 0; i < newDataLink.length; i++) {
 | 
	
		
			
				|  |  | -              newDataLink[i].value = sourceConfigJson[newDataLink[i].label]
 | 
	
		
			
				|  |  | +              newDataLink[i].value = sourceConfigJson[newDataLink[i].label];
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  | -        })
 | 
	
		
			
				|  |  | -        this.dataLink = newDataLink
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        this.dataLink = newDataLink;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      // 获取数据字典
 | 
	
		
			
				|  |  |      async getSystem() {
 | 
	
		
			
				|  |  | -      const { code, data } = await getDictList('SOURCE_TYPE')
 | 
	
		
			
				|  |  | -      if (code != '200') return
 | 
	
		
			
				|  |  | -      this.dictionaryOptions = data
 | 
	
		
			
				|  |  | -      this.dialogForm.sourceType = this.dictionaryOptions[0].text
 | 
	
		
			
				|  |  | -      this.dataLink = JSON.parse(this.dictionaryOptions[0].extend)
 | 
	
		
			
				|  |  | -      this.setDataSource()
 | 
	
		
			
				|  |  | +      const { code, data } = await getDictList("SOURCE_TYPE");
 | 
	
		
			
				|  |  | +      if (code != "200") return;
 | 
	
		
			
				|  |  | +      this.dictionaryOptions = data;
 | 
	
		
			
				|  |  | +      this.dialogForm.sourceType = this.dictionaryOptions[0].text;
 | 
	
		
			
				|  |  | +      this.dataLink = JSON.parse(this.dictionaryOptions[0].extend);
 | 
	
		
			
				|  |  | +      this.setDataSource();
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      // 关闭模态框
 | 
	
		
			
				|  |  |      closeDialog() {
 | 
	
		
			
				|  |  | -      this.$emit('handleClose')
 | 
	
		
			
				|  |  | +      this.$emit("handleClose");
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      // 提交
 | 
	
		
			
				|  |  |      async UserConfirm(formName) {
 | 
	
		
			
				|  |  | -      const newList = {}
 | 
	
		
			
				|  |  | -      this.dataLink.forEach((item) => {
 | 
	
		
			
				|  |  | -        newList[item.label] = item.value
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | -      this.dialogForm.sourceConfig = JSON.stringify(newList)
 | 
	
		
			
				|  |  | +      const newList = {};
 | 
	
		
			
				|  |  | +      this.dataLink.forEach(item => {
 | 
	
		
			
				|  |  | +        newList[item.label] = item.value;
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +      this.dialogForm.sourceConfig = JSON.stringify(newList);
 | 
	
		
			
				|  |  |        this.$refs[formName].validate(async (valid, obj) => {
 | 
	
		
			
				|  |  |          if (valid) {
 | 
	
		
			
				|  |  | -          if (this.testReplyCode != '200') {
 | 
	
		
			
				|  |  | -            this.$message.error('测试结果为成功后方可保存!')
 | 
	
		
			
				|  |  | -            return
 | 
	
		
			
				|  |  | +          if (this.testReplyCode != "200") {
 | 
	
		
			
				|  |  | +            this.$message.error("测试结果为成功后方可保存!");
 | 
	
		
			
				|  |  | +            return;
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |            if (this.dialogForm.id == undefined) {
 | 
	
		
			
				|  |  | -            const { code } = await reportDataSourceAdd(this.dialogForm)
 | 
	
		
			
				|  |  | -            if (code != '200') return
 | 
	
		
			
				|  |  | +            const { code } = await reportDataSourceAdd(this.dialogForm);
 | 
	
		
			
				|  |  | +            if (code != "200") return;
 | 
	
		
			
				|  |  |              // this.queryByPage()
 | 
	
		
			
				|  |  | -            this.$emit('refreshList')
 | 
	
		
			
				|  |  | +            this.$emit("refreshList");
 | 
	
		
			
				|  |  |            } else {
 | 
	
		
			
				|  |  | -            const { code } = await reportDataSourceUpdate(this.dialogForm)
 | 
	
		
			
				|  |  | -            if (code != '200') return
 | 
	
		
			
				|  |  | +            const { code } = await reportDataSourceUpdate(this.dialogForm);
 | 
	
		
			
				|  |  | +            if (code != "200") return;
 | 
	
		
			
				|  |  |              // this.queryByPage()
 | 
	
		
			
				|  |  | -            this.$emit('refreshList')
 | 
	
		
			
				|  |  | +            this.$emit("refreshList");
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  | -          this.closeDialog()
 | 
	
		
			
				|  |  | +          this.closeDialog();
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | -          return
 | 
	
		
			
				|  |  | +          return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      selectChange(val) {
 | 
	
		
			
				|  |  | -      this.dataLink = []
 | 
	
		
			
				|  |  | -      const extendJSON = this.dictionaryOptions.find(function (obj) {
 | 
	
		
			
				|  |  | -        return obj.id == val
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | -      this.dataLink = JSON.parse(extendJSON.extend)
 | 
	
		
			
				|  |  | +      this.dataLink = [];
 | 
	
		
			
				|  |  | +      const extendJSON = this.dictionaryOptions.find(function(obj) {
 | 
	
		
			
				|  |  | +        return obj.id == val;
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +      this.dataLink = JSON.parse(extendJSON.extend);
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      // 测试
 | 
	
		
			
				|  |  |      test() {
 | 
	
		
			
				|  |  | -      const newList = {}
 | 
	
		
			
				|  |  | -      this.dataLink.forEach((item) => {
 | 
	
		
			
				|  |  | -        newList[item.label] = item.value
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | -      this.dialogForm.sourceConfig = JSON.stringify(newList)
 | 
	
		
			
				|  |  | -      testConnection(this.dialogForm).then((data) => {
 | 
	
		
			
				|  |  | -        if (data.code == '200') {
 | 
	
		
			
				|  |  | -          this.testReplyCode = data.code
 | 
	
		
			
				|  |  | +      const newList = {};
 | 
	
		
			
				|  |  | +      this.dataLink.forEach(item => {
 | 
	
		
			
				|  |  | +        newList[item.label] = item.value;
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +      this.dialogForm.sourceConfig = JSON.stringify(newList);
 | 
	
		
			
				|  |  | +      testConnection(this.dialogForm).then(data => {
 | 
	
		
			
				|  |  | +        if (data.code == "200") {
 | 
	
		
			
				|  |  | +          this.testReplyCode = data.code;
 | 
	
		
			
				|  |  |            this.$message({
 | 
	
		
			
				|  |  | -            message: '测试成功!',
 | 
	
		
			
				|  |  | -            type: 'success',
 | 
	
		
			
				|  |  | -          })
 | 
	
		
			
				|  |  | +            message: "测试成功!",
 | 
	
		
			
				|  |  | +            type: "success"
 | 
	
		
			
				|  |  | +          });
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | -          this.testReplyCode = null
 | 
	
		
			
				|  |  | +          this.testReplyCode = null;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -  },
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  |  </script>
 |