Commit 2db226ba8c4ec9afc101202ad632aa3b85360574

Authored by liujun001
1 parent d36bdb05

优化车辆信息,将客户的数据拉入我们的库

trash-garbage/src/main/java/com/trash/garbage/pojo/vo/OrderCarStatistics.java 0 → 100644
  1 +package com.trash.garbage.pojo.vo;
  2 +
  3 +public class OrderCarStatistics {
  4 + private String carType;
  5 + private Integer number;
  6 +
  7 + public String getCarType() {
  8 + return carType;
  9 + }
  10 +
  11 + public void setCarType(String carType) {
  12 + this.carType = carType;
  13 + }
  14 +
  15 + public Integer getNumber() {
  16 + return number;
  17 + }
  18 +
  19 + public void setNumber(Integer number) {
  20 + this.number = number;
  21 + }
  22 +}
trash-garbage/src/main/java/com/trash/garbage/pojo/vo/OrderDetailVo.java
@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode; @@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
7 import lombok.ToString; 7 import lombok.ToString;
8 8
9 import java.util.ArrayList; 9 import java.util.ArrayList;
  10 +import java.util.Collection;
10 import java.util.Date; 11 import java.util.Date;
11 import java.util.List; 12 import java.util.List;
12 13
@@ -87,6 +88,10 @@ public class OrderDetailVo { @@ -87,6 +88,10 @@ public class OrderDetailVo {
87 * 车辆信息 88 * 车辆信息
88 */ 89 */
89 private List<GarOrderCar> garCarInfoList; 90 private List<GarOrderCar> garCarInfoList;
  91 +
  92 + private Collection<OrderCarStatistics> orderCarStatistics;
  93 +
  94 + private Collection<OrderDriver> orderDrivers;
90 /*** 95 /***
91 * 96 *
92 * 垃圾处置场信息 97 * 垃圾处置场信息
@@ -451,4 +456,20 @@ public class OrderDetailVo { @@ -451,4 +456,20 @@ public class OrderDetailVo {
451 public void setGarEstimatedCost(String garEstimatedCost) { 456 public void setGarEstimatedCost(String garEstimatedCost) {
452 this.garEstimatedCost = garEstimatedCost; 457 this.garEstimatedCost = garEstimatedCost;
453 } 458 }
  459 +
  460 + public Collection<OrderCarStatistics> getOrderCarStatistics() {
  461 + return orderCarStatistics;
  462 + }
  463 +
  464 + public void setOrderCarStatistics(Collection<OrderCarStatistics> orderCarStatistics) {
  465 + this.orderCarStatistics = orderCarStatistics;
  466 + }
  467 +
  468 + public Collection<OrderDriver> getOrderDrivers() {
  469 + return orderDrivers;
  470 + }
  471 +
  472 + public void setOrderDrivers(Collection<OrderDriver> orderDrivers) {
  473 + this.orderDrivers = orderDrivers;
  474 + }
454 } 475 }
trash-garbage/src/main/java/com/trash/garbage/pojo/vo/OrderDriver.java 0 → 100644
  1 +package com.trash.garbage.pojo.vo;
  2 +
  3 +public class OrderDriver {
  4 + private String driverName;
  5 + private String driverPhone;
  6 +
  7 + public String getDriverName() {
  8 + return driverName;
  9 + }
  10 +
  11 + public void setDriverName(String driverName) {
  12 + this.driverName = driverName;
  13 + }
  14 +
  15 + public String getDriverPhone() {
  16 + return driverPhone;
  17 + }
  18 +
  19 + public void setDriverPhone(String driverPhone) {
  20 + this.driverPhone = driverPhone;
  21 + }
  22 +}
trash-garbage/src/main/java/com/trash/garbage/service/GarOrderMatchHandlerService.java
@@ -15,4 +15,5 @@ import java.util.Set; @@ -15,4 +15,5 @@ import java.util.Set;
15 public interface GarOrderMatchHandlerService extends IService<GarOrderMatchHandler> { 15 public interface GarOrderMatchHandlerService extends IService<GarOrderMatchHandler> {
16 16
17 List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, String companyId, Set<String> containerVolumees); 17 List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, String companyId, Set<String> containerVolumees);
  18 + List<GarOrderMatchHandler> queryByOrderId(String orderId);
18 } 19 }
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderMatchHandlerServiceImpl.java
1 package com.trash.garbage.service.impl; 1 package com.trash.garbage.service.impl;
2 2
  3 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.trash.garbage.mapper.GarOrderMatchHandlerMapper; 5 import com.trash.garbage.mapper.GarOrderMatchHandlerMapper;
5 import com.trash.garbage.pojo.domain.GarOrderMatchHandler; 6 import com.trash.garbage.pojo.domain.GarOrderMatchHandler;
@@ -7,6 +8,7 @@ import com.trash.garbage.pojo.vo.DispatchDriverVo; @@ -7,6 +8,7 @@ import com.trash.garbage.pojo.vo.DispatchDriverVo;
7 import com.trash.garbage.service.GarOrderMatchHandlerService; 8 import com.trash.garbage.service.GarOrderMatchHandlerService;
8 import org.springframework.stereotype.Service; 9 import org.springframework.stereotype.Service;
9 10
  11 +import java.util.Collections;
10 import java.util.List; 12 import java.util.List;
11 import java.util.Set; 13 import java.util.Set;
12 14
@@ -23,6 +25,13 @@ public class GarOrderMatchHandlerServiceImpl extends ServiceImpl&lt;GarOrderMatchHa @@ -23,6 +25,13 @@ public class GarOrderMatchHandlerServiceImpl extends ServiceImpl&lt;GarOrderMatchHa
23 public List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, String id, Set<String> containerVolumees) { 25 public List<DispatchDriverVo> queryDriverListWithDispatchStatus(String orderId, String id, Set<String> containerVolumees) {
24 return baseMapper.queryDriverListWithDispatchStatus(orderId, id,containerVolumees); 26 return baseMapper.queryDriverListWithDispatchStatus(orderId, id,containerVolumees);
25 } 27 }
  28 +
  29 + @Override
  30 + public List<GarOrderMatchHandler> queryByOrderId(String orderId) {
  31 + LambdaQueryWrapper<GarOrderMatchHandler> wrapper = new LambdaQueryWrapper<>();
  32 + wrapper.eq(GarOrderMatchHandler::getGarOrderId,orderId);
  33 + return list(wrapper);
  34 + }
26 } 35 }
27 36
28 37
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderServiceImpl.java
@@ -664,17 +664,40 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt; @@ -664,17 +664,40 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
664 vo.setGarOrderHandleName(driverVos.get(0).getName()); 664 vo.setGarOrderHandleName(driverVos.get(0).getName());
665 vo.setGarOrderHandleTel(driverVos.get(0).getPhoneNo()); 665 vo.setGarOrderHandleTel(driverVos.get(0).getPhoneNo());
666 } 666 }
667 - } else if (StringUtils.isNotEmpty(vo.getGarOrderCompanyTel())) {  
668 - TransportationEnterprise enterprise = transportationEnterpriseService.queryByServerPhone(vo.getGarOrderCompanyTel());  
669 - if(Objects.nonNull(enterprise)){  
670 - vo.setGarOrderHandleName(enterprise.getLegalRepresentative());  
671 - vo.setGarOrderHandleTel(enterprise.getLegalRepresentativePhone()); 667 + } else {
  668 + List<GarOrderMatchHandler> matchHandlers = handlerService.queryByOrderId(id);
  669 + int size = CollectionUtils.size(matchHandlers);
  670 + if (size > 0) {
  671 + Set<OrderDriver> orderDrivers = new LinkedHashSet<>();
  672 + for (int i = 0; i < size; i++) {
  673 + DriverVo driverVo = new DriverVo();
  674 + driverVo.setPhoneNo(matchHandlers.get(i).getGarOrderHandlerTel());
  675 + driverVos = driverService.selectDriverList(driverVo);
  676 + if (CollectionUtil.isNotEmpty(driverVos)) {
  677 + OrderDriver od = new OrderDriver();
  678 + od.setDriverName(driverVos.get(0).getName());
  679 + od.setDriverPhone(driverVos.get(0).getPhoneNo());
  680 + orderDrivers.add(od);
  681 + }
  682 + }
  683 + vo.setOrderDrivers(orderDrivers);
672 } 684 }
673 } 685 }
674 // 获取车辆信息 686 // 获取车辆信息
675 LambdaQueryWrapper<GarOrderCar> qwc = new LambdaQueryWrapper<>(); 687 LambdaQueryWrapper<GarOrderCar> qwc = new LambdaQueryWrapper<>();
676 qwc.eq(GarOrderCar::getGarOrderId, id); 688 qwc.eq(GarOrderCar::getGarOrderId, id);
677 List<GarOrderCar> carList = garOrderCarService.list(qwc); 689 List<GarOrderCar> carList = garOrderCarService.list(qwc);
  690 + if (CollectionUtils.isNotEmpty(carList)) {
  691 + Map<String, List<GarOrderCar>> groupCars = carList.stream().collect(Collectors.groupingBy(GarOrderCar::getGarOrderCarType));
  692 + Set<OrderCarStatistics> orderCarStatistics = new LinkedHashSet<>();
  693 + for (Map.Entry<String, List<GarOrderCar>> entry : groupCars.entrySet()) {
  694 + OrderCarStatistics statistics = new OrderCarStatistics();
  695 + statistics.setCarType(entry.getKey());
  696 + statistics.setNumber(CollectionUtils.size(entry.getValue()));
  697 + orderCarStatistics.add(statistics);
  698 + }
  699 + vo.setOrderCarStatistics(orderCarStatistics);
  700 + }
678 vo.setGarCarInfoList(carList); 701 vo.setGarCarInfoList(carList);
679 return vo; 702 return vo;
680 } 703 }
trash-ui/src/views/gar/order/index.vue
@@ -108,12 +108,14 @@ @@ -108,12 +108,14 @@
108 type="date" value-format="yyyy-MM-dd" placeholder="选择订单创建时间"> 108 type="date" value-format="yyyy-MM-dd" placeholder="选择订单创建时间">
109 </el-date-picker> 109 </el-date-picker>
110 </el-form-item> 110 </el-form-item>
111 - <el-form-item label="车子类型" prop="garOrderCarType">  
112 - <el-input :disabled="true" v-model="form.garOrderCarType" placeholder="请输入车子类型" />  
113 - </el-form-item>  
114 - <el-form-item label="车子数量" prop="garOrderCarNumber">  
115 - <el-input :disabled="true" v-model="form.garOrderCarNumber" placeholder="请输入车子数量" />  
116 - </el-form-item> 111 + <div v-for="(carItem,index) in form.orderCarStatistics" :key="index">
  112 + <el-form-item label="车子类型" prop="garOrderCarType" >
  113 + <el-input :disabled="true" v-model="carItem.carType" placeholder="请输入车子类型" />
  114 + </el-form-item>
  115 + <el-form-item label="车子数量" prop="garOrderCarNumber">
  116 + <el-input :disabled="true" v-model="carItem.number" placeholder="请输入车子数量" />
  117 + </el-form-item>
  118 + </div>
117 <el-form-item label="备注" prop="garRemark"> 119 <el-form-item label="备注" prop="garRemark">
118 <el-input :disabled="true" v-model="form.garRemark" type="textarea" placeholder="请输入内容" /> 120 <el-input :disabled="true" v-model="form.garRemark" type="textarea" placeholder="请输入内容" />
119 </el-form-item> 121 </el-form-item>
@@ -130,12 +132,15 @@ @@ -130,12 +132,15 @@
130 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单处理信息</div> 132 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单处理信息</div>
131 </div> 133 </div>
132 <el-form :inline="true" :model="form"> 134 <el-form :inline="true" :model="form">
133 - <el-form-item label="派单负责人" prop="garOrderHandler">  
134 - <el-input v-model="form.garOrderHandleName" placeholder="派单负责人" />  
135 - </el-form-item>  
136 - <el-form-item label="派单负责人电话" prop="garOrderHandlerTel">  
137 - <el-input v-model="form.garOrderHandleTel" placeholder="派单负责人电话" />  
138 - </el-form-item> 135 + <div v-for="(orderDriver,index) in form.orderDrivers" :key="index">
  136 + <el-form-item label="派单负责人" prop="garOrderHandler">
  137 + <el-input v-model="orderDriver.driverName" placeholder="派单负责人" />
  138 + </el-form-item>
  139 + <el-form-item label="派单负责人电话" prop="garOrderHandlerTel">
  140 + <el-input v-model="orderDriver.driverPhone" placeholder="派单负责人电话" />
  141 + </el-form-item>
  142 + </div>
  143 +
139 <el-form-item v-if="form.putOnImages" label="现场图片" prop="putOnImages"> 144 <el-form-item v-if="form.putOnImages" label="现场图片" prop="putOnImages">
140 <el-image style="width: 100px; height: 100px" :src="form.putOnImages[0]" :preview-src-list="form.putOnImages"> 145 <el-image style="width: 100px; height: 100px" :src="form.putOnImages[0]" :preview-src-list="form.putOnImages">
141 </el-image> 146 </el-image>
@@ -312,6 +317,9 @@ export default { @@ -312,6 +317,9 @@ export default {
312 const garOrderId = row.garOrderId || this.ids 317 const garOrderId = row.garOrderId || this.ids
313 getOrder(garOrderId).then(response => { 318 getOrder(garOrderId).then(response => {
314 this.form = response.data; 319 this.form = response.data;
  320 + console.log(this.form);
  321 + console.log("----------------------->");
  322 +
315 this.form.currentImages = this.form.currentImages.map(map => process.env.VUE_APP_BASE_API + map) 323 this.form.currentImages = this.form.currentImages.map(map => process.env.VUE_APP_BASE_API + map)
316 this.form.putDownImages = this.form.putDownImages.map(map => process.env.VUE_APP_BASE_API + map) 324 this.form.putDownImages = this.form.putDownImages.map(map => process.env.VUE_APP_BASE_API + map)
317 this.form.putOnImages = this.form.putOnImages.map(map => process.env.VUE_APP_BASE_API + map) 325 this.form.putOnImages = this.form.putOnImages.map(map => process.env.VUE_APP_BASE_API + map)