Browse Source

查询医生所在医院

master
zhizhi wu 4 years ago
parent
commit
382183e732
  1. 41
      src/main/java/com/ccsens/carbasics/api/DoctorController.java
  2. 5
      src/main/java/com/ccsens/carbasics/api/OcrController.java
  3. 24
      src/main/java/com/ccsens/carbasics/bean/vo/OrganizationMemberVo.java
  4. 17
      src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java
  5. 11
      src/main/java/com/ccsens/carbasics/persist/dao/OrganizationMemberDao.java
  6. 2
      src/main/java/com/ccsens/carbasics/service/FirstAidService.java
  7. 16
      src/main/java/com/ccsens/carbasics/service/IOrganizationMemberService.java
  8. 30
      src/main/java/com/ccsens/carbasics/service/OrganizationMemberService.java
  9. 2
      src/main/resources/mapper_dao/FirstAidDao.xml
  10. 2
      src/main/resources/mapper_dao/FirstAidLogDao.xml
  11. 21
      src/main/resources/mapper_dao/OrganizationMemberDao.xml

41
src/main/java/com/ccsens/carbasics/api/DoctorController.java

@ -0,0 +1,41 @@
package com.ccsens.carbasics.api;
import com.ccsens.carbasics.bean.vo.OrganizationMemberVo;
import com.ccsens.carbasics.service.IOrganizationMemberService;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* @description:
* @author: whj
* @time: 2021/9/17 15:48
*/
@Api(tags = "医院成员" )
@RestController
@RequestMapping("/doctor")
@Slf4j
public class DoctorController {
@Resource
private IOrganizationMemberService organizationMemberService;
@MustLogin
@ApiOperation(value = "查询用户对应的医院信息", notes = "")
@RequestMapping(value = "/getHospital", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<OrganizationMemberVo.Organization> getHospital(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{
OrganizationMemberVo.Organization organization = organizationMemberService.getHospital(params.getUserId());
return JsonResponse.newInstance().ok(organization);
}
}

5
src/main/java/com/ccsens/carbasics/api/OcrController.java

@ -23,8 +23,10 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.imageio.ImageIO;
import javax.servlet.http.Part;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
@ -47,8 +49,9 @@ public class OcrController {
log.info("图像识别");
// 压缩图像
ByteArrayOutputStream out = new ByteArrayOutputStream();
ImageUtil.scale(ImageIO.read(part.getInputStream()), out, 0.5f);
ImageUtil.scale(ImageIO.read(part.getInputStream()), out, 1f);
String img = Base64.encode(out.toByteArray());
// 图像识别
BaiDuDto.GeneralBasic basic = new BaiDuDto.GeneralBasic();
basic.setImage(img);

24
src/main/java/com/ccsens/carbasics/bean/vo/OrganizationMemberVo.java

@ -0,0 +1,24 @@
package com.ccsens.carbasics.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: whj
* @time: 2021/9/17 15:55
*/
public class OrganizationMemberVo {
@ApiModel("医院-返回")
@Data
public static class Organization{
@ApiModelProperty("医院ID")
private Long id;
@ApiModelProperty("医院名字")
private String name;
@ApiModelProperty("项目ID")
private Long projectId;
}
}

17
src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java

@ -133,6 +133,11 @@ public class PatientVo {
private String idcard;
@ApiModelProperty("疑似诊断信息")
private String suspected;
@ApiModelProperty("项目ID")
private Long projectId;
@ApiModelProperty("年龄")
private Integer age;
}
@Data
@ -143,24 +148,26 @@ public class PatientVo {
@ApiModelProperty("患者姓名")
private String name;
@ApiModelProperty("性别 0女 1男")
private byte gender;
private Byte gender;
@ApiModelProperty("年龄")
private int age;
private Integer age;
@ApiModelProperty("民族")
private String nation;
@ApiModelProperty("证件号")
private String idcard;
@ApiModelProperty("审核状态 0:创建 1:急救审核通过 2:急救审核拒绝 3出院审核通过 4出院审核拒绝 5:申请修改 6:申请拒绝 100:审核通过已修改 101:申请拒绝无机会")
private int dataStatus;
private Integer dataStatus;
@ApiModelProperty("类型 0:神内 1:神外")
private byte type;
private Byte type;
@ApiModelProperty("住院号")
private String hospitalNumber;
@ApiModelProperty("到院时间")
private Long arriveHospitalTime;
//修改次数
@JsonIgnore
private int times;
private Integer times;
@ApiModelProperty("项目ID")
private Long projectId;
public int getDataStatus() {
if(dataStatus == Constant.DataStatus.FirstAidPass.status && times >= Constant.MAX_UPDATE_NUMBER){

11
src/main/java/com/ccsens/carbasics/persist/dao/OrganizationMemberDao.java

@ -1,5 +1,6 @@
package com.ccsens.carbasics.persist.dao;
import com.ccsens.carbasics.bean.vo.OrganizationMemberVo;
import com.ccsens.carbasics.bean.vo.OrganizationVo;
import com.ccsens.carbasics.persist.mapper.OrganizationMemberMapper;
import org.apache.ibatis.annotations.Param;
@ -12,9 +13,15 @@ import org.springframework.stereotype.Repository;
public interface OrganizationMemberDao extends OrganizationMemberMapper {
/**
* 通过userId查找成员的科室和部门信息
* @param userId
* @return
* @param userId 用户ID
* @return 科室和部门信息
*/
OrganizationVo.MemberPosition getMemberPosition(@Param("userId") Long userId);
/**
* 查询用户对应的医院信息
* @param userId 用户ID
* @return 医院信息
*/
OrganizationMemberVo.Organization getHospital(@Param("userId") Long userId);
}

2
src/main/java/com/ccsens/carbasics/service/FirstAidService.java

@ -211,6 +211,8 @@ public class FirstAidService implements IFirstAidService{
getPatient.setGender(firstAids.get(0).getGender());
getPatient.setNation(firstAids.get(0).getNation());
getPatient.setIdcard(firstAids.get(0).getIdcard());
getPatient.setProjectId(firstAids.get(0).getProjectId());
getPatient.setAge(firstAids.get(0).getAge());
// 查找疑似病例
FirstAidRecordExample recordExample = new FirstAidRecordExample();
recordExample.createCriteria().andFirstAidIdEqualTo(firstAids.get(0).getId()).andQuestionCodeEqualTo(Constant.QuestionCode.CJBL_YSBL);

16
src/main/java/com/ccsens/carbasics/service/IOrganizationMemberService.java

@ -0,0 +1,16 @@
package com.ccsens.carbasics.service;
import com.ccsens.carbasics.bean.vo.OrganizationMemberVo;
/**
* @author whj
*/
public interface IOrganizationMemberService {
/**
* 查询用户对应的医院信息
* @param userId 用户ID
* @return 医院ID
*/
OrganizationMemberVo.Organization getHospital(Long userId);
}

30
src/main/java/com/ccsens/carbasics/service/OrganizationMemberService.java

@ -0,0 +1,30 @@
package com.ccsens.carbasics.service;
import com.ccsens.carbasics.bean.vo.OrganizationMemberVo;
import com.ccsens.carbasics.persist.dao.OrganizationMemberDao;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
/**
* @description:
* @author: whj
* @time: 2021/9/17 16:02
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class OrganizationMemberService implements IOrganizationMemberService {
@Resource
private OrganizationMemberDao organizationMemberDao;
@Override
public OrganizationMemberVo.Organization getHospital(Long userId) {
OrganizationMemberVo.Organization organization = organizationMemberDao.getHospital(userId);
return organization;
}
}

2
src/main/resources/mapper_dao/FirstAidDao.xml

@ -75,6 +75,7 @@
nation,
idcard,
data_status AS dataStatus,
project_id as projectId,
updated_at
FROM
t_qcp_first_aid
@ -140,6 +141,7 @@
nation,
idcard,
data_status AS dataStatus,
project_id as projectId,
updated_at
FROM
t_qcp_first_aid

2
src/main/resources/mapper_dao/FirstAidLogDao.xml

@ -27,7 +27,7 @@
WHERE
l.operation_user_id = m.user_id
AND l.first_aid_id = am.first_aid_id
AND l.operation_type IN ( 0, 7 )
AND l.operation_type IN ( 0, 8 )
AND l.operation_role IN ( 0, 1, 2 )
AND l.first_aid_id IN
<foreach collection="firstAidIds" item="id" open="(" close=")" separator=",">

21
src/main/resources/mapper_dao/OrganizationMemberDao.xml

@ -28,4 +28,25 @@
and d.rec_status = 0
and o.rec_status = 0
</select>
<select id="getHospital" resultType="com.ccsens.carbasics.bean.vo.OrganizationMemberVo$Organization">
SELECT
o.id ,
o.name,
p.project_id as projectId
FROM
t_organization_member m,
t_organization_department d,
t_organization o,
t_organization_project p
WHERE
m.user_id = #{userId}
and m.department_id = d.id
and d.organization_id = o.id
and o.id = p.organization_id
and m.rec_status = 0
and d.rec_status = 0
and o.rec_status = 0
and p.rec_status = 0
limit 1
</select>
</mapper>

Loading…
Cancel
Save