surprise
2024-03-05 1ce1b525e7470ebaaeb0d5cd1e59bd905c1a7114
src/views/datamanage/styleManage.vue
@@ -1,78 +1,29 @@
<template>
  <div class="authorityManagement_box">
    <My-bread :list="[
        `${$t('dataManage.dataManage')}`,
        `${$t('dataManage.styleManage')}`,
      ]"></My-bread>
      `${$t('dataManage.dataManage')}`,
      `${$t('dataManage.styleManage')}`,
    ]"></My-bread>
    <el-divider />
    <div
      class="searchComp subpage_Div"
      ref="container"
    >
      <el-form
        ref="ruleForm"
        :model="ruleForm"
        :inline="true"
      >
    <div class="searchComp subpage_Div" ref="container">
      <el-form ref="ruleForm" :model="ruleForm" :inline="true">
        <div class="flex_box">
          <div style="margin-right: auto">
            <el-form-item
              size="small"
              :label="$t('dataManage.vmobj.keyword')"
              prop="name"
            >
              <!--                                suffix-icon="el-icon-edit"
:placeholder="$t('common.pleaseInput')"-->
              <el-input
                v-model="ruleForm.name"
                :placeholder="$t('shuJuGuanLi.lable1')"
                style="width:200px"
              ><i
                  slot="suffix"
                  class="el-icon-search"
                  @click="submitForm('ruleForm')"
                  style="padding-right: 8px"
                ></i></el-input>
            <el-form-item size="small" :label="$t('dataManage.vmobj.keyword')" prop="name">
              <el-input v-model="ruleForm.name" :placeholder="$t('shuJuGuanLi.lable1')" style="width:200px"><i
                  slot="suffix" class="el-icon-search" @click="submitForm('ruleForm')"
                  style="padding-right: 8px"></i></el-input>
            </el-form-item>
          </div>
          <div>
            <el-form-item>
              <el-button
                v-if="btnStatus.insert"
                @click="setInsertShow()"
                icon="el-icon-edit"
                type="success"
                size="small"
              >{{ $t('common.append') }}
              <el-button @click="setInsertDialog" icon="el-icon-edit" type="success" size="small">{{ $t('common.append')
              }}
              </el-button>
              <el-button
                v-if="btnStatus.delete"
                @click="delStyleData"
                icon="el-icon-delete"
                type="danger"
                size="small"
              >{{ $t('common.delete') }}
              <el-button @click="setDelDialog" icon="el-icon-delete" type="danger" size="small">{{ $t('common.delete') }}
              </el-button>
              <!--              <el-button
                  @click="submitForm('ruleForm')"
                  icon="el-icon-search"
                  type="primary"
                  size="small"
              >{{ $t('common.iquery') }}
              </el-button>-->
              <el-button
                @click="resetForm('ruleForm')"
                icon="el-icon-refresh"
                type="info"
                size="small"
              >{{ $t('common.empty') }}
              </el-button>
              <el-button
                @click="handleDownload('ruleForm')"
                icon="el-icon-download"
                type="success"
                size="small"
              >{{ $t('common.download') }}
              <el-button @click="setRestFrom" icon="el-icon-refresh" type="info" size="small">{{ $t('common.empty') }}
              </el-button>
            </el-form-item>
          </div>
@@ -81,899 +32,72 @@
      </el-form>
    </div>
    <div class="dividing-line"></div>
    <div
      class="table_box"
      :style="styleVar"
    >
      <el-table
        :data="tableData"
        style="width: 100%"
        border
        height="calc(100% - 57px)"
        @selection-change="handleSelectionChange"
      >
        <el-table-column
          type="selection"
          width="55"
        />
        <el-table-column
          align="center"
          type="index"
          :label="$t('dataManage.styleObj.index')"
          width="70px"
        />
        <el-table-column
          align="center"
          prop="id"
          v-if="false"
        />
        <el-table-column
          align="center"
          prop="name"
          :label="$t('dataManage.styleObj.name')"
        />
        <el-table-column
          align="center"
          prop="type"
          :label="$t('dataManage.styleObj.type')"
        />
        <el-table-column
          align="center"
          prop="dirName"
          :label="$t('dataManage.styleObj.dirid')"
        />
        <el-table-column
          align="center"
          prop="depName"
          :label="$t('dataManage.styleObj.depid')"
        />
        <el-table-column
          align="center"
          prop="ver"
          :label="$t('dataManage.styleObj.ver')"
        />
        <el-table-column
          align="center"
          prop="status"
          :label="$t('dataManage.styleObj.status')"
          :formatter="formatStatus"
        />
        <el-table-column
          align="center"
          prop="precision"
          :label="$t('dataManage.styleObj.precision')"
        />
        <el-table-column
          align="center"
          prop="descr"
          :label="$t('dataManage.styleObj.descr')"
        />
        <!-- <el-table-column
          align="center"
          prop="bak"
          :label="$t('dataManage.styleObj.bak')"
        /> -->
        <el-table-column
          min-width="200"
          :label="$t('common.operate')"
        >
    <div class="table_box" :style="styleVar">
      <el-table :data="tableData" style="width: 100%" border height="calc(100% - 65px)"
        @selection-change="handleSelectionChange">
        <el-table-column type="selection" width="55" />
        <el-table-column align="center" type="index" :label="$t('dataManage.styleObj.index')" width="70px" />
        <el-table-column align="center" prop="id" v-if="false" />
        <el-table-column align="center" prop="name" label="名称" />
        <el-table-column align="center" prop="line" label="环线" />
        <el-table-column align="center" prop="type" label="类型" />
        <el-table-column align="center" prop="geom" label="位置" />
        <el-table-column min-width="100" :label="$t('common.operate')">
          <template slot-scope="scope">
            <el-button
              @click="showDetail(scope.$index, scope.row)"
              type="primary"
              plain
              size="small"
            >{{ $t('common.see') }}
            <!-- <el-button @click="showDetail(scope.$index, scope.row)" type="primary" plain size="small">{{ $t('common.see')
            }}
            </el-button> -->
            <el-button @click="handleEdit(scope.$index, scope.row)" type="warning" plain size="small">{{
              $t('common.update') }}
            </el-button>
            <el-button
              @click="handleEdit(scope.$index, scope.row)"
              type="warning"
              plain
              size="small"
            >{{ $t('common.update') }}
            </el-button>
            <!-- <el-button
              @click="handleDownload(scope.$index, scope.row)"
              type="success"
              plain
              size="small"
            >{{ $t('common.download') }} -->
            </el-button>
          </template>
        </el-table-column>
      </el-table>
      <div
        class="pagination_box"
        style="margin-top: 15px"
      >
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="listData.pageIndex"
          :page-sizes="[10, 50,100,200]"
          :page-size="listData.pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="count"
        >
      <div class="pagination_box" style="margin-top: 15px">
        <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="listData.page"
          :page-sizes="[10, 50, 100, 200]" :page-size="listData.limit" layout="total, sizes, prev, pager, next, jumper"
          :total="count">
        </el-pagination>
      </div>
    </div>
    <div
      class="infoBox_box"
      v-show="showinfoBox"
    >
      <div class="infoBox subpage_Div box_div">
        <div
          slot="header"
          class="clearfix"
        >
          <span>{{ $t('dataManage.styleObj.deInformation') }}</span>
          <div
            style="float: right; cursor: pointer"
            @click="closeDetial"
          >
            <i class="el-icon-close"></i>
    <el-dialog width="30%" :title="dialogTitle" :before-close="outerClose" :visible.sync="outerVisible">
      <el-form :model="editData">
        <el-form-item label="名称" :label-width="formLabelWidth">
          <el-input v-model="editData.name" style="width: 100%;" placeholder=""></el-input>
        </el-form-item>
        <el-form-item label="环线" :label-width="formLabelWidth">
          <el-input v-model="editData.line" style="width: 100%;" placeholder=""></el-input>
        </el-form-item>
        <el-form-item label="类型" :label-width="formLabelWidth">
          <el-select v-model="editData.type" style="width: 100%;" placeholder="">
            <el-option v-for="item in siteOption" :key="item.value" :label="item.name" :value="item.val">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="位置" :label-width="formLabelWidth">
          <div style="width: 100%;  ">
            <el-input v-model="editData.geom" style="width: 92%;" placeholder="" disabled=""></el-input>
            <el-link style="float: right;" @click="setInnerDialog"><i class="el-icon-plus"></i></el-link>
          </div>
        </div>
        <el-divider></el-divider>
        <div class="contentBox">
          <p>
            <label> {{ $t('dataManage.styleObj.name') }}:</label>
            <label class="boxlabel">{{ itemdetail.name }}</label>
          </p>
          <el-divider></el-divider>
          <p>
          <p>
            <label> {{ $t('dataManage.styleObj.type') }}:</label>
            <label class="boxlabel">{{ itemdetail.type }}</label>
          </p>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.dirid') }}:</label>
            <label class="boxlabel">{{ itemdetail.dirName }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.depid') }}:</label>
            <label class="boxlabel">{{ itemdetail.depName }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.ver') }}:</label>
            <label class="boxlabel">{{ itemdetail.ver }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.status') }}:</label>
            <label class="boxlabel">{{ itemdetail.status }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.descr') }}:</label>
            <label class="boxlabel">{{ itemdetail.descr }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.fileguid') }}:</label>
            <label class="boxlabel">{{ itemdetail.fname }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.viewguid') }}:</label>
            <label class="boxlabel">
              <div style="width:440px;height:200px;">
                <img
                  style="width:100%; height:100%"
                  :src="itemdetail.imageFile"
                  alt=""
                />
              </div>
            </label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.createUser') }}:</label>
            <label class="boxlabel">{{ itemdetail.createName }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.createTime') }}:</label>
            <label class="boxlabel">{{ itemdetail.createTime }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.updateUser') }}:</label>
            <label class="boxlabel">{{ itemdetail.updateName }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.updateTime') }}:</label>
            <label class="boxlabel">{{ itemdetail.updateTime }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.bak') }}:</label>
            <label class="boxlabel">{{ itemdetail.bak }}</label>
          </p>
          <el-divider></el-divider>
        </el-form-item>
      </el-form>
      <el-dialog width="50%" title="点位" :visible.sync="innerVisible" :before-close="innerClose" append-to-body>
        <div style="height: 540px">
          <project-ol v-if="innerVisible"></project-ol>
        </div>
      </div>
    </div>
    <el-dialog
      :title="$t('dataManage.styleObj.modifyStyleData')"
      :before-close="removeUpdate"
      :visible.sync="dialogFormVisible"
    >
      <div style="height: 500px; overflow: auto">
        <el-form
          :model="upform"
          label-position="top"
        >
          <el-form-item
            :label="$t('dataManage.styleObj.name')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.name"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.type')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.type"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.dirid')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="upform.dirid"
              placeholder="请选择"
              style="width:85%"
              @focus="setOptionWidth"
            >
              <el-option
                :value="upform.dirid"
                :label="upform.dirName"
                :style="{ width: selectOptionWidth, height: selectheight }"
              >
                <el-tree
                  ref="tree"
                  :data="editcatalogOption"
                  :default-expand-all="defaultexpand"
                  node-key="id"
                  :props="defaultProps"
                  @node-click="handleNodeClickto"
                />
              </el-option>
            </el-select>
            <!-- <el-cascader
              v-model="upform.dirid"
              :options="editcatalogOption"
              @change="catalogChange"
              :props="cascader"
              style="width:75%"
            ></el-cascader> -->
            <!-- <el-input
              v-model="upform.dirValue"
              disabled
              autocomplete="off"
            ></el-input
            ><el-link
              :underline="false"
              @click="showDirTree(1)"
              style="margin-left: 10px"
              ><i class="el-icon-plus"></i
            ></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.depid')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="upform.depid"
              placeholder="请选择"
              style="width:85%"
              @focus="setOptionWidth"
            >
              <el-option
                :value="upform.depid"
                :label="upform.depName"
                :style="{ width: selectOptionWidth, height: selectheight }"
              >
                <el-tree
                  ref="tree"
                  :data="editCompanyOption"
                  :default-expand-all="defaultexpand"
                  node-key="id"
                  :props="defaultProps"
                  @node-click="handleNodeClick"
                />
              </el-option>
            </el-select>
            <!-- <el-cascader
              v-model="upform.depid"
              :options="editCompanyOption"
              @change="editcompanyChange"
              :props="cascader"
              style="width:75%"
            ></el-cascader> -->
            <!-- <el-input
              v-model="upform.depValue"
              disabled
              autocomplete="off"
            ></el-input>
            <el-link
              :underline="false"
              @click="showDepTree(1)"
              style="margin-left: 10px"
              ><i class="el-icon-plus"></i
            ></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.ver')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.ver"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.status')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="status"
              style="width:85%"
              :placeholder="$t('common.choose')"
            >
              <el-option
                value='0'
                :label="$t('dataManage.styleObj.deactivate')"
              ></el-option>
              <el-option
                value='1'
                :label="$t('dataManage.styleObj.enable')"
              ></el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.precision')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.precision"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.descr')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.descr"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.fileguid')"
            :label-width="formLabelWidth"
          >
            <!-- -->
            <div class="BoxFlex">
              <div class="BoxFlexinput">
                <el-input
                  v-model="upform.fileGuid"
                  disabled
                  autocomplete="off"
                  style="width:100%"
                ></el-input>
              </div>
              <div class="BoxFlexbutton">
                <input
                  name="file1"
                  type="file"
                  id="editFile"
                  multiple="multiple"
                  style="display: none"
                  @change="editFile(0)"
                />
                <el-button
                  style="margin-left: 6px;"
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="geteditFile(0)"
                >选择
                </el-button>
                <el-button
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="seteditFile(0)"
                >上传
                </el-button>
              </div>
            </div>
            <!--  -->
            <!-- <el-link
              :underline="false"
              @click="geteditFile(0)"
              style="margin-left: 10px"
            ><i class="el-icon-plus"></i></el-link>
            <el-link
              v-if="btnStatus.upload"
              :title="$t('common.upload')"
              :underline="false"
              @click="seteditFile(0)"
              style="margin-left: 10px"
            ><i class="el-icon-upload2"></i></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.viewguid')"
            :label-width="formLabelWidth"
          >
            <div class="BoxFlex">
              <div class="BoxFlexinput">
                <el-input
                  v-model="upform.viewGuid"
                  disabled
                  autocomplete="off"
                  style="width:100%"
                ></el-input>
              </div>
              <div>
                <input
                  name="file1"
                  :accept="'.jpg,.png'"
                  type="file"
                  id="editimageFile"
                  multiple="multiple"
                  style="display: none"
                  @change="editFile(1)"
                />
                <el-button
                  style="margin-left: 6px;"
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="geteditFile(1)"
                >选择
                </el-button>
                <el-button
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="seteditFile(1)"
                >上传
                </el-button>
              </div>
            </div>
            <!--
            -->
            <!-- <el-link
              :underline="false"
              @click="geteditFile(1)"
              style="margin-left: 10px"
            ><i class="el-icon-plus"></i></el-link>
            <el-link
              :title="$t('common.upload')"
              :underline="false"
              @click="seteditFile(1)"
              style="margin-left: 10px"
            ><i class="el-icon-upload2"></i></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.bak')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="upform.bak"
              autocomplete="off"
              style="width:85%"
            ></el-input>
          </el-form-item>
        </el-form>
      </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button
          type="info"
          size="small"
          @click="removeUpdate"
        >{{ $t('common.close') }}
        </el-button>
        <el-button
          type="primary"
          @click="updateForm"
          size="small"
        >{{ $t('common.confirm') }}
        </el-button>
      </el-dialog>
      <div slot="footer" class="dialog-footer">
        <el-button @click="outerClose">取 消</el-button>
        <el-button @click="submitOuter" type="primary">确 认</el-button>
      </div>
    </el-dialog>
    <el-dialog
      :title="$t('dataManage.styleObj.addStyleData')"
      :visible.sync="InsertFormdialog"
      :before-close="handleClose"
    >
      <div style="height: 500px; overflow: auto">
        <el-form
          :model="insertform"
          label-position="top"
        >
          <el-form-item
            :label="$t('dataManage.styleObj.name')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.name"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.name')"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.type')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.type"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.type')"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.dirid')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="insertform.dirid"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.dirid')"
              style="width:85%"
              @focus="setOptionWidth"
            >
              <el-option
                :value="insertform.dirid"
                :label="insertform.dirName"
                :style="{ width: selectOptionWidth, height: selectheight }"
              >
                <el-tree
                  ref="tree"
                  :data="catalogOption"
                  :default-expand-all="defaultexpand"
                  node-key="id"
                  :props="defaultProps"
                  @node-click="handcatalogChange"
                />
              </el-option>
            </el-select>
            <!-- <el-cascader
              v-model="insertform.dirid"
              :options="catalogOption"
              @change="catalogChange"
              :props="cascader"
              style="width:730px"
            ></el-cascader> -->
            <!-- <el-input
              v-model="insertform.dirValue"
              disabled
              autocomplete="off"
            ></el-input
            ><el-link
              :underline="false"
              @click="showDirTree(0)"
              style="margin-left: 10px"
              ><i class="el-icon-plus"></i
            ></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.depid')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="insertform.depid"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.depid')"
              style="width:85%"
              @focus="setOptionWidth"
            >
              <el-option
                :value="insertform.depid"
                :label="insertform.depName"
                :style="{ width: selectOptionWidth, height: selectheight }"
              >
                <el-tree
                  ref="tree"
                  :data="companyOption"
                  :default-expand-all="defaultexpand"
                  node-key="id"
                  :props="cascader"
                  @node-click="handcompanyChange"
                />
              </el-option>
            </el-select>
            <!-- <el-cascader
              v-model="insertform.depid"
              :options="companyOption"
              @change="companyChange"
              :props="cascader"
              style="width:730px"
            ></el-cascader> -->
            <!-- <el-input
              v-model="insertform.depValue"
              disabled
              autocomplete="off"
            ></el-input>
            <el-link
              :underline="false"
              @click="showDepTree(0)"
              style="margin-left: 10px"
              ><i class="el-icon-plus"></i
            ></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.ver')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.ver"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.ver')"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.status')"
            :label-width="formLabelWidth"
          >
            <el-select
              v-model="insertform.status"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.status')"
            >
              <el-option
                value="0"
                :label="$t('dataManage.styleObj.deactivate')"
              ></el-option>
              <el-option
                value="1"
                :label="$t('dataManage.styleObj.enable')"
              ></el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.precision')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.precision"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.precision')"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.descr')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.descr"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.descr')"
            ></el-input>
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.fileguid')"
            :label-width="formLabelWidth"
          >
            <div class="BoxFlex">
              <div class="BoxFlexinput">
                <el-input
                  v-model="insertFileGuid"
                  disabled
                  autocomplete="off"
                  style="width:100%"
                />
              </div>
              <div>
                <input
                  name="file1"
                  type="file"
                  id="insertFile"
                  multiple="multiple"
                  style="display: none"
                  @change="insertFileData(0)"
                />
                <el-button
                  style="margin-left: 6px;"
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="getInsertFile(0)"
                >选择
                </el-button>
                <el-button
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="setinsertFile(0)"
                >上传
                </el-button>
              </div>
            </div>
            <!--
           -->
            <!-- <el-link
              :underline="false"
              @click="getInsertFile(0)"
              style="margin-left: 10px"
            ><i class="el-icon-plus"></i></el-link>
            <el-link
              :title="$t('common.upload')"
              :underline="false"
              @click="setinsertFile(0)"
              style="margin-left: 10px"
            ><i class="el-icon-upload2"></i></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.viewguid')"
            :label-width="formLabelWidth"
          >
            <div class="BoxFlex">
              <div class="BoxFlexinput">
                <el-input
                  v-model="insertViewGuid"
                  disabled
                  autocomplete="off"
                  style="width:100%"
                />
              </div>
              <div><input
                  name="file1"
                  :accept="'.jpg,.png'"
                  type="file"
                  id="insertimageFile"
                  multiple="multiple"
                  style="display: none"
                  @change="insertFileData(1)"
                />
                <el-button
                  style="margin-left: 6px;"
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="getInsertFile(1)"
                >选择
                </el-button>
                <el-button
                  type="primary"
                  size="small"
                  :underline="false"
                  @click="setinsertFile(1)"
                >上传
                </el-button>
              </div>
            </div>
            <!-- <el-link
              :underline="false"
              @click="getInsertFile(1)"
              style="margin-left: 10px"
            ><i class="el-icon-plus"></i></el-link>
            <el-link
              :title="$t('common.upload')"
              :underline="false"
              @click="setinsertFile(1)"
              style="margin-left: 10px"
            ><i class="el-icon-upload2"></i></el-link> -->
          </el-form-item>
          <el-form-item
            :label="$t('dataManage.styleObj.bak')"
            :label-width="formLabelWidth"
          >
            <el-input
              v-model="insertform.bak"
              autocomplete="off"
              style="width:85%"
              :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.bak')"
            ></el-input>
          </el-form-item>
        </el-form>
      </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button
          type="info"
          size="small"
          @click="insertFromDataClose"
        >{{ $t('common.close') }}
        </el-button>
        <el-button
          type="primary"
          size="small"
          @click="insertFromData"
        >{{ $t('common.confirm') }}
        </el-button>
      </div>
    </el-dialog>
    <div
      class="leftTree"
      v-if="showDirCata"
    >
      <div class="treeBox">
        <style-dir-tree></style-dir-tree>
      </div>
      <div class="btnBox">
        <el-button
          type="primary"
          size="small"
          @click="selectDirCataName"
        >{{
            $t('common.confirm')
          }}
        </el-button>
        <el-button
          type="info"
          size="small"
          @click="showDirCata = false"
        >{{
            $t('common.close')
          }}
        </el-button>
      </div>
    </div>
    <div
      class="leftTree subpage_Div"
      v-if="showDepCata"
    >
      <div class="treeBox">
        <style-dep-tree></style-dep-tree>
      </div>
      <div class="btnBox">
        <el-button
          type="primary"
          size="small"
          @click="selectDepCataName"
        >{{
            $t('common.confirm')
          }}
        </el-button>
        <el-button
          type="info"
          size="small"
          @click="showDepCata = false"
        >{{
            $t('common.close')
          }}
        </el-button>
      </div>
    </div>
    <iframe
      id="downFrame"
      src=""
      style="display: none; border: 0; padding: 0; height: 0; width: 0"
    ></iframe>
  </div>
</template>
@@ -982,106 +106,61 @@
import moment from "moment";
import { getToken } from "../../utils/auth.js";
import MyBread from "../../components/MyBread.vue";
import styleDirTree from "./styleDirTree.vue";
import styleDepTree from "./styleDepTree.vue";
import {
  select_Style_ByPageAndCount,
  insertStyle,
  deleteStyles,
  updateStyle,
  upload_style,
  queryDepTree,
  selectdirTab,
} from "../../api/api";
import { site_data } from "./js/layerManage";
import ProjectOl from '../../components/ProjectOl.vue'
import { zhangzitou_selectAll, zhangzitou_insertZhangzitouEntity, zhangzitou_deleteZhangzitouEntitys,zhangzitou_updateZhangzitouEntity } from "../../api/api";
export default {
  name: "styleManage",
  components: { MyBread, styleDirTree, styleDepTree },
  components: { MyBread, ProjectOl },
  data() {
    return {
      insertFileGuid: "",
      insertViewGuid: "",
      insertFileName: "",
      insertViewName: "",
      insertform: {},
      dialogFormVisible: false,
      InsertFormdialog: false,
      showCata: false,
      upform: { status: '0' },
      formLabelWidth: "130px",
      showinfoBox: false,
      itemdetail: {},
      ruleForm: {},
      backupData: [],
      searchName: "",
      multipleSelection: [],
      upflag: false,
      /** */
      showDirCata: false,
      showDepCata: false,
      tableData: [],
      dirFlag: null,
      depFlag: null,
      guidFile: null,
      viewFile: null,
      count: 0,
      listData: {
        name: null,
        pageIndex: 1,
        pageSize: 10,
        page: 1,
        limit: 10,
      },
      btnStatus: {
        select: false,
        delete: false,
        upload: false,
        download: false,
        insert: false,
        update: false,
      },
      companyOption: [],
      catalogOption: [],
      editCompanyOption: [],
      editcatalogOption: [],
      cascader: {
        label: "name",
        value: "id",
        children: "children",
        checkStrictly: true,
        emitPath: false,
      },
      defaultProps: {
        children: "children",
        label: "name",
      },
      selectOptionWidth: "",
      selectheight: "auto",
      defaultexpand: false,
      tableHeight: 0,
      timer: 0,
      styleVar: {
        height: "calc(100% - 109px)",
      },
      status: 0,
      outerVisible: false,
      innerVisible: false,
      dialogTitle: null,
      editData: {
        name: '',
        geom: "",
        type: '',
        line: ''
      },
      formLabelWidth: '90px',
      siteOption: [],
      tableData: [],
    };
  },
  created() {
    this.getRoleTabelData();
    this.showPermsBtn();
    this.getQueryDepTree();
    this.getSelectdirTab();
  },
  beforeDestroy() {
    this.timer && clearTimeout(this.timer);
    window.removeEventListener("resize", this.onResize);
  },
  mounted() {
    this.siteOption = site_data;
    this.editData.type = this.siteOption[0].val;
    window.addEventListener("resize", this.onResize);
    this.calHeight();
    this.getDataAll();
  },
  methods: {
    onResize() {
@@ -1097,698 +176,106 @@
        this.styleVar["height"] = `calc(100% - ${rect.height + 28}px)`;
      });
    },
    showPermsBtn() {
      let currentPerms = this.$store.state.currentPerms;
      let permsEntity = this.$store.state.permsEntity;
      permsEntity
        .filter((item) => item.perms == currentPerms)
        .map((item) => (this.btnStatus[item.tag.substr(1)] = true));
    },
    filesReset() {
      // document.getElementById("insertFile").reset();
      // document.getElementById("insertimageFile").reset();
      document.getElementById("insertFile").value = "";
      document.getElementById("insertimageFile").value = "";
      this.guidFile = "";
      this.fileGuid = "";
    },
    getInsertFile(res) {
      if (res == 0) {
        $("#insertFile").click();
      } else if (res == 1) {
        $("#insertimageFile").click();
      }
    },
    insertFileData: function (res) {
      if (res == 0) {
        let val = document.getElementById("insertFile").files;
        this.insertFileGuid = val[0].name;
        this.insertFileName = val[0].name;
      } else if (res == 1) {
        let val = document.getElementById("insertimageFile").files;
        this.insertViewGuid = val[0].name;
        this.insertViewName = val[0].name;
      }
    },
    async setinsertFile(res) {
      if (res == 0) {
        var fs = document.getElementById("insertFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.guidFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      } else if (res == 1) {
        var fs = document.getElementById("insertimageFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.viewFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      }
    },
    geteditFile(res) {
      if (res == 0) {
        $("#editFile").click();
      } else if (res == 1) {
        $("#editimageFile").click();
      }
    },
    editFile(res) {
      if (res == 0) {
        var val = document.getElementById("editFile").files;
        if (!val || !val.length) return;
        this.upform.fileGuid = val[0].name;
      } else if (res == 1) {
        var val = document.getElementById("editimageFile").files;
        if (!val || !val.length) return;
        this.upform.viewGuid = val[0].name;
      }
    },
    async seteditFile(res) {
      if (res == 0) {
        var fs = document.getElementById("editFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.guidFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      } else if (res == 1) {
        var fs = document.getElementById("editimageFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.viewFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      }
    },
    handleSelectionChange(val) {
      this.multipleSelection = val;
    },
    handleSizeChange(val) {
      this.listData.pageSize = val;
      this.getRoleTabelData();
      this.listData.limit = val;
      this.getDataAll();
    },
    handleCurrentChange(val) {
      this.listData.pageIndex = val;
      this.getRoleTabelData();
      this.listData.page = val;
      this.getDataAll();
    },
    async delStyleData() {
      var std = [];
      for (var i in this.multipleSelection) {
        std.push(this.multipleSelection[i].id);
      }
      this.$confirm("此操作将永久删除该样式, 是否继续?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(async () => {
          const data = await deleteStyles({ ids: std.toString() });
          if (data.code == 200) {
            this.$message({
              message: "删除成功!",
              type: "success",
            });
            this.listData.pageIndex = 1;
            this.getRoleTabelData();
          } else {
            this.$message({
              message: "删除失败!",
              type: "warning",
            });
          }
        })
        .catch(() => {
          this.$message({
            type: "info",
            message: "已取消删除",
          });
        });
    },
    showDirTree(res) {
      this.dirFlag = res;
      this.showDirCata = true;
    },
    showDepTree(res) {
      this.depFlag = res;
      this.showDepCata = true;
    },
    selectDepCataName() {
      this.showDepCata = false;
      switch (this.depFlag) {
        case 0:
          this.insertform.depValue = this.$store.state.styleDepCateNodes.name;
          this.insertform.depid = this.$store.state.styleDepCateNodes.id;
          break;
        case 1:
          this.upform.depValue = this.$store.state.styleDepCateNodes.name;
          this.upform.depid = this.$store.state.styleDepCateNodes.id;
          break;
      }
    },
    selectDirCataName() {
      this.showDirCata = false;
      switch (this.dirFlag) {
        case 0:
          // var data = this.$store.state.styleDirCateNodes;
          this.insertform.dirValue = this.$store.state.styleDirCateNodes.name;
          this.insertform.dirid = this.$store.state.styleDirCateNodes.id;
          break;
        case 1:
          this.upform.dirValue = this.$store.state.styleDirCateNodes.name;
          this.upform.dirid = this.$store.state.styleDirCateNodes.id;
          break;
      }
    },
    insertFromDataClose() {
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.InsertFormdialog = false;
          this.insertform = {};
          this.insertFileGuid = "";
          this.insertViewGuid = "";
          this.filesReset();
        })
        .catch((_) => { });
    },
    handleClose() {
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.InsertFormdialog = false;
          this.insertform = {
            fileGuid: null,
            viewGuid: null,
          };
          this.filesReset();
        })
        .catch((_) => { });
    },
    async insertFromData() {
      if (this.insertform.dirid == null || this.insertform.depid == null) {
        this.$message({
          message: "请选择样式所属的目录或单位",
          type: "warning",
        });
        return;
      }
      if (this.guidFile != null) {
        this.insertform.fileGuid = this.guidFile;
        this.insertform.fname = this.insertFileName;
      }
      if (this.viewFile != null) {
        this.insertform.viewGuid = this.viewFile;
        this.insertform.vname = this.insertViewName;
      }
      const data = await insertStyle(this.insertform);
      if (data.code == 200) {
        this.InsertFormdialog = false;
        this.insertform = {
          fileGuid: null,
          viewGuid: null,
        };
        this.insertFileGuid = "";
        this.insertViewGuid = "";
        this.filesReset();
        this.$message({
          message: "添加成功!",
          type: "success",
        });
        this.getRoleTabelData();
      } else {
        this.$message({
          message: "添加失败!",
          type: "warning",
        });
      }
    },
    async getRoleTabelData() {
      if (this.listData.tab == "") {
        delete this.listData.tab;
      }
      this.listData.name = this.ruleForm.name;
      const data = await select_Style_ByPageAndCount(this.listData);
      if (data.code != 200) {
        this.$message.error("列表调用失败");
      }
      this.tableData = data.result;
      this.count = data.count;
    },
    formatTime(row, column) {
      let date = row[column.property];
      return this.formomentTime(date);
    },
    formomentTime(date) {
      if (date === undefined || date === null) {
        return;
      }
      return moment(parseInt(date)).format("YYYY-MM-DD HH:mm:ss");
    },
    formatStatus(row, column) {
      let date = row[column.property];
      return this.forMontStatus(date);
    },
    forMontStatus(date) {
      if (date === undefined || date === null) {
        return;
      }
      switch (date) {
        case 1:
          return "启用";
          break;
        case 0:
          return "停用";
          break;
      }
    },
    /** */
    getflyFile() {
      $("#flyFile").click();
    },
    getImageFile() {
      $("#imageFile").click();
    },
    uploadflyFile() {
      var val = document.getElementById("flyFile").files;
      if (!val || !val.length) return;
      if (!val || !val.length) return;
      var formData = new FormData();
      formData.append("file0", val[0]);
      var res = $.ajax(+"/style/upload", {
        type: "post",
        data: formData,
        async: false,
        cache: false,
        processData: false,
        contentType: false,
        success: function (rs) {
          return rs;
        },
        error: function (e) {
          console.error(e);
        },
      });
      if (this.upflag == true) {
        this.upform.path = res.responseJSON;
      } else {
        this.insertform.path = res.responseJSON;
      }
    },
    //图片上传
    uploadFile() {
      var val = document.getElementById("imageFile").files;
      if (!val || !val.length) return;
      var formData = new FormData();
      formData.append("file0", val[0]);
      var res = $.ajax(BASE_URL + "/style/upload", {
        type: "post",
        data: formData,
        async: false,
        cache: false,
        processData: false,
        contentType: false,
        success: function (rs) {
          return rs;
        },
        error: function (e) {
          console.error(e);
        },
      });
      if (this.upflag == true) {
        this.upform.img = res.responseJSON;
      } else {
        this.insertform.img = res.responseJSON;
      }
    },
    // 选择目录
    selectCataName() {
      if (this.upflag == true) {
        this.upform.queryLevel = this.$store.state.catalogueName;
        this.upform.path_id = this.$store.state.cataNode.id;
      } else {
        this.insertform.queryLevel = this.$store.state.catalogueName;
        this.insertform.path_id = this.$store.state.cataNode.id;
      }
      this.$store.commit("changeCata", ""); //清空state的面包屑
      this.$store.commit("changeNode", ""); //清空state的节点对象
      this.showCata = false;
    },
    startFromData() {
      this.count = 0;
      this.pageSize = 1;
      this.pageNum = 10;
      this.getStyleData(this.pageNum, this.pageSize, this.searchName);
      this.getStyleDataCount(this.searchName);
    },
    // 请求数据
    getStyleData(size, index, name) {
      StyleQuery(size, index, name).then((res) => {
        this.tableData = res.data;
      });
    },
    // 请求数据
    getStyleDataCount(name) {
      StyleCounnt(name).then((res) => {
        this.count = res.data;
      });
    },
    addstyle() {
      this.$router.push("/addstyle");
    },
    statusFormat(res) {
      switch (res) {
        case "启用":
          return 1;
          break;
        case "停用":
          return 0;
          break;
        case "Start Using":
          return 1;
          break;
        case "Stop Using":
          return 0;
          break;
      }
    },
    async updateForm() {
      if (this.upform.dirid == null || this.upform.depid == null) {
        this.$message({
          message: "请选择样式所属的目录或单位",
          type: "warning",
        });
        return;
      }
      if (Number.isInteger(this.upform.status) == false) {
        this.upform.status = this.statusFormat(this.upform.status);
      }
      if (this.guidFile != null) {
        this.upform.fname = this.upform.fileGuid;
        this.upform.fileGuid = this.guidFile;
      }
      if (this.viewFile != null) {
        this.upform.vname = this.upform.viewGuid;
        this.upform.viewGuid = this.viewFile;
      }
      if (this.status == '启用') {
        this.status = '1'
      } else if (this.status == '停用') {
        this.status = '0'
      }
      this.upform.status = this.status
      const data = await updateStyle(this.upform);
      if (data.code == 200) {
        this.dialogFormVisible = false;
        this.upform = {};
        this.$message({
          message: "修改成功!",
          type: "success",
        });
        this.getRoleTabelData();
      } else {
        this.$message({
          message: "修改失败!",
          type: "warning",
        });
      }
    },
    removeUpdate() {
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.upflag = false;
          this.dialogFormVisible = false;
          this.upform = {};
        })
        .catch((_) => { });
      // this.filesReset();
    },
    submitForm(formName) {
      this.getRoleTabelData();
      // this.$refs[formName].validate((valid) => {
      //   if (valid) {
      //     this.searchName = this.ruleForm.name.trim();
      //     this.startFromData();
      //   } else {
      //     console.log('error submit!!');
      //     return false;
      //   }
      // });
    },
    resetForm(formName) {
      this.ruleForm = {};
      this.getRoleTabelData();
    },
    showDetail(index, row) {
      var token = getToken();
      this.showinfoBox = true;
      this.itemdetail = row;
      this.itemdetail.createTime = this.formomentTime(
        this.itemdetail.createTime
      );
      this.itemdetail.updateTime = this.formomentTime(
        this.itemdetail.updateTime
      );
      this.itemdetail.imageFile = BASE_URL + "/comprehensive/downloadForView?guid=" + row.viewGuid + "&token=" + token;
    },
    closeDetial() {
      this.showinfoBox = false;
      this.itemdetail = {};
    },
    handleDownload() {
      if (this.multipleSelection.length == 0) {
        return this.$message({
          message: '请选择需要下载的文件',
          type: 'warning'
        });
      }
      // var data = {
      //   guids: ["e5b6ae0889b88111f13a4b6e048348db", "fa4f299e901a0c46e634f8fcc8185c0c"]
      // };
      // ajax(getUrl("/res/downloadReqForGuids"), "POST", JSON.stringify(data), null, null, function (rs) {
      //   console.log(rs);
      //   alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.result);
      // });
      var std = [];
      for (var i in this.multipleSelection) {
        std.push(this.multipleSelection[i].fileGuid)
      }
      var token = getToken()
      $.ajax(BASE_URL + "/style/downloadReqForGuids?token=" + token, {
        type: "post",
        data: JSON.stringify({
          guids: std
        }),
        async: true,
        cache: false,
        processData: false,
        contentType: false,
        success: res => {
          if (res.code != 200) {
            return
          }
          var token = getToken()
          var url = BASE_URL + "/style/downloadFile?token=" + token + "&guid=" + res.result;
          $("#downFrame").attr("src", url).click();
        },
      })
    },
    // handleDownload(index, row) {
    //   var token = getToken()
    //   var url = BASE_URL + "/res/download?token=" + token + "&guid=" + row.fileGuid;
    //   $("#downFrame").attr("src", url).click();
    // },
    handleEdit(index, row) {
      this.upflag = true;
      this.dialogFormVisible = true;
      this.upform = row;
      this.upform.depValue = row.depName;
      this.upform.dirValue = row.dirName;
      this.upform.fileGuid = row.fname;
      this.upform.viewGuid = row.vname;
      // this.upform.status = this.forMontStatus(row.status);
      // this.upform.status = row.status;
      this.status = this.forMontStatus(row.status);
      this.dialogTitle = '修改'
      this.editData = JSON.parse(JSON.stringify(row));
      this.outerVisible = true;
    },
    handleDelete(index, row) {
      this.$confirm("确定是否删除?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          DeletestStyle([row.id]);
          this.$message({
            type: "success",
            message: "删除成功!",
          });
          this.startFromData();
        })
        .catch(() => {
        });
    },
    // 获取多选
    // ShowWindowFly(res) {
    //   window.open(
    //     ifreamUrl + "/LFWeb/poper.html?name=" + res,
    //     "",
    //     "height=800, width=1500, top=150, left=350, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
    //   );
    // },
    catalogChange(res) {
      this.insertform.dirid = res;
      this.upform.dirid = res;
    },
    handcatalogChange(data, node, nodeData) {
      this.$set(this.insertform, "dirid", data.id);
      this.$set(this.insertform, "dirName", data.name);
      // this.insertform.dirid = data.id;
      // this.insertform.dirName = data.name
    },
    handleNodeClickto(data, node, nodeData) {
      this.insertform.depid = data.id;
      this.upform.dirid = data.id;
      this.upform.dirName = data.name;
    },
    editcompanyChange(res) {
      this.upform.depid = res;
    },
    companyChange(res) {
      this.insertform.depid = res;
    },
    handcompanyChange(data, node, nodeData) {
      this.$set(this.insertform, "depid", data.id);
      // this.insertform.depid = data.id;
      this.$set(this.insertform, "depName", data.name);
      // this.insertform.depName = data.name;
    },
    //新增数据
    setInsertShow() {
      this.InsertFormdialog = true;
      this.$set(this, "insertform", {});
    },
    //目录列表获取
    async getSelectdirTab() {
      const res = await selectdirTab();
      if (res.code != 200) {
        this.$message.error("目录列表获取失败");
        return;
    setInnerDialog() {
      if (this.editData.geom) {
        this.$store.state.projeOl = this.editData.geom;
      }
      this.insertform.dirid = 1;
      this.upform.dirid = 1;
      this.catalogOption = this.treeData(res.result);
      this.editcatalogOption = this.treeData(res.result);
      this.innerVisible = true;
    },
    //单位列表获取
    async getQueryDepTree() {
      const res = await queryDepTree();
      if (res.code != 200) {
        this.$message.error("单位列表获取失败");
        return;
    submitForm() {
      this.listData.name = this.ruleForm.name;
      this.getDataAll();
    },
    setRestFrom() {
      this.listData = {
        name: null,
        page: 1,
        limit: 10,
      }
      this.insertform.depid = 1;
      this.upform.depid = 1;
      this.companyOption = this.treeData(res.result);
      this.editCompanyOption = this.treeData(res.result);
      this.ruleForm = {}
      this.getDataAll();
    },
    handleNodeClick(data, node, nodeData) {
      this.upform.depid = data.id;
      this.upform.depName = data.name;
    async getDataAll() {
      const data = await zhangzitou_selectAll(this.listData)
      if (data.code != 200) return
      console.log(data)
      this.tableData = data.result.pois;
      this.count = data.result.total;
    },
    //树列表生成
    treeData(source) {
      let cloneData = JSON.parse(JSON.stringify(source)); // 对源数据深度克隆
      return cloneData.filter((father) => {
        // 循环所有项
        let branchArr = cloneData.filter((child) => father.id == child.pid); // 对比ID,分别上下级菜单,并返回数据
        branchArr.length > 0 ? (father.children = branchArr) : ""; // 给父级添加一个children属性,并赋值
        return father.pid == 0; // 返回一级菜单
      });
    setInsertDialog() {
      this.dialogTitle = '新增'
      this.outerVisible = true;
    },
    setOptionWidth(event) {
      // 下拉框聚焦,设置弹框的宽度
      this.$nextTick(() => {
        this.selectOptionWidth = event.srcElement.offsetWidth + "px";
      });
    async setDelDialog() {
      console.log(this.multipleSelection)
      if (this.multipleSelection.length <= 0) return;
      var std = [];
      for (var i in this.multipleSelection) {
        std.push(this.multipleSelection[i].id)
      }
      const data = await zhangzitou_deleteZhangzitouEntitys({ ids: std.toString() })
      console.log(data)
      if (data.code != 200) return
      this.setRestFrom();
    },
    innerClose() {
      this.editData.geom = this.$store.state.projeOl;
      this.innerVisible = false;
    },
    outerClose() {
      this.editData = {
        name: '',
        geom: "",
        type: this.siteOption[0].val,
        line: ''
      }
      this.$store.state.projeOl = null;
      this.outerVisible = false
    },
    submitOuter() {
      if (this.dialogTitle == "新增") {
        this.outerInsert();
      } else if (this.dialogTitle == "修改") {
        this.outerEdit();
      }
    },
    async outerEdit() {
      var obj = JSON.parse(JSON.stringify(this.editData));
      this.outerClose();
      const data = await zhangzitou_updateZhangzitouEntity(obj)
      if (data.result != 200) {
      }
      this.getDataAll();
    },
    async outerInsert() {
      var obj = JSON.parse(JSON.stringify(this.editData));
      this.outerClose();
      const data = await zhangzitou_insertZhangzitouEntity(obj)
      if (data.result != 200) {
      }
      this.setRestFrom();
    }
  },
};
</script>