From 3a154bdb0a5aaa2c0ac3eac95a6ba747068bd454 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 13 一月 2026 10:00:37 +0800
Subject: [PATCH] 优化
---
admin/src/components/business/OperaJkSketchLineListWindow.vue | 172 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 172 insertions(+), 0 deletions(-)
diff --git a/admin/src/components/business/OperaJkSketchLineListWindow.vue b/admin/src/components/business/OperaJkSketchLineListWindow.vue
new file mode 100644
index 0000000..a1db0a6
--- /dev/null
+++ b/admin/src/components/business/OperaJkSketchLineListWindow.vue
@@ -0,0 +1,172 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ width="100%"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <div style="display: block;margin-bottom: 30px;">
+ <div style="display: block;font-size: 16px;font-weight: 600;margin-bottom: 20px;">涓荤嚎璺俊鎭�</div>
+ <div style="display: flex;">
+ <div style="flex: 1">閫佽揣鏃ユ湡锛歿{model.dateInfo ||''}}</div>
+ <div style="flex: 1">涓荤嚎璺細{{model.categoryName ||''}}</div>
+ <div style="flex: 1">瀹㈡埛鏁帮細{{model.orderNum ||'-'}}</div>
+ <div style="flex: 1">閫佽揣閲�(鏉�)锛歿{model.totalNum ||'-'}}</div>
+ </div>
+ <div style="display: flex;margin-top: 20px" class="orange">
+ <div style="flex: 1" >绾胯矾鍘熷鎬昏矾绋嬶細
+ <span v-if="(model.originDistance ||0) > 0 || (model.status||0) != 0" class="red" style="font-weight: bold"> {{((model.originDistance ||0)/1000).toFixed(2)}}</span>
+ <span v-if="(model.originDistance ||0) == 0 && (model.status||0) == 0 && !distancing" class="blue" style="font-weight: bold;cursor: pointer" @click="initDistance"> 鐐瑰嚮鑾峰彇 </span>
+ <span v-if="(model.originDistance ||0) == 0 && (model.status||0) == 0 && distancing" class="red" style="font-weight: bold;cursor: pointer"> 姝e湪鑾峰彇 </span> 鍏噷锛�
+ <span v-if="model.status ==2">浼樺寲鍚庢�昏矾绋�:<span class="green" style="font-weight: bold"> {{((model.distance ||0)/1000).toFixed(2)}} </span> 鍏噷</span>
+ </div>
+ </div>
+ </div>
+ <div style="display: block;margin-bottom: 50px;" v-if="model && model.optStatus ===1">
+ <div style="display: block;font-size: 16px;font-weight: 600;margin-bottom: 10px;">浼樺寲绾胯矾鏄庣粏</div>
+ <div>
+ <el-table :data="dataListNew" stripe>
+ <el-table-column prop="dateInfo" label="閫佽揣鏃ユ湡" min-width="130px"></el-table-column>
+ <el-table-column prop="lineName" label="閫佽揣绾胯矾" min-width="130px"> </el-table-column>
+ <el-table-column prop="orderNum" label="瀹㈡埛鏁�(鎴�)" min-width="130px"></el-table-column>
+ <el-table-column prop="totalNum" label="閫佽揣閲�(鏉�)" min-width="130px"></el-table-column>
+ <el-table-column prop="carCode" label="杞︾墝鍙�" min-width="100px"></el-table-column>
+ <el-table-column prop="memberName" label="閫佽揣鍙告満" min-width="100px"></el-table-column>
+ <el-table-column prop="distance" label="褰撳墠璺▼(鍏噷)" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.distance "> {{((row.distance ||0)/1000).toFixed(2)}}</span>
+ <span v-else> - </span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ min-width="160"
+ align="center"
+ fixed="right"
+ >
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.operaJkSketchCustomerWindow.open('绾胯矾瀹㈡埛鏄庣粏鈥斺��', row)" icon="el-icon-view" >鏌ョ湅瀹㈡埛</el-button>
+ <el-button type="text" @click="$refs.operaJkSketchLineMapWindow.open('绾胯矾瀹㈡埛浜ら�氳矾绾库�斺��', row)" icon="el-icon-view" >浜ら�氳矾绾�</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ </div>
+ <div style="display: block">
+ <div style="display: block;font-size: 16px;font-weight: 600;margin-bottom: 10px;">鍘熷绾胯矾鏄庣粏</div>
+ <div>
+ <el-table :data="dataList" stripe>
+ <el-table-column prop="dateInfo" label="閫佽揣鏃ユ湡" min-width="130px"></el-table-column>
+ <el-table-column prop="lineName" label="閫佽揣绾胯矾" min-width="130px"> </el-table-column>
+ <el-table-column prop="orderNum" label="瀹㈡埛鏁�(鎴�)" min-width="130px"></el-table-column>
+ <el-table-column prop="totalNum" label="閫佽揣閲�(鏉�)" min-width="130px"></el-table-column>
+ <el-table-column prop="carCode" label="杞︾墝鍙�" min-width="100px"></el-table-column>
+ <el-table-column prop="memberName" label="閫佽揣鍙告満" min-width="100px"></el-table-column>
+ <el-table-column prop="distance" label="褰撳墠璺▼(鍏噷)" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.distance "> {{((row.distance ||0)/1000).toFixed(2)}}</span>
+ <span v-else> - </span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ min-width="160"
+ align="center"
+ fixed="right"
+ >
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.operaJkSketchCustomerWindow.open('绾胯矾瀹㈡埛鏄庣粏鈥斺��', row)" icon="el-icon-view" >鏌ョ湅瀹㈡埛</el-button>
+ <el-button type="text" @click="$refs.operaJkSketchLineMapWindow.open('绾胯矾瀹㈡埛浜ら�氳矾绾库�斺��', row)" icon="el-icon-view" >浜ら�氳矾绾�</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ </div>
+ <template v-slot:footer>
+ <el-button @click="visible=false">杩斿洖</el-button>
+ </template>
+ <OperaJkSketchCustomerWindow ref="operaJkSketchCustomerWindow" />
+ <OperaJkSketchLineMapWindow ref="operaJkSketchLineMapWindow" />
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import OperaJkSketchCustomerWindow from '@/components/business/OperaJkSketchCustomerWindow'
+import OperaJkSketchLineMapWindow from '@/components/business/OperaJkSketchLineMapWindow'
+import { initOriginDistance } from '@/api/business/jkSketch'
+export default {
+ name: 'OperaDeviceDataListWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow, OperaJkSketchCustomerWindow ,OperaJkSketchLineMapWindow},
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ distancing:false,
+ model: {
+ },
+ dataList: [],
+ dataListNew: []
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/jkSketchLine',
+ 'field.id': 'id'
+ })
+ },
+ methods: {
+ open (title, target) {
+ this.title = title
+ this.visible = true
+ this.model = target
+ this.loadList()
+ this.distancing =false
+ if(this.model.optStatus === 1){
+ this.loadListNew()
+ }
+ },
+ loadList () {
+ this.api.allList({
+ sketchId: this.model.id,
+ type: 0
+ }).then(res => {
+ this.dataList = res
+ })
+ },
+ loadListNew () {
+ this.api.allList({
+ sketchId: this.model.id,
+ type: 1
+ }).then(res => {
+ this.dataListNew = res
+ })
+ },
+ initDistance () {
+ var that = this
+ if(this.distancing){
+ return
+ }
+ this.distancing=true
+ initOriginDistance({
+ id: this.model.id
+ }).then(res => {
+ if(res){
+ that.model.originDistance = res.originDistance
+ that.model.distance = res.distance
+ that.loadList()
+ }
+ }).catch(e => {
+ this.$tip.apiFailed(e)
+ }).finally(() => {
+ that.distancing = false
+ })
+ },
+ viewCustomer (row) {
+
+ }
+ }
+}
+</script>
--
Gitblit v1.9.3