|
@@ -1,326 +0,0 @@
|
|
|
-<template>
|
|
|
- <el-dialog
|
|
|
- :title="dialogTitle"
|
|
|
- v-model="showDialog"
|
|
|
- width="900px"
|
|
|
- @open="open()"
|
|
|
- @close="closeDialog(0)"
|
|
|
- >
|
|
|
- <el-form
|
|
|
- ref="formInfo"
|
|
|
- :model="form"
|
|
|
- class="demo-form-inline"
|
|
|
- label-width="150px"
|
|
|
- :rules="rules"
|
|
|
- >
|
|
|
- <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="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="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="请选择"
|
|
|
- >
|
|
|
- <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 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 />
|
|
|
-
|
|
|
- <div style="text-align: right">
|
|
|
- <el-button @click="closeDialog(0)">取消</el-button>
|
|
|
- <el-button type="primary" @click="submitForm()">保存</el-button>
|
|
|
- </div>
|
|
|
- </el-form>
|
|
|
- </el-dialog>
|
|
|
-</template>
|
|
|
-<script>
|
|
|
-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: {
|
|
|
- show_Dialog: Boolean,
|
|
|
- dialogTitle: String,
|
|
|
- itemInfo: {
|
|
|
- type: Object,
|
|
|
- default: function () {
|
|
|
- return {}
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- setup(props, { emit }) {
|
|
|
- const store = useStore()
|
|
|
- const beginTime = ref('')
|
|
|
- const showDialog = ref(false)
|
|
|
- const form = ref({})
|
|
|
- const formInfo = ref(null)
|
|
|
-
|
|
|
- const roleValid = (rule, value, callback) => {
|
|
|
- rule
|
|
|
- if (value.length === 0) {
|
|
|
- callback(new Error('角色不能为空'))
|
|
|
- } else {
|
|
|
- callback()
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- // 保存操作
|
|
|
- const submitForm = () => {
|
|
|
- formInfo.value.validate((valid) => {
|
|
|
- if (valid) {
|
|
|
-
|
|
|
- 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.addTenantData(form.value).then((requset) => {
|
|
|
- if (requset.status === 'SUCCESS') {
|
|
|
- ElMessage.success({
|
|
|
- message: '新增成功',
|
|
|
- type: 'success',
|
|
|
- })
|
|
|
- closeDialog()
|
|
|
- } else {
|
|
|
- ElMessage.error(requset.msg)
|
|
|
- }
|
|
|
- })
|
|
|
- } else {
|
|
|
- api.updateTenantData(form.value).then((requset) => {
|
|
|
- if (requset.status === 'SUCCESS') {
|
|
|
- ElMessage.success({
|
|
|
- message: '修改成功',
|
|
|
- type: 'success',
|
|
|
- })
|
|
|
- closeDialog()
|
|
|
- } else {
|
|
|
- ElMessage.error(requset.msg)
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- } else {
|
|
|
- console.log('error submit!!')
|
|
|
- return false
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- 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()
|
|
|
- }
|
|
|
-
|
|
|
- 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
|
|
|
- }
|
|
|
-
|
|
|
- return {
|
|
|
- pickerEndDate,
|
|
|
- roleValid,
|
|
|
- submitForm,
|
|
|
- closeDialog,
|
|
|
- open,
|
|
|
-
|
|
|
- store,
|
|
|
- beginTime,
|
|
|
- showDialog,
|
|
|
-
|
|
|
- checked: true,
|
|
|
- form,
|
|
|
- formInfo,
|
|
|
-
|
|
|
- rules: {
|
|
|
- tenantName: [
|
|
|
- { 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' },
|
|
|
- ],
|
|
|
- geoPosition: [
|
|
|
- { required: true, message: '请选输入地理位置', trigger: 'blur' },
|
|
|
- ],
|
|
|
-
|
|
|
- tenantType: [
|
|
|
- { required: true, message: '请输入租户类型', trigger: 'blur' },
|
|
|
- ],
|
|
|
- phoneNumber: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '请输入负责人手机号码',
|
|
|
- trigger: 'blur',
|
|
|
- },
|
|
|
- {
|
|
|
- validator: validatorPhone,
|
|
|
- message: '输入的电话号码不正确',
|
|
|
- trigger: 'blur',
|
|
|
- },
|
|
|
- ],
|
|
|
- systemName: [
|
|
|
- { required: true, message: '请选择系统平台', trigger: 'blur' },
|
|
|
- ],
|
|
|
- email: [
|
|
|
- { required: true, message: '请输入邮箱地址', trigger: 'blur' },
|
|
|
-
|
|
|
- {
|
|
|
- validator: isEmail,
|
|
|
- message: '输入的邮箱地址不正确',
|
|
|
- trigger: 'blur',
|
|
|
- },
|
|
|
- ],
|
|
|
- address: [
|
|
|
- { required: true, message: '请输入联系地址', trigger: 'blur' },
|
|
|
- {
|
|
|
- min: 1,
|
|
|
- max: 15,
|
|
|
- message: '长度在 1 到 15个字符',
|
|
|
- trigger: 'blur',
|
|
|
- },
|
|
|
- ],
|
|
|
- },
|
|
|
- }
|
|
|
- },
|
|
|
-})
|
|
|
-</script>
|
|
|
-
|
|
|
-<style scoped lang="scss">
|
|
|
-.el-input,
|
|
|
-.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>
|
|
|
-</style>
|