Commit 590074cc74e96f723cd64dcd647af010f8e6af40
1 parent
5768c200
feat: 修改布局
Showing
22 changed files
with
184 additions
and
114 deletions
.env.development
.env.production
.env.staging
index.html
| @@ -9,7 +9,7 @@ | @@ -9,7 +9,7 @@ | ||
| 9 | content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" | 9 | content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" |
| 10 | /> | 10 | /> |
| 11 | <link rel="icon" href="public/favicon.ico" /> | 11 | <link rel="icon" href="public/favicon.ico" /> |
| 12 | - <title>酒精测试一体机管理系统</title> | 12 | + <title>青浦巴士岗前检测系统</title> |
| 13 | <!--[if lt IE 11 | 13 | <!--[if lt IE 11 |
| 14 | ]><script> | 14 | ]><script> |
| 15 | window.location.href = "/html/ie.html"; | 15 | window.location.href = "/html/ie.html"; |
package.json
src/api/big_view/big_view.js
| 1 | import request from '@/utils/request' | 1 | import request from '@/utils/request' |
| 2 | 2 | ||
| 3 | -export function querySignInfoByType(type) { | 3 | +export function querySignInfoByType(query) { |
| 4 | return request({ | 4 | return request({ |
| 5 | - url: `/big/view/queryNumberByType/${type}`, | ||
| 6 | - method: 'GET' | 5 | + url: `/big/view/queryNumberByType`, |
| 6 | + method: 'GET', | ||
| 7 | + params:query | ||
| 7 | }) | 8 | }) |
| 8 | } | 9 | } |
| 9 | 10 | ||
| 10 | -export function queryLineInfo() { | 11 | +export function queryLineInfo(dateKey) { |
| 11 | return request({ | 12 | return request({ |
| 12 | - url: `/big/view/queryLineInfo`, | 13 | + url: `/big/view/queryLineInfo/${dateKey}`, |
| 13 | method: 'GET' | 14 | method: 'GET' |
| 14 | }) | 15 | }) |
| 15 | } | 16 | } |
| 17 | + | ||
| 18 | +export function querySignDetails(query) { | ||
| 19 | + return request({ | ||
| 20 | + url: "/big/view/querySignDetails", | ||
| 21 | + method: 'GET', | ||
| 22 | + params: query | ||
| 23 | + }) | ||
| 24 | +} |
src/components/ConstForm/index.vue
| 1 | <template> | 1 | <template> |
| 2 | - <div v-loading="loading"> | 2 | + <div v-loading="loading" element-loading-text="加载详情..." element-loading-svg-view-box="-10, -10, 50, 50" |
| 3 | + element-loading-background="#062a5ac5"> | ||
| 3 | <div class="person-info"> | 4 | <div class="person-info"> |
| 4 | <div class="font-box"> | 5 | <div class="font-box"> |
| 5 | <span class="label"> | 6 | <span class="label"> |
| @@ -11,43 +12,45 @@ | @@ -11,43 +12,45 @@ | ||
| 11 | </div> | 12 | </div> |
| 12 | <div class="font-box"> | 13 | <div class="font-box"> |
| 13 | <span class="label"> | 14 | <span class="label"> |
| 14 | - 工号: | 15 | + 姓名: |
| 15 | </span> | 16 | </span> |
| 16 | <div class="content-box"> | 17 | <div class="content-box"> |
| 17 | - <span class="content-text"> {{ info.jobCode }}</span> | 18 | + <span class="content-text"> {{ info.name }}</span> |
| 18 | </div> | 19 | </div> |
| 19 | </div> | 20 | </div> |
| 20 | - | ||
| 21 | <div class="font-box"> | 21 | <div class="font-box"> |
| 22 | <span class="label"> | 22 | <span class="label"> |
| 23 | - 工号: | 23 | + 路牌: |
| 24 | </span> | 24 | </span> |
| 25 | <div class="content-box"> | 25 | <div class="content-box"> |
| 26 | - <span class="content-text"> {{ info.jobCode }}</span> | 26 | + <span class="content-text"> {{ info.lpName }}</span> |
| 27 | </div> | 27 | </div> |
| 28 | </div> | 28 | </div> |
| 29 | - | ||
| 30 | <div class="font-box"> | 29 | <div class="font-box"> |
| 31 | <span class="label"> | 30 | <span class="label"> |
| 32 | - 工号: | 31 | + 车队: |
| 33 | </span> | 32 | </span> |
| 34 | <div class="content-box"> | 33 | <div class="content-box"> |
| 35 | - <span class="content-text"> {{ info.jobCode }}</span> | 34 | + <span class="content-text"> {{ info.fleetName }}</span> |
| 36 | </div> | 35 | </div> |
| 37 | </div> | 36 | </div> |
| 38 | </div> | 37 | </div> |
| 39 | <div style="display: flex;align-items: center;margin-bottom: 7px; color: #0CFCFC; font-size: 13px; margin-top: 15px;"> | 38 | <div style="display: flex;align-items: center;margin-bottom: 7px; color: #0CFCFC; font-size: 13px; margin-top: 15px;"> |
| 40 | 打卡详情</div> | 39 | 打卡详情</div> |
| 41 | - <el-table :data="tableData" style="width: 100%;background-color: aliceblue;"> | ||
| 42 | - <el-table-column prop="date" label="打卡时间" width="120" /> | ||
| 43 | - <el-table-column prop="address" label="打卡地点" /> | ||
| 44 | - <el-table-column prop="result" label="打卡结果" /> | ||
| 45 | - </el-table> | 40 | + <div class="mainTable"> |
| 41 | + <el-table :data="info.signInfos" style="width: 100%;"> | ||
| 42 | + <el-table-column prop="planDate" label="计划打卡" width="78" max-height="60" /> | ||
| 43 | + <el-table-column prop="signDate" label="实际打卡" width="78" max-height="60" /> | ||
| 44 | + <el-table-column prop="address" label="打卡地点" width="74" max-height="60" /> | ||
| 45 | + <el-table-column prop="result" label="打卡结果" width="65" max-height="60" /> | ||
| 46 | + </el-table> | ||
| 47 | + </div> | ||
| 48 | + | ||
| 46 | </div> | 49 | </div> |
| 47 | </template> | 50 | </template> |
| 48 | 51 | ||
| 49 | <script setup> | 52 | <script setup> |
| 50 | - | 53 | +import { querySignDetails } from '@/api/big_view/big_view.js'; |
| 51 | const loading = ref(false); | 54 | const loading = ref(false); |
| 52 | const props = defineProps({ | 55 | const props = defineProps({ |
| 53 | // 请求参数 | 56 | // 请求参数 |
| @@ -58,6 +61,10 @@ const props = defineProps({ | @@ -58,6 +61,10 @@ const props = defineProps({ | ||
| 58 | showFlag: { | 61 | showFlag: { |
| 59 | type: Boolean, | 62 | type: Boolean, |
| 60 | required: true | 63 | required: true |
| 64 | + }, | ||
| 65 | + currentDateKey: { | ||
| 66 | + type: String, | ||
| 67 | + require: true | ||
| 61 | } | 68 | } |
| 62 | }) | 69 | }) |
| 63 | /** 签到信息 */ | 70 | /** 签到信息 */ |
| @@ -69,37 +76,19 @@ info.value = { | @@ -69,37 +76,19 @@ info.value = { | ||
| 69 | fleetName: "" | 76 | fleetName: "" |
| 70 | } | 77 | } |
| 71 | 78 | ||
| 72 | -const tableData = ref( | ||
| 73 | - [ | ||
| 74 | - { | ||
| 75 | - date: "今天 10:33:33", | ||
| 76 | - result: "正常", | ||
| 77 | - address: "背景" | ||
| 78 | - }, | ||
| 79 | - { | ||
| 80 | - date: "今天 10:33:33", | ||
| 81 | - result: "正常", | ||
| 82 | - address: "背景" | ||
| 83 | - }, | ||
| 84 | - { | ||
| 85 | - date: "今天 10:33:33", | ||
| 86 | - result: "正常", | ||
| 87 | - address: "背景" | ||
| 88 | - } | ||
| 89 | - ] | ||
| 90 | -) | ||
| 91 | /** 处理信息 */ | 79 | /** 处理信息 */ |
| 92 | -const handleInfo = (val) => { | 80 | +const handleInfo = (jobCode, date) => { |
| 93 | loading.value = true | 81 | loading.value = true |
| 94 | - setTimeout(() => { | 82 | + querySignDetails({ jobCode: jobCode, date: date }).then(res => { |
| 95 | loading.value = false; | 83 | loading.value = false; |
| 96 | info.value = { | 84 | info.value = { |
| 97 | - name: "张三", | ||
| 98 | - lpName: "路牌", | ||
| 99 | - jobCode: val, | ||
| 100 | - fleetName: "三车队" | 85 | + name: res.data.name, |
| 86 | + lpName: res.data.lpName, | ||
| 87 | + jobCode: res.data.jobCode, | ||
| 88 | + fleetName: res.data.fleetName, | ||
| 89 | + signInfos: res.data.signInfos | ||
| 101 | } | 90 | } |
| 102 | - }, 1000); | 91 | + }) |
| 103 | } | 92 | } |
| 104 | 93 | ||
| 105 | const reset = () => { | 94 | const reset = () => { |
| @@ -115,7 +104,7 @@ watch( | @@ -115,7 +104,7 @@ watch( | ||
| 115 | () => props.showFlag, | 104 | () => props.showFlag, |
| 116 | (count, prevCount) => { | 105 | (count, prevCount) => { |
| 117 | if (props.showFlag) { | 106 | if (props.showFlag) { |
| 118 | - handleInfo(props.jobCode); | 107 | + handleInfo(props.jobCode, props.currentDateKey); |
| 119 | } else { | 108 | } else { |
| 120 | reset() | 109 | reset() |
| 121 | } | 110 | } |
| @@ -123,8 +112,65 @@ watch( | @@ -123,8 +112,65 @@ watch( | ||
| 123 | ) | 112 | ) |
| 124 | </script> | 113 | </script> |
| 125 | <style scoped lang="scss"> | 114 | <style scoped lang="scss"> |
| 115 | +:deep(.mainTable .el-table .el-table__header-wrapper th, .el-table .el-table__fixed-header-wrapper th) { | ||
| 116 | + text-align: center; | ||
| 117 | + font-weight: bold; | ||
| 118 | + color: white; | ||
| 119 | + background-color: #0359A4 !important; | ||
| 120 | + font-size: 0.5vw; | ||
| 121 | + height: 20px !important; | ||
| 122 | +} | ||
| 123 | + | ||
| 124 | +:deep(.mainTable .el-table__empty-text) { | ||
| 125 | + line-height: 30px !important; | ||
| 126 | + color: white; | ||
| 127 | + font-weight: bold; | ||
| 128 | + font-size: 0.5vw; | ||
| 129 | +} | ||
| 130 | + | ||
| 131 | +:deep(.mainTable .el-table__empty-block) { | ||
| 132 | + min-height: 30px !important; | ||
| 133 | + background-color: #041e74d5; | ||
| 134 | +} | ||
| 135 | + | ||
| 136 | +:deep(.mainTable .el-table tr) { | ||
| 137 | + background-color: #03113F; | ||
| 138 | +} | ||
| 139 | + | ||
| 140 | +:deep(.mainTable .el-table .el-table__cell) { | ||
| 141 | + padding: 1px !important; | ||
| 142 | + font-weight: bold; | ||
| 143 | +} | ||
| 144 | + | ||
| 145 | +:deep(.mainTable .el-table tbody tr:hover>td) { | ||
| 146 | + background: rgba(39, 54, 91, 0.571) !important; | ||
| 147 | +} | ||
| 148 | + | ||
| 149 | +// :deep(.mainTable .el-table th) { | ||
| 150 | +// border: 1px solid black !important; | ||
| 151 | +// border-right: none !important; | ||
| 152 | +// border-bottom: none !important; | ||
| 153 | +// } | ||
| 154 | + | ||
| 155 | +:deep(.el-table td) { | ||
| 156 | + border: 1px solid #033E72; | ||
| 157 | + border-right: none !important; | ||
| 158 | +} | ||
| 159 | + | ||
| 160 | +// 行单元格 | ||
| 161 | +:deep(.mainTable td .cell) { | ||
| 162 | + text-align: center; | ||
| 163 | + font-size: 0.5vw; | ||
| 164 | + color: white; | ||
| 165 | +} | ||
| 166 | + | ||
| 167 | +// 修改行单元格内边距 | ||
| 168 | +:deep(.mainTable .el-table .cell) { | ||
| 169 | + padding: 1px !important; | ||
| 170 | +} | ||
| 171 | + | ||
| 126 | .person-info { | 172 | .person-info { |
| 127 | - width: 300px; | 173 | + width: 320px; |
| 128 | display: flex; | 174 | display: flex; |
| 129 | flex-wrap: wrap; | 175 | flex-wrap: wrap; |
| 130 | justify-content: space-between; | 176 | justify-content: space-between; |
| @@ -146,7 +192,7 @@ watch( | @@ -146,7 +192,7 @@ watch( | ||
| 146 | 192 | ||
| 147 | .content-box { | 193 | .content-box { |
| 148 | color: white; | 194 | color: white; |
| 149 | - width: 80px; | 195 | + width: 95.5px; |
| 150 | box-sizing: border-box; | 196 | box-sizing: border-box; |
| 151 | padding: 2px; | 197 | padding: 2px; |
| 152 | text-align: center; | 198 | text-align: center; |
src/layout/components/Sidebar/Logo.vue
| @@ -30,7 +30,7 @@ defineProps({ | @@ -30,7 +30,7 @@ defineProps({ | ||
| 30 | } | 30 | } |
| 31 | }) | 31 | }) |
| 32 | 32 | ||
| 33 | -const title = ref('酒精测试一体机管理系统'); | 33 | +const title = ref('青浦巴士岗前检测系统'); |
| 34 | const settingsStore = useSettingsStore(); | 34 | const settingsStore = useSettingsStore(); |
| 35 | const sideTheme = computed(() => settingsStore.sideTheme); | 35 | const sideTheme = computed(() => settingsStore.sideTheme); |
| 36 | </script> | 36 | </script> |
src/views/driver/driver/index.vue
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 44 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 45 | </el-row> | 45 | </el-row> |
| 46 | 46 | ||
| 47 | - <el-table v-loading="loading" :data="driverList" @selection-change="handleSelectionChange"> | 47 | + <el-table v-loading="loading" :data="driverList" max-height="600px" @selection-change="handleSelectionChange"> |
| 48 | <el-table-column type="selection" width="55" align="center" /> | 48 | <el-table-column type="selection" width="55" align="center" /> |
| 49 | <el-table-column label="工号" align="center" prop="jobCode" /> | 49 | <el-table-column label="工号" align="center" prop="jobCode" /> |
| 50 | <el-table-column label="姓名" align="center" prop="personnelName" /> | 50 | <el-table-column label="姓名" align="center" prop="personnelName" /> |
src/views/eexception/eexception/index.vue
| @@ -41,7 +41,7 @@ | @@ -41,7 +41,7 @@ | ||
| 41 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 41 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 42 | </el-row> | 42 | </el-row> |
| 43 | 43 | ||
| 44 | - <el-table v-loading="loading" :data="eexceptionList" @selection-change="handleSelectionChange"> | 44 | + <el-table height="600" v-loading="loading" :data="eexceptionList" @selection-change="handleSelectionChange"> |
| 45 | <el-table-column type="selection" width="55" align="center" /> | 45 | <el-table-column type="selection" width="55" align="center" /> |
| 46 | <el-table-column label="标题" align="center" prop="title" /> | 46 | <el-table-column label="标题" align="center" prop="title" /> |
| 47 | <el-table-column label="设备号" align="center" prop="deviceId" /> | 47 | <el-table-column label="设备号" align="center" prop="deviceId" /> |
src/views/email/email/index.vue
| @@ -23,7 +23,7 @@ | @@ -23,7 +23,7 @@ | ||
| 23 | </el-col> | 23 | </el-col> |
| 24 | </el-row> | 24 | </el-row> |
| 25 | 25 | ||
| 26 | - <el-table v-loading="loading" :data="emailList" @selection-change="handleSelectionChange"> | 26 | + <el-table height="600" v-loading="loading" :data="emailList" @selection-change="handleSelectionChange"> |
| 27 | <el-table-column label="姓名" align="center" prop="name" /> | 27 | <el-table-column label="姓名" align="center" prop="name" /> |
| 28 | <el-table-column label="邮箱" align="center" prop="email" /> | 28 | <el-table-column label="邮箱" align="center" prop="email" /> |
| 29 | <el-table-column label="类型" align="center" prop="type"> | 29 | <el-table-column label="类型" align="center" prop="type"> |
src/views/equipment/equipment/index.vue
| @@ -30,11 +30,11 @@ | @@ -30,11 +30,11 @@ | ||
| 30 | v-hasPermi="['equipment:equipment:add']">新增</el-button> | 30 | v-hasPermi="['equipment:equipment:add']">新增</el-button> |
| 31 | </el-col> | 31 | </el-col> |
| 32 | <el-col :span="1.5"> | 32 | <el-col :span="1.5"> |
| 33 | - <el-button type="success" v-show="false" plain icon="Edit" :disabled="single" @click="handleUpdate" | 33 | + <el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate" |
| 34 | v-hasPermi="['equipment:equipment:edit']">修改</el-button> | 34 | v-hasPermi="['equipment:equipment:edit']">修改</el-button> |
| 35 | </el-col> | 35 | </el-col> |
| 36 | <el-col :span="1.5"> | 36 | <el-col :span="1.5"> |
| 37 | - <el-button type="danger" v-show="false" plain icon="Delete" :disabled="multiple" @click="handleDelete" | 37 | + <el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete" |
| 38 | v-hasPermi="['equipment:equipment:remove']">删除</el-button> | 38 | v-hasPermi="['equipment:equipment:remove']">删除</el-button> |
| 39 | </el-col> | 39 | </el-col> |
| 40 | <el-col :span="1.5"> | 40 | <el-col :span="1.5"> |
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 44 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 45 | </el-row> | 45 | </el-row> |
| 46 | 46 | ||
| 47 | - <el-table border v-loading="loading" :data="equipmentList" @selection-change="handleSelectionChange"> | 47 | + <el-table border height="600" v-loading="loading" :data="equipmentList" @selection-change="handleSelectionChange"> |
| 48 | <el-table-column label="序号" type="index" width="50" align="center"> | 48 | <el-table-column label="序号" type="index" width="50" align="center"> |
| 49 | <template #default="scope"> | 49 | <template #default="scope"> |
| 50 | {{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }} | 50 | {{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }} |
src/views/errorScheduling/errorScheduling/index.vue
| @@ -38,7 +38,7 @@ | @@ -38,7 +38,7 @@ | ||
| 38 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 38 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 39 | </el-row> | 39 | </el-row> |
| 40 | 40 | ||
| 41 | - <el-table v-loading="loading" :data="errorSchedulingList" @selection-change="handleSelectionChange"> | 41 | + <el-table max-height="600" v-loading="loading" :data="errorSchedulingList" @selection-change="handleSelectionChange"> |
| 42 | <el-table-column type="selection" width="55" align="center" /> | 42 | <el-table-column type="selection" width="55" align="center" /> |
| 43 | <el-table-column label="工号" align="center" prop="jobCode" /> | 43 | <el-table-column label="工号" align="center" prop="jobCode" /> |
| 44 | <el-table-column label="姓名" align="center" prop="name" /> | 44 | <el-table-column label="姓名" align="center" prop="name" /> |
src/views/home/index.vue
| @@ -25,6 +25,7 @@ | @@ -25,6 +25,7 @@ | ||
| 25 | <div class="global-info-box-container-right-number"> | 25 | <div class="global-info-box-container-right-number"> |
| 26 | <count-to ref="scrollNumber" :start-val="item.startNumber" :end-val="item.endNumber" :duration="8000" | 26 | <count-to ref="scrollNumber" :start-val="item.startNumber" :end-val="item.endNumber" :duration="8000" |
| 27 | :decimals="0" /> | 27 | :decimals="0" /> |
| 28 | + {{ item.allNumber == null ? "" : " / " + item.allNumber }} | ||
| 28 | </div> | 29 | </div> |
| 29 | </div> | 30 | </div> |
| 30 | </div> | 31 | </div> |
| @@ -69,9 +70,9 @@ | @@ -69,9 +70,9 @@ | ||
| 69 | <div v-for="(sunItem, sunIndex) in childItem.lineInfos" :key="sunItem.nbbm" class="fleet-nbbm-info-item"> | 70 | <div v-for="(sunItem, sunIndex) in childItem.lineInfos" :key="sunItem.nbbm" class="fleet-nbbm-info-item"> |
| 70 | <div v-if="sunItem.saleInfoVo != null" class="fleet-nbbm-info-have-sale"> | 71 | <div v-if="sunItem.saleInfoVo != null" class="fleet-nbbm-info-have-sale"> |
| 71 | <el-popover popper-class="fleet-popover-style" placement="top" :title="childItem.lineName" | 72 | <el-popover popper-class="fleet-popover-style" placement="top" :title="childItem.lineName" |
| 72 | - :width="300" :show-after="300" @after-enter="alterEnterHandler(sunItem.driverInfoVo.jobCode)"> | 73 | + :width="320" :show-after="200" @after-enter="alterEnterHandler(sunItem.driverInfoVo.jobCode)"> |
| 73 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.driverInfoVo.jobCode" | 74 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.driverInfoVo.jobCode" |
| 74 | - :jobCode="sunItem.driverInfoVo.jobCode" /> | 75 | + :currentDateKey="currentDateKey" :jobCode="sunItem.driverInfoVo.jobCode" /> |
| 75 | <template #reference> | 76 | <template #reference> |
| 76 | <div class="fleet-nbbm-have-sale-driver" :style="signStyleColor[sunItem.driverInfoVo.signStatus]"> | 77 | <div class="fleet-nbbm-have-sale-driver" :style="signStyleColor[sunItem.driverInfoVo.signStatus]"> |
| 77 | </div> | 78 | </div> |
| @@ -81,19 +82,19 @@ | @@ -81,19 +82,19 @@ | ||
| 81 | <span class="fleet-nbbm-have-sale-txt">{{ sunItem.nbbm }}</span> | 82 | <span class="fleet-nbbm-have-sale-txt">{{ sunItem.nbbm }}</span> |
| 82 | </div> | 83 | </div> |
| 83 | <el-popover popper-class="fleet-popover-style" placement="top" :title="childItem.lineName" | 84 | <el-popover popper-class="fleet-popover-style" placement="top" :title="childItem.lineName" |
| 84 | - :width="300" :show-after="300" @after-enter="alterEnterHandler(sunItem.saleInfoVo.jobCode)"> | 85 | + :width="320" :show-after="200" @after-enter="alterEnterHandler(sunItem.saleInfoVo.jobCode)"> |
| 85 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.saleInfoVo.jobCode" | 86 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.saleInfoVo.jobCode" |
| 86 | - :jobCode="sunItem.saleInfoVo.jobCode" /> | 87 | + :currentDateKey="currentDateKey" :jobCode="sunItem.saleInfoVo.jobCode" /> |
| 87 | <template #reference> | 88 | <template #reference> |
| 88 | <div class="fleet-nbbm-have-sale-sale" :style="signStyleColor[sunItem.saleInfoVo.signStatus]"> | 89 | <div class="fleet-nbbm-have-sale-sale" :style="signStyleColor[sunItem.saleInfoVo.signStatus]"> |
| 89 | </div> | 90 | </div> |
| 90 | </template> | 91 | </template> |
| 91 | </el-popover> | 92 | </el-popover> |
| 92 | </div> | 93 | </div> |
| 93 | - <el-popover v-else :show-after="300" @after-enter="alterEnterHandler(sunItem.driverInfoVo.jobCode)" | ||
| 94 | - placement="top" :title="childItem.lineName" popper-class="fleet-popover-style" :width="300"> | 94 | + <el-popover v-else :show-after="200" @after-enter="alterEnterHandler(sunItem.driverInfoVo.jobCode)" |
| 95 | + placement="top" :title="childItem.lineName" popper-class="fleet-popover-style" :width="320"> | ||
| 95 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.driverInfoVo.jobCode" | 96 | <ConstForm :showFlag="personSignInfo.jobCode == sunItem.driverInfoVo.jobCode" |
| 96 | - :jobCode="sunItem.driverInfoVo.jobCode" /> | 97 | + :currentDateKey="currentDateKey" :jobCode="sunItem.driverInfoVo.jobCode" /> |
| 97 | <template #reference> | 98 | <template #reference> |
| 98 | <div class="fleet-nbbm-info-no-sale" :style="signStyleColor[sunItem.driverInfoVo.signStatus]"> | 99 | <div class="fleet-nbbm-info-no-sale" :style="signStyleColor[sunItem.driverInfoVo.signStatus]"> |
| 99 | <span class="fleet-nbbm-info-no-sale-text"> | 100 | <span class="fleet-nbbm-info-no-sale-text"> |
| @@ -127,6 +128,7 @@ import icon4 from "../../assets/bigview/image-icon-3.png"; | @@ -127,6 +128,7 @@ import icon4 from "../../assets/bigview/image-icon-3.png"; | ||
| 127 | import icon5 from "../../assets/bigview/image-icon-4.png"; | 128 | import icon5 from "../../assets/bigview/image-icon-4.png"; |
| 128 | import icon6 from "../../assets/bigview/image-icon-5.png"; | 129 | import icon6 from "../../assets/bigview/image-icon-5.png"; |
| 129 | import icon1 from "../../assets/bigview/image-icon-6.png"; | 130 | import icon1 from "../../assets/bigview/image-icon-6.png"; |
| 131 | +const currentDateKey = ref(); | ||
| 130 | const loading = ref(true); | 132 | const loading = ref(true); |
| 131 | /** 签到信息 */ | 133 | /** 签到信息 */ |
| 132 | const personSignInfo = reactive( | 134 | const personSignInfo = reactive( |
| @@ -161,37 +163,43 @@ const globalInfoBoxList = reactive( | @@ -161,37 +163,43 @@ const globalInfoBoxList = reactive( | ||
| 161 | title: "设备数", | 163 | title: "设备数", |
| 162 | icon: icon1, | 164 | icon: icon1, |
| 163 | startNumber: 0, | 165 | startNumber: 0, |
| 164 | - endNumber: 0 | 166 | + endNumber: 0, |
| 167 | + allNumber: 0 | ||
| 165 | }, | 168 | }, |
| 166 | { | 169 | { |
| 167 | title: "线路数", | 170 | title: "线路数", |
| 168 | icon: icon2, | 171 | icon: icon2, |
| 169 | startNumber: 0, | 172 | startNumber: 0, |
| 170 | - endNumber: 0 | 173 | + endNumber: 0, |
| 174 | + allNumber: 0 | ||
| 171 | }, | 175 | }, |
| 172 | { | 176 | { |
| 173 | title: "车辆数", | 177 | title: "车辆数", |
| 174 | icon: icon3, | 178 | icon: icon3, |
| 175 | startNumber: 0, | 179 | startNumber: 0, |
| 176 | - endNumber: 0 | 180 | + endNumber: 0, |
| 181 | + allNumber: 0 | ||
| 177 | }, | 182 | }, |
| 178 | { | 183 | { |
| 179 | title: "售票员签到", | 184 | title: "售票员签到", |
| 180 | icon: icon4, | 185 | icon: icon4, |
| 181 | startNumber: 0, | 186 | startNumber: 0, |
| 182 | - endNumber: 0 | 187 | + endNumber: 0, |
| 188 | + allNumber: 0 | ||
| 183 | }, | 189 | }, |
| 184 | { | 190 | { |
| 185 | title: "驾驶员签到", | 191 | title: "驾驶员签到", |
| 186 | icon: icon5, | 192 | icon: icon5, |
| 187 | startNumber: 0, | 193 | startNumber: 0, |
| 188 | - endNumber: 0 | 194 | + endNumber: 0, |
| 195 | + allNumber: 0 | ||
| 189 | }, | 196 | }, |
| 190 | { | 197 | { |
| 191 | title: "辅助人员签到", | 198 | title: "辅助人员签到", |
| 192 | icon: icon6, | 199 | icon: icon6, |
| 193 | startNumber: 0, | 200 | startNumber: 0, |
| 194 | - endNumber: 0 | 201 | + endNumber: 0, |
| 202 | + allNumber: 0 | ||
| 195 | }, | 203 | }, |
| 196 | ] | 204 | ] |
| 197 | ) | 205 | ) |
| @@ -240,9 +248,20 @@ const fleetNbbmInfoContainer = ref(null); | @@ -240,9 +248,20 @@ const fleetNbbmInfoContainer = ref(null); | ||
| 240 | const scrollNumber = ref(null); | 248 | const scrollNumber = ref(null); |
| 241 | // 计算宽度初始化数据 | 249 | // 计算宽度初始化数据 |
| 242 | onMounted(() => { | 250 | onMounted(() => { |
| 243 | - handleUpdateDataRequest(); | 251 | + |
| 244 | timeTask.titleNowDateTimer = startUpdateNowDateTimerTaskScheduler(); | 252 | timeTask.titleNowDateTimer = startUpdateNowDateTimerTaskScheduler(); |
| 245 | timeTask.updateDateSchedulerTimer = startUpdateDataTaskScheduler(); | 253 | timeTask.updateDateSchedulerTimer = startUpdateDataTaskScheduler(); |
| 254 | + | ||
| 255 | + const currentTime = moment().format('HH:mm'); | ||
| 256 | + let dateKey; | ||
| 257 | + if (currentTime < '03:00') { | ||
| 258 | + dateKey = moment().subtract(1, 'day').format('YYYY-MM-DD'); | ||
| 259 | + } else { | ||
| 260 | + dateKey = moment().format("YYYY-MM-DD"); | ||
| 261 | + } | ||
| 262 | + console.log(); | ||
| 263 | + currentDateKey.value = dateKey; | ||
| 264 | + handleUpdateDataRequest(currentDateKey.value); | ||
| 246 | }) | 265 | }) |
| 247 | 266 | ||
| 248 | /** 销毁之前触发 */ | 267 | /** 销毁之前触发 */ |
| @@ -304,43 +323,42 @@ const alterEnterHandler = (val, el) => { | @@ -304,43 +323,42 @@ const alterEnterHandler = (val, el) => { | ||
| 304 | 323 | ||
| 305 | /** 监听数据更新日期 */ | 324 | /** 监听数据更新日期 */ |
| 306 | watch(timeTaskObject.updateDateObject, (val1, val2) => { | 325 | watch(timeTaskObject.updateDateObject, (val1, val2) => { |
| 307 | - // TODO 发送请求更新数据 | ||
| 308 | - handleUpdateDataRequest(); | ||
| 309 | - console.log("时间到了,需要更新数据---"); | 326 | + // 发送请求更新数据 |
| 327 | + handleUpdateDataRequest(currentDateKey.value); | ||
| 310 | }) | 328 | }) |
| 311 | 329 | ||
| 312 | /** | 330 | /** |
| 313 | * 类型 device 设备数量 line 线路数 car 车辆数 | 331 | * 类型 device 设备数量 line 线路数 car 车辆数 |
| 314 | * sale 售票员签到数量 driver 驾驶员签到 auxiliary 辅助人员签到数量 | 332 | * sale 售票员签到数量 driver 驾驶员签到 auxiliary 辅助人员签到数量 |
| 315 | */ | 333 | */ |
| 316 | -const handleUpdateDataRequest = () => { | 334 | +const handleUpdateDataRequest = (dateKey) => { |
| 317 | // 获取设备数量 | 335 | // 获取设备数量 |
| 318 | - querySignInfoByType("device").then(res => { | 336 | + querySignInfoByType({ type: "device", dateKey: dateKey }).then(res => { |
| 319 | handleGlobalInfo(res.data, 0) | 337 | handleGlobalInfo(res.data, 0) |
| 320 | }) | 338 | }) |
| 321 | // 获取线路数 | 339 | // 获取线路数 |
| 322 | - querySignInfoByType("line").then(res => { | 340 | + querySignInfoByType({ type: "line", dateKey: dateKey }).then(res => { |
| 323 | handleGlobalInfo(res.data, 1) | 341 | handleGlobalInfo(res.data, 1) |
| 324 | }) | 342 | }) |
| 325 | // 获取车辆数 | 343 | // 获取车辆数 |
| 326 | - querySignInfoByType("car").then(res => { | 344 | + querySignInfoByType({ type: "car", dateKey: dateKey }).then(res => { |
| 327 | handleGlobalInfo(res.data, 2) | 345 | handleGlobalInfo(res.data, 2) |
| 328 | }) | 346 | }) |
| 329 | // 售票员签到 | 347 | // 售票员签到 |
| 330 | - querySignInfoByType("sale").then(res => { | 348 | + querySignInfoByType({ type: "sale", dateKey: dateKey }).then(res => { |
| 331 | handleGlobalInfo(res.data, 3) | 349 | handleGlobalInfo(res.data, 3) |
| 332 | }) | 350 | }) |
| 333 | // 驾驶员签到 | 351 | // 驾驶员签到 |
| 334 | - querySignInfoByType("driver").then(res => { | 352 | + querySignInfoByType({ type: "driver", dateKey: dateKey }).then(res => { |
| 335 | handleGlobalInfo(res.data, 4) | 353 | handleGlobalInfo(res.data, 4) |
| 336 | }) | 354 | }) |
| 337 | // 辅助人员签到 | 355 | // 辅助人员签到 |
| 338 | - querySignInfoByType("auxiliary").then(res => { | 356 | + querySignInfoByType({ type: "auxiliary", dateKey: dateKey }).then(res => { |
| 339 | handleGlobalInfo(res.data, 5) | 357 | handleGlobalInfo(res.data, 5) |
| 340 | }) | 358 | }) |
| 341 | 359 | ||
| 342 | //获取车队 | 360 | //获取车队 |
| 343 | - queryLineInfo().then(res => { | 361 | + queryLineInfo(dateKey).then(res => { |
| 344 | fleetInfoList.value = res.data | 362 | fleetInfoList.value = res.data |
| 345 | nextTick(() => { | 363 | nextTick(() => { |
| 346 | const containerElement = fleetNbbmInfoContainer.value; | 364 | const containerElement = fleetNbbmInfoContainer.value; |
| @@ -373,7 +391,9 @@ const handleUpdateDataRequest = () => { | @@ -373,7 +391,9 @@ const handleUpdateDataRequest = () => { | ||
| 373 | 391 | ||
| 374 | const handleGlobalInfo = (data, num) => { | 392 | const handleGlobalInfo = (data, num) => { |
| 375 | globalInfoBoxList[num].startNumber = globalInfoBoxList[num].endNumber; | 393 | globalInfoBoxList[num].startNumber = globalInfoBoxList[num].endNumber; |
| 376 | - globalInfoBoxList[num].endNumber = data; | 394 | + globalInfoBoxList[num].endNumber = data.nowNumber; |
| 395 | + globalInfoBoxList[num].allNumber = data.allNumber; | ||
| 396 | + | ||
| 377 | } | 397 | } |
| 378 | </script> | 398 | </script> |
| 379 | 399 | ||
| @@ -425,7 +445,7 @@ const handleGlobalInfo = (data, num) => { | @@ -425,7 +445,7 @@ const handleGlobalInfo = (data, num) => { | ||
| 425 | display: flex; | 445 | display: flex; |
| 426 | align-items: center; | 446 | align-items: center; |
| 427 | justify-content: flex-end; | 447 | justify-content: flex-end; |
| 428 | - margin-top: 3%; | 448 | + margin-top: 2.9%; |
| 429 | box-sizing: border-box; | 449 | box-sizing: border-box; |
| 430 | } | 450 | } |
| 431 | } | 451 | } |
| @@ -434,9 +454,8 @@ const handleGlobalInfo = (data, num) => { | @@ -434,9 +454,8 @@ const handleGlobalInfo = (data, num) => { | ||
| 434 | .big-view-container-global-info { | 454 | .big-view-container-global-info { |
| 435 | height: 11%; | 455 | height: 11%; |
| 436 | width: 100%; | 456 | width: 100%; |
| 437 | - font-size: clamp(0.3rem, -2.531rem + 19.69vw, 1.1rem); | 457 | + font-size: clamp(0.5rem, -2.531rem + 19.69vw, 1.3rem); |
| 438 | display: flex; | 458 | display: flex; |
| 439 | - | ||
| 440 | justify-content: center; | 459 | justify-content: center; |
| 441 | align-items: center; | 460 | align-items: center; |
| 442 | 461 | ||
| @@ -462,8 +481,8 @@ const handleGlobalInfo = (data, num) => { | @@ -462,8 +481,8 @@ const handleGlobalInfo = (data, num) => { | ||
| 462 | 481 | ||
| 463 | .global-info-box-container-left { | 482 | .global-info-box-container-left { |
| 464 | // icon | 483 | // icon |
| 465 | - flex-grow: 1; | ||
| 466 | - width: 100%; | 484 | + // flex-grow: 1; |
| 485 | + // width: 100%; | ||
| 467 | height: 100%; | 486 | height: 100%; |
| 468 | display: flex; | 487 | display: flex; |
| 469 | align-items: center; | 488 | align-items: center; |
| @@ -478,9 +497,8 @@ const handleGlobalInfo = (data, num) => { | @@ -478,9 +497,8 @@ const handleGlobalInfo = (data, num) => { | ||
| 478 | } | 497 | } |
| 479 | 498 | ||
| 480 | .global-info-box-container-right { | 499 | .global-info-box-container-right { |
| 481 | - // icon | ||
| 482 | - flex-grow: 1; | ||
| 483 | - width: 100%; | 500 | + // flex-grow: 1; |
| 501 | + // width: 100%; | ||
| 484 | height: clamp(4rem, 3.713rem + 2vw, 4.1rem); | 502 | height: clamp(4rem, 3.713rem + 2vw, 4.1rem); |
| 485 | display: flex; | 503 | display: flex; |
| 486 | flex-direction: column; | 504 | flex-direction: column; |
| @@ -567,7 +585,7 @@ const handleGlobalInfo = (data, num) => { | @@ -567,7 +585,7 @@ const handleGlobalInfo = (data, num) => { | ||
| 567 | width: 100%; | 585 | width: 100%; |
| 568 | height: calc(85% - clamp(0.7rem, 0.489rem + 1.05vw, 1.2rem) * 3); | 586 | height: calc(85% - clamp(0.7rem, 0.489rem + 1.05vw, 1.2rem) * 3); |
| 569 | display: flex; | 587 | display: flex; |
| 570 | - font-size: clamp(0.6rem, -0.907rem + 5.71vw, 1.2rem); | 588 | + font-size: clamp(0.7rem, -0.907rem + 5.71vw, 1.1rem); |
| 571 | 589 | ||
| 572 | // 通用样式 | 590 | // 通用样式 |
| 573 | .fleet-common-style { | 591 | .fleet-common-style { |
| @@ -599,11 +617,12 @@ const handleGlobalInfo = (data, num) => { | @@ -599,11 +617,12 @@ const handleGlobalInfo = (data, num) => { | ||
| 599 | display: flex; | 617 | display: flex; |
| 600 | justify-content: center; | 618 | justify-content: center; |
| 601 | align-items: center; | 619 | align-items: center; |
| 620 | + font-size: clamp(0.8rem, -0.907rem + 5.71vw, 1.3rem); | ||
| 602 | } | 621 | } |
| 603 | } | 622 | } |
| 604 | 623 | ||
| 605 | .fleet-content-box { | 624 | .fleet-content-box { |
| 606 | - height: calc(100% - clamp(0.6rem, -0.907rem + 5.71vw, 1.2rem)); | 625 | + height: calc(100% - clamp(0.8rem, -0.907rem + 5.71vw, 1.3rem)); |
| 607 | width: 100%; | 626 | width: 100%; |
| 608 | overflow-y: scroll; | 627 | overflow-y: scroll; |
| 609 | overflow-x: hidden; | 628 | overflow-x: hidden; |
| @@ -614,7 +633,8 @@ const handleGlobalInfo = (data, num) => { | @@ -614,7 +633,8 @@ const handleGlobalInfo = (data, num) => { | ||
| 614 | height: auto; | 633 | height: auto; |
| 615 | 634 | ||
| 616 | .fleet-line-title { | 635 | .fleet-line-title { |
| 617 | - margin: clamp(0.8rem, -0.549rem + 4.09vw, 1.2rem) 0 clamp(0.8rem, -0.549rem + 4.09vw, 1.2rem) 0; | 636 | + margin-top: clamp(0.8rem, -0.549rem + 4.09vw, 1.2rem); |
| 637 | + margin-bottom: calc(clamp(0.8rem, -0.549rem + 4.09vw, 1.2rem) - 0.4vw); | ||
| 618 | box-sizing: border-box; | 638 | box-sizing: border-box; |
| 619 | font-weight: bold; | 639 | font-weight: bold; |
| 620 | } | 640 | } |
| @@ -759,10 +779,6 @@ const handleGlobalInfo = (data, num) => { | @@ -759,10 +779,6 @@ const handleGlobalInfo = (data, num) => { | ||
| 759 | .el-popover.fleet-popover-style { | 779 | .el-popover.fleet-popover-style { |
| 760 | border-color: #146EBD; | 780 | border-color: #146EBD; |
| 761 | background-color: #062a5ac5; | 781 | background-color: #062a5ac5; |
| 762 | - /* background: | ||
| 763 | - -webkit-linear-gradient(top, transparent 14px, blue 15px), | ||
| 764 | - -webkit-linear-gradient(left, transparent 14px, blue 15px); | ||
| 765 | - background-size: 15px 15px; */ | ||
| 766 | } | 782 | } |
| 767 | 783 | ||
| 768 | .fleet-popover-style .el-popover__title { | 784 | .fleet-popover-style .el-popover__title { |
| @@ -771,7 +787,7 @@ const handleGlobalInfo = (data, num) => { | @@ -771,7 +787,7 @@ const handleGlobalInfo = (data, num) => { | ||
| 771 | } | 787 | } |
| 772 | 788 | ||
| 773 | .el-popper[data-popper-placement^=top]>.el-popper__arrow::before { | 789 | .el-popper[data-popper-placement^=top]>.el-popper__arrow::before { |
| 774 | - border-top-color: #062B5A !important; | ||
| 775 | - background-color: #062B5A !important; | 790 | + border-top-color: #062a5ac5 !important; |
| 791 | + background-color: #062a5ac5 !important; | ||
| 776 | } | 792 | } |
| 777 | </style> | 793 | </style> |
src/views/in/in/index.vue
| @@ -43,7 +43,7 @@ | @@ -43,7 +43,7 @@ | ||
| 43 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 43 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 44 | </el-row> | 44 | </el-row> |
| 45 | 45 | ||
| 46 | - <el-table v-loading="loading" :data="inList" row-key="id" @selection-change="handleSelectionChange"> | 46 | + <el-table height="600" v-loading="loading" :data="inList" row-key="id" @selection-change="handleSelectionChange"> |
| 47 | <el-table-column type="selection" width="55" align="center" /><el-table-column label="序号" type="index" width="50" | 47 | <el-table-column type="selection" width="55" align="center" /><el-table-column label="序号" type="index" width="50" |
| 48 | align="center"> | 48 | align="center"> |
| 49 | <template #default="scope"> | 49 | <template #default="scope"> |
src/views/login.vue
| 1 | <template> | 1 | <template> |
| 2 | <div class="login"> | 2 | <div class="login"> |
| 3 | <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form"> | 3 | <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form"> |
| 4 | - <h3 class="title">酒精测试一体机管理系统</h3> | 4 | + <h3 class="title">青浦巴士岗前检测系统</h3> |
| 5 | <el-form-item prop="username"> | 5 | <el-form-item prop="username"> |
| 6 | <el-input v-model="loginForm.username" type="text" size="large" auto-complete="off" placeholder="账号"> | 6 | <el-input v-model="loginForm.username" type="text" size="large" auto-complete="off" placeholder="账号"> |
| 7 | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> | 7 | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> |
src/views/register.vue
| 1 | <template> | 1 | <template> |
| 2 | <div class="register"> | 2 | <div class="register"> |
| 3 | <el-form ref="registerRef" :model="registerForm" :rules="registerRules" class="register-form"> | 3 | <el-form ref="registerRef" :model="registerForm" :rules="registerRules" class="register-form"> |
| 4 | - <h3 class="title">酒精测试一体机管理系统</h3> | 4 | + <h3 class="title">青浦巴士岗前检测系统</h3> |
| 5 | <el-form-item prop="username"> | 5 | <el-form-item prop="username"> |
| 6 | <el-input v-model="registerForm.username" type="text" size="large" auto-complete="off" placeholder="账号"> | 6 | <el-input v-model="registerForm.username" type="text" size="large" auto-complete="off" placeholder="账号"> |
| 7 | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> | 7 | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> |
src/views/report/error/index.vue
| @@ -70,8 +70,8 @@ | @@ -70,8 +70,8 @@ | ||
| 70 | </el-dropdown-menu> | 70 | </el-dropdown-menu> |
| 71 | </template> | 71 | </template> |
| 72 | </el-dropdown> | 72 | </el-dropdown> |
| 73 | - <el-table v-loading="loading" row-key="id" :data="tableData" @selection-change="handleSelectionChange" border | ||
| 74 | - default-expand-all> | 73 | + <el-table max-height="500" v-loading="loading" row-key="id" :data="tableData" |
| 74 | + @selection-change="handleSelectionChange" border default-expand-all> | ||
| 75 | <el-table-column label="序号" fixed="left" type="index" width="60" align="center"> | 75 | <el-table-column label="序号" fixed="left" type="index" width="60" align="center"> |
| 76 | <template #default="scope"> | 76 | <template #default="scope"> |
| 77 | {{ (currentPage - 1) * size + scope.$index + 1 }} | 77 | {{ (currentPage - 1) * size + scope.$index + 1 }} |
src/views/report/sign/index.vue
| @@ -41,7 +41,7 @@ | @@ -41,7 +41,7 @@ | ||
| 41 | </div> | 41 | </div> |
| 42 | 42 | ||
| 43 | 43 | ||
| 44 | - <el-table v-loading="loading" :data="tableData" @selection-change="handleSelectionChange" border | 44 | + <el-table v-loading="loading" :data="tableData" @selection-change="handleSelectionChange" border max-height="600" |
| 45 | :default-expand-all="false" :row-class-name="tableRowClassName"> | 45 | :default-expand-all="false" :row-class-name="tableRowClassName"> |
| 46 | <el-table-column label="序号" type="index" width="60" align="center"> | 46 | <el-table-column label="序号" type="index" width="60" align="center"> |
| 47 | <template #default="scope"> | 47 | <template #default="scope"> |
src/views/scheduling/scheduling/index.vue
| @@ -45,7 +45,7 @@ | @@ -45,7 +45,7 @@ | ||
| 45 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 45 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 46 | </el-row> | 46 | </el-row> |
| 47 | 47 | ||
| 48 | - <el-table v-loading="loading" :data="schedulingList" border @selection-change="handleSelectionChange"> | 48 | + <el-table v-loading="loading" height="600" :data="schedulingList" border @selection-change="handleSelectionChange"> |
| 49 | <el-table-column type="selection" width="55" align="center" /> | 49 | <el-table-column type="selection" width="55" align="center" /> |
| 50 | <el-table-column label="规则名称" align="center" prop="ruleName" /> | 50 | <el-table-column label="规则名称" align="center" prop="ruleName" /> |
| 51 | <el-table-column label="时间范围" align="center" prop="rangeTime" /> | 51 | <el-table-column label="时间范围" align="center" prop="rangeTime" /> |
src/views/schedulingAssociateNum/Attendance/index.vue
src/views/schedulingAssociateNum/schedulingAssociateNum/index.vue
| @@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
| 26 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> | 26 | <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> |
| 27 | </el-row> | 27 | </el-row> |
| 28 | 28 | ||
| 29 | - <el-table border v-loading="loading" height="650px" stripe :data="schedulingAssociateNumList" | 29 | + <el-table border v-loading="loading" max-height="650px" stripe :data="schedulingAssociateNumList" |
| 30 | @selection-change="handleSelectionChange"> | 30 | @selection-change="handleSelectionChange"> |
| 31 | <el-table-column type="selection" width="55" align="center" /> | 31 | <el-table-column type="selection" width="55" align="center" /> |
| 32 | <el-table-column label="班次类型" align="center" prop="ruleType"> | 32 | <el-table-column label="班次类型" align="center" prop="ruleType"> |