wangmengwei hai 1 día
pai
achega
faffb9c965

+ 1 - 0
ruoyi-ui/package.json

@@ -70,6 +70,7 @@
     "vue-count-to": "1.0.13",
     "vue-cropper": "0.5.5",
     "vue-h265-player": "^0.0.24",
+    "vue-lunar-full-calendar": "^1.3.2",
     "vue-masonry": "^0.16.0",
     "vue-meta": "2.4.0",
     "vue-router": "3.4.9",

+ 130 - 12
ruoyi-ui/src/views/monitor/online/index.vue

@@ -1,14 +1,14 @@
 <template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
-      <el-form-item label="登录地址" prop="ipaddr">
+  <div class="app-container inghse">
+    <el-form style="background-color: #fff;padding: 10px;padding-top: 20px; padding-bottom: 0; border-radius: 10px;margin-bottom: 20px;" :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
+      <!-- <el-form-item label="登录地址" prop="ipaddr">
         <el-input
           v-model="queryParams.ipaddr"
           placeholder="请输入登录地址"
           clearable
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="用户名称" prop="userName">
         <el-input
           v-model="queryParams.userName"
@@ -18,12 +18,96 @@
         />
       </el-form-item>
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+       <el-button style="background-color: #03BF8A; border-color: #03BF8A;" type="primary"  size="mini" @click="handleQuery">搜索</el-button>
+       <el-button  size="mini" @click="resetQuery">重置</el-button>
       </el-form-item>
-
     </el-form>
-    <el-table
+
+    <div class="infinite-list" :style="dynamicStyle">
+      <el-row :gutter="10" style="margin: 0; ">
+        <el-col   :span="6" v-for="(item,index) in list.slice((pageNum-1)*pageSize,pageNum*pageSize)" :key="index">
+          <div class="section_11 flex-col" style="position: relative;">
+                    <div class="section_12 flex-row" style="justify-content: space-between;">
+                      <div style="display: flex;width: 82%;">
+                        <div class="text-wrapper_14 flex-col">
+                          <span class="text_25">{{((pageNum - 1) * pageSize + index + 1)}}</span>
+                        </div>
+                        <div style="width: 84%; display: flex;">
+                          <el-tooltip class="item" effect="dark" :content="item.userName" placement="top-start">
+                          <span class="text_26">{{item.userName}}</span>
+                          </el-tooltip>
+                          <img
+                           @click="handleForceLogout(item)" v-hasPermi="['monitor:online:forceLogout']"
+                            class="thumbnail_14"
+                            referrerpolicy="no-referrer"
+                            style="cursor: pointer;"
+                            src="../../../assets/images/icon_htgl_rylb_bjs.png"
+                          />
+                        </div>
+                      </div>
+                      <!-- <div>
+                         <el-switch v-model="item.status" active-value="0" inactive-value="1" @change="handleStatusChange(item)"></el-switch>
+                      </div> -->
+
+                    </div>
+                    <div class="text-wrapper_15 ">
+                      <div style="display: flex">
+                        <p class="paragraph_5">会话编号:</p>
+                        <el-tooltip class="item" effect="dark" :content="'会话编号:' + item.tokenId" placement="left-start">
+                        <p class="paragraph_5">{{item.tokenId}}</p>
+                        </el-tooltip>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">主机:</p>
+                        <el-tooltip class="item" effect="dark" :content="'主机:' + item.ipaddr" placement="left-start">
+                        <p class="paragraph_5">{{item.ipaddr}}</p>
+                        </el-tooltip>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">登录地点:</p>
+                       <el-tooltip class="item" effect="dark" :content="'登录地点:' + item.loginLocation" placement="left-start">
+                       <p class="paragraph_5">{{item.loginLocation}}</p>
+                       </el-tooltip>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">浏览器:</p>
+                       <el-tooltip class="item" effect="dark" :content="'浏览器:' + item.browser" placement="left-start">
+                       <p class="paragraph_5">{{item.browser}}</p>
+                       </el-tooltip>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">操作系统:</p>
+                       <el-tooltip class="item" effect="dark" :content="'浏览器:' + item.os" placement="left-start">
+                       <p class="paragraph_5">{{item.os}}</p>
+                       </el-tooltip>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">登录时间:</p>
+                       <el-tooltip class="item" effect="dark" :content="'登录时间:' + item.loginTime" placement="left-start">
+                       <p class="paragraph_5">{{item.loginTime}}</p>
+                       </el-tooltip>
+                      </div>
+                    </div>
+                    <div class="section_13 flex-row justify-between">
+                      <div class="text-wrapper_16 flex-col">
+                        <el-tooltip class="item" effect="dark" :content="item.deptName" placement="left-start">
+                        <span class="text_27" v-if="item.deptName != null">{{item.deptName}}</span>
+                        <span class="text_27" v-if="item.deptName == null">暂无部门</span>
+                         </el-tooltip>
+                      </div>
+                    </div>
+                   <!-- <div style="display: flex;" class="njgsebott">
+                      <p @click="handleDelete(item)" v-hasPermi="['system:user:remove']">删除信息</p>
+                      <p @click="handleResetPwd(item)" v-hasPermi="['system:user:resetPwd']">重置密码</p>
+                      <p @click="handleAuthRole(item)" v-hasPermi="['system:user:edit']">分配角色</p>
+                    </div> -->
+                  </div>
+        </el-col>
+      </el-row>
+    </div>
+
+
+    <!-- <el-table
       v-loading="loading"
       :data="list.slice((pageNum-1)*pageSize,pageNum*pageSize)"
       style="width: 100%;"
@@ -56,7 +140,7 @@
           >强退</el-button>
         </template>
       </el-table-column>
-    </el-table>
+    </el-table> -->
 
     <pagination v-show="total>0" :total="total" :page.sync="pageNum" :limit.sync="pageSize" />
   </div>
@@ -76,17 +160,37 @@ export default {
       // 表格数据
       list: [],
       pageNum: 1,
-      pageSize: 8,
+      pageSize: 32,
       // 查询参数
       queryParams: {
         ipaddr: undefined,
         userName: undefined
-      }
+      },
+      tableMaxHeight:200
     }
   },
   created() {
     this.getList()
+    window.onresize = () => {
+           	      this.changeTableMaxHeight()
+           	    }
+           	    this.changeTableMaxHeight()
   },
+  computed: {
+    dynamicStyle() {
+      return {
+        overflow:'auto',
+        height:  this.tableMaxHeight + 'px',
+      }
+    }
+    },
+    mounted() {
+
+    	window.onresize = () => {
+    	          this.changeTableMaxHeight()
+    	        }
+    	        this.changeTableMaxHeight()
+    },
   methods: {
     /** 查询登录日志列表 */
     getList() {
@@ -115,7 +219,21 @@ export default {
         this.getList()
         this.$modal.msgSuccess("强退成功")
       }).catch(() => {})
-    }
+    },
+    // 获取屏幕高度
+                showFilterForm () {
+                      this.filterActive = !this.filterActive
+                      this.changeTableMaxHeight()
+                    },
+                    changeTableMaxHeight () {
+                      let height = document.body.offsetHeight // 网页可视区域高度
+                      // if (this.filterActive) {
+                      //   this.tableMaxHeight = height - 320
+                      // } else {
+                        this.tableMaxHeight = height - 250
+                      // }
+                      console.log(height)
+                    }
   }
 }
 </script>

+ 1 - 1
ruoyi-ui/src/views/shipinggaoj/algorithmSet/index.vue

@@ -234,7 +234,7 @@ export default {
       // 查询参数
       queryParams: {
         pageNum: 1,
-        pageSize: 8,
+        pageSize: 32,
         algorithmNum: null,
         algorithmName: null,
         algorithmDescription: null,

+ 273 - 24
ruoyi-ui/src/views/shipinggaoj/clockSet/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="app-container">
+  <div class="app-container inghse">
     <div style="background-color: #fff;padding: 20px;border-radius: 10px; padding-bottom: 0;">
       <p
         style="margin: 0; font-weight: 800;font-size: 16px;color: #343434;display: flex;align-items: center;margin-bottom: 20px;border-left: 6px solid #03BF8A;margin-left: -20px;">
@@ -8,8 +8,9 @@
       </p>
       <div style="padding-bottom: 0;margin-bottom: 20px;">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="108px">
-      <el-form-item label="上午上班时间" prop="clockBeginAm">
-        <el-time-picker  v-model="queryParams.clockBeginAm" value-format="HH:mm:ss" format="HH:mm:ss" :picker-options="{'selectableRange':`${startime ? startime + ':00' : '00:00:00'}-23:59:59`}" style="width:180px" size="mini" placeholder="结束时间" />
+      <el-form-item label="模板名称" prop="clockName">
+         <el-input  v-model="queryParams.clockName"  placeholder="请输入内容" />
+        <!-- <el-time-picker  v-model="queryParams.clockName" value-format="HH:mm:ss" format="HH:mm:ss" :picker-options="{'selectableRange':`${startime ? startime + ':00' : '00:00:00'}-23:59:59`}" style="width:180px" size="mini" placeholder="结束时间" /> -->
       </el-form-item>
       <el-form-item>
         <el-button style="background-color: #03BF8A; border-color: #03BF8A;" type="primary" size="mini"  @click="handleQuery">查询 </el-button>
@@ -23,7 +24,7 @@
       <div style="display: flex; justify-content: space-between;">
         <p style="margin: 0; font-weight: 800;font-size: 16px;color: #343434;display: flex;align-items: center;margin-bottom: 20px;border-left: 6px solid #03BF8A;">
           <!-- <img src="../../../assets/images/icon_htgl_btzs.png" alt="" style="width: 16px;height: 20px;"> -->
-         <span style="margin-left: 10px;">上班时间列表</span>
+         <span style="margin-left: 10px;">计划模板列表</span>
         </p>
         <div>
       <el-col :span="1.5">
@@ -70,8 +71,86 @@
       <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
     </el-row>
 
-    <el-table :height="tableMaxHeight" v-loading="loading" :data="clockSetList" @selection-change="handleSelectionChange">
+    <div class="infinite-list" :style="dynamicStyle">
+      <el-row :gutter="10" style="margin: 0; " v-if="clockSetList.length !=0">
+        <el-col   :span="6" v-for="(item,index) in clockSetList" :key="index">
+          <div class="section_11 flex-col" style="position: relative; padding-left: 0; padding-right: 0; padding-bottom: 0;">
+                    <div class="section_12 flex-row" style="height: 30px;  justify-content:flex-start;padding: 0 10px;">
+                      <div  @click="handleSelectionChange(item)" style="">
+                        <img
+                          class="thumbnail_21"
+                          referrerpolicy="no-referrer"
+                          src="../../../assets/images/icon_lby_gx_normal.png"
+                           v-show="!item.isnum && isgsow"
+                        />
+                        <img
+                          class="thumbnail_21"
+                          referrerpolicy="no-referrer"
+                          src="../../../assets/images/icon_lby_gx_selcted.png"
+                          v-show="item.isnum && isgsow"
+                        />
+                      </div>
+                      <div style="display: flex;width: 82%; margin-top: 1px;">
+                        <div style="width: 100%; display: flex;">
+                          <el-tooltip class="item" effect="dark" :content="item.clockName" placement="top-start">
+                          <span class="text_26" style="margin-top: 0; height: 15px; line-height: 14px;">{{item.clockName}}</span>
+                          </el-tooltip>
+                          <img
+                           @click="handleUpdatet(item)" v-hasPermi="['system:user:edit']"
+                            class="thumbnail_14"
+                            referrerpolicy="no-referrer"
+                            style="cursor: pointer;"
+                            src="../../../assets/images/icon_htgl_rylb_bjs.png"
+                          />
+                        </div>
+                      </div>
+                      <div>
+                         <!-- <el-switch v-model="item.status" active-value="0" inactive-value="1" @change="handleStatusChange(item)"></el-switch> -->
+                      </div>
+
+                    </div>
+                    <div class="text-wrapper_15 ingsjlegsng " style="margin: 0; margin-top: 10px; padding: 0 10px; margin-top: 0; margin-bottom: 10px; margin-left: 25px;">
+                      <div style="display: flex">
+                        <p class="paragraph_5">上午上班时间:</p>
+                        <!-- <el-tooltip class="item" effect="dark" :content="'视频地址:' + item.algorithmThreshold" placement="left-start"> -->
+                        <p class="paragraph_5" >{{item.clockBeginAm}}</p>
+                        <!-- </el-tooltip> -->
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">下午下班时间:</p>
+                        <!-- <el-tooltip class="item" effect="dark" :content="'视频地址:' + item.algorithmThreshold" placement="left-start"> -->
+                        <p class="paragraph_5" >{{item.clockEndAm}}</p>
+                        <!-- </el-tooltip> -->
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">下午上班时间:</p>
+                        <!-- <el-tooltip class="item" effect="dark" :content="'视频地址:' + item.algorithmThreshold" placement="left-start"> -->
+                        <p class="paragraph_5" >{{item.clockBeginPm}}</p>
+                        <!-- </el-tooltip> -->
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">下午下班时间:</p>
+                        <!-- <el-tooltip class="item" effect="dark" :content="'视频地址:' + item.algorithmThreshold" placement="left-start"> -->
+                        <p class="paragraph_5" >{{item.clockEndPm}}</p>
+                        <!-- </el-tooltip> -->
+                      </div>
+                    </div>
+                    <div style="display: flex;" class="njgsebott njgsebottinghe ">
+                      <p style="color: red;" @click="handleDelete(item)" v-hasPermi="['manage:clockSet:remove']">删除</p>
+                      <p style="border-right: none; color: #03BF8A;" @click="handleUpdate(item)" v-hasPermi="['manage:clockSet:edit']">编辑</p>
+                      <!-- <p @click="handleAuthRole(item)" v-hasPermi="['system:user:edit']">分配角色</p> -->
+                    </div>
+                  </div>
+        </el-col>
+      </el-row>
+      <div v-if='clockSetList.length == 0'>
+                  <el-empty :image-size="200"></el-empty>
+                </div>
+    </div>
+
+    <!-- <el-table :height="tableMaxHeight" v-loading="loading" :data="clockSetList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="模板名称" align="center" prop="clockName" />
       <el-table-column label="上午上班时间" align="center" prop="clockBeginAm" width="180">
         <template slot-scope="scope">
           <span>{{ scope.row.clockBeginAm }}</span>
@@ -92,7 +171,7 @@
           <span>{{ scope.row.clockEndPm }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="备注" align="center" prop="remark" />
+
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button size="mini" style="width: 42px;height: 26px;
@@ -103,23 +182,10 @@
           <el-button size="mini" type="text" style="width: 42px;height: 26px;background: #FFF1EA;
                                          border-radius: 4px;border: 1px solid #FE570E;color: #FE570E;"
             @click="handleDelete(scope.row)" v-hasPermi="['manage:clockSet:remove']">删除</el-button>
-         <!-- <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['manage:clockSet:edit']"
-          >修改</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['manage:clockSet:remove']"
-          >删除</el-button> -->
+
         </template>
       </el-table-column>
-    </el-table>
+    </el-table> -->
 
     <pagination
       v-show="total>0"
@@ -167,6 +233,28 @@
     <!-- <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
 
     </el-dialog> -->
+    <el-drawer
+      title="查看日期"
+      :visible.sync="opentime"
+      direction="rtl"
+      custom-class="demo-drawer"
+      ref="drawer"
+      :size="580"
+      :modal="false"
+      >
+      <div class="demo-drawer__content">
+        <el-calendar v-model="value">
+            <template slot="dateCell" slot-scope="{ date, data }">
+              <div class="date-content" @click="issh(date)">
+                <span class="text">{{ getDay(date) }}</span>
+                <span v-if="isWeek(date)" class="rest">休</span>
+                <span v-if="isWeekt(date)" class="rest" style="width: 26px; height: 26px; line-height: 26px;">补班</span>
+              </div>
+            </template>
+          </el-calendar>
+
+        </div>
+        </el-drawer>
   </div>
 </template>
 
@@ -181,6 +269,7 @@ export default {
       loading: true,
       // 选中数组
       ids: [],
+      value: new Date(),
       // 非单个禁用
       single: true,
       // 非多个禁用
@@ -195,6 +284,7 @@ export default {
       title: "",
       // 是否显示弹出层
       open: false,
+      opentime:false,
       // 查询参数
       queryParams: {
         pageNum: 1,
@@ -226,6 +316,7 @@ export default {
                 ],
       },
       tableMaxHeight:'200',
+      isgsow:true,
     }
   },
   created() {
@@ -235,6 +326,14 @@ export default {
     	    }
     	    this.changeTableMaxHeight()
   },
+  computed: {
+    dynamicStyle() {
+      return {
+        overflow:'auto',
+        height:  this.tableMaxHeight + 'px',
+      }
+    }
+    },
   mounted() {
   	window.onresize = () => {
   	          this.changeTableMaxHeight()
@@ -242,11 +341,54 @@ export default {
   	        this.changeTableMaxHeight()
   },
   methods: {
+    // 标注今天日期
+        getDay(date) {
+          // this.gettime(date)
+          return date.getDate()
+        },
+       gettime(row){
+         const date = new Date(row);
+                         const year = date.getFullYear();
+                         const month = String(date.getMonth() + 1).padStart(2, '0');
+                         const day = String(date.getDate()).padStart(2, '0');
+        return year+'-' + month+'-' +day
+       },
+       issh(data){
+         console.log(this.gettime(data))
+       },
+        // 判断是否周六日
+        isWeek(date) {
+          // console.log(this.gettime(date))
+          // 1. if else普通写法
+          // if (date.getDay() === 6 || date.getDay() === 0) {
+          //   return true
+          // } else {
+          //   return false
+          // }
+          // 2.优化:三元表达式写法
+          // console.log(date.getDay() === 6 || date.getDay() === 0)
+          return date.getDay() === 6 || date.getDay() === 0
+        },
+        isWeekt(date){
+          // console.log(this.gettime(date))
+          // 1. if else普通写法
+          let nhgse= [{time:'2025-08-12',name:'中秋节'},{time:'2025-08-15',name:'中秋节'},]
+          var index = nhgse.findIndex(item => item.time=== this.gettime(date))
+          // 2.优化:三元表达式写法
+          return index != -1
+        },
+
+    handleUpdatet(){
+    this.opentime = true
+    },
     /** 查询打卡时间设置列表 */
     getList() {
       this.loading = true
       listClockSet(this.queryParams).then(response => {
         this.clockSetList = response.rows
+        this.clockSetList.filter(rou=>{
+          rou.isnum = false
+        })
         this.total = response.total
         this.loading = false
       })
@@ -284,9 +426,23 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.clockSetId)
-      this.single = selection.length!==1
-      this.multiple = !selection.length
+      this.isgsow = false
+      selection.isnum = !selection.isnum
+      this.isgsow = true
+      let nhseg= []
+      this.clockSetList.filter(rou=>{
+        if(rou.isnum == true){
+          nhseg.push(rou)
+        }
+      })
+      console.log(nhseg)
+      this.ids = nhseg.map(item => item.clockSetId)
+      console.log(this.ids,nhseg)
+      this.single = nhseg.length!==1
+      this.multiple = !nhseg.length
+      // this.ids = selection.map(item => item.clockSetId)
+      // this.single = selection.length!==1
+      // this.multiple = !selection.length
     },
     /** 新增按钮操作 */
     handleAdd() {
@@ -360,3 +516,96 @@ export default {
   }
 }
 </script>
+<style lang="scss" scoped>
+.select-box {
+  display: flex;
+  justify-content: flex-end;
+}
+
+::v-deep .el-calendar-day {
+  height:  auto;
+ }
+::v-deep .el-calendar-table__row td::v-deep .el-calendar-table tr td:first-child, ::v-deep .el-calendar-table__row td.prev{
+  border:none;
+ }
+.date-content {
+  height: 40px;
+  text-align: center;
+  line-height: 40px;
+  font-size: 14px;
+}
+.date-content .rest {
+  color: #fff;
+  border-radius: 50%;
+  background: rgb(250, 124, 77);
+  width: 20px;
+  height: 20px;
+  line-height: 20px;
+  display: inline-block;
+  font-size: 12px;
+  margin-left: 10px;
+}
+.date-content .text{
+  width: 20px;
+  height: 20px;
+  line-height: 20px;
+ display: inline-block;
+
+}
+::v-deep .el-calendar-table td.is-selected .text{
+   background: #409eff;
+   color: #fff;
+   border-radius: 50%;
+ }
+::v-deep .el-calendar__header {
+   // display: none
+ }
+</style>
+
+<style lang="scss">
+  .njgsebottinghe{
+    margin: 0 !important;
+    height: 40px;
+    p{
+      height: 40px !important;
+      line-height: 40px !important;
+    }
+  }
+  .ingsjlegsng{
+    .paragraph_5{
+     font-family: PingFang SC;
+     font-weight: 500;
+     font-size: 13px;
+     color: #222327;
+    }
+  }
+  .ngosie{
+    .el-form-item--medium .el-form-item__label{
+      line-height: 19px;
+    }
+  }
+  .renset{
+     margin-bottom: 0;
+  }
+  .el-table .el-table__header-wrapper th, .el-table .el-table__fixed-header-wrapper th{
+    background-color:#F5F6F8;
+  }
+  .el-checkbox__input.is-checked .el-checkbox__inner{
+    background-color: #03BF8A;
+    border-color: #03BF8A;
+  }
+  .el-checkbox__input.is-indeterminate .el-checkbox__inner{
+    background-color: #03BF8A;
+    border-color: #03BF8A;
+  }
+  .qucheu{
+    .el-form-item--small.el-form-item{
+      border: 1px  solid #E6E6E6;
+    }
+    .el-input__inner{
+      border:0;
+    }
+  }
+
+
+</style>

+ 97 - 23
ruoyi-ui/src/views/system/config/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="app-container">
+  <div class="app-container inghse">
     <el-form style="background-color: #fff;padding: 10px;padding-top: 20px; padding-bottom: 0; border-radius: 10px;margin-bottom: 20px;" :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="参数名称" prop="configName">
         <el-input
@@ -10,7 +10,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="参数键名" prop="configKey">
+     <!-- <el-form-item label="参数键名" prop="configKey">
         <el-input
           v-model="queryParams.configKey"
           placeholder="请输入参数键名"
@@ -18,8 +18,8 @@
           style="width: 240px"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
-      <el-form-item label="系统内置" prop="configType">
+      </el-form-item> -->
+      <!-- <el-form-item label="系统内置" prop="configType">
         <el-select v-model="queryParams.configType" placeholder="系统内置" clearable>
           <el-option
             v-for="dict in dict.type.sys_yes_no"
@@ -28,8 +28,8 @@
             :value="dict.value"
           />
         </el-select>
-      </el-form-item>
-      <el-form-item label="创建时间">
+      </el-form-item> -->
+     <!-- <el-form-item label="创建时间">
         <el-date-picker
           v-model="dateRange"
           style="width: 240px"
@@ -39,25 +39,24 @@
           start-placeholder="开始日期"
           end-placeholder="结束日期"
         ></el-date-picker>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        <el-button style="background-color: #03BF8A; border-color: #03BF8A;" type="primary"  size="mini" @click="handleQuery">搜索</el-button>
+               <el-button  size="mini" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
 
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
         <el-button
-          type="primary"
+          type="success"
           plain
-          icon="el-icon-plus"
           size="mini"
           @click="handleAdd"
           v-hasPermi="['system:config:add']"
         >新增</el-button>
       </el-col>
-      <el-col :span="1.5">
+      <!-- <el-col :span="1.5">
         <el-button
           type="success"
           plain
@@ -67,12 +66,11 @@
           @click="handleUpdate"
           v-hasPermi="['system:config:edit']"
         >修改</el-button>
-      </el-col>
+      </el-col> -->
       <el-col :span="1.5">
         <el-button
           type="danger"
           plain
-          icon="el-icon-delete"
           size="mini"
           :disabled="multiple"
           @click="handleDelete"
@@ -83,7 +81,6 @@
         <el-button
           type="warning"
           plain
-          icon="el-icon-download"
           size="mini"
           @click="handleExport"
           v-hasPermi="['system:config:export']"
@@ -93,7 +90,6 @@
         <el-button
           type="danger"
           plain
-          icon="el-icon-refresh"
           size="mini"
           @click="handleRefreshCache"
           v-hasPermi="['system:config:remove']"
@@ -102,7 +98,75 @@
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange">
+    <div class="infinite-list" :style="dynamicStyle">
+     <el-row :gutter="10" style="margin: 0; ">
+        <el-col     :span="6" v-for="(item,index) in configList" :key="index">
+          <div class="section_11 flex-col" style="position: relative;">
+                    <div class="section_12 flex-row" style="justify-content: space-between;">
+                      <div style="display: flex;width: 100%;">
+                        <div class="text-wrapper_14 flex-col">
+                          <span class="text_25">{{item.configId}}</span>
+                        </div>
+                        <div style="width: 84%; display: flex;">
+                          <el-tooltip class="item" effect="dark" :content="item.configName" placement="top-start">
+                          <span class="text_26" style="height: 30px;">{{item.configName}}</span>
+                          </el-tooltip>
+                          <img
+                           @click="handleUpdate(item)" v-hasPermi="['system:config:edit']"
+                            class="thumbnail_14"
+                            referrerpolicy="no-referrer"
+                            style="cursor: pointer;"
+                            src="../../../assets/images/icon_htgl_rylb_bjs.png"
+                          />
+                          <img
+                           @click="handleDelete(item)" v-hasPermi="['system:config:remove']"
+                            class="thumbnail_14"
+                            referrerpolicy="no-referrer"
+                            style="cursor: pointer;"
+                            src="../../../assets/images/icon_lby_gdtc_del.png"
+                          />
+                        </div>
+                      </div>
+                     <!-- <div>
+                         <el-switch v-model="item.status" active-value="0" inactive-value="1" @change="handleStatusChange(item)"></el-switch>
+                      </div> -->
+
+                    </div>
+                    <div class="text-wrapper_15 ">
+                      <div style="display: flex">
+                        <p class="paragraph_5">参数键名:</p>
+                        <el-tooltip class="item" effect="dark" :content="'参数键名:' + item.configKey" placement="left-start">
+                        <p class="paragraph_5">{{item.configKey}}</p>
+                        </el-tooltip>
+                      </div>
+                      <!-- <div style="display: flex">
+                        <p class="paragraph_5">参数键值:</p>
+                        <el-tooltip class="item" effect="dark" :content="'参数键值:' + item.configValue" placement="left-start">
+                        <p class="paragraph_5">{{item.configValue}}</p>
+                        </el-tooltip>
+                      </div> -->
+                      <div style="display: flex">
+                        <p class="paragraph_5">系统内置:</p>
+                        <p class="paragraph_5">{{item.configType == 'Y'?'是' : '否'}}</p>
+                      </div>
+                      <div style="display: flex">
+                        <p class="paragraph_5">创建时间:</p>
+                       <el-tooltip class="item" effect="dark" :content="'创建时间:' + item.createTime" placement="left-start">
+                       <p class="paragraph_5">{{item.createTime}}</p>
+                       </el-tooltip>
+                      </div>
+                    </div>
+                   <!-- <div style="display: flex;" class="njgsebott">
+                      <p @click="handleDelete(item)" v-hasPermi="['system:role:remove']">删除信息</p>
+                      <p @click="handleDataScope(item)"  v-hasPermi="['system:role:edit']">数据权限</p>
+                      <p @click="handleAuthUser(item)"  v-hasPermi="['system:role:edit']">分配用户</p>
+                    </div> -->
+                  </div>
+        </el-col>
+      </el-row>
+    </div>
+
+<!--    <el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="参数主键" align="center" prop="configId" />
       <el-table-column label="参数名称" align="center" prop="configName" :show-overflow-tooltip="true" />
@@ -137,7 +201,7 @@
           >删除</el-button>
         </template>
       </el-table-column>
-    </el-table>
+    </el-table> -->
 
     <pagination
       v-show="total>0"
@@ -148,7 +212,16 @@
     />
 
     <!-- 添加或修改参数配置对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-drawer
+          :title="title"
+          :visible.sync="open"
+          direction="rtl"
+          custom-class="demo-drawer"
+          ref="drawer"
+          :size="330"
+          :modal="false"
+          >
+          <div class="demo-drawer__content">
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="参数名称" prop="configName">
           <el-input v-model="form.configName" placeholder="请输入参数名称" />
@@ -172,11 +245,12 @@
           <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
         </el-form-item>
       </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
+      <div slot="footer" class="dialog-footer" style="padding: 0 20px; float: right;">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
       </div>
-    </el-dialog>
+      </el-drawer>
   </div>
 </template>
 

+ 1 - 1
ruoyi-ui/src/views/system/user/index.vue

@@ -106,7 +106,7 @@
                             </div>
                             <div class="section_13 flex-row justify-between">
                               <div class="text-wrapper_16 flex-col">
-                                <el-tooltip class="item" effect="dark" content="潜山市数据局技术部门" placement="left-start">
+                                <el-tooltip class="item" effect="dark" :content="item.dept != null? item.dept.deptName :''" placement="left-start">
                                 <span class="text_27" v-if="item.dept != null">{{item.dept.deptName}}</span>
                                 <span class="text_27" v-if="item.dept == null">暂无部门</span>
                                  </el-tooltip>