Browse Source

工作端--待解答的心理咨询问题列表app接口

hotfix/yujt_opt
zhangyuan 5 years ago
parent
commit
252c9c18e7
  1. 20
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/controller/AppPsychologistController.java
  2. 2
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/controller/PsychologistController.java
  3. 11
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/dao/PsychologistDao.java
  4. 12
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/dao/PsychologyQuestionDao.java
  5. 16
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/service/PsychologistService.java
  6. 21
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/service/impl/PsychologistServiceImpl.java
  7. 14
      epdc-cloud-property/src/main/resources/mapper/psychology/PsychologistDao.xml
  8. 22
      epdc-cloud-property/src/main/resources/mapper/psychology/PsychologyQuestionDao.xml

20
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/controller/AppPsychologistController.java

@ -18,18 +18,14 @@
package com.elink.esua.epdc.modules.psychology.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.psychology.form.PsychologistFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistInfoFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyAnswerFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyQuestionFormDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologistInfoResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologistResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListUserResultDTO;
import com.elink.esua.epdc.dto.psychology.form.*;
import com.elink.esua.epdc.dto.psychology.result.*;
import com.elink.esua.epdc.modules.psychology.service.PsychologistService;
import com.elink.esua.epdc.modules.psychology.service.PsychologyQuestionService;
import org.springframework.beans.factory.annotation.Autowired;
@ -85,4 +81,12 @@ public class AppPsychologistController {
List<PsychologyAnswerListResultDTO> data = psychologistService.listQuestion(formDto);
return new Result<List<PsychologyAnswerListResultDTO>>().ok(data);
}
@GetMapping("listUnansweredQuestion")
public Result<List<PsychologyUnansweredResultDTO>> listUnansweredQuestion(@RequestBody PsychologyUnansweredFormDTO formDto) throws Exception {
UserDetail user = SecurityUser.getUser();
formDto.setUserId(user.getId().toString());
List<PsychologyUnansweredResultDTO> data = psychologistService.listUnansweredQuestion(formDto);
return new Result<List<PsychologyUnansweredResultDTO>>().ok(data);
}
}

2
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/controller/PsychologistController.java

@ -23,8 +23,8 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.psychology.PsychologistDTO;
import com.elink.esua.epdc.modules.psychology.excel.PsychologistExcel;
import com.elink.esua.epdc.modules.psychology.service.PsychologistService;

11
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/dao/PsychologistDao.java

@ -18,6 +18,7 @@
package com.elink.esua.epdc.modules.psychology.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.psychology.PsychologistDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistInfoFormDTO;
import com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity;
@ -55,6 +56,16 @@ public interface PsychologistDao extends BaseDao<PsychologistEntity> {
*/
List<PsychologistEntity> listPsychiatrist(PsychologistFormDTO dto);
/**
* 心理咨询师注册检查
*
* @return java.util.List<com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity>
* @params [params]
* @author zhangyuan
* @since 2020/5/21 14:54
*/
List<PsychologistEntity> checkPsychiatrist(PsychologistDTO dto);
/**
* 心理咨询师详细
*

12
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/dao/PsychologyQuestionDao.java

@ -19,8 +19,10 @@ package com.elink.esua.epdc.modules.psychology.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.psychology.form.PsychologyAnswerFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyUnansweredFormDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListUserResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyUnansweredResultDTO;
import com.elink.esua.epdc.modules.psychology.entity.PsychologyQuestionEntity;
import org.apache.ibatis.annotations.Mapper;
@ -55,4 +57,14 @@ public interface PsychologyQuestionDao extends BaseDao<PsychologyQuestionEntity>
*/
List<PsychologyAnswerListResultDTO> listQuestion(PsychologyAnswerFormDTO dto);
/**
* 工作端--待解答的心理咨询问题列表
*
* @return java.util.List<com.elink.esua.epdc.modules.psychology.entity.PsychologyAnswerListResultDTO>
* @params [params]
* @author zhangyuan
* @since 2020/5/21 14:54
*/
List<PsychologyQuestionEntity> listUnansweredQuestion(PsychologyUnansweredFormDTO dto);
}

16
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/service/PsychologistService.java

@ -23,10 +23,8 @@ import com.elink.esua.epdc.dto.psychology.PsychologistDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistInfoFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyAnswerFormDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologistInfoResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologistResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListResultDTO;
import com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListUserResultDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyUnansweredFormDTO;
import com.elink.esua.epdc.dto.psychology.result.*;
import com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity;
import java.util.List;
@ -139,4 +137,14 @@ public interface PsychologistService extends BaseService<PsychologistEntity> {
* @date 2020-06-04
*/
List<PsychologyAnswerListResultDTO> listQuestion(PsychologyAnswerFormDTO dto);
/**
* 工作端--待解答的心理咨询问题列表
*
* @param dto
* @return List<PsychologyUnansweredResultDTO>
* @author zhangyuan
* @date 2020-06-04
*/
List<PsychologyUnansweredResultDTO> listUnansweredQuestion(PsychologyUnansweredFormDTO dto);
}

21
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/psychology/service/impl/PsychologistServiceImpl.java

@ -21,12 +21,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.dto.psychology.PsychologistDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologistInfoFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyAnswerFormDTO;
import com.elink.esua.epdc.dto.psychology.form.PsychologyUnansweredFormDTO;
import com.elink.esua.epdc.dto.psychology.result.*;
import com.elink.esua.epdc.modules.psychology.dao.PsychologistDao;
import com.elink.esua.epdc.modules.psychology.dao.PsychologistTitleRelationDao;
@ -34,6 +36,7 @@ import com.elink.esua.epdc.modules.psychology.dao.PsychologyAnswerDao;
import com.elink.esua.epdc.modules.psychology.dao.PsychologyQuestionDao;
import com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity;
import com.elink.esua.epdc.modules.psychology.entity.PsychologistTitleRelationEntity;
import com.elink.esua.epdc.modules.psychology.entity.PsychologyQuestionEntity;
import com.elink.esua.epdc.modules.psychology.redis.PsychologistRedis;
import com.elink.esua.epdc.modules.psychology.service.PsychologistService;
import org.apache.commons.lang3.StringUtils;
@ -104,6 +107,11 @@ public class PsychologistServiceImpl extends BaseServiceImpl<PsychologistDao, Ps
@Override
@Transactional(rollbackFor = Exception.class)
public void save(PsychologistDTO dto) {
List<PsychologistEntity> check = baseDao.checkPsychiatrist(dto);
if (check.size() > 0) {
throw new RenException("该用户已经注册心理咨询师");
}
List<String> relation = dto.getTitles();
PsychologistEntity entity = ConvertUtils.sourceToTarget(dto, PsychologistEntity.class);
int num = baseDao.insert(entity);
@ -158,6 +166,8 @@ public class PsychologistServiceImpl extends BaseServiceImpl<PsychologistDao, Ps
@Override
public List<PsychologyAnswerListUserResultDTO> listUserQuestion(PsychologyAnswerFormDTO dto) {
// sql limit条件转换
dto.setPageIndex((dto.getPageIndex() - 1) * dto.getPageSize());
List<PsychologyAnswerListUserResultDTO> data = psychologyQuestionDao.listUserQuestion(dto);
data.forEach(item -> {
List<PsychologyAnswerUserInfoResultDTO> list = psychologyAnswerDao.listUserQuestion(item.getId());
@ -169,6 +179,8 @@ public class PsychologistServiceImpl extends BaseServiceImpl<PsychologistDao, Ps
@Override
public List<PsychologyAnswerListResultDTO> listQuestion(PsychologyAnswerFormDTO dto) {
// sql limit条件转换
dto.setPageIndex((dto.getPageIndex() - 1) * dto.getPageSize());
List<PsychologyAnswerListResultDTO> data = psychologyQuestionDao.listQuestion(dto);
data.forEach(item -> {
List<PsychologyAnswerInfoResultDTO> list = psychologyAnswerDao.listQuestion(item.getId());
@ -177,4 +189,13 @@ public class PsychologistServiceImpl extends BaseServiceImpl<PsychologistDao, Ps
return data;
}
@Override
public List<PsychologyUnansweredResultDTO> listUnansweredQuestion(PsychologyUnansweredFormDTO dto) {
// sql limit条件转换
dto.setPageIndex((dto.getPageIndex() - 1) * dto.getPageSize());
List<PsychologyQuestionEntity> data = psychologyQuestionDao.listUnansweredQuestion(dto);
return ConvertUtils.sourceToTarget(data, PsychologyUnansweredResultDTO.class);
}
}

14
epdc-cloud-property/src/main/resources/mapper/psychology/PsychologistDao.xml

@ -43,6 +43,18 @@
CREATED_TIME DESC
</select>
<select id="checkPsychiatrist" resultType="com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity">
SELECT
<include refid="Base_Column_List"/>
FROM
epdc_psychologist
WHERE
DEL_FLAG = '0'
<if test="userId != null and userId != ''">
AND USER_ID = #{userId}
</if>
</select>
<select id="listPsychiatrist" resultType="com.elink.esua.epdc.modules.psychology.entity.PsychologistEntity">
SELECT
<include refid="Base_Column_List"/>
@ -53,7 +65,7 @@
ORDER BY
SORT ASC,
CREATED_TIME DESC
<if test="allFlag == '0'">
<if test="allFlag == '0' or allFlag == 0">
LIMIT 4
</if>
</select>

22
epdc-cloud-property/src/main/resources/mapper/psychology/PsychologyQuestionDao.xml

@ -36,6 +36,7 @@
</if>
ORDER BY
CREATED_TIME DESC
LIMIT #{pageIndex}, #{pageSize};
</select>
<select id="listQuestion" resultType="com.elink.esua.epdc.dto.psychology.result.PsychologyAnswerListResultDTO">
@ -47,5 +48,26 @@
DEL_FLAG = '0'
ORDER BY
CREATED_TIME DESC
LIMIT #{pageIndex}, #{pageSize};
</select>
<select id="listUnansweredQuestion" resultType="com.elink.esua.epdc.modules.psychology.entity.PsychologyQuestionEntity">
SELECT
<include refid="Base_Column_List"/>
FROM
epdc_psychology_question
WHERE
DEL_FLAG = '0'
AND ANSWER_NUM = 0
<if test="designated_flag == '0' or designated_flag == 0">
AND PSYCHOLOGIST_ID = ''
</if>
<if test="designated_flag == '1' or designated_flag == 1">
AND PSYCHOLOGIST_ID != ''
AND PSYCHOLOGIST_ID IS NOT NULL
</if>
ORDER BY
CREATED_TIME DESC
LIMIT #{pageIndex}, #{pageSize};
</select>
</mapper>
Loading…
Cancel
Save