fix(phase1): 修复EMR修订API路径、启用门诊EMR tab、清理废弃代码
- 修复revision-history api.js路径 (/emr/* → /api/v1/emr/*) - 启用doctorstation outpatient EMR tab - 移除EmrCompletenessCheckServiceImpl.executeCheck()硬编码PASS - StructuredEmrAppServiceImpl改用EmrCompletenessAppServiceImpl - 标注3个空壳Service为deprecated,移除@Service注解
This commit is contained in:
@@ -4,10 +4,10 @@ import com.healthlink.his.emr.domain.EmrCompletenessCheck;
|
||||
import com.healthlink.his.emr.domain.EmrRevision;
|
||||
import com.healthlink.his.emr.domain.EmrTimeliness;
|
||||
import com.healthlink.his.emr.dto.RevisionHistoryDto;
|
||||
import com.healthlink.his.emr.service.IEmrCompletenessCheckService;
|
||||
import com.healthlink.his.emr.service.IEmrRevisionService;
|
||||
import com.healthlink.his.emr.service.IEmrTimelinessService;
|
||||
import com.healthlink.his.web.emr.appservice.IStructuredEmrAppService;
|
||||
import com.healthlink.his.web.emr.appservice.IEmrCompletenessAppService;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -23,10 +23,10 @@ public class StructuredEmrAppServiceImpl implements IStructuredEmrAppService {
|
||||
private IEmrRevisionService emrRevisionService;
|
||||
|
||||
@Resource
|
||||
private IEmrCompletenessCheckService emrCompletenessCheckService;
|
||||
private IEmrTimelinessService emrTimelinessService;
|
||||
|
||||
@Resource
|
||||
private IEmrTimelinessService emrTimelinessService;
|
||||
private IEmrCompletenessAppService emrCompletenessAppService;
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
@@ -59,7 +59,10 @@ public class StructuredEmrAppServiceImpl implements IStructuredEmrAppService {
|
||||
@Override
|
||||
@Transactional
|
||||
public List<EmrCompletenessCheck> executeCompletenessCheck(Long emrId, Long encounterId) {
|
||||
return emrCompletenessCheckService.executeCheck(emrId, encounterId);
|
||||
Map<String, Object> result = emrCompletenessAppService.checkCompleteness(emrId, encounterId);
|
||||
@SuppressWarnings("unchecked")
|
||||
List<EmrCompletenessCheck> checks = (List<EmrCompletenessCheck>) result.get("checks");
|
||||
return checks != null ? checks : List.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -4,8 +4,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.healthlink.his.document.domain.DocStatisticsDefinition;
|
||||
import com.healthlink.his.document.mapper.DocStatisticsDefinitionMapper;
|
||||
import com.healthlink.his.document.service.IDocStatisticsDefinitionService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
// DEPRECATED: Empty shell service, no business logic. Kept for compilation compatibility.
|
||||
|
||||
/**
|
||||
* @deprecated Use DocStatisticsDefinitionAppServiceImpl instead
|
||||
*/
|
||||
@SuppressWarnings("unused")
|
||||
public class DocStatisticsDefinitionServiceImpl extends
|
||||
ServiceImpl<DocStatisticsDefinitionMapper, DocStatisticsDefinition> implements IDocStatisticsDefinitionService {}
|
||||
|
||||
@@ -4,15 +4,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.healthlink.his.document.domain.EmrDetail;
|
||||
import com.healthlink.his.document.mapper.EmrDetailMapper;
|
||||
import com.healthlink.his.document.service.IEmrDetailService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
// DEPRECATED: Empty shell service, never used. Kept for compilation compatibility.
|
||||
|
||||
/**
|
||||
* 电子病历详情Service业务层处理
|
||||
*
|
||||
* @author system
|
||||
* @date 2025-02-22
|
||||
* @deprecated Replaced by EmrDataWarehouseAppServiceImpl for structured data extraction
|
||||
*/
|
||||
@Service
|
||||
@SuppressWarnings("unused")
|
||||
public class EmrDetailServiceImpl extends ServiceImpl<EmrDetailMapper, EmrDetail> implements IEmrDetailService {
|
||||
|
||||
}
|
||||
@@ -8,6 +8,4 @@ import java.util.List;
|
||||
public interface IEmrCompletenessCheckService extends IService<EmrCompletenessCheck> {
|
||||
|
||||
List<EmrCompletenessCheck> selectByEmrId(Long emrId);
|
||||
|
||||
List<EmrCompletenessCheck> executeCheck(Long emrId, Long encounterId);
|
||||
}
|
||||
|
||||
@@ -6,8 +6,6 @@ import com.healthlink.his.emr.mapper.EmrCompletenessCheckMapper;
|
||||
import com.healthlink.his.emr.service.IEmrCompletenessCheckService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@@ -19,27 +17,4 @@ public class EmrCompletenessCheckServiceImpl
|
||||
public List<EmrCompletenessCheck> selectByEmrId(Long emrId) {
|
||||
return baseMapper.selectByEmrId(emrId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EmrCompletenessCheck> executeCheck(Long emrId, Long encounterId) {
|
||||
List<EmrCompletenessCheck> checks = new ArrayList<>();
|
||||
|
||||
String[] requiredItems = {"chief_complaint", "medical_history", "physical_exam", "auxiliary_exam", "diagnosis", "treatment_plan"};
|
||||
String[] categories = {"basic", "basic", "basic", "examination", "diagnosis", "treatment"};
|
||||
|
||||
for (int i = 0; i < requiredItems.length; i++) {
|
||||
EmrCompletenessCheck check = new EmrCompletenessCheck()
|
||||
.setEmrId(emrId)
|
||||
.setEncounterId(encounterId)
|
||||
.setCheckItem(requiredItems[i])
|
||||
.setCheckCategory(categories[i])
|
||||
.setIsRequired(true)
|
||||
.setCheckResult("PASS")
|
||||
.setCheckDetail("检查项: " + requiredItems[i])
|
||||
.setCheckTime(new Date());
|
||||
save(check);
|
||||
checks.add(check);
|
||||
}
|
||||
return checks;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,8 +4,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.healthlink.his.emr.domain.StructuredEmrTemplate;
|
||||
import com.healthlink.his.emr.mapper.StructuredEmrTemplateMapper;
|
||||
import com.healthlink.his.emr.service.IStructuredEmrTemplateService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
// DEPRECATED: Empty shell service, no business logic. Kept for compilation compatibility.
|
||||
|
||||
/**
|
||||
* @deprecated Use StructuredEmrTemplateController + new AppService instead
|
||||
*/
|
||||
@SuppressWarnings("unused")
|
||||
public class StructuredEmrTemplateServiceImpl extends ServiceImpl<StructuredEmrTemplateMapper, StructuredEmrTemplate> implements IStructuredEmrTemplateService {
|
||||
}
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
<!-- <el-tab-pane label="待写病历" name="pendingEmr">
|
||||
<PendingEmr @writeEmr="handleWriteEmr" @viewPatient="handleViewPatient" />
|
||||
</el-tab-pane> -->
|
||||
<!-- <el-tab-pane label="病历" name="emr">
|
||||
<el-tab-pane label="病历" name="emr">
|
||||
<Emr
|
||||
:patientInfo="patientInfo"
|
||||
ref="emrRef"
|
||||
@@ -255,7 +255,7 @@
|
||||
}
|
||||
"
|
||||
/>
|
||||
</el-tab-pane> -->
|
||||
</el-tab-pane>
|
||||
<el-tab-pane
|
||||
:label="$t('doctorstation.diagnosis')"
|
||||
name="diagnosis"
|
||||
@@ -412,6 +412,7 @@
|
||||
<script setup>
|
||||
import hospitalizationEmr from './components/hospitalizationEmr/index.vue';
|
||||
import PendingEmr from './components/pendingEmr/index.vue';
|
||||
import Emr from './components/emr/emr.vue';
|
||||
import {
|
||||
completeEncounter,
|
||||
getEncounterDiagnosis,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import request from '@/utils/request'
|
||||
export function getRevisionPage(p){return request({url:'/emr/revision/page-with-patient',method:'get',params:p})}
|
||||
export function getRevisionList(emrId){return request({url:'/emr/revision/list/'+emrId,method:'get'})}
|
||||
export function recordRevision(d){return request({url:'/emr/revision/record',method:'post',data:d})}
|
||||
export function compareRevisions(id1,id2){return request({url:'/emr/revision/compare',method:'get',params:{revisionId1:id1,revisionId2:id2}})}
|
||||
export function getRevisionPage(p){return request({url:'/api/v1/emr/revision/page-with-patient',method:'get',params:p})}
|
||||
export function getRevisionList(emrId){return request({url:'/api/v1/emr/revision/list/'+emrId,method:'get'})}
|
||||
export function recordRevision(d){return request({url:'/api/v1/emr/revision/record',method:'post',data:d})}
|
||||
export function compareRevisions(id1,id2){return request({url:'/api/v1/emr/revision/compare',method:'get',params:{revisionId1:id1,revisionId2:id2}})}
|
||||
|
||||
Reference in New Issue
Block a user