web:1. 问诊实例列表查询功能

dev_2.0.0
xueqingkun 1 year ago
parent 158196e119
commit 0bde7b509a

@ -1,7 +1,11 @@
package com.supervision.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.Process;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
import org.apache.ibatis.annotations.Param;
/**
* @author flevance
@ -11,6 +15,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface ProcessMapper extends BaseMapper<Process> {
Page<DiagnoseProcessResVo> queryDiagnoseProcessPageList(Page<DiagnoseProcessResVo> page,
@Param("diagnoseProcess") DiagnoseProcessReqVo diagnoseProcessReqVo);
}

@ -1,7 +1,10 @@
package com.supervision.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.Process;
import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
/**
* @author flevance
@ -10,4 +13,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ProcessService extends IService<Process> {
Page<DiagnoseProcessResVo> queryUserDiagnoseProcessPageList(Page<DiagnoseProcessResVo> page, DiagnoseProcessReqVo diagnoseProcessReqVo);
}

@ -1,9 +1,12 @@
package com.supervision.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.mapper.ProcessMapper;
import com.supervision.model.Process;
import com.supervision.service.ProcessService;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
import org.springframework.stereotype.Service;
/**
@ -15,6 +18,10 @@ import org.springframework.stereotype.Service;
public class ProcessServiceImpl extends ServiceImpl<ProcessMapper, Process>
implements ProcessService {
@Override
public Page<DiagnoseProcessResVo> queryUserDiagnoseProcessPageList(Page<DiagnoseProcessResVo> page, DiagnoseProcessReqVo diagnoseProcessReqVo) {
return super.getBaseMapper().queryDiagnoseProcessPageList(page,diagnoseProcessReqVo);
}
}

@ -0,0 +1,11 @@
package com.supervision.vo.result;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class DiagnoseProcessReqVo {
@ApiModelProperty("用户id")
private String userId;
}

@ -0,0 +1,44 @@
package com.supervision.vo.result;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Data
public class DiagnoseProcessResVo {
@ApiModelProperty("流程实例id")
private String processId;
@ApiModelProperty("用户id")
private String userId;
@ApiModelProperty("任务状态 0:待问诊 1:待处置 2:已评估")
private String status;
@ApiModelProperty("最近问诊时间")
private LocalDateTime recentTime;
@ApiModelProperty("主诉")
private String patientSelfDesc;
@ApiModelProperty("病人id")
private String patientId;
@ApiModelProperty("病人姓名")
private String patientName;
@ApiModelProperty("年龄")
private Integer age;
@ApiModelProperty("性别")
private String gender;
@ApiModelProperty("资源id")
private String resourceId;
@ApiModelProperty("初步诊断疾病名")
private List<String> primaryDiseaseNameList;
}

@ -22,4 +22,26 @@
,patient_id,user_id,status,process_type,
create_user_id,create_time,update_user_id,update_time
</sql>
<sql id="queryUserDiagnoseProcessListSql">
select pro.id as processId,
pro.user_id as userId,
pro.status as status,
pro.update_time as recentTime,
mre.patient_self_desc as patientSelfDesc,
mre.patient_id as patientId,
mre.patient_name as patientName,
mre.patient_age as age,
mre.patient_gender as gender,
pat.resource_id as resourceId
from vp_process pro
left join vp_medical_rec mre on pro.medical_rec_id = mre.id
left join vp_patient pat on mre.patient_id = pat.id
where pro.user_id = #{diagnoseProcess.userId} ORDER BY pro.update_time desc
</sql>
<select id="queryDiagnoseProcessPageList" resultType="com.supervision.vo.result.DiagnoseProcessResVo">
<include refid="queryUserDiagnoseProcessListSql"></include>
</select>
</mapper>

@ -1,10 +1,16 @@
package com.supervision.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.service.DiagnoseHallService;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
@ -22,4 +28,22 @@ public class DiagnoseHallController {
public boolean achieveDiagnoseResource(){
return diagnoseHallService.achieveDiagnoseResource();
}
@ApiOperation("分页查询问诊流程列表")
@GetMapping("queryDiagnoseProcessPageList")
public Page<DiagnoseProcessResVo> queryDiagnoseProcessPageList(@ApiParam("起始页") @RequestParam(defaultValue = "1") Integer pageNum,
@ApiParam("每页大小") @RequestParam(defaultValue = "10") Integer pageSize,
DiagnoseProcessReqVo diagnoseProcessReqVo) {
return diagnoseHallService.queryDiagnoseProcessPageList(pageNum, pageSize, diagnoseProcessReqVo);
}
/*@ApiOperation("分页查询问诊流程列表")
@GetMapping("queryDiagnoseProcessPageList")
public Page<DiagnoseProcessResVo> queryDiagnoseProcessPageList(@ApiParam("起始页") @RequestParam(defaultValue = "1") Integer pageNum,
@ApiParam("每页大小") @RequestParam(defaultValue = "10") Integer pageSize,
@ApiParam("用户id") @RequestParam("userId") String userId) {
return diagnoseHallService.queryDiagnoseProcessPageList(pageNum, pageSize, userId);
}*/
}

@ -42,8 +42,6 @@ public class UserController {
throw new BusinessException("用户名或密码有误!");
}
String token = TokenUtil.creatToken(JSONUtil.toJsonStr(user.get()));
// 将用户的token保存起来,超时时间为5分钟
redisTemplate.opsForValue().set(UserTokenConstant.TOKEN_CACHE + user.get().getId(), String.valueOf(System.currentTimeMillis()), 1000 * 5L, TimeUnit.MILLISECONDS);
LoginResVO loginResVO = BeanUtil.toBean(user.get(), LoginResVO.class);
loginResVO.setToken(token);

@ -1,6 +1,14 @@
package com.supervision.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
public interface DiagnoseHallService {
boolean achieveDiagnoseResource();
Page<DiagnoseProcessResVo> queryDiagnoseProcessPageList(Integer pageNum, Integer pageSize,
DiagnoseProcessReqVo diagnoseProcessReqVo);
}

@ -1,8 +1,13 @@
package com.supervision.service.impl;
import cn.hutool.core.lang.Assert;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.lock.annotation.Lock4j;
import com.supervision.constant.UserTokenConstant;
import com.supervision.service.DiagnoseHallService;
import com.supervision.service.ProcessService;
import com.supervision.vo.result.DiagnoseProcessReqVo;
import com.supervision.vo.result.DiagnoseProcessResVo;
import com.supervision.usermanage.UserResourceCheck;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -17,6 +22,7 @@ public class DiagnoseHallServiceImpl implements DiagnoseHallService {
private final UserResourceCheck userResourceCheck;
private final ProcessService processService;
@Lock4j(name = "achieveDiagnoseResource")
@Override
@ -24,4 +30,14 @@ public class DiagnoseHallServiceImpl implements DiagnoseHallService {
// 如果小于数字人最大连接数,则可以连接
return userResourceCheck.achieveDiagnoseResource();
}
@Override
public Page<DiagnoseProcessResVo> queryDiagnoseProcessPageList(Integer pageNum, Integer pageSize,
DiagnoseProcessReqVo diagnoseProcessReqVo) {
Assert.notEmpty(diagnoseProcessReqVo.getUserId(),"用户id不允许为空");
return processService.queryUserDiagnoseProcessPageList(new Page<DiagnoseProcessResVo>(pageNum,pageSize),diagnoseProcessReqVo);
}
}

Loading…
Cancel
Save