Forráskód Böngészése

feat(system): 优化场地预约日期显示逻辑

- 增加对销售日期和常规日期的不同显示处理
- 实现今天、明天、后天的特殊显示
- 为常规日期添加星期几的显示
- 调整时间格式和名称拼接方式
SheepHy 2 hete
szülő
commit
a040d92254

+ 24 - 2
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/mapper/xml/AppSitePriceRulesMapper.xml

@@ -71,17 +71,39 @@
           AND site_place_id = #{placeId};
     </select>
     <select id="previewOrderPlaceGymnasiumChartered" resultType="org.jeecg.modules.app.vo.OrderVO$PreviewOrderTimePeriod">
+
         SELECT
         CONCAT(
+        CASE
+        WHEN a.date_of_sale IS NOT NULL THEN
+        CONCAT(
         DATE_FORMAT(a.date_of_sale, '%m-%d'),
         CASE
         WHEN DATE(a.date_of_sale) = CURDATE() THEN '(今天)'
         WHEN DATE(a.date_of_sale) = DATE_ADD(CURDATE(), INTERVAL 1 DAY) THEN '(明天)'
         WHEN DATE(a.date_of_sale) = DATE_ADD(CURDATE(), INTERVAL 2 DAY) THEN '(后天)'
         ELSE '-'
+        END
+        )
+        ELSE
+        CASE
+        WHEN ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ) = CURDATE() THEN
+        CONCAT(DATE_FORMAT(ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ), '%m-%d'), '(今天)')
+        WHEN ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ) = CURDATE() + INTERVAL 1 DAY THEN
+        CONCAT(DATE_FORMAT(ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ), '%m-%d'), '(明天)')
+        WHEN ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ) = CURDATE() + INTERVAL 2 DAY THEN
+        CONCAT(DATE_FORMAT(ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ), '%m-%d'), '(后天)')
+        ELSE
+        CONCAT(
+        DATE_FORMAT(ADDDATE(CURDATE(), INTERVAL ( (7 - WEEKDAY(CURDATE()) + (a.day_of_week - 1)) % 7 ) DAY ), '%m-%d'),
+        '(',
+        ELT(a.day_of_week, '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日'),
+        ')'
+        )
+        END
         END,
-        TIME_FORMAT(a.start_time, '%H:%i'), '-', TIME_FORMAT(a.end_time, '%H:%i'), ' | ', b.`name`
-        ) AS `name`,
+        TIME_FORMAT(a.start_time, '%H:%i'), '-', TIME_FORMAT(a.end_time, '%H:%i'), ' ', b.name
+        ) AS name,
         a.id,
         a.start_time,
         a.end_time