Commit da8d06be471934e83203382e6e5235a04f7699b8
1 parent
fc5a7fb2
fix: 解决查询区域公司为空时报错问题
Showing
2 changed files
with
17 additions
and
15 deletions
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderServiceImpl.java
| ... | ... | @@ -572,9 +572,8 @@ public class GarOrderServiceImpl extends ServiceImpl<GarOrderMapper, GarOrder> |
| 572 | 572 | } else { |
| 573 | 573 | comparator = Comparator.comparing(TransportationEnterpriseVo::getDistance); |
| 574 | 574 | } |
| 575 | - | |
| 576 | - List<Long> enterpriseIds = list.stream().map(TransportationEnterprise::getId).collect(Collectors.toList()); | |
| 577 | 575 | // 企业id为空说明没有公司 |
| 576 | + List<Long> enterpriseIds = list.stream().map(TransportationEnterprise::getId).collect(Collectors.toList()); | |
| 578 | 577 | List<GarOrder> orderList = baseMapper.queryCleanNumberByEnterpriseIds(enterpriseIds, GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue()); |
| 579 | 578 | List<GarOrderEvaluate> evaluateList = garOrderEvaluateService.queryEvaluateByEnterpriseIds(enterpriseIds, GlobalStatus.GarOrderStatus.EVALUATE_TYPE_COMPANY.getValue()); |
| 580 | 579 | Map<String, List<GarOrderEvaluate>> evaluateMap = new HashMap<>(); | ... | ... |
trash-garbage/src/main/resources/mapper/GarOrderMapper.xml
| ... | ... | @@ -77,18 +77,19 @@ |
| 77 | 77 | </foreach> |
| 78 | 78 | </update> |
| 79 | 79 | <select id="queryCleanNumberByEnterpriseIds" resultType="com.trash.garbage.pojo.domain.GarOrder"> |
| 80 | - | |
| 81 | - <if test="list != null and list.size() > 0"> | |
| 82 | 80 | select gar_order_company_id, count(gar_order_company_id) as count |
| 83 | 81 | from gar_order |
| 84 | 82 | where gar_order_handler_status = #{status} |
| 83 | + <if test="list == null or list.size() == 0"> | |
| 84 | + and 1 = 0 | |
| 85 | + </if> | |
| 86 | + <if test="list != null and list.size() > 0"> | |
| 85 | 87 | and gar_order_company_id in |
| 86 | 88 | <foreach collection="list" item="item" open="(" separator="," close=")"> |
| 87 | 89 | #{item} |
| 88 | 90 | </foreach> |
| 89 | - group by gar_order_company_id | |
| 90 | 91 | </if> |
| 91 | - | |
| 92 | + group by gar_order_company_id | |
| 92 | 93 | </select> |
| 93 | 94 | <select id="queryDriverOrderListByTelWithType" resultType="com.trash.garbage.pojo.vo.GarOrderDriverVo"> |
| 94 | 95 | SELECT |
| ... | ... | @@ -97,7 +98,7 @@ |
| 97 | 98 | `order`.gar_order_trash_type,`order`.gar_order_contact_tel,`order`.gar_order_company_id,`order`.gar_latitude, |
| 98 | 99 | `order`.gar_order_company_name,`order`.gar_order_company_tel,`order`.gar_order_scan_handler_flag, |
| 99 | 100 | `order`.gar_order_agreement_time,`order`.gar_remark,`order`.gar_handler_evaluate_flag, |
| 100 | --- `order`.gar_order_handler_status gar_order_status, | |
| 101 | + -- `order`.gar_order_handler_status gar_order_status, | |
| 101 | 102 | `handler`.gar_order_handler_status,`handler`.gar_cancel_flag,`handler`.gar_reason,`order`.gar_real_car_count |
| 102 | 103 | FROM gar_order `order` |
| 103 | 104 | INNER JOIN gar_order_match_handler `handler` ON `order`.gar_order_id = `handler`.gar_order_id |
| ... | ... | @@ -151,12 +152,12 @@ |
| 151 | 152 | `disposal`.gar_order_disposal_status, |
| 152 | 153 | `order`.gar_real_car_count, |
| 153 | 154 | ( |
| 154 | - CASE | |
| 155 | - `order`.gar_order_id | |
| 156 | - WHEN `order`.gar_order_id THEN | |
| 157 | - ( SELECT count(*) FROM gar_order_match_ask ask INNER JOIN gar_order ON `gar_order`.gar_order_id = | |
| 158 | - `ask`.gar_order_id WHERE `order`.gar_order_id = `gar_order`.gar_order_id ) | |
| 159 | - END | |
| 155 | + CASE | |
| 156 | + `order`.gar_order_id | |
| 157 | + WHEN `order`.gar_order_id THEN | |
| 158 | + ( SELECT count(*) FROM gar_order_match_ask ask INNER JOIN gar_order ON `gar_order`.gar_order_id = | |
| 159 | + `ask`.gar_order_id WHERE `order`.gar_order_id = `gar_order`.gar_order_id ) | |
| 160 | + END | |
| 160 | 161 | ) AS gar_now_car_count |
| 161 | 162 | FROM |
| 162 | 163 | gar_order `order` |
| ... | ... | @@ -219,11 +220,13 @@ |
| 219 | 220 | <select id="queryUnprocessedOrder" resultType="com.trash.garbage.pojo.domain.GarOrder"> |
| 220 | 221 | select * |
| 221 | 222 | from gar_order |
| 222 | - where gar_order.gar_order_handler_status = #{orderType} and gar_order.gar_time_out_flag = #{timeOutFlag} and gar_order.gar_cancel_flag = #{cancelFlag} | |
| 223 | + where gar_order.gar_order_handler_status = #{orderType} | |
| 224 | + and gar_order.gar_time_out_flag = #{timeOutFlag} | |
| 225 | + and gar_order.gar_cancel_flag = #{cancelFlag} | |
| 223 | 226 | </select> |
| 224 | 227 | <select id="queryDriverOrderListByTelWithTypeCount" resultType="java.lang.Integer"> |
| 225 | 228 | SELECT |
| 226 | - count(*) | |
| 229 | + count(*) | |
| 227 | 230 | FROM gar_order `order` |
| 228 | 231 | INNER JOIN gar_order_match_handler `handler` ON `order`.gar_order_id = `handler`.gar_order_id |
| 229 | 232 | <where> | ... | ... |