|
|
|
@ -25,9 +25,7 @@ import cc.yunxi.domain.vo.recycleorder.tmorder.TMRecycleOrderRespVO;
|
|
|
|
|
import cc.yunxi.domain.vo.recycleorderdetail.RecycleOrderDetailRespVO;
|
|
|
|
|
import cc.yunxi.domain.vo.recycler.RecyclerSimpleVO;
|
|
|
|
|
import cc.yunxi.domain.vo.recyclestation.RecycleStationSimpleVO;
|
|
|
|
|
import cc.yunxi.domain.vo.socket.AppTypeEnum;
|
|
|
|
|
import cc.yunxi.domain.vo.socket.MessageTypeEnum;
|
|
|
|
|
import cc.yunxi.domain.vo.socket.OrderNew;
|
|
|
|
|
import cc.yunxi.domain.vo.socket.*;
|
|
|
|
|
import cc.yunxi.enums.OrderStatusEnum;
|
|
|
|
|
import cc.yunxi.enums.OrderTypeEnum;
|
|
|
|
|
import cc.yunxi.enums.UserTypeEnum;
|
|
|
|
@ -110,25 +108,34 @@ public class RecycleOrderController {
|
|
|
|
|
UserDTO userDTO = UserContext.getUser();
|
|
|
|
|
orderCreateVO.setClientId(userDTO.getId());
|
|
|
|
|
String orderId = recycleOrderService.createOrder(orderCreateVO);
|
|
|
|
|
//todo 通知回收员
|
|
|
|
|
OrderNew message = new OrderNew();
|
|
|
|
|
|
|
|
|
|
message.setMessageType(MessageTypeEnum.BOOKING);//消息类型
|
|
|
|
|
message.setAppType(AppTypeEnum.recycler);//发送到哪里
|
|
|
|
|
message.setReceiveUserId(userDTO.getId());//接收人
|
|
|
|
|
|
|
|
|
|
message.setOrderNo("1223");//订单号
|
|
|
|
|
message.setOrderStatus(OrderStatusEnum.PENDING);
|
|
|
|
|
message.setReserveTime("");
|
|
|
|
|
message.setClientPhone("13183060802");
|
|
|
|
|
message.setGoodsType("1");
|
|
|
|
|
message.setClientAddress("这是地址");
|
|
|
|
|
message.setEstimatedWeight(10.2);
|
|
|
|
|
try {
|
|
|
|
|
wsService.sendMsgToUser(message);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
|
|
|
|
|
// 通知回收员
|
|
|
|
|
List<Recycler> recyclers = recyclerService.getRecyclerByStationId(orderCreateVO.getRecycleStationId());
|
|
|
|
|
if (recyclers.size() > 0) {
|
|
|
|
|
OrderNew message = new OrderNew();
|
|
|
|
|
|
|
|
|
|
message.setMessageType(MessageTypeEnum.BOOKING);//消息类型
|
|
|
|
|
message.setAppType(AppTypeEnum.recycler);//发送到哪里
|
|
|
|
|
message.setReceiveUserId("");//接收人
|
|
|
|
|
|
|
|
|
|
message.setOrderNo(orderId);//订单号
|
|
|
|
|
message.setOrderStatus(OrderStatusEnum.PENDING);
|
|
|
|
|
message.setReserveTime(orderCreateVO.getAppointmentTimeStart() + "~" + orderCreateVO.getAppointmentTimeEnd());
|
|
|
|
|
// message.setGoodsType("1");
|
|
|
|
|
ClientAddress addressInfo = clientAddressService.getAddressInfo(orderCreateVO.getClientAddressId());
|
|
|
|
|
message.setClientPhone(addressInfo.getReceiveMobilePhone());
|
|
|
|
|
message.setClientAddress(addressInfo.getReceiveStreet() + addressInfo.getReceiveHouseNumber());
|
|
|
|
|
message.setEstimatedWeight(orderCreateVO.getPredictWeight());
|
|
|
|
|
try {
|
|
|
|
|
for (Recycler recycler : recyclers) {
|
|
|
|
|
message.setReceiveUserId(recycler.getId());
|
|
|
|
|
wsService.sendMsgToUser(message);
|
|
|
|
|
}
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return CommonResult.success(orderId);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -200,7 +207,29 @@ public class RecycleOrderController {
|
|
|
|
|
UserDTO userDTO = UserContext.getUser();
|
|
|
|
|
orderCancelVO.setClientId(userDTO.getId());
|
|
|
|
|
recycleOrderService.cancelOrder(orderCancelVO);
|
|
|
|
|
//todo 通知回收员
|
|
|
|
|
|
|
|
|
|
// 通知回收员
|
|
|
|
|
String id = orderCancelVO.getId();
|
|
|
|
|
RecycleOrder order = recycleOrderService.getOrderById(id, false);
|
|
|
|
|
ClientAddress addressInfo = clientAddressService.getAddressInfo(order.getClientAddressId());
|
|
|
|
|
|
|
|
|
|
OrderCancel cancel = new OrderCancel();
|
|
|
|
|
cancel.setMessageType(MessageTypeEnum.CANCEL);
|
|
|
|
|
cancel.setAppType(AppTypeEnum.recycler);
|
|
|
|
|
cancel.setReceiveUserId(order.getStaffsId());
|
|
|
|
|
|
|
|
|
|
cancel.setOrderNo(order.getOrderNumber());
|
|
|
|
|
cancel.setOrderStatus(order.getOrderStatus());
|
|
|
|
|
cancel.setCancelOrderTime(LocalDateTime.now());
|
|
|
|
|
cancel.setClientPhone(order.getClientMobile());
|
|
|
|
|
cancel.setClientAddress(addressInfo.getReceiveStreet());
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
wsService.sendMsgToUser(cancel);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return CommonResult.success(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -211,7 +240,22 @@ public class RecycleOrderController {
|
|
|
|
|
UserDTO userDTO = UserContext.getUser();
|
|
|
|
|
orderTakingVO.setStaffsId(userDTO.getId());
|
|
|
|
|
recycleOrderService.takingOrder(orderTakingVO);
|
|
|
|
|
//todo 通知用户
|
|
|
|
|
// 通知散户用户
|
|
|
|
|
|
|
|
|
|
RecycleOrder order = recycleOrderService.getById(orderTakingVO.getId());
|
|
|
|
|
Recycler recycler = recyclerService.getById(order.getStaffsId());
|
|
|
|
|
|
|
|
|
|
OrderTaken taken = new OrderTaken();
|
|
|
|
|
taken.setMessageType(MessageTypeEnum.TAKEN);
|
|
|
|
|
taken.setAppType(AppTypeEnum.client);
|
|
|
|
|
taken.setReceiveUserId(order.getClientId());
|
|
|
|
|
|
|
|
|
|
taken.setOrderNo(order.getOrderNumber());
|
|
|
|
|
taken.setOrderStatus(order.getOrderStatus());
|
|
|
|
|
taken.setTakeOrderUser(order.getStaffsName());
|
|
|
|
|
taken.setTakeUserPhone(recycler.getMobilePhone());
|
|
|
|
|
taken.setTakeOrderTime(LocalDateTime.now());
|
|
|
|
|
|
|
|
|
|
return CommonResult.success(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -223,7 +267,7 @@ public class RecycleOrderController {
|
|
|
|
|
UserDTO userDTO = UserContext.getUser();
|
|
|
|
|
orderReachVO.setStaffsId(userDTO.getId());
|
|
|
|
|
recycleOrderService.reachOrder(orderReachVO);
|
|
|
|
|
// todo 通知用户
|
|
|
|
|
// todo 通知用户 不必要
|
|
|
|
|
return CommonResult.success(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -234,7 +278,27 @@ public class RecycleOrderController {
|
|
|
|
|
UserDTO userDTO = UserContext.getUser();
|
|
|
|
|
orderFinishVO.setStaffsId(userDTO.getId());
|
|
|
|
|
recycleOrderService.finishOrder(orderFinishVO);
|
|
|
|
|
//todo 通知用户
|
|
|
|
|
// 通知散户用户
|
|
|
|
|
RecycleOrder order = recycleOrderService.getById(orderFinishVO.getId());
|
|
|
|
|
Recycler recycler = recyclerService.getById(order.getStaffsId());
|
|
|
|
|
|
|
|
|
|
OrderFinish finish = new OrderFinish();
|
|
|
|
|
finish.setMessageType(MessageTypeEnum.FINISH);
|
|
|
|
|
finish.setAppType(AppTypeEnum.client);
|
|
|
|
|
finish.setReceiveUserId(order.getClientId());
|
|
|
|
|
|
|
|
|
|
finish.setOrderNo(order.getOrderNumber());
|
|
|
|
|
finish.setOrderStatus(order.getOrderStatus());
|
|
|
|
|
finish.setRealMoney(order.getOrderAmount());
|
|
|
|
|
finish.setTakeOrderUser(recycler.getStaffsName());
|
|
|
|
|
finish.setTakeUserPhone(recycler.getMobilePhone());
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
wsService.sendMsgToUser(finish);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return CommonResult.success(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|