Переглянути джерело

小程序日历航次接口增加是否售罄字段

ZHOUTD 1 тиждень тому
батько
коміт
910c3ba0d3

+ 3 - 0
ship-module-product/ship-module-product-biz/src/main/java/com/yc/ship/module/product/controller/app/voyage/vo/AppVoyageCalendarPriceRespVO.java

@@ -20,4 +20,7 @@ public class AppVoyageCalendarPriceRespVO {
 
     @Schema(description = "日期", requiredMode = Schema.RequiredMode.REQUIRED, example = "2023-01-01")
     private String date;
+
+    @Schema(description = "是否售罄:true-已售罄,false-可预订")
+    private Boolean soldOut;
 }

+ 8 - 2
ship-module-product/ship-module-product-biz/src/main/resources/mapper/pricevoyage/PriceVoyageMapper.xml

@@ -15,12 +15,18 @@
             DATE_FORMAT( t1.boarding_time, '%Y-%m-%d' ) date,
 	t1.id voyage_id,
 	t1.name voyage_name,
-	min( t3.price ) price
+	min( t3.price ) price,
+	CASE
+	    WHEN COALESCE(MAX(t1.is_lock), 0) = 1
+	        OR COALESCE(MAX(t5.can_sell_num), 0) <= 0
+	    THEN 1 ELSE 0
+	END sold_out
         FROM
             product_voyage t1
             LEFT JOIN product_price_voyage t2 ON t1.id = t2.voyage_id
             LEFT JOIN product_price_room_model t3 ON t2.id = t3.object_id
         LEFT JOIN resource_room_model t4 on t3.room_model_id = t4.id
+        LEFT JOIN product_voyage_stock t5 on t1.id = t5.voyage_id and t5.deleted = 0
         WHERE
             t1.deleted = 0
           AND t2.deleted = 0
@@ -64,4 +70,4 @@
         ORDER BY
             t1.price ASC
     </select>
-</mapper>
+</mapper>