Commit b24a7bae authored by 何金镒's avatar 何金镒

建发:共享空间优惠券预约 mcp 接口优化 5

parent be548680
...@@ -28,18 +28,18 @@ public class CDCSpacesTools { ...@@ -28,18 +28,18 @@ public class CDCSpacesTools {
return spacesService.getAppointmentTimeByRoomId(sn,date,roomId,subspaceId); return spacesService.getAppointmentTimeByRoomId(sn,date,roomId,subspaceId);
} }
@Tool(description = "获取该房间(场所)ID下可使用的优惠卷") @Tool(description = "获取可使用的优惠卷")
public JSONArray getUserSpacesCoupons(@ToolParam(description = "设备的sn号,如:00226DA86A12")String sn, public JSONArray getUserSpacesCoupons(@ToolParam(description = "设备的sn号,如:00226DA86A12")String sn,
@ToolParam(description = "查询的房间(场所)ID")String roomId){ @ToolParam(description = "查询的房间(场所)ID,若不传就查询所有房间(场所)的优惠券", required = false)String roomId){
log.info("mcp调用--->getUserCoupons..获取用户优惠券..sn:{},roomId:{}",sn,roomId); log.info("mcp调用--->getUserCoupons..获取用户优惠券..sn:{},roomId:{}",sn,roomId);
return spacesService.getUserCoupons(sn,roomId); return spacesService.getUserCoupons(sn,roomId);
} }
@Tool(description = "获取该房间(场所)ID下在某个时间段可使用的优惠卷") @Tool(description = "获取在某个时间段可使用的优惠卷")
public JSONArray getUserSpacesCouponsByTime(@ToolParam(description = "设备的sn号,如:00226DA86A12")String sn, public JSONArray getUserSpacesCouponsByTime(@ToolParam(description = "设备的sn号,如:00226DA86A12")String sn,
@ToolParam(description = "使用的开始时间,必须是30分钟的倍数且不能隔天预约,如:2025-08-12 09:00:00")String beginTime, @ToolParam(description = "使用的开始时间,必须是30分钟的倍数且不能隔天预约,如:2025-08-12 09:00:00")String beginTime,
@ToolParam(description = "使用的结束时间,必须是30分钟的倍数且不能隔天预约,如:2025-08-12 10:30:00")String endTime, @ToolParam(description = "使用的结束时间,必须是30分钟的倍数且不能隔天预约,如:2025-08-12 10:30:00")String endTime,
@ToolParam(description = "查询的房间(场所)ID")String roomId){ @ToolParam(description = "查询的房间(场所)ID,若不传就查询所有房间(场所)的优惠券", required = false)String roomId){
log.info("mcp调用--->getUserSpacesCouponsByTime..获取用户当前预约可用的优惠券..sn:{},roomId:{},beginTime:{},endTime:{}",sn,roomId,beginTime,endTime); log.info("mcp调用--->getUserSpacesCouponsByTime..获取用户当前预约可用的优惠券..sn:{},roomId:{},beginTime:{},endTime:{}",sn,roomId,beginTime,endTime);
return spacesService.getUserSpacesCouponsByTime(sn,roomId,beginTime,endTime); return spacesService.getUserSpacesCouponsByTime(sn,roomId,beginTime,endTime);
} }
......
...@@ -376,7 +376,7 @@ public class SpacesService { ...@@ -376,7 +376,7 @@ public class SpacesService {
String spacesRoomOrder_post = cdcHttpUtils.post(spacesRoomOrderUrl, sn, param.toString()); String spacesRoomOrder_post = cdcHttpUtils.post(spacesRoomOrderUrl, sn, param.toString());
JSONObject spacesRoomOrder = new JSONObject(spacesRoomOrder_post); JSONObject spacesRoomOrder = new JSONObject(spacesRoomOrder_post);
if(spacesRoomOrder.getInt("code") == 200){ if(spacesRoomOrder.getInt("code") == 200){
return "已使用优惠券:"+couponName+"成功预约,预约订单号:"+spacesRoomOrder.getStr("data"); return "使用一张优惠券:"+couponName+",成功预约,预约订单号:"+spacesRoomOrder.getStr("data");
}else{ }else{
throw new StatefulException(539, "预约失败"); throw new StatefulException(539, "预约失败");
} }
...@@ -446,7 +446,7 @@ public class SpacesService { ...@@ -446,7 +446,7 @@ public class SpacesService {
* 获取用户已领取的优惠券列表 * 获取用户已领取的优惠券列表
*/ */
public JSONArray getUserCoupons(String sn,String roomId){ public JSONArray getUserCoupons(String sn,String roomId){
if(StrUtil.isBlank(sn) || StrUtil.isBlank(roomId)){ if(StrUtil.isBlank(sn)){
return null; return null;
} }
String url = getUserCouponsUrl+"?status=0"; String url = getUserCouponsUrl+"?status=0";
...@@ -484,7 +484,7 @@ public class SpacesService { ...@@ -484,7 +484,7 @@ public class SpacesService {
* 获取该房间(场所)ID下在该时间段可使用的优惠券 * 获取该房间(场所)ID下在该时间段可使用的优惠券
*/ */
public JSONArray getUserSpacesCouponsByTime(String sn,String roomId,String beginTime,String endTime){ public JSONArray getUserSpacesCouponsByTime(String sn,String roomId,String beginTime,String endTime){
if(StrUtil.isBlank(sn) || StrUtil.isBlank(roomId) || StrUtil.isBlank(beginTime) || StrUtil.isBlank(endTime)){ if(StrUtil.isBlank(sn) || StrUtil.isBlank(beginTime) || StrUtil.isBlank(endTime)){
return null; return null;
} }
Date begin_time = DateUtil.parse(beginTime); Date begin_time = DateUtil.parse(beginTime);
...@@ -509,7 +509,11 @@ public class SpacesService { ...@@ -509,7 +509,11 @@ public class SpacesService {
} }
//校验优惠券 //校验优惠券
String s = cdcHttpUtils.get(getUserCouponsUrl+"?status=0&roomId="+roomId, sn); String url = getUserCouponsUrl+"?status=0";
if(StrUtil.isNotBlank(roomId)){
url = url+"&roomId="+roomId;
}
String s = cdcHttpUtils.get(url, sn);
JSONObject coupons = JSONUtil.parseObj(s); JSONObject coupons = JSONUtil.parseObj(s);
JSONArray response = new JSONArray(); JSONArray response = new JSONArray();
if(coupons.getInt("code") == 200) { if(coupons.getInt("code") == 200) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment