Browse Source

Merge remote-tracking branch 'origin/master'

xu 4 months ago
parent
commit
dea21dfae8

+ 1 - 1
server/config.yaml

@@ -125,7 +125,7 @@ mysql:
     config: charset=utf8mb4&parseTime=True&loc=Local
     db-name: lc_garage
     username: root
-    password: root
+    password: 123456
     path: 127.0.0.1
     engine: ""
     log-mode: error

BIN
web/src/assets/sign.png


+ 1 - 0
web/src/view/layout/index.vue

@@ -165,6 +165,7 @@
           v-if="reloadFlag"
           v-slot="{ Component }"
           class="admin-box"
+          style="background-color: white;height: 1200px"
         >
           <div
             id="gva-base-load-dom"

+ 53 - 0
web/src/view/parking/carOwner.vue

@@ -0,0 +1,53 @@
+<template>
+  <div>
+    <el-form inline>
+      <el-form-item>
+        <el-input>
+          <template #append>
+            <el-button>搜索</el-button>
+          </template>
+        </el-input>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Plus">新增</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Edit">编辑</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Delete">删除</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Download">导入</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Download">导入模板</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Upload">导出</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Memo">操作记录</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="ChatLineRound">其他</el-button>
+      </el-form-item>
+    </el-form>
+    <el-table>
+      <el-table-column label="名字"></el-table-column>
+      <el-table-column label="姓氏"></el-table-column>
+      <el-table-column label="手机"></el-table-column>
+      <el-table-column label="邮箱"></el-table-column>
+      <el-table-column label="住址"></el-table-column>
+      <el-table-column label="备注"></el-table-column>
+    </el-table>
+  </div>
+</template>
+
+<script setup>
+
+</script>
+
+<style scoped lang="scss">
+
+</style>

+ 248 - 0
web/src/view/parking/parkingInfo.vue

@@ -0,0 +1,248 @@
+<template>
+  <el-row>
+    <el-col :span="4">
+      <div class="region">
+        <div class="regionTitle">
+          <div class="regionTitle-text">
+            <el-text style="font-weight: 550">停车区域</el-text>
+          </div>
+          <div class="regionTitle-icon">
+            <el-icon size="large" color="#008000">
+              <Plus/>
+            </el-icon>
+            <el-icon style="padding-left: 5px" size="large" color="#4682b4">
+              <Refresh/>
+            </el-icon>
+          </div>
+        </div>
+      </div>
+    </el-col>
+    <el-col :span="19" style="margin-left: 40px">
+      <el-tabs
+          v-model="activeName"
+          class="demo-tabs"
+          @tab-click="handleClick"
+      >
+        <el-tab-pane
+            label="岗亭"
+            name="detail"
+        >
+          <el-form inline>
+            <el-form-item>
+              <el-button icon="Plus" text type="success" @click="positionShow = true">新增</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Edit" text type="warning">编辑</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Delete" text type="danger">删除</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Refresh" text type="primary">刷新</el-button>
+            </el-form-item>
+          </el-form>
+          <el-table size="small">
+            <el-table-column label="编码" align="center" width="100"></el-table-column>
+            <el-table-column label="名称" align="center" width="250"></el-table-column>
+            <el-table-column label="IP地址" align="center" width="250"></el-table-column>
+            <el-table-column label="备注" align="center"></el-table-column>
+          </el-table>
+        </el-tab-pane>
+        <el-tab-pane
+            label="通道"
+            name="people"
+        >
+          <el-form inline>
+            <el-form-item>
+              <el-button icon="Plus" text type="success" @click="channelEditShow = true">新增</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Edit" text type="warning">编辑</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Delete" text type="danger">删除</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Refresh" text type="primary">刷新</el-button>
+            </el-form-item>
+          </el-form>
+          <el-table size="small">
+            <el-table-column label="编码" align="center" width="100"></el-table-column>
+            <el-table-column label="名称" align="center" width="250"></el-table-column>
+            <el-table-column label="进出方向" align="center" width="150"></el-table-column>
+            <el-table-column label="是否允许临时车进出" align="center" width="200"></el-table-column>
+            <el-table-column label="备注" align="center"></el-table-column>
+          </el-table>
+        </el-tab-pane>
+        <el-tab-pane
+            label="设备"
+            name="department"
+        >
+          <el-form inline>
+            <el-form-item>
+              <el-button icon="Plus" text type="success">新增</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Edit" text type="warning">编辑</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Delete" text type="danger">删除</el-button>
+            </el-form-item>
+            <el-form-item>
+              <el-button icon="Refresh" text type="primary">刷新</el-button>
+            </el-form-item>
+          </el-form>
+          <el-table size="small">
+            <el-table-column label="编码" align="center" width="100"></el-table-column>
+            <el-table-column label="名称" align="center" width="250"></el-table-column>
+            <el-table-column label="类别" align="center" width="150"></el-table-column>
+            <el-table-column label="IP地址" align="center" width="200"></el-table-column>
+            <el-table-column label="端口" align="center" width="150"></el-table-column>
+            <el-table-column label="在线状态" align="center" width="150"></el-table-column>
+            <el-table-column label="备注" align="center"></el-table-column>
+          </el-table>
+        </el-tab-pane>
+      </el-tabs>
+<!--      <div class="basicInformation">-->
+<!--        <div style="padding-top: 10px;margin-left: 30px">-->
+<!--          <el-image :src="sign" />-->
+<!--        </div>-->
+<!--        <div style="display: flex;align-items: center">-->
+<!--          <el-text-->
+<!--              style="margin-left: 10px"-->
+<!--              size="large"-->
+<!--              tag="b"-->
+<!--          >项目基本信息</el-text>-->
+<!--        </div>-->
+<!--      </div>-->
+<!--      <div class="operation">-->
+<!--        <el-button icon="Plus" text type="success">新增</el-button>-->
+<!--        <el-button icon="edit" text type="warning">编辑</el-button>-->
+<!--        <el-button icon="delete" text type="danger">删除</el-button>-->
+<!--        <el-button icon="Refresh" text type="primary">刷新</el-button>-->
+<!--      </div>-->
+<!--      <el-table size="small">-->
+<!--        <el-table-column label="编码"></el-table-column>-->
+<!--        <el-table-column label="名称"></el-table-column>-->
+<!--        <el-table-column label="IP地址"></el-table-column>-->
+<!--        <el-table-column label="备注"></el-table-column>-->
+<!--      </el-table>-->
+    </el-col>
+    <el-dialog
+        v-model="positionShow"
+        title="岗亭新增"
+        width="500"
+    >
+      <el-form label-width="90">
+        <el-form-item label="岗亭编码:">
+          <el-input></el-input>
+        </el-form-item>
+        <el-form-item label="岗亭名称:">
+          <el-input></el-input>
+        </el-form-item>
+        <el-form-item label="IP地址:">
+          <el-input></el-input>
+        </el-form-item>
+        <el-form-item label="备注:">
+          <el-input type="textarea"></el-input>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button @click="positionShow = false">取消</el-button>
+          <el-button type="primary" @click="addPosition">
+            确认
+          </el-button>
+        </div>
+      </template>
+    </el-dialog>
+    <el-dialog v-model="channelEditShow" title="通道新增" width="500">
+      <el-form>
+        <el-form-item label="通道编码:">
+          <el-input></el-input>
+        </el-form-item>
+        <el-form-item label="通道名称:">
+          <el-input></el-input>
+        </el-form-item>
+        <el-form-item label="进出方向:">
+          <el-radio-group v-model="exportDirection" size="large" fill="#409eff">
+            <el-radio-button label="出" :value="0" />
+            <el-radio-button label="进" :value="1" />
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="是否允许临时车进出:">
+          <el-radio-group v-model="exportDirection" size="large" fill="#409eff">
+            <el-radio-button label="是" :value="0" />
+            <el-radio-button label="否" :value="1" />
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="备注:">
+          <el-input type="textarea" ></el-input>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button @click="positionShow = false">取消</el-button>
+          <el-button type="primary" @click="addPosition">
+            确认
+          </el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </el-row>
+</template>
+
+<script setup>
+// import sign from '@/assets/sign.png'
+import {ref} from 'vue'
+const activeName = ref('detail')
+const handleClick = () => {}
+
+const positionShow = ref(false)
+const positionOperation = ref(0)
+const channelEditShow = ref(false)
+
+const addPosition = () => {}
+
+const exportDirection = ref(false)
+</script>
+
+<style scoped lang="scss">
+.region {
+  width: 100%;
+  height: 800px;
+  background-color: #f5f5f5;
+  .regionTitle{
+    width: 100%;
+    height: 40px;
+    display: flex;
+    border-bottom: 1px solid;
+    background-color: #b9b8b8;
+    .regionTitle-text {
+      width: 70%;
+      height: 40px;
+      display: flex;
+      align-items: center;
+      padding-left: 10px;
+    }
+    .regionTitle-icon {
+      width: 20%;
+      height: 40px;
+      display: flex;
+      align-items: center;
+    }
+  }
+}
+
+.basicInformation {
+  height: 40px;
+  background-color: #f8fafd;
+  display: flex;
+}
+
+.operation {
+  width: 100%;
+  height: 50px;
+  margin-top: 5px;
+}
+</style>

+ 47 - 0
web/src/view/parking/roster.vue

@@ -0,0 +1,47 @@
+<template>
+  <div>
+    <el-form inline>
+      <el-form-item label="车牌" style="width: 200px">
+        <el-input/>
+      </el-form-item>
+      <el-form-item label="车主">
+        <el-input/>
+      </el-form-item>
+      <el-form-item label="到期日期">
+        <el-select></el-select>
+      </el-form-item>
+      <el-form-item label="车辆类型" style="width: 180px">
+        <el-select></el-select>
+      </el-form-item>
+      <el-form-item label="黑白名单">
+        <el-select></el-select>
+      </el-form-item>
+      <el-form-item>
+        <el-button>批量导入</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Plus">新增</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary">搜索</el-button>
+      </el-form-item>
+    </el-form>
+    <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
+      <el-tab-pane label="月租车" name="first">月租车</el-tab-pane>
+      <el-tab-pane label="临时车" name="second">临时车</el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script setup>
+import { ref } from 'vue'
+const activeName = ref('first')
+
+const handleClick = () => {
+
+}
+</script>
+
+<style scoped lang="scss">
+
+</style>

+ 95 - 0
web/src/view/report/enter.vue

@@ -0,0 +1,95 @@
+<template>
+  <div>
+    <el-form inline>
+      <el-form-item label="车牌:">
+        <el-input />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary">搜索</el-button>
+      </el-form-item>
+    </el-form>
+    <el-row>
+      <el-col :span="24">
+        <el-table :data="recordList">
+          <el-table-column label="车牌">
+
+          </el-table-column>
+          <el-table-column label="车牌识别号码">
+
+          </el-table-column>
+          <el-table-column label="入场时间">
+
+          </el-table-column>
+          <el-table-column label="入场岗亭">
+
+          </el-table-column>
+          <el-table-column label="入场通道">
+
+          </el-table-column>
+          <el-table-column label="出场时间">
+
+          </el-table-column>
+          <el-table-column label="出场岗亭">
+
+          </el-table-column>
+          <el-table-column label="出场通道">
+
+          </el-table-column>
+          <el-table-column label="操作">
+            <template #default="scope">
+              <el-button type="primary" text icon="View" @click="openRecord(scope.row)">查看</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </el-col>
+    </el-row>
+    <el-dialog title="进出记录" v-model="recordShow">
+      <el-form>
+        <el-form-item label="车牌:">
+
+        </el-form-item>
+        <el-form-item label="到期日期:"></el-form-item>
+        <el-form-item label="车主名称:"></el-form-item>
+        <el-form-item label="手机:"></el-form-item>
+      </el-form>
+      <el-form inline label-position="top">
+        <el-form-item label="入场识别照片">
+          <el-image></el-image>
+        </el-form-item>
+        <el-form-item label="入场抓拍相机照片">
+          <el-image></el-image>
+        </el-form-item>
+      </el-form>
+      <el-form inline label-position="top">
+        <el-form-item label="出场识别照片">
+          <el-image></el-image>
+        </el-form-item>
+        <el-form-item label="出场抓拍相机照片">
+          <el-image></el-image>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button @click="recordShow = false">取消</el-button>
+          <el-button type="primary" @click="recordShow = false">
+            确定
+          </el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup>
+import { reactive, ref } from "vue"
+const recordList = reactive([0])
+const recordShow = ref(false)
+const openRecord = (data) => {
+  console.log(data)
+  recordShow.value = true
+}
+</script>
+
+<style scoped lang="scss">
+
+</style>

+ 29 - 0
web/src/view/report/sheet.vue

@@ -0,0 +1,29 @@
+<template>
+  <div>
+    <el-form inline>
+      <el-form-item label="车牌">
+        <el-input></el-input>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary">搜索</el-button>
+      </el-form-item>
+    </el-form>
+    <el-table>
+      <el-table-column label="车牌"></el-table-column>
+      <el-table-column label="车辆识别号码"></el-table-column>
+      <el-table-column label="出场时间"></el-table-column>
+      <el-table-column label="出场岗亭"></el-table-column>
+      <el-table-column label="出场通道"></el-table-column>
+      <el-table-column label="车主名称"></el-table-column>
+      <el-table-column label="到期日期"></el-table-column>
+    </el-table>
+  </div>
+</template>
+
+<script setup>
+
+</script>
+
+<style scoped lang="scss">
+
+</style>

+ 64 - 0
web/src/view/statistics/vehicle.vue

@@ -0,0 +1,64 @@
+<template>
+  <div>
+    <el-form inline style="border-bottom:1px solid #e4e7ed">
+      <el-form-item label="区域:">
+        <el-select></el-select>
+      </el-form-item>
+      <el-form-item>
+        <el-button icon="Refresh">刷新</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-text type="success">空闲车位:</el-text>
+      </el-form-item>
+      <el-form-item>
+        <el-text type="warning">在场车辆:</el-text>
+      </el-form-item>
+      <el-form-item>
+        <el-input/>
+      </el-form-item>
+    </el-form>
+    <el-row style="margin-top: 10px">
+      <el-col :span="17">
+        <div class="carBox">
+          <span>001</span>
+        </div>
+      </el-col>
+      <el-col :span="6" style="margin-left: 10px">
+        <div class="infoBox">
+          <el-form label-width="100px" label-position="left">
+            <el-form-item label="车辆:"></el-form-item>
+            <el-form-item label="车辆类型:"></el-form-item>
+            <el-form-item label="到期日期:"></el-form-item>
+            <el-form-item label="车主名称:"></el-form-item>
+            <el-form-item label="手机:"></el-form-item>
+            <el-form-item label="入场时间:"></el-form-item>
+            <el-form-item label="预计收费:"></el-form-item>
+            <el-form-item label="车位:"></el-form-item>
+          </el-form>
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script setup>
+
+</script>
+
+<style scoped lang="scss">
+.infoBox {
+  width: 400px;
+  height: 700px;
+  background-color: #f7f9fa;
+  padding: 20px;
+  border: 1px solid #99a9bf;
+}
+.carBox {
+  width: 70px;
+  height: 100px;
+  border: 1px solid #000000;
+  display:flex;
+  align-items: center;
+  justify-content: center;
+}
+</style>