From a8c8e4281c0298ce9a946b1d65166a2fe438ce1c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 26 九月 2024 09:04:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
pda/api/index.js | 8
h5/pages/driver/index.vue | 16
admin/src/views/platform/components/PlatformQueuing.vue | 1
server/meeting/meeting_admin/src/main/resources/bootstrap.yml | 2
admin/src/views/platform/LogisticsRecord/operationCity.vue | 2
admin/src/views/platform/platform.vue | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java | 4
h5/pages/driver/queueUp.vue | 2
h5/pages/driver/taskDetail.vue | 1031 +++++++++++++++-------------
pda/pages/index/queueup.vue | 173 ++++
admin/src/views/vehicle/visitPark.vue | 55 -
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java | 4
admin/src/api/business/visitPark.js | 39 +
pda/pages/index/center.vue | 199 ++++-
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseRequst.java | 1
h5/pages/driver/login.vue | 2
h5/manifest.json | 4
pda/manifest.json | 4
admin/.env.development | 4
admin/src/views/business/internalMember.vue | 460 ++++++------
server/meeting/meeting_service/src/main/resources/application-pro.yml | 30
21 files changed, 1,205 insertions(+), 840 deletions(-)
diff --git a/admin/.env.development b/admin/.env.development
index 0778f82..aeb8ba3 100644
--- a/admin/.env.development
+++ b/admin/.env.development
@@ -2,6 +2,6 @@
NODE_ENV = 'development'
VUE_APP_API_URL = 'http://localhost:10010'
-VUE_APP_API_URL = 'http://192.168.0.103:10010'
-# VUE_APP_API_URL = 'http://10.50.250.178:8088/gateway_interface'
+# VUE_APP_API_URL = 'http://192.168.0.103:10010'
+VUE_APP_API_URL = 'http://10.50.250.178:8088/gateway_interface'
s
\ No newline at end of file
diff --git a/admin/src/api/business/visitPark.js b/admin/src/api/business/visitPark.js
new file mode 100644
index 0000000..c01b2f5
--- /dev/null
+++ b/admin/src/api/business/visitPark.js
@@ -0,0 +1,39 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/visitsAdmin/cloudService/business/visitPark/page', data, {
+ trim: true
+ })
+}
+
+// 鍒涘缓
+export function create (data) {
+ return request.post('/visitsAdmin/cloudService/business/visitPark/create', data)
+}
+export function batchAuth (data) {
+ return request.post('/visitsAdmin/cloudService/business/visitPark/batchAuth', data)
+}
+
+// 淇敼
+export function updateById (data) {
+ return request.post('/visitsAdmin/cloudService/business/visitPark/updateById', data)
+}
+// 淇敼
+export function reUpdate (data) {
+ return request.post('/visitsAdmin/cloudService/business/visitPark/reUpdate', data)
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+ return request.get(`/visitsAdmin/cloudService/business/visitPark/delete/${id}`)
+}
+
+// 鎵归噺鍒犻櫎
+export function deleteByIdInBatch (ids) {
+ return request.get('/visitsAdmin/cloudService/business/visitPark/delete/batch', {
+ params: {
+ ids
+ }
+ })
+}
diff --git a/admin/src/views/business/internalMember.vue b/admin/src/views/business/internalMember.vue
index 8ca8ae6..f0568a1 100644
--- a/admin/src/views/business/internalMember.vue
+++ b/admin/src/views/business/internalMember.vue
@@ -1,195 +1,187 @@
<template>
- <TableLayout1 :permissions="['business:member:query']">
- <!-- 鎼滅储琛ㄥ崟 -->
- <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
- <el-form-item label="" prop="keyword">
- <el-input v-model="searchForm.keyword" placeholder="璇疯緭鍏ュ鍚�/鎵嬫満鍙�/宸ュ彿" @keypress.enter.native="search"></el-input>
- </el-form-item>
- <el-form-item label="" prop="hasFace">
- <el-select v-model="searchForm.hasFace" @keypress.enter.native="search" clearable placeholder="鏄惁鏈変汉鑴�">
- <el-option label="鏃�" value="0"></el-option>
- <el-option label="鏈�" value="1"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="" prop="canVisit">
- <el-select v-model="searchForm.canVisit" clearable @keypress.enter.native="search" placeholder="鍙嫓璁�">
- <el-option label="鏄�" value="1"></el-option>
- <el-option label="鍚�" value="0"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="" prop="status">
- <el-select v-model="searchForm.status" @keypress.enter.native="search" clearable placeholder="鐘舵��">
- <el-option label="姝e父" value="0"></el-option>
- <el-option label="绂佺敤" value="1"></el-option>
- <el-option label="鎷夐粦/鍐荤粨" value="2"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="" prop="hkStatus">
- <el-select v-model="searchForm.hkStatus" @keypress.enter.native="search" clearable placeholder="娴峰悍鍚屾鐘舵��">
- <el-option label="寰呭悓姝�" value="0"></el-option>
- <el-option label="鍚屾鎴愬姛" value="1"></el-option>
- <el-option label="鍚屾澶辫触" value="2"></el-option>
- </el-select>
- </el-form-item>
- <section>
- <el-button type="primary" @click="search">鎼滅储</el-button>
- <el-button @click="reset">閲嶇疆</el-button>
- </section>
- </el-form>
- <template v-slot:menu>
- <div style="width: 100%; height: 50px; background: rgba(242, 242, 242, 1); line-height: 50px; text-align: center; font-size: 14px;">浼佷笟缁勭粐鏋舵瀯</div>
- <div style="width: 100%; height: calc(100vh - 170px); overflow-y: scroll;">
- <Tree :list="companyTree" :defaultProps="{name: 'name', status: 'fsStatus', children: 'childList', id: 'id'}" @callback="callback" />
+ <TableLayout1 :permissions="['business:member:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+ <el-form-item label="" prop="keyword">
+ <el-input v-model="searchForm.keyword" placeholder="璇疯緭鍏ュ鍚�/鎵嬫満鍙�/宸ュ彿" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="" prop="hasFace">
+ <el-select v-model="searchForm.hasFace" @keypress.enter.native="search" clearable placeholder="鏄惁鏈変汉鑴�">
+ <el-option label="鏃�" value="0"></el-option>
+ <el-option label="鏈�" value="1"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="" prop="canVisit">
+ <el-select v-model="searchForm.canVisit" clearable @keypress.enter.native="search" placeholder="鍙嫓璁�">
+ <el-option label="鏄�" value="1"></el-option>
+ <el-option label="鍚�" value="0"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="" prop="status">
+ <el-select v-model="searchForm.status" @keypress.enter.native="search" clearable placeholder="鐘舵��">
+ <el-option label="姝e父" value="0"></el-option>
+ <el-option label="绂佺敤" value="1"></el-option>
+ <el-option label="鎷夐粦/鍐荤粨" value="2"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="" prop="hkStatus">
+ <el-select v-model="searchForm.hkStatus" @keypress.enter.native="search" clearable placeholder="娴峰悍鍚屾鐘舵��">
+ <el-option label="寰呭悓姝�" value="0"></el-option>
+ <el-option label="鍚屾鎴愬姛" value="1"></el-option>
+ <el-option label="鍚屾澶辫触" value="2"></el-option>
+ </el-select>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <template v-slot:menu>
+ <div
+ style="width: 100%; height: 50px; background: rgba(242, 242, 242, 1); line-height: 50px; text-align: center; font-size: 14px;">
+ 浼佷笟缁勭粐鏋舵瀯</div>
+ <div style="width: 100%; height: calc(100vh - 170px); overflow-y: scroll;">
+ <Tree :list="companyTree" :defaultProps="{ name: 'name', status: 'fsStatus', children: 'childList', id: 'id' }"
+ @callback="callback" />
+ </div>
+ </template>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar" v-permissions="['business:member:delete', 'business:member:create,business:empower:create']">
+ <li><el-button type="primary" v-permissions="['business:member:sync']" :loading="loading"
+ @click="synchronous()">鍚屾</el-button></li>
+ <li><el-button type="primary"
+ @click="$refs.OperaMemberWindow.open('鏂板缓鍛樺伐', null, department, searchForm.companyType)" icon="el-icon-plus"
+ v-permissions="['business:member:create']">鏂板缓鍛樺伐</el-button></li>
+ <li><el-button type="primary" @click="$refs.OperaMemberImportWindow.open('浜哄憳瀵煎叆', searchForm.companyType)"
+ icon="el-icon-plus" v-permissions="['business:member:create']">浜哄憳瀵煎叆</el-button></li>
+ <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete"
+ v-permissions="['business:member:delete']">鎵归噺鍒犻櫎</el-button></li>
+ <li><el-button type="primary" v-permissions="['business:empower:create']" @click="startEmpowerBatch()"
+ icon="el-icon-plus">涓嬪彂鎺堟潈</el-button></li>
+ <li style="float: right">
+ <el-checkbox style="font-size: 12px" label="1" v-model="searchForm.includeChild" key="1"
+ @change="search">鏄惁鍖呭惈涓嬬骇缁勭粐</el-checkbox>
+ </li>
+ </ul>
+ <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55"></el-table-column>
+ <el-table-column prop="name" label="濮撳悕" min-width="110px">
+ <template slot-scope="{row}">
+ <span>{{ row.name }}</span>
+ <span class="zhuguan" v-if="row.headStatus == 1">涓荤</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="phone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
+ <el-table-column prop="idcardDecode" label="韬唤璇佸彿" min-width="100px"></el-table-column>
+ <el-table-column label="鎬у埆" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.sex == 1">鐢�</span>
+ <span v-if="row.sex == 2">濂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="companyName" label="鎵�灞為儴闂�" min-width="100px"></el-table-column>
+ <el-table-column prop="status" label="鐘舵��" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.status == 0" style="color: green">姝e父</span>
+ <span v-if="row.status == 1" style="color: red">绂佺敤</span>
+ <span v-if="row.status == 2" style="color: red">鎷夐粦/鍐荤粨</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="閮ㄩ棬绫诲瀷" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.companyType == 0">鐩稿叧鏂圭粍缁�</span>
+ <span v-if="row.companyType == 1">鍐呴儴缁勭粐</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鍦ㄨ亴鐘舵��">
+ <template slot-scope="{row}">
+ <el-switch @change="changeWorkStatus($event, row)" v-model="row.workStatus" active-color="#13ce66"
+ inactive-color="#ff4949" :active-value="0" :inactive-value="1">
+ </el-switch>
+ </template>
+ </el-table-column>
+ <el-table-column label="鏄惁鍙嫓璁�">
+ <template slot-scope="{row}">
+ <el-switch @change="changeCanvisit($event, row)" v-model="row.canVisit" active-color="#13ce66"
+ inactive-color="#ff4949" :active-value="1" :inactive-value="0">
+ </el-switch>
+ </template>
+ </el-table-column>
+ <el-table-column label="娴峰悍鍚屾鐘舵��" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.hkStatus == 0" style="color: #435EBE">寰呭悓姝�</span>
+ <span v-if="row.hkStatus == 1" style="color: green">鍚屾鎴愬姛</span>
+ <span v-if="row.hkStatus == 2" style="color: red">鍚屾澶辫触</span>
+ <span v-if="row.hkStatus == 3" style="color: red">涓嶇鍚堜笅鍙戞潯浠�</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鏄惁鎺堟潈" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.authStatus == 1" style="color: green">鏄�</span>
+ <span v-if="row.authStatus == 0" style="color: red">鍚�</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="闂ㄧ瑙掕壊" min-width="100px">
+ <template slot-scope="{row}">
+ <span>{{ (row.roleNames && row.roleNames.length) ? row.roleNames.join(',') : '-' }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="闂ㄧ鏈夋晥鏈�" min-width="170px">
+ <template slot-scope="{row}">
+ <div v-if="row.roleId != null && row.roleId != ''">
+ <div v-if="!row.startTime || !row.endTime">闀挎湡鏈夋晥</div>
+ <div v-else>
+ <span>璧凤細{{ row.startTime }}</span><br />
+ <span>姝細{{ row.endTime }}</span>
+ </div>
</div>
- </template>
- <!-- 琛ㄦ牸鍜屽垎椤� -->
- <template v-slot:table-wrap>
- <ul class="toolbar" v-permissions="['business:member:delete','business:member:create,business:empower:create']">
- <li><el-button type="primary" v-permissions="['business:member:sync']" :loading="loading" @click="synchronous()">鍚屾</el-button></li>
- <li><el-button type="primary" @click="$refs.OperaMemberWindow.open('鏂板缓鍛樺伐',null,department,searchForm.companyType)" icon="el-icon-plus" v-permissions="['business:member:create']">鏂板缓鍛樺伐</el-button></li>
- <li><el-button type="primary" @click="$refs.OperaMemberImportWindow.open('浜哄憳瀵煎叆',searchForm.companyType)" icon="el-icon-plus" v-permissions="['business:member:create']">浜哄憳瀵煎叆</el-button></li>
- <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:member:delete']">鎵归噺鍒犻櫎</el-button></li>
- <li><el-button type="primary" v-permissions="['business:empower:create']" @click="startEmpowerBatch()" icon="el-icon-plus">涓嬪彂鎺堟潈</el-button></li>
- <li style="float: right">
- <el-checkbox style="font-size: 12px" label="1" v-model="searchForm.includeChild" key="1" @change="search" >鏄惁鍖呭惈涓嬬骇缁勭粐</el-checkbox>
- </li>
- </ul>
- <el-table
- v-loading="isWorking.search"
- :data="tableData.list"
- stripe
- @selection-change="handleSelectionChange"
- >
- <el-table-column type="selection" width="55"></el-table-column>
- <el-table-column prop="name" label="濮撳悕" min-width="110px">
- <template slot-scope="{row}">
- <span>{{ row.name }}</span>
- <span class="zhuguan" v-if="row.headStatus == 1">涓荤</span>
- </template>
- </el-table-column>
- <el-table-column prop="phone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
- <el-table-column prop="idcardDecode" label="韬唤璇佸彿" min-width="100px"></el-table-column>
- <el-table-column label="鎬у埆" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.sex == 1">鐢�</span>
- <span v-if="row.sex == 2">濂�</span>
- </template>
- </el-table-column>
- <el-table-column prop="companyName" label="鎵�灞為儴闂�" min-width="100px"></el-table-column>
- <el-table-column prop="status" label="鐘舵��" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.status == 0" style="color: green">姝e父</span>
- <span v-if="row.status == 1" style="color: red">绂佺敤</span>
- <span v-if="row.status == 2" style="color: red">鎷夐粦/鍐荤粨</span>
- </template>
- </el-table-column>
- <el-table-column label="閮ㄩ棬绫诲瀷" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.companyType == 0">鐩稿叧鏂圭粍缁�</span>
- <span v-if="row.companyType == 1">鍐呴儴缁勭粐</span>
- </template>
- </el-table-column>
- <el-table-column label="鍦ㄨ亴鐘舵��">
- <template slot-scope="{row}">
- <el-switch
- @change="changeWorkStatus($event, row)"
- v-model="row.workStatus"
- active-color="#13ce66"
- inactive-color="#ff4949"
- :active-value="0"
- :inactive-value="1">
- </el-switch>
- </template>
- </el-table-column>
- <el-table-column label="鏄惁鍙嫓璁�">
- <template slot-scope="{row}">
- <el-switch
- @change="changeCanvisit($event, row)"
- v-model="row.canVisit"
- active-color="#13ce66"
- inactive-color="#ff4949"
- :active-value="1"
- :inactive-value="0">
- </el-switch>
- </template>
- </el-table-column>
- <el-table-column label="娴峰悍鍚屾鐘舵��" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.hkStatus == 0" style="color: #435EBE">寰呭悓姝�</span>
- <span v-if="row.hkStatus == 1" style="color: green">鍚屾鎴愬姛</span>
- <span v-if="row.hkStatus == 2" style="color: red">鍚屾澶辫触</span>
- <span v-if="row.hkStatus == 3" style="color: red">涓嶇鍚堜笅鍙戞潯浠�</span>
- </template>
- </el-table-column>
- <el-table-column label="鏄惁鎺堟潈" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.authStatus == 1" style="color: green">鏄�</span>
- <span v-if="row.authStatus == 0" style="color: red">鍚�</span>
- </template>
- </el-table-column>
- <el-table-column label="闂ㄧ瑙掕壊" min-width="100px">
- <template slot-scope="{row}">
- <span>{{(row.roleNames && row.roleNames.length) ?row.roleNames.join(','): '-'}}</span>
- </template>
- </el-table-column>
- <el-table-column label="闂ㄧ鏈夋晥鏈�" min-width="170px">
- <template slot-scope="{row}">
- <div v-if="row.roleId !=null && row.roleId != ''">
- <div v-if="!row.startTime || !row.endTime">闀挎湡鏈夋晥</div>
- <div v-else>
- <span>璧凤細{{row.startTime}}</span><br />
- <span>姝細{{row.endTime}}</span>
- </div>
- </div>
- <div v-else >-</div>
- </template>
- </el-table-column>
- <el-table-column prop="code" label="宸ュ彿" min-width="100px"></el-table-column>
- <el-table-column label="鍗$墖" min-width="80px">
- <template slot-scope="{row}">
- <el-button @click="$refs.cardOpeningRecord.open('寮�鍗¤褰�', row.id)" type="text">{{row.memberCardCount || '0'}}</el-button>
- </template>
- </el-table-column>
- <el-table-column prop="editorName" label="鎿嶄綔浜�" min-width="100px"></el-table-column>
- <el-table-column prop="editDate" label="鏈�鍚庢搷浣滄椂闂�" min-width="150px"></el-table-column>
- <el-table-column fixed="right" label="浜鸿劯淇℃伅" min-width="100px">
- <template slot-scope="{row}">
- <el-image
- v-if="row.faceImgFull"
- style="width: 60px; height: 60px"
- :src="row.faceImgFull"
- :preview-src-list="[row.faceImgFull]">
- </el-image>
- </template>
- </el-table-column>
- <el-table-column
- v-if="containPermissions(['business:member:update', 'business:member:delete','business:empower:create'])"
- label="鎿嶄綔"
- min-width="280"
- fixed="right"
- >
- <template slot-scope="{row}">
- <el-button type="text" icon="el-icon-edit" @click="$refs.OperaMemberWindow.open('缂栬緫鍛樺伐淇℃伅',row,department)" v-permissions="['business:empower:update']">缂栬緫</el-button>
- <el-button type="text" icon="el-icon-plus" @click="empower(row.id)" v-permissions="['business:empower:create']">閲嶆柊鎺堟潈</el-button>
- <el-button type="text" :loading="heading" style="color: red" icon="el-icon-delete" @click="updateHead(row,0)" v-if="row.headStatus ==1 " v-permissions="['business:member:head']">鍙栨秷涓荤</el-button>
- <el-button type="text" :loading="heading" icon="el-icon-edit" @click="updateHead(row,1)" v-if="row.headStatus == 0" v-permissions="['business:member:head']">璁句负涓荤</el-button>
- <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:member:delete']">鍒犻櫎</el-button>
- </template>
- </el-table-column>
- </el-table>
- <pagination
- @size-change="handleSizeChange"
- @current-change="handlePageChange"
- :pagination="tableData.pagination"
- >
- </pagination>
- <!-- 鏌ョ湅浜哄憳寮�鍗¤褰� -->
- <cardOpeningRecord ref="cardOpeningRecord" @success="handlePageChange" />
- <OperaMemberWindow ref="OperaMemberWindow" @success="handlePageChange" />
- <OperaMemberImportWindow ref="OperaMemberImportWindow" @success="handlePageChange" />
- <OperaMemberRoleWindow ref="OperaMemberRoleWindow" @success="handlePageChange" />
- </template>
- </TableLayout1>
+ <div v-else>-</div>
+ </template>
+ </el-table-column>
+ <el-table-column prop="code" label="宸ュ彿" min-width="100px"></el-table-column>
+ <el-table-column label="鍗$墖" min-width="80px">
+ <template slot-scope="{row}">
+ <el-button @click="$refs.cardOpeningRecord.open('寮�鍗¤褰�', row.id)" type="text">{{ row.memberCardCount ||
+ '0'}}</el-button>
+ </template>
+ </el-table-column>
+ <el-table-column prop="editorName" label="鎿嶄綔浜�" min-width="100px"></el-table-column>
+ <el-table-column prop="editDate" label="鏈�鍚庢搷浣滄椂闂�" min-width="150px"></el-table-column>
+ <el-table-column fixed="right" label="浜鸿劯淇℃伅" min-width="100px">
+ <template slot-scope="{row}">
+ <el-image v-if="row.faceImgFull" style="width: 60px; height: 60px" :src="row.faceImgFull"
+ :preview-src-list="[row.faceImgFull]">
+ </el-image>
+ </template>
+ </el-table-column>
+ <el-table-column
+ v-if="containPermissions(['business:member:update', 'business:member:delete', 'business:empower:create'])"
+ label="鎿嶄綔" min-width="280" fixed="right">
+ <template slot-scope="{row}">
+ <el-button type="text" icon="el-icon-edit" @click="$refs.OperaMemberWindow.open('缂栬緫鍛樺伐淇℃伅', row, department)"
+ v-permissions="['business:empower:update']">缂栬緫</el-button>
+ <el-button type="text" icon="el-icon-plus" @click="empower(row.id)"
+ v-permissions="['business:empower:create']">閲嶆柊鎺堟潈</el-button>
+ <el-button type="text" :loading="heading" style="color: red" icon="el-icon-delete"
+ @click="updateHead(row, 0)" v-if="row.headStatus == 1"
+ v-permissions="['business:member:head']">鍙栨秷涓荤</el-button>
+ <el-button type="text" :loading="heading" icon="el-icon-edit" @click="updateHead(row, 1)"
+ v-if="row.headStatus == 0" v-permissions="['business:member:head']">璁句负涓荤</el-button>
+ <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red"
+ v-permissions="['business:member:delete']">鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination">
+ </pagination>
+ <!-- 鏌ョ湅浜哄憳寮�鍗¤褰� -->
+ <cardOpeningRecord ref="cardOpeningRecord" @success="handlePageChange" />
+ <OperaMemberWindow ref="OperaMemberWindow" @success="handlePageChange" />
+ <OperaMemberImportWindow ref="OperaMemberImportWindow" @success="handlePageChange" />
+ <OperaMemberRoleWindow ref="OperaMemberRoleWindow" @success="handlePageChange" />
+ </template>
+ </TableLayout1>
</template>
<script>
@@ -206,8 +198,8 @@
export default {
name: 'internalMember',
extends: BaseTable,
- components: { TableLayout1, Pagination, Tree, cardOpeningRecord, OperaMemberWindow, OperaMemberRoleWindow ,OperaMemberImportWindow},
- data () {
+ components: { TableLayout1, Pagination, Tree, cardOpeningRecord, OperaMemberWindow, OperaMemberRoleWindow, OperaMemberImportWindow },
+ data() {
return {
TreeList: [],
// 鎼滅储
@@ -219,7 +211,7 @@
canVisit: '',
keyword: '',
type: 2,
- companyType:1,
+ companyType: 1,
erpOrgId: '',
companyId: '',
hasFace: ''
@@ -232,7 +224,7 @@
department: []
}
},
- created () {
+ created() {
this.config({
module: '浜哄憳淇℃伅琛�',
api: '/business/member',
@@ -243,7 +235,7 @@
this.getfindCompanyTreePage()
},
methods: {
- startEmpowerBatch () {
+ startEmpowerBatch() {
if (this.tableData.selectedRows.length === 0) {
this.$tip.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�')
return
@@ -254,9 +246,9 @@
ids.push(item.id)
names.push(item.name)
})
- this.$refs.OperaMemberRoleWindow.open('鍐呴儴鍛樺伐涓嬪彂鏉冮檺', ids, names,this.searchForm.companyType)
+ this.$refs.OperaMemberRoleWindow.open('鍐呴儴鍛樺伐涓嬪彂鏉冮檺', ids, names, this.searchForm.companyType)
},
- empower (id) {
+ empower(id) {
var that = this
this.$confirm('纭畾閲嶆柊鎺堟潈鍚�?', '鎻愮ず', {
confirmButtonText: '纭畾',
@@ -273,7 +265,7 @@
})
},
// 鑾峰彇缁勭粐鏍�
- getfindCompanyTreePage () {
+ getfindCompanyTreePage() {
fetchList()
.then(res => {
if (res && res.length > 0) {
@@ -285,7 +277,7 @@
}
})
},
- getDepartmentTree (tree) {
+ getDepartmentTree(tree) {
if (tree == null) {
return []
}
@@ -300,16 +292,16 @@
newItem.children = this.getDepartmentTree(newItem.children)
}
- if(newItem.type === this.searchForm.companyType){
+ if (newItem.type === this.searchForm.companyType) {
//newItem.disabled =false
- }else{
+ } else {
newItem.disabled = true
}
return newItem
})
},
// 鍚屾淇℃伅
- async synchronous () {
+ async synchronous() {
this.$dialog.actionConfirm('璇ユ搷浣滈檷瑙﹀彂鍏ㄥ憳淇℃伅鏇存柊鍜岄噸鏂颁笅鍙戯紒璇疯皑鎱庢搷浣�', '鎮ㄧ‘璁ゅ叏閲忓悓姝ュ唴閮ㄤ汉鍛樹俊鎭悧锛�')
.then(() => {
this.loading = true
@@ -325,9 +317,9 @@
this.loading = false
})
})
- .catch(() => {})
+ .catch(() => { })
},
- async updateHead (row, type) {
+ async updateHead(row, type) {
this.$dialog.actionConfirm('鎮ㄧ‘璁よ繘琛屽綋鍓嶆搷浣滃悧锛�', '閮ㄩ棬涓荤璁剧疆鎿嶄綔鎻愮ず')
.then(() => {
this.heading = true
@@ -342,10 +334,10 @@
.finally(() => {
this.heading = false
})
- .catch(() => {})
+ .catch(() => { })
})
},
- changeWorkStatus (e, row) {
+ changeWorkStatus(e, row) {
this.working = true
updateWorkStatus({ id: row.id, workStatus: e })
.then(res => {
@@ -358,9 +350,9 @@
.finally(() => {
this.working = false
})
- .catch(() => {})
+ .catch(() => { })
},
- changeCanvisit (e, row) {
+ changeCanvisit(e, row) {
this.canvisiting = true
updateCanVisit({ id: row.id, canVisit: e })
.then(res => {
@@ -373,9 +365,9 @@
.finally(() => {
this.canvisiting = false
})
- .catch(() => {})
+ .catch(() => { })
},
- callback (row) {
+ callback(row) {
console.log(row)
this.searchForm.erpOrgId = row.erpId
this.searchForm.companyId = row.id
@@ -386,26 +378,30 @@
</script>
<style lang="scss" scoped>
- @import '@/assets/style/variables.scss';
- .box {
- width: 100%;
- display: flex;
- align-items: center;
- .box_menu {
- width: 100px;
- height: 100%;
- flex-shrink: 0;
- }
- .box_tab {
- flex: 1;
- height: 100%;
- }
- }
- .zhuguan{
- color: $primary-color;
- border: 1px solid $primary-color;
- padding: 0px 3px;
- border-radius: 4px;
- margin-left: 6px;
- }
+@import '@/assets/style/variables.scss';
+
+.box {
+ width: 100%;
+ display: flex;
+ align-items: center;
+
+ .box_menu {
+ width: 100px;
+ height: 100%;
+ flex-shrink: 0;
+ }
+
+ .box_tab {
+ flex: 1;
+ height: 100%;
+ }
+}
+
+.zhuguan {
+ color: $primary-color;
+ border: 1px solid $primary-color;
+ padding: 0px 3px;
+ border-radius: 4px;
+ margin-left: 6px;
+}
</style>
diff --git a/admin/src/views/platform/LogisticsRecord/operationCity.vue b/admin/src/views/platform/LogisticsRecord/operationCity.vue
index a2017c6..3dceb78 100644
--- a/admin/src/views/platform/LogisticsRecord/operationCity.vue
+++ b/admin/src/views/platform/LogisticsRecord/operationCity.vue
@@ -26,7 +26,7 @@
<el-table-column prop="carrierName" label="杩愯緭鍏徃" min-width="100" show-overflow-tooltip /> -->
<el-table-column prop="driverName" label="椹鹃┒鍛�" min-width="100" show-overflow-tooltip />
<el-table-column prop="drivierPhone" label="鑱旂郴鏂瑰紡" min-width="100" show-overflow-tooltip />
- <el-table-column prop="confirmTaskDate" label="纭鏃堕棿" min-width="150" show-overflow-tooltip />
+ <!-- <el-table-column prop="confirmTaskDate" label="纭鏃堕棿" min-width="150" show-overflow-tooltip /> -->
<el-table-column prop="signDate" label="绛惧埌鏃堕棿" min-width="150" show-overflow-tooltip />
<el-table-column prop="callDate" label="鍙彿鏃堕棿" min-width="150" show-overflow-tooltip />
<el-table-column prop="startDate" label="浣滀笟寮�濮嬫椂闂�" min-width="150" show-overflow-tooltip />
diff --git a/admin/src/views/platform/components/PlatformQueuing.vue b/admin/src/views/platform/components/PlatformQueuing.vue
index c175a11..973220c 100644
--- a/admin/src/views/platform/components/PlatformQueuing.vue
+++ b/admin/src/views/platform/components/PlatformQueuing.vue
@@ -96,6 +96,7 @@
platformId: activePlat.id
}).then(() => {
Message.success('鍙彿鎴愬姛')
+ this.$emit('success')
this.getList()
})
} else {
diff --git a/admin/src/views/platform/platform.vue b/admin/src/views/platform/platform.vue
index d344856..5f097ce 100644
--- a/admin/src/views/platform/platform.vue
+++ b/admin/src/views/platform/platform.vue
@@ -13,10 +13,10 @@
</el-option>
</el-select>
</el-form-item>
- <section>
+ <!-- <section> -->
<el-button type="primary" @click="search">鎼滅储</el-button>
<el-button @click="reset">閲嶇疆</el-button>
- </section>
+ <!-- </section> -->
</el-form>
</SearchFormCollapse>
<!-- 琛ㄦ牸鍜屽垎椤� -->
diff --git a/admin/src/views/vehicle/visitPark.vue b/admin/src/views/vehicle/visitPark.vue
index a9104e7..680b58c 100644
--- a/admin/src/views/vehicle/visitPark.vue
+++ b/admin/src/views/vehicle/visitPark.vue
@@ -1,18 +1,9 @@
<template>
- <TableLayout :permissions="['business:member:query']">
+ <TableLayout :permissions="['business:visitpark:query']">
<!-- 鎼滅储琛ㄥ崟 -->
<el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
<el-form-item title="杞︾墝鍙�" prop="carCode">
<el-input v-model="searchForm.carCode" placeholder="杞︾墝鍙�" @keypress.enter.native="search"></el-input>
- </el-form-item>
- <el-form-item title="杞︿富濮撳悕/鎵嬫満鍙�" prop="memberName">
- <el-input v-model="searchForm.memberName" placeholder="鍛樺伐濮撳悕/鎵嬫満鍙�" @keypress.enter.native="search"></el-input>
- </el-form-item>
- <el-form-item title="杞︿富缁勭粐" prop="companyName">
- <el-input v-model="searchForm.companyName" placeholder="杞︿富缁勭粐鍚嶇О" @keypress.enter.native="search"></el-input>
- </el-form-item>
- <el-form-item title="鍋滆溅搴撳悕绉�" prop="parksName">
- <el-input v-model="searchForm.parksName" placeholder="鍋滆溅搴撳悕绉�" @keypress.enter.native="search"></el-input>
</el-form-item>
<section>
<el-button type="primary" @click="search">鎼滅储</el-button>
@@ -21,10 +12,7 @@
</el-form>
<!-- 琛ㄦ牸鍜屽垎椤� -->
<template v-slot:table-wrap>
- <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']">
-<!--
- <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:cars:delete']">鍒犻櫎</el-button></li>
--->
+ <ul class="toolbar" v-permissions="['business:visitpark:create', 'business:visitpark:delete']">
</ul>
<el-table
v-loading="isWorking.search"
@@ -49,41 +37,18 @@
<div v-if="row.isdeleted==1" style="color: red">宸插垹闄�</div>
<div v-else style="color: green">
<span v-if="row.hkStatus==0" style="color: #435EBE">寰呬笅鍙�</span>
- <span v-if="row.hkStatus==1" style="color: green">涓嬪彂鎴愬姛</span>
- <span v-if="row.hkStatus==2" style="color: red">涓嬪彂澶辫触</span>
+ <span v-if="row.hkStatus==1" style="color: green">棰勭害鎴愬姛</span>
+ <span v-if="row.hkStatus==2" style="color: red">棰勭害澶辫触</span>
+ <span v-if="row.hkStatus==2" style="color: red">宸插彇娑�</span>
</div>
</template>
</el-table-column>
- <el-table-column label="鐢ㄦ埛绫诲瀷" min-width="100px">
- <template slot-scope="{row}">
- <span v-if="row.memberType === 0">鍔冲姟璁垮</span>
- <span v-if="row.memberType === 1">鏅�氳瀹�</span>
- <span v-if="row.memberType === 2">鍐呴儴浜哄憳</span>
- </template>
- </el-table-column>
- <el-table-column prop="memberName" label="濮撳悕" min-width="100px"></el-table-column>
- <el-table-column prop="memberPhone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
- <el-table-column prop="companyName" label="缁勭粐" min-width="100px"></el-table-column>
<el-table-column prop="remark" label="澶囨敞" min-width="100px">
<template slot-scope="{row}">
<span v-if="row.isdeleted !=2">{{row.remark}}</span>
</template>
</el-table-column>
<el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="140px"></el-table-column>
-<!-- <el-table-column-->
-<!-- v-if="containPermissions(['business:member:update', 'business:member:delete'])"-->
-<!-- label="鎿嶄綔"-->
-<!-- min-width="120"-->
-<!-- fixed="right"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!--<!– <el-button type="text" @click="$refs.operaCarsWindow.open('缂栬緫杞﹁締淇℃伅琛�', row)" icon="el-icon-edit" v-permissions="['business:member:update']">缂栬緫</el-button>–>-->
-<!-- <el-button type="text" @click="deleteById(row)" v-if="row.isdeleted !=1" icon="el-icon-delete" v-permissions="['business:parkbook:delete']">鍒犻櫎</el-button>-->
-<!--<!–-->
-<!-- <el-button type="text" @click="reUpdate(row)" v-if="row.isdeleted !=1 && row.hkStatus ==0" icon="el-icon-edit" v-permissions="['business:parkbook:update']">绔嬪埢涓嬪彂</el-button>-->
-<!--–>-->
-<!-- </template>-->
-<!-- </el-table-column>-->
</el-table>
<pagination
@size-change="handleSizeChange"
@@ -103,9 +68,6 @@
import Pagination from '@/components/common/Pagination'
import OperaCarsWindow from '@/components/business/OperaCarsWindow'
import { validity } from '@/utils/util'
-import { sync } from '@/api/business/cars'
-import { batchLoss } from '@/api/business/memberCard'
-import {reUpdate} from "@/api/business/parkBook";
export default {
name: 'parkBook',
extends: BaseTable,
@@ -133,13 +95,6 @@
methods: {
validity (startTime, endTime) {
return validity(startTime, endTime)
- },
- reUpdate (row) {
- reUpdate({ id: row.id })
- .then(res => {
- this.$message.success('鎿嶄綔鎴愬姛')
- this.search()
- })
}
}
}
diff --git a/h5/manifest.json b/h5/manifest.json
index 8563963..c43abaf 100644
--- a/h5/manifest.json
+++ b/h5/manifest.json
@@ -92,8 +92,8 @@
"/admin_interface" : {
// 杩欎釜瀛楁鍚嶉渶涓庝綘閰嶇疆鐨刡asePrefixUrl涓�鑷达紝绯荤粺璇嗗埆鍒板甫鏈�/dev-api璇锋眰鐨勫湴鍧�鏃讹紝浼氬湪鍓嶉潰鎷兼帴涓婁唬鐞嗘湇鍔″櫒鍦板潃
// "target" : "http://172.20.10.7:10010", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
- "target" : "http://192.168.0.100:10010", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
- // "target" : "http://10.50.250.178:8088/gateway_interface", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
+ // "target" : "http://192.168.0.100:10010", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
+ "target" : "http://10.50.250.178:8088/gateway_interface", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
"changeOrigin" : true, // 鍏佽璺ㄥ煙
"pathRewrite" : {
"^/admin_interface" : ""
diff --git a/h5/pages/driver/index.vue b/h5/pages/driver/index.vue
index f8350f4..7c535b4 100644
--- a/h5/pages/driver/index.vue
+++ b/h5/pages/driver/index.vue
@@ -40,10 +40,11 @@
</view>
</view>
<view class="sub">
- <view class="time" v-if="item.arriveDate">{{ item.arriveDate.slice(5) }}</view>
+ <view class="time" v-if="item.arriveDate && item.type == 4">{{ item.arriveDate.slice(5) }}</view>
+ <view class="time" v-if="item.type != 4 && item.platformWmsJob && item.platformWmsJob.ioCreatedate">{{ item.platformWmsJob.ioCreatedate.slice(5, 19) }}</view>
<view v-if="item.status == 0" class="sub_btn">纭浠诲姟</view>
<view v-if="item.status == 1" class="sub_btn">绔嬪嵆绛惧埌</view>
- <view v-if="item.status == 2" class="sub_btn">鏌ョ湅鎺掗槦</view>
+ <view v-if="item.status == 2" class="sub_btn" @click.stop="handleQueue(item)">鏌ョ湅鎺掗槦</view>
</view>
</view>
</view>
@@ -129,9 +130,11 @@
console.log(item);
if(status == 0){
uni.navigateTo({url: '/pages/driver/taskConfirm?id=' + item.id});
- }else if(status == 2){
- uni.navigateTo({url:'/pages/driver/queueUp?jobId=' + item.id})
- }else{
+ }
+ // else if(status == 2){
+ // uni.navigateTo({url:'/pages/driver/queueUp?jobId=' + item.id})
+ // }
+ else{
uni.navigateTo({url: `/pages/driver/taskDetail?id=${item.id}&status=${item.status}`});
}
},
@@ -317,7 +320,8 @@
display: flex;
justify-content: space-between;
align-items: center;
- padding: 0 30rpx 24rpx;
+ height: 68rpx;
+ padding: 0 30rpx 0;
.time {
font-size: 26rpx;
color: #999999;
diff --git a/h5/pages/driver/login.vue b/h5/pages/driver/login.vue
index 7671175..ef753f1 100644
--- a/h5/pages/driver/login.vue
+++ b/h5/pages/driver/login.vue
@@ -38,7 +38,7 @@
return {
form: {
username: '18056814089',
- password: '1'
+ password: '123456'
},
isShowProtocol: false,
countDown: 0
diff --git a/h5/pages/driver/queueUp.vue b/h5/pages/driver/queueUp.vue
index eed4c69..b0cb1a9 100644
--- a/h5/pages/driver/queueUp.vue
+++ b/h5/pages/driver/queueUp.vue
@@ -68,7 +68,7 @@
driverLineUpDetail({
mobile: jobId ? '' : uni.getStorageSync('driverInfo').mobile,
queryType: jobId ? 1 : 0,
- jobId: jobId
+ jobId: jobId,
}).then(res => {
this.platformGroupList = res.data.platformGroupList
if (res.data && res.data.platformGroupList && res.data.platformGroupList.length > 0) {
diff --git a/h5/pages/driver/taskDetail.vue b/h5/pages/driver/taskDetail.vue
index 9d23139..8be07c0 100644
--- a/h5/pages/driver/taskDetail.vue
+++ b/h5/pages/driver/taskDetail.vue
@@ -1,485 +1,546 @@
-<template>
- <view class="main_app">
- <view class="status_wrap">
- <image
- class="bg"
- src="../../static/driver/bg_renwu@2x.png"
- mode=""
- ></image>
- <view class="name" v-if="param.status == 1">璇蜂笌{{ param.arriveDate.slice(0,11) }}鐜板満绛惧埌</view>
- <view class="name" v-if="param.status == 2">鍓嶆柟鎺掗槦锛歿{param.lineUpNum}}杈�</view>
- <view class="name" v-if="param.status == 5">鏈堝彴浣滀笟涓�</view>
- <view class="name" v-if="param.status == 6">浣滀笟宸插畬鎴�</view>
- <view class="id_card">{{ param.carCodeFront }}</view>
- <view class="status">{{statusMap[param.status]}}</view>
- </view>
- <!-- -->
- <view class="main_content">
- <view class="line">
- <view class="label">鍙告満濮撳悕</view>
- <view class="value">{{param.driverName}}</view>
- </view>
- <view class="line">
- <view class="label">鎵嬫満鍙�</view>
- <view class="value">{{param.drivierPhone}}</view>
- </view>
- <template v-if="param.type != 4">
- <view class="line">
- <view class="label">杩愯緭鍗曞彿</view>
- <view class="value" @click="showDetail = true">
- <text class="waybill_num">{{param.billCode}}</text>
- <text class="btn">杩愬崟璇︽儏</text>
- </view>
- </view>
- <view class="line">
- <view class="label">浣滀笟绫诲瀷</view>
- <view class="value">甯傚叕鍙稿鍗忚溅鍗歌揣</view>
- </view>
- </template>
- <template v-else>
- <view class="line">
- <view class="label">鍚堝悓缂栧彿</view>
- <view class="value">{{param.contractNum}}</view>
- </view>
- <view class="line">
- <view class="label">鍏ュ簱绫诲瀷</view>
- <view class="value">{{param.inType == 0 ? '鏁存墭鐩�' : '浠剁儫'}}</view>
- </view>
- <view class="line">
- <view class="label">浣滀笟閲�</view>
- <view class="value">{{param.totalNum}}涓囨敮</view>
- </view>
- </template>
- <view class="line">
- <view class="label">杞︾墝鐓�</view>
- <view class="value">鍓嶏細{{param.carCodeFront}} | 鍚庯細{{param.carCodeBack}}</view>
- </view>
- <!-- -->
- <view class="line" v-if="param.status == 1">
- <view class="label">璺濈鍥尯</view>
- <view class="value">
- <view class="">{{param.getDistance}}鍏噷</view>
- <view class="btn" @click="getLocation">
- <image class="icon mr6" src="../../static/driver/position.png"></image>
- 閲嶆柊瀹氫綅
- </view>
- </view>
- </view>
- <view class="line" v-if="param.signDate">
- <view class="label">绛惧埌鏃堕棿</view>
- <view class="value">{{param.signDate}}</view>
- </view>
- <view class="line" v-if="param.startDate">
- <view class="label">寮�濮嬩綔涓�</view>
- <view class="value">{{param.startDate}}</view>
- </view>
- <view class="line" v-if="param.doneDate">
- <view class="label">浣滀笟瀹屾垚</view>
- <view class="value">{{param.doneDate}}</view>
- </view>
- <view v-if="param.status == 1" class="warnning">
- <u-icon name="info-circle" color="#ED4545" class="mr12"></u-icon>
- 濡傛棤娉曡幏鍙栧畾浣嶏紝璇风敤寰俊鎵弿鍥尯澶у睆浜岀淮
- </view>
- <!-- <view class="line">
- <view class="label">绛惧埌鏃堕棿</view>
- <view class="value">2022</view>
- </view>
- <view class="line">
- <view class="label">鍏ュ洯鏃堕棿</view>
- <view class="value">2022</view>
- </view>
- <view class="line">
- <view class="label">浣滀笟瀹屾垚</view>
- <view class="value">2022</view>
- </view> -->
- <view v-if="param.status == 1" class="signIn_wrap" @click="handleSignIn">
- <image
- :src="
- param.getDistance < signDistance
- ? require('@/static/driver/btn_qiandao@2x.png')
- : require('@/static/driver/btn_qiandao_fail@2x.png')
- "
- class="img"
- mode="widthFix"
- ></image>
- <view class="handle">{{ param.getDistance > signDistance ? '鏃犳硶绛惧埌' : '绛惧埌' }}</view>
- <view class="time">{{nowTime}}</view>
- </view>
- </view>
- <view class="space"></view>
- <!-- 绛夊緟鍙彿 -->
- <view v-if="param.status == 2" class="padding_wrap">
- <view class="btn check" @click="handleQueue">鏌ョ湅鎺掗槦鎯呭喌</view>
- </view>
-
- <!-- modal -->
- <u-popup
- :show="showDetail"
- :round="10"
- :safeAreaInsetBottom="true"
- closeOnClickOverlay
- :closeable="true"
- mode="bottom"
- @close="showDetail = false"
- >
- <view class="detail_modal">
- <view class="modal_title">杩愬崟璇︽儏</view>
- <view class="id_card">
- <view class="last">鐨�</view>
- <view class="name">AD1111</view>
- </view>
- <!-- -->
- <view class="info">
- <view class="line">
- <view class="label">杩愯緭鍗曞彿</view>
- <view class="value">2222</view>
- </view>
- <view class="line">
- <view class="label">椹鹃┒鍛�</view>
- <view class="value">2222</view>
- </view>
- <view class="line">
- <view class="label">鎬昏繍杈撻噺</view>
- <view class="value">2222</view>
- </view>
- <view class="line">
- <view class="label">杩愯緭鍏徃</view>
- <view class="value">2222</view>
- </view>
- </view>
- <view class="separate"></view>
- <view class="contract_list">
- <view class="title">鍚堝悓鍙凤細111</view>
- <view class="address">aadd</view>
- <view class="list">
- <view class="line">
- <view class="label">鐗╂枡锛�</view>
- <view class="value">榛勫北榛戦┈</view>
- </view>
- <view class="line">
- <view class="label">鏁伴噺锛�</view>
- <view class="value">榛勫北榛戦┈</view>
- </view>
- <view class="line">
- <view class="label">鐗╂枡锛�</view>
- <view class="value">榛勫北榛戦┈</view>
- </view>
- <view class="line">
- <view class="label">鏁伴噺锛�</view>
- <view class="value">榛勫北榛戦┈</view>
- </view>
- </view>
- </view>
- </view>
- </u-popup>
- </view>
-</template>
-
-<script>
- import { driverTaskJobDetail, driverSignInTask } from '@/api';
- import { statusMap } from '@/utils/config.js';
- import dayjs from 'dayjs';
-export default {
- data() {
- return {
- statusMap,
- param: {
- status: '0'
- },
- jobId: '',
- // lat: '',
- // lnt: '',
- lat: '31.783205',
- lnt: '117.262635',
- nowTime: '',
- signDistance: uni.getStorageSync('driverGuide').signDistance,
- showDetail: false,
- }
- },
- onLoad(option) {
- this.jobId = option.id
- // if(option.status && option.status == '1'){
- // this.getLocation()
- // }else{
- // this.getDetail()
- // }
- this.getDetail()
- setInterval(() => {
- this.nowTime = dayjs().format('HH:mm:ss')
- })
- },
- methods: {
- handleSignIn() {
- const { param, signDistance, lat, lnt, jobId } = this
- if(param.getDistance > signDistance) return
- driverSignInTask({
- jobId, lat, lnt,signType: 0
- }).then(res => {
- this.showToast('绛惧埌鎴愬姛')
- this.getDetail()
- })
- },
- getDetail() {
- const { jobId, lat, lnt } = this
- driverTaskJobDetail({
- jobId: this.jobId,
- lat,
- lnt
- }).then(ress => {
- this.param = { ...ress.data }
- })
- },
- getLocation() {
- const { jobId } = this
- uni.getLocation({
- type: 'wgs84',
- success: (res) => {
- this.lat = res.latitude
- this.lnt = res.longitude
- this.getDetail()
- },
- fail:(err) => {
- this.showToast('鑾峰彇瀹氫綅澶辫触')
- }
- })
- },
- handleQueue() {
- uni.navigateTo({
- url:'/pages/driver/queueUp?jobId=' + this.jobId
- })
- },
- }
-}
-</script>
-
-<style lang="scss">
-.main_app {
- padding: 0;
- .main_content {
- background: #ffffff;
- border-radius: 20rpx 20rpx 0rpx 0rpx;
- padding: 16rpx 30rpx;
- position: relative;
- bottom: 32rpx;
- z-index: 999;
- .line {
- padding: 24rpx 0 28rpx;
- border-bottom: 1rpx solid #e5e5e5;
- display: flex;
- .label {
- width: 150rpx;
- font-size: 30rpx;
- color: #666666;
- }
- .value {
- flex: 1;
- display: flex;
- justify-content: space-between;
- align-items: center;
- font-size: 30rpx;
- .waybill_num {
- flex: 1;
- }
- .btn {
- font-size: 28rpx;
- color: $uni-color-primary;
- display: flex;
- align-items: center;
- .icon{
- width: 30rpx;
- height: 30rpx;
- }
- }
- }
- }
- .warnning {
- display: flex;
- color: #ed4545;
- align-items: center;
- margin: 40rpx 0;
- }
- .signIn_wrap {
- margin: 80rpx auto;
- width: 260rpx;
- height: 260rpx;
- position: relative;
- color: #fff;
- z-index: 1;
- display: flex;
- flex-direction: column;
- justify-content: center;
- align-items: center;
- .handle {
- font-weight: 600;
- font-size: 40rpx;
- line-height: 56rpx;
- }
- .time {
- color: rgba(255, 255, 255, 0.7);
- }
- .img {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- z-index: -1;
- }
- }
- }
- .status_wrap {
- height: 200rpx;
- width: 100%;
- padding: 30rpx;
- position: relative;
- color: #fff;
- .bg {
- width: 100%;
- height: 100%;
- position: absolute;
- top: 0;
- left: 0;
- z-index: -1;
- }
- .name {
- font-weight: 600;
- font-size: 40rpx;
- line-height: 56rpx;
- margin-bottom: 12rpx;
- }
- .id_card {
- color: rgba(255, 255, 255, 0.8);
- }
- .status {
- position: absolute;
- right: 0;
- top: 30rpx;
- height: 68rpx;
- line-height: 68rpx;
- background: #ffffff;
- padding: 0 24rpx;
- border-radius: 34rpx 0rpx 0rpx 34rpx;
- font-size: 26rpx;
- color: $uni-color-primary;
- }
- }
- .space {
- width: 750rpx;
- height: 200rpx;
- }
- .padding_wrap {
- position: fixed;
- z-index: 999;
- padding: 0 30rpx 64rpx;
- bottom: 0;
- left: 0;
- width: 100%;
- display: flex;
- justify-content: space-between;
- .btn {
- height: 96rpx;
- line-height: 96rpx;
- text-align: center;
- width: 100%;
- font-size: 36rpx;
- color: #333333;
- background: #ffffff;
- border-radius: 48rpx;
- border: 1rpx solid #999999;
- }
- .check {
- background: $uni-color-primary;
- border: 1rpx solid $uni-color-primary;
- color: #fff;
- }
- }
-}
-.detail_modal {
- padding: 36rpx 30rpx;
- .modal_title {
- font-weight: 600;
- font-size: 32rpx;
- color: #222222;
- line-height: 44rpx;
- text-align: center;
- margin-bottom: 36rpx;
- }
- .contract_list {
- .list {
- background: #f7f7f7;
- border-radius: 8rpx;
- padding: 20rpx;
- .line {
- display: flex;
- margin-bottom: 20rpx;
- &:nth-of-type(3n) {
- border-top: 1rpx solid #e5e5e5;
- padding-top: 20rpx;
- }
- .label {
- color: #666666;
- width: 86rpx;
- }
- .value {
- flex: 1;
- color: #222222;
- }
- }
- }
- .title {
- font-weight: 600;
- font-size: 30rpx;
- color: $uni-color-primary;
- margin-bottom: 12rpx;
- }
- .address {
- font-size: 26rpx;
- color: #666666;
- margin-bottom: 20rpx;
- }
- }
- .info {
- .line {
- display: flex;
- margin-bottom: 20rpx;
- .label {
- font-size: 30rpx;
- color: #666666;
- width: 150rpx;
- }
- .value {
- flex: 1;
- font-size: 30rpx;
- color: #222222;
- }
- }
- }
- .separate {
- width: 750rpx;
- height: 2rpx;
- margin: 30rpx -30rpx;
- border: 1rpx solid #e5e5e5;
- }
- .id_card {
- border-radius: 8rpx;
- display: flex;
- height: 60rpx;
- line-height: 60rpx;
- font-weight: 600;
- font-size: 36rpx;
- color: #111111;
- text-align: center;
- margin-bottom: 30rpx;
- .last {
- background: #e9f5f6;
- width: 60rpx;
- border-radius: 8rpx 0rpx 0rpx 8rpx;
- border: 1rpx solid #dfdede;
- }
- .name {
- width: 186rpx;
- border: 1rpx solid #dfdede;
- }
- }
-}
-</style>
+<template>
+ <view class="main_app">
+ <view class="status_wrap">
+ <image class="bg" src="../../static/driver/bg_renwu@2x.png" mode=""></image>
+ <view class="name" v-if="param.status == 1">璇蜂笌{{ param.arriveDate.slice(0,11) }}鐜板満绛惧埌</view>
+ <view class="name" v-if="param.status == 2">鍓嶆柟鎺掗槦锛歿{param.lineUpNum}}杈�</view>
+ <view class="name" v-if="param.status == 3">鍏ュ洯绛夊緟</view>
+ <view class="name" v-if="param.status == 5">鏈堝彴浣滀笟涓�</view>
+ <view class="name" v-if="param.status == 6">浣滀笟宸插畬鎴�</view>
+ <view class="id_card">{{ param.carCodeFront }}</view>
+ <view class="status">{{statusMap[param.status]}}</view>
+ </view>
+ <!-- -->
+ <view class="main_content">
+ <view class="line">
+ <view class="label">鍙告満濮撳悕</view>
+ <view class="value">{{param.driverName}}</view>
+ </view>
+ <view class="line">
+ <view class="label">鎵嬫満鍙�</view>
+ <view class="value">{{param.drivierPhone}}</view>
+ </view>
+ <template v-if="param.type != 4">
+ <view class="line">
+ <view class="label">杩愯緭鍗曞彿</view>
+ <view class="value" @click="wmsDetail">
+ <text class="waybill_num">{{param.billCode}}</text>
+ <text class="btn">杩愬崟璇︽儏</text>
+ </view>
+ </view>
+ <view class="line">
+ <view class="label">浣滀笟绫诲瀷</view>
+ <view class="value" v-if="param.type == 0">鑷湁杞﹀嵏璐�</view>
+ <view class="value" v-if="param.type == 1">鑷湁杞﹁璐�</view>
+ <view class="value" v-if="param.type == 2">澶栧崗杞﹀嵏璐�</view>
+ <view class="value" v-if="param.type == 3">澶栧崗杞﹁璐�</view>
+ </view>
+ </template>
+ <template v-else>
+ <view class="line">
+ <view class="label">鍚堝悓缂栧彿</view>
+ <view class="value">{{param.contractNum}}</view>
+ </view>
+ <view class="line">
+ <view class="label">鍏ュ簱绫诲瀷</view>
+ <view class="value">{{param.inType == 0 ? '鏁存墭鐩�' : '浠剁儫'}}</view>
+ </view>
+ <view class="line">
+ <view class="label">浣滀笟閲�</view>
+ <view class="value">{{param.totalNum}}涓囨敮</view>
+ </view>
+ </template>
+ <view class="line">
+ <view class="label">杞︾墝鐓�</view>
+ <view class="value">鍓嶏細{{param.carCodeFront}} | 鍚庯細{{param.carCodeBack}}</view>
+ </view>
+ <!-- -->
+ <view class="line" v-if="param.status == 1">
+ <view class="label">璺濈鍥尯</view>
+ <view class="value">
+ <view class="">{{param.getDistance}}鍏噷</view>
+ <view class="btn" @click="getLocation">
+ <image class="icon mr6" src="../../static/driver/position.png"></image>
+ 閲嶆柊瀹氫綅
+ </view>
+ </view>
+ </view>
+ <view class="line" v-if="param.signDate">
+ <view class="label">绛惧埌鏃堕棿</view>
+ <view class="value">{{param.signDate}}</view>
+ </view>
+ <view class="line" v-if="param.startDate">
+ <view class="label">寮�濮嬩綔涓�</view>
+ <view class="value">{{param.startDate}}</view>
+ </view>
+ <view class="line" v-if="param.doneDate">
+ <view class="label">浣滀笟瀹屾垚</view>
+ <view class="value">{{param.doneDate}}</view>
+ </view>
+ <view v-if="param.status == 1" class="warnning">
+ <u-icon name="info-circle" color="#ED4545" class="mr12"></u-icon>
+ 濡傛棤娉曡幏鍙栧畾浣嶏紝璇风敤寰俊鎵弿鍥尯澶у睆浜岀淮
+ </view>
+ <!-- <view class="line">
+ <view class="label">绛惧埌鏃堕棿</view>
+ <view class="value">2022</view>
+ </view>
+ <view class="line">
+ <view class="label">鍏ュ洯鏃堕棿</view>
+ <view class="value">2022</view>
+ </view>
+ <view class="line">
+ <view class="label">浣滀笟瀹屾垚</view>
+ <view class="value">2022</view>
+ </view> -->
+ <view v-if="param.status == 1" class="signIn_wrap" @click="handleSignIn">
+ <image :src="
+ param.getDistance < signDistance
+ ? require('@/static/driver/btn_qiandao@2x.png')
+ : require('@/static/driver/btn_qiandao_fail@2x.png')
+ " class="img" mode="widthFix"></image>
+ <view class="handle">{{ param.getDistance > signDistance ? '鏃犳硶绛惧埌' : '绛惧埌' }}</view>
+ <view class="time">{{nowTime}}</view>
+ </view>
+ </view>
+ <view class="space"></view>
+ <!-- 绛夊緟鍙彿 -->
+ <view v-if="param.status == 2" class="padding_wrap">
+ <view class="btn check" @click="handleQueue">鏌ョ湅鎺掗槦鎯呭喌</view>
+ </view>
+
+ <!-- modal -->
+ <u-popup :show="showDetail" :round="10" :safeAreaInsetBottom="true" closeOnClickOverlay :closeable="true"
+ mode="bottom" @close="showDetail = false">
+ <view class="detail_modal">
+ <view class="modal_title">杩愬崟璇︽儏</view>
+ <view v-if="wmsInfo.plateNumber" class="id_card">
+ <text>{{ wmsInfo.plateNumber.slice(0, 1) }}</text>
+ <text>{{ wmsInfo.plateNumber.slice(1, 2) }}</text>
+ <text>路</text>
+ <text>{{ wmsInfo.plateNumber.slice(2) }}</text>
+ </view>
+ <!-- -->
+ <view class="info">
+ <view class="line">
+ <view class="label">杩愯緭鍗曞彿</view>
+ <view class="value">{{ wmsInfo.carryBillCode }}</view>
+ </view>
+ <view class="line">
+ <view class="label">椹鹃┒鍛�</view>
+ <view class="value">{{ wmsInfo.driverName }} {{ wmsInfo.driverPhone }}</view>
+ </view>
+ <view class="line">
+ <view class="label">鎬昏繍杈撻噺</view>
+ <view class="value">{{ wmsInfo.ioQty }}涓囨敮</view>
+ </view>
+ <view class="line">
+ <view class="label">杩愯緭鍏徃</view>
+ <view class="value">{{ wmsInfo.carrierName }}</view>
+ </view>
+ </view>
+ <view class="separate"></view>
+ <view class="contract_list" v-for="item in wmsInfo.wmsJobContractVOList">
+ <view class="title">鍚堝悓鍙凤細{{ item.contractCode }}</view>
+ <view class="address">鏀惰揣鍦帮細{{ item.address }}</view>
+ <view class="list">
+ <view class="item" v-for="line in item.platformWmsDetailList">
+ <view class="line">
+ <view class="label">鐗╂枡锛�</view>
+ <view class="value">{{ line.materialName }}</view>
+ </view>
+ <view class="line">
+ <view class="label">鏁伴噺锛�</view>
+ <view class="value">{{ line.ioQty }}</view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </u-popup>
+ </view>
+</template>
+
+<script>
+ import {
+ driverTaskJobDetail,
+ driverSignInTask,
+ wmsJobDetail
+ } from '@/api';
+ import {
+ statusMap
+ } from '@/utils/config.js';
+ import dayjs from 'dayjs';
+ export default {
+ data() {
+ return {
+ statusMap,
+ param: {
+ status: '0'
+ },
+ jobId: '',
+ // lat: '',
+ // lnt: '',
+ lat: '31.783205',
+ lnt: '117.262635',
+ nowTime: '',
+ wmsInfo: {},
+ signDistance: uni.getStorageSync('driverGuide').signDistance,
+ showDetail: false,
+ }
+ },
+ onLoad(option) {
+ this.jobId = option.id
+ // if(option.status && option.status == '1'){
+ // this.getLocation()
+ // }else{
+ // this.getDetail()
+ // }
+ this.getDetail()
+ setInterval(() => {
+ this.nowTime = dayjs().format('HH:mm:ss')
+ })
+ },
+ methods: {
+ handleSignIn() {
+ const {
+ param,
+ signDistance,
+ lat,
+ lnt,
+ jobId
+ } = this
+ if (param.getDistance > signDistance) return
+ driverSignInTask({
+ jobId,
+ lat,
+ lnt,
+ signType: 0
+ }).then(res => {
+ this.showToast('绛惧埌鎴愬姛')
+ this.getDetail()
+ })
+ },
+ getDetail() {
+ const {
+ jobId,
+ lat,
+ lnt
+ } = this
+ driverTaskJobDetail({
+ jobId: this.jobId,
+ lat,
+ lnt
+ }).then(ress => {
+ this.param = {
+ ...ress.data
+ }
+ })
+ },
+ wmsDetail() {
+ const {
+ param
+ } = this
+ wmsJobDetail({
+ id: param.id
+ }).then(res => {
+ this.wmsInfo = res.data
+ this.showDetail = true
+ })
+ },
+ getLocation() {
+ const {
+ jobId
+ } = this
+ uni.getLocation({
+ type: 'wgs84',
+ success: (res) => {
+ this.lat = res.latitude
+ this.lnt = res.longitude
+ this.getDetail()
+ },
+ fail: (err) => {
+ this.showToast('鑾峰彇瀹氫綅澶辫触')
+ }
+ })
+ },
+ handleQueue() {
+ uni.navigateTo({
+ url: '/pages/driver/queueUp?jobId=' + this.jobId
+ })
+ },
+ }
+ }
+</script>
+
+<style lang="scss">
+ .main_app {
+ padding: 0;
+
+ .main_content {
+ background: #ffffff;
+ border-radius: 20rpx 20rpx 0rpx 0rpx;
+ padding: 16rpx 30rpx;
+ position: relative;
+ bottom: 32rpx;
+ z-index: 999;
+
+ .line {
+ padding: 24rpx 0 28rpx;
+ border-bottom: 1rpx solid #e5e5e5;
+ display: flex;
+
+ .label {
+ width: 150rpx;
+ font-size: 30rpx;
+ color: #666666;
+ }
+
+ .value {
+ flex: 1;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 30rpx;
+
+ .waybill_num {
+ flex: 1;
+ }
+
+ .btn {
+ font-size: 28rpx;
+ color: $uni-color-primary;
+ display: flex;
+ align-items: center;
+
+ .icon {
+ width: 30rpx;
+ height: 30rpx;
+ }
+ }
+ }
+ }
+
+ .warnning {
+ display: flex;
+ color: #ed4545;
+ align-items: center;
+ margin: 40rpx 0;
+ }
+
+ .signIn_wrap {
+ margin: 80rpx auto;
+ width: 260rpx;
+ height: 260rpx;
+ position: relative;
+ color: #fff;
+ z-index: 1;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+
+ .handle {
+ font-weight: 600;
+ font-size: 40rpx;
+ line-height: 56rpx;
+ }
+
+ .time {
+ color: rgba(255, 255, 255, 0.7);
+ }
+
+ .img {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ z-index: -1;
+ }
+ }
+ }
+
+ .status_wrap {
+ height: 200rpx;
+ width: 100%;
+ padding: 30rpx;
+ position: relative;
+ color: #fff;
+
+ .bg {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: -1;
+ }
+
+ .name {
+ font-weight: 600;
+ font-size: 40rpx;
+ line-height: 56rpx;
+ margin-bottom: 12rpx;
+ }
+
+ .id_card {
+ color: rgba(255, 255, 255, 0.8);
+ }
+
+ .status {
+ position: absolute;
+ right: 0;
+ top: 30rpx;
+ height: 68rpx;
+ line-height: 68rpx;
+ background: #ffffff;
+ padding: 0 24rpx;
+ border-radius: 34rpx 0rpx 0rpx 34rpx;
+ font-size: 26rpx;
+ color: $uni-color-primary;
+ }
+ }
+
+ .space {
+ width: 750rpx;
+ height: 200rpx;
+ }
+
+ .padding_wrap {
+ position: fixed;
+ z-index: 999;
+ padding: 0 30rpx 64rpx;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ display: flex;
+ justify-content: space-between;
+
+ .btn {
+ height: 96rpx;
+ line-height: 96rpx;
+ text-align: center;
+ width: 100%;
+ font-size: 36rpx;
+ color: #333333;
+ background: #ffffff;
+ border-radius: 48rpx;
+ border: 1rpx solid #999999;
+ }
+
+ .check {
+ background: $uni-color-primary;
+ border: 1rpx solid $uni-color-primary;
+ color: #fff;
+ }
+ }
+ }
+
+ .detail_modal {
+ padding: 36rpx 30rpx;
+
+ .modal_title {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #222222;
+ line-height: 44rpx;
+ text-align: center;
+ margin-bottom: 36rpx;
+ }
+
+ .contract_list {
+ .list {
+ background: #f7f7f7;
+ border-radius: 8rpx;
+ padding: 20rpx;
+
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ &:nth-of-type(3n) {
+ border-top: 1rpx solid #e5e5e5;
+ padding-top: 20rpx;
+ }
+
+ .label {
+ color: #666666;
+ width: 86rpx;
+ }
+
+ .value {
+ flex: 1;
+ color: #222222;
+ }
+ }
+ }
+
+ .title {
+ font-weight: 600;
+ font-size: 30rpx;
+ color: $uni-color-primary;
+ margin-bottom: 12rpx;
+ }
+
+ .address {
+ font-size: 26rpx;
+ color: #666666;
+ margin-bottom: 20rpx;
+ }
+ }
+
+ .info {
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ .label {
+ font-size: 30rpx;
+ color: #666666;
+ width: 150rpx;
+ }
+
+ .value {
+ flex: 1;
+ font-size: 30rpx;
+ color: #222222;
+ }
+ }
+ }
+
+ .separate {
+ width: 750rpx;
+ height: 2rpx;
+ margin: 30rpx -30rpx;
+ border: 1rpx solid #e5e5e5;
+ }
+
+ .id_card {
+ display: flex;
+ font-weight: 600;
+ height: 60rpx;
+ line-height: 60rpx;
+ font-size: 32rpx;
+ color: #111111;
+ border-radius: 8rpx;
+ border: 1rpx solid #dfdede;
+ width: 220rpx;
+ margin-bottom: 15rpx;
+
+ text {
+ &:nth-of-type(1) {
+ background: #e9f5f6;
+ padding: 0 12rpx;
+ }
+
+ &:nth-of-type(2) {
+ padding-left: 10rpx;
+ }
+
+ &:nth-of-type(4) {
+ padding-right: 6rpx;
+ }
+ }
+ }
+ }
+</style>
\ No newline at end of file
diff --git a/pda/api/index.js b/pda/api/index.js
index a8ee63f..c7c9064 100644
--- a/pda/api/index.js
+++ b/pda/api/index.js
@@ -149,4 +149,12 @@
method: 'post',
data
})
+}
+// wms杩愬崟璇︽儏
+export const wmsJobDetail = (data) => {
+ return http({
+ url: 'visitsAdmin/cloudService/web/pdaPlatform/wmsJobDetail',
+ method: 'get',
+ data
+ })
}
\ No newline at end of file
diff --git a/pda/manifest.json b/pda/manifest.json
index c6e620f..efecef9 100644
--- a/pda/manifest.json
+++ b/pda/manifest.json
@@ -18,8 +18,8 @@
"proxy": {
"/gateway_interface": {
// 杩欎釜瀛楁鍚嶉渶涓庝綘閰嶇疆鐨刡asePrefixUrl涓�鑷达紝绯荤粺璇嗗埆鍒板甫鏈�/dev-api璇锋眰鐨勫湴鍧�鏃讹紝浼氬湪鍓嶉潰鎷兼帴涓婁唬鐞嗘湇鍔″櫒鍦板潃
- // "target" : "http://10.50.250.178:8088/gateway_interface", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
- "target": "http://192.168.0.100:10010", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
+ "target" : "http://10.50.250.178:8088/gateway_interface", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
+ // "target": "http://192.168.0.100:10010", // 浠g悊鏈嶅姟鍣ㄥ煙鍚嶆垨IP鍦板潃
"changeOrigin": true, // 鍏佽璺ㄥ煙
"pathRewrite": {
"^/gateway_interface": "" // 閲嶅啓鍦板潃锛屽鏋滃疄闄呮帴鍙d腑鏄笉甯�/dev-api锛岄渶瑕佸皢杩欎釜鍓嶇紑缃┖锛屽洜涓鸿繖涓墠缂�鍙槸涓轰簡璇嗗埆鐢紝璇嗗埆瀹屼箣鍚庡氨娌$敤浜�
diff --git a/pda/pages/index/center.vue b/pda/pages/index/center.vue
index a528592..6d0733b 100644
--- a/pda/pages/index/center.vue
+++ b/pda/pages/index/center.vue
@@ -6,7 +6,8 @@
<view class="platform_list">
<view class="item" :class="{ active: item.id === activePlatform.id }"
v-for="(item, index) in activePlatformGroup.platformList" :key="index" @click="platformClick(item)">
- {{ item.name }}</view>
+ {{ item.name }}
+ </view>
</view>
<view class="status_wrap">
<view class="status">浣滀笟锛�<text>{{ platformTaskInfo.workNum }}</text></view>
@@ -26,7 +27,8 @@
<text>{{ item.carCodeFront.slice(2) }}</text>
</view>
<view class="status" v-if="item.status != 4 && item.status != 5" :class="{ red: item.status == 8 }">
- {{ statusMap[item.status] }}</view>
+ {{ statusMap[item.status] }}
+ </view>
<view class="status" v-if="item.status == 4">鍙彿涓� {{ item.callDateTemp }}</view>
<view class="status scs" v-if="item.status == 5">宸蹭綔涓� {{ item.startDateTemp }}</view>
</view>
@@ -37,7 +39,7 @@
<view class="line" v-else>
<text class="label">杩愯緭鍗曞彿</text>
<text class="value">{{ item.code }}</text>
- <text class="primaryColor" @click="handleDetail()">杩愬崟璇︽儏</text>
+ <text class="primaryColor" @click="handleDetail(item)">杩愬崟璇︽儏</text>
</view>
<view class="line">
<text class="label">椹鹃┒鍛�</text>
@@ -100,8 +102,8 @@
</view>
<view class="line" v-else>
<text class="label">杩愯緭鍗曞彿</text>
- <text class="value">{{ item.code }}</text>
- <text class="primaryColor" @click="handleDetail()">杩愬崟璇︽儏</text>
+ <text class="value">{{ item.billCode }}</text>
+ <text class="primaryColor" @click="handleDetail(item)">杩愬崟璇︽儏</text>
</view>
<view class="line">
<text class="label">椹鹃┒鍛�</text>
@@ -124,53 +126,48 @@
</view>
</u-popup>
<!-- 杩愬崟璇︽儏 -->
- <u-popup :show="showDetail" closeable safeAreaInsetTop round="10" @close="showDetail = false">
- <view class="PlatformCallModal" :style="{ height: 'calc(100vh - ' + windowTop + 'px)' }">
- <view class="title">杩愬崟璇︽儏</view>
- <view class="platform_ing" style="padding: 0">
- <view class="head">
- <view class="code">
- <text>鐨�</text>
- <text>AD1212</text>
- </view>
+ <u-popup :show="showDetail" :round="10" :safeAreaInsetBottom="true" closeOnClickOverlay :closeable="true"
+ mode="bottom" @close="showDetail = false">
+ <view class="detail_modal">
+ <view class="modal_title">杩愬崟璇︽儏</view>
+ <view v-if="wmsInfo.plateNumber" class="id_card">
+ <text>{{ wmsInfo.plateNumber.slice(0, 1) }}</text>
+ <text>{{ wmsInfo.plateNumber.slice(1, 2) }}</text>
+ <text>路</text>
+ <text>{{ wmsInfo.plateNumber.slice(2) }}</text>
+ </view>
+ <!-- -->
+ <view class="info">
+ <view class="line">
+ <view class="label">杩愯緭鍗曞彿</view>
+ <view class="value">{{ wmsInfo.carryBillCode }}</view>
</view>
<view class="line">
- <text class="label">杩愯緭鍗曞彿</text>
- <text class="value">11111</text>
+ <view class="label">椹鹃┒鍛�</view>
+ <view class="value">{{ wmsInfo.driverName }} {{ wmsInfo.driverPhone }}</view>
</view>
<view class="line">
- <text class="label">椹鹃┒鍛�</text>
- <text class="value">11111</text>
+ <view class="label">鎬昏繍杈撻噺</view>
+ <view class="value">{{ wmsInfo.ioQty }}涓囨敮</view>
</view>
<view class="line">
- <text class="label">鎬昏繍杈撻噺</text>
- <text class="value">11111</text>
- </view>
- <view class="line">
- <text class="label">杩愯緭鍏徃</text>
- <text class="value">11111</text>
+ <view class="label">杩愯緭鍏徃</view>
+ <view class="value">{{ wmsInfo.carrierName }}</view>
</view>
</view>
- <view class="detail_list">
- <view class="item">
- <view class="orderId">鍚堝悓缂栧彿锛歿{ 111 }}</view>
- <view class="addr">鏀惰揣鍦帮細{{ 111 }}</view>
- <view class="content">
+ <view class="separate"></view>
+ <view class="contract_list" v-for="item in wmsInfo.wmsJobContractVOList">
+ <view class="title">鍚堝悓鍙凤細{{ item.contractCode }}</view>
+ <view class="address">鏀惰揣鍦帮細{{ item.address }}</view>
+ <view class="list">
+ <view class="item" v-for="line in item.platformWmsDetailList">
<view class="line">
<view class="label">鐗╂枡锛�</view>
- <view class="value">榛勫北</view>
+ <view class="value">{{ line.materialName }}</view>
</view>
<view class="line">
<view class="label">鏁伴噺锛�</view>
- <view class="value">榛勫北</view>
- </view>
- <view class="line">
- <view class="label">鐗╂枡锛�</view>
- <view class="value">榛勫北</view>
- </view>
- <view class="line">
- <view class="label">鏁伴噺锛�</view>
- <view class="value">榛勫北</view>
+ <view class="value">{{ line.ioQty }}涓囨敮</view>
</view>
</view>
</view>
@@ -213,7 +210,8 @@
finishWork,
platformMove,
platformErr,
- platformOverNumber
+ platformOverNumber,
+ wmsJobDetail
} from '@/api'
import {
statusMap
@@ -245,6 +243,7 @@
transformPlatId: '', // 杞Щ璁板綍鏈堝彴id
transformId: '', // 杞Щ璁板綍浠诲姟id
+ wmsInfo: {}
}
},
onLoad() {
@@ -317,8 +316,13 @@
this.activePlatform = item
this.getPlatformTask()
},
- handleDetail() {
- this.showDetail = true
+ handleDetail(param) {
+ wmsJobDetail({
+ id: param.id
+ }).then(res => {
+ this.wmsInfo = res.data
+ this.showDetail = true
+ })
},
handleFinish(item) {
finishWork({
@@ -362,7 +366,8 @@
this.platformCallPage = 1
if (callType == 1) { // 鍏ュ洯鍙彿
platformInPark({
- jobId: item.id
+ jobId: item.id,
+ platformId: activePlatform.id
}).then(res => {
this.showToast('鍙彿鎴愬姛')
this.getPlatformCallList()
@@ -848,4 +853,112 @@
}
}
}
+
+ .detail_modal {
+ padding: 36rpx 30rpx;
+
+ .modal_title {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #222222;
+ line-height: 44rpx;
+ text-align: center;
+ margin-bottom: 36rpx;
+ }
+
+ .contract_list {
+ .list {
+ background: #f7f7f7;
+ border-radius: 8rpx;
+ padding: 20rpx;
+
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ &:nth-of-type(3n) {
+ border-top: 1rpx solid #e5e5e5;
+ padding-top: 20rpx;
+ }
+
+ .label {
+ color: #666666;
+ width: 92rpx;
+ }
+
+ .value {
+ flex: 1;
+ color: #222222;
+ }
+ }
+ }
+
+ .title {
+ font-weight: 600;
+ font-size: 30rpx;
+ color: $uni-color-primary;
+ margin-bottom: 12rpx;
+ }
+
+ .address {
+ font-size: 26rpx;
+ color: #666666;
+ margin-bottom: 20rpx;
+ }
+ }
+
+ .info {
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ .label {
+ font-size: 30rpx;
+ color: #666666;
+ width: 150rpx;
+ }
+
+ .value {
+ flex: 1;
+ font-size: 30rpx;
+ color: #222222;
+ }
+ }
+ }
+
+ .separate {
+ width: 750rpx;
+ height: 2rpx;
+ margin: 30rpx -30rpx;
+ border: 1rpx solid #e5e5e5;
+ }
+
+ .id_card {
+ display: flex;
+ font-weight: 600;
+ height: 60rpx;
+ line-height: 60rpx;
+ font-size: 32rpx;
+ color: #111111;
+ border-radius: 8rpx;
+ border: 1rpx solid #dfdede;
+ width: 220rpx;
+ margin-bottom: 15rpx;
+
+ text {
+ &:nth-of-type(1) {
+ background: #e9f5f6;
+ padding: 0 12rpx;
+ }
+
+ &:nth-of-type(2) {
+ padding-left: 10rpx;
+ }
+
+ &:nth-of-type(4) {
+ padding-right: 6rpx;
+ }
+ }
+ }
+ }
</style>
\ No newline at end of file
diff --git a/pda/pages/index/queueup.vue b/pda/pages/index/queueup.vue
index a62ada9..dcbedc5 100644
--- a/pda/pages/index/queueup.vue
+++ b/pda/pages/index/queueup.vue
@@ -44,8 +44,8 @@
</view>
<view class="line" v-else>
<text class="label">杩愯緭鍗曞彿</text>
- <text class="value">{{ item.code }}</text>
- <text class="primaryColor" @click="handleDetail()">杩愬崟璇︽儏</text>
+ <text class="value">{{ item.billCode }}</text>
+ <text class="primaryColor" @click="handleDetail(item)">杩愬崟璇︽儏</text>
</view>
<view class="line">
<text class="label">椹鹃┒鍛�</text>
@@ -70,7 +70,55 @@
<text>鏆傛棤浣滀笟杞﹁締</text>
</view>
</view>
- <u-picker
+ <u-popup :show="showDetail" :round="10" :safeAreaInsetBottom="true" closeOnClickOverlay :closeable="true"
+ mode="bottom" @close="showDetail = false">
+ <view class="detail_modal">
+ <view class="modal_title">杩愬崟璇︽儏</view>
+ <view v-if="wmsInfo.plateNumber" class="id_card">
+ <text>{{ wmsInfo.plateNumber.slice(0, 1) }}</text>
+ <text>{{ wmsInfo.plateNumber.slice(1, 2) }}</text>
+ <text>路</text>
+ <text>{{ wmsInfo.plateNumber.slice(2) }}</text>
+ </view>
+ <!-- -->
+ <view class="info">
+ <view class="line">
+ <view class="label">杩愯緭鍗曞彿</view>
+ <view class="value">{{ wmsInfo.carryBillCode }}</view>
+ </view>
+ <view class="line">
+ <view class="label">椹鹃┒鍛�</view>
+ <view class="value">{{ wmsInfo.driverName }} {{ wmsInfo.driverPhone }}</view>
+ </view>
+ <view class="line">
+ <view class="label">鎬昏繍杈撻噺</view>
+ <view class="value">{{ wmsInfo.ioQty }}涓囨敮</view>
+ </view>
+ <view class="line">
+ <view class="label">杩愯緭鍏徃</view>
+ <view class="value">{{ wmsInfo.carrierName }}</view>
+ </view>
+ </view>
+ <view class="separate"></view>
+ <view class="contract_list" v-for="item in wmsInfo.wmsJobContractVOList">
+ <view class="title">鍚堝悓鍙凤細{{ item.contractCode }}</view>
+ <view class="address">鏀惰揣鍦帮細{{ item.address }}</view>
+ <view class="list">
+ <view class="item" v-for="line in item.platformWmsDetailList">
+ <view class="line">
+ <view class="label">鐗╂枡锛�</view>
+ <view class="value">{{ line.materialName }}</view>
+ </view>
+ <view class="line">
+ <view class="label">鏁伴噺锛�</view>
+ <view class="value">{{ line.ioQty }}涓囨敮</view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </u-popup>
+ <u-picker
:show="showPlatformgroup"
keyName="name"
:columns="[platformGroupList]"
@@ -81,7 +129,7 @@
</template>
<script>
-import { platformLineUpPage, getPlatformGroupList } from '@/api'
+import { platformLineUpPage, getPlatformGroupList, wmsJobDetail } from '@/api'
export default {
data() {
return {
@@ -92,6 +140,7 @@
total: 0,
carCodeFront: '',
platformGroup: {},
+ wmsInfo: {},
platformGroupList: [],
platformLineUpList: []
}
@@ -105,8 +154,11 @@
}
},
methods: {
- handleDetail() {
- this.showDetail = true
+ handleDetail(param) {
+ wmsJobDetail({ id: param.id }).then(res => {
+ this.wmsInfo = res.data
+ this.showDetail = true
+ })
},
getPlatformGroup() {
getPlatformGroupList({
@@ -123,7 +175,7 @@
getList() {
const { page, capacity, platformGroup, carCodeFront } = this
platformLineUpPage({
- capacity, page, model: { platformGroupId: platformGroup.id, callType: 2, carCodeFront }
+ capacity, page, model: { platformGroupId: platformGroup.id, callType: 3, carCodeFront }
}).then(res => {
if (res.data) {
this.platformLineUpList = [...this.platformLineUpList, ...res.data.records || []]
@@ -258,4 +310,111 @@
}
}
}
+.detail_modal {
+ padding: 36rpx 30rpx;
+
+ .modal_title {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #222222;
+ line-height: 44rpx;
+ text-align: center;
+ margin-bottom: 36rpx;
+ }
+
+ .contract_list {
+ .list {
+ background: #f7f7f7;
+ border-radius: 8rpx;
+ padding: 20rpx;
+
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ &:nth-of-type(3n) {
+ border-top: 1rpx solid #e5e5e5;
+ padding-top: 20rpx;
+ }
+
+ .label {
+ color: #666666;
+ width: 86rpx;
+ }
+
+ .value {
+ flex: 1;
+ color: #222222;
+ }
+ }
+ }
+
+ .title {
+ font-weight: 600;
+ font-size: 30rpx;
+ color: $uni-color-primary;
+ margin-bottom: 12rpx;
+ }
+
+ .address {
+ font-size: 26rpx;
+ color: #666666;
+ margin-bottom: 20rpx;
+ }
+ }
+
+ .info {
+ .line {
+ display: flex;
+ margin-bottom: 20rpx;
+
+ .label {
+ font-size: 30rpx;
+ color: #666666;
+ width: 150rpx;
+ }
+
+ .value {
+ flex: 1;
+ font-size: 30rpx;
+ color: #222222;
+ }
+ }
+ }
+
+ .separate {
+ width: 750rpx;
+ height: 2rpx;
+ margin: 30rpx -30rpx;
+ border: 1rpx solid #e5e5e5;
+ }
+
+ .id_card {
+ display: flex;
+ font-weight: 600;
+ height: 60rpx;
+ line-height: 60rpx;
+ font-size: 32rpx;
+ color: #111111;
+ border-radius: 8rpx;
+ border: 1rpx solid #dfdede;
+ width: 220rpx;
+ margin-bottom: 15rpx;
+
+ text {
+ &:nth-of-type(1) {
+ background: #e9f5f6;
+ padding: 0 12rpx;
+ }
+
+ &:nth-of-type(2) {
+ padding-left: 10rpx;
+ }
+
+ &:nth-of-type(4) {
+ padding-right: 6rpx;
+ }
+ }
+ }
+ }
</style>
\ No newline at end of file
diff --git a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
index 17973bb..3407346 100644
--- a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
+++ b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
profiles:
- active: test
+ active: pro
application:
name: meetingAdmin
# 瀹夊叏閰嶇疆
diff --git a/server/meeting/meeting_service/src/main/resources/application-pro.yml b/server/meeting/meeting_service/src/main/resources/application-pro.yml
index 37ffb2f..02cc4e2 100644
--- a/server/meeting/meeting_service/src/main/resources/application-pro.yml
+++ b/server/meeting/meeting_service/src/main/resources/application-pro.yml
@@ -22,3 +22,33 @@
redirect-uri: /
timing: true
des_pwd: 123456SDFKDJF
+
+########################寰俊鏀粯鐩稿叧閰嶇疆########################
+wx:
+ pay:
+ appId: wxfab6da18632e28de
+ appSecret: 4ee3b22afa90287834319fc3c1635271
+ mchId: 1229817002
+ mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM
+ notifyUrl: https://dmtest.ahapp.net/smartmeeting_interface/web/api/wxPayNotify
+ keyPath: /usr/local/apiclient_cert.p12
+
+tencent:
+ map:
+ remoteHost: https://apis.map.qq.com
+ appKey: 3AYBZ-I5R3V-2BVP3-UWBDQ-ETBM5-B2BBQ
+
+
+## MQTT##
+mqtt:
+ host: tcp://192.168.10.198:1883
+ userName: root
+ passWord: 123456
+ qos: 1
+ clientId: ClientId_local #ClientId_local蹇呴』鍞竴 姣斿浣犲凡缁忓畾浜嗗彨ABC 閭d綘灏变竴鐩村彨ABC 鍏朵粬鍦版柟灏变笉瑕佷娇鐢ˋBC浜�
+ timeout: 10
+ keepalive: 20
+ topic1: A/pick/warn/# #绗﹀彿鏄唬琛ㄦ暣涓獁arn涓嬮潰鐨勫叏閮ㄥ瓙涓婚 娌℃湁鐞嗚В鐨勮瘽 鍙互鐧惧害浠旂粏鐞嗚В涓�涓�
+ topic2: A/cmd/resp
+ topic3: ABCF
+ topic4: ABCH
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseRequst.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseRequst.java
index 5a0877b..8b44f92 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseRequst.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseRequst.java
@@ -2,7 +2,6 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import org.springframework.beans.factory.annotation.Autowired;
@Data
public class BaseRequst<T> {
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java
index a82275a..1eea899 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java
@@ -49,8 +49,8 @@
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
@ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
private Integer isdeleted;
- @ApiModelProperty(value = "绫诲瀷 0瀹夋嘲鐗╂祦瑁呰揣 1瀹夋嘲鐗╂祦鍗歌揣 2甯傚叕鍙稿嵏璐�", example = "1")
- @ExcelColumn(name="绫诲瀷 0瀹夋嘲鐗╂祦瑁呰揣 1瀹夋嘲鐗╂祦鍗歌揣 2甯傚叕鍙稿嵏璐�")
+ @ApiModelProperty(value = "绫诲瀷 1瀹夋嘲鐗╂祦瑁呰揣 0瀹夋嘲鐗╂祦鍗歌揣 2甯傚叕鍙稿嵏璐�", example = "1")
+ @ExcelColumn(name="绫诲瀷 1瀹夋嘲鐗╂祦瑁呰揣 0瀹夋嘲鐗╂祦鍗歌揣 2甯傚叕鍙稿嵏璐�")
private Integer type;
@ApiModelProperty(value = "宸ヤ綔寮�濮嬫椂闂�")
@ExcelColumn(name="宸ヤ綔寮�濮嬫椂闂�")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
index 195aed0..fb0e58e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
@@ -317,7 +317,7 @@
}
PlatformGroup group = platformGroupMapper.selectOne(new QueryWrapper<PlatformGroup>().lambda()
.eq(PlatformGroup::getIsdeleted,Constants.ZERO)
- .eq(PlatformGroup::getType,type==0?Constants.ONE:Constants.ZERO)
+ .eq(PlatformGroup::getType,type==0?Constants.ZERO:Constants.ONE)
.last("limit 1") );//鏌ヨ鍗歌揣鏈堝彴缁勭紪鐮�
job.setPlatformGroupId(group!=null?group.getId():null);
Member driver = memberMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()
@@ -332,7 +332,6 @@
job.setCompanyId(driver.getCompanyId());
job.setCompanyNamePath(driver.getCompanyNamePath());
}
-
platformJobMapper.insert(job);
}
@@ -390,6 +389,7 @@
job.setIocode(param.getIoCode());
job.setCarrierName(param.getCarrierName());
job.setPlateNumber(param.getPlateNumber());
+ job.setDriverName(param.getDriverName());
job.setType(Constants.ONE);
job.setIoCreatedate(param.getCreateDate());
job.setJobId(model.getId());
--
Gitblit v1.9.3