Przeglądaj źródła

租户单位配置

ming 3 lat temu
rodzic
commit
1c2a44703b

+ 4 - 4
src/api/tenantManage/tenantUnit.js

@@ -19,18 +19,18 @@ export function plannedOutageDel(params) {
 }
 
 //停电计划-新增
-export function plannedOutageAdd(params) {
+export function addTenantData(params) {
     return request({
-        url: '/wcBlackoutPlan/plannedOutageAdd',
+        url: '/tenantConfig/addTenantData',
         method: 'POST',
         data: params,
     })
 }
 
 //停电计划-修改
-export function plannedOutageUpdate(params) {
+export function updateTenantData(params) {
     return request({
-        url: '/wcBlackoutPlan/plannedOutageUpdate',
+        url: '/tenantConfig/updateTenantData',
         method: 'POST',
         data: params,
     })

+ 8 - 1
src/utils/index.js

@@ -348,6 +348,13 @@ export function isPassword(vule, value, callback) {
     } else {
         callback()
     }
+}
 
-
+// 邮箱验证
+export function isEmail(vule, value, callback) {
+    if (!/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(value)) {
+        callback(new Error('请输入正确邮箱'))
+    } else {
+        callback()
+    }
 }

+ 205 - 210
src/views/tenantManage/adminConfig/dialogComponent.vue

@@ -1,168 +1,128 @@
 <template>
   <el-dialog
     :title="dialogTitle"
-    v-model="dialogVisible"
-    width="640px"
-    @close="closeDialog()"
-    @open="open"
+    v-model="showDialog"
+    width="900px"
+    @open="open()"
+    @close="closeDialog(0)"
   >
     <el-form
       ref="formInfo"
       :model="form"
-      class="demo-form-inline userManageDialog"
-      label-width="100px"
+      class="demo-form-inline"
+      label-width="150px"
       :rules="rules"
     >
-      <el-form-item label="用户名:" prop="nickName">
-        <el-input
-          v-model="form.nickName"
-          :disabled="dialogTitle === '查看'"
-        ></el-input>
-      </el-form-item>
-      <el-form-item label="账号:" prop="userName">
-        <el-input
-          v-model="form.userName"
-          :disabled="dialogTitle === '查看'"
-        ></el-input>
-      </el-form-item>
-      <el-form-item label="性别:" prop="sex">
-        <el-radio-group v-model="form.sex" :disabled="dialogTitle === '查看'">
-          <el-radio label="1" value="1">男</el-radio>
-          <el-radio label="2" value="2">女</el-radio>
-        </el-radio-group>
-      </el-form-item>
-
-      <el-form-item label="手机号码:" prop="phonenumber">
-        <el-input
-          v-model="form.phonenumber"
-          :disabled="dialogTitle === '查看'"
-        ></el-input>
-      </el-form-item>
-      <el-form-item label="密码" prop="password" v-if="dialogTitle == '新增'">
-        <el-input
-          v-model="form.password"
-          :disabled="dialogTitle === '查看'"
-        ></el-input>
-      </el-form-item>
-
-      <!-- <el-form-item
-        label="创建时间:"
-        prop="createTime"
-        style="margin-top: 0px"
-      >
-        <el-date-picker
-          v-model="form.createTime"
-          width="100%"
-          type="datetime"
-          placeholder="选择日期时间"
-          :disabled="dialogTitle === '查看'"
-        ></el-date-picker>
-      </el-form-item> -->
+      <el-row>
+        <el-col :span="12" :gutter="20">
+          <el-form-item label="租户名称:" prop="tenantName">
+            <el-input v-model="form.tenantName"></el-input>
+          </el-form-item>
+          <el-form-item label="租户负责人:" prop="tenantManager">
+            <el-input v-model="form.tenantManager"></el-input>
+          </el-form-item>
 
-      <el-form-item label="角色名称:" prop="roleId">
-        <!-- <el-input v-model="form.roleName"></el-input> -->
-        <el-select
-          v-model="form.roleId"
-          placeholder="请选择"
-          clearable
-          :disabled="dialogTitle === '查看'"
-        >
-          <el-option
-            v-for="(item, index) in roleSelectData"
-            :key="index"
-            :label="item.roleName"
-            :value="item.roleId"
-          ></el-option>
-        </el-select>
-      </el-form-item>
+          <el-form-item label="有效期限:" prop="tenantTerm">
+            <el-radio-group v-model="form.tenantTerm">
+              <el-radio :label="3" value="3">永久有效</el-radio>
+              <el-radio :label="4" value="4">
+                <el-date-picker
+                  v-model="form.value1"
+                  type="date"
+                  placeholder="请选择日期"
+                />
+              </el-radio>
+            </el-radio-group>
+          </el-form-item>
 
-      <el-form-item label="所属站点:" prop="siteId">
-         <el-select
-              v-model="form.siteId"
+          <el-form-item label="地理位置:" prop="geoPosition">
+            <el-input v-model="form.geoPosition"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12" :gutter="20">
+          <el-form-item label="租户类型:" prop="tenantType">
+            <el-select v-model="form.tenantType" placeholder="请选择">
+              <el-option label="试用租户" :value="0"></el-option>
+              <el-option label="正式租户" :value="1"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="负责人手机号:" prop="phoneNumber">
+            <el-input v-model="form.phoneNumber"></el-input>
+          </el-form-item>
+          <el-form-item label="系统平台:" prop="systemName">
+            <el-input v-model="form.systemName"></el-input>
+          </el-form-item>
+          <!-- <el-form-item label="系统平台:" prop="systemName">
+            <el-select
+              v-model="form.systemName"
               placeholder="请选择"
-              clearable
-               multiple
-              filterable
-              collapse-tags
-               @change="linkChange()"
-              
             >
-              <el-option
-                v-for="site in store.state.siteList"
-                :key="site"
-                :label="site.siteName"
-                :value="site.id"
-                
-              ></el-option>
+              <el-option label="计划检修停电" :value="1"></el-option>
+              <el-option label="计划施工停电" :value="2"></el-option>
+              <el-option label="客户申请停电" :value="3"></el-option>
             </el-select>
-      </el-form-item>
+          </el-form-item> -->
+          <el-form-item label="邮箱地址:" prop="email">
+            <el-input v-model="form.email"></el-input>
+          </el-form-item>
+          <el-form-item label="联系地址:" prop="address">
+            <el-input v-model="form.address"></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
 
+      <el-form-item label="">
+        <div
+          style="width: 670px; height: 130px; background: rgba(0, 0, 0, 0.2)"
+        >
+          地图
+        </div>
+      </el-form-item>
+      <el-form-item label="备注:" prop="remark">
+        <el-input
+          v-model="form.remark"
+          :rows="2"
+          type="textarea"
+          placeholder="请输入..."
+          style="width: 670px"
+        />
+      </el-form-item>
 
       <br />
-      <br />
-      <br />
+ 
       <div style="text-align: right">
         <el-button @click="closeDialog(0)">取消</el-button>
-        <el-button
-          type="primary"
-          @click="submitForm('formInfo')"
-          :disabled="isDisable"
-          v-if="dialogTitle !== '查看'"
-        >
-          确定
-        </el-button>
+        <el-button type="primary" @click="submitForm()">保存</el-button>
       </div>
     </el-form>
   </el-dialog>
 </template>
-
 <script>
-import { defineComponent, ref, onMounted, watchEffect,watch } from 'vue'
-import * as api from '@/api/systemManage/userManage.js'
-import { ElMessage } from 'element-plus'
-import { parseTime, validatorPhone } from '@/utils'
 import { useStore } from 'vuex'
-
+import { defineComponent, ref, watchEffect } from 'vue'
+import * as api from '@/api/tenantManage/tenantUnit.js'
+import { ElMessage } from 'element-plus'
+// import { parseTime } from '@/utils'
+import { validatorPhone, parseTime, isEmail } from '@/utils'
 export default defineComponent({
   name: 'DialogComponent',
   emits: ['closeDialog'],
   props: {
-    flag: Boolean,
+    show_Dialog: Boolean,
     dialogTitle: String,
-    itemInfo: Object,
+    itemInfo: {
+      type: Object,
+      default: function () {
+        return {}
+      },
+    },
   },
-  setup(props, context) {
-    context
+  setup(props, { emit }) {
     const store = useStore()
-    const dialogVisible = ref(false)
+    const beginTime = ref('')
+    const showDialog = ref(false)
+    const form = ref({})
     const formInfo = ref(null)
-    const isDisable = ref(false)
-
-    const form = ref([])
-    const roleSelectData = ref([])
-
-    // open(): Dialog弹窗打开之前做的事
-    const open = () => {
-    
-      form.value = props.itemInfo.value
-       console.log('form.value')
-       console.log(form.value)
-      console.log(form.value.siteId)
-    }
-
-  
-
-    // 关闭弹框
-    const closeDialog = () => {
-      resetForm()
-      context.emit('closeDialog', false)
-      dialogVisible.value = false
-    }
-
-    watchEffect((fn, options) => {
-      fn, options
-      dialogVisible.value = props.flag
-    })
 
     const roleValid = (rule, value, callback) => {
       rule
@@ -173,36 +133,44 @@ export default defineComponent({
       }
     }
 
-    // 保存-修改操作
+    // 保存操作
     const submitForm = () => {
-      form.value.createTime = parseTime(new Date())
-
       formInfo.value.validate((valid) => {
         if (valid) {
-          isDisable.value = true
-           setTimeout(() => {
-                  isDisable.value = false //点击一次时隔两秒后才能再次点击
-                }, 2000)
-          form.value.roleIds = [form.value.roleId] //roleIds 传给后台
+
+          var aa = form.value
+            if (aa.tenantTerm == 3) {
+              aa.tenantTerm = '永久有效'
+            }
+            if (aa.tenantTerm == 4) {
+              if (!form.value.value1) {
+                ElMessage.warning('请选择日期')
+                return
+              }
+              aa.tenantTerm = form.value.value1
+
+              parseTime
+
+              aa.tenantTerm
+                ? (aa.tenantTerm = parseTime(aa.tenantTerm).substring(0, 10))
+                : ''
+            }
+
+
           if (props.dialogTitle === '新增') {
-            api.userAdd(form.value).then((requset) => {
+            api.addTenantData(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
                   message: '新增成功',
                   type: 'success',
                 })
-                setTimeout(() => {
-                  isDisable.value = false //点击一次时隔两秒后才能再次点击
-                }, 2000)
-
                 closeDialog()
               } else {
-                alert(requset.msg)
-                // ElMessage.error(requset.msg)
+                ElMessage.error(requset.msg)
               }
             })
           } else {
-            api.userUpdate(form.value).then((requset) => {
+            api.updateTenantData(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
                   message: '修改成功',
@@ -221,97 +189,108 @@ export default defineComponent({
       })
     }
 
-    //角色下拉请求
-    function optionselect() {
-      api.optionselect().then((requset) => {
-        if (requset.status === 'SUCCESS') {
-     
-          roleSelectData.value = requset.data
-        } else {
-          ElMessage.error(requset.msg)
-        }
-      })
+    const open = () => {
+      form.value = props.itemInfo;
+      console.log('form.value')
+      console.log(form.value)
+    }
+
+    // 关闭弹框
+    const closeDialog = (flag) => {
+      resetForm()
+      showDialog.value = false
+      emit('closeDialog', flag)
     }
 
     function resetForm() {
       formInfo.value.resetFields()
-      
-      
-     
     }
-    function linkChange(){
 
+    watchEffect((fn, options) => {
+      fn, options
+      showDialog.value = props.show_Dialog
+    })
 
+    //禁止选择以前的时间
+    const pickerEndDate = (time) => {
+      const timeRange = 1 * 24 * 60 * 60 * 1000
+      return time.getTime() <= Date.now() - timeRange * 1
     }
 
-     //监听变化
-    watch(
-      () => props.siteIdArr,
-      (newVal) => {
-        alert(1)
-        newVal
-       
-      }
-    )
-
-    onMounted(() => {
-      optionselect()
-    })
-
     return {
-      store,
-      linkChange,
-      closeDialog,
-      dialogVisible,
+      pickerEndDate,
       roleValid,
-      formInfo,
-      form,
-      roleSelectData,
-      open,
       submitForm,
-      resetForm,
-      isDisable,
+      closeDialog,
+      open,
+
+      store,
+      beginTime,
+      showDialog,
+
+      checked: true,
+      form,
+      formInfo,
+
       rules: {
-       
-        nickName: [
-          { required: true, message: '请输入用户名', trigger: 'blur' },
+        tenantName: [
+          { required: true, message: '请输入租户名称', trigger: 'blur' },
           {
-            min: 2,
-
-            message: '用户名长度至少2个字符',
+            min: 1,
+            max: 30,
+            message: '长度在 1 到 30个字符',
             trigger: 'blur',
           },
         ],
-        userName: [
-          { required: true, message: '请输入账号', trigger: 'blur' },
+        tenantManager: [
+          { required: true, message: '请输入租户负责人', trigger: 'blur' },
           {
+            min: 1,
             max: 10,
-            message: '账号最多输入 10 个字符',
+            message: '长度在 1 到 10个字符',
             trigger: 'blur',
           },
         ],
-        sex: [{ required: true, message: '请选择性别', trigger: 'change' }],
-        phonenumber: [
-          { required: true, message: '请输入手机号码', trigger: 'blur' },
+        tenantTerm: [
+          { required: true, message: '请选择有效期限', trigger: 'change' },
+        ],
+        geoPosition: [
+          { required: true, message: '请选输入地理位置', trigger: 'blur' },
+        ],
+
+        tenantType: [
+          { required: true, message: '请输入租户类型', trigger: 'blur' },
+        ],
+        phoneNumber: [
+          {
+            required: true,
+            message: '请输入负责人手机号码',
+            trigger: 'blur',
+          },
           {
             validator: validatorPhone,
             message: '输入的电话号码不正确',
             trigger: 'blur',
           },
         ],
-        createTime: [
-          { required: true, message: '请输入创建时间', trigger: 'blur' },
+        systemName: [
+          { required: true, message: '请选择系统平台', trigger: 'blur' },
         ],
-        roleId: [
-          { required: true, message: '请选择角色名称', trigger: 'blur' },
+        email: [
+          { required: true, message: '请输入邮箱地址', trigger: 'blur' },
+
+          {
+            validator: isEmail,
+            message: '输入的邮箱地址不正确',
+            trigger: 'blur',
+          },
         ],
-         siteId:  [{ required: true, message: '请选择站点', trigger: 'blur' }],
-        password: [
-          { required: true, message: '请输入密码', trigger: 'blur' },
+        address: [
+          { required: true, message: '请输入联系地址', trigger: 'blur' },
           {
-            min: 3,
-            max: 6,
-            message: '长度在 3 到 6 个字符',
+            min: 1,
+            max: 15,
+            message: '长度在 1 到 15个字符',
             trigger: 'blur',
           },
         ],
@@ -323,9 +302,25 @@ export default defineComponent({
  
 <style scoped lang="scss">
 .el-input,
-.el-select {
+.el-select,
+.el-date-editor.el-input,
+.el-date-editor.el-input__inner {
   width: 240px;
 }
+
+.el-form-item {
+  margin: 0 0 20px !important;
+}
+// label样式
+.el-form-item__label {
+  width: 120px !important;
+}
+.el-form-item__content {
+  margin-left: 100px;
+}
+.demo-form-inline .el-form-item:not(.user-layout .el-form-item) {
+  // margin: 0 auto 20px 55px;
+}
 </style>
-<style lang="scss">
+<style>
 </style>

+ 348 - 210
src/views/tenantManage/adminConfig/index.vue

@@ -4,102 +4,193 @@
     <div class="filter-container mb-10">
       <div class="left">
         <div>
-          <span class="" style="margin-right: 30px">管理员配置待排版222</span>
-          <el-button :disabled="store.state.authorities.indexOf('新增')==-1" icon="el-icon-plus" type="success" @click="addItem()">
-            新增
-          </el-button>
-        </div>
-        <div style="margin-top: 20px">
-          <div class="filter-item">
-            账号:
-            <el-input
-              v-model="userName"
-              placeholder="请输入内容"
-              style="width: 180px"
-               :disabled="store.state.authorities.indexOf('查询')==-1"
-            ></el-input>
-          </div>
-
-          <div class="filter-item">
-            账号状态:
-            <el-select
-              v-model="status"
-              placeholder="请选择"
-              style="width: 150px"
-              clearable
-               :disabled="store.state.authorities.indexOf('查询')==-1"
-            >
-              <el-option label="正常" value="0"></el-option>
-              <el-option label="停用" value="1"></el-option>
-            </el-select>
-          </div>
-
-          <div class="filter-item planOutage">
-            选择时间范围:
-            <el-date-picker
-              v-model="dateTime"
-              type="datetimerange"
-              range-separator="至"
-              start-placeholder="开始日期"
-              end-placeholder="结束日期"
-              style="width: auto"
-               :disabled="store.state.authorities.indexOf('查询')==-1"
-            ></el-date-picker>
-          </div>
+          <a class="" style="margin-right: 30px">租户单位配置列表</a>
           <el-button
-          :disabled="store.state.authorities.indexOf('查询')==-1"
-            type="primary"
-            icon="el-icon-search"
-            class="search-button"
-            @click="list()"
+            icon="el-icon-plus"
+            type="success"
+            @click="addItem()"
+            :disabled="store.state.authorities.indexOf('新增') == -1"
           >
-            查询
+            新增
           </el-button>
         </div>
       </div>
 
-      <!-- <div class="right">
-        <el-button type="primary">导出</el-button>
-      </div> -->
+      <div class="right">
+        <el-button type="primary">全部导出</el-button>
+        <el-button
+          type="primary"
+        >
+          导出
+        </el-button>
+
+        <!-- <el-button
+          type="primary"
+          @click="DataReportExport()"
+          :disabled="store.state.authorities.indexOf('导出') == -1"
+        >
+          导出
+        </el-button> -->
+      </div>
+    </div>
+
+    <div class="filter-container mb-10">
+      <div style="margin-top: 20px">
+        <div class="filter-item">
+          租户名称:
+          <el-input
+            v-model="tenantName"
+            placeholder="请输入内容"
+            style="width: 150px"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-input>
+        </div>
+        <div class="filter-item">
+          负责人:
+          <el-input
+            v-model="tenantManager"
+            placeholder="请输入内容"
+            style="width: 150px"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-input>
+        </div>
+        <div class="filter-item">
+          客户类型:
+          <el-select
+            v-model="tenantType"
+            placeholder="请选择"
+            style="width: 150px"
+            clearable
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          >
+            <el-option label="试用租户" :value="0"></el-option>
+            <el-option label="正式租户" :value="1"></el-option>
+          </el-select>
+        </div>
+        <div class="filter-item">
+          状态:
+          <el-select
+            v-model="status"
+            placeholder="请选择"
+            style="width: 200px"
+            clearable
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          >
+            <el-option label="正常" :value="0"></el-option>
+            <el-option label="停用" :value="1"></el-option>
+          </el-select>
+        </div>
+
+        <div class="filter-item planOutage">
+          选择时间范围:
+          <el-date-picker
+            v-model="dateTime"
+            type="datetimerange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            style="width: auto"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-date-picker>
+        </div>
+
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          @click="Select()"
+          class="search-button"
+          :disabled="store.state.authorities.indexOf('查询') == -1"
+        >
+          查询
+        </el-button>
+      </div>
     </div>
+
     <!-- 筛选end -->
 
     <!-- 表格start -->
-    <el-table :data="tableData" border stripe :header-cell-style="headClass">
-      <!-- <el-table-column prop="xh" label="序号" width="70">
-      </el-table-column> -->
-      <el-table-column prop="nickName" label="用户名"></el-table-column>
-      <el-table-column prop="userName" label="账号"></el-table-column>
-      <el-table-column prop="sex" label="性别" width="100">
+    <el-table
+      :data="tableData"
+      border
+      stripe
+      :header-cell-style="headClass"
+      :cell-style="cellStyle"
+    >
+      <el-table-column type="index" label="序号" width="50px"></el-table-column>
+      <el-table-column
+        prop="tenantName"
+        label="租户名称"
+        min-width="140px"
+      ></el-table-column>
+      <el-table-column
+        prop="tenantManager"
+        label="负责人"
+        min-width="100px"
+      ></el-table-column>
+      <el-table-column
+        prop="phoneNumber"
+        label="负责人手机号"
+        min-width="125px"
+      ></el-table-column>
+      <el-table-column prop="tenantType" label="客户类型" min-width="80px">
         <template #default="scope">
-          <span>{{ scope.row.sex == 1 ? '男' : '女' }}</span>
+          <span>
+            {{ scope.row.tenantType === '0' ? '使用租户' : '正式租户' }}
+          </span>
         </template>
       </el-table-column>
-      <el-table-column prop="phonenumber" label="手机号码" min-width="120"></el-table-column>
-      <el-table-column prop="createTime" label="创建时间" min-width="160"></el-table-column>
-      <!-- <el-table-column
-        prop="roles.roleName"
-        label="角色名称"
-       
-      ></el-table-column> -->
-      <el-table-column fixed="right" label="操作" width="180">
+      <el-table-column
+        prop="geoPosition"
+        label="地理位置"
+        min-width="160px"
+      ></el-table-column>
+      <el-table-column prop="status" label="状态" width="">
         <template #default="scope">
-          <el-button
-            @click="checkItem(scope.row)"
-            type="text"
-            size="small"
-            class="delete-text"
+          <span
+            :style="{
+              color: scope.row.status == '0' ? '#8DCF6E' : '#FF747B',
+            }"
           >
-            查看
-          </el-button>
+            {{ scope.row.status === '0' ? '正常' : '停用' }}
+          </span>
+        </template>
+      </el-table-column>
+
+      <el-table-column
+        prop="systemName"
+        label="系统平台"
+        min-width="100px"
+      ></el-table-column>
+      <el-table-column
+        prop="tenantTerm"
+        label="到期时间"
+        min-width="110px"
+      ></el-table-column>
+      <el-table-column fixed="right" label="操作" width="80">
+        <template #default="scope">
           <el-button
-          :disabled="store.state.authorities.indexOf('修改')==-1"
             type="text"
             size="small"
             @click.prevent="editRow(scope.row)"
+            :disabled="store.state.authorities.indexOf('修改') == -1"
           >
             编辑
           </el-button>
+          <!-- <el-popconfirm
+            confirm-button-text="是"
+            cancel-button-text="否"
+            icon="el-icon-info"
+            icon-color="red"
+            title="确定删除?"
+            @confirm="handleDelete(scope.row)"
+            @cancel="cancelEvent"
+          >
+            <template #reference>
+              <el-button type="text" size="small" class="delete-text" :disabled="store.state.authorities.indexOf('删除')==-1">
+                删除
+              </el-button>
+            </template>
+          </el-popconfirm> -->
         </template>
       </el-table-column>
     </el-table>
@@ -108,7 +199,7 @@
     <!-- 分页start -->
     <div class="paginationBlock">
       <el-pagination
-        v-model:currentPage="currentPage"
+        v-model:currentPage="page"
         :page-sizes="[15, 20, 25, 30]"
         :page-size="pageSize"
         layout="total, sizes, prev, pager, next, jumper"
@@ -123,11 +214,10 @@
 
     <!--弹框组件开始-----------------------start-->
     <dialog-component
-      :dialogTitle="dialogTitle"
-      :itemInfo="tableItem"
+      :dialog-title="dialogTitle"
+      :item-info="tableItem"
       @closeDialog="closeDialog"
-      :flag="showDialog"
-      v-if="tableItem"
+      :show_Dialog="showDialog"
     ></dialog-component>
     <!--弹框组件开始-----------------------end-->
   </div>
@@ -135,63 +225,131 @@
 
 <script>
 import { useStore } from 'vuex'
-import { defineComponent, ref, reactive, onMounted } from 'vue'
-import * as api from '@/api/systemManage/userManage.js'
-import { ElMessage } from 'element-plus'
-
+import { defineComponent, onMounted, ref } from 'vue'
 import DialogComponent from './dialogComponent'
+import * as api from '@/api/tenantManage/tenantUnit.js'
+import { ElMessage } from 'element-plus'
 
 export default defineComponent({
+  name: 'VariableList',
+
   components: { DialogComponent },
   setup() {
     const store = useStore()
-    const total = ref(0)
-    const pageSize = ref(10)
+
+    const tableItem = ref()
+    const dialogTitle = ref('')
+    const showDialog = ref(false)
+
+    const tableData = ref()
     const currentPage = ref(1)
+    const pageSize = ref(15)
+    const total = ref(0)
+
+    const status = ref('')
+    const tenantType = ref('')
+    const tenantName = ref('')
+    const tenantManager = ref('')
 
     const dateTime = ref('')
+    const select = ref(1)
 
-    const userName = ref('')
-    const phone = ref('')
-    const status = ref('')
-    const role = ref('')
-    const currentPage4 = ref(4)
-    const dialogTitle = ref('')
-    const showDialog = ref(false)
-    const tableData = ref([])
-    const siteIdArr=ref([])
+    const input = ref('')
+    const region = ref()
 
-    // // 表头样式设置
-    const headClass = () => {
-      return 'background:#FAFAFA;'
+    // 添加操作
+    const addItem = () => {
+      tableItem.value = {
+        tenantName: '',
+        tenantManager: '',
+        tenantTerm: 3,
+        geoPosition: '',
+        tenantType: '',
+        phoneNumber: '',
+        systemName: '',
+        email: '',
+        address: '',
+      }
+      dialogTitle.value = '新增'
+      showDialog.value = true
+    }
+    // 编辑操作
+    const editRow = (row) => {
+      console.log(row)
+      tableItem.value = {
+        id:row.id,
+        tenantName: row.tenantName,
+        tenantManager: row.tenantManager,
+        tenantTerm: row.tenantTerm=='永久有效'?3:4,
+        value1:row.tenantTerm,
+        geoPosition: row.geoPosition,
+        tenantType: Number(row.tenantType),
+        phoneNumber: row.phoneNumber,
+        systemName: row.systemName,
+        email: row.email,
+        address: row.address,
+        remark:row.remark
+      }
+      dialogTitle.value = '编辑'
+      showDialog.value = true
     }
 
-    const handleSizeChange = (val) => {
-      pageSize.value = val
-      list()
+    // 关闭操作
+    const closeDialog = (flag) => {
+      if (flag) {
+        // 重新刷新表格内容
+        // this.fetchData()
+        console.log(1)
+      }
+      showDialog.value = false
+      Select()
     }
-    const handleCurrentChange = (val) => {
-      currentPage.value = val
-      list()
+
+    //删除 是否删除  ---- 是
+    const handleDelete = (row) => {
+      api.plannedOutageDel({ id: row.id }).then((requset) => {
+        if (requset.status === 'SUCCESS') {
+          ElMessage.success({
+            message: '删除成功',
+            type: 'success',
+          })
+          Select()
+        } else {
+          ElMessage.error(requset.msg)
+        }
+      })
+    }
+    //是否删除  ---- 否
+    const cancelEvent = () => {
+      console.log('cancel!')
     }
 
-    //用户列表
-    function list() {
+    //查询设备列表
+    function Select() {
       store.commit('TimeAll_function', dateTime.value)
       const time = store.state.Time_Data
       api
-        .list({
-          pageSize: pageSize.value,
-          pageNum: currentPage.value,
+        .getTenantData({
+          size: pageSize.value,
+          page: currentPage.value,
+          startTime: time[0] ? time[0] : '',
+          endTime: time[1] ? time[1] : '',
           status: status.value,
-          userName: userName.value,
-          beginTime: time[0],
-          endTime: time[1],
-          // platformAreaName: platformAreaName.value,
+          tenantType: tenantType.value,
+          tenantName: tenantName.value,
+          tenantManager: tenantManager.value,
         })
         .then((requset) => {
           if (requset.status === 'SUCCESS') {
-            tableData.value = requset.data.rows
+            tableData.value = requset.data.records.map((val) => {
+              store.commit('getTimestampAll', val.startTime)
+              val.startTime = store.state.timeProcessing
+              store.commit('getTimestampAll', val.endTime)
+              val.endTime = store.state.timeProcessing
+              store.commit('getTimestampAll', val.createTime)
+              val.createTime = store.state.timeProcessing
+            })
+            tableData.value = requset.data.records
             total.value = requset.data.total
           } else {
             ElMessage.error(requset.msg)
@@ -199,122 +357,102 @@ export default defineComponent({
         })
     }
 
-    const tableItem = reactive([])
-    // 添加操作
-    const addItem = () => {
-      tableItem.value = {
-        nickName: '',
-        userName: '',
-        sex: '1',
-        phonenumber: '',
-        createTime: '',
-        roleName: '',
-        password: '',
-      }
-      dialogTitle.value = '新增'
-      showDialog.value = true
-    }
-
-    // 查看
-    const checkItem = (row) => {
-      siteIdArr.value=[]
-      console.log(row)
-      api.authRole({}, row.userId).then((requset) => {
-        if (requset.status === 'SUCCESS') {
-          tableItem.value.roleId= requset.data.user.roles[0].roleId
-          var newArray= requset.data.userSite
-           newArray.forEach(function(item){
-             siteIdArr.value.push(item.siteId)
+    onMounted(() => {
+      Select()
+    })
 
-           })
-           tableItem.value.siteId= siteIdArr.value
-        } else {
-          ElMessage.error(requset.msg)
-        }
-      })
-      tableItem.value = row
-      dialogTitle.value = '查看'
-      showDialog.value = true
+    const handleSizeChange = (val) => {
+      pageSize.value = val
+      Select()
     }
-
-    // 编辑操作
-    const editRow = (row) => {
-      siteIdArr.value=[]
-      console.log(row)
-      api.authRole({}, row.userId).then((requset) => {
-        if (requset.status === 'SUCCESS') {
-          tableItem.value.roleId= requset.data.user.roles[0].roleId
-
-           var newArray= requset.data.userSite
-           newArray.forEach(function(item){
-             siteIdArr.value.push(item.siteId)
-
-           })
-           tableItem.value.siteId= siteIdArr.value
-            
-        } else {
-          ElMessage.error(requset.msg)
-        }
+    const handleCurrentChange = (val) => {
+      currentPage.value = val
+      Select()
+    }
+    // 表头样式设置
+    const goVariableList = () => {
+      // 跳转至订单列表页面传参
+      this.$router.push({
+        path: '../siteManage/variableList/index.vue',
       })
+      // this.$router.push({ name:'variableList'})
+    }
+    const headClass = () => {
+      return 'background:#FAFAFA;'
+    }
+    //处理状态状态值变色
+    const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
+      row, column, rowIndex
+      // console.log(row, column, rowIndex)
 
-
-      // tableItem.value = row
-      tableItem.value={
-        nickName:row.nickName,
-        userName:row.userName,
-        sex:row.sex,
-        phonenumber:row.phonenumber,
-        password:row.password,
-        createTime:row.createTime,
-        roleId:row.roleId,
-        userId:row.userId
+      if (columnIndex) {
+        // return `text-align:left;cursor:pointer;`
+      } else {
+        return ''
       }
-
-      dialogTitle.value = '编辑'
-      showDialog.value = true
     }
 
-    // 关闭操作
-    const closeDialog = () => {
-      showDialog.value = false
-      
-      list()
+    //导出
+    const DataReportExport = () => {
+      store.commit('TimeAll_function', dateTime.value)
+      const time = store.state.Time_Data
+      api
+        .outagePlanListExport({
+          type: region.value,
+          startTime: time[0] ? time[0] : '',
+          endTime: time[1] ? time[1] : '',
+        })
+        .then((requset) => {
+          if (requset.status === 'SUCCESS') {
+            window.location.href = window.PLATFROM_CONFIG.fileUrl + requset.data
+            ElMessage.success({
+              message: '导出成功',
+              type: 'success',
+            })
+          } else {
+            ElMessage.error(requset.msg)
+          }
+        })
     }
+    return {
+      cellStyle,
+      headClass,
+      goVariableList,
 
-    onMounted(() => {
-      list()
-    })
+      handleDelete,
+      cancelEvent,
+      closeDialog,
+      editRow,
+      addItem,
+      Select,
+
+      store,
 
-    return {
-      userName,
-      phone,
-      status,
-      role,
-      tableItem,
-      currentPage4,
-      dialogTitle,
-      showDialog,
-      tableData,
       total,
       pageSize,
       currentPage,
-
-      dateTime,
-      store,
-      siteIdArr,
-      list,
       handleSizeChange,
       handleCurrentChange,
-      headClass,
-      checkItem,
-      addItem,
-      editRow,
-      closeDialog,
+
+      tenantType,
+      tableData,
+      tenantName,
+      tenantManager,
+      status,
+
+      showDialog,
+      select,
+      dateTime,
+      tableItem,
+      dialogTitle,
+      input,
+      region,
+
+      DataReportExport,
     }
   },
 })
 </script>
 
-
 <style lang="scss" scoped>
 </style>

+ 61 - 89
src/views/tenantManage/tenantUnit/dialogComponent.vue

@@ -18,17 +18,19 @@
           <el-form-item label="租户名称:" prop="tenantName">
             <el-input v-model="form.tenantName"></el-input>
           </el-form-item>
-          <el-form-item label="负责人:" prop="tenantManager">
+          <el-form-item label="租户负责人:" prop="tenantManager">
             <el-input v-model="form.tenantManager"></el-input>
           </el-form-item>
+
           <el-form-item label="有效期限:" prop="tenantTerm">
-            <!-- <el-input v-model="form.tenantTerm"></el-input> -->
-            <el-radio-group
-              v-model="form.tenantTerm"
-            >
-              <el-radio label="1" value="1">永久有效</el-radio><br>
-              <el-radio label="2" value="2">
-                <el-date-picker v-model="value1" type="date" placeholder="请选择日期" />
+            <el-radio-group v-model="form.tenantTerm">
+              <el-radio :label="3" value="3">永久有效</el-radio>
+              <el-radio :label="4" value="4">
+                <el-date-picker
+                  v-model="form.value1"
+                  type="date"
+                  placeholder="请选择日期"
+                />
               </el-radio>
             </el-radio-group>
           </el-form-item>
@@ -36,26 +38,10 @@
           <el-form-item label="地理位置:" prop="geoPosition">
             <el-input v-model="form.geoPosition"></el-input>
           </el-form-item>
-
-          <!-- <el-form-item label="开始/结束停电时间:" prop="time">
-            <el-date-picker
-              style="width: 330px"
-              v-model="form.time"
-              type="datetimerange"
-              :disabledDate="pickerEndDate"
-              start-placeholder="Start Date"
-              end-placeholder="End Date"
-              :disabled="form.type === 2 || form.type === 3"
-            ></el-date-picker>
-          </el-form-item> -->
         </el-col>
         <el-col :span="12" :gutter="20">
           <el-form-item label="租户类型:" prop="tenantType">
-            <el-select
-              v-model="form.tenantType"
-              placeholder="请选择"
-              :disabled="dialogTitle === '编辑'"
-            >
+            <el-select v-model="form.tenantType" placeholder="请选择">
               <el-option label="试用租户" :value="0"></el-option>
               <el-option label="正式租户" :value="1"></el-option>
             </el-select>
@@ -92,9 +78,9 @@
           地图
         </div>
       </el-form-item>
-      <el-form-item label="备注:" prop="tenantTerm">
+      <el-form-item label="备注:" prop="remark">
         <el-input
-          v-model="remark"
+          v-model="form.remark"
           :rows="2"
           type="textarea"
           placeholder="请输入..."
@@ -103,8 +89,7 @@
       </el-form-item>
 
       <br />
-      <br />
-      <br />
+ 
       <div style="text-align: right">
         <el-button @click="closeDialog(0)">取消</el-button>
         <el-button type="primary" @click="submitForm()">保存</el-button>
@@ -115,9 +100,10 @@
 <script>
 import { useStore } from 'vuex'
 import { defineComponent, ref, watchEffect } from 'vue'
-import * as api from '@/api/planOutage/index'
+import * as api from '@/api/tenantManage/tenantUnit.js'
 import { ElMessage } from 'element-plus'
-import { validatorPhone } from '@/utils'
+// import { parseTime } from '@/utils'
+import { validatorPhone, parseTime, isEmail } from '@/utils'
 export default defineComponent({
   name: 'DialogComponent',
   emits: ['closeDialog'],
@@ -135,9 +121,8 @@ export default defineComponent({
     const store = useStore()
     const beginTime = ref('')
     const showDialog = ref(false)
-    const form = ref([])
+    const form = ref({})
     const formInfo = ref(null)
-    const value1 = ref('')
 
     const roleValid = (rule, value, callback) => {
       rule
@@ -152,18 +137,28 @@ export default defineComponent({
     const submitForm = () => {
       formInfo.value.validate((valid) => {
         if (valid) {
-          var timeType = typeof form.value.time[0]
-          if (timeType == 'object') {
-            store.commit('TimeAll_function', form.value.time)
-            const time = store.state.Time_Data
-            form.value.startTime = time[0]
-            form.value.endTime = time[1]
-          } else {
-            form.value.startTime = form.value.time[0]
-            form.value.startTime = form.value.time[1]
-          }
+
+          var aa = form.value
+            if (aa.tenantTerm == 3) {
+              aa.tenantTerm = '永久有效'
+            }
+            if (aa.tenantTerm == 4) {
+              if (!form.value.value1) {
+                ElMessage.warning('请选择日期')
+                return
+              }
+              aa.tenantTerm = form.value.value1
+
+              parseTime
+
+              aa.tenantTerm
+                ? (aa.tenantTerm = parseTime(aa.tenantTerm).substring(0, 10))
+                : ''
+            }
+
+
           if (props.dialogTitle === '新增') {
-            api.plannedOutageAdd(form.value).then((requset) => {
+            api.addTenantData(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
                   message: '新增成功',
@@ -175,7 +170,7 @@ export default defineComponent({
               }
             })
           } else {
-            api.plannedOutageUpdate(form.value).then((requset) => {
+            api.updateTenantData(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
                   message: '修改成功',
@@ -195,7 +190,9 @@ export default defineComponent({
     }
 
     const open = () => {
-      form.value = props.itemInfo
+      form.value = props.itemInfo;
+      console.log('form.value')
+      console.log(form.value)
     }
 
     // 关闭弹框
@@ -217,21 +214,9 @@ export default defineComponent({
     //禁止选择以前的时间
     const pickerEndDate = (time) => {
       const timeRange = 1 * 24 * 60 * 60 * 1000
-
       return time.getTime() <= Date.now() - timeRange * 1
     }
-    /**
-     * 手机号校验
-     */
-    // var validatorPhone = function (rule, value, callback) {
-    //   if (value === '') {
-    //     callback(new Error('手机号不能为空'))
-    //   } else if (!/^1\d{10}$/.test(value)) {
-    //     callback(new Error('手机号格式错误'))
-    //   } else {
-    //     callback()
-    //   }
-    // }
+
     return {
       pickerEndDate,
       roleValid,
@@ -239,8 +224,6 @@ export default defineComponent({
       closeDialog,
       open,
 
-      value1,
-
       store,
       beginTime,
       showDialog,
@@ -248,36 +231,25 @@ export default defineComponent({
       checked: true,
       form,
       formInfo,
-      options: [
-        {
-          value: '选项1',
-          label: '站点一',
-        },
-        {
-          value: '选项2',
-          label: '站点二',
-        },
-        {
-          value: '选项3',
-          label: '站点三',
-        },
-        {
-          value: '选项4',
-          label: '站点四',
-        },
-        {
-          value: '选项5',
-          label: '站点五',
-        },
-      ],
 
       rules: {
         tenantName: [
-          // required  是否为必填项, trigger:表单验证的触发时机,失去焦点进行验证
           { required: true, message: '请输入租户名称', trigger: 'blur' },
+          {
+            min: 1,
+            max: 30,
+            message: '长度在 1 到 30个字符',
+            trigger: 'blur',
+          },
         ],
         tenantManager: [
           { required: true, message: '请输入租户负责人', trigger: 'blur' },
+          {
+            min: 1,
+            max: 10,
+            message: '长度在 1 到 10个字符',
+            trigger: 'blur',
+          },
         ],
         tenantTerm: [
           { required: true, message: '请选择有效期限', trigger: 'change' },
@@ -306,10 +278,10 @@ export default defineComponent({
         ],
         email: [
           { required: true, message: '请输入邮箱地址', trigger: 'blur' },
+
           {
-            min: 1,
-            max: 10,
-            message: '长度在 1 到 10 个字符',
+            validator: isEmail,
+            message: '输入的邮箱地址不正确',
             trigger: 'blur',
           },
         ],
@@ -317,8 +289,8 @@ export default defineComponent({
           { required: true, message: '请输入联系地址', trigger: 'blur' },
           {
             min: 1,
-            max: 10,
-            message: '长度在 1 到 10 个字符',
+            max: 15,
+            message: '长度在 1 到 15个字符',
             trigger: 'blur',
           },
         ],

+ 158 - 153
src/views/tenantManage/tenantUnit/index.vue

@@ -5,96 +5,107 @@
       <div class="left">
         <div>
           <a class="" style="margin-right: 30px">租户单位配置列表</a>
-          <el-button icon="el-icon-plus" type="success" @click="addItem()" :disabled="store.state.authorities.indexOf('新增')==-1">
+          <el-button
+            icon="el-icon-plus"
+            type="success"
+            @click="addItem()"
+            :disabled="store.state.authorities.indexOf('新增') == -1"
+          >
             新增
           </el-button>
         </div>
-
-        
       </div>
 
       <div class="right">
         <el-button type="primary">全部导出</el-button>
-
-        <el-button type="primary"  @click="DataReportExport()" :disabled="store.state.authorities.indexOf('导出')==-1">导出</el-button>
+        <el-button
+          type="primary"
+        >
+          导出
+        </el-button>
+
+        <!-- <el-button
+          type="primary"
+          @click="DataReportExport()"
+          :disabled="store.state.authorities.indexOf('导出') == -1"
+        >
+          导出
+        </el-button> -->
       </div>
     </div>
 
     <div class="filter-container mb-10">
       <div style="margin-top: 20px">
-          <div class="filter-item">
-            租户名称:
-            <el-input
-              v-model="tenantName"
-              placeholder="请输入内容"
-              style="width: 150px"
-               :disabled="store.state.authorities.indexOf('查询')==-1"
-            ></el-input>
-          </div>
-          <div class="filter-item">
-            负责人:
-            <el-input
-              v-model="tenantManager"
-              placeholder="请输入内容"
-              style="width: 150px"
-               :disabled="store.state.authorities.indexOf('查询')==-1"
-            ></el-input>
-          </div>
-           <div class="filter-item">
-            客户类型:
-            <el-select
-              v-model="tenantType"
-              placeholder="请选择"
-              style="width: 150px"
-              clearable
-              :disabled="store.state.authorities.indexOf('查询')==-1"
-            >
-              <el-option label="试用租户" :value="0"></el-option>
-              <el-option label="正式租户" :value="1"></el-option>
-            </el-select>
-          </div>
-           <div class="filter-item">
-            状态:
-            <el-select
-              v-model="status"
-              placeholder="请选择"
-              style="width: 200px"
-              clearable
-              :disabled="store.state.authorities.indexOf('查询')==-1"
-            >
-              <el-option label="正常" :value="0"></el-option>
-              <el-option label="停用" :value="1"></el-option>
-            </el-select>
-          </div>
-          
-      
-          <div class="filter-item planOutage">
-            选择时间范围:
-            <el-date-picker
-              v-model="dateTime"
-              type="datetimerange"
-              range-separator="至"
-              start-placeholder="开始日期"
-              end-placeholder="结束日期"
-              style="width: auto"
-              :disabled="store.state.authorities.indexOf('查询')==-1"
-            ></el-date-picker>
-          </div>
-         
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            @click="Select()"
-            class="search-button"
-            :disabled="store.state.authorities.indexOf('查询')==-1"
+        <div class="filter-item">
+          租户名称:
+          <el-input
+            v-model="tenantName"
+            placeholder="请输入内容"
+            style="width: 150px"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-input>
+        </div>
+        <div class="filter-item">
+          负责人:
+          <el-input
+            v-model="tenantManager"
+            placeholder="请输入内容"
+            style="width: 150px"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-input>
+        </div>
+        <div class="filter-item">
+          客户类型:
+          <el-select
+            v-model="tenantType"
+            placeholder="请选择"
+            style="width: 150px"
+            clearable
+            :disabled="store.state.authorities.indexOf('查询') == -1"
           >
-            查询
-          </el-button>
+            <el-option label="试用租户" :value="0"></el-option>
+            <el-option label="正式租户" :value="1"></el-option>
+          </el-select>
+        </div>
+        <div class="filter-item">
+          状态:
+          <el-select
+            v-model="status"
+            placeholder="请选择"
+            style="width: 200px"
+            clearable
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          >
+            <el-option label="正常" :value="0"></el-option>
+            <el-option label="停用" :value="1"></el-option>
+          </el-select>
         </div>
 
+        <div class="filter-item planOutage">
+          选择时间范围:
+          <el-date-picker
+            v-model="dateTime"
+            type="datetimerange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            style="width: auto"
+            :disabled="store.state.authorities.indexOf('查询') == -1"
+          ></el-date-picker>
+        </div>
+
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          @click="Select()"
+          class="search-button"
+          :disabled="store.state.authorities.indexOf('查询') == -1"
+        >
+          查询
+        </el-button>
+      </div>
     </div>
 
-    
     <!-- 筛选end -->
 
     <!-- 表格start -->
@@ -109,7 +120,7 @@
       <el-table-column
         prop="tenantName"
         label="租户名称"
-          min-width="140px"
+        min-width="140px"
       ></el-table-column>
       <el-table-column
         prop="tenantManager"
@@ -121,47 +132,47 @@
         label="负责人手机号"
         min-width="125px"
       ></el-table-column>
-      <el-table-column
-        prop="tenantType"
-        label="客户类型"
-        min-width="80px"
-      >
-      <template #default="scope">
+      <el-table-column prop="tenantType" label="客户类型" min-width="80px">
+        <template #default="scope">
           <span>
-            {{
-              scope.row.tenantType === '0'
-                ? '使用租户': '正式租户'
-            }}
+            {{ scope.row.tenantType === '0' ? '使用租户' : '正式租户' }}
           </span>
         </template>
       </el-table-column>
-      <el-table-column prop="geoPosition" label="地理位置"  min-width="160px"></el-table-column>
+      <el-table-column
+        prop="geoPosition"
+        label="地理位置"
+        min-width="160px"
+      ></el-table-column>
       <el-table-column prop="status" label="状态" width="">
         <template #default="scope">
           <span
             :style="{
-              color:
-                scope.row.status == '0'
-                  ? '#8DCF6E':'#FF747B'
+              color: scope.row.status == '0' ? '#8DCF6E' : '#FF747B',
             }"
           >
-            {{
-              scope.row.status === '0'
-                ? '正常': '停用'
-            }}
+            {{ scope.row.status === '0' ? '正常' : '停用' }}
           </span>
         </template>
       </el-table-column>
 
-      <el-table-column prop="systemName" label="系统平台"  min-width="100px"></el-table-column>
-            <el-table-column prop="tenantTerm" label="到期时间"  min-width="110px"></el-table-column>
+      <el-table-column
+        prop="systemName"
+        label="系统平台"
+        min-width="100px"
+      ></el-table-column>
+      <el-table-column
+        prop="tenantTerm"
+        label="到期时间"
+        min-width="110px"
+      ></el-table-column>
       <el-table-column fixed="right" label="操作" width="80">
         <template #default="scope">
           <el-button
             type="text"
             size="small"
             @click.prevent="editRow(scope.row)"
-            :disabled="store.state.authorities.indexOf('修改')==-1"
+            :disabled="store.state.authorities.indexOf('修改') == -1"
           >
             编辑
           </el-button>
@@ -188,15 +199,15 @@
     <!-- 分页start -->
     <div class="paginationBlock">
       <el-pagination
-          v-model:currentPage="page"
-          :page-sizes="[15, 20, 25, 30]"
-          :page-size="pageSize"
-          layout="total, sizes, prev, pager, next, jumper"
-          :total="total"
-          @size-change="handleSizeChange"
-          @current-change="handleCurrentChange"
-          background
-        ></el-pagination>
+        v-model:currentPage="page"
+        :page-sizes="[15, 20, 25, 30]"
+        :page-size="pageSize"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="total"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        background
+      ></el-pagination>
     </div>
 
     <!-- 分页end -->
@@ -235,34 +246,29 @@ export default defineComponent({
     const pageSize = ref(15)
     const total = ref(0)
 
-    const status=ref('')
-    const tenantType=ref('')
-    const tenantName=ref('')
-    const tenantManager=ref('')
-    // const status=ref('')
-
-    // const dateTime = ref([
-    //   new Date(2021, 8, 10, 10, 10),
-    //   new Date(2021, 10, 11, 10, 10),
-    // ])
-     const dateTime = ref('')
+    const status = ref('')
+    const tenantType = ref('')
+    const tenantName = ref('')
+    const tenantManager = ref('')
+
+    const dateTime = ref('')
     const select = ref(1)
 
-    const tabPosition = ref('one')
     const input = ref('')
     const region = ref()
 
     // 添加操作
     const addItem = () => {
       tableItem.value = {
-        siteId: '',
-        time: ['', ''],
-        startTime: '',
-        endTime: '',
-        phone: '',
-        contacts: '',
-        planType: '',
-        type: '',
+        tenantName: '',
+        tenantManager: '',
+        tenantTerm: 3,
+        geoPosition: '',
+        tenantType: '',
+        phoneNumber: '',
+        systemName: '',
+        email: '',
+        address: '',
       }
       dialogTitle.value = '新增'
       showDialog.value = true
@@ -271,15 +277,18 @@ export default defineComponent({
     const editRow = (row) => {
       console.log(row)
       tableItem.value = {
-        id: row.id,
-        siteId: row.siteId,
-        time: [row.startTime, row.endTime],
-        startTime: row.startTime,
-        endTime: row.endTime,
-        phone: row.phone,
-        contacts: row.contacts,
-        planType: row.planType,
-        type: row.type,
+        id:row.id,
+        tenantName: row.tenantName,
+        tenantManager: row.tenantManager,
+        tenantTerm: row.tenantTerm=='永久有效'?3:4,
+        value1:row.tenantTerm,
+        geoPosition: row.geoPosition,
+        tenantType: Number(row.tenantType),
+        phoneNumber: row.phoneNumber,
+        systemName: row.systemName,
+        email: row.email,
+        address: row.address,
+        remark:row.remark
       }
       dialogTitle.value = '编辑'
       showDialog.value = true
@@ -289,7 +298,8 @@ export default defineComponent({
     const closeDialog = (flag) => {
       if (flag) {
         // 重新刷新表格内容
-        this.fetchData()
+        // this.fetchData()
+        console.log(1)
       }
       showDialog.value = false
       Select()
@@ -322,13 +332,12 @@ export default defineComponent({
         .getTenantData({
           size: pageSize.value,
           page: currentPage.value,
-          startTime: time[0]?time[0]:'',
-          endTime: time[1]?time[1]:'',
-          status:status.value,
+          startTime: time[0] ? time[0] : '',
+          endTime: time[1] ? time[1] : '',
+          status: status.value,
           tenantType: tenantType.value,
-          tenantName:tenantName.value,
-          tenantManager:tenantManager.value
-          
+          tenantName: tenantName.value,
+          tenantManager: tenantManager.value,
         })
         .then((requset) => {
           if (requset.status === 'SUCCESS') {
@@ -342,7 +351,6 @@ export default defineComponent({
             })
             tableData.value = requset.data.records
             total.value = requset.data.total
-     
           } else {
             ElMessage.error(requset.msg)
           }
@@ -373,12 +381,10 @@ export default defineComponent({
       return 'background:#FAFAFA;'
     }
     //处理状态状态值变色
-  
-
-     const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
+    const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
       row, column, rowIndex
       // console.log(row, column, rowIndex)
-    
+
       if (columnIndex) {
         // return `text-align:left;cursor:pointer;`
       } else {
@@ -386,15 +392,15 @@ export default defineComponent({
       }
     }
 
-     //导出
+    //导出
     const DataReportExport = () => {
       store.commit('TimeAll_function', dateTime.value)
       const time = store.state.Time_Data
       api
         .outagePlanListExport({
-           type: region.value,
-          startTime: time[0]?time[0]:'',
-          endTime: time[1]?time[1]:'',
+          type: region.value,
+          startTime: time[0] ? time[0] : '',
+          endTime: time[1] ? time[1] : '',
         })
         .then((requset) => {
           if (requset.status === 'SUCCESS') {
@@ -412,7 +418,7 @@ export default defineComponent({
       cellStyle,
       headClass,
       goVariableList,
-     
+
       handleDelete,
       cancelEvent,
       closeDialog,
@@ -425,7 +431,7 @@ export default defineComponent({
       total,
       pageSize,
       currentPage,
-       handleSizeChange,
+      handleSizeChange,
       handleCurrentChange,
 
       tenantType,
@@ -435,7 +441,6 @@ export default defineComponent({
       status,
 
       showDialog,
-      tabPosition,
       select,
       dateTime,
       tableItem,
@@ -443,7 +448,7 @@ export default defineComponent({
       input,
       region,
 
-      DataReportExport
+      DataReportExport,
     }
   },
 })