From 89380e6260a75d1d3b94de687ebcc2f50d50659d Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 03 Feb 2026 15:44:33 +0800
Subject: [PATCH] feat:环境变量配置调整
---
applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue | 211 ++++++----------------------------------------------
1 files changed, 27 insertions(+), 184 deletions(-)
diff --git a/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue b/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
index a04f341..2acc032 100644
--- a/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
+++ b/applications/task-work-order/src/views/orderView/orderManage/orderManage/FormDiaLog.vue
@@ -9,42 +9,10 @@
:close-on-click-modal="false"
>
<div class="content" style="display: flex">
- <div class="processBox" v-if="dialogMode !== 'add' && processList.length">
- <div class="timeline-wrapper">
- <div v-for="(stage, stageIndex) in processList" :key="stageIndex" class="stage-group">
- <!-- 大节点 Stage Node -->
- <div class="stage-node">
- <div class="stage-icon" :class="{ reached: stage.reached }">
- <el-icon v-if="stage.reached"><Check /></el-icon>
- <span v-else class="stage-index">{{ stageIndex + 1 }}</span>
- </div>
- <span class="stage-name">{{ stage.stageName }}</span>
- </div>
-
- <!-- 小节点 Child Nodes -->
- <div class="child-list" v-if="stage.child && stage.child.length">
- <template v-for="(child, childIndex) in stage.child.filter(c => c.reached)">
- <div v-if="child.reached" :key="childIndex" class="child-node">
- <div class="child-left">
- <span class="child-status">{{ child.statusName }}</span>
- </div>
- <div class="child-dot"></div>
- <div class="child-right">
- <span class="child-operator">{{ child.operator || '-' }}</span>
- <span class="child-time">{{ child.createTime || '-' }}</span>
- </div>
- </div>
- </template>
-
- </div>
-
- <!-- 连接线 -->
- <div
- class="connector-line"
- v-if="stageIndex < processList.length - 1"
- :class="{ reached: stage.reached }"
- ></div>
- </div>
+ <div class="processBox" v-if="dialogMode !== 'add'">
+ <div class="detail-title">工单记录</div>
+ <div class="process">
+ <OrderStepBar :processList="processList" />
</div>
</div>
<div class="leftBox">
@@ -140,7 +108,6 @@
<el-form-item label="执行时间" prop="executeStartTime">
<el-date-picker
class="gd-date-picker"
- popper-class="gd-date-picker-popper"
v-model="dateRange"
type="daterange"
range-separator="至"
@@ -174,7 +141,7 @@
<el-input
class="gd-input"
type="textarea"
- :rows="4"
+ :rows="3"
v-model="formData.remark"
placeholder="请输入"
clearable
@@ -301,7 +268,7 @@
import { gdManageDeviceListApi } from './gdManageDeviceApi'
import { cartesian3Convert } from '@/utils/cesium/mapUtil'
import * as Cesium from 'cesium'
-import { DrawPolygon } from '@/utils/cesium/DrawPolygon'
+import { DrawPolygon } from '@ztzf/utils'
import { pxToRem } from '@/utils/rem'
import dayjs from 'dayjs'
import RefuseOrderDialog from '@/views/orderView/orderManage/orderManage/RefuseOrderDialog.vue'
@@ -311,6 +278,7 @@
import droneIcon from '@/assets/images/orderView/orderManage/drone.png'
import droneActiveIcon from '@/assets/images/orderView/orderManage/droneActive.png'
import { useStore } from 'vuex'
+import OrderStepBar from '@/views/orderView/orderManage/orderManage/OrderStepBar.vue'
const store = useStore()
const permission = computed(() => store.state.user.permission)
@@ -545,11 +513,17 @@
viewPlane = viewer.entities?.add({
customType: 'control_group',
position: Cesium.Cartesian3.fromDegrees(result[0], result[1]),
+ polygon: {
+ hierarchy: Cesium.Cartesian3.fromDegreesArray(result),
+ material: Cesium.Color.fromBytes(45, 140, 240, 99),
+ outline: false,
+ heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
+ },
polyline: {
positions: Cesium.Cartesian3.fromDegreesArray(result),
clampToGround: true,
- width: 3,
- material: Cesium.Color.RED,
+ width: 2,
+ material: Cesium.Color.fromBytes(45, 140, 240, 255),
},
})
flyVisual({
@@ -580,7 +554,8 @@
// 渲染
function renderingAllDevice(list) {
list.forEach(item => {
- const position = Cesium.Cartesian3.fromDegrees(item.longitude || 115.0, item.latitude || 27.11)
+ if (!item.longitude || !item.latitude) return
+ const position = Cesium.Cartesian3.fromDegrees(item.longitude, item.latitude)
viewer.entities.add({
position: position,
billboard: {
@@ -690,7 +665,7 @@
.gd-cesium {
width: 100%;
- min-height: 380px;
+ min-height: 360px;
flex: 1;
}
}
@@ -707,149 +682,17 @@
}
.processBox {
- padding: 24px 16px;
- width: 312px;
- border: 1px solid #e4e4e4;
- border-radius: 8px;
- overflow: auto;
- background: #fff;
+ display: flex;
+ flex-direction: column;
- .timeline-wrapper {
- padding-left: 100px;
- position: relative;
- }
-
- .stage-group {
- position: relative;
- }
-
- // 大节点 - Stage Node
- .stage-node {
- display: flex;
- align-items: center;
- gap: 12px;
- margin-bottom: 8px;
-
- .stage-icon {
- width: 28px;
- height: 28px;
- border-radius: 50%;
- background: #e0e0e0;
- display: flex;
- align-items: center;
- justify-content: center;
- color: #fff;
- font-size: 14px;
- font-weight: 600;
- flex-shrink: 0;
- position: relative;
- z-index: 2;
-
- &.reached {
- background: #1a1a2e;
- }
-
- .el-icon {
- font-size: 16px;
- }
-
- .stage-index {
- font-size: 12px;
- }
- }
-
- .stage-name {
- width: 70px;
- text-align: right;
- position: absolute;
- left: -80px;
- font-family: Roboto, Roboto;
- font-weight: bold;
- font-size: 16px;
- color: rgba(0,0,0,0.85);
- }
- }
-
- // 小节点 - Child Nodes
- .child-list {
- position: relative;
- left: -52px;
- }
-
- .child-node {
- display: flex;
- align-items: flex-start;
- position: relative;
-
-
- &:last-child::before {
- bottom: 50%;
- }
-
- .child-left {
- width: 100px;
- flex-shrink: 0;
- text-align: right;
- padding-right: 20px;
- font-family: Source Han Sans CN, Source Han Sans CN;
- font-weight: 400;
- font-size: 14px;
- color: rgba(0,0,0,0.85);
-
- .child-status {
- white-space: nowrap;
- }
- }
-
- .child-dot {
- width: 12px;
- height: 12px;
- border-radius: 50%;
- background: #1a1a2e;
- flex-shrink: 0;
- position: relative;
- z-index: 2;
- margin-top: 4px;
- }
-
- .child-right {
- flex: 1;
- padding-left: 12px;
- display: flex;
- flex-direction: column;
- gap: 2px;
-
- .child-operator {
- font-family: Source Han Sans CN, Source Han Sans CN;
- font-weight: 400;
- font-size: 14px;
- color: rgba(0,0,0,0.85);
-
- }
-
- .child-time {
- white-space: nowrap;
- font-family: Source Han Sans CN, Source Han Sans CN;
- font-weight: 400;
- font-size: 14px;
- color: rgba(0,0,0,0.45);
- }
- }
- }
-
- // 连接线
- .connector-line {
- position: absolute;
- left: 13px;
- width: 2px;
+ .process {
height: 100%;
- background: #e0e0e0;
- top: 28px;
- z-index: 1;
-
- &.reached {
- background: #1a1a2e;
- }
+ padding: 12px 16px 24px 16px;
+ width: 312px;
+ border: 1px solid #e4e4e4;
+ border-radius: 8px;
+ background: #fff;
+ overflow: auto;
}
}
}
--
Gitblit v1.9.3