|
|
@@ -30,6 +30,9 @@
|
|
|
<view class="scroll-view-item_H" v-if="checkPermi(['gxt:maintenance:order:resume','gxt:repairOrder:resume']) && !dealLoad">
|
|
|
<text class="status-txt" :class="{'stauts-sel': currentStatus === 'suspended'}" @click="switchStatus('suspended')">已挂起</text>
|
|
|
</view>
|
|
|
+ <view class="scroll-view-item_H" v-if="checkPermi(['gxt:maintenance:order:autoResume','gxt:repairOrder:autoResume']) && !dealLoad">
|
|
|
+ <text class="status-txt" :class="{'stauts-sel': currentStatus === 'auto_suspend'}" @click="switchStatus('auto_suspend')">自动挂起</text>
|
|
|
+ </view>
|
|
|
<view class="scroll-view-item_H" v-if="checkPermi(['gxt:maintenance:order:restart','gxt:repairOrder:restart']) && !dealLoad">
|
|
|
<text class="status-txt" :class="{'stauts-sel': currentStatus === 'completed'}" @click="switchStatus('completed')">已完成</text>
|
|
|
</view>
|
|
|
@@ -83,6 +86,13 @@
|
|
|
>
|
|
|
<text class="btn-text">恢复</text>
|
|
|
</view>
|
|
|
+ <view
|
|
|
+ v-if="getOrderStatus(item) == 'auto_suspend' && canHandleOrder(item,'')"
|
|
|
+ class="btn-primary info-value"
|
|
|
+ @click.stop="handleItemClick(item,'')"
|
|
|
+ >
|
|
|
+ <text class="btn-text">恢复</text>
|
|
|
+ </view>
|
|
|
<view
|
|
|
v-if="getOrderStatus(item) == 'return' && canHandleOrder(item,'acceptReturn')"
|
|
|
class="btn-primary info-value"
|
|
|
@@ -148,7 +158,7 @@ import {checkPermi, getUserInfo} from '../../utils/storage'
|
|
|
const total = ref<number>(0)
|
|
|
let currentStatus = ref<string>('') // 添加状态管理
|
|
|
const statusDictList = ref<SysDictData[]>([]) // 工单状态字典列表
|
|
|
-
|
|
|
+
|
|
|
const tabbar = reactive([1,1,1,1])
|
|
|
|
|
|
// 添加防重复请求的标志位(参考score/pending.uvue的实现)
|
|
|
@@ -469,7 +479,8 @@ const statusConfig: StatusItem[] = [
|
|
|
}
|
|
|
|
|
|
isSearching.value = true
|
|
|
- currentStatus.value = status
|
|
|
+ currentStatus.value = status
|
|
|
+
|
|
|
page.value = 1
|
|
|
loadData(true, true) // 第二个参数为true表示禁用下拉刷新动画
|
|
|
|
|
|
@@ -584,6 +595,9 @@ const statusConfig: StatusItem[] = [
|
|
|
} else if(orderItem.workOrderStatus == 'return') {
|
|
|
// 接单退回
|
|
|
permit = ['gxt:repairOrder:acceptReturn']
|
|
|
+ } else if(orderItem.workOrderStatus == 'auto_suspend') {
|
|
|
+ // 自动挂起恢复
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:autoResume'] : ['gxt:repairOrder:autoResume']
|
|
|
}
|
|
|
else {
|
|
|
return false
|
|
|
@@ -638,7 +652,7 @@ const statusConfig: StatusItem[] = [
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/approveIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
})
|
|
|
- } else if(orderItem.workOrderStatus == 'suspended') {
|
|
|
+ } else if(orderItem.workOrderStatus == 'suspended' || orderItem.workOrderStatus == 'auto_suspend') {
|
|
|
// 跳转到恢复页面
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/resumeIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
@@ -704,7 +718,7 @@ const statusConfig: StatusItem[] = [
|
|
|
// 检查权限设置tabbar
|
|
|
tabbar[2] = checkPermi(['gxt:app:worktime']) ? 1 : 0
|
|
|
tabbar[3] = checkPermi(['gxt:app:score']) ? 1 : 0
|
|
|
-
|
|
|
+
|
|
|
const userInfo = getUserInfo()
|
|
|
if (userInfo != null) {
|
|
|
const userIdStr = userInfo['userId'].toString()
|
|
|
@@ -900,7 +914,7 @@ const statusConfig: StatusItem[] = [
|
|
|
// margin-left: 50rpx;
|
|
|
// justify-content: flex-end;
|
|
|
border: 1rpx solid;
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
/* 待接单 */
|
|
|
@@ -932,6 +946,13 @@ const statusConfig: StatusItem[] = [
|
|
|
border-color: #ffccc7;
|
|
|
}
|
|
|
|
|
|
+/* 自动挂起 */
|
|
|
+.status-auto_suspend {
|
|
|
+ background-color: #fff2f0;
|
|
|
+ color: #ff4d4f;
|
|
|
+ border-color: #ffccc7;
|
|
|
+}
|
|
|
+
|
|
|
/* 已完成 */
|
|
|
.status-completed {
|
|
|
background-color: #f0f9eb;
|