Commit 932941fd4e6ef0e36f7868547a7b3b5f1a18cc95

Authored by lichao
1 parent 62b28cac

分配流程调整

garbage-removal/src/pages/order-info/order-other/detail/index.vue
... ... @@ -238,50 +238,66 @@
238 238 </view>
239 239 <view class="space-box">{{ spaceStr }}</view>
240 240 </view>
241   - <!-- 占位符 -->
242   - <view class="order-detail-bottom">
243   - <view class="order-detail-bottom-box">
244   - <view class=" order-detail-bottom-left">
245   - <u-button
246   - v-if="dataGram.garOrderHandlerStatus === 0 && userType == '运输企业负责人' && dataGram.garCancelFlag === 0"
247   - @click="handleOderCancelClick()" shape="square" color="#19a97c" text="取消订单"></u-button>
248   - <u-button
249   - v-if="dataGram.garOrderScanHandlerFlag === 0 && userType == '用户' && dataGram.garOrderHandlerStatus != 3 && dataGram.garAskStatus != '1'"
250   - @click="handlerUpdateOrderClick()" shape="square" color="#19a97c" text="修改车辆数"></u-button>
251   - <u-button v-if="dataGram.garOrderHandlerStatus === 1 && userType == '运输企业负责人'"
252   - @click="handleOrderDispatchClick(orderId)" shape="square" color="#19a97c"
253   - text="分配驾驶员"></u-button>
254   - </view>
255 241  
256   - <view class="order-detail-bottom-center" v-if="dataGram.garOrderHandlerStatus === 1 && userType == '运输企业负责人' && isAllTripsCompleted()">
257   - <u-button @click="handleSubmitSuccess(orderId)" shape="square" color="#19a97c" text="完成订单"></u-button>
  242 + <!-- 占位符 -->
  243 + <view class="order-detail-bottom">
  244 + <view class="order-detail-bottom-box">
  245 + <view class="order-detail-bottom-left">
  246 + <u-button
  247 + v-if="dataGram.garOrderHandlerStatus === 0 && userType == '运输企业负责人' && dataGram.garCancelFlag === 0"
  248 + @click="handleOderCancelClick()" shape="square" color="#19a97c" text="取消订单"></u-button>
  249 + <u-button
  250 + v-if="dataGram.garOrderScanHandlerFlag === 0 && userType == '用户' && dataGram.garOrderHandlerStatus != 3 && dataGram.garAskStatus != '1'"
  251 + @click="handlerUpdateOrderClick()" shape="square" color="#19a97c" text="修改车辆数"></u-button>
258 252 </view>
259   - <view class="order-detail-bottom-right">
260   - <u-button
261   - v-if="dataGram.garOrderHandlerStatus === 0 && userType == '用户' && dataGram.garCancelFlag === 0"
262   - @click="handleOderCancelClick()" shape="square" color="#19a97c" text="取消订单"></u-button>
263   - <u-button @click="handleOrder(orderId)"
264   - v-if="dataGram.garOrderHandlerStatus === 0 && dataGram.handleFlag && dataGram.garCancelFlag === 0 && userType === '运输企业负责人'"
265   - shape="square" color="#19a97c" text="处理订单"></u-button>
266   - <u-button @click="handleEvaluate(orderId, userType)"
267   - v-if="dataGram.garEvaluateFlag === 0 && userType === '用户'" shape="square" color="#19a97c"
268   - text="去评价"></u-button>
269   - <u-button @click="handleEvaluateDetail(orderId, userType)"
270   - v-if="dataGram.garHandlerEvaluateFlag === 0 && userType === '运输企业负责人' && dataGram.haveEvaluateOfClient==1"
271   - shape="square" color="#19a97c" text="查看评价"></u-button>
272   - <u-button @click="handleEvaluateDetail(orderId, userType)"
273   - v-if="dataGram.garHandlerEvaluateFlag === 1 && userType === '运输企业负责人' && dataGram.haveEvaluateOfClient==1"
274   - shape="square" color="#19a97c" text="查看评价"></u-button>
275   - <u-button @click="handleEvaluateDetail(orderId, userType)"
276   - v-if="dataGram.garEvaluateFlag === 1 && userType === '用户'" shape="square" color="#19a97c"
277   - text="查看评价"></u-button>
278   - <u-button v-if="dataGram.garOrderHandlerStatus === 1 && userType == '运输企业负责人'"
279   - @click="handleDisposalDispatchClick(orderId)" shape="square" color="#19a97c"
280   - text="分配处置场所"></u-button>
281   - </view>
282 253  
283   - </view>
284   - </view>
  254 + <view class="order-detail-bottom-center" v-if="dataGram.garOrderHandlerStatus === 0 && userType == '运输企业负责人' && dataGram.handleFlag && dataGram.garCancelFlag === 0">
  255 + <view class="button-group">
  256 + <u-button @click="handleOrderDispatchClick(orderId)" shape="square" color="#19a97c" text="分配驾驶员"></u-button>
  257 + <u-button @click="handleDisposalDispatchClick(orderId)" shape="square" color="#19a97c" text="分配处置场所"></u-button>
  258 + <u-button
  259 + @click="handleOrder(orderId)"
  260 + shape="square"
  261 + color="#19a97c"
  262 + text="处理订单"
  263 + :disabled="!isDriverAndDisposalAssigned()">
  264 + </u-button>
  265 + </view>
  266 + </view>
  267 +
  268 + <view class="order-detail-bottom-center" v-else-if="dataGram.garOrderHandlerStatus === 1 && userType == '运输企业负责人'">
  269 + <view class="button-group">
  270 + <u-button @click="handleOrderDispatchClick(orderId)" shape="square" color="#19a97c" text="重新分配驾驶员"></u-button>
  271 + <u-button @click="handleDisposalDispatchClick(orderId)" shape="square" color="#19a97c" text="重新分配处置场所"></u-button>
  272 + </view>
  273 + </view>
  274 +
  275 +
  276 +
  277 + <view class="order-detail-bottom-center" v-else-if="dataGram.garOrderHandlerStatus === 1 && userType == '运输企业负责人' && isAllTripsCompleted()">
  278 + <u-button @click="handleSubmitSuccess(orderId)" shape="square" color="#19a97c" text="完成订单"></u-button>
  279 + </view>
  280 +
  281 + <view class="order-detail-bottom-right">
  282 + <u-button
  283 + v-if="dataGram.garOrderHandlerStatus === 0 && userType == '用户' && dataGram.garCancelFlag === 0"
  284 + @click="handleOderCancelClick()" shape="square" color="#19a97c" text="取消订单"></u-button>
  285 + <u-button @click="handleEvaluate(orderId, userType)"
  286 + v-if="dataGram.garEvaluateFlag === 0 && userType === '用户'" shape="square" color="#19a97c"
  287 + text="去评价"></u-button>
  288 + <u-button @click="handleEvaluateDetail(orderId, userType)"
  289 + v-if="dataGram.garHandlerEvaluateFlag === 0 && userType === '运输企业负责人' && dataGram.haveEvaluateOfClient==1"
  290 + shape="square" color="#19a97c" text="查看评价"></u-button>
  291 + <u-button @click="handleEvaluateDetail(orderId, userType)"
  292 + v-if="dataGram.garHandlerEvaluateFlag === 1 && userType === '运输企业负责人' && dataGram.haveEvaluateOfClient==1"
  293 + shape="square" color="#19a97c" text="查看评价"></u-button>
  294 + <u-button @click="handleEvaluateDetail(orderId, userType)"
  295 + v-if="dataGram.garEvaluateFlag === 1 && userType === '用户'" shape="square" color="#19a97c"
  296 + text="查看评价"></u-button>
  297 + </view>
  298 +
  299 + </view>
  300 + </view>
285 301 <u-action-sheet :closeOnClickOverlay="true" :closeOnClickAction="false" @actionSheetClose="handleClose"
286 302 @submitFunction="submitFunction" @select="selectClick" :actions="list" round="15" title="取消订单"
287 303 :show="cancelShow">
... ... @@ -405,6 +421,14 @@ const disposalAssigned = ref(false); // 添加这行,跟踪处置场所是否
405 421 return reason
406 422 })
407 423  
  424 + const isDriverAndDisposalAssigned = () => {
  425 + // 直接使用已有的响应式变量来判断分配状态
  426 + const hasDrivers = driverAssigned.value;
  427 + const hasDisposalSites = disposalAssigned.value;
  428 +
  429 + return hasDrivers && hasDisposalSites;
  430 + };
  431 +
408 432 const isAllTripsCompleted = () => {
409 433 // 检查所有趟次是否已完成
410 434 if (!dataGram.value || !dataGram.value.garCarInfoList || !putOnImagesGrouped.value) {
... ... @@ -771,22 +795,12 @@ const handleSubmitSuccess = (orderId) =&gt; {
771 795 // 标记处置场所已分配
772 796 disposalAssigned.value = true;
773 797 // 检查是否两个任务都已完成
774   - checkAndRedirect();
775 798 } else {
776 799 uni.$u.toast("指定人员失败,请重试")
777 800 }
778 801 clashDriverDispatchRef.value.close()
779 802 })
780 803 }
781   - const checkAndRedirect = () => {
782   - // 当两个任务都完成时跳转到订单页
783   - if (driverAssigned.value && disposalAssigned.value) {
784   - uni.$u.route({
785   - type: "reLaunch",
786   - url: `pages/order/index`,
787   - });
788   - }
789   - }
790 804  
791 805 const handlerUpdateOrderClick = () => {
792 806 carPopupShowFlag.value = true;
... ... @@ -854,8 +868,6 @@ const handleDriverDispatchConfirm = (val) =&gt; {
854 868 uni.$u.toast(res.data.msg);
855 869 // 标记驾驶员已分配
856 870 driverAssigned.value = true;
857   - // 检查是否两个任务都已完成
858   - checkAndRedirect();
859 871 } else {
860 872 uni.$u.toast("指定人员失败,请重试");
861 873 }
... ... @@ -982,11 +994,33 @@ const handleDriverDispatchConfirm = (val) =&gt; {
982 994 }
983 995  
984 996 .order-detail-bottom-center {
985   - min-width: 200rpx;
  997 + flex: 1;
  998 + display: flex;
  999 + justify-content: center;
  1000 +
  1001 + .button-group {
  1002 + display: flex;
  1003 + gap: 20rpx;
  1004 + flex-wrap: nowrap;
  1005 +
  1006 + u-button {
  1007 + white-space: nowrap;
  1008 + }
  1009 + }
986 1010 }
987 1011  
988 1012 .order-detail-bottom-right {
989 1013 min-width: 200rpx;
  1014 + display: flex;
  1015 + justify-content: flex-end;
  1016 +
  1017 + u-button {
  1018 + margin-left: 20rpx;
  1019 + }
  1020 +
  1021 + u-button:first-child {
  1022 + margin-left: 0;
  1023 + }
990 1024 }
991 1025 }
992 1026  
... ...