Commit fc5a7fb27f51ea9f328f9226bd6219652cdbbdd4

Authored by guzijian
1 parent b6006397

feat: 小菜单处理

trash-admin/src/main/resources/static/role/company.png deleted 100644 → 0

23.6 KB

trash-admin/src/main/resources/static/role/disposal.png deleted 100644 → 0

21.8 KB

trash-admin/src/main/resources/static/role/handler.png deleted 100644 → 0

23.7 KB

trash-admin/src/main/resources/static/role/user.png deleted 100644 → 0

18.9 KB

trash-garbage/src/main/java/com/trash/garbage/controller/GarbageOrderController.java
... ... @@ -130,8 +130,10 @@ public class GarbageOrderController {
130 130 }
131 131  
132 132 @GetMapping("/query/list")
133   - public Result<?> queryOrderList(@RequestParam("type") Integer type, @RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize) {
134   - return Result.OK(garOrderService.queryOrderList(type, pageNo, pageSize));
  133 + public Result<?> queryOrderList(@RequestParam("type") Integer type,
  134 + @RequestParam(value = "evaluateFlag", required = false) Integer evaluateFlag,
  135 + @RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize) {
  136 + return Result.OK(garOrderService.queryOrderList(type, evaluateFlag, pageNo, pageSize));
135 137 }
136 138  
137 139 @PutMapping("/dispatch")
... ... @@ -205,6 +207,10 @@ public class GarbageOrderController {
205 207 return Result.OK(garOrderService.querySearchHistory());
206 208 }
207 209  
  210 + @GetMapping("/queryBadgeByType/{type}")
  211 + public Result<?> queryBadgeByType(@PathVariable("type")Integer type) {
  212 + return Result.OK(garOrderService.queryBadgeByType(type));
  213 + }
208 214  
209 215 protected void startPage() {
210 216 PageDomain pageDomain = TableSupport.buildPageRequest();
... ...
trash-garbage/src/main/java/com/trash/garbage/global/GlobalStatus.java
... ... @@ -14,9 +14,13 @@ public class GlobalStatus {
14 14 * 已注销
15 15 */
16 16 public static final int DEL_FLAG_YES = 1;
17   - /** 订单超时 */
  17 + /**
  18 + * 订单超时
  19 + */
18 20 public static final boolean ORDER_TIME_OUT_FLAG_YES = true;
19   - /** 订单未超时 */
  21 + /**
  22 + * 订单未超时
  23 + */
20 24 public static final boolean ORDER_TIME_OUT_FLAG_NO = false;
21 25  
22 26 /**
... ... @@ -92,30 +96,30 @@ public class GlobalStatus {
92 96 * 订单
93 97 */
94 98 public enum GarOrderStatus {
95   - ORDER_TIME_OUT_FLAG_YES(1,"已超时"),
96   - ORDER_TIME_OUT_FLAG_NO(0,"未超时"),
  99 + ORDER_TIME_OUT_FLAG_YES(1, "已超时"),
  100 + ORDER_TIME_OUT_FLAG_NO(0, "未超时"),
97 101 NEW_ORDER(0, "新订单"),
98 102 ACTIVE_ORDER(1, "处理中"),
99 103 ALL_ORDER(2, "全部订单"),
100 104 SUCCESS_ORDER(3, "已完成"),
101 105 FAIL_ORDER(9, "订单处理失败"),
102   - SCAN_HANDLER_NO(0,"未扫码处理"),
103   - SCAN_HANDLER_YES(1,"已扫码处理"),
104   - DISPATCH_HANDLE_NEW(0,"未接受"),
105   - DISPATCH_HANDLE_ACTIVE(1,"已接受"),
106   - DISPATCH_HANDLE_SUCCESS(3,"已完成"),
107   - PLAN_CAR_TYPE(0,"预计车辆"),
108   - REAL_CAR_TYPE(1,"实际车辆"),
  106 + SCAN_HANDLER_NO(0, "未扫码处理"),
  107 + SCAN_HANDLER_YES(1, "已扫码处理"),
  108 + DISPATCH_HANDLE_NEW(0, "未接受"),
  109 + DISPATCH_HANDLE_ACTIVE(1, "已接受"),
  110 + DISPATCH_HANDLE_SUCCESS(3, "已完成"),
  111 + PLAN_CAR_TYPE(0, "预计车辆"),
  112 + REAL_CAR_TYPE(1, "实际车辆"),
109 113 CANCEL_FLAG_NO(0, "未取消订单"),
110 114 CANCEL_FLAG_YES(1, "取消订单"),
111 115 IMAGE_TYPE_CURRENT(0, "现场图片"),
112 116 IMAGE_TYPE_PUT_ON(1, "装车图片"),
113 117 IMAGE_TYPE_PUT_DOWN(2, "卸车图片"),
114 118 IMAGE_TYPE_FILL_CAR(3, "全景图片"),
115   - EVALUATE_TYPE_COMPANY(0,"对公司评价"),
116   - EVALUATE_TYPE_USER(1,"对用户评价"),
117   - EVALUATE_ORDER_NO(0,"待评价"),
118   - EVALUATE_ORDER_YES(1,"已评价");
  119 + EVALUATE_TYPE_COMPANY(0, "对公司评价"),
  120 + EVALUATE_TYPE_USER(1, "对用户评价"),
  121 + EVALUATE_ORDER_NO(0, "待评价"),
  122 + EVALUATE_ORDER_YES(1, "已评价");
119 123  
120 124 GarOrderStatus(Integer status, String description) {
121 125 this.status = status;
... ... @@ -132,6 +136,8 @@ public class GlobalStatus {
132 136 public String getDescription() {
133 137 return this.description;
134 138 }
  139 +
  140 +
135 141 }
136 142  
137 143 }
... ...
trash-garbage/src/main/java/com/trash/garbage/mapper/GarOrderMapper.java
... ... @@ -33,6 +33,10 @@ public interface GarOrderMapper extends BaseMapper&lt;GarOrder&gt; {
33 33 List<GarOrder> queryUnprocessedOrder(@Param("orderType")Integer orderType,@Param("timeOutFlag")Integer timeOutFlag,@Param("cancelFlag")Integer cancelFlag);
34 34  
35 35 void updateTimeOutOrderStatus(@Param("list") List<GarOrder> timeOutList, @Param("status")Integer status,@Param("timeOutFlag") Integer timeOutFlag);
  36 +
  37 + Integer queryDriverOrderListByTelWithTypeCount(@Param("garUserTel") String garUserTel, @Param("type") Integer type, @Param("cancelFlag") Integer cancelFlag);
  38 +
  39 + Integer queryDisposalOrderListByTelWithTypeCount(@Param("garUserTel") String garUserTel, @Param("type") Integer type, @Param("cancelFlag") Integer value);
36 40 }
37 41  
38 42  
... ...
trash-garbage/src/main/java/com/trash/garbage/pojo/vo/MyBargeVo.java 0 → 100644
  1 +package com.trash.garbage.pojo.vo;
  2 +
  3 +import lombok.EqualsAndHashCode;
  4 +import lombok.ToString;
  5 +
  6 +@ToString
  7 +@EqualsAndHashCode
  8 +public class MyBargeVo {
  9 + private Integer type;
  10 + private Integer badge;
  11 +
  12 + public Integer getType() {
  13 + return type;
  14 + }
  15 +
  16 + public void setType(Integer type) {
  17 + this.type = type;
  18 + }
  19 +
  20 + public Integer getBadge() {
  21 + return badge;
  22 + }
  23 +
  24 + public void setBadge(Integer badge) {
  25 + this.badge = badge;
  26 + }
  27 +}
... ...
trash-garbage/src/main/java/com/trash/garbage/service/GarOrderService.java
... ... @@ -36,11 +36,12 @@ public interface GarOrderService extends IService&lt;GarOrder&gt; {
36 36 * 根据类型查询订单
37 37 *
38 38 * @param type
  39 + * @param evaluateFlag
39 40 * @param pageNo
40 41 * @param pageSize
41 42 * @return
42 43 */
43   - PageInfo queryOrderList(Integer type, Integer pageNo, Integer pageSize);
  44 + PageInfo queryOrderList(Integer type, Integer evaluateFlag, Integer pageNo, Integer pageSize);
44 45  
45 46 /**
46 47 * 修改订单状态
... ... @@ -99,4 +100,6 @@ public interface GarOrderService extends IService&lt;GarOrder&gt; {
99 100 List<GarOrder> queryUnprocessedOrder(Integer value, Integer orderTimeOutFlagNo, Integer value1);
100 101  
101 102 void updateTimeOutOrderStatus(List<GarOrder> timeOutList);
  103 +
  104 + MyBargeVo queryBadgeByType(Integer type);
102 105 }
... ...
trash-garbage/src/main/java/com/trash/garbage/service/impl/GarOrderServiceImpl.java
... ... @@ -203,21 +203,25 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
203 203 }
204 204  
205 205 @Override
206   - public PageInfo queryOrderList(Integer type, Integer pageNo, Integer pageSize) {
  206 + public PageInfo queryOrderList(Integer type, Integer evaluateFlag, Integer pageNo, Integer pageSize) {
207 207 String userId = SecurityUtils.getLoginUser().getUser().getUserId();
208 208 GarUser user = garUserService.getById(userId);
209 209 // 用户
210 210 if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.NORMAL_USER.getDescription())) {
211 211 LambdaQueryWrapper<GarOrder> qw = new LambdaQueryWrapper<>();
212 212 qw.orderByDesc(GarOrder::getGarCreateTime, GarOrder::getGarOrderHandlerStatus);
  213 + qw.eq(GarOrder::getGarOrderUserId, userId);
213 214 PageHelper.startPage(pageNo, pageSize);
214   - // 待清运 || 清运中 || 已完成 || 待支付
  215 + // 待清运 || 清运中 || 已完成 || 待评价
215 216 if (GlobalStatus.GarOrderStatus.NEW_ORDER.getValue().equals(type)
216 217 || GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
217 218 || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
218   - qw.eq(GarOrder::getGarOrderUserId, userId)
219   - .eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue())
  219 + qw.eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue())
220 220 .eq(GarOrder::getGarOrderHandlerStatus, type);
  221 + if (evaluateFlag != null) {
  222 + qw.eq(GarOrder::getGarEvaluateFlag, GlobalStatus.GarOrderStatus.EVALUATE_ORDER_NO.getValue())
  223 + .eq(GarOrder::getGarTimeOutFlag, GlobalStatus.GarOrderStatus.ORDER_TIME_OUT_FLAG_NO.getValue());
  224 + }
221 225 List<GarOrder> orderList = list(qw);
222 226 PageInfo<GarOrder> pageInfo = new PageInfo<GarOrder>(orderList, pageSize);
223 227 return pageInfo;
... ... @@ -225,7 +229,6 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
225 229  
226 230 // 全部
227 231 if (GlobalStatus.GarOrderStatus.ALL_ORDER.getValue().equals(type)) {
228   - qw.eq(GarOrder::getGarOrderUserId, userId);
229 232 List<GarOrder> orderList = list(qw);
230 233 PageInfo<GarOrder> pageInfo = new PageInfo<GarOrder>(orderList, pageSize);
231 234 return pageInfo;
... ... @@ -251,20 +254,29 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
251 254 // 企业负责人
252 255 else if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.RESPONSIBLE_USER.getDescription())) {
253 256 PageHelper.startPage(pageNo, pageSize);
254   - LambdaQueryWrapper<GarOrder> qw = new LambdaQueryWrapper<GarOrder>();
255   - qw.eq(GarOrder::getGarOrderCompanyTel, user.getGarUserTel())
256   - .orderByDesc(GarOrder::getGarOrderAgreementTime);
  257 + LambdaQueryWrapper<GarOrder> qw = new LambdaQueryWrapper<>();
  258 + qw.orderByDesc(GarOrder::getGarCreateTime, GarOrder::getGarOrderHandlerStatus);
  259 + qw.eq(GarOrder::getGarOrderCompanyTel, user.getGarUserTel());
  260 + // 待清运 || 清运中 || 已完成 || 待评价
  261 + if (GlobalStatus.GarOrderStatus.NEW_ORDER.getValue().equals(type)
  262 + || GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
  263 + || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  264 + qw.eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue())
  265 + .eq(GarOrder::getGarOrderHandlerStatus, type);
  266 + if (evaluateFlag != null) {
  267 + qw.eq(GarOrder::getGarHandlerEvaluateFlag, GlobalStatus.GarOrderStatus.EVALUATE_ORDER_NO.getValue())
  268 + .eq(GarOrder::getGarTimeOutFlag, GlobalStatus.GarOrderStatus.ORDER_TIME_OUT_FLAG_NO.getValue());
  269 + }
  270 + List<GarOrder> orderList = list(qw);
  271 + PageInfo<GarOrder> pageInfo = new PageInfo<GarOrder>(orderList, pageSize);
  272 + return pageInfo;
  273 + }
257 274 // 全部
258 275 if (GlobalStatus.GarOrderStatus.ALL_ORDER.getValue().equals(type)) {
259 276 List<GarOrder> orderList = baseMapper.selectList(qw);
260 277 PageInfo<GarOrder> pageInfo = new PageInfo<GarOrder>(orderList, pageSize);
261 278 return pageInfo;
262 279 }
263   - qw.eq(GarOrder::getGarOrderHandlerStatus, type)
264   - .eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue());
265   - List<GarOrder> orderList = baseMapper.selectList(qw);
266   - PageInfo<GarOrder> pageInfo = new PageInfo<GarOrder>(orderList, pageSize);
267   - return pageInfo;
268 280 }
269 281 // 处置场所
270 282 else if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.DISPOSAL_SITE_USER.getDescription())) {
... ... @@ -480,35 +492,6 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
480 492 return "已评价";
481 493 }
482 494  
483   - public static void main(String[] args) {
484   - System.out.println(convert("PAYPALISHIRING", 3));
485   - }
486   -
487   - public static String convert(String s, int numRows) {
488   - if (numRows == 1) {
489   - return s;
490   - }
491   - List<StringBuilder> list = new ArrayList<>(numRows);
492   - for (int i = 0; i < numRows; i++) {
493   - list.add(new StringBuilder());
494   - }
495   - int space = 1;
496   - int x = -1;
497   - // 0 1 2 - 2 1 0 - 0 1 2 || 0 1 2 3 2 1 0 1 2 3 || 0 1 2 3 4 5 6 7 8 9
498   - for (int i = 0; i < s.length(); i++) {
499   - space = space + x;
500   - list.get(space).append(s.charAt(i));
501   - if (i % (numRows - 1) == 0) {
502   - x = -x;
503   - }
504   - }
505   - StringBuilder sb = new StringBuilder();
506   - for (int i = 0; i < numRows; i++) {
507   - sb.append(list.get(i));
508   - }
509   - return sb.toString();
510   - }
511   -
512 495 @Override
513 496 public List<GarOrder> queryOrderListByGarOrder(GarOrder garOrder) {
514 497 LambdaQueryWrapper<GarOrder> qw = createQueryWrapper(garOrder);
... ... @@ -969,6 +952,68 @@ public class GarOrderServiceImpl extends ServiceImpl&lt;GarOrderMapper, GarOrder&gt;
969 952 }
970 953 }
971 954  
  955 + @Override
  956 + public MyBargeVo queryBadgeByType(Integer type) {
  957 + GarUser user = garUserService.getById(SecurityUtils.getLoginUser().getUser().getUserId());
  958 + MyBargeVo vo = new MyBargeVo();
  959 + // 用户
  960 + if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.NORMAL_USER.getDescription())) {
  961 + if (GlobalStatus.GarOrderStatus.NEW_ORDER.getValue().equals(type)
  962 + || GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
  963 + || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  964 + LambdaQueryWrapper<GarOrder> qw = new LambdaQueryWrapper<>();
  965 + qw.eq(GarOrder::getGarOrderUserId, user.getGarUserId())
  966 + .eq(GarOrder::getGarOrderHandlerStatus, type)
  967 + .eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue());
  968 + if (GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  969 + qw.eq(GarOrder::getGarEvaluateFlag, GlobalStatus.GarOrderStatus.EVALUATE_ORDER_NO.getValue())
  970 + .eq(GarOrder::getGarTimeOutFlag, GlobalStatus.GarOrderStatus.ORDER_TIME_OUT_FLAG_NO.getValue());
  971 + }
  972 + int badge = count(qw);
  973 + vo.setBadge(badge);
  974 + vo.setType(type);
  975 + }
  976 + }
  977 + // 运输企业
  978 + else if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.RESPONSIBLE_USER.getDescription())) {
  979 + if (GlobalStatus.GarOrderStatus.NEW_ORDER.getValue().equals(type)
  980 + || GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
  981 + || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  982 + LambdaQueryWrapper<GarOrder> qw = new LambdaQueryWrapper<>();
  983 + qw.eq(GarOrder::getGarOrderCompanyTel, user.getGarUserTel())
  984 + .eq(GarOrder::getGarOrderHandlerStatus, type)
  985 + .eq(GarOrder::getGarCancelFlag, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue());
  986 + if (GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  987 + qw.eq(GarOrder::getGarHandlerEvaluateFlag, GlobalStatus.GarOrderStatus.EVALUATE_ORDER_NO.getValue())
  988 + .eq(GarOrder::getGarTimeOutFlag, GlobalStatus.GarOrderStatus.ORDER_TIME_OUT_FLAG_NO.getValue());
  989 + }
  990 + int badge = count(qw);
  991 + vo.setBadge(badge);
  992 + vo.setType(type);
  993 + }
  994 + }
  995 + // 驾驶员
  996 + else if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.DRIVER_USER.getDescription())) {
  997 + if (GlobalStatus.GarOrderStatus.NEW_ORDER.getValue().equals(type)
  998 + || GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
  999 + || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  1000 + Integer badge = baseMapper.queryDriverOrderListByTelWithTypeCount(user.getGarUserTel(), type, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue());
  1001 + vo.setBadge(badge);
  1002 + vo.setType(type);
  1003 + }
  1004 + }
  1005 + // 处理场所
  1006 + else if (user.getGarUserType().equals(GlobalStatus.GarUserStatusEnum.DISPOSAL_SITE_USER.getDescription())) {
  1007 + if (GlobalStatus.GarOrderStatus.ACTIVE_ORDER.getValue().equals(type)
  1008 + || GlobalStatus.GarOrderStatus.SUCCESS_ORDER.getValue().equals(type)) {
  1009 + Integer badge = baseMapper.queryDisposalOrderListByTelWithTypeCount(user.getGarUserTel(), type, GlobalStatus.GarOrderStatus.CANCEL_FLAG_NO.getValue());
  1010 + vo.setType(type);
  1011 + vo.setBadge(badge);
  1012 + }
  1013 + }
  1014 + return vo;
  1015 + }
  1016 +
972 1017 private void handleCleanNumber(TransportationEnterpriseVo vo, List<GarOrder> orderList) {
973 1018 Long cleanNumber = 0L;
974 1019 for (GarOrder order : orderList) {
... ...
trash-garbage/src/main/resources/mapper/GarOrderMapper.xml
... ... @@ -221,4 +221,34 @@
221 221 from gar_order
222 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 223 </select>
  224 + <select id="queryDriverOrderListByTelWithTypeCount" resultType="java.lang.Integer">
  225 + SELECT
  226 + count(*)
  227 + FROM gar_order `order`
  228 + INNER JOIN gar_order_match_handler `handler` ON `order`.gar_order_id = `handler`.gar_order_id
  229 + <where>
  230 + `handler`.gar_order_handler_tel = #{garUserTel}
  231 + <if test="type != null">
  232 + AND `handler`.gar_order_handler_status = #{type}
  233 + </if>
  234 + <if test="cancelFlag != null">
  235 + AND `handler`.gar_cancel_flag = #{cancelFlag}
  236 + </if>
  237 + </where>
  238 + order by `order`.gar_order_agreement_time desc
  239 + </select>
  240 + <select id="queryDisposalOrderListByTelWithTypeCount" resultType="java.lang.Integer">
  241 + SELECT
  242 + count(*)
  243 + FROM
  244 + gar_order `order`
  245 + INNER JOIN gar_order_match_disposal `disposal` ON `order`.gar_order_id = `disposal`.gar_order_id
  246 + <where>
  247 + `disposal`.gar_order_disposal_tel = #{garUserTel}
  248 + <if test="type != null">
  249 + AND `disposal`.gar_order_disposal_status = #{type}
  250 + </if>
  251 + </where>
  252 + order by `disposal`.gar_create_time desc
  253 + </select>
224 254 </mapper>
... ...