新增预约日历。咨询师主键替换为userid
This commit is contained in:
parent
1bb3237515
commit
e7e7705c82
|
@ -10,7 +10,7 @@ import org.dromara.common.satoken.utils.LoginHelper;
|
||||||
import org.dromara.common.web.core.BaseController;
|
import org.dromara.common.web.core.BaseController;
|
||||||
import org.dromara.scale.domain.bo.ReservationDayBo;
|
import org.dromara.scale.domain.bo.ReservationDayBo;
|
||||||
import org.dromara.scale.domain.vo.CounselorVo;
|
import org.dromara.scale.domain.vo.CounselorVo;
|
||||||
import org.dromara.scale.domain.vo.ReservationDayVo;
|
import org.dromara.scale.domain.vo.ReservationDateVo;
|
||||||
import org.dromara.scale.service.ICounselorService;
|
import org.dromara.scale.service.ICounselorService;
|
||||||
import org.dromara.scale.service.IReservationService;
|
import org.dromara.scale.service.IReservationService;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
@ -41,7 +41,7 @@ public class WxCounselorController extends BaseController {
|
||||||
@GetMapping()
|
@GetMapping()
|
||||||
public R<CounselorVo> getInfo() {
|
public R<CounselorVo> getInfo() {
|
||||||
Long userId = LoginHelper.getUserId();
|
Long userId = LoginHelper.getUserId();
|
||||||
return R.ok(counselorService.queryByUserId(userId));
|
return R.ok(counselorService.queryById(userId));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -55,8 +55,8 @@ public class WxCounselorController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/date")
|
@GetMapping("/date")
|
||||||
public R<List<ReservationDayVo>> getReservationList(String time, Long userId) {
|
public R<List<ReservationDateVo>> getReservationList(String time, Long userId) {
|
||||||
return null;
|
return R.ok(reservationService.selectDateList(time, userId));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package org.dromara.scale.domain;
|
package org.dromara.scale.domain;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
@ -28,14 +27,9 @@ public class Counselor extends BaseEntity {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@TableId(value = "id", type = IdType.AUTO)
|
@TableId(value = "id")
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
|
||||||
* 姓名
|
|
||||||
*/
|
|
||||||
private Long userId;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 手机号
|
* 手机号
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
package org.dromara.scale.domain;
|
package org.dromara.scale.domain;
|
||||||
|
|
||||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.*;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import java.util.Date;
|
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
|
||||||
|
|
||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 预约-日对象 m_reservation_day
|
* 预约-日对象 m_reservation_day
|
||||||
|
@ -26,7 +27,7 @@ public class ReservationDay extends BaseEntity {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@TableId(value = "id")
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package org.dromara.scale.domain;
|
package org.dromara.scale.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
@ -26,7 +27,7 @@ public class ReservationTime extends BaseEntity {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@TableId(value = "id")
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package org.dromara.scale.domain.vo;
|
package org.dromara.scale.domain.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
|
||||||
import io.github.linpeilie.annotations.AutoMapper;
|
import io.github.linpeilie.annotations.AutoMapper;
|
||||||
import io.github.linpeilie.annotations.AutoMapping;
|
import io.github.linpeilie.annotations.AutoMapping;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
@ -32,14 +31,11 @@ public class CounselorVo implements Serializable {
|
||||||
*/
|
*/
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
@JsonIgnore
|
|
||||||
private Long userId;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 姓名
|
* 姓名
|
||||||
*/
|
*/
|
||||||
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
||||||
@AutoMapping(target = "userId")
|
@AutoMapping(target = "id")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
package org.dromara.scale.domain.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>TODO<p>
|
||||||
|
*
|
||||||
|
* @author cjw
|
||||||
|
* @version V1.0.0
|
||||||
|
* @date 2024/8/20 10:23
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ReservationDateVo implements Serializable {
|
||||||
|
|
||||||
|
@Serial
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private Long dayId;
|
||||||
|
|
||||||
|
private Date dayTime;
|
||||||
|
|
||||||
|
private Integer notUseNum;
|
||||||
|
}
|
|
@ -1,9 +1,13 @@
|
||||||
package org.dromara.scale.mapper;
|
package org.dromara.scale.mapper;
|
||||||
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.dromara.scale.domain.ReservationDay;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.dromara.scale.domain.vo.ReservationDayVo;
|
|
||||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||||
|
import org.dromara.scale.domain.ReservationDay;
|
||||||
|
import org.dromara.scale.domain.vo.ReservationDateVo;
|
||||||
|
import org.dromara.scale.domain.vo.ReservationDayVo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 预约-日Mapper接口
|
* 预约-日Mapper接口
|
||||||
|
@ -14,4 +18,5 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface ReservationDayMapper extends BaseMapperPlus<ReservationDay, ReservationDayVo> {
|
public interface ReservationDayMapper extends BaseMapperPlus<ReservationDay, ReservationDayVo> {
|
||||||
|
|
||||||
|
List<ReservationDateVo> selectDateList(@Param("time") String time, @Param("userId") Long userId);
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,14 +15,6 @@ import java.util.List;
|
||||||
*/
|
*/
|
||||||
public interface ICounselorService {
|
public interface ICounselorService {
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询心理咨询师
|
|
||||||
*
|
|
||||||
* @param id 用户id
|
|
||||||
* @return 心理咨询师
|
|
||||||
*/
|
|
||||||
CounselorVo queryByUserId(Long id);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询心理咨询师
|
* 查询心理咨询师
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
package org.dromara.scale.service;
|
package org.dromara.scale.service;
|
||||||
|
|
||||||
import org.dromara.scale.domain.ReservationDay;
|
|
||||||
import org.dromara.scale.domain.bo.ReservationDayBo;
|
import org.dromara.scale.domain.bo.ReservationDayBo;
|
||||||
|
import org.dromara.scale.domain.vo.ReservationDateVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -15,5 +15,5 @@ public interface IReservationService {
|
||||||
*/
|
*/
|
||||||
Boolean insertByBo(ReservationDayBo bo);
|
Boolean insertByBo(ReservationDayBo bo);
|
||||||
|
|
||||||
List<ReservationDay> selectList();
|
List<ReservationDateVo> selectDateList(String time, Long userId);
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,11 +42,6 @@ public class CounselorServiceImpl implements ICounselorService {
|
||||||
* @param id 主键
|
* @param id 主键
|
||||||
* @return 心理咨询师
|
* @return 心理咨询师
|
||||||
*/
|
*/
|
||||||
@Override
|
|
||||||
public CounselorVo queryByUserId(Long id) {
|
|
||||||
return baseMapper.selectVoOne(new LambdaQueryWrapper<Counselor>().eq(Counselor::getUserId, id));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CounselorVo queryById(Long id) {
|
public CounselorVo queryById(Long id) {
|
||||||
return baseMapper.selectVoById(id);
|
return baseMapper.selectVoById(id);
|
||||||
|
@ -109,13 +104,9 @@ public class CounselorServiceImpl implements ICounselorService {
|
||||||
user.setUserType("sys_counselor");
|
user.setUserType("sys_counselor");
|
||||||
userService.insertUser(user);
|
userService.insertUser(user);
|
||||||
Counselor add = MapstructUtils.convert(bo, Counselor.class);
|
Counselor add = MapstructUtils.convert(bo, Counselor.class);
|
||||||
add.setUserId(user.getUserId());
|
add.setId(user.getUserId());
|
||||||
validEntityBeforeSave(add);
|
validEntityBeforeSave(add);
|
||||||
boolean flag = baseMapper.insert(add) > 0;
|
return baseMapper.insert(add) > 0;
|
||||||
if (flag) {
|
|
||||||
bo.setId(add.getId());
|
|
||||||
}
|
|
||||||
return flag;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -9,6 +9,7 @@ import org.dromara.common.satoken.utils.LoginHelper;
|
||||||
import org.dromara.scale.domain.ReservationDay;
|
import org.dromara.scale.domain.ReservationDay;
|
||||||
import org.dromara.scale.domain.ReservationTime;
|
import org.dromara.scale.domain.ReservationTime;
|
||||||
import org.dromara.scale.domain.bo.ReservationDayBo;
|
import org.dromara.scale.domain.bo.ReservationDayBo;
|
||||||
|
import org.dromara.scale.domain.vo.ReservationDateVo;
|
||||||
import org.dromara.scale.mapper.ReservationDayMapper;
|
import org.dromara.scale.mapper.ReservationDayMapper;
|
||||||
import org.dromara.scale.mapper.ReservationTimeMapper;
|
import org.dromara.scale.mapper.ReservationTimeMapper;
|
||||||
import org.dromara.scale.service.IReservationService;
|
import org.dromara.scale.service.IReservationService;
|
||||||
|
@ -70,7 +71,8 @@ public class ReservationServiceImpl implements IReservationService {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ReservationDay> selectList() {
|
public List<ReservationDateVo> selectDateList(String time, Long userId) {
|
||||||
return List.of();
|
|
||||||
|
return dayMapper.selectDateList(time,userId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,5 +3,15 @@
|
||||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="org.dromara.scale.mapper.ReservationDayMapper">
|
<mapper namespace="org.dromara.scale.mapper.ReservationDayMapper">
|
||||||
|
<select id="selectDateList" resultType="org.dromara.scale.domain.vo.ReservationDateVo">
|
||||||
|
select rd.id, rd.day_time, t.num
|
||||||
|
from m_reservation_day rd
|
||||||
|
left join (select count(*) as num, day_id
|
||||||
|
from m_reservation_time
|
||||||
|
where counselor_id = #{userId}
|
||||||
|
and status = 0
|
||||||
|
group by day_id) t on t.day_id = rd.id
|
||||||
|
where rd.counselor_id = #{userId}
|
||||||
|
and DATE_FORMAT(rd.day_time, '%Y-%m-%d') = #{time}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
Loading…
Reference in New Issue