Merge branch 'master' of https://codeup.aliyun.com/61c0318acd8b75daa5a125f7/medical/openhis
This commit is contained in:
@@ -24,4 +24,24 @@ public interface IDoctorStationDiagnosisAppService {
|
||||
*/
|
||||
R<?> updateDiagnosisBelongBinding(DiagnosisBelongBindingDto diagnosisBelongBindingDto);
|
||||
|
||||
/**
|
||||
* 查询诊断归属绑定列表
|
||||
*
|
||||
* @param diagnosisBelongBindingDto 查询条件dto
|
||||
* @param searchKey 模糊查询关键字
|
||||
* @param pageNo 当前页
|
||||
* @param pageSize 每页多少条
|
||||
* @return 诊断归属绑定列表
|
||||
*/
|
||||
R<?> getDiagnosisBelongBindingPage(DiagnosisBelongBindingDto diagnosisBelongBindingDto, String searchKey,
|
||||
Integer pageNo, Integer pageSize);
|
||||
|
||||
/**
|
||||
* 删除诊断归属绑定
|
||||
*
|
||||
* @param id ID
|
||||
* @return 结果
|
||||
*/
|
||||
R<?> delDiagnosisBelongBinding(Long id);
|
||||
|
||||
}
|
||||
|
||||
@@ -1,16 +1,25 @@
|
||||
package com.openhis.web.doctorstation.appservice.impl;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.core.common.core.domain.R;
|
||||
import com.core.common.utils.MessageUtils;
|
||||
import com.openhis.clinical.domain.DiagnosisBelongBinding;
|
||||
import com.openhis.clinical.service.IDiagnosisBelongBindingService;
|
||||
import com.openhis.common.constant.PromptMsgConstant;
|
||||
import com.openhis.common.enums.BindingType;
|
||||
import com.openhis.common.utils.EnumUtils;
|
||||
import com.openhis.common.utils.HisQueryUtils;
|
||||
import com.openhis.web.doctorstation.appservice.IDoctorStationDiagnosisAppService;
|
||||
import com.openhis.web.doctorstation.dto.DiagnosisBelongBindingDto;
|
||||
import com.openhis.web.doctorstation.mapper.DoctorStationDiagnosisAppMapper;
|
||||
@@ -72,4 +81,42 @@ public class DoctorStationDiagnosisAppServiceImpl implements IDoctorStationDiagn
|
||||
return R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00002, new Object[] {"诊断归属绑定关系"}));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询诊断归属绑定列表
|
||||
*
|
||||
* @param diagnosisBelongBindingDto 查询条件dto
|
||||
* @param searchKey 模糊查询关键字
|
||||
* @param pageNo 当前页
|
||||
* @param pageSize 每页多少条
|
||||
* @return 诊断归属绑定列表
|
||||
*/
|
||||
@Override
|
||||
public R<?> getDiagnosisBelongBindingPage(DiagnosisBelongBindingDto diagnosisBelongBindingDto, String searchKey,
|
||||
Integer pageNo, Integer pageSize) {
|
||||
// 构建查询条件
|
||||
QueryWrapper<DiagnosisBelongBindingDto> queryWrapper = HisQueryUtils.buildQueryWrapper(
|
||||
diagnosisBelongBindingDto, searchKey, new HashSet<>(Arrays.asList("definition_name", "object_name")), null);
|
||||
IPage<DiagnosisBelongBindingDto> diagnosisBelongBindingPage =
|
||||
doctorStationDiagnosisAppMapper.getDiagnosisBelongBindingPage(new Page<>(pageNo, pageSize),
|
||||
BindingType.PERSONAL.getValue(), BindingType.DEFINITION.getValue(), queryWrapper);
|
||||
diagnosisBelongBindingPage.getRecords().forEach(e -> {
|
||||
// 诊断绑定类型
|
||||
e.setBindingEnum_enumText(EnumUtils.getInfoByValue(BindingType.class, e.getBindingEnum()));
|
||||
});
|
||||
return R.ok(diagnosisBelongBindingPage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除诊断归属绑定
|
||||
*
|
||||
* @param id ID
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public R<?> delDiagnosisBelongBinding(Long id) {
|
||||
boolean res = iDiagnosisBelongBindingService.removeById(id);
|
||||
return res ? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00005, new Object[] {"诊断归属绑定"}))
|
||||
: R.fail(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00006, null));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -71,4 +71,33 @@ public class DoctorStationDiagnosisController {
|
||||
return iDoctorStationDiagnosisAppService.updateDiagnosisBelongBinding(diagnosisBelongBindingDto);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询诊断归属绑定列表
|
||||
*
|
||||
* @param diagnosisBelongBindingDto 查询条件dto
|
||||
* @param searchKey 模糊查询关键字
|
||||
* @param pageNo 当前页
|
||||
* @param pageSize 每页多少条
|
||||
* @return 诊断归属绑定列表
|
||||
*/
|
||||
@GetMapping(value = "/diagnosis-belong-binding-page")
|
||||
public R<?> getDiagnosisBelongBindingPage(DiagnosisBelongBindingDto diagnosisBelongBindingDto,
|
||||
@RequestParam(value = "searchKey", defaultValue = "") String searchKey,
|
||||
@RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
return iDoctorStationDiagnosisAppService.getDiagnosisBelongBindingPage(diagnosisBelongBindingDto, searchKey,
|
||||
pageNo, pageSize);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除诊断归属绑定
|
||||
*
|
||||
* @param id ID
|
||||
* @return 结果
|
||||
*/
|
||||
@DeleteMapping("/diagnosis-belong-binding")
|
||||
public R<?> delDiagnosisBelongBinding(@RequestParam Long id) {
|
||||
return iDoctorStationDiagnosisAppService.delDiagnosisBelongBinding(id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -24,11 +24,22 @@ public class DiagnosisBelongBindingDto {
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long objectId;
|
||||
|
||||
/**
|
||||
* 对象名称
|
||||
*/
|
||||
private String objectName;
|
||||
|
||||
/** 诊断定义ID */
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long definitionId;
|
||||
|
||||
/**
|
||||
* 诊断(病种)名称
|
||||
*/
|
||||
private String definitionName;
|
||||
|
||||
/** 绑定类型 */
|
||||
private Integer bindingEnum;
|
||||
private String bindingEnum_enumText;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,11 +1,31 @@
|
||||
package com.openhis.web.doctorstation.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.openhis.web.doctorstation.dto.DiagnosisBelongBindingDto;
|
||||
|
||||
/**
|
||||
* 医生站-诊断 应用Mapper
|
||||
*/
|
||||
@Repository
|
||||
public interface DoctorStationDiagnosisAppMapper {
|
||||
|
||||
/**
|
||||
* 查询诊断归属绑定列表
|
||||
*
|
||||
* @param page 分页参数
|
||||
* @param bindingType1 个人类型
|
||||
* @param bindingType2 科室类型
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 诊断归属绑定列表
|
||||
*/
|
||||
IPage<DiagnosisBelongBindingDto> getDiagnosisBelongBindingPage(@Param("page") Page<DiagnosisBelongBindingDto> page,
|
||||
@Param("bindingType1") Integer bindingType1, @Param("bindingType2") Integer bindingType2,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<DiagnosisBelongBindingDto> queryWrapper);
|
||||
|
||||
}
|
||||
|
||||
@@ -4,5 +4,37 @@
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.openhis.web.doctorstation.mapper.DoctorStationDiagnosisAppMapper">
|
||||
|
||||
<select id="getDiagnosisBelongBindingPage" resultType="com.openhis.web.doctorstation.dto.DiagnosisBelongBindingDto">
|
||||
SELECT T5.tenant_id,
|
||||
T5.ID,
|
||||
T5.object_id,
|
||||
T5.definition_id,
|
||||
T5.binding_enum,
|
||||
T5.definition_name,
|
||||
T5.object_name
|
||||
from (
|
||||
SELECT T1.tenant_id,
|
||||
T1.ID,
|
||||
T1.object_id,
|
||||
T1.definition_id,
|
||||
T1.binding_enum,
|
||||
T2.NAME AS definition_name,
|
||||
CASE
|
||||
WHEN T1.binding_enum = #{bindingType1} THEN
|
||||
T3.user_name
|
||||
WHEN T1.binding_enum = #{bindingType2} THEN
|
||||
T4.NAME
|
||||
END AS object_name
|
||||
FROM cli_diagnosis_belong_binding AS T1
|
||||
LEFT JOIN cli_condition_definition AS T2 ON T1.definition_id = T2.ID
|
||||
AND T2.delete_flag = '0'
|
||||
LEFT JOIN sys_user AS T3 ON T1.binding_enum = #{bindingType1}
|
||||
AND T1.object_id = T3.user_id
|
||||
LEFT JOIN adm_organization AS T4 ON T1.binding_enum = #{bindingType2}
|
||||
AND T1.object_id = T4.ID
|
||||
WHERE T1.delete_flag = '0'
|
||||
ORDER BY object_name) AS T5
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user