Browse Source

模拟的数据,在系统参数里面设置userId,所有模拟的参数都根据设置的userId的预约时间来返回的时间。

LiRong 3 months ago
parent
commit
3f42e375c2

+ 10 - 0
leromro-core/src/main/java/com/leromro/core/controller/VolunteerWorkDateController.java

@@ -9,8 +9,11 @@ import javax.validation.Valid;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.leromro.common.core.domain.R;
+import com.leromro.core.domain.VolunteerInfo;
 import com.leromro.core.domain.vo.VolunteerReservationTimeVO;
 import com.leromro.core.facade.VolunteerWorkDateFacade;
+import com.leromro.core.service.IVolunteerInfoService;
+import com.leromro.system.service.impl.SysUserServiceImpl;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -44,6 +47,9 @@ public class VolunteerWorkDateController extends BaseController
     @Autowired
     private VolunteerWorkDateFacade workDateFacade;
 
+    @Autowired
+    private IVolunteerInfoService volunteerInfoService;
+
     /**
      * 修改志愿者排班日期
      */
@@ -76,6 +82,10 @@ public class VolunteerWorkDateController extends BaseController
     })
     @GetMapping("/getVolunteerWorkDate")
     public R<List<LocalDate>> getVolunteerWorkDate(@RequestParam("volunteerId") Long volunteerId) {
+        String isExample = volunteerInfoService.list(new LambdaQueryWrapper<VolunteerInfo>().eq(VolunteerInfo::getVolunteerId, volunteerId).select(VolunteerInfo::getIsExample)).get(0).getIsExample();
+        if (("1").equals(isExample)){
+            volunteerId = 109L;
+        }
         List<LocalDate> list = volunteerWorkDateService.list(new LambdaQueryWrapper<VolunteerWorkDate>()
                 .eq(VolunteerWorkDate::getVolunteerId, volunteerId)
                 .ge(VolunteerWorkDate::getWorkDate, LocalDate.now()))

+ 7 - 0
leromro-core/src/main/java/com/leromro/core/domain/VolunteerInfo.java

@@ -165,4 +165,11 @@ public class VolunteerInfo extends BaseEntity {
     @TableField("district_name")
     @ApiModelProperty("区级名称")
     private String districtName;
+
+    @TableField("is_example")
+    @ApiModelProperty("是否是例据")
+    private String isExample;
+
+
+
 }

+ 13 - 0
leromro-core/src/main/java/com/leromro/core/facade/VolunteerWorkDateFacade.java

@@ -4,13 +4,16 @@ import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.leromro.common.core.domain.R;
+import com.leromro.core.domain.VolunteerInfo;
 import com.leromro.core.domain.VolunteerReservationTime;
 import com.leromro.core.domain.VolunteerWorkDate;
 import com.leromro.core.domain.dto.AddReservationTimesDTO;
 import com.leromro.core.domain.vo.VolunteerReservationTimeVO;
+import com.leromro.core.service.IVolunteerInfoService;
 import com.leromro.core.service.IVolunteerReservationTimeService;
 import com.leromro.core.service.IVolunteerWorkDateService;
 import com.leromro.core.utils.DateTimeUtil;
+import com.leromro.system.service.impl.SysConfigServiceImpl;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -31,6 +34,10 @@ public class VolunteerWorkDateFacade {
 
     private final IVolunteerReservationTimeService reservationTimeService;
 
+    private final IVolunteerInfoService volunteerInfoService;
+
+    private final SysConfigServiceImpl sysConfigService;
+
 
     /**
      * 根据日期获取志愿者工作时间
@@ -38,6 +45,12 @@ public class VolunteerWorkDateFacade {
      * @return
      */
     public R<List<VolunteerReservationTimeVO>> getTimesByDate(Long volunteerId, LocalDate date) {
+        String isExample = volunteerInfoService.list(new LambdaQueryWrapper<VolunteerInfo>().eq(VolunteerInfo::getVolunteerId, volunteerId).select(VolunteerInfo::getIsExample)).get(0).getIsExample();
+        if (("1").equals(isExample)){
+            //如果是测试数据,我们直接排满
+            volunteerId = Long.valueOf(sysConfigService.selectConfigByKey("exampleWorkTimeVolunteerId"));
+        }
+
         //判断志愿者当前日期是否排班
         VolunteerWorkDate dateInfo = workDateService.getOne(new LambdaQueryWrapper<VolunteerWorkDate>()
                 .eq(VolunteerWorkDate::getVolunteerId, volunteerId)

+ 1 - 1
leromro-core/src/main/java/com/leromro/core/service/impl/VolunteerInfoServiceImpl.java

@@ -385,7 +385,7 @@ public class VolunteerInfoServiceImpl extends ServiceImpl<VolunteerInfoMapper, V
     public VolunteerInfoDetailVO selectLVolunteerInfoByVolunteerId(VolunteerInfo volunteerInfo) {
         VolunteerInfo info = this.getOne(new LambdaQueryWrapper<VolunteerInfo>()
                 .eq(VolunteerInfo::getVolunteerId, volunteerInfo.getVolunteerId())
-                .eq(VolunteerInfo::getBusinessManagementId, volunteerInfo.getBusinessManagementId()));
+                .eq(VolunteerInfo::getBusinessManagementId, volunteerInfo.getBusinessManagementId()).last("limit 1"));
         if (ObjectUtil.isNull(info)){
             throw new ServiceException("获取志愿者信息异常,请稍后再试");
         }

+ 1 - 1
leromro-core/src/main/resources/mapper/core/VolunteerInfoMapper.xml

@@ -53,7 +53,7 @@
         select volunteer_id, skill_describe,age ,service_category,name,volunteer_picture,score,business_management_id ,
                business_price,business_tier_name , business_unit,business_describe
         from l_volunteer_info lvi
-        <where> app_status = 2
+        <where> app_status = 2 or is_example = 1
 
        /* AND EXISTS (
         SELECT 1