客户催单

This commit is contained in:
Bunny 2024-01-10 16:23:29 +08:00
parent 8f96d6c9c4
commit 9ab639f81b
5 changed files with 62 additions and 16 deletions

View File

@ -38,8 +38,8 @@ public class OrderController {
/**
* 订单支付
*
* @param ordersPaymentDTO
* @return
* @param ordersPaymentDTO OrdersPaymentDTO
* @return Result<OrderPaymentVO>
*/
@PutMapping("/payment")
@ApiOperation("订单支付")
@ -49,4 +49,17 @@ public class OrderController {
log.info("生成预支付交易单:{}", orderPaymentVO);
return Result.success(orderPaymentVO);
}
/**
* 客户催单
*
* @param id Long
* @return Result<String>
*/
@ApiOperation("客户催单")
@GetMapping("/reminder/{id}")
public Result<String> reminder(@PathVariable("id") Long id) {
orderService.reminder(id);
return Result.success();
}
}

View File

@ -37,4 +37,12 @@ public interface OrderMapper {
* @return List<Orders>
*/
List<Orders> getByStatusAndOrderTime(Integer status, LocalDateTime orderTime);
/**
* 查询订单是否存在
*
* @param id 订单id
* @return 订单
*/
Orders getById(Long id);
}

View File

@ -28,4 +28,11 @@ public interface OrderService {
* @param outTradeNo String
*/
void paySuccess(String outTradeNo);
/**
* 客户催单
*
* @param id Long
*/
void reminder(Long id);
}

View File

@ -25,6 +25,7 @@ import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class OrderServiceImpl implements OrderService {
@ -92,11 +93,7 @@ public class OrderServiceImpl implements OrderService {
// 4. 清空当前用户购物车数据
shoppingCartMapper.deleteByUserId(currentId);
// 5. 封装返回结果
return OrderSubmitVO.builder()
.id(orders.getId())
.orderTime(orders.getOrderTime())
.orderNumber(orders.getNumber())
.orderAmount(orders.getAmount()).build();
return OrderSubmitVO.builder().id(orders.getId()).orderTime(orders.getOrderTime()).orderNumber(orders.getNumber()).orderAmount(orders.getAmount()).build();
}
/**
@ -111,8 +108,7 @@ public class OrderServiceImpl implements OrderService {
User user = userMapper.getById(userId);
// 调用微信支付接口生成预支付交易单
JSONObject jsonObject = weChatPayUtil.pay(
ordersPaymentDTO.getOrderNumber(), // 商户订单号
JSONObject jsonObject = weChatPayUtil.pay(ordersPaymentDTO.getOrderNumber(), // 商户订单号
new BigDecimal("0.01"), // 支付金额单位
"苍穹外卖订单", // 商品描述
user.getOpenid() // 微信用户的openid
@ -139,12 +135,7 @@ public class OrderServiceImpl implements OrderService {
Orders ordersDB = orderMapper.getByNumber(outTradeNo);
// 根据订单id更新订单的状态支付方式支付状态结账时间
Orders orders = Orders.builder()
.id(ordersDB.getId())
.status(Orders.TO_BE_CONFIRMED)
.payStatus(Orders.PAID)
.checkoutTime(LocalDateTime.now())
.build();
Orders orders = Orders.builder().id(ordersDB.getId()).status(Orders.TO_BE_CONFIRMED).payStatus(Orders.PAID).checkoutTime(LocalDateTime.now()).build();
orderMapper.update(orders);
@ -155,6 +146,26 @@ public class OrderServiceImpl implements OrderService {
String jsonString = JSONObject.toJSONString(map);
webSocketServer.sendToAllClient(jsonString);
}
/**
* 客户催单
*
* @param id Long
*/
@Override
public void reminder(Long id) {
Orders orderDB = orderMapper.getById(id);
if (orderDB == null) {
throw new OrderBusinessException(MessageConstant.ORDER_STATUS_ERROR);
}
// 通过websocket 催单
Map map = new HashMap<>();
map.put("type", 2);
map.put("orderId", id);
map.put("content", "订单号" + orderDB.getNumber());
webSocketServer.sendToAllClient(JSONObject.toJSONString(map));
}
}

View File

@ -59,6 +59,13 @@
from orders
where status = #{status}
and order_time &lt; #{orderTime}
</select>
<!-- 查询订单是否存在 -->
<select id="getById" resultType="com.sky.entity.Orders">
select *
from orders
where id = #{id};
</select>
</mapper>