luobisheng
2022-11-24 41a2ddabb399c51821ccd606736d4e4c403c4238
上传处置结果处理
20个文件已修改
1个文件已添加
676 ■■■■■ 已修改文件
src/api/system/department.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/users.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/detail/index.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/edit/index.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/filePictrue/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/layout/components/Menu/index.vue 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/fivepack/threepack/components/aside/index.vue 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/images/index.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/images/updateUser/index.vue 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/message/myIndex/index.vue 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/message/myIndex/update/index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/message/mycontrol/index.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/sms/smsTemplate/createTemplate/index.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/sms/smsTemplate/index.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/video/updateInterface/index.vue 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/device/grid/components/main/index.vue 311 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/device/grid/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/mySetting/index.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/video/index.vue 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/system/department.js
New file
@@ -0,0 +1,7 @@
import http from "@/http";
export default {
    getDepartmentList: () => {
        return http.get('/sccg/sccg_region/getTree');
    }
}
src/api/users.js
@@ -6,5 +6,9 @@
  getMessageAuditList: (params) => {
    return http.get('/sccg/message_column_set/getUserColumnSet', params);
  },
  getMenu: (params) => {
    return http.get('/sccg/admin/info', params);
  }
};      
src/components/detail/index.vue
@@ -169,18 +169,15 @@
            baseCase:{},
            handlePassVo:{},
            currentSitVo:{},
            // problemProVo:{},
            filesPictureVo:{}
            
        }
    },
    created() {
        console.log('created');
        const {info} = this;
        const {info} = this;
        this.baseCase = info.baseCase;
        this.handlePassVo = info.handlePassVo;
        this.currentSitVo = info.currentSitVo;
        // this.problemProVo = info.problemProVo;
        this.filesPictureVo = info.filesPictureVo;
        console.log(info);  
    },
src/components/edit/index.vue
@@ -7,6 +7,12 @@
import wangEditor from 'wangeditor'
export default {
  props: {
    readOnly: {
      type: Boolean,
      default: () => false
    }
  },
    data() {
        return {
            editor: null
@@ -19,6 +25,7 @@
        this.editor.customConfig.colors = ['#4b9bb7', '#09152f'];
        this.editor.customConfig.placeholder = '请输入';
        this.editor.customConfig.onchangeTimeout = 500;
        this.editor.customConfig.readOnly = this.readOnly;
        this.editor.customConfig.onfocus = () => {
          this.editor.customConfig.placeholder = '';
        }
src/components/filePictrue/index.vue
@@ -26,8 +26,6 @@
                        </div>
                    </div>
                </div>
                <!-- <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__ef98ada722c616eccb097d1352880862.svg"
                    alt=""> -->
            </div>
        </div>
    </div>
@@ -42,10 +40,7 @@
    },
    props: ['filesPictureVo', 'mycode'],
    created() {
        // this.imgSource =this.filesPictureVo
        const { filesPictureVo: { imageResources: imgList } } = this
        // this.createTime=this.filesPictureVo.imageResources[0].createTime;
        // console.log(this.imgSource);
        this.getEventInfo(this.mycode);
    },
    methods: {
src/router/index.js
@@ -220,8 +220,7 @@
        path: 'managementMessage',
        name: 'managementMessage',
        component: () => import('@/views/operate/management/message'),
      },
      ]
      }]
    },
    {
      path: 'car',
@@ -298,19 +297,20 @@
      component: () => import('@/views/operate/images'),
    },
    {
      path: 'writManager',
      name: 'writManager',
      path: 'writManagement',
      name: 'writManagement',
      component: () => import('@/views/operate/writManager/writ'),
      redirect: '/home/operate/writManager/writ',
      children: [
        {
          path: 'writ',
          name: 'writ',
          component: () => import('@/views/operate/writManager/writ'),
        },
        {
          path: 'writTemplate',
          name: 'writTemplate',
          component: () => import('@/views/operate/writManager/writTemplate'),
        },
        {
          path: 'writ',
          name: 'writ',
          component: () => import('@/views/operate/writManager/writ'),
        }
      ]
    }]
src/views/layout/components/Menu/index.vue
@@ -64,7 +64,8 @@
</template>
<script>
let timer = null;
import users from "@/api/users";
export default {
  data() {
    return {
@@ -72,32 +73,17 @@
    };
  },
  created() {
    // this.getMenuList();
    this.loadMenu();
  },
  methods: {
    loadMenu() {
      const info = JSON.parse(sessionStorage.getItem("user"));
      if (info && info.menus) {
        window.clearInterval(timer);
        this.menuList = info.menus;
      } else {
        if (!timer) {
          timer = window.setInterval(() => {
            this.loadMenu();
          }, 1000);
        }
      }
    },
    // 获取菜单列表
    getMenuList() {
      let arr;
      this.$axios({
        method: "get",
        url: "sccg/system/portal/menu/search_myself",
      }).then((res) => {
      });
      const userName = sessionStorage.getItem('name');
      users.getMenu({ name: userName })
          .then(res => {
            this.menuList = res.menus;
            sessionStorage.setItem('user', JSON.stringify(res));
          })
          .catch(err => this.$message.error(err))
    },
  },
};
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
@@ -303,7 +303,6 @@
        },
        // 检验user
        checkUser() {
          debugger;
            this.$refs.userForm.validate((valid) => {
                if (valid) {
                    this.userFlag = false;
src/views/operate/fivepack/threepack/components/aside/index.vue
@@ -2,34 +2,47 @@
    <div class="aside">
        <div class="title">组织机构</div>
        <div class="input">
            <el-input placeholder="输入组织机构名称" v-model="searchArea"></el-input>
            <el-input placeholder="输入组织机构名称, 按下enter键搜索" v-model="searchArea" @change="filterTreeNode"></el-input>
        </div>
        <div class="menu">
            <el-tree :data="areaData" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
            <el-tree ref="department" :filter-node-method="filterNode" :data="areaData" :props="defaultProps"></el-tree>
        </div>
    </div>
</template>
<script>
import department from "@/api/system/department";
export default {
  name: 'departmentAside',
    data() {
        return {
          searchArea: null,
          areaData: [],
          defaultProps: {
              children: 'children',
              label: 'label'
              label: 'regionName'
          }
        };
    },
    created() {
      department.getDepartmentList()
          .then(res => {
            this.areaData = res;
          })
          .catch(err => this.$message.error(err))
    },
  methods: {
        handleNodeClick(data) {
        }
    filterTreeNode() {
      this.$refs.department.filter(this.searchArea);
    },
    filterNode(value, data) {
      if (!value) return true;
      return data.regionName.indexOf(value) !== -1;
    }
  }
};
</script>
<style lang="scss" scoped>
src/views/operate/images/index.vue
@@ -43,12 +43,12 @@
                    <el-table-column prop="baseId" label="所属事件编号" min-width="18">
                    </el-table-column>
                    <el-table-column prop="category" label="问题类别" min-width="8">
                      <template slot-scope="scope">
                      <template v-if="scope.row.category" slot-scope="scope">
                        <span>{{ getCategory(scope.row.category).label }}</span>
                      </template>
                    </el-table-column>
                    <el-table-column prop="eventSource" label="事件来源" min-width="8">
                      <template slot-scope="scope">
                      <template v-if="scope.row.eventSource" slot-scope="scope">
                        <span>{{ getEventSource(scope.row.eventSource).label }}</span>
                      </template>
                    </el-table-column>
@@ -261,7 +261,7 @@
            dateParams.startTime = dateParams[0];
            dateParams.endTime = dateParams[1]
          }
          imageManagement.getImageResources({ current: this.currentPage, size: this.size, type: this.type, ...dateParams })
          imageManagement.getImageResources({ current: this.currentPage, size: this.pageSize, type: this.type, ...dateParams })
              .then(({ records, total }) => {
                this.tableData = records;
                this.totalNum = total;
@@ -298,6 +298,7 @@
        closeDialog() {
          this.isShowUploadDialog = false;
          this.getImageResourceList();
        },
      getCategory(value) {
src/views/operate/images/updateUser/index.vue
@@ -2,9 +2,9 @@
  <div class="updateUser">
    <main>
      <div class="mainContent">
        <el-form :model="imagedata" :rules="rules" :disabled="isDisabled" ref="user" style="width: 100%;">
          <el-form-item prop="baseId" label="所属事件编号">
            <el-input v-model="imagedata.baseId"></el-input>
        <el-form label-position="right" label-width="150px"  :model="imagedata" :rules="rules" :disabled="isDisabled" ref="user" style="width: 100%;">
          <el-form-item prop="belongToId" label="所属事件编号">
            <el-input v-model="imagedata.belongToId"></el-input>
          </el-form-item>
          <el-form-item prop="eventSource" label="事件来源">
            <el-input v-model="imagedata.eventSource"></el-input>
@@ -31,7 +31,7 @@
                :show-file-list="false"
                :auto-upload="true"
                :http-request="imageUpload">
              <img v-if="imagedata.url" :src="imagedata.url" class="avatar">
              <img v-if="imagedata.url" :src="imagedata.url" class="avatar" width="100px" height="100px">
              <i v-else class="el-icon-plus avatar-uploader-icon"></i>
            </el-upload>
          </el-form-item>
@@ -59,7 +59,7 @@
    };
    return {
      imagedata: {
        baseId: '',
        belongToId: '',
        eventSource: '',
        regionName: '',
        category: '',
@@ -68,7 +68,7 @@
        type: ''
      },
      rules: {
        baseId: [{ required: true, trigger: 'blur', message: '请输入所属事件编号' }],
        belongToId: [{ required: true, trigger: 'blur', message: '请输入所属事件编号' }],
        eventSource: [{ required: true, trigger: 'blur', message: '请输入事件来源' }],
        regionName: [{ required: true, trigger: 'blur', message: '请输入社区名称' }],
        id: [{ required: true, trigger: 'blur', message: '请输入图片Id' }],
@@ -91,15 +91,21 @@
    onSubmit() {
      this.$refs.user.validate(valid => {
        if (valid) {
          const params = Object.assign({}, this.imagedata);
          delete params.regionName;
          delete params.category;
          delete params.eventSource;
          delete params.id;
          params.belongToId = +params.belongToId;
          if (this.dialogType === 'create') {
            imageManagement.addImageResource(this.imagedata)
            imageManagement.addImageResource(params)
                .then(() => {
                  this.$message.success('操作成功');
                  this.$emit('closeDialog');
                })
                .catch(err => this.$message.error(`${err}`))
          } else {
            imageManagement.updateImageResource(this.imagedata)
            imageManagement.updateImageResource(params)
                .then(() => {
                  this.$message.success('操作成功');
                  this.$emit('closeDialog');
src/views/operate/message/myIndex/index.vue
@@ -10,19 +10,23 @@
                    <span>输入查询:</span>
                    <el-input placeholder="消息标题" v-model="context"></el-input>
                </div>
                <div class="message-status">
                <div class="search">
                    <span>消息状态:</span>
                    <el-select v-model="messageStatus" placeholder="请选择消息状态">
                        <el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value">
                        </el-option>
                    </el-select>
                </div>
                <div class="message-kind">
                <div class="search">
                    <span>消息分类:</span>
                    <el-select v-model="messageType" placeholder="请选择消息分类">
                        <el-option v-for="item in typeList" :key="item.id" :label="item.columnName" :value="item.id">
                        </el-option>
                    </el-select>
                </div>
                <div class="search">
                  <span>修改时间:</span>
                  <el-date-picker style="width: 200px" type="datetimerange" v-model="datetime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
                </div>
                <div class="find">
                    <el-button type="primary" icon="el-icon-search" @click="handleSearch">查询</el-button>
@@ -144,6 +148,7 @@
            unsame: false,
            myIdx: 0,
            preMyIdx: 0,
            datetime: null,
            options: [
                {
                    value: 0,
@@ -190,11 +195,11 @@
                    columnName:'站内信',
                },
                {
                    id:'02',
                    id:'03',
                    columnName:'邮件',
                },
                {
                    id:'03',
                    id:'02',
                    columnName:'短信',
                }
            ]
@@ -243,9 +248,11 @@
          const messageParam = {
            current: this.currentPage,
            size: this.pageSize,
            channelCode: this.messageType,
            status: this.messageStatus,
            head: this.context
            channelCode: this.messageType === '00' ? null : this.messageType,
            status: this.messageStatus === 2 ? null : this.messageStatus,
            head: this.context,
            startTime: this.datetime ? this.datetime[0] : null,
            endTime: this.datetime ? this.datetime[1] : null
          }
          getMessageList(messageParam)
              .then(({ records, total }) => {
@@ -375,11 +382,10 @@
            justify-content: space-between;
            align-items: center;
            .search,
            .message-status,
            .message-kind {
            .search {
                display: flex;
                justify-content: flex-start;
                justify-content: space-between;
                align-items: center;
                span {
                    flex: 1;
@@ -595,5 +601,8 @@
    &::v-deep .el-dialog__body {
        padding: 0;
    }
  :deep(.el-range-input) {
    background-color: #09152f;
  }
}
</style>
src/views/operate/message/myIndex/update/index.vue
@@ -13,8 +13,8 @@
          <!-- 提醒方式 -->
          <el-form-item class="optionItem" label="提醒方式:" prop="channelCode">
            <el-radio-group v-model="role.channelCode">
              <el-radio value="01">站内信</el-radio>
              <el-radio value="03">邮件</el-radio>
              <el-radio label="01">站内信</el-radio>
              <el-radio label="03">邮件</el-radio>
            </el-radio-group>
            <span class="message-tip">(短信可用数: 1000条)</span>
          </el-form-item>
@@ -148,11 +148,11 @@
    };
    return {
      role: {
        messageType: "",
        messageType: null,
        head: "",
        targetTo: "",
        body: "",
        channelCode: "01",
        channelCode: null,
      },
      createRoleRules: {
        messageType: [
src/views/operate/message/mycontrol/index.vue
@@ -69,7 +69,6 @@
            tableData: [],
            dialogCreate: false,
            dialogEdit:false,
            totalNum: null,
            pageSize: 10,
            currentPage: 1,
            all: false,
@@ -130,13 +129,12 @@
                })
        },
        // 修改栏目状态
        handleChangeStatus({ id, status }) {
            status === true ? status = 1 : status = 0;
        handleChangeStatus({ id, isShow }) {
            this.$axios({
                method: 'post',
                url: `sccg/message_column/update/${id}`,
                data: {
                    isShow: status,
                    isShow: Number(isShow),
                }
            })
                .then(res => {
@@ -163,7 +161,6 @@
        // 设置表格数据
        async setTableData() {
            this.tableData = await this.getColumnList();
            this.totalNum = this.tableData.length;
        },
        // 下拉框监听
        async selectChange(list) {
src/views/operate/sms/smsTemplate/createTemplate/index.vue
@@ -2,7 +2,7 @@
    <div class="createUser">
        <main>
            <div class="mainContent">
                <el-form ref="user" label-width="140px" autoComplete="on" :model="role" :rules="createRoleRules"
                <el-form ref="user" :disabled="formDisabled" label-width="140px" autoComplete="on" :model="role" :rules="createRoleRules"
                    label-position="right">
                    <!-- 消息栏目 -->
                    <el-form-item class="optionItem" label="模板类型:" prop="type">
@@ -17,16 +17,16 @@
                        </div>
                    </el-form-item>
                    <!-- 消息标题 -->
                    <el-form-item class="optionItems" label="消息标题:" prop="title" :disabled="disabled">
                    <el-form-item class="optionItems" label="消息标题:" prop="title">
                        <div class="message-item__left">
                            <el-input v-model="role.title" placeholder="请选择消息标题"></el-input>
                        </div>
                    </el-form-item>
                    <!-- 消息内容 -->
                    <el-form-item class="optionItem" label="消息内容:" prop="body" :disabled="disabled">
                        <MyEditor ref="edit" @getMyBody="getMyBody" ></MyEditor>
                    <el-form-item class="optionItem" label="消息内容:" prop="body">
                        <MyEditor ref="edit" :readOnly="formDisabled" @getMyBody="getMyBody"></MyEditor>
                    </el-form-item>
                    <el-form-item>
                    <el-form-item v-if="!formDisabled">
                        <div class="optionBtn">
                            <el-button type="primary" @click.native.prevent="handleSubmit(0)" class="btn save">保存
                            </el-button>
@@ -71,7 +71,6 @@
                ]
            },
            colList: [{ id: "1", columnName: "验证码模板"}, {id: "2",columnName: "活动模板"}],
            disabled: this.dialogType === 'view'
        }
    },
    created() {
@@ -79,12 +78,18 @@
        this.role = deepClone(this.tableRowData);
      }
    },
  computed: {
      formDisabled() {
        return this.dialogType !== 'create';
      }
  },
    methods: {
        // 新建/保存消息(1:新建,0保存消息)
        handleSubmit() {
            this.$refs.user.validate((valid) => {
                if (valid) {
                  if (this.dialogType === 'created') {
                  if (this.dialogType === 'create') {
                    SMS.addNewSMSTemplate(this.role)
                        .then(() => {
                          this.$message({ type: 'success', message: '操作成功' });
@@ -114,7 +119,7 @@
        handleReset() {
            this.$refs.edit.editor.txt.clear();
            this.$refs.user.resetFields();
        }
        },
    },
    props: ['tableRowData', 'dialogType']
}
src/views/operate/sms/smsTemplate/index.vue
@@ -27,7 +27,7 @@
            <div class="mainContent">
                <div class="main-nav">
                    <span>数据列表</span>
                    <el-button type="primary" icon="el-icon-plus" @click="isShowDialog = true; dialogType = 'created'">添加</el-button>
                    <el-button type="primary" icon="el-icon-plus" @click="isShowDialog = true; dialogType = 'create'">添加</el-button>
                </div>
                <!-- 数据展示 -->
                <el-table ref="multipleTable"
@@ -63,9 +63,9 @@
                    </el-table-column>
                </el-table>
                <!-- 新建消息 -->
                <el-dialog title="新建短信模板" :visible.sync="isShowDialog" v-if="isShowDialog" width="80%"
                <el-dialog :title="dialogType === 'create' ? '新建短信模板' : '查看短信模板'" :visible.sync="isShowDialog" width="80%"
                    :before-close="handleConfirmClose">
                    <MyCreate @closeMyDialog="handleConfirmClose" :dialogType="dialogType" :tableRowData="messageTemplateData"></MyCreate>
                    <MyCreate v-if="isShowDialog" @closeMyDialog="handleConfirmClose" :dialogType="dialogType" :tableRowData="messageTemplateData"></MyCreate>
                </el-dialog>
                <div class="tools">
                    <div class="funs">
src/views/operate/video/updateInterface/index.vue
@@ -1,46 +1,40 @@
<template>
  <div class="updateUser">
    <main>
      <div class="mainContent">
        <el-form :model="videoData" :rules="rules" :disabled="isDisabled" ref="user" style="width: 100%;">
          <el-form-item prop="baseId" label="所属事件编号">
            <el-input v-model="videoData.baseId"></el-input>
          </el-form-item>
          <el-form-item prop="eventSource" label="事件来源">
            <el-input v-model="videoData.eventSource"></el-input>
          </el-form-item>
          <el-form-item prop="category" label="问题类别">
            <el-input v-model="videoData.category"></el-input>
          </el-form-item>
          <el-form-item prop="type" label="类型">
            <el-select v-model="videoData.type">
              <el-option v-for="item in getResourceType()" :key="item.value" :label="item.label" :value="item.value" />
            </el-select>
          </el-form-item>
          <el-form-item prop="regionName" label="社区名称">
            <el-input v-model="videoData.regionName"></el-input>
          </el-form-item>
          <el-form-item prop="id" label="视频Id">
            <el-input v-model="videoData.id"></el-input>
          </el-form-item>
          <el-form-item prop="url" label="视频" min-width="8">
            <el-upload
                class="avatar-uploader"
                action=""
                ref="image"
                :show-file-list="false"
                :auto-upload="true"
                :http-request="videoUpload">
              <video controls v-if="videoData.url" :src="videoData.url" />
              <i v-else class="el-icon-plus avatar-uploader-icon"></i>
            </el-upload>
          </el-form-item>
          <div v-if="!isDisabled" class="optionBtn">
            <el-button type="primary" class="btn submit" @click.native.prevent="onSubmit">提交</el-button>
          </div>
        </el-form>
      </div>
    </main>
    <el-form label-position="right" label-width="150px" :model="videoData" :rules="rules" :disabled="isDisabled" ref="user">
      <el-form-item prop="belongToId" label="所属事件编号">
        <el-input v-model="videoData.belongToId"></el-input>
      </el-form-item>
      <el-form-item prop="eventSource" label="事件来源">
        <el-input v-model="videoData.eventSource"></el-input>
      </el-form-item>
      <el-form-item prop="category" label="问题类别">
        <el-input v-model="videoData.category"></el-input>
      </el-form-item>
      <el-form-item prop="type" label="类型">
        <el-select v-model="videoData.type">
          <el-option v-for="item in getResourceType()" :key="item.value" :label="item.label" :value="item.value" />
        </el-select>
      </el-form-item>
      <el-form-item prop="regionName" label="社区名称">
        <el-input v-model="videoData.regionName"></el-input>
      </el-form-item>
      <el-form-item prop="id" label="视频Id">
        <el-input v-model="videoData.id"></el-input>
      </el-form-item>
      <el-form-item prop="url" label="视频" min-width="8">
        <el-upload
            class="avatar-uploader"
            action=""
            ref="image"
            :show-file-list="false"
            :auto-upload="true"
            :http-request="videoUpload">
          <video controls v-if="videoData.url" :src="videoData.url" width="300px" height="200px" />
          <i v-else class="el-icon-plus avatar-uploader-icon"></i>
        </el-upload>
      </el-form-item>
        <el-button v-if="!isDisabled" class="submit-button" type="primary" @click.native.prevent="onSubmit">提交</el-button>
    </el-form>
  </div>
</template>
<script>
@@ -48,7 +42,6 @@
import videoManagement from "@/api/operate/videoManagement";
import { FILE_ORIGINAL_URL } from "@/utils";
import imageManagement from "@/api/operate/imageManagement";
export default {
  data() {
@@ -61,7 +54,7 @@
    };
    return {
      videoData: {
        baseId: '',
        belongToId: '',
        eventSource: '',
        regionName: '',
        category: '',
@@ -70,7 +63,7 @@
        type: ''
      },
      rules: {
        baseId: [{ required: true, trigger: 'blur', message: '请输入所属事件编号' }],
        belongToId: [{ required: true, trigger: 'blur', message: '请输入所属事件编号' }],
        eventSource: [{ required: true, trigger: 'blur', message: '请输入事件来源' }],
        regionName: [{ required: true, trigger: 'blur', message: '请输入社区名称' }],
        id: [{ required: true, trigger: 'blur', message: '请输入图片Id' }],
@@ -91,15 +84,21 @@
    onSubmit() {
      this.$refs.user.validate(valid => {
        if (valid) {
          const params = Object.assign({}, this.videoData);
          delete params.regionName;
          delete params.category;
          delete params.eventSource;
          delete params.id;
          params.belongToId = +params.belongToId;
          if (this.isUpdate && !this.dialogData) {
            videoManagement.addVideoResource(this.videoData)
            videoManagement.addVideoResource(params)
                .then(() => {
                  this.$message.success('操作成功');
                  this.$emit('closeDialog');
                })
                .catch(err => this.$message.error(`${err}`))
          } else {
            videoManagement.updateVideoResource(this.videoData)
            videoManagement.updateVideoResource(params)
                .then(() => {
                  this.$message.success('操作成功');
                  this.$emit('closeDialog');
@@ -145,50 +144,12 @@
.updateUser {
  border-radius: 1px;
  background-color: #09152f;
  display: flex;
  justify-content: center;
  align-items: center;
  main {
    // border: 1px solid #fff;
    text-align: left;
    padding: 0 55px;
    background-color: #09152f;
    padding-bottom: 50px;
    .mainContent {
      display: flex;
      justify-content: center;
      padding-top: 50px;
      .el-form-item__content {
        width: 400px;
        .el-select {
          width: 100%;
        }
      }
      .optionHandleSp {
        display: flex;
        .areaNumber,
        .moreNumber {
          flex: 1;
        }
        .telNumber {
          flex: 2;
        }
      }
      .optionBtn {
        display: flex;
        margin-top: 20px;
        justify-content: center;
        .btn {
          padding: 12px 50px;
        }
      }
    }
  .submit-button {
    margin-left: 200px;
  }
}
src/views/systemSetting/device/grid/components/main/index.vue
@@ -1,106 +1,87 @@
<template>
    <main>
        <div class="mainContent">
            <!-- 数据展示 -->
            <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"
                @selection-change="tableChange">
                <el-table-column type="selection" min-width="5">
                </el-table-column>
                <el-table-column label="用户ID" min-width="6">
                    <template slot-scope="scope">{{ scope.row.id }}</template>
                </el-table-column>
                <el-table-column prop="nickName" label="用户名称" min-width="10">
                </el-table-column>
                <el-table-column prop="username" label="所属姓名" min-width="8">
                </el-table-column>
                <el-table-column prop="mobile" label="联系方式" min-width="7">
                </el-table-column>
                <el-table-column prop="note" label="所属角色" min-width="8">
                    <template slot-scope="scope">
                        <span>{{filterRole(scope.row.roles)}}</span>
                    </template>
                </el-table-column>
                <!-- <el-table-column prop="departName" label="所属部门" min-width="8">
                </el-table-column> -->
                <el-table-column prop="jobTitle" label="所属职务" min-width="8">
                </el-table-column>
                <el-table-column prop="createTime" label="创建时间" min-width="10">
                    <template slot-scope="scope">
                        <span>{{changeTime(scope.row)}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="status" label="启用" min-width="5">
                    <template slot-scope="scope">
                        <!-- @change="handleChangeStatus(scope.row)" -->
                        <el-switch class="switchStyle" v-model="scope.row.status"
                            active-color="#3fef9a" inactive-color="#000212" disabled>
                        </el-switch>
                    </template>
                </el-table-column>
                <el-table-column prop="operation" label="操作" min-width="20">
                    <!-- <template slot-scope="scope">
                        <div class="operation">
                            <span @click="handleChangeRole(scope.row,'role')">修改角色</span>
                            <span class="line">|</span>
                            <span @click="handleFind(scope.row)">查看</span>
                            <span class="line">|</span>
                            <span @click="handleChangeRole(scope.row,'password')">修改密码</span>
                            <span class="line">|</span>
                            <span @click="handleDelete(scope.row)">删除</span>
                            <span class="line">|</span>
                            <span @click="handleChangeRole(scope.row,'depart')">修改部门</span>
                        </div>
                    </template> -->
                </el-table-column>
            </el-table>
            <!-- 查看页面 -->
            <el-dialog :visible.sync="dialogView" width="45%" v-if="dialogView"
                title="查看用户信息">
                <MyView :userInfo=userInfo></MyView>
            </el-dialog>
            <!-- 修改页面 -->
            <el-dialog :visible.sync="dialogUpdate" width="45%" v-if="dialogUpdate"
                :title="updateFlag ? flag.role ? '修改用户角色信息' : flag.depart ? '修改用户部门信息': '修改用户密码' :''"
                :before-close="handleClose">
                <updateUser :updateFlag="updateFlag" :userInfo=userInfo :flag=flag @closeDialog="closeDialog"
                    :getUserList="getUserList" v-if="!flag.password" />
                <MyPwd v-else :userInfo=userInfo @closeDialog="closeDialog"></MyPwd>
            </el-dialog>
            <!-- tools -->
            <div class="tools">
                <div class="funs">
                    <div class="funsItem funs-sp">
                        <el-checkbox v-model="all" @change="selectAll()">全选</el-checkbox>
                    </div>
                    <div class="funsItem funs-sp">
                        <el-checkbox v-model="unsame" @change="disSame(tableData)">反选</el-checkbox>
                    </div>
                    <div class="funsItem">
                        <el-select v-model="myIdx" placeholder="批量操作" @change="selectChange">
                            <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"
                                :disabled="item.disabled">
                            </el-option>
                        </el-select>
                    </div>
                </div>
                <div class="pagination">
                    <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
                        :page-size="pageSize" @current-change="changeCurrentPage" @prev-click="handlePrev"
                        @next-click="handleNext">
                    </el-pagination>
                </div>
            </div>
    <div class="mainContent">
      <div class="aside">
        <department-aside />
      </div>
      <div class="grid-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"
                  @selection-change="tableChange">
          <el-table-column type="selection" min-width="5">
          </el-table-column>
          <el-table-column label="用户ID" min-width="6">
            <template slot-scope="scope">{{ scope.row.id }}</template>
          </el-table-column>
          <el-table-column prop="nickName" label="用户名称" min-width="10">
          </el-table-column>
          <el-table-column prop="username" label="所属姓名" min-width="8">
          </el-table-column>
          <el-table-column prop="mobile" label="联系方式" min-width="7">
          </el-table-column>
          <el-table-column prop="note" label="所属角色" min-width="8">
            <template slot-scope="scope">
              <span>{{filterRole(scope.row.roles)}}</span>
            </template>
          </el-table-column>
          <!-- <el-table-column prop="departName" label="所属部门" min-width="8">
          </el-table-column> -->
          <el-table-column prop="jobTitle" label="所属职务" min-width="8">
          </el-table-column>
          <el-table-column prop="createTime" label="创建时间" min-width="10">
            <template slot-scope="scope">
              <span>{{changeTime(scope.row)}}</span>
            </template>
          </el-table-column>
          <el-table-column prop="status" label="启用" min-width="5">
            <template slot-scope="scope">
              <!-- @change="handleChangeStatus(scope.row)" -->
              <el-switch class="switchStyle" v-model="scope.row.status"
                         active-color="#3fef9a" inactive-color="#000212" disabled>
              </el-switch>
            </template>
          </el-table-column>
          <el-table-column prop="operation" label="操作" min-width="20">
          </el-table-column>
        </el-table>
        <!-- 查看页面 -->
        <el-dialog :visible.sync="dialogView" width="45%" v-if="dialogView"
                   title="查看用户信息">
          <MyView :userInfo=userInfo></MyView>
        </el-dialog>
        <!-- 修改页面 -->
        <el-dialog :visible.sync="dialogUpdate" width="45%" v-if="dialogUpdate"
                   :title="updateFlag ? flag.role ? '修改用户角色信息' : flag.depart ? '修改用户部门信息': '修改用户密码' :''"
                   :before-close="handleClose">
          <updateUser :updateFlag="updateFlag" :userInfo=userInfo :flag=flag @closeDialog="closeDialog"
                      :getUserList="getUserList" v-if="!flag.password" />
          <MyPwd v-else :userInfo=userInfo @closeDialog="closeDialog"></MyPwd>
        </el-dialog>
        <!-- tools -->
        <div class="tools">
          <div class="funs">
              <el-checkbox v-model="all" @change="selectAll()">全选</el-checkbox>
              <el-checkbox v-model="unsame" @change="disSame(tableData)">反选</el-checkbox>
              <el-select v-model="myIdx" placeholder="批量操作" @change="selectChange">
                <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"
                           :disabled="item.disabled">
                </el-option>
              </el-select>
          </div>
          <el-pagination class="pagination" background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
                         :page-size="pageSize" @current-change="changeCurrentPage" @prev-click="handlePrev"
                         @next-click="handleNext">
          </el-pagination>
        </div>
    </main>
      </div>
    </div>
</template>
<script>
import helper from '@/utils/mydate'
import departmentAside from "@/views/operate/fivepack/threepack/components/aside";
export default {
    components: {
    },
    components: { departmentAside },
    data() {
        return {
            tableData: [],
@@ -377,125 +358,37 @@
}
</script>
<style lang="scss" scoped>
main {
    background-color: #09152f;
    margin-top: 20px;
    padding-bottom: 50px;
    border: 1pox solid #fff;
.mainContent {
  display: flex;
  justify-content: start;
  flex-wrap: nowrap;
    .mainTitle {
        line-height:60px;
    }
  .grid-content {
    margin-left: 10px;
    flex: 1;
    .tools {
        display : flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 20px;
      display: flex;
      justify-content: space-between;
      flex-wrap: nowrap;
        .funs {
            display: flex;
            .funs-sp{
                border: 1px solid #17324c;
            }
            .funsItem {
                line-height: 28px;
                display: flex;
                align-items: center;
                border-radius: 4px;
                font-size: 12px;
                margin-left: 10px;
      .pagination {
        margin-top: 55px;
      }
                .el-checkbox {
                    width: 80px;
                    padding: 0 10px;
                }
                .el-select {
                    width: 120px;
                }
                &::v-deep .el-input__inner {
                    border: none;
                    background-color: #09152f;
                }
                &:hover {
                    border: 1px solid #4b9bb7;
                }
                &:hover .el-checkbox {
                    color: #4b9bb7;
                }
            }
      .el-pagination {
        &::v-deep li,
        &::v-deep .btn-prev,
        &::v-deep .btn-next {
          background-color: #071f39;
          color: #4b9bb7;
        }
        .pagination {
            margin-top: 50px;
            display: flex;
            line-height: 50px;
            justify-content: center;
            .el-pagination {
                &::v-deep li,
                &::v-deep .btn-prev,
                &::v-deep .btn-next {
                    background-color: #071f39;
                    color: #4b9bb7;
                }
                &::v-deep .active {
                    background-color: #409eff;
                    color: #fff;
                }
            }
        &::v-deep .active {
          background-color: #409eff;
          color: #fff;
        }
      }
    }
    .el-table {
        color: #4b9bb7;
        font-size: 10px;
        .operation {
            display: flex;
            font-size: 10px;
            .line {
                padding: 0 1px;
            }
            span:hover {
                cursor: pointer;
            }
        }
    }
    // &::v-deep .switchStyle .el-switch__label {
    //     position: absolute;
    //     display: none;
    //     color: #fff;
    // }
    // &::v-deep .el-switch__core {
    //     background-color: rgba(166, 166, 166, 1);
    // }
    // &::v-deep .switchStyle .el-switch__label--left {
    //     z-index: 9;
    //     left: 20px;
    // }
    // &::v-deep .switchStyle .el-switch__label--right {
    //     z-index: 9;
    //     left: 4px;
    // }
    // &::v-deep .switchStyle .el-switch__label.is-active {
    //     display: block;
    // }
    // &::v-deep .switchStyle.el-switch .el-switch__core,
    // &::v-deep .el-switch .el-switch__label {
    //     width: 56px !important;
    // }
  }
}
</style>
src/views/systemSetting/device/grid/index.vue
@@ -1,6 +1,5 @@
<template>
    <div class="userList">
        <myHeader @setDialog="changeDialog" @getSearch="getSearch"></myHeader>
        <myMain :refresh="isFresh" :keyword="keyword" @resetFresh="resetFresh" />
    </div>
</template>
src/views/systemSetting/platform/mySetting/index.vue
@@ -92,7 +92,6 @@
                })
        },
        handleDelete(data) {
            console.log(data);
            this.$confirm('您确认要删除订单吗?')
                .then(_ => {
                    this.$axios({
@@ -110,7 +109,6 @@
                        })
                })
                .catch(err => {
                    console.log(err);
                })
        },
        // 获取菜单列表
@@ -171,7 +169,6 @@
        background-color: #09152f;
        margin-top: 20px;
        padding-bottom: 50px;
        border: 1pox solid #fff;
        .main-content {
            .my-container {
src/views/video/index.vue
@@ -1,13 +1,7 @@
<template>
  <el-container style="height: 100%;">
    <el-aside heigth="100%" width="200px ">
      <div style="line-height: 40px;text-align: left;padding: 0 20px 0 10px;">
        <span style="color:rgb(75, 155, 183);font-weight: 500; width: 196px;">组织机构</span>
        <el-input placeholder="请输入机构"></el-input>
      </div>
      <el-tree :data="treedata" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
    <el-aside heigth="100%" width="200px">
      <department-aside />
    </el-aside>
    <el-container>
@@ -46,8 +40,8 @@
      </el-main>
      <el-footer>
        <div style="margin-bottom:0;">
          <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
            :page-size="pageSize" @current-change="changeCurrentPage" @prev-click="handlePrev" @next-click="handleNext">
          <el-pagination layout="prev, pager, next" :total="totalNum"
            :page-size="pageSize">
          </el-pagination>
        </div>
      </el-footer>
@@ -153,9 +147,11 @@
  color: rgb(75, 155, 183);
}
</style>
<script src="https://vjs.zencdn.net/7.20.3/video.min.js"></script>
<script>
import departmentAside from "@/views/operate/fivepack/threepack/components/aside";
  export default {
    components: { departmentAside },
    data() {
      return {
        totalNum:7,