luobisheng
2022-11-28 2925d0cae10aa2ca40747ee8636f44584995cc7f
Merge branch 'master' of http://42.193.1.25:9521/r/sccg_ui

# Conflicts:
# src/views/operate/fivepack/threepack/components/updateUser/index.vue
7个文件已修改
1个文件已添加
552 ■■■■ 已修改文件
src/api/operate/storeManagement.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/fivepack/threepack/components/content.vue 182 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/fivepack/threepack/components/score/index.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/fivepack/threepack/components/updateUser/index.vue 255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/message/myIndex/update/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/sms/smsIndex/createSms/index.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/viewEvent/index.vue 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/operate/storeManagement.js
@@ -27,3 +27,7 @@
export function getVideoPoint(params) {
    return http.get('/sccg/video_point/query', params);
}
export function getStoreScore(id) {
    return http.get('/sccg/store/storeinfo/' + id + '/storeScore')
}
src/views/operate/fivepack/threepack/components/content.vue
@@ -5,29 +5,59 @@
          <div class="find">
            <div class="search-item">
              <span>输入查询:</span>
              <el-input style="flex: 1" :placeholder="isStorePage() ? '店铺(门店)名称' : '请输入店铺编号'" v-model="storeCode" />
            <el-input
              style="flex: 1"
              :placeholder="
                isStorePage() ? '店铺(门店)名称' : '请输入店铺编号'
              "
              v-model="storeCode"
            />
            </div>
            <div class="search-item">
              <span>店铺状态:</span>
              <el-select v-model="storeStatus" placeholder="选择店铺状态">
                <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
              <el-option
                v-for="item in options"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              />
              </el-select>
            </div>
            <div class="findBtn">
              <el-button type="primary" @click="search" icon="el-icon-search">查询</el-button>
              <el-button icon="el-icon-delete-solid" @click="handleReset">重置</el-button>
            <el-button type="primary" @click="search" icon="el-icon-search"
              >查询</el-button
            >
            <el-button icon="el-icon-delete-solid" @click="handleReset"
              >重置</el-button
            >
            </div>
          </div>
          <el-button v-if="isStorePage()" type="primary" icon="el-icon-plus" @click="handleView(null, 'create')">添加</el-button>
        <el-button
          v-if="isStorePage()"
          type="primary"
          icon="el-icon-plus"
          @click="handleView(null, 'create')"
          >添加</el-button
        >
        </div>
      </header>
      <main>
        <!-- 数据展示 -->
        <el-table ref="multipleTable"
                  :header-cell-style="{background:'#06122c','font-size':'12px',color:'#4b9bb7','font-weight':'650','line-height':'45px'}"
                  :data="tableData" style="width: 100%" :row-class-name="tableRowClassName">
          <el-table-column type="selection" min-width="5">
          </el-table-column>
      <el-table
        ref="multipleTable"
        :header-cell-style="{
          background: '#06122c',
          'font-size': '12px',
          color: '#4b9bb7',
          'font-weight': '650',
          'line-height': '45px',
        }"
        :data="tableData"
        style="width: 100%"
        :row-class-name="tableRowClassName"
      >
        <el-table-column type="selection" min-width="5"> </el-table-column>
          <el-table-column prop="storeNumber" label="店铺编号" min-width="10">
          </el-table-column>
          <el-table-column prop="storeName" label="店铺名称" min-width="10">
@@ -36,7 +66,13 @@
          </el-table-column>
          <el-table-column prop="contact" label="店铺联系电话" min-width="10">
          </el-table-column>
          <el-table-column prop="storeAddress" label="店铺详细地址" min-width="10">
        <el-table-column
          prop="storeAddress"
          label="店铺详细地址"
          min-width="10"
        >
        </el-table-column>
        <el-table-column prop="storeScore" label="店铺积分" min-width="10">
          </el-table-column>
          <el-table-column prop="videoPoint" label="关联摄像机" min-width="10">
            <template v-if="scope.row.videoId" slot-scope="scope">
@@ -46,29 +82,84 @@
          <el-table-column prop="operation" label="操作" min-width="20">
            <template slot-scope="scope">
              <div v-if="!isStorePage()" class="operation">
                <el-link icon="el-icon-edit" :underline="false" @click="handleView(scope.row, 'update')">编辑</el-link>
                <el-link class="leftPx" icon="el-icon-delete-solid" :underline="false" @click="handleDelete(scope.row.id)">删除</el-link>
                <el-link class="leftPx" icon="el-icon-edit"  :underline="false">推送信息</el-link>
                <el-link class="leftPx" icon="el-icon-edit" :underline="false" @click="handleView(scope.row, 'view')">查看</el-link>
              <el-link
                icon="el-icon-edit"
                :underline="false"
                @click="handleView(scope.row, 'update')"
                >编辑</el-link
              >
              <el-link
                class="leftPx"
                icon="el-icon-delete-solid"
                :underline="false"
                @click="handleDelete(scope.row.id)"
                >删除</el-link
              >
              <el-link class="leftPx" icon="el-icon-edit" :underline="false"
                >推送信息</el-link
              >
              <el-link
                class="leftPx"
                icon="el-icon-edit"
                :underline="false"
                @click="handleScoreView(scope.row, 'view')"
                >查看</el-link
              >
              </div>
              <div v-else class="operation">
                <el-link icon="el-icon-edit" :underline="false" @click="handleView(scope.row, 'update')">编辑</el-link>
                <el-link class="leftPx" icon="el-icon-delete-solid" :underline="false"
                         @click="handleDelete(scope.row.id)">删除</el-link>
              <el-link
                icon="el-icon-edit"
                :underline="false"
                @click="handleView(scope.row, 'update')"
                >编辑</el-link
              >
              <el-link
                class="leftPx"
                icon="el-icon-delete-solid"
                :underline="false"
                @click="handleDelete(scope.row.id)"
                >删除</el-link
              >
              </div>
            </template>
          </el-table-column>
        </el-table>
        <!-- 查看修改页面 -->
        <el-dialog :visible.sync="dialogUpdate" width="45%"
      <el-dialog
        :visible.sync="dialogUpdate"
        width="45%"
                   :destroy-on-close="true"
                   :title="dialogType === 'view' ? '查看店铺信息' : '修改店铺信息'" :before-close="handleClose">
          <updateUser v-if="dialogUpdate" :dialogType="dialogType" :storeInfo="storeInfo" :isStorePage="isStorePage()" @closeDialog="closeDialog" />
        :title="dialogType === 'view' ? '查看店铺信息' : '修改店铺信息'"
        :before-close="handleClose"
      >
        <updateUser
          v-if="dialogUpdate"
          :dialogType="dialogType"
          :storeInfo="storeInfo"
          :isStorePage="isStorePage()"
          @closeDialog="closeDialog"
        />
      </el-dialog>
      <!-- 查看修改页面 -->
      <el-dialog
        :visible.sync="dialogScore"
        width="45%"
        :destroy-on-close="true"
        title="查看积分"
        :before-close="handleClose"
      >
        <scoreView :storeInfo="storeInfo" @closeDialog="closeDialog" />
        </el-dialog>
        <!-- 分页 -->
        <div class="pagination">
          <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
                         :page-size="pageSize" @current-change="changeCurrentPage">
        <el-pagination
          background
          :current-page="currentPage"
          layout="prev, pager, next"
          :total="totalNum"
          :page-size="pageSize"
          @current-change="changeCurrentPage"
        >
          </el-pagination>
        </div>
      </main>
@@ -76,31 +167,40 @@
</template>
<script>
import updateUser from "@/views/operate/fivepack/threepack/components/updateUser";
import { getStoreInfoList, deleteStoreInfo } from "@/api/operate/storeManagement";
import scoreView from "@/views/operate/fivepack/threepack/components/score";
import {
  getStoreInfoList,
  deleteStoreInfo,
} from "@/api/operate/storeManagement";
export default {
  components: { updateUser },
  components: { updateUser, scoreView },
  created() {
    this.search();
  },
  props: ['model'],
  props: ["model"],
  data() {
    return {
      storeCode: null,
      storeStatus: null,
      options: [{ label: '全部', value: 0 }, { label: '经营', value: 1 }, { label: '倒闭', value: 2 }],
      options: [
        { label: "全部", value: 0 },
        { label: "经营", value: 1 },
        { label: "倒闭", value: 2 },
      ],
      tableData: [],
      dialogUpdate: false,
      dialogScore: false,
      currentPage: 1,
      totalNum: 0,
      pageSize: 10,
      userInfo: null,
      dialogType: '',
      storeInfo: null
    }
      dialogType: "",
      storeInfo: null,
    };
  },
  methods: {
@@ -112,11 +212,11 @@
            this.pageSize = pageSize;
            this.totalNum = totalPage;
          })
          .catch(err => this.$message({ type: 'error', message: err }));
        .catch((err) => this.$message({ type: "error", message: err }));
    },
    handleReset() {
      this.storeCode = '';
      this.storeCode = "";
      this.storeStatus = null;
      this.search();
    },
@@ -126,22 +226,28 @@
      this.storeInfo = row;
      this.dialogType = type;
    },
    handleScoreView(row) {
      this.dialogScore = true;
      this.storeInfo = row;
    },
    handleDelete(id) {
      deleteStoreInfo(id)
          .then(() => {
            this.$message({ type: 'success', message: '操作成功' });
          this.$message({ type: "success", message: "操作成功" });
            this.search();
          })
          .catch(err => this.$message({ type: 'error', message: err }));
        .catch((err) => this.$message({ type: "error", message: err }));
    },
    handleClose() {
      this.dialogUpdate = false;
      this.dialogScore = false;
    },
    closeDialog() {
      this.dialogUpdate = false;
      this.dialogScore = false;
      this.search();
    },
@@ -159,10 +265,10 @@
    },
    isStorePage() {
      return this.model === 'store';
    }
  }
}
      return this.model === "store";
    },
  },
};
</script>
<style lang="scss" scoped>
.content{
src/views/operate/fivepack/threepack/components/score/index.vue
New file
@@ -0,0 +1,86 @@
<template>
  <div class="content">
    <!-- 数据展示 -->
    <el-table
      ref="multipleTable"
      :header-cell-style="{
        background: '#06122c',
        'font-size': '12px',
        color: '#4b9bb7',
        'font-weight': '650',
        'line-height': '45px',
      }"
      :data="tableData"
      style="width: 100%"
      :row-class-name="tableRowClassName"
    >
      <el-table-column type="selection" min-width="5"> </el-table-column>
      <el-table-column prop="category" label="规则类别" min-width="100">
      </el-table-column>
      <el-table-column prop="deductionItem" label="扣分项" min-width="200">
      </el-table-column>
      <el-table-column prop="markScore" label="扣除分数" min-width="60">
      </el-table-column>
      <el-table-column prop="createTime" label="扣分时间" min-width="180">
      </el-table-column>
    </el-table>
    <!-- 分页 -->
    <div class="pagination">
      <el-pagination
        background
        :current-page="currentPage"
        layout="prev, pager, next"
        :total="totalNum"
        :page-size="pageSize"
        @current-change="changeCurrentPage"
      >
      </el-pagination>
    </div>
  </div>
</template>
<script>
import { getStoreScore } from "@/api/operate/storeManagement";
export default {
  created() {
    this.search();
  },
  props: ["storeInfo"],
  data() {
    return {
      tableData: [],
      currentPage: 1,
      totalNum: 0,
      pageSize: 10,
    };
  },
  methods: {
    search() {
      getStoreScore(this.storeInfo.id)
        .then((res) => {
          this.tableData = res.records;
          this.pageSize = res.size;
          this.totalNum = res.total;
        })
        .catch((err) => this.$message({ type: "error", message: err }));
    },
    changeCurrentPage(currentPage) {
      this.currentPage = currentPage;
      this.search();
    },
    tableRowClassName({ row, rowIndex }) {
      if ((rowIndex + 1) % 2 === 0) {
        return "warning-row";
      } else {
        return "success-row";
      }
    },
  },
};
</script>
src/views/operate/fivepack/threepack/components/updateUser/index.vue
@@ -2,44 +2,104 @@
    <div class="updateUser">
        <main>
            <div class="mainContent">
                <el-form ref="store" label-width="140px" autoComplete="on" :model="store" :rules="rules"
                    label-position="right">
        <el-form
          ref="store"
          label-width="140px"
          autoComplete="on"
          :model="store"
          :rules="rules"
          label-position="right"
        >
                  <!-- 店铺类型 -->
                  <el-form-item v-if="isStorePage" class="optionItem" label="店铺类型:" prop="type">
          <el-form-item
            v-if="isStorePage"
            class="optionItem"
            label="店铺类型:"
            prop="type"
          >
                    <el-cascader :options="shopTypeList" v-model="store.type" />
                  </el-form-item>
                    <!-- 店铺编号 -->
                    <el-form-item class="optionItem" label="店铺编号:" prop="storeNumber">
                        <el-input v-model="store.storeNumber" placeholder="请填写店铺编号" :disabled="isView()"></el-input>
          <el-form-item v-if="store.id" class="optionItem" label="店铺编号:">
            <el-input
              v-model="store.storeNumber"
              placeholder="请填写店铺编号"
              disabled
            ></el-input>
                    </el-form-item>
                    <!-- 店铺名称 -->
                    <el-form-item class="optionItem" label="店铺名称:" prop="storeName">
                        <el-input v-model="store.storeName" placeholder="请填写店名称" :disabled="isView()"></el-input>
            <el-input
              v-model="store.storeName"
              placeholder="请填写店名称"
              :disabled="isView()"
            ></el-input>
                    </el-form-item>
                    <!-- 店铺联系人 -->
                    <el-form-item class="optionItem" label="店铺联系人:" prop="owner">
                        <el-input v-model="store.owner" placeholder="请填写店铺联系人" :disabled="isView()"></el-input>
            <el-input
              v-model="store.owner"
              placeholder="请填写店铺联系人"
              :disabled="isView()"
            ></el-input>
                    </el-form-item>
                    <!-- 店铺联系电话 -->
                    <el-form-item class="optionItem" label="店铺联系电话:" prop="contact">
                        <el-input v-model="store.contact" placeholder="请填写店铺联系电话" :disabled="isView()"></el-input>
            <el-input
              v-model="store.contact"
              placeholder="请填写店铺联系电话"
              :disabled="isView()"
            ></el-input>
                    </el-form-item>
                    <!-- 店铺详细地址 -->
                    <el-form-item class="optionItem" label="店铺详细地址:" prop="storeAddress">
                        <el-input v-model="store.storeAddress" placeholder="请填写店铺详细地址" :disabled="isView()"></el-input>
          <el-form-item
            class="optionItem"
            label="店铺详细地址:"
            prop="storeAddress"
          >
            <el-input
              v-model="store.storeAddress"
              placeholder="请填写店铺详细地址"
              :disabled="isView()"
            ></el-input>
                    </el-form-item>
                    <!-- 关联摄像机 -->
                    <el-form-item v-if="isStorePage" class="optionItem" label="关联摄像机:" prop="relationVideo">
                      <el-select v-model="store.relationVideo" placeholder="请填写关联摄像机" :disabled="isView()">
                        <el-option v-for="item in relationVideoList" :key="item.id" :value="item.id" :label="item.name"></el-option>
          <el-form-item
            v-if="isStorePage"
            class="optionItem"
            label="关联摄像机:"
          >
            <el-select
              v-model="store.relationVideo"
              placeholder="请填写关联摄像机"
              :disabled="isView()"
            >
              <el-option
                v-for="item in relationVideoList"
                :key="item.id"
                :value="item.id"
                :label="item.name"
              ></el-option>
                      </el-select>
                    </el-form-item>
                  <el-form-item v-if="!isStorePage" class="optionItem" label="店铺得分:">
                    <el-input v-model="store.storeScore" :disabled="isView()"></el-input>
          <el-form-item
            v-if="!isStorePage"
            class="optionItem"
            label="店铺得分:"
          >
            <el-input
              v-model="store.storeScore"
              :disabled="isView()"
            ></el-input>
                  </el-form-item>
                    <el-form-item v-if="!isView()">
                        <div class="optionBtn">
                            <el-button type="primary" class="btn submit" @click.native.prevent="onSubmit">提交</el-button>
              <el-button
                type="primary"
                class="btn submit"
                @click.native.prevent="onSubmit"
                >提交</el-button
              >
                        </div>
                    </el-form-item>
                </el-form>
@@ -49,7 +109,11 @@
</template>
<script>
import { deepClone, getCodeList } from "@/utils/helper";
import { addStoreInfo, getVideoPoint, updateStoreInfo } from "@/api/operate/storeManagement";
import {
  addStoreInfo,
  getVideoPoint,
  updateStoreInfo,
} from "@/api/operate/storeManagement";
export default {
    data() {
@@ -57,7 +121,7 @@
          if (!value) {
            callback(new Error("请填写手机号码"));
          } else {
            const rep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/
        const rep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/;
            if (!rep.test(value)) {
              callback("请输入正确的手机号码");
            } else {
@@ -70,33 +134,88 @@
          if (value) {
            callback();
          } else {
            callback(new Error('请选择店铺类型'));
        callback(new Error("请选择店铺类型"));
          }
        };
        return {
            store: {
                storeNumber: '',
                storeName: '',
                owner: '',
                contact: '',
                storeAddress: '',
                relationVideo: '',
        storeNumber: "",
        storeName: "",
        owner: "",
        contact: "",
        storeAddress: "",
        relationVideo: "",
                type: null,
                storeScore: null
        storeScore: null,
            },
            rules: {
                type: [{ required: true, validator: validateStoreType }],
                storeNumber: [{ required: true, trigger:'blur', message: '请输入店铺编号' }],
                storeName: [{ required: true, trigger:'blur', message: '请输入店铺名称' }],
                owner: [{ required: true, trigger:'blur', message: '请输入店铺联系人' }],
                contact: [{ required: true, trigger:'blur', validator: validatePhone }],
                storeAddress: [{ required: true, trigger:'blur', message: '请输入店铺详细地址' }],
                relationVideo: [{ required: true, trigger:'blur', message: '请输入关联摄像机' }]
        storeNumber: [
          { required: true, trigger: "blur", message: "请输入店铺编号" },
        ],
        storeName: [
          { required: true, trigger: "blur", message: "请输入店铺名称" },
        ],
        owner: [
          { required: true, trigger: "blur", message: "请输入店铺联系人" },
        ],
        contact: [
          { required: true, trigger: "blur", validator: validatePhone },
        ],
        storeAddress: [
          { required: true, trigger: "blur", message: "请输入店铺详细地址" },
        ],
        relationVideo: [
          { required: true, trigger: "blur", message: "请输入关联摄像机" },
        ],
            },
            shopTypeList: [],
            relationVideoList: []
      relationVideoList: [],
    };
  },
  async created() {
    const result = await getVideoPoint({ current: 1, size: 1000 });
    this.relationVideoList = result.records;
    if (this.storeInfo) {
      this.$set(this, "store", this.storeInfo);
      if (this.storeInfo && this.isStorePage) {
        this.store.relationVideo = this.store.videoPoint.name;
      }
    }
    if (!this.isView()) {
      await this.getShopTypeList();
        }
    },
  methods: {
    onSubmit() {
      this.$refs.store.validate((valid) => {
        if (valid) {
          debugger
          this.store.type = this.store.type[1];
          if (this.isCreated()) {
            addStoreInfo(this.store)
              .then(() => {
                this.$message({ type: "success", message: "操作成功" });
                this.$emit("closeDialog");
              })
              .catch((err) => this.$message({ type: "error", message: err }));
          } else {
            updateStoreInfo(this.store)
              .then(() => {
                this.$message({ type: "success", message: "操作成功" });
                this.$emit("closeDialog");
              })
              .catch((err) => this.$message({ type: "error", message: err }));
          }
        } else {
          this.$message({ type: "warning", message: "请检查必填项" });
        }
      });
    },
    async created() {
      if (this.storeInfo) {
        this.$set(this, 'store', this.storeInfo);
@@ -111,47 +230,27 @@
      }
    },
    methods: {
      onSubmit() {
        this.$refs.store.validate(valid => {
          if (valid) {
            this.store.type = this.store.type[1];
            if (this.isCreated()) {
              addStoreInfo(this.store)
                  .then(() => {
                    this.$message({ type: 'success', message: '操作成功' });
                    this.$emit('closeDialog');
                  })
                  .catch(err => this.$message({ type: 'error', message: err }));
            } else {
              updateStoreInfo(this.store)
                  .then(() => {
                    this.$message({ type: 'success', message: '操作成功' });
                    this.$emit('closeDialog');
                  })
                  .catch(err =>  this.$message({ type: 'error', message: err }));
            }
          } else {
            this.$message({ type: 'warning', message: '请检查必填项' });
          }
        });
      },
      isView() {
        return this.dialogType === 'view';
      return this.dialogType === "view";
      },
      isCreated() {
        return this.dialogType === 'create';
      return this.dialogType === "create";
      },
      // 获取字典
      async getShopTypeList() {
        let arr = await getCodeList('16');
      let arr = await getCodeList("16");
        this.shopTypeList = this.createShopTypeTree(arr);
        if (this.dialogType === 'update') {
          const selectedStoreType = arr.find(item => item.name === this.store.typeName);
          this.$set(this.store, 'type', [selectedStoreType.parentId, selectedStoreType.id]);
      if (this.dialogType === "update") {
        const selectedStoreType = arr.find(
          (item) => item.name === this.store.typeName
        );
        this.$set(this.store, "type", [
          selectedStoreType.parentId,
          selectedStoreType.id,
        ]);
        }
      },
@@ -159,30 +258,30 @@
      createShopTypeTree(arr) {
        if (arr.length && arr.length !== 0) {
          // 获取顶级菜单
          let treeRoot = arr.filter(item => {
            return item.parentId === 0
          })
        let treeRoot = arr.filter((item) => {
          return item.parentId === 0;
        });
          // 添加child
          treeRoot.forEach(item => {
            item.children = []
            arr.forEach(child => {
        treeRoot.forEach((item) => {
          item.children = [];
          arr.forEach((child) => {
              child.value = child.id;
              child.label = child.name;
              if (child.parentId === item.id) {
                item.children.push(child)
              item.children.push(child);
              }
            })
          })
          });
        });
          return treeRoot;
        }
      }
    },
    },
  beforeDestroy() {
      this.store = null;
  },
  props: ['storeInfo', 'dialogType', 'isStorePage']
}
  props: ["storeInfo", "dialogType", "isStorePage"],
};
</script>
<style lang="scss" scoped>
.updateUser {
@@ -228,7 +327,6 @@
                    padding: 12px 50px;
                }
            }
        }
    }
}
@@ -241,5 +339,4 @@
    background-color: #09152f;
    border: 1px solid #17324c;
}
</style>
src/views/operate/message/myIndex/update/index.vue
@@ -218,7 +218,7 @@
    async getColumnList() {
      await this.$axios({
        method: "get",
        url: "sccg/message_column/getAllColumn",
        url: "sccg/message_column/getShowColumn",
      }).then((res) => {
        this.colList = res.data;
      });
src/views/operate/sms/smsIndex/createSms/index.vue
@@ -8,7 +8,7 @@
                    <el-form-item class="optionItem" label="短信模板:" prop="messageType">
                        <div class="message-item">
                            <div class="message-item__left">
                                <el-select v-model="role.messageType" placeholder="请选择短信模板">
                                <el-select v-model="role.messageType" placeholder="请选择短信模板" @change="setTemplateValue">
                                    <el-option v-for="item in colList" :key="item.id" :label="item.title"
                                        :value="item.id">
                                    </el-option>
@@ -199,6 +199,14 @@
                }
            })
        },
        setTemplateValue(obj){
            var _this=this
            SMS.getSMSTemplateById(obj).then((result) =>{
                _this.role.head=result.title
                _this.role.body=result.body
                _this.$refs.edit.editor.txt.html(result.body)
            })
        },
        // 重置表单
        handleReset() {
            this.$refs.edit.editor.txt.clear();
src/views/operate/viewEvent/index.vue
@@ -55,9 +55,14 @@
                    @selection-change="tableChange">
                    <el-table-column categories="selection" min-width="5">
                    </el-table-column>
                    <el-table-column prop="id" label="事件编号" min-width="18">
                    <el-table-column prop="code" label="事件编号" min-width="18">
                        <template slot-scope="scope">
                            <el-link @click="JumpView(scope.row)">{{ scope.row.id }}</el-link>
                            <el-link @click="JumpView(scope.row)">{{ scope.row.code }}</el-link>
                        </template>
                    </el-table-column>
                    <el-table-column prop="category" label="问题类别" min-width="8">
                        <template slot-scope="scope">
                            <span>{{ scope.row.category == 1 ? '违规' : '违建' }}</span>
                        </template>
                    </el-table-column>
                    <el-table-column prop="eventSource" label="问题来源" min-width="8">
vue.config.js
@@ -39,8 +39,8 @@
    proxy: {
      // 跨域配置
      "/sccg": {
        target: `http://42.193.1.25/`,
        // target: `http://127.0.0.1:8082/`,
        // target: `http://42.193.1.25/`,
        target: `http://127.0.0.1:8082/`,
        changeOrigin: true
      }
    },