ming há 3 anos atrás
pai
commit
0c2aaa686c

+ 22 - 12
src/api/tenantManage/systemConfig.js

@@ -1,6 +1,6 @@
 import request from '@/utils/request'
 
-//单位配置-查询
+//配置-查询
 export function getTenantData(params) {
     return request({
         url: '/tenantConfig/getTenantData',
@@ -9,6 +9,15 @@ export function getTenantData(params) {
     })
 }
 
+//系统配置-查询
+export function getMiddleConfigList(params) {
+    return request({
+        url: '/sysTenantConfig/getMiddleConfigList',
+        method: 'GET',
+        params,
+    })
+}
+
 //单位配置-注销
 export function plannedOutageDel(params) {
     return request({
@@ -18,10 +27,18 @@ export function plannedOutageDel(params) {
     })
 }
 
-//单位配置-新增
-export function addTenantData(params) {
+//系统配置-新增
+export function addMiddleConfig(params) {
     return request({
-        url: '/tenantConfig/addTenantData',
+        url: '/sysTenantConfig/addMiddleConfig',
+        method: 'POST',
+        data: params,
+    })
+}
+//系统配置-修改
+export function updaMiddleConfig(params) {
+    return request({
+        url: '/sysTenantConfig/updaMiddleConfig',
         method: 'POST',
         data: params,
     })
@@ -38,14 +55,7 @@ export function getPlatformBoxList(params) {
 
 
 
-//单位配置-修改
-export function updateTenantData(params) {
-    return request({
-        url: '/tenantConfig/updateTenantData',
-        method: 'POST',
-        data: params,
-    })
-}
+
 
 
 //单位配置-导出

+ 229 - 211
src/views/tenantManage/systemConfig/dialogComponent.vue

@@ -1,126 +1,146 @@
 <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"
+  <div class="systemCard">
+    <el-dialog
+      :title="dialogTitle"
+      v-model="showDialog"
+      @open="open()"
+      @close="closeDialog(0)"
     >
-      <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-option
-            v-for="(item, index) in getPlatformBoxList"
-            :key="index"
-            :label="item.platformName"
-            :value="item.id"
-          ></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)"
+      <el-card class="box-card grid-content">
+        <el-tabs
+          v-model="activeName"
+          class="demo-tabs"
+          @tab-click="handleClick"
         >
-          地图
-        </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>
+          <!-- 常规配置start -->
+          <el-tab-pane label="常规配置" name="first">
+            <el-form
+              ref="formInfo"
+              :model="form"
+              class="demo-form-inline"
+              label-width="150px"
+              :rules="rules"
+            >
+              <el-form-item label="主页标题:" prop="middleTitle">
+                <el-input v-model="form.middleTitle"></el-input>
+              </el-form-item>
+              <el-form-item label="主页logo:" prop="homeLogo">
+                <el-input v-model="form.homeLogo"></el-input>
+              </el-form-item>
+
+              <el-form-item label="首页请求地址:" prop="homePageUrl">
+                <el-input v-model="form.homePageUrl"></el-input>
+                <!-- <el-select v-model="form.homePageUrl" placeholder="请选择">
+                  <el-option label="地址1" :value="1"></el-option>
+                  <el-option label="地址2" :value="2"></el-option>
+                </el-select> -->
+              </el-form-item>
+
+              <el-form-item label="主页导航栏:" prop="homeLayout">
+                <el-radio-group v-model="form.homeLayout">
+                  <el-radio :label="1" value="1">顶部导航栏</el-radio>
+                  <el-radio :label="2" value="2">左侧导航栏</el-radio>
+                </el-radio-group>
+              </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-tab-pane>
+          <!-- 常规配置end -->
+
+          <!-- 登录页配置start -->
+          <el-tab-pane label="登录页配置" name="second">
+            <el-form
+              ref="formInfo2"
+              :model="form"
+              class="demo-form-inline"
+              label-width="150px"
+              :rules="rules"
+            >
+              <el-form-item label="登录页标题:" prop="tenantName">
+                <el-input v-model="form.tenantName"></el-input>
+              </el-form-item>
+              <el-form-item label="登录页logo:" prop="tenantManager">
+                <el-input v-model="form.tenantManager"></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="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>
+              <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-tab-pane>
+          <!-- 修登录页配置end -->
+
+          <!-- 中间页配置start -->
+          <el-tab-pane label="中间页配置" name="third">
+            <el-form
+              ref="formInfo3"
+              :model="form"
+              class="demo-form-inline"
+              label-width="150px"
+              :rules="rules"
+            >
+              <el-form-item label="是否开启中间页:" prop="tenantName">
+                <el-switch v-model="value" size="large" />
+              </el-form-item>
+              <el-form-item label="中间页logo:" prop="tenantManager">
+                <el-input v-model="form.tenantManager"></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="tenantName">
+                <el-input v-model="form.tenantName"></el-input>
+              </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-tab-pane>
+          <!-- 中间页配置end -->
+
+          <!-- 其他配置start -->
+          <el-tab-pane label="其他配置" name="forth">
+            其他配置设计开发中...
+          </el-tab-pane>
+          <!-- 其他配置end -->
+        </el-tabs>
+      </el-card>
+    </el-dialog>
+  </div>
 </template>
 <script>
 import { useStore } from 'vuex'
-import { defineComponent, ref, watchEffect ,onMounted} from 'vue'
-import * as api from '@/api/tenantManage/tenantUnit.js'
+import { defineComponent, ref, watchEffect, onMounted } from 'vue'
+import * as api from '@/api/tenantManage/systemConfig.js'
 import { ElMessage } from 'element-plus'
 // import { parseTime } from '@/utils'
-import { validatorPhone, parseTime, isEmail } from '@/utils'
+// import { validatorPhone, parseTime, isEmail } from '@/utils'
 export default defineComponent({
   name: 'DialogComponent',
   emits: ['closeDialog'],
   props: {
     show_Dialog: Boolean,
+    configStatus: Boolean,
     dialogTitle: String,
     itemInfo: {
       type: Object,
@@ -135,8 +155,11 @@ export default defineComponent({
     const showDialog = ref(false)
     const form = ref({})
     const formInfo = ref(null)
+    const value = ref(true)
 
-     const getPlatformBoxList = ref([])
+    const activeName = ref('first')
+
+    const getPlatformBoxList = ref([])
 
     const roleValid = (rule, value, callback) => {
       rule
@@ -149,33 +172,16 @@ export default defineComponent({
 
     // 保存操作
     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) => {
+          form.value.tenantId=1006
+          if (props.configStatus) {
+            alert('已配置修改提交')
+            api.updaMiddleConfig(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
-                  message: '新增成功',
+                  message: '修改配置成功',
                   type: 'success',
                 })
                 closeDialog()
@@ -184,10 +190,11 @@ export default defineComponent({
               }
             })
           } else {
-            api.updateTenantData(form.value).then((requset) => {
+             alert('未配置新增提交')
+            api.addMiddleConfig(form.value).then((requset) => {
               if (requset.status === 'SUCCESS') {
                 ElMessage.success({
-                  message: '修改成功',
+                  message: '新增配置成功',
                   type: 'success',
                 })
                 closeDialog()
@@ -204,12 +211,15 @@ export default defineComponent({
     }
 
     const open = () => {
-      form.value = props.itemInfo;
-      console.log('form.value')
-      console.log(form.value)
+      setTimeout(function () {
+        form.value = props.itemInfo
+        console.log('子组件中form.value')
+        console.log(form.value)
+      }, 500)
+
+      optionselect()
 
-       optionselect()
-       
+      //  alert(props.configStatus)
     }
 
     // 关闭弹框
@@ -227,7 +237,6 @@ export default defineComponent({
     function optionselect() {
       api.getPlatformBoxList().then((requset) => {
         if (requset.status === 'SUCCESS') {
-     
           getPlatformBoxList.value = requset.data
         } else {
           ElMessage.error(requset.msg)
@@ -235,8 +244,6 @@ export default defineComponent({
       })
     }
 
-
-
     watchEffect((fn, options) => {
       fn, options
       showDialog.value = props.show_Dialog
@@ -248,9 +255,7 @@ export default defineComponent({
       return time.getTime() <= Date.now() - timeRange * 1
     }
 
-    onMounted(() => {
-     
-    })
+    onMounted(() => {})
 
     return {
       pickerEndDate,
@@ -268,68 +273,64 @@ export default defineComponent({
       formInfo,
       getPlatformBoxList,
 
-      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' },
+      activeName,
+      value,
 
-          {
-            validator: isEmail,
-            message: '输入的邮箱地址不正确',
-            trigger: 'blur',
-          },
-        ],
-        address: [
-          { required: true, message: '请输入联系地址', trigger: 'blur' },
-          {
-            min: 1,
-            max: 15,
-            message: '长度在 1 到 15个字符',
-            trigger: 'blur',
-          },
-        ],
+      rules: {
+          middleTitle: [
+            { required: true, message: '请输入主页标题', trigger: 'blur' },
+            {
+              min: 1,
+              max: 30,
+              message: '长度在 1 到 30个字符',
+              trigger: 'blur',
+            },
+          ],
+          homeLogo: [
+            { required: true, message: '请输入主页logo', trigger: 'blur' },
+           
+          ],
+          homePageUrl: [
+            { required: true, message: '请输入主页请求地址', trigger: 'blur' },
+          ],
+          homeLayout: [
+            { required: true, message: '请选则主页导航布局', trigger: 'change' },
+          ],
+        //   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',
+        //     },
+        //   ],
       },
     }
   },
@@ -337,6 +338,20 @@ export default defineComponent({
 </script>
  
 <style scoped lang="scss">
+.el-card {
+  --el-card-border-color: var(--el-border-color-light, #fff);
+  border: 0px solid red;
+}
+.el-card.is-always-shadow {
+  box-shadow: none;
+}
+::v-deep .el-card__body {
+  padding: 0 !important;
+}
+
+::v-deep .el-tabs__header {
+  margin-bottom: 30px;
+}
 .el-input,
 .el-select,
 .el-date-editor.el-input,
@@ -344,9 +359,9 @@ export default defineComponent({
   width: 240px;
 }
 
-.el-form-item {
-  margin: 0 0 20px !important;
-}
+// .el-form-item {
+//   margin: 0 0 20px !important;
+// }
 // label样式
 .el-form-item__label {
   width: 120px !important;
@@ -359,4 +374,7 @@ export default defineComponent({
 }
 </style>
 <style>
+.systemCard .el-dialog__body {
+  padding-top: 10px !important;
+}
 </style>

+ 54 - 49
src/views/tenantManage/systemConfig/index.vue

@@ -18,11 +18,7 @@
 
       <div class="right">
         <el-button type="primary">全部导出</el-button>
-        <el-button
-          type="primary"
-        >
-          导出
-        </el-button>
+        <el-button type="primary">导出</el-button>
 
         <!-- <el-button
           type="primary"
@@ -54,7 +50,7 @@
             :disabled="store.state.authorities.indexOf('查询') == -1"
           ></el-input>
         </div>
-        
+
         <el-button
           type="primary"
           icon="el-icon-search"
@@ -78,34 +74,21 @@
       :cell-style="cellStyle"
     >
       <el-table-column type="index" label="序号" width="50px"></el-table-column>
-      <el-table-column
-        prop="tenantName"
-        label="租户名称"
-  
-      ></el-table-column>
-      <el-table-column
-        prop="tenantManager"
-        label="负责人"
-    
-      ></el-table-column>
+      <el-table-column prop="tenantName" label="租户名称"></el-table-column>
+      <el-table-column prop="tenantManager" label="负责人"></el-table-column>
       <el-table-column
         prop="phoneNumber"
         label="负责人手机号"
- 
-      ></el-table-column>
-     
-      <el-table-column
-        prop="platformName"
-        label="系统平台"
-   
       ></el-table-column>
-      
-      <el-table-column fixed="right" label="操作"  width="100">
+
+      <el-table-column prop="platformName" label="系统平台"></el-table-column>
+
+      <el-table-column fixed="right" label="操作" width="100">
         <template #default="scope">
           <el-button
             type="text"
             size="small"
-            @click.prevent="editRow(scope.row)"
+            @click.prevent="configRow(scope.row)"
             :disabled="store.state.authorities.indexOf('配置') == -1"
           >
             配置
@@ -150,6 +133,7 @@
     <dialog-component
       :dialog-title="dialogTitle"
       :item-info="tableItem"
+      :config-status="configStatus"
       @closeDialog="closeDialog"
       :show_Dialog="showDialog"
     ></dialog-component>
@@ -171,9 +155,10 @@ export default defineComponent({
   setup() {
     const store = useStore()
 
-    const tableItem = ref()
+    const tableItem = ref({})
     const dialogTitle = ref('')
     const showDialog = ref(false)
+    const configStatus = ref(false)
 
     const tableData = ref()
     const currentPage = ref(1)
@@ -196,7 +181,7 @@ export default defineComponent({
       tableItem.value = {
         tenantName: '',
         tenantManager: '',
-        tenantTerm: 3,
+        tenantTerm: 1,
         geoPosition: '',
         tenantType: '',
         phoneNumber: '',
@@ -207,24 +192,12 @@ export default defineComponent({
       dialogTitle.value = '新增'
       showDialog.value = true
     }
-    // 编辑操作
-    const editRow = (row) => {
+    // 配置操作
+    const configRow = (row) => {
+      getMiddleConfigList(row.id)
       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: Number(row.systemName),
-        email: row.email,
-        address: row.address,
-        remark:row.remark
-      }
-      dialogTitle.value = '编辑'
+
+      dialogTitle.value = '配置'
       showDialog.value = true
     }
 
@@ -258,10 +231,39 @@ export default defineComponent({
       console.log('cancel!')
     }
 
-    //查询设备列表
+    //查询系统配置单个
+    function getMiddleConfigList(params) {
+      api
+        .getMiddleConfigList({
+          tenantId: params,
+        })
+        .then((requset) => {
+          if (requset.status === 'SUCCESS') {
+            console.log('requset.data')
+            console.log(requset.data)
+
+            tableItem.value=requset.data[0];
+
+            if (requset.data.length) {
+              console.log('已配置')
+              
+               console.log('tableItem.value')
+              console.log(tableItem.value)
+
+              configStatus.value = true
+            } else {
+              
+               console.log('暂无配置')
+              configStatus.value = false
+            }
+          } else {
+            ElMessage.error(requset.msg)
+          }
+        })
+    }
+
+    //查询系统配置列表
     function Select() {
-      // store.commit('TimeAll_function', dateTime.value)
-      // const time = store.state.Time_Data
       api
         .getTenantData({
           size: pageSize.value,
@@ -352,7 +354,7 @@ export default defineComponent({
       handleDelete,
       cancelEvent,
       closeDialog,
-      editRow,
+      configRow,
       addItem,
       Select,
 
@@ -379,6 +381,9 @@ export default defineComponent({
       region,
 
       DataReportExport,
+
+      getMiddleConfigList,
+      configStatus,
     }
   },
 })