就诊-元数据

This commit is contained in:
Wang.Huan
2025-03-06 09:34:29 +08:00
parent ccf39ae556
commit c6b93680b3
7 changed files with 90 additions and 7 deletions

View File

@@ -142,7 +142,7 @@ public class DiseaseManageController {
for (Long detail : ids) {
ConditionDefinition conditionDefinition = new ConditionDefinition();
conditionDefinition.setId(detail);
conditionDefinition.setStatusEnum(PublicationStatus.RETIRED);
conditionDefinition.setStatusEnum(PublicationStatus.RETIRED.getValue());
conditionDefinitionList.add(conditionDefinition);
}
// 更新病种信息
@@ -165,7 +165,7 @@ public class DiseaseManageController {
for (Long detail : ids) {
ConditionDefinition conditionDefinition = new ConditionDefinition();
conditionDefinition.setId(detail);
conditionDefinition.setStatusEnum(PublicationStatus.ACTIVE);
conditionDefinition.setStatusEnum(PublicationStatus.ACTIVE.getValue());
conditionDefinitionList.add(conditionDefinition);
}
// 更新病种信息
@@ -185,7 +185,7 @@ public class DiseaseManageController {
ConditionDefinition conditionDefinition = new ConditionDefinition();
BeanUtils.copyProperties(diseaseManageUpDto, conditionDefinition);
// 新增外来病种目录
conditionDefinition.setStatusEnum(PublicationStatus.DRAFT);
conditionDefinition.setStatusEnum(PublicationStatus.DRAFT.getValue());
return iConditionDefinitionService.addDisease(conditionDefinition)
? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00002, new Object[] {"疾病目录"}))
: R.fail(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00008, null));

View File

@@ -1,6 +1,7 @@
package com.openhis.web.outpatientservice.appservice;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.openhis.web.outpatientservice.dto.ConditionDefinitionMetadata;
import com.openhis.web.outpatientservice.dto.ContractMetadata;
import com.openhis.web.outpatientservice.dto.PatientMetadata;
@@ -24,4 +25,16 @@ public interface IOutpatientRegistrationAppService {
* @return 费用性质
*/
List<ContractMetadata> getContractMetadata();
/**
* 查询诊断信息
*
* @param searchKey 模糊查询关键字
* @param pageNo 当前页
* @param pageSize 每页多少条
* @return 诊断信息
*/
Page<ConditionDefinitionMetadata> getConditionDefinitionMetadataSearchKey(String searchKey, Integer pageNo,
Integer pageSize);
}

View File

@@ -16,13 +16,18 @@ import com.core.common.utils.AgeCalculatorUtil;
import com.core.common.utils.bean.BeanUtils;
import com.openhis.administration.domain.Patient;
import com.openhis.administration.mapper.PatientMapper;
import com.openhis.clinical.domain.ConditionDefinition;
import com.openhis.clinical.mapper.ConditionDefinitionMapper;
import com.openhis.common.enums.AdministrativeGender;
import com.openhis.common.enums.PublicationStatus;
import com.openhis.common.enums.WhetherContainUnknown;
import com.openhis.common.utils.EnumUtils;
import com.openhis.common.utils.HisPageUtils;
import com.openhis.common.utils.HisQueryUtils;
import com.openhis.financial.domain.Contract;
import com.openhis.financial.mapper.ContractMapper;
import com.openhis.web.outpatientservice.appservice.IOutpatientRegistrationAppService;
import com.openhis.web.outpatientservice.dto.ConditionDefinitionMetadata;
import com.openhis.web.outpatientservice.dto.ContractMetadata;
import com.openhis.web.outpatientservice.dto.PatientMetadata;
@@ -38,6 +43,9 @@ public class IOutpatientRegistrationAppServiceImpl implements IOutpatientRegistr
@Resource
ContractMapper contractMapper;
@Resource
ConditionDefinitionMapper conditionDefinitionMapper;
/**
* 门诊挂号 - 查询患者信息
*
@@ -88,4 +96,35 @@ public class IOutpatientRegistrationAppServiceImpl implements IOutpatientRegistr
}).collect(Collectors.toList());
}
/**
* 查询诊断信息
*
* @param searchKey 模糊查询关键字
* @param pageNo 当前页
* @param pageSize 每页多少条
* @return 诊断信息
*/
@Override
public Page<ConditionDefinitionMetadata> getConditionDefinitionMetadataSearchKey(String searchKey, Integer pageNo,
Integer pageSize) {
// 构建查询条件
ConditionDefinition conditionDefinition = new ConditionDefinition();
// 查询状态是有效的
conditionDefinition.setStatusEnum(PublicationStatus.ACTIVE.getValue());
QueryWrapper<ConditionDefinition> queryWrapper = HisQueryUtils.buildQueryWrapper(conditionDefinition, searchKey,
new HashSet<>(Arrays.asList("name", "py_str", "wb_str")), null);
// 设置排序
queryWrapper.orderByDesc("update_time");
// 诊断信息
Page<ConditionDefinitionMetadata> conditionDefinitionMetadataPage = HisPageUtils
.selectPage(conditionDefinitionMapper, queryWrapper, pageNo, pageSize, ConditionDefinitionMetadata.class);
conditionDefinitionMetadataPage.getRecords().forEach(e -> {
// 医保标记
e.setYbFlag_enumText(EnumUtils.getInfoByValue(WhetherContainUnknown.class, e.getYbFlag()));
// 医保对码标记
e.setYbMatchFlag_enumText(EnumUtils.getInfoByValue(WhetherContainUnknown.class, e.getYbMatchFlag()));
});
return conditionDefinitionMetadataPage;
}
}

View File

@@ -74,8 +74,15 @@ public class OutpatientRegistrationController {
}
/**
* 查询第一诊断
* 查询诊断信息
*/
@GetMapping(value = "/condition-definition-metadata")
public R<?> getConditionDefinitionMetadata(@RequestParam(value = "searchKey", defaultValue = "") String searchKey,
@RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
return R
.ok(iOutpatientRegistrationAppService.getConditionDefinitionMetadataSearchKey(searchKey, pageNo, pageSize));
}
/**
* 查询就诊位置

View File

@@ -1,5 +1,8 @@
package com.openhis.web.outpatientservice.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.experimental.Accessors;
@@ -10,4 +13,25 @@ import lombok.experimental.Accessors;
@Accessors(chain = true)
public class ConditionDefinitionMetadata {
/** ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 编码 */
private String conditionCode;
/** 诊断名称 */
private String name;
/** 医保标记 */
private Integer ybFlag;
private String ybFlag_enumText;
/** 医保编码 */
private String ybNo;
/** 医保对码标记 */
private Integer ybMatchFlag;
private String ybMatchFlag_enumText;
}