Blame view

pages-sub/daily/quick-order/order-detail.vue 4.94 KB
9b30ab8c   刘淇   新增快速工单,原版
1
  <template>
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
2
    <view class="page-container">
420cb443   刘淇   快速工单列表
3
      <!-- 页面级加载组件 -->
9b30ab8c   刘淇   新增快速工单,原版
4
5
6
7
8
9
10
      <up-loading-page
          v-if="loading"
          :loading="true"
          title="加载中..."
          color="#3c9cff"
      ></up-loading-page>
  
420cb443   刘淇   快速工单列表
11
      <!-- 内容容器 -->
9b30ab8c   刘淇   新增快速工单,原版
12
      <view v-else class="content-wrap">
420cb443   刘淇   快速工单列表
13
        <!-- 空状态 -->
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
14
15
        <view v-if="!Object.keys(orderDetail).length" >
          <empty-view />
420cb443   刘淇   快速工单列表
16
17
18
        </view>
  
        <!-- 工单详情内容 -->
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
19
        <up-cell-group :border="false" inset  v-else>
9b30ab8c   刘淇   新增快速工单,原版
20
21
22
23
          <!-- 1. 工单编号 -->
          <up-cell
              title="工单编号"
              :value="orderDetail.orderNo || '--'"
e6a04285   刘淇   单图情况 宽高70*70
24
  
9b30ab8c   刘淇   新增快速工单,原版
25
26
27
28
29
              align="middle"
          ></up-cell>
  
          <!-- 2. 工单位置 -->
          <up-cell
9b30ab8c   刘淇   新增快速工单,原版
30
              align="middle"
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
31
32
          >
            <template #title>
4570c70a   刘淇   消息中心
33
              <view  style="min-width: 200rpx">工单道路</view>
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
34
35
            </template>
            <template #value>
c7df828a   刘淇   快速工单 样式优化
36
              <view  class="up-line-1 common-text-color" >{{orderDetail.roadName || '--'}}</view>
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
37
38
            </template>
  
4570c70a   刘淇   消息中心
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  
          </up-cell>
  
  
          <up-cell
              align="middle"
          >
            <template #title>
              <view  style="min-width: 200rpx">工单位置</view>
            </template>
            <template #value>
              <view  class="up-line-1 common-text-color" >{{orderDetail.lonLatAddress || '--'}}</view>
            </template>
            lonLatAddress
  
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
54
          </up-cell>
9b30ab8c   刘淇   新增快速工单,原版
55
56
57
58
59
  
          <!-- 3. 工单名称 -->
          <up-cell
              title="工单名称"
              :value="orderDetail.orderName || '--'"
9b30ab8c   刘淇   新增快速工单,原版
60
61
62
63
64
              align="middle"
          ></up-cell>
  
          <!-- 4. 情况描述 -->
          <up-cell
9b30ab8c   刘淇   新增快速工单,原版
65
              align="middle"
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
66
67
68
69
70
          >
            <template #title>
              <view  style="min-width: 200rpx">情况描述</view>
            </template>
            <template #value>
c7df828a   刘淇   快速工单 样式优化
71
              <view  class="up-line-1 common-text-color" >{{orderDetail.remark || '--'}}</view>
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
72
73
            </template>
          </up-cell>
9b30ab8c   刘淇   新增快速工单,原版
74
  
420cb443   刘淇   快速工单列表
75
76
77
          <!-- 5. 问题照片(核心修复:判断条件+空值处理) -->
          <up-cell title="问题照片" >
            <template #value>
9b30ab8c   刘淇   新增快速工单,原版
78
            <view class="cell-content-wrap">
420cb443   刘淇   快速工单列表
79
80
  
              <!-- 修复1:正确判断problemImgsList,补充空数组默认值 -->
9b30ab8c   刘淇   新增快速工单,原版
81
              <up-album
4c54ad5d   刘淇   转工单 选择是 传紧急程度和...
82
83
                  v-if="!!orderDetail.problemsImgs?.length"
                  :urls="orderDetail.problemsImgs || []"
420cb443   刘淇   快速工单列表
84
                  singleSize="70"
9b30ab8c   刘淇   新增快速工单,原版
85
                  :preview-full-image="true"
4c54ad5d   刘淇   转工单 选择是 传紧急程度和...
86
                  multipleSize="70"
9b30ab8c   刘淇   新增快速工单,原版
87
88
89
              ></up-album>
              <text v-else class="empty-text">暂无问题照片</text>
            </view>
420cb443   刘淇   快速工单列表
90
            </template>
9b30ab8c   刘淇   新增快速工单,原版
91
92
          </up-cell>
  
420cb443   刘淇   快速工单列表
93
          <!-- 6. 完成照片(优化:空值处理+容错) -->
9b30ab8c   刘淇   新增快速工单,原版
94
          <up-cell title="完成照片" align="top">
420cb443   刘淇   快速工单列表
95
            <template #value>
9b30ab8c   刘淇   新增快速工单,原版
96
97
            <view class="cell-content-wrap">
              <up-album
4c54ad5d   刘淇   转工单 选择是 传紧急程度和...
98
99
                  v-if="!!orderDetail.endImgs?.length"
                  :urls="orderDetail.endImgs || []"
420cb443   刘淇   快速工单列表
100
                  singleSize="70"
4c54ad5d   刘淇   转工单 选择是 传紧急程度和...
101
                  multipleSize="70"
9b30ab8c   刘淇   新增快速工单,原版
102
                  :preview-full-image="true"
420cb443   刘淇   快速工单列表
103
  
9b30ab8c   刘淇   新增快速工单,原版
104
105
106
              ></up-album>
              <text v-else class="empty-text">暂无完成照片</text>
            </view>
420cb443   刘淇   快速工单列表
107
            </template>
9b30ab8c   刘淇   新增快速工单,原版
108
109
110
111
          </up-cell>
  
          <!-- 7. 处理结果 -->
          <up-cell
9b30ab8c   刘淇   新增快速工单,原版
112
113
              align="middle"
              :border="false"
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
114
115
116
117
118
          >
            <template #title>
              <view  style="min-width: 200rpx">处理结果</view>
            </template>
            <template #value>
c7df828a   刘淇   快速工单 样式优化
119
              <view  class="up-line-1 common-text-color" >{{orderDetail.handleResult || '--'}}</view>
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
120
121
            </template>
          </up-cell>
9b30ab8c   刘淇   新增快速工单,原版
122
        </up-cell-group>
9b30ab8c   刘淇   新增快速工单,原版
123
124
125
126
127
128
129
      </view>
    </view>
  </template>
  
  <script setup lang="ts">
  import { ref, reactive } from 'vue';
  import { inspectionPlanDetail } from "@/api/quick-order/quick-order";
9b30ab8c   刘淇   新增快速工单,原版
130
  import { onLoad, onShow } from '@dcloudio/uni-app';
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
131
  import EmptyView from "../../../components/empty-view/empty-view.vue";
420cb443   刘淇   快速工单列表
132
  
9b30ab8c   刘淇   新增快速工单,原版
133
134
135
136
  // 状态管理
  const loading = ref(true);
  const orderDetail = ref({});
  
9b30ab8c   刘淇   新增快速工单,原版
137
138
139
140
141
142
143
144
  
  /**
   * 获取工单详情
   */
  const getOrderDetail = async (id: string) => {
    try {
      loading.value = true;
      const res = await inspectionPlanDetail({ id });
420cb443   刘淇   快速工单列表
145
146
147
148
      console.log('接口返回:', res);
      // 优化:确保图片数组为数组类型,避免非数组导致渲染错误
      orderDetail.value = {
        ...res,
4c54ad5d   刘淇   转工单 选择是 传紧急程度和...
149
150
        problemsImgs: Array.isArray(res.problemsImgs) ? res.problemsImgs : [],
        endImgs: Array.isArray(res.endImgs) ? res.endImgs : []
420cb443   刘淇   快速工单列表
151
      };
9b30ab8c   刘淇   新增快速工单,原版
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
    } catch (error) {
      console.error('获取工单详情失败:', error);
      uni.showToast({ title: '加载失败,请重试', icon: 'none' });
    } finally {
      loading.value = false;
    }
  };
  
  // 页面加载
  onLoad((options) => {
    const { id } = options;
    if (id) {
      getOrderDetail(id);
    } else {
      loading.value = false;
      uni.showToast({ title: '缺少工单ID', icon: 'none' });
    }
  });
  </script>
  
  <style scoped lang="scss">
420cb443   刘淇   快速工单列表
173
174
  // 页面基础样式
  .u-page {
b0e2f1a9   刘淇   快速工单和巡查计划样式优化
175
  
420cb443   刘淇   快速工单列表
176
  }
9b30ab8c   刘淇   新增快速工单,原版
177
  
420cb443   刘淇   快速工单列表
178
  // 内容容器
9b30ab8c   刘淇   新增快速工单,原版
179
180
181
182
  .content-wrap {
    background: #fff;
    width: 100%;
    box-sizing: border-box;
420cb443   刘淇   快速工单列表
183
184
  }
  
420cb443   刘淇   快速工单列表
185
  
420cb443   刘淇   快速工单列表
186
  
420cb443   刘淇   快速工单列表
187
  
9b30ab8c   刘淇   新增快速工单,原版
188
  </style>