|
|
@@ -41,13 +41,21 @@
|
|
|
<text class="btn-text">接单</text>
|
|
|
</view>
|
|
|
<view
|
|
|
- v-if="(getOrderStatus(item) == 'assigned' || getOrderStatus(item) == 'to_finish')
|
|
|
+ v-if="(getOrderStatus(item) == 'assigned' || getOrderStatus(item) == 'to_finish')
|
|
|
&& canHandleOrder(item,'shutdown') && (item as acceptOrderInfoExtend).pauseTime == null"
|
|
|
class="btn-primary info-value"
|
|
|
@click.stop="handleItemClick(item,'shutdown')"
|
|
|
>
|
|
|
<text class="btn-text">停机</text>
|
|
|
</view>
|
|
|
+ <view
|
|
|
+ v-if="(getOrderStatus(item) == 'assigned' || getOrderStatus(item) == 'to_finish' || getOrderStatus(item) == 'completed')
|
|
|
+ && canHandleOrder(item,'restart') && (item as acceptOrderInfoExtend).restartTime == null"
|
|
|
+ class="btn-primary info-value"
|
|
|
+ @click.stop="handleItemClick(item,'restart')"
|
|
|
+ >
|
|
|
+ <text class="btn-text">复运</text>
|
|
|
+ </view>
|
|
|
<view
|
|
|
v-if="getOrderStatus(item) == 'to_approve' && canHandleOrder(item,'')"
|
|
|
class="btn-primary info-value"
|
|
|
@@ -76,13 +84,20 @@
|
|
|
>
|
|
|
<text class="btn-text">退回</text>
|
|
|
</view>
|
|
|
- <!-- <view
|
|
|
+ <view
|
|
|
v-if="getOrderStatus(item) == 'to_finish' && canHandleOrder(item, 'return')"
|
|
|
class="btn-primary info-value"
|
|
|
@click.stop="handleItemClick(item, 'return')"
|
|
|
>
|
|
|
<text class="btn-text">退回</text>
|
|
|
- </view> -->
|
|
|
+ </view>
|
|
|
+ <view
|
|
|
+ v-if="getOrderStatus(item) == 'to_finish' && canHandleOrder(item, 'complete')"
|
|
|
+ class="btn-primary info-value"
|
|
|
+ @click.stop="handleItemClick(item, 'complete')"
|
|
|
+ >
|
|
|
+ <text class="btn-text">结单</text>
|
|
|
+ </view>
|
|
|
<view
|
|
|
v-if="getOrderStatus(item) == 'to_finish' && canHandleOrder(item, 'suspend')"
|
|
|
class="btn-primary info-value"
|
|
|
@@ -140,6 +155,7 @@ type acceptOrderInfoExtend = {
|
|
|
workEndTime: string | null
|
|
|
orderEntryType: string | null
|
|
|
pauseTime: string | null
|
|
|
+ restartTime: string | null
|
|
|
}
|
|
|
|
|
|
const userId = ref<string>("")
|
|
|
@@ -184,9 +200,12 @@ type acceptOrderInfoExtend = {
|
|
|
} else if(buttonType != '' && buttonType == "accept") {
|
|
|
// 接单
|
|
|
permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:accept'] : ['gxt:repairOrder:accept']
|
|
|
- } else if(buttonType != '' && buttonType == "shutdown" && orderItem.orderType == 2) {
|
|
|
+ } else if(buttonType != '' && buttonType == "shutdown" && orderItem.orderType == 2) {
|
|
|
permit = ['gxt:maintenance:order:shutdown']
|
|
|
- }
|
|
|
+ } else if(buttonType != '' && buttonType == "restart") {
|
|
|
+ // 复运
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:restart'] : ['gxt:repairOrder:restart']
|
|
|
+ }
|
|
|
} else if(orderItem.workOrderStatus == 'to_finish') {
|
|
|
if(buttonType != '' && buttonType == "suspend" && (orderItem.teamLeaderId == parseInt(userId.value) || roles.value.includes("管理员"))) {
|
|
|
// 挂起
|
|
|
@@ -197,24 +216,33 @@ type acceptOrderInfoExtend = {
|
|
|
} else if(buttonType != '' && buttonType == "finalize" && orderItem.orderType == 1 && (orderItem.teamLeaderId == parseInt(userId.value) || roles.value.includes("管理员"))) {
|
|
|
// 复启
|
|
|
permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:finalize'] : ['gxt:repairOrder:finalize']
|
|
|
- } else if(buttonType != '' && buttonType == "shutdown" && orderItem.orderType == 2) {
|
|
|
- permit = ['gxt:maintenance:order:shutdown']
|
|
|
+ } else if(buttonType != '' && buttonType == "complete") {
|
|
|
+ // 结单
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:complete'] : ['gxt:repairOrder:finalize']
|
|
|
+ } else if(buttonType != '' && buttonType == "shutdown" && orderItem.orderType == 2) {
|
|
|
+ // 停机
|
|
|
+ permit = ['gxt:maintenance:order:shutdown']
|
|
|
+ } else if(buttonType != '' && buttonType == "restart") {
|
|
|
+ // 复运
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:restart'] : ['gxt:repairOrder:restart']
|
|
|
}
|
|
|
- } else if(orderItem.workOrderStatus == 'to_approve') {
|
|
|
- // 审批
|
|
|
- permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:approve'] : ['gxt:repairOrder:approve']
|
|
|
- } else if(orderItem.workOrderStatus == 'suspended' && (orderItem.teamLeaderId == parseInt(userId.value) || roles.value.includes("管理员"))) {
|
|
|
- // 恢复
|
|
|
- permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:resume'] : ['gxt:repairOrder:resume']
|
|
|
- } else if(orderItem.workOrderStatus == 'return') {
|
|
|
- // 接单退回
|
|
|
- permit = ['gxt:repairOrder:acceptReturn']
|
|
|
- }
|
|
|
- else {
|
|
|
- return false
|
|
|
- }
|
|
|
+ } else if(orderItem.workOrderStatus == 'to_approve') {
|
|
|
+ // 审批
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:approve'] : ['gxt:repairOrder:approve']
|
|
|
+ } else if(orderItem.workOrderStatus == 'suspended' && (orderItem.teamLeaderId == parseInt(userId.value) || roles.value.includes("管理员"))) {
|
|
|
+ // 恢复
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:resume'] : ['gxt:repairOrder:resume']
|
|
|
+ } else if(orderItem.workOrderStatus == 'return') {
|
|
|
+ // 接单退回
|
|
|
+ permit = ['gxt:repairOrder:acceptReturn']
|
|
|
+ } else if(orderItem.workOrderStatus == 'completed') {
|
|
|
+ // 复运
|
|
|
+ permit = orderItem.orderType == 2 ? ['gxt:maintenance:order:restart'] : ['gxt:repairOrder:restart']
|
|
|
+ } else {
|
|
|
+ return false
|
|
|
+ }
|
|
|
// const orderType = (item as acceptOrderInfoExtend).orderType
|
|
|
- return checkPermi(permit)
|
|
|
+ return checkPermi(permit)
|
|
|
}
|
|
|
|
|
|
// 获取工单状态字典列表
|
|
|
@@ -344,7 +372,9 @@ type acceptOrderInfoExtend = {
|
|
|
rejectionReason: item['rejectionReason'] as string | null,
|
|
|
updateTime: item['updateTime'] as string | null, // 新增字段
|
|
|
workEndTime: item['workEndTime'] as string | null, // 新增字段
|
|
|
- pauseTime: item['pauseTime'] as string | null
|
|
|
+ orderEntryType: item['orderEntryType'] as string | null,
|
|
|
+ pauseTime: item['pauseTime'] as string | null,
|
|
|
+ restartTime: item['restartTime'] as string | null
|
|
|
}
|
|
|
newData.push(orderItem)
|
|
|
}
|
|
|
@@ -579,6 +609,11 @@ type acceptOrderInfoExtend = {
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/shutdownIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
})
|
|
|
+ } else if(buttonType != '' && buttonType == "restart") {
|
|
|
+ // 跳转到复运页面
|
|
|
+ uni.navigateTo({
|
|
|
+ url: `/pages/order/detail/restartIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
+ })
|
|
|
} else {
|
|
|
// 跳转到接单页面
|
|
|
uni.navigateTo({
|
|
|
@@ -587,7 +622,7 @@ type acceptOrderInfoExtend = {
|
|
|
}
|
|
|
} else if(orderItem.workOrderStatus == 'to_finish') {
|
|
|
if(buttonType != '' && buttonType == "suspend") {
|
|
|
- // 跳转到待结单页面
|
|
|
+ // 跳转到待挂起页面
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/suspendIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
})
|
|
|
@@ -606,6 +641,21 @@ type acceptOrderInfoExtend = {
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/shutdownIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
})
|
|
|
+ } else if(buttonType != '' && buttonType == "restart") {
|
|
|
+ // 跳转到复运页面
|
|
|
+ uni.navigateTo({
|
|
|
+ url: `/pages/order/detail/restartIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
+ })
|
|
|
+ } else if(buttonType != '' && buttonType == "complete" && orderItem.orderType == 2 && orderItem.orderEntryType == '1') {
|
|
|
+ // 跳转到结单页面
|
|
|
+ uni.navigateTo({
|
|
|
+ url: `/pages/order/detail/wbFinalize?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
+ })
|
|
|
+ } else if(buttonType != '' && buttonType == "complete" && orderItem.orderType == 1) {
|
|
|
+ // 跳转到结单页面
|
|
|
+ uni.navigateTo({
|
|
|
+ url: `/pages/order/detail/wxFinalize?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
+ })
|
|
|
}
|
|
|
} else if(orderItem.workOrderStatus == 'to_approve') {
|
|
|
// 跳转到待审批页面
|
|
|
@@ -622,6 +672,13 @@ type acceptOrderInfoExtend = {
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/returnIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
})
|
|
|
+ } else if(orderItem.workOrderStatus == 'completed') {
|
|
|
+ if(buttonType != '' && buttonType == "restart") {
|
|
|
+ // 跳转到复运页面
|
|
|
+ uni.navigateTo({
|
|
|
+ url: `/pages/order/detail/restartIndex?id=${orderItem.id}&orderType=${orderItem.orderType}`
|
|
|
+ })
|
|
|
+ }
|
|
|
} else {
|
|
|
uni.navigateTo({
|
|
|
url: `/pages/order/detail/index?id=${orderItem.id}&orderType=${orderItem.orderType}`
|