2 Commity 1f8fd5d4f0 ... e287a05c96

Autor SHA1 Wiadomość Data
  LiRong e287a05c96 Merge remote-tracking branch 'origin/dev-1.2.1' into dev-1.2.1 3 miesięcy temu
  LiRong 39c4fe702b bug修复,修改了设计空工作时间的bug和预约时间不对的bug 3 miesięcy temu

+ 0 - 18
leromro-core/src/main/java/com/leromro/core/controller/volunteerOrderController.java

@@ -76,24 +76,6 @@ public class volunteerOrderController extends BaseController {
                 secondOrder.setServiceOnePrice(secondOrder.getServiceOnePrice().multiply(BigDecimal.valueOf(secondOrder.getSingleQuantity())).multiply(new BigDecimal("0.85")).setScale(2, RoundingMode.HALF_UP));
             }
         });
-       /* //遍历所有的订单,如果
-        if((4L)==orderStatus){
-
-
-            // 遍历列表并设置serviceOnePrice
-            list.forEach(volunteerOrdersVO -> {
-                OrderFrozenFunds funds = fundsMap.get(volunteerOrdersVO.getSecondOrderId());
-                if(funds != null) {
-                    BigDecimal totalAmount = funds.getVolunteerMoney()
-                            .add(funds.getScoreMoney())
-                            .setScale(2, RoundingMode.HALF_UP);
-                    volunteerOrdersVO.setServiceOnePrice(totalAmount);
-                }
-            });
-        }else {
-            //如果订单还没有完成 列表上显示的是默认一星的钱数
-            list.forEach(volunteerOrdersVO -> volunteerOrdersVO.setServiceOnePrice(volunteerOrdersVO.getServiceOnePrice().multiply(BigDecimal.valueOf(volunteerOrdersVO.getSingleQuantity())).multiply(new BigDecimal("0.85")).setScale(2, RoundingMode.HALF_UP)));
-        }*/
         return getDataTable(list);
     }
 

+ 5 - 5
leromro-core/src/main/java/com/leromro/core/domain/SecondOrder.java

@@ -130,14 +130,14 @@ public class SecondOrder extends BaseEntity
     private LocalDate workDate;
 
     /** 工作开始时间 HH:ss */
-    @JsonFormat(pattern = "HH:ss")
-    @Excel(name = "工作开始时间 HH:ss", width = 30, dateFormat = "HH:ss")
-    @ApiModelProperty("工作开始时间 HH:ss")
+    @JsonFormat(pattern = "HH:mm")
+    @Excel(name = "工作开始时间 HH:mm", width = 30, dateFormat = "HH:mm")
+    @ApiModelProperty("工作开始时间 HH:mm")
     private LocalTime workStartTime;
 
     /** 结束时间 */
-    @JsonFormat(pattern = "HH:ss")
-    @Excel(name = "结束时间", width = 30, dateFormat = "HH:ss")
+    @JsonFormat(pattern = "HH:mm")
+    @Excel(name = "结束时间", width = 30, dateFormat = "HH:mm")
     @ApiModelProperty("结束时间")
     private LocalTime workEndTime;
 

+ 24 - 7
leromro-core/src/main/java/com/leromro/core/service/impl/VolunteerWorkDateServiceImpl.java

@@ -28,7 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 /**
  * 志愿者排班日期Service业务层处理
- * 
+ *
  * @author ruoyi
  * @date 2025-04-07
  */
@@ -43,7 +43,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 查询志愿者排班日期
-     * 
+     *
      * @param volunteerWorkDateId 志愿者排班日期主键
      * @return 志愿者排班日期
      */
@@ -55,7 +55,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 查询志愿者排班日期列表
-     * 
+     *
      * @param volunteerWorkDate 志愿者排班日期
      * @return 志愿者排班日期
      */
@@ -67,7 +67,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 新增志愿者排班日期
-     * 
+     *
      * @param volunteerWorkDate 志愿者排班日期
      * @return 结果
      */
@@ -79,7 +79,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 修改志愿者排班日期
-     * 
+     *
      * @param list 志愿者排班日期集合
      * @return 结果
      */
@@ -95,6 +95,23 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
         if (CollectionUtil.isEmpty(infos)){
             return AjaxResult.error("您还未注册为志愿者,请先注册");
         }
+        //首先判断如果传过来的日期都没有,那么
+        if (list.isEmpty()){
+            //获取已预约的日期
+            List<VolunteerWorkDate> reservationList = this.list(new LambdaQueryWrapper<VolunteerWorkDate>()
+                    .eq(VolunteerWorkDate::getVolunteerId, userId)
+                    .eq(VolunteerWorkDate::getHasReservation, 1));
+            List<LocalDate> reservations = reservationList.stream().map(VolunteerWorkDate::getWorkDate).collect(Collectors.toList());
+            List<LocalDate> dates = list.stream().map(VolunteerWorkDate::getWorkDate).collect(Collectors.toList());
+            for (LocalDate date : reservations) {
+                if (!dates.contains(date)){
+                    //把reservation转换为月日
+                    return AjaxResult.error(date.format( DateTimeFormatter.ofPattern("M月d日"))+"已被预约,无法取消,请联系客户取消预约");
+                }
+            }
+            this.remove(new LambdaQueryWrapper<VolunteerWorkDate>().eq(VolunteerWorkDate::getVolunteerId, userId));
+            return AjaxResult.success();
+        }
         //判断是否排了今天之前的日期
         LocalDate workDate = list.get(0).getWorkDate();
         if (workDate.isBefore(LocalDate.now())){
@@ -129,7 +146,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 批量删除志愿者排班日期
-     * 
+     *
      * @param volunteerWorkDateIds 需要删除的志愿者排班日期主键
      * @return 结果
      */
@@ -141,7 +158,7 @@ public class VolunteerWorkDateServiceImpl extends ServiceImpl<VolunteerWorkDateM
 
     /**
      * 删除志愿者排班日期信息
-     * 
+     *
      * @param volunteerWorkDateId 志愿者排班日期主键
      * @return 结果
      */