luobisheng
2022-11-08 2406ac9a70e51e76c6ba95efb69f641c7b22e8ea
队伍建设接口对接
8个文件已修改
1个文件已添加
922 ■■■■■ 已修改文件
src/App.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/system/portal/teamConstruction.js 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/index.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/request.js 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/cockpitManage/createUser/index.vue 200 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/cockpitManage/detailUser/index.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/cockpitManage/index.vue 387 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/cockpitManage/updateUser/index.vue 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/platform/portalSetting/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue
@@ -32,9 +32,7 @@
      const pic = JSON.parse(sessionStorage.getItem('pic'));
      if (pic) {
        result = pic;
        // console.log('缓存')
      } else {
        // console.log('请求');
        await this.$axios({
          method: 'get',
          url: 'sccg/system/portal/logo/search',
src/api/system/portal/teamConstruction.js
New file
@@ -0,0 +1,62 @@
import { getToken } from "@/utils/helper";
import request from "@/utils/request";
const TEAM_CONSTRUCTION_URL = '/sccg/team_construction';
const TOKEN = {
    'Authorization': getToken()
}
export function addTeam(params) {
    return request({
        method: 'post',
        url: TEAM_CONSTRUCTION_URL + '/addition',
        headers: { ...TOKEN },
        params
    });
}
export function deleteTeam(params) {
    return request({
        method: 'delete',
        url: TEAM_CONSTRUCTION_URL + '/deletion',
        headers: { ...TOKEN },
        params
    });
}
export function exportTeamInfo(params) {
    return request({
        method: 'post',
        url: TEAM_CONSTRUCTION_URL + '/export',
        headers: { ...TOKEN },
        params,
        responseType: 'blob'
    });
}
export function importTeamInfo(data) {
    return request({
        method: 'post',
        url: TEAM_CONSTRUCTION_URL + '/import',
        headers: { ...TOKEN, 'Content-Type': 'multipart/form-data' },
        data: data,
    });
}
export function updateTeamInfo(params) {
    return request({
        method: 'put',
        url: TEAM_CONSTRUCTION_URL + '/modification',
        headers: { ...TOKEN },
        params
    });
}
export function searchTeamInfo(params) {
    return request({
        method: 'get',
        url: TEAM_CONSTRUCTION_URL + '/query',
        headers: { ...TOKEN },
        params
    });
}
src/utils/index.js
@@ -52,3 +52,5 @@
    return d.getMonth() + 1 + '月' + d.getDate() + '日' + d.getHours() + '时' + d.getMinutes() + '分'
  }
}
export const SUCCESS_CODE = 200;
src/utils/request.js
@@ -22,27 +22,24 @@
// 响应
api.interceptors.response.use(
  (response) => {
    const result = response.data;
    // console.log(response);
    let result = response.data;
    if (response.headers['content-disposition']) {
         result = {
            contentDisposition: response.headers['content-disposition'],
            data: response.data
        }
    }
    if (response.status === 200 && result.code === 200) {
      return result;
    }
    else if (response.status === 200 && result.code === 500) {
      // tip.Message({
      //   type: 'error',
      //   message: '服务器努力加载中',
      // })
    } else if (response.status === 200 && result.code === 500) {
      return result;
    }
    else if (response.status === 200 && result.code === 401) {
      // console.log(result);
    } else if (response.status === 200 && result.code === 401) {
      tip.Message({
        type: 'warning',
        message: '登录身份已过期',
      })
      router.push('/login');
    }
    else {
    } else {
      return result;
    }
  },
src/views/systemSetting/platform/cockpitManage/createUser/index.vue
@@ -7,114 +7,111 @@
          label-width="140px"
          autoComplete="on"
          :model="depart"
          :rules="createDepartRules"
          :rules="departRules"
          label-position="right"
        >
          <!-- 部门名称 -->
          <span style="heght:18px;display:block;line-height: 14px;">
            执法人员结构
          </span>
          <el-form-item class="optionItem" label="部门名称:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入部门名称"></el-input>
          <el-form-item class="optionItem" label="部门名称:" prop="name">
            <el-input v-model="depart.name" placeholder="请输入部门名称"></el-input>
          </el-form-item>
          <!-- 上级部门 -->
          <el-form-item class="optionItem" label="部门人数:" prop="departName">
            <el-input v-model="depart.departNumber" placeholder="请输入部门人数"></el-input>
          <el-form-item class="optionItem" label="部门人数:" prop="peopleNumber">
            <el-input v-model="depart.peopleNumber" placeholder="请输入部门人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="辖区管理:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入辖区管理"></el-input>
          <el-form-item class="optionItem" label="辖区管理:" prop="regionIds">
            <el-input v-model="depart.regionIds" placeholder="请输入辖区管理"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="本科学历以上人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入本科学历以上人数"></el-input>
          <el-form-item class="optionItem" label="本科学历以上人数:" prop="upUndergraduatePeopleNumber">
            <el-input v-model="depart.upUndergraduatePeopleNumber" placeholder="请输入本科学历以上人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="持证人员数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入持证人员数"></el-input>
          <el-form-item class="optionItem" label="持证人员数:" prop="holderNumber">
            <el-input v-model="depart.holderNumber" placeholder="请输入持证人员数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="45岁以下人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入45岁以下人数"></el-input>
          <el-form-item class="optionItem" label="45岁以下人数:" prop="underFortyFivePeopleNumber">
            <el-input v-model="depart.underFortyFivePeopleNumber" placeholder="请输入45岁以下人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="持法律职业资格证书人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入持法律职业资格证书人数"></el-input>
          <el-form-item class="optionItem" label="持法律职业资格证书人数:" prop="legalProfessionalQualificationCertificatePeopleNumber">
            <el-input v-model="depart.legalProfessionalQualificationCertificatePeopleNumber" placeholder="请输入持法律职业资格证书人数"></el-input>
          </el-form-item>
          <span>
            作风纪律
          </span>
          <el-form-item class="optionItem" label="通报数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入通报数量"></el-input>
          <el-form-item class="optionItem" label="通报数量:" prop="reportNumber">
            <el-input v-model="depart.reportNumber" placeholder="请输入通报数量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="违纪行为数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入违纪行为数量"></el-input>
          <el-form-item class="optionItem" label="违纪行为数量:" prop="disciplinaryOffenceNumber">
            <el-input v-model="depart.disciplinaryOffenceNumber" placeholder="请输入违纪行为数量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="违法犯罪行为数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入违法犯罪行为数量"></el-input>
          <el-form-item class="optionItem" label="违法犯罪行为数量:" prop="criminalOffenseNumber">
            <el-input v-model="depart.criminalOffenseNumber" placeholder="请输入违法犯罪行为数量"></el-input>
          </el-form-item>
          <span>案件办理</span>
          <el-form-item class="optionItem" label="每月案件办理量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入每月案件办理量"></el-input>
          <el-form-item class="optionItem" label="每月案件办理量:" prop="monthCaseNumber">
            <el-input v-model="depart.monthCaseNumber" placeholder="请输入每月案件办理量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="未超时案件量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入未超时案件量"></el-input>
          <el-form-item class="optionItem" label="未超时案件量:" prop="noTimeoutCaseNumber">
            <el-input v-model="depart.noTimeoutCaseNumber" placeholder="请输入未超时案件量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="复议或诉讼数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入复议或诉讼数"></el-input>
          <el-form-item class="optionItem" label="复议或诉讼数:" prop="reviewOrLawsuitNumber">
            <el-input v-model="depart.reviewOrLawsuitNumber" placeholder="请输入复议或诉讼数"></el-input>
          </el-form-item>
        </el-form>
      </div>
    </main>
    <footer>
      <div class="optionBtn">
        <el-button @click="handleClose">取消</el-button>
        <el-button type="primary" class="btn submit" @click="handleUser"
          >确定</el-button
        >
        <el-button type="primary" class="btn submit" @click="handleUser()">确定</el-button>
      </div>
    </footer>
  </div>
</template>
<script>
import { getTypeList } from "@/utils/helper";
import { addTeam } from "@/api/system/portal/teamConstruction";
import { SUCCESS_CODE } from "@/utils";
export default {
  data() {
    const validateNickname = (rule, value, callback) => {
      if (!value) {
        callback(new Error("请填写部门名称"));
      } else {
        callback();
      }
    };
    const validatePass = (rule, value, callback) => {
      if (!value) {
        callback();
      } else {
        callback();
      }
    };
    const validatePhone = (rule, value, callback) => {
      if (!value) {
        callback();
      } else {
        callback();
      }
    };
    return {
      depart: {
        departName: "",
        parentId: "",
        departType: "",
        departDes: "",
        // 执法人员结构
        name: '',
        peopleNumber: '',
        regionIds: '',
        upUndergraduatePeopleNumber: '',
        holderNumber: '',
        underFortyFivePeopleNumber: '',
        legalProfessionalQualificationCertificatePeopleNumber: '',
        // 作风纪律
        reportNumber: null,
        disciplinaryOffenceNumber: null,
        criminalOffenseNumber: null,
        // 案件办理
        monthCaseNumber: null,
        noTimeoutCaseNumber: null,
        reviewOrLawsuitNumber: null
      },
      createDepartRules: {
        departName: [
          { required: true, trigger: "blur", validator: validateNickname },
        ],
        parentId: [
          { required: false, trigger: "blur", validator: validatePass },
        ],
        departType: [
          { required: false, trigger: "blur", validator: validatePhone },
        ],
        departDes: [{ required: false, trigger: "blur" }],
      departRules: {
        name: [{ required: true, trigger: "blur", message: '部门名称必填'  }],
        peopleNumber: [{ required: true, trigger: "blur", message: '部门人数必填' }],
        regionIds: [{ required: true, trigger: "blur", message: '辖区管理必填' }],
        upUndergraduatePeopleNumber: [{ required: true, trigger: "blur", message: '本科学历以上人数必填' }],
        holderNumber: [{ required: true, trigger: "blur", message: '持证人员数必填' }],
        underFortyFivePeopleNumber: [{ required: true, trigger: "blur", message: '45岁以下人数必填' }],
        legalProfessionalQualificationCertificatePeopleNumber: [{ required: true, trigger: "blur", message: '持法律职业资格证书人数必填' }],
        reportNumber: [{ required: true, trigger: "blur", message: '通报数量必填' }],
        disciplinaryOffenceNumber: [{ required: true, trigger: "blur", message: '违纪行为数量:必填' }],
        criminalOffenseNumber: [{ required: true, trigger: "blur", message: '违法犯罪行为数量必填' }],
        monthCaseNumber: [{ required: true, trigger: "blur", message: '每月案件办理量必填' }],
        noTimeoutCaseNumber: [{ required: true, trigger: "blur", message: '未超时案件量必填' }],
        reviewOrLawsuitNumber: [{ required: true, trigger: "blur", message: '复议或诉讼数必填' }]
      },
      userList: [],
      departList: [],
@@ -128,16 +125,17 @@
      mylabel: "",
      defaultProps: {
        children: "children",
        label: "departName",
        label: "name",
      },
    };
  },
  created() {
    const that = this;
    // 获取部门树形结构图
    this.getDepartTree();
    // 获取用户列表
    this.getUserList();
    // 获取部门类型列表
    this.getDepartTypeList();
  },
@@ -145,55 +143,37 @@
    handleUser() {
      this.$refs.user.validate((valid) => {
        if (valid) {
          const { depart, checkedList, selectOrg } = this;
          const arr = [];
          checkedList.forEach((item) => {
            arr.push({ leader: item.leader, userId: item.id });
          });
          console.log(arr);
          this.$axios({
            method: "post",
            url: "/sccg/depart/create",
            data: {
              departName: depart.departName,
              parentId: selectOrg.orgsid[0],
              departType: depart.departType,
              departDes: depart.departDes,
              departManagerList: arr,
            },
          }).then((res) => {
            if (res.code === 200) {
              this.$message({
                message: res.message,
                type: "success",
          addTeam(this.depart)
              .then(({ code, message }) => {
                if (code === SUCCESS_CODE) {
                  this.$message({ type: 'success', message });
                  this.$emit('closeUpdateDialog');
                } else {
                  this.$message({ type: 'warning', message });
                }
              })
              .catch(err => {
                this.$message({ type: 'error', message: err });
              });
              this.refresh();
            } else if (res.code === 2001) {
              this.$message({
                message: res.message,
                type: "error",
              });
              this.refresh();
            }
          });
        } else {
          return false;
          this.$message({ type: 'warning', message: '请检查必填项' });
        }
      });
    },
    // 获取部门树形结构图
    getDepartTree() {
      this.$axios({
        method: "get",
        url: "sccg/depart/tree",
      }).then((res) => {
        // console.log(res);
        // res.data.unshift({ id: 0, departName: "顶级菜单" });
        this.departList = res.data;
      });
    },
    // 获取所有用户信息
    getUserList() {
      // 获取所有用户信息、用户查询(暂时支持电话号码)
      this.$axios.get(`/sccg/depart/query_surplus_user`).then((res) => {
        if (res.code === 200) {
@@ -201,13 +181,12 @@
        }
      });
    },
    addUser() {
      console.log(this.checkedUser);
      console.log(this.userList);
      this.checkedList = [];
      this.userList.forEach((item) => {
        this.checkedUser.forEach((child) => {
          if (item.id == child) {
          if (item.id === child) {
            this.checkedList.push({
              id: item.id,
              username: item.username,
@@ -219,17 +198,22 @@
      this.checkedList[0].leader = true;
      this.openUser = false;
    },
    handleClose() {
      this.$emit("changMyDialog", { flag: false });
    },
    // 获取部门类型
    async getDepartTypeList() {
      this.departTypeList = await getTypeList(1, "08");
    },
    handleCheck(data, checked) {
      this.depart.parentId = data.departName;
      this.depart.parentId = data.name;
      // 获取当前选择的id在数组中的索引
      const indexs = this.selectOrg.orgsid.indexOf(data.id);
      // 如果不存在数组中,并且数组中已经有一个id并且checked为true的时候,代表不能再次选择。
      if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
        this.$message({
@@ -237,9 +221,11 @@
          type: "warning",
          showClose: true,
        });
        // 设置已选择的节点为false 很重要
        this.$refs.tree.setChecked(data, false);
      } else if (this.selectOrg.orgsid.length === 0 && checked) {
        // 发现数组为空 并且是已选择
        // 防止数组有值,首先清空,再push
        this.selectOrg.orgsid = [];
@@ -249,11 +235,13 @@
        this.selectOrg.orgsid.length === 1 &&
        !checked
      ) {
        // 再次直接进行赋值为空操作
        this.selectOrg.orgsid = [];
        this.depart.parentId = "";
      }
    },
    // 设置领导
    setLeader(idx) {
      this.checkedList.forEach((item, index) => {
src/views/systemSetting/platform/cockpitManage/detailUser/index.vue
@@ -21,22 +21,10 @@
          <el-form-item prop="questionType" label="图片:" min-width="8">
            <img style="width: 180px;height: 120px;" :src=imagedata.imageUrl>
          </el-form-item>
          <!-- <el-form-item prop="questionType" label="问题类型" min-width="8" v-model="imagedata.questionType">
          </el-form-item>
          <el-form-item prop="bigType" label="大类名称" min-width="8" v-model="imagedata.bigType">
          </el-form-item>
          <el-form-item prop="smallType" label="小类名称" min-width="8" v-model="imagedata.smallType">
          </el-form-item>
          <el-form-item prop="imagesId" label="图片Id" min-width="8" v-model="imagedata.imagesId">
          </el-form-item>
          <el-form-item prop="uploadTime" label="上传时间" min-width="15" v-model="imagedata.uploadTime"> -->
          <!-- </el-form-item> -->
          <!-- <el-form-item v-if="updateFlag"> -->
          <div class="optionBtn">
            <el-button type="primary" class="btn submit" @click.native.prevent="handleUser">提交
            </el-button>
          </div>
          <!-- </el-form-item> -->
        </el-form>
      </div>
    </main>
src/views/systemSetting/platform/cockpitManage/index.vue
@@ -6,13 +6,13 @@
                    <div class="search-item">
                        <span>部门名称:</span>
                        <div class="option">
                            <el-input v-model="info.type" placeholder="请输入部门"></el-input>
                            <el-input v-model="searchDepartment" placeholder="请输入部门"></el-input>
                        </div>
                    </div>
                    <div class="search-item">
                        <span>状态:</span>
                        <div class="option">
                            <el-input v-model="info.startTime" placeholder="选择状态"></el-input>
                            <el-input v-model="searchStatus" placeholder="选择状态"></el-input>
                        </div>
                    </div>
                    <div class="findBtn">
@@ -24,49 +24,54 @@
        <main>
            <div class="mainContent">
                <div class="type-nav">
                    <el-button type="primary">导入</el-button>
                    <el-button type="primary">导出</el-button>
                    <el-button type="primary" @click="addImages">添加</el-button>
                    <el-upload
                        class="upload-demo"
                        action=""
                        :http-request="importTable"
                        :show-file-list="false"
                        :auto-upload="true"
                        multiple
                        :limit="1">
                      <el-button type="primary">导入</el-button>
                    </el-upload>
                    <el-button type="primary" @click="exportTable">导出</el-button>
                    <el-button type="primary" @click="showAddDialog">添加</el-button>
                </div>
                <!-- 数据展示 -->
                <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 prop="code" label="部门名称" min-width="8">
                    <el-table-column prop="name" label="部门名称" min-width="8">
                    </el-table-column>
                    <el-table-column prop="questionType" label="部门人数" min-width="10">
                    <el-table-column prop="peopleNumber" label="部门人数" min-width="10">
                    </el-table-column>
                    <el-table-column prop="bigType" label="本科学历及以上人数" min-width="15">
                    <el-table-column prop="upUndergraduatePeopleNumber" label="本科学历及以上人数" min-width="15">
                    </el-table-column>
                    <el-table-column prop="smallType" label="持证人员数" min-width="8">
                    <el-table-column prop="holderNumber" label="持证人员数" min-width="8">
                    </el-table-column>
                    <el-table-column prop="imagesId" label="45数以下人数" min-width="8">
                    <el-table-column prop="underFortyFivePeopleNumber" label="45数以下人数" min-width="8">
                    </el-table-column>
                    <el-table-column prop="uploadTime" label="持法律职业资格证人数" min-width="15" v-if="mystatus === 1">
                    <el-table-column prop="legalProfessionalQualificationCertificatePeopleNumber" label="持法律职业资格证人数" min-width="15" v-if="mystatus === 1">
                    </el-table-column>
                    <el-table-column prop="imagesId" label="通报数量" min-width="8">
                    <el-table-column prop="reportNumber" label="通报数量" min-width="8">
                    </el-table-column>
                    <el-table-column prop="breakRuleActiveNumber" label="违纪行为数量" min-width="15" v-if="mystatus === 1">
                    <el-table-column prop="disciplinaryOffenceNumber" label="违纪行为数量" min-width="15" v-if="mystatus === 1">
                    </el-table-column>
                    <el-table-column prop="crimeActiveNumber" label="违法犯罪行为数量" min-width="8">
                    <el-table-column prop="criminalOffenseNumber" label="违法犯罪行为数量" min-width="8">
                    </el-table-column>
                    <el-table-column prop="monthCaseNumber" label="每月案件案" min-width="15" v-if="mystatus === 1">
                    </el-table-column>
                    <el-table-column prop="noTimeoutCaseNumber" label="未超时案件量" min-width="8">
                    </el-table-column>
                    <el-table-column prop="reViewNumber" label="复议或诉讼数" min-width="15" v-if="mystatus === 1">
                    <el-table-column prop="reviewOrLawsuitNumber" label="复议或诉讼数" min-width="15" v-if="mystatus === 1">
                    </el-table-column>
                    <el-table-column prop="status" label="状态" min-width="15" v-if="mystatus === 1">
                    </el-table-column>
                    <el-table-column prop="operation" label="操作" min-width="15">
                        <template slot-scope="scope">
                            <div class="operation">
                                <!-- <span @click="handleFind(scope.row)">查看</span>
                                <span class="line">|</span> -->
                                <span @click="handleUpdate(scope.row)">修改</span>
                                <span @click="showUpdateDialog(scope.row)">修改</span>
                                <span class="line">|</span>
                                <span @click="handleDelete(scope.row)">删除</span>
                            </div>
@@ -76,41 +81,23 @@
                <!-- 详情页展示 -->
                <el-dialog :visible.sync="dialogView" width="80%" title="基础信息(人工)" v-if="dialogView"
                    :before-close="handleClose">
                    <MyDetail :info=info v-if="mystatus == 1 ? true : false"></MyDetail>
                    <MyDetail :info=info v-if="mystatus === 1"></MyDetail>
                    <MyIllDetail :info=info v-else></MyIllDetail>
                </el-dialog>
                <!-- 上传页面 -->
                <!-- <el-dialog :visible.sync="dialogUpload" width="80%" title="上传处置结果" v-if="dialogUpload"
                    :before-close="handleClose"> -->
                <!-- <uploadVio v-if="mystatus === 1" :caseId="caseId" :mycode="caseCode"  @closeDialog="closeDialog"></uploadVio>
                    <uploadIll v-else :caseId="caseId" :mycode="caseCode" @closeDialog="closeDialog"></uploadIll> -->
                <!-- </el-dialog> -->
                <!-- tools -->
                <!-- 查看修改页面 -->
                <el-dialog :visible.sync="dialogUpdate" width="40%" title="修改部门" v-if="dialogUpdate"
                    :before-close="handleClose">
                    <updateUser />
                    <!-- :updateFlag="updateFlag"
            :userInfo="userInfo"
            :getDepartList="context === '' ? getUserList : search"
            @changeDialog="changMyDialog" -->
                    <updateUser @closeUpdateDialog="closeUpdateDialog()" :updateDepartmentData="updateDepartmentData" />
                </el-dialog>
                <el-dialog :visible.sync="dialogcheck" width="40%" title="查看" v-if="dialogcheck"
                    :before-close="handleClose">
                    :before-close="handleClose" >
                    <detailUser />
                    <!-- :updateFlag="updateFlag"
            :userInfo="userInfo"
            :getDepartList="context === '' ? getUserList : search"
            @changeDialog="changMyDialog" -->
                </el-dialog>
                <el-dialog :visible.sync="dialogAdd" width="40%" title="添加部门" v-if="dialogAdd"
                    :before-close="handleClose">
                    <createUser />
                    <!-- :updateFlag="updateFlag"
            :userInfo="userInfo"
            :getDepartList="context === '' ? getUserList : search"
            @changeDialog="changMyDialog" -->
                    <createUser @closeUpdateDialog="closeUpdateDialog()" />
                </el-dialog>
                <div class="tools">
@@ -141,138 +128,28 @@
    </div>
</template>
<script>
// import uploadVio from './updateUser/uploadResult/vio'
// import uploadIll from "./updateUser/uploadResult/ill"
import createUser from "./createUser";
import updateUser from "./updateUser";
import detailUser from "./detailUser";
import { deleteTeam, exportTeamInfo, importTeamInfo, searchTeamInfo } from "@/api/system/portal/teamConstruction";
import {SUCCESS_CODE} from "@/utils";
export default {
    components: {
        // updateUser,
        // uploadVio, uploadIll,
        updateUser, createUser, detailUser
    },
    data() {
        return {
            updateDepartmentData: null,
            searchDepartment: '',
            searchStatus: '',
            tableFile: null,
            dialogUpdate: false,
            dialogcheck: false,
            tableData: [
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
                {
                    code: "街道1",
                    questionType: "34",
                    bigType: "20",
                    smallType: "16",
                    imagesId: "26",
                    uploadTime: "8",
                    breakRuleActiveNumber: "2",
                    crimeActiveNumber: "1",
                    monthCaseNumber: "0",
                    noTimeoutCaseNumber: "145",
                    reViewNumber: "100",
                    status: "23",
                },
            ],
            tableData: [],
            context: "",
            dialogUpload: false,
            // dialogUpdate: false,
            dialogView: false,
            updateFlag: false,
            userInfo: {},
@@ -323,6 +200,7 @@
            dialogAdd: false,
        }
    },
    created() {
        this.statusArr[0] = 6;
        this.typeList.forEach(item => {
@@ -332,25 +210,80 @@
        })
        this.getUserList();
    },
    methods: {
        //修改
        handleUpdate() {
        showUpdateDialog(data) {
            this.dialogUpdate = true;
            this.updateDepartmentData = data;
        },
        // 查看
        handleFind() {
        showViewDialog() {
            this.dialogcheck = true;
        },
        // 添加界面
        showAddDialog() {
          this.dialogAdd = true;
        },
        // 导出
        exportTable() {
          exportTeamInfo({ current: this.currentPage, size: this.pageSize, departName: this.searchDepartment, status: this.searchStatus })
              .then(res => {
                const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' });
                const fileName = res.contentDisposition.split('=')[1];
                if (window.navigator && window.navigator.msSaveBlob) {
                  navigator.msSaveBlob(blob, fileName);
                } else {
                  const link = document.createElement('a');
                  link.style.display = 'none';
                  link.href = URL.createObjectURL(blob);
                  link.setAttribute('download', decodeURI(fileName));
                  document.body.appendChild(link);
                  link.click();
                  URL.revokeObjectURL(link.href);
                  document.body.removeChild(link);
                }
              })
              .catch(err => {
                this.$message({ type: 'error', message: err });
              });
        },
        // 导入
        importTable(file) {
          importTeamInfo({'multipartFile': file.file})
              .then(({ code, message }) => {
                if (code === SUCCESS_CODE) {
                  this.$message({ type: 'success', message });
                  this.getUserList();
                } else {
                  this.$message({ type: 'error', message });
                }
              })
              .catch(err => {
                this.$message({ type: 'error', message: err });
              });
        },
        closeUpdateDialog() {
          this.dialogAdd = false;
          this.dialogUpdate = false;
          this.getUserList();
        },
        // 顶部下拉框
        setMystatus(value) {
            console.log(value);
            this.statusArr[1] = value;
            this.changeTypeChecked(value - 1);
            this.getUserList();
        },
        // 批量删除
        mulDelete(idArr) {
            console.log(idArr);
            this.$axios({
                method: 'delete',
                url: 'sccg/violations/batch_delete?ids=' + idArr,
@@ -362,9 +295,9 @@
                })
            })
        },
        // 执行下拉框操作
        selectChange(list) {
            console.log(this.tempList);
            if (this.tempList.length !== 0) {
                if (list === 3) {
                    this.preMyIdx = list;
@@ -378,125 +311,112 @@
                })
            }
        },
        // 监听表格
        tableChange(list) {
            this.tempList = [];
            list.forEach(item => {
                this.tempList.push(item.code);
            })
            if (list.length === this.tableData.length) {
                this.all = true;
            } else {
                this.all = false
            }
            this.all = list.length === this.tableData.length;
        },
        // 全选
        selectAll() {
            this.$refs.multipleTable.toggleAllSelection();
        },
        // 反选
        disSame(list) {
            list.forEach(row => {
                this.$refs.multipleTable.toggleRowSelection(row)
            })
        },
        // 删除单条数据
        handleDelete({ number }) {
            console.log(number);
            this.$confirm('确认删除?')
                .then(_ => {
                    console.log(1);
                    this.$axios({
                        method: 'delete',
                        url: `sccg/violations/delete?id=${number}`,
                    })
                        .then(res => {
                            console.log(res);
                            this.$message({
                                type: res.code === 200 ? 'success' : 'warning',
                                message: res.message
                            })
                            this.getUserList();
                        })
                })
                .catch(_ => { console.log(2) });
        // 删除单条数据
        handleDelete(row) {
          this.$confirm('确认删除?')
              .then(() => {
                deleteTeam({ id: row.id })
                    .then(({ code, message }) => {
                      if (code === SUCCESS_CODE) {
                        this.$message({ type: 'success', message });
                        this.getUserList();
                      } else {
                        this.$message({ type: 'error', message });
                      }
                    })
                    .catch(err => {
                      this.$message({ type: 'error', message: err });
                    })
              })
        },
        // 获取用户列表
        getUserList() {
            const { currentPage, pageSize, context, statusArr } = this;
            console.log(statusArr);
            // this.$axios({
            //     method: 'get',
            //     url: `sccg/base_case/query?state=${statusArr[0]}&current=${currentPage}&size=${pageSize}&resource=2&type=${statusArr[1]}`
            // }).then(res => {
            //     this.totalNum = res.data.total;
            //     this.tableData = res.data.records;
            //     console.log(res);
            // })
          const searchInfo = {
            current: this.currentPage, size: this.pageSize, departName: this.searchDepartment, status: this.searchStatus
          };
          searchTeamInfo(searchInfo)
              .then(({ data }) => {
                this.tableData = data.records;
                this.totalNum = data.total;
              })
              .catch(err => {
                console.log(err);
              });
        },
        // 更改违规/违建
        changeTypeChecked(idx) {
            this.typeList.forEach((item, index) => {
                if (index === idx) {
                    item.checked = true;
                } else {
                    item.checked = false;
                }
                item.checked = index === idx;
            })
            this.mystatus = idx + 1;
            console.log(this.mystatus);
            this.statusArr[1] = this.typeList[idx].value;
            this.getUserList();
        },
        // 设置表格斑马纹
        tableRowClassName({ row, rowIndex }) {
            if ((rowIndex + 1) % 2 == 0) {
            if ((rowIndex + 1) % 2 === 0) {
                return 'warning-row';
            } else {
                return 'success-row';
            }
            return '';
        },
        // 当前页改变触发事件
        changeCurrentPage(page) {
            this.currentPage = page;
            this.getUserList();
        },
        // 上一页点击事件
        handlePrev(page) {
            this.currentPage = page;
            this.getUserList();
        },
        // 下一页点击事件
        handleNext(page) {
            this.currentPage = page;
            this.getUserList();
        },
        addImages() {
            this.dialogAdd = true;
        },
        handleClose(done) {
            this.$confirm('确认关闭?')
                .then(_ => {
                    this.dialogUpload = false;
                    // this.dialogUpdate = false;
                    done();
                })
                .catch(_ => { });
        },
        handleClose(done) {
            this.$confirm('确认关闭?')
                .then(_ => {
                    this.dialogUpload = false;
                    // this.dialogUpdate = false;
                    done();
                })
                .catch(_ => { });
        },
        async JumpView(data) {
            await this.getEventInfo(data.code);
        },
        // 获取案件信息
        async getEventInfo(code) {
            await this.$axios({
@@ -508,17 +428,19 @@
                    this.dialogView = true;
                })
        },
        opernDialog(data) {
        openDialog(data) {
            this.dialogUpload = true;
            this.caseId = data.id;
            this.caseCode = data.code
            // console.log(data);
        },
        // 关闭上传界面
        closeDialog({ flag }) {
            this.dialogUpload = flag;
            this.getUserList();
        },
        // 处理时间
        filterTime(time) {
            return helper(time);
@@ -534,15 +456,10 @@
    header {
        background-color: #09152f;
        border: 1pox solid #fff;
        .headerContent {
            // padding: 0 40px;
            width: 100%;
            // display: flex;
            line-height: 60px;
            // justify-content: space-between;
            // align-items: center;
            .search {
                display: flex;
@@ -596,7 +513,6 @@
        background-color: #09152f;
        margin-top: 20px;
        padding-bottom: 50px;
        border: 1pox solid #fff;
        .btn span:hover {
            cursor: pointer;
@@ -692,13 +608,6 @@
        .el-table {
            color: #4b9bb7;
            font-size: 10px;
            // &::v-deep .cell {
            //     text-overflow: ellipsis;
            //     white-space: nowrap;
            //     overflow: hidden;
            // }
            .operation {
                display: flex;
src/views/systemSetting/platform/cockpitManage/updateUser/index.vue
@@ -6,182 +6,126 @@
          ref="user"
          label-width="140px"
          autoComplete="on"
          :model="depart"
          :rules="createDepartRules"
          :model="updateData"
          :rules="rules"
          label-position="right"
        >
          <!-- 部门名称 -->
          <span style="heght:18px;display:block;line-height: 14px;">
            执法人员结构
          </span>
          <el-form-item class="optionItem" label="部门名称:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入部门名称"></el-input>
          <el-form-item class="optionItem" label="部门名称:" prop="name">
            <el-input v-model="updateData.name" placeholder="请输入部门名称"></el-input>
          </el-form-item>
          <!-- 上级部门 -->
          <el-form-item class="optionItem" label="部门人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入部门人数"></el-input>
          <el-form-item class="optionItem" label="部门人数:" prop="peopleNumber">
            <el-input v-model="updateData.peopleNumber" placeholder="请输入部门人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="辖区管理:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入辖区管理"></el-input>
          <el-form-item class="optionItem" label="辖区管理:" prop="regionIds">
            <el-input v-model="updateData.regionIds" placeholder="请输入辖区管理"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="本科学历以上人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入本科学历以上人数"></el-input>
          <el-form-item class="optionItem" label="本科学历以上人数:" prop="upUndergraduatePeopleNumber">
            <el-input v-model="updateData.upUndergraduatePeopleNumber" placeholder="请输入本科学历以上人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="持证人员数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入持证人员数"></el-input>
          <el-form-item class="optionItem" label="持证人员数:" prop="holderNumber">
            <el-input v-model="updateData.holderNumber" placeholder="请输入持证人员数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="45岁以下人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入45岁以下人数"></el-input>
          <el-form-item class="optionItem" label="45岁以下人数:" prop="underFortyFivePeopleNumber">
            <el-input v-model="updateData.underFortyFivePeopleNumber" placeholder="请输入45岁以下人数"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="持法律职业资格证书人数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入持法律职业资格证书人数"></el-input>
          <el-form-item class="optionItem" label="持法律职业资格证书人数:" prop="legalProfessionalQualificationCertificatePeopleNumber">
            <el-input v-model="updateData.legalProfessionalQualificationCertificatePeopleNumber" placeholder="请输入持法律职业资格证书人数"></el-input>
          </el-form-item>
          <span>
            作风纪律
          </span>
          <el-form-item class="optionItem" label="通报数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入通报数量"></el-input>
          <el-form-item class="optionItem" label="通报数量:" prop="reportNumber">
            <el-input v-model="updateData.reportNumber" placeholder="请输入通报数量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="违纪行为数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入违纪行为数量"></el-input>
          <el-form-item class="optionItem" label="违纪行为数量:" prop="disciplinaryOffenceNumber">
            <el-input v-model="updateData.disciplinaryOffenceNumber" placeholder="请输入违纪行为数量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="违法犯罪行为数量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入违法犯罪行为数量"></el-input>
          <el-form-item class="optionItem" label="违法犯罪行为数量:" prop="criminalOffenseNumber">
            <el-input v-model="updateData.criminalOffenseNumber" placeholder="请输入违法犯罪行为数量"></el-input>
          </el-form-item>
          <span>案件办理</span>
          <el-form-item class="optionItem" label="每月案件办理量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入每月案件办理量"></el-input>
          <el-form-item class="optionItem" label="每月案件办理量:" prop="monthCaseNumber">
            <el-input v-model="updateData.monthCaseNumber" placeholder="请输入每月案件办理量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="未超时案件量:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入未超时案件量"></el-input>
          <el-form-item class="optionItem" label="未超时案件量:" prop="noTimeoutCaseNumber">
            <el-input v-model="updateData.noTimeoutCaseNumber" placeholder="请输入未超时案件量"></el-input>
          </el-form-item>
          <el-form-item class="optionItem" label="复议或诉讼数:" prop="departName">
            <el-input v-model="depart.departName" placeholder="请输入复议或诉讼数"></el-input>
          <el-form-item class="optionItem" label="复议或诉讼数:" prop="reviewOrLawsuitNumber">
            <el-input v-model="updateData.reviewOrLawsuitNumber" placeholder="请输入复议或诉讼数"></el-input>
          </el-form-item>
        </el-form>
      </div>
    </main>
    <footer>
      <div class="optionBtn">
        <el-button @click="closeDialog">取消</el-button>
        <el-button type="primary" class="btn submit" @click="submitUpdate">确定</el-button>
      </div>
    </footer>
  </div>
</template>
<script>
import { getTypeList } from "@/utils/helper";
import { deepClone } from "@/utils/helper";
import { updateTeamInfo } from "@/api/system/portal/teamConstruction";
import { SUCCESS_CODE } from "@/utils";
export default {
  data() {
    return {
    depart:{},
      imagedata: {
        code: "SJ202211010001",
        questionType: "违规",
        bigType: "违反国家有关标准编制城乡规划",
        smallType: "在居民住宅楼、未配套设立专用烟道的商住综合楼、商住综合楼内与居住层相邻的商业楼层内新建、改建、扩建产生油烟、异味、废气的餐饮服务项目",
        imagesId: "1",
        uploadTime: "2022-10-31 20:20:01",
        imageUrl: "https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg.fabao365.xuanfa.cn%2Fimage%2F202107%2F130f9d19f204302f.jpg&refer=http%3A%2F%2Fimg.fabao365.xuanfa.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1670034077&t=974b018f9e27023a01d2d8ad3c7c44f2"
      },
      updateData: null,
      rules: {
        name: [{ required: true, trigger: "blur", message: '部门名称必填'  }],
        peopleNumber: [{ required: true, trigger: "blur", message: '部门人数必填' }],
        regionIds: [{ required: true, trigger: "blur", message: '辖区管理必填' }],
        upUndergraduatePeopleNumber: [{ required: true, trigger: "blur", message: '本科学历以上人数必填' }],
        holderNumber: [{ required: true, trigger: "blur", message: '持证人员数必填' }],
        underFortyFivePeopleNumber: [{ required: true, trigger: "blur", message: '45岁以下人数必填' }],
        legalProfessionalQualificationCertificatePeopleNumber: [{ required: true, trigger: "blur", message: '持法律职业资格证书人数必填' }],
        reportNumber: [{ required: true, trigger: "blur", message: '通报数量必填' }],
        disciplinaryOffenceNumber: [{ required: true, trigger: "blur", message: '违纪行为数量:必填' }],
        criminalOffenseNumber: [{ required: true, trigger: "blur", message: '违法犯罪行为数量必填' }],
        monthCaseNumber: [{ required: true, trigger: "blur", message: '每月案件办理量必填' }],
        noTimeoutCaseNumber: [{ required: true, trigger: "blur", message: '未超时案件量必填' }],
        reviewOrLawsuitNumber: [{ required: true, trigger: "blur", message: '复议或诉讼数必填' }]
      }
    }
  },
  created() {
    // const that = this;
    // this.user = JSON.parse(JSON.stringify(that.userInfo));
    // console.log(this.user);
    // this.user.parentId = this.user.parentId === 0 ? '暂无上级部门' : this.user.parentId;
    // this.checkedList = this.user.userInfoDTOS;
    // this.checkedList.forEach((e) => {
    //   this.checkedUser.push(e.userId);
    // });
    // console.log(this.checkedUser)
    // this.$axios({
    //   method: "get",
    //   url: "sccg/depart/tree",
    // }).then((res) => {
    //   that.departList = res.data;
    // });
    // this.getUserList(this.user.id);
    // // 获取部门类型
    // this.getDepartType();
    this.updateData = deepClone(this.updateDepartmentData);
  },
  methods: {
    //   handleUser() {
    //     this.$refs["user"].validate((valid) => {
    //       if (valid) {
    //         const { user, checkedList } = this;
    //         const arr = [];
    //         checkedList.forEach((item) => {
    //           arr.push({ leader: item.leader, userId: item.id ? item.id : item.userId });
    //         });
    //         if (arr.length === 0) {
    //           this.$message({
    //             type: 'warning',
    //             message: '请选择部门人员',
    //           })
    //         } else {
    //           this.$axios
    //             .post("sccg/depart/update", {
    //               id: user.id,
    //               departName: user.departName,
    //               parentId: user.parentId === '暂无上级部门' ? 0 : user.parentId,
    //               departDes: user.departDes,
    //               departManagerList: arr,
    //             })
    //             .then((res) => {
    //               this.$message({
    //                 message: res.message,
    //                 type: res.code === 200 ? "success" : "warning",
    //               });
    //               this.$emit("changeDialog", { flag: false });
    //               this.getDepartList();
    //             });
    //         }
    //       } else {
    //         return false;
    //       }
    //     });
    //   },
    //   // 获取部门类型
    //   async getDepartType() {
    //     this.typeList = await getTypeList(1, "08");
    //   },
    submitUpdate() {
      this.$refs.user.validate((valid) => {
        if (valid) {
          updateTeamInfo(this.updateData)
            .then(({ code, message }) => {
              if (code === SUCCESS_CODE) {
                this.$emit('closeUpdateDialog');
                this.$message({ type: 'success', message });
              } else {
                this.$message({ type: 'error', message });
              }
            })
            .catch(err => {
              this.$message({ type: 'error', message: err });
            });
        } else {
          this.$message({ type: 'warning', message: '请检查必填项' });
        }
      });
    },
    //   // 设置领导
    //   setLeader(idx) {
    //     if (this.updateFlag) {
    //       this.checkedList.forEach((item, index) => {
    //         item.leader = index === idx;
    //       });
    //     }
    //   },
    //   // 获取所有用户信息
    //   getUserList(id) {
    //     // 获取所有用户信息、用户查询(暂时支持电话号码)
    //     this.$axios.get(`/sccg/depart/query_surplus_exist_user?id=`+id).then((res) => {
    //       if (res.code === 200) {
    //         this.userList = res.data;
    //       }
    //     });
    //   },
    //   addUser() {
    //     this.checkedList = [];
    //     this.userList.forEach((item) => {
    //       this.checkedUser.forEach((child) => {
    //         if (item.id == child) {
    //           this.checkedList.push({
    //             id: item.id,
    //             username: item.username,
    //             leader: false,
    //           });
    //         }
    //       });
    //     });
    //     this.checkedList[0].leader = true;
    //     console.log(this.checkedList);
    //     this.openUser = false;
    //   },
    // },
    // props: ["userInfo", "updateFlag", "getDepartList", "changeDialog"],
    closeDialog() {
      this.$emit('closeUpdateDialog');
    }
  },
  props: ['updateFlag']
  props: ['updateDepartmentData']
};
</script>
<style lang="scss" scoped>
@@ -190,18 +134,9 @@
  background-color: #09152f;
  main {
    // border: 1px solid #fff;
    text-align: left;
    padding: 0 55px;
    background-color: #09152f;
    padding-bottom: 50px;
    // .mainTitle {
    //     color: #4b9bb7;
    //     font-weight: 600;
    //     line-height: 100px;
    //     font-size: 14px;
    // }
    .mainContent {
      display: flex;
@@ -340,4 +275,13 @@
.el-input {
  width: 280px !important;
}
footer {
  border-top: 1px solid #fff;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 20px;
}
</style>
src/views/systemSetting/platform/portalSetting/index.vue
@@ -1,7 +1,7 @@
<template>
    <div class="log">
        <header>
            <div clas="headerTitle">
            <div class="headerTitle">
                系统设置 >> 门户管理 > logo管理
            </div>
        </header>