fix: 二期代码提交
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 4.2 KiB |
@ -0,0 +1,189 @@
|
|||||||
|
import { http } from "@/utils/http";
|
||||||
|
|
||||||
|
/** 分页查询问诊流程列表 */
|
||||||
|
export const queryDiagnoseProcessPageList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/diagnoseHall/queryDiagnoseProcessPageList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 分页查询病例信息列表 */
|
||||||
|
export const queryMedicalRecPageList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/diagnoseHall/queryMedicalRecPageList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 通过流程id查询电子病例信息 */
|
||||||
|
export const findByProcessId = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient/medicalRecord/findByProcessId", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/** 更新电子病例信息*/
|
||||||
|
|
||||||
|
export const updateCase = (data?: object) => {
|
||||||
|
return http.request("put", "/virtual-patient//medicalRecord/update", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/** 查询选择初步诊断关联的问诊记录 */
|
||||||
|
export const queryRecordForPrimaryChoose = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/askPrimary/queryRecordForPrimaryChoose",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 新增初步诊断*/
|
||||||
|
|
||||||
|
export const savePrimary = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient/askPrimary/savePrimary", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 批量进行辅助检查*/
|
||||||
|
export const execAskAncillaryBatch = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient/askAncillary/execAskAncillaryBatch",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
/** 查询初步诊断需要填写的诊断依据 */
|
||||||
|
export const queryDiagnosticBasisListForPrimary = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/askPrimary/queryDiagnosticBasisListForPrimary",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 保存初步诊断以及鉴别依据 */
|
||||||
|
export const confirmPrimaryByAskEnd = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient/askPrimary/confirmPrimaryByAskEnd",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询处置计划树 */
|
||||||
|
export const queryTree = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient/treatmentPlan/queryTree", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/** 新增处置计划记录 */
|
||||||
|
export const savePlan = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient/treatmentPlan/record/save", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 查询处置计划记录列表 */
|
||||||
|
export const queryPlanRecord = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/treatmentPlan/record/queryRecord",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询药品列表 */
|
||||||
|
export const getDrugList = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient/treatmentPlan/getDrugList", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 删除处置计划记录;
|
||||||
|
export const deleteRecord = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"delete",
|
||||||
|
"/virtual-patient/treatmentPlan/record/delete",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 修改处置计划记录 */
|
||||||
|
export const updateRecord = (data?: object) => {
|
||||||
|
return http.request("put", "/virtual-patient/treatmentPlan/record/update", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 查询处置计划详情 */
|
||||||
|
export const queryDetails = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/treatmentPlan/record/queryDetails",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 新增处置计划记录 */
|
||||||
|
export const confirmPlan = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient/treatmentPlan/confirm", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 查看资源是否有剩余
|
||||||
|
*/
|
||||||
|
export const resourceIsFree = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient//user/resourceIsFree", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 获取本机IP地址,用来给websocket使用
|
||||||
|
*/
|
||||||
|
export const queryWebSocketUrl = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient/user/queryWebSocketUrl", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 保存辅助检查判读结果
|
||||||
|
*/
|
||||||
|
export const saveAncillaryAssessmentResult = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient/askAncillary/saveAncillaryAssessmentResult",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 获取单个初步诊断详细信息
|
||||||
|
*/
|
||||||
|
export const queryPrimaryDetailInfo = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient/askPrimary/queryPrimaryDetailInfo",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 使用本地视频的形式来做
|
||||||
|
*/
|
||||||
|
export const talkByVideo = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient/ask/talkByVideo", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
@ -0,0 +1,215 @@
|
|||||||
|
import { http } from "@/utils/http";
|
||||||
|
|
||||||
|
/** 查询分页疾病列表 */
|
||||||
|
export const queryPageList = (data?: object) => {
|
||||||
|
return http.request("get", "/virtual-patient-manage/disease/queryPageList", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 新增疾病 */
|
||||||
|
export const addSave = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient-manage/disease/save", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/** 修改疾病信息 */
|
||||||
|
export const update = (data?: object) => {
|
||||||
|
return http.request("put", "/virtual-patient-manage/disease/update", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 删除疾病信息 */
|
||||||
|
export const deleteItem = (data?: object) => {
|
||||||
|
return http.request("delete", "/virtual-patient-manage/disease/delete", {
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 根据疾病id查询问题库信息列表 */
|
||||||
|
export const queryListByDiseaseId = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseaseQuestion/queryListByDiseaseId",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
export const diseaseQuestionDel = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"delete",
|
||||||
|
"/virtual-patient-manage/diseaseQuestion/delete",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询问题库列表 */
|
||||||
|
|
||||||
|
export const queryListAqLibrary = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage//aqLibrary/queryPageList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 保存疾病问题信息 */
|
||||||
|
export const questionBatchSave = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient-manage/diseaseQuestion/batchSave",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询问题类目编码列表 */
|
||||||
|
export const queryItemList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/aqLibrary/queryItemList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询体格检查的工具列表 */
|
||||||
|
export const queryPhysicalToolList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage//physicalTool/queryPhysicalToolList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 根据疾病id查询体格检查列表 */
|
||||||
|
export const queryBodyListByDiseaseId = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseasePhysical/queryListByDiseaseId",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 新增体格检查信息 */
|
||||||
|
export const addBodyInspect = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient-manage/diseasePhysical/save", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 修改体格检查信息 */
|
||||||
|
export const updateBodyInspect = (data?: object) => {
|
||||||
|
return http.request("put", "/virtual-patient-manage/diseasePhysical/update", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 删除体格检查 */
|
||||||
|
export const deleteBodyItem = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"delete",
|
||||||
|
"/virtual-patient-manage/diseasePhysical/delete",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 根据疾病id查询疾病处置信息列表 */
|
||||||
|
export const queryListBiseaseTreatmentPlan = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseaseTreatmentPlan/queryListByDiseaseId",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 保存处置信息 */
|
||||||
|
export const addDiseaseTreatmentPlan = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient-manage/diseaseTreatmentPlan/batchSave",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询处置计划树 */
|
||||||
|
export const queryTreeTreatmentPlan = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseaseTreatmentPlan/queryTree",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 删除疾病处置计划 */
|
||||||
|
export const deleteTreatmentPlan = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"delete",
|
||||||
|
"/virtual-patient-manage/diseaseTreatmentPlan/delete",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询疾病身体部位树 */
|
||||||
|
export const queryTreeDiseasePhysical = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseasePhysical/queryTree",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 新增辅助检查信息 */
|
||||||
|
export const addSupportInspect = (data?: object) => {
|
||||||
|
return http.request("post", "/virtual-patient-manage/diseaseAncillary/save", {
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
/** 修改体格检查信息 */
|
||||||
|
export const updateSupportInspect = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"put",
|
||||||
|
"/virtual-patient-manage/diseaseAncillary/update",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 删除体格检查 */
|
||||||
|
export const deleteSupportItem = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"delete",
|
||||||
|
"/virtual-patient-manage/diseaseAncillary/delete",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询疾病辅助检查项目列表 */
|
||||||
|
export const queryAncillaryItemList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseaseAncillary/queryAncillaryItemList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 根据疾病id查询疾病辅助检查信息列表 */
|
||||||
|
export const querySupportLsit = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/diseaseAncillary/queryListByDiseaseId",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
@ -0,0 +1,112 @@
|
|||||||
|
import { http } from "@/utils/http";
|
||||||
|
|
||||||
|
/** 初步诊断下拉列表联想 */
|
||||||
|
export const queryDiseaseListByDropList = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryDiseaseListByDropList",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 病历管理分页查询 */
|
||||||
|
export const queryMedicalRecPage = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryMedicalRecPage",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 创建疾病时的疾病列表 */
|
||||||
|
export const queryDiseaseListByCreat = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryDiseaseListByCreat",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 创建病历时查看配置的体格检查项 */
|
||||||
|
export const queryDiseasePhysicalByCreat = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryDiseasePhysicalByCreat",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 创建病历时查看配置的辅助检查项 */
|
||||||
|
export const queryDiseaseAncillaryByCreat = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryDiseaseAncillaryByCreat",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 新增病历*/
|
||||||
|
export const createMedicalRec = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/createMedicalRec",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 创建病历时, 应答策略查询问题(目前只支持单一疾病) */
|
||||||
|
export const queryQuestionListByCreat = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryQuestionListByCreat",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 创建病历时查看配置的处置计划 */
|
||||||
|
export const queryDiseaseTreatmentPlanByCreat = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryDiseaseTreatmentPlanByCreat",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 删除病历 */
|
||||||
|
export const deleteMedicalRec = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/deleteMedicalRec",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 查询病例详细信息 */
|
||||||
|
export const queryMedicalRecInfo = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"get",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/queryMedicalRecInfo",
|
||||||
|
{
|
||||||
|
params: data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/** 修改病历 */
|
||||||
|
export const modifyMedicalRec = (data?: object) => {
|
||||||
|
return http.request(
|
||||||
|
"post",
|
||||||
|
"/virtual-patient-manage/medicalRecManage/modifyMedicalRec",
|
||||||
|
{
|
||||||
|
data
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.4 MiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 113 KiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.6 MiB |
Before Width: | Height: | Size: 1.7 MiB After Width: | Height: | Size: 1.7 MiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 649 KiB After Width: | Height: | Size: 583 KiB |
Before Width: | Height: | Size: 792 KiB After Width: | Height: | Size: 671 KiB |
Before Width: | Height: | Size: 654 KiB After Width: | Height: | Size: 598 KiB |
Before Width: | Height: | Size: 794 KiB After Width: | Height: | Size: 670 KiB |
After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 213 B |
After Width: | Height: | Size: 594 B |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 1.8 MiB |
After Width: | Height: | Size: 921 B |
After Width: | Height: | Size: 844 B |
After Width: | Height: | Size: 782 B |
After Width: | Height: | Size: 925 B |
After Width: | Height: | Size: 807 B |
After Width: | Height: | Size: 689 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 463 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 665 B |
After Width: | Height: | Size: 771 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 693 B |
After Width: | Height: | Size: 753 B |
After Width: | Height: | Size: 730 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 502 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 544 B |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 534 B |
After Width: | Height: | Size: 701 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.5 KiB |
@ -0,0 +1,8 @@
|
|||||||
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="tianjia">
|
||||||
|
<rect id="Rectangle 1949" x="0.5" y="0.5" width="19" height="19" rx="3.5" fill="white" stroke="#D9D9D9"/>
|
||||||
|
<g id="添加 1">
|
||||||
|
<path id="Vector" d="M13.9926 9.39973H10.5945V6.00168C10.5945 5.84262 10.5313 5.69008 10.4189 5.57761C10.3064 5.46514 10.1539 5.40195 9.99481 5.40195C9.83576 5.40195 9.68321 5.46514 9.57074 5.57761C9.45828 5.69008 9.39509 5.84262 9.39509 6.00168V9.39973H5.99704C5.83798 9.39973 5.68544 9.46291 5.57297 9.57538C5.4605 9.68785 5.39731 9.84039 5.39731 9.99945C5.39731 10.1585 5.4605 10.311 5.57297 10.4235C5.68544 10.536 5.83798 10.5992 5.99704 10.5992H9.39509V13.9972C9.39509 14.1563 9.45828 14.3088 9.57074 14.4213C9.68321 14.5338 9.83576 14.5969 9.99481 14.5969C10.1539 14.5969 10.3064 14.5338 10.4189 14.4213C10.5313 14.3088 10.5945 14.1563 10.5945 13.9972V10.5992H13.9926C14.1516 10.5992 14.3042 10.536 14.4167 10.4235C14.5291 10.311 14.5923 10.1585 14.5923 9.99945C14.5923 9.84039 14.5291 9.68785 14.4167 9.57538C14.3042 9.46291 14.1516 9.39973 13.9926 9.39973Z" fill="#D9D9D9" stroke="#D9D9D9" stroke-width="0.2"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.2 KiB |
@ -0,0 +1,11 @@
|
|||||||
|
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="zhengque" clip-path="url(#clip0_351_1042)">
|
||||||
|
<path id="Vector" d="M9 16.5C11.071 16.5 12.946 15.6605 14.3033 14.3033C15.6605 12.946 16.5 11.071 16.5 9C16.5 6.92895 15.6605 5.05395 14.3033 3.6967C12.946 2.33947 11.071 1.5 9 1.5C6.92895 1.5 5.05395 2.33947 3.6967 3.6967C2.33947 5.05395 1.5 6.92895 1.5 9C1.5 11.071 2.33947 12.946 3.6967 14.3033C5.05395 15.6605 6.92895 16.5 9 16.5Z" fill="#0DB274" stroke="#0DB274" stroke-width="1.5" stroke-linejoin="round"/>
|
||||||
|
<path id="Vector_2" d="M6 9L8.25 11.25L12.75 6.75" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_351_1042">
|
||||||
|
<rect width="18" height="18" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 809 B |
@ -0,0 +1,10 @@
|
|||||||
|
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="guanbi" clip-path="url(#clip0_311_6682)">
|
||||||
|
<path id="Vector" d="M8.5 7L13.7 1.8C14.1 1.4 14.1 0.7 13.7 0.3C13.3 -0.1 12.6 -0.1 12.2 0.3L7 5.5L1.8 0.3C1.4 -0.1 0.7 -0.1 0.3 0.3C-0.1 0.7 -0.1 1.4 0.3 1.8L5.5 7L0.3 12.2C-0.1 12.6 -0.1 13.3 0.3 13.7C0.7 14.1 1.4 14.1 1.8 13.7L7 8.5L12.2 13.7C12.6 14.1 13.3 14.1 13.7 13.7C14.1 13.3 14.1 12.6 13.7 12.2L8.5 7Z" fill="#999999"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_311_6682">
|
||||||
|
<rect width="14" height="14" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 590 B |
@ -0,0 +1,11 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="shanchu" clip-path="url(#clip0_351_973)">
|
||||||
|
<path id="Vector" d="M13.9465 4.01804H10.6743V3.23136C10.6743 2.27681 9.92672 1.5 9.0081 1.5H6.78521C5.86659 1.5 5.11903 2.27681 5.11903 3.23136V4.01804H2.05434C1.74787 4.01804 1.5 4.2756 1.5 4.59406C1.5 4.91252 1.74787 5.17008 2.05434 5.17008H2.96187V12.149C2.96187 13.4459 3.9771 14.5 5.22435 14.5H10.58C11.8281 14.5 12.8425 13.4451 12.8425 12.149V5.17008H13.9457C14.2521 5.17008 14.5 4.91252 14.5 4.59406C14.5 4.2756 14.2529 4.01804 13.9465 4.01804ZM6.2277 3.23136C6.2277 2.91208 6.47795 2.65204 6.78521 2.65204H9.00889C9.31615 2.65204 9.5664 2.91208 9.5664 3.23136V4.01804H6.2277V3.23136ZM11.7346 12.1482C11.7346 12.8098 11.2167 13.3471 10.5808 13.3471H5.22515C4.58845 13.3471 4.07133 12.809 4.07133 12.1482V5.17008H11.7354V12.1482H11.7346Z" fill="#FF3B39"/>
|
||||||
|
<path id="Vector_2" d="M6.55096 7C6.24636 7 6 7.27543 6 7.61598V11.384C6 11.7246 6.24636 12 6.55096 12C6.85557 12 7.10193 11.7246 7.10193 11.384V7.61598C7.10193 7.27543 6.85557 7 6.55096 7ZM9.44904 7C9.14443 7 8.89807 7.27543 8.89807 7.61598V11.384C8.89807 11.7246 9.14443 12 9.44904 12C9.75364 12 10 11.7246 10 11.384V7.61598C10 7.27543 9.75285 7 9.44904 7Z" fill="#FF3B39"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_351_973">
|
||||||
|
<rect width="16" height="16" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.4 KiB |
@ -0,0 +1,5 @@
|
|||||||
|
<svg width="11" height="6" viewBox="0 0 11 6" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="xiala">
|
||||||
|
<path id="xiala_2" d="M0.142313 0.827435L5.14686 5.85395C5.34073 6.04868 5.65927 6.04868 5.85315 5.85395L10.8577 0.827435C11.1644 0.51942 10.9427 0 10.5045 0H0.495464C0.0573317 0 -0.164358 0.51942 0.142313 0.827435Z" fill="#2B3F54"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 355 B |
@ -0,0 +1,12 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g id="bianji">
|
||||||
|
<g id="xiugai" clip-path="url(#clip0_351_961)">
|
||||||
|
<path id="Vector" d="M0.924731 15.067L0.924392 15.0665L0.924395 15.0665C0.867743 14.9761 0.837695 14.8716 0.837695 14.7649C0.837695 14.6582 0.867743 14.5537 0.924395 14.4633L0.924468 14.4632C0.983266 14.37 1.06488 14.2933 1.16159 14.2404C1.25826 14.1876 1.36682 14.1602 1.47699 14.161H1.47676V14.211L1.47713 14.161L0.924731 15.067ZM0.924731 15.067C0.984177 15.1592 1.06605 15.2349 1.16269 15.2869C1.25925 15.3389 1.3674 15.3655 1.47705 15.3643M0.924731 15.067L1.47676 15.3143M14.7131 15.3643C14.8228 15.3655 14.9309 15.3389 15.0275 15.2869C15.1241 15.2349 15.206 15.1592 15.2655 15.067L15.2234 15.0399L15.2656 15.0667C15.3234 14.9757 15.354 14.8702 15.3537 14.7624C15.3535 14.6547 15.3225 14.5492 15.2644 14.4585L15.2644 14.4584C15.205 14.3661 15.1231 14.2903 15.0265 14.2383C14.9299 14.1863 14.8217 14.1597 14.712 14.161L1.47676 15.3143M14.7131 15.3643C14.7131 15.3643 14.713 15.3643 14.7129 15.3643L14.7134 15.3143V15.3643H14.7131ZM14.7131 15.3643H1.47705M1.47705 15.3643C1.47713 15.3643 1.47722 15.3643 1.47731 15.3643L1.47676 15.3143M1.47705 15.3643H1.47676V15.3143M8.50934 10.7868L8.50938 10.7869L8.51099 10.7853L13.791 5.50859L13.7911 5.50853C14.1093 5.18944 14.2879 4.7572 14.2879 4.30656C14.2879 3.85593 14.1093 3.42368 13.7911 3.10459L13.791 3.10453L12.0054 1.32008L12.0055 1.32007L12.0045 1.31917C11.6792 1.01065 11.2479 0.838672 10.7995 0.838672C10.3512 0.838672 9.91991 1.01065 9.59458 1.31917L9.59457 1.31916L9.59365 1.32008L4.31365 6.59452L4.31361 6.59448L4.31205 6.59619C3.74161 7.22119 3.37721 8.00653 3.26829 8.84568L3.26824 8.84567L3.26805 8.84795L3.14805 10.2813L3.14804 10.2813L3.14723 10.2911C3.09185 10.9595 3.0636 11.3004 3.07321 11.4964C3.0781 11.5962 3.09291 11.6641 3.12226 11.7205C3.15053 11.7749 3.19063 11.8148 3.23531 11.8592L3.23818 11.862L3.23829 11.8621C3.35271 11.9751 3.507 12.0386 3.66781 12.0388H3.66787C3.73193 12.0388 4.02332 12.015 4.53964 11.9728C4.62727 11.9656 4.72137 11.9579 4.82193 11.9497L4.82204 11.9497L6.25759 11.8297L6.2576 11.8298L6.25984 11.8295C7.09888 11.7209 7.88423 11.3569 8.50934 10.7868ZM4.7226 10.749L4.31692 10.782L4.34992 10.3763L4.34993 10.3762L4.4709 8.94555C4.55122 8.38617 4.79384 7.86263 5.16872 7.43976L10.4451 2.16782C10.4451 2.16777 10.4452 2.16771 10.4453 2.16766C10.5397 2.07513 10.6667 2.02331 10.799 2.02331C10.9312 2.02331 11.0582 2.07514 11.1527 2.16768C11.1528 2.16773 11.1528 2.16778 11.1529 2.16782L12.8669 3.87975L12.9378 3.95166C13.0307 4.0459 13.083 4.17281 13.0833 4.30514C13.0837 4.43736 13.0323 4.56447 12.9401 4.65921C12.94 4.65929 12.9399 4.65936 12.9398 4.65944L7.66248 9.93124C7.23936 10.3057 6.71593 10.5483 6.15667 10.6291L4.72271 10.7489L4.7226 10.749Z" fill="#4287FF" stroke="#4287FF" stroke-width="0.1"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_351_961">
|
||||||
|
<rect width="16" height="16" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.9 KiB |
@ -0,0 +1,110 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { useNav } from "@/layout/hooks/useNav";
|
||||||
|
import IconParkOutline from "@iconify-icons/icon-park-outline/logout";
|
||||||
|
import { computed, onMounted, ref } from "vue";
|
||||||
|
import downImg from "@/assets/newInquiry/down.png";
|
||||||
|
const { logout, userAvatar, avatarsStyle } = useNav();
|
||||||
|
import { getUserInfo } from "@/utils/auth";
|
||||||
|
import { useConsultationStoreHooks } from "@/store/modules/consultation";
|
||||||
|
import router from "@/router";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
const route = useRoute();
|
||||||
|
const userName = ref("");
|
||||||
|
const inspectSatus = computed(() => {
|
||||||
|
return useConsultationStoreHooks().inspectSatus;
|
||||||
|
});
|
||||||
|
onMounted(() => {
|
||||||
|
const userInfo: any = getUserInfo();
|
||||||
|
userName.value = JSON.parse(userInfo).name;
|
||||||
|
});
|
||||||
|
const changeCase = () => {
|
||||||
|
router.push({
|
||||||
|
path: "/selectCase"
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<template>
|
||||||
|
<div class="NavBar">
|
||||||
|
<div class="btn" @click="changeCase" v-if="inspectSatus === '2'">
|
||||||
|
更换病历
|
||||||
|
</div>
|
||||||
|
<!-- 退出登录 -->
|
||||||
|
<el-dropdown trigger="click" class="mr-6">
|
||||||
|
<span class="el-dropdown-link navbar-bg-hover select-none">
|
||||||
|
<img class="head" :src="userAvatar" :style="avatarsStyle" />
|
||||||
|
<p>{{ userName }}</p>
|
||||||
|
<img :src="downImg" alt="" />
|
||||||
|
</span>
|
||||||
|
<template #dropdown>
|
||||||
|
<el-dropdown-menu class="logout">
|
||||||
|
<el-dropdown-item
|
||||||
|
v-if="route.name !== 'SelectCase'"
|
||||||
|
@click="changeCase"
|
||||||
|
>
|
||||||
|
<IconifyIconOffline :icon="IconParkOutline" style="margin: 5px" />
|
||||||
|
返回问诊大厅
|
||||||
|
</el-dropdown-item>
|
||||||
|
<el-dropdown-item @click="logout">
|
||||||
|
<IconifyIconOffline :icon="IconParkOutline" style="margin: 5px" />
|
||||||
|
退出系统
|
||||||
|
</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</template>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.NavBar {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: flex-end;
|
||||||
|
min-width: 280px;
|
||||||
|
height: 48px;
|
||||||
|
margin-top: 22px;
|
||||||
|
color: #000000d9;
|
||||||
|
|
||||||
|
.btn {
|
||||||
|
width: 80px;
|
||||||
|
height: 32px;
|
||||||
|
font-size: 14px;
|
||||||
|
// font-family: Inter, Inter;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 32px;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
background: #4287ff;
|
||||||
|
border-radius: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-dropdown-link {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-around;
|
||||||
|
height: 48px;
|
||||||
|
padding: 10px;
|
||||||
|
color: #000000d9;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin-left: 8px;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #2b3f54;
|
||||||
|
}
|
||||||
|
|
||||||
|
.head {
|
||||||
|
width: 36px;
|
||||||
|
height: 36px;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 11px;
|
||||||
|
height: 6px;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,121 @@
|
|||||||
|
export default {
|
||||||
|
path: "/caseManagement",
|
||||||
|
redirect: "/caseManagement/diseaseType",
|
||||||
|
meta: {
|
||||||
|
title: "病例管理",
|
||||||
|
icon: "projectIcon",
|
||||||
|
rank: 11
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/caseManagement/diseaseType",
|
||||||
|
name: "DiseaseType",
|
||||||
|
component: () => import("@/views/caseManagement/diseaseType/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "疾病分类",
|
||||||
|
showLink: true,
|
||||||
|
showParent: true,
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/caseManagement/diseaseType/inquiry",
|
||||||
|
name: "diseaseTypeInquiry",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/caseManagement/diseaseType/inquiry/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "问诊",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/diseaseType",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/diseaseType/bodyInspect",
|
||||||
|
name: "diseaseTypeBodyInspect",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/caseManagement/diseaseType/bodyInspect/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "体格检查",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/diseaseType",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/diseaseType/supportInspect",
|
||||||
|
name: "diseaseTypeSupportInspect",
|
||||||
|
component: () =>
|
||||||
|
import(
|
||||||
|
"@/views/caseManagement/diseaseType/supportInspect/index.vue"
|
||||||
|
),
|
||||||
|
meta: {
|
||||||
|
title: "辅助检查",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/diseaseType",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/diseaseType/disposalPlan",
|
||||||
|
name: "diseaseTypeDisposalPlan",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/caseManagement/diseaseType/disposalPlan/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "处置计划",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/diseaseType",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/list",
|
||||||
|
name: "CaseManagement",
|
||||||
|
component: () => import("@/views/caseManagement/list/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "病历管理",
|
||||||
|
showLink: true,
|
||||||
|
showParent: true,
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/caseManagement/add",
|
||||||
|
name: "caseManagementAdd",
|
||||||
|
component: () => import("@/views/caseManagement/list/add.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "新建病历",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/list",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/edit",
|
||||||
|
name: "caseManagementEdit",
|
||||||
|
component: () => import("@/views/caseManagement/list/edit.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "编辑病历",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/list",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/caseManagement/detail",
|
||||||
|
name: "caseManagementDetail",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/caseManagement/list/details/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "病历详情",
|
||||||
|
showLink: false,
|
||||||
|
activePath: "/caseManagement/list",
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
} as RouteConfigsTable;
|
@ -0,0 +1,26 @@
|
|||||||
|
const { VITE_HIDE_HOME } = import.meta.env;
|
||||||
|
const Layout = () => import("@/layout/index.vue");
|
||||||
|
import HomeFill from "@/assets/svg/home.svg?component";
|
||||||
|
export default {
|
||||||
|
path: "/",
|
||||||
|
name: "Home",
|
||||||
|
component: Layout,
|
||||||
|
redirect: "/welcome",
|
||||||
|
meta: {
|
||||||
|
icon: HomeFill,
|
||||||
|
title: "首页",
|
||||||
|
showLink: false
|
||||||
|
// rank: 0
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/welcome",
|
||||||
|
name: "Welcome",
|
||||||
|
component: () => import("@/views/welcome/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "首页",
|
||||||
|
showLink: VITE_HIDE_HOME === "true" ? false : true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
} as RouteConfigsTable;
|
@ -0,0 +1,58 @@
|
|||||||
|
export default {
|
||||||
|
path: "/inquiryManagement",
|
||||||
|
redirect: "/inquiryManagement/list",
|
||||||
|
meta: {
|
||||||
|
title: "问诊管理",
|
||||||
|
icon: "projectIcon",
|
||||||
|
rank: 11
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/inquiryManagement/bodyInspect",
|
||||||
|
name: "BodyInspect",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/inquiryManagement/bodyInspect/list/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "体格检查",
|
||||||
|
showLink: true,
|
||||||
|
showParent: true,
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
// children: [
|
||||||
|
// {
|
||||||
|
// path: "/project/details",
|
||||||
|
// name: "ProjectDetails",
|
||||||
|
// component: () => import("@/views/project/details/index.vue"),
|
||||||
|
// meta: {
|
||||||
|
// title: "项目详情",
|
||||||
|
// // showLink: false,
|
||||||
|
// showParent: true,
|
||||||
|
// roles: ["admin", "common"]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// ]
|
||||||
|
}
|
||||||
|
// {
|
||||||
|
// path: "/inquiryManagement/supportInspect",
|
||||||
|
// name: "SupportInspect",
|
||||||
|
// component: () =>
|
||||||
|
// import("@/views/inquiryManagement/supportInspect/list/index.vue"),
|
||||||
|
// meta: {
|
||||||
|
// title: "辅助检查",
|
||||||
|
// showLink: false,
|
||||||
|
// roles: ["admin", "common"]
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// path: "/inquiryManagement/disposalPlan",
|
||||||
|
// name: "DisposalPlan",
|
||||||
|
// component: () =>
|
||||||
|
// import("@/views/inquiryManagement/disposalPlan/list/index.vue"),
|
||||||
|
// meta: {
|
||||||
|
// title: "处置计划",
|
||||||
|
// showLink: false,
|
||||||
|
// roles: ["admin", "common"]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
]
|
||||||
|
} as RouteConfigsTable;
|
@ -0,0 +1,33 @@
|
|||||||
|
export default {
|
||||||
|
path: "/systemManagement",
|
||||||
|
redirect: "/systemManagement/accountManagement",
|
||||||
|
meta: {
|
||||||
|
title: "系统管理",
|
||||||
|
icon: "projectIcon",
|
||||||
|
rank: 12
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "/systemManagement/accountManagement",
|
||||||
|
name: "systemManagement",
|
||||||
|
component: () =>
|
||||||
|
import("@/views/systemManagement/accountManagement/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "账号管理",
|
||||||
|
showLink: true,
|
||||||
|
showParent: true,
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/systemManagement/loginStatus",
|
||||||
|
name: "LoginStatus",
|
||||||
|
component: () => import("@/views/systemManagement/loginStatus/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "登录状态",
|
||||||
|
showLink: true,
|
||||||
|
roles: ["admin", "common"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
} as RouteConfigsTable;
|
@ -0,0 +1,47 @@
|
|||||||
|
import { defineStore } from "pinia";
|
||||||
|
import { store } from "@/store";
|
||||||
|
export const useCaseStore = defineStore({
|
||||||
|
id: "case",
|
||||||
|
state: () => ({
|
||||||
|
activedStep: 0, // 当前步骤
|
||||||
|
basicInfo: {
|
||||||
|
name: "",
|
||||||
|
gender: "",
|
||||||
|
age: "",
|
||||||
|
diseaseName: "",
|
||||||
|
diseaseId: "",
|
||||||
|
patientSelfDesc: "",
|
||||||
|
address: ""
|
||||||
|
},
|
||||||
|
diagnosticBasisInfo: {
|
||||||
|
primarilyDiagnosisCriteria: "",
|
||||||
|
confirmDiagnosisCriteria: "",
|
||||||
|
differentialDiagnosisCriteria: "",
|
||||||
|
fullCheck: ""
|
||||||
|
},
|
||||||
|
qaList: [],
|
||||||
|
patientId: "",
|
||||||
|
isEditFlag: false
|
||||||
|
}),
|
||||||
|
actions: {
|
||||||
|
changeActivedStep(data) {
|
||||||
|
this.activedStep = data;
|
||||||
|
},
|
||||||
|
changeBasicInfo(data) {
|
||||||
|
this.basicInfo = data;
|
||||||
|
},
|
||||||
|
changeDiagnosticBasisInfo(data) {
|
||||||
|
this.diagnosticBasisInfo = data;
|
||||||
|
},
|
||||||
|
changeQaList(data) {
|
||||||
|
this.qaList = data;
|
||||||
|
},
|
||||||
|
changeIsEditFlag(data) {
|
||||||
|
this.isEditFlag = data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
export function useCaseStoreHooks() {
|
||||||
|
return useCaseStore(store);
|
||||||
|
}
|
@ -0,0 +1,152 @@
|
|||||||
|
import { defineStore } from "pinia";
|
||||||
|
import { store } from "@/store";
|
||||||
|
import {
|
||||||
|
queryAskPrimaryList,
|
||||||
|
queryAskPhysicalHistory,
|
||||||
|
queryAskAncillaryHistory
|
||||||
|
} from "@/api/inquiry";
|
||||||
|
import { clearObject } from "@/utils/auth";
|
||||||
|
export const useConsultationStore = defineStore({
|
||||||
|
id: "consultation",
|
||||||
|
state: () => ({
|
||||||
|
activedKey: 0, // 选中的tab
|
||||||
|
activedTabKey: 0,
|
||||||
|
inspectSatus: "", //诊断状态
|
||||||
|
processId: "", //流程id
|
||||||
|
// 选中的工具
|
||||||
|
selectToolInfo: {
|
||||||
|
toolName: "",
|
||||||
|
img: "",
|
||||||
|
id: "",
|
||||||
|
requireLocation: 0
|
||||||
|
},
|
||||||
|
bodyPositionType: "", // 身体部位类别
|
||||||
|
// 体格检查结果
|
||||||
|
bodyResultInfo: {
|
||||||
|
name: "",
|
||||||
|
label: "",
|
||||||
|
value: "",
|
||||||
|
postion: ""
|
||||||
|
},
|
||||||
|
primaryIdList: [], //初步诊断id
|
||||||
|
selectSupportId: "", // 选中的辅助检查id
|
||||||
|
firstInspectList: [], // 初步检查列表
|
||||||
|
bodyInspectList: [], // 体格检查列表
|
||||||
|
suppertInspectList: [], // 辅助检查列表
|
||||||
|
uuid: "",
|
||||||
|
exhalationFlag: false, //呼出服务
|
||||||
|
voiceFlag: true,
|
||||||
|
planTypeFlag: "", // 处置计划类型
|
||||||
|
supportActionId: [] // 呼出辅助检查
|
||||||
|
}),
|
||||||
|
actions: {
|
||||||
|
changeActivedKey(data) {
|
||||||
|
this.activedKey = data;
|
||||||
|
if (data !== 1) {
|
||||||
|
clearObject(this.selectToolInfo);
|
||||||
|
clearObject(this.bodyResultInfo);
|
||||||
|
}
|
||||||
|
if (data === 0) {
|
||||||
|
this.exhalationFlag = false;
|
||||||
|
this.voiceFlag = true;
|
||||||
|
} else {
|
||||||
|
this.voiceFlag = false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
changeActivedTabKey(data) {
|
||||||
|
this.activedTabKey = data;
|
||||||
|
if (data !== 1) {
|
||||||
|
clearObject(this.selectToolInfo);
|
||||||
|
clearObject(this.bodyResultInfo);
|
||||||
|
}
|
||||||
|
if (data === 0) {
|
||||||
|
this.exhalationFlag = false;
|
||||||
|
this.voiceFlag = true;
|
||||||
|
} else {
|
||||||
|
this.voiceFlag = false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
changeSelectToolInfo(data) {
|
||||||
|
this.selectToolInfo = data;
|
||||||
|
},
|
||||||
|
changeBodyPositionType(data) {
|
||||||
|
this.bodyPositionType = data;
|
||||||
|
},
|
||||||
|
changeBodyResultInfo(data) {
|
||||||
|
this.bodyResultInfo = data;
|
||||||
|
},
|
||||||
|
changeProcessId(data) {
|
||||||
|
this.processId = data;
|
||||||
|
},
|
||||||
|
changeSelectSupportId(data) {
|
||||||
|
this.selectSupportId = data;
|
||||||
|
},
|
||||||
|
changeUUID(data) {
|
||||||
|
this.uuid = data;
|
||||||
|
},
|
||||||
|
changeExhalationFlag(data) {
|
||||||
|
this.exhalationFlag = data;
|
||||||
|
},
|
||||||
|
changeInspectSatus(data) {
|
||||||
|
this.inspectSatus = data;
|
||||||
|
},
|
||||||
|
changePrimaryIdList(data) {
|
||||||
|
this.primaryIdList = data;
|
||||||
|
},
|
||||||
|
/** 获取初步诊断列表 */
|
||||||
|
async getAskPrimaryList(id) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
queryAskPrimaryList({
|
||||||
|
processId: id
|
||||||
|
})
|
||||||
|
.then((res: any) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.firstInspectList = res.data;
|
||||||
|
resolve(res);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
reject(error);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 获取体格检查列表 */
|
||||||
|
async getyAskPhysicalHistory(id) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
queryAskPhysicalHistory({
|
||||||
|
processId: id
|
||||||
|
})
|
||||||
|
.then((res: any) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.bodyInspectList = res.data;
|
||||||
|
resolve(res);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
reject(error);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 获取辅助检查列表 */
|
||||||
|
async getAskAncillaryHistory() {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
queryAskAncillaryHistory({
|
||||||
|
processId: this.processId
|
||||||
|
})
|
||||||
|
.then((res: any) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.suppertInspectList = res.data;
|
||||||
|
resolve(res);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
reject(error);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
export function useConsultationStoreHooks() {
|
||||||
|
return useConsultationStore(store);
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
import { defineStore } from "pinia";
|
||||||
|
import { store } from "@/store";
|
||||||
|
export const useDiseaseStore = defineStore({
|
||||||
|
id: "disease",
|
||||||
|
state: () => ({
|
||||||
|
diseaseInfo: {
|
||||||
|
id: "",
|
||||||
|
diseaseName: ""
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
actions: {
|
||||||
|
changeDiseaseInfo(data) {
|
||||||
|
this.diseaseInfo = data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
export function useDiseaseStoreHooks() {
|
||||||
|
return useDiseaseStore(store);
|
||||||
|
}
|
@ -0,0 +1,343 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { onMounted, ref, reactive } from "vue";
|
||||||
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
|
import {
|
||||||
|
queryPhysicalToolList,
|
||||||
|
queryBodyListByDiseaseId,
|
||||||
|
deleteBodyItem,
|
||||||
|
queryTreeDiseasePhysical,
|
||||||
|
addBodyInspect,
|
||||||
|
updateBodyInspect
|
||||||
|
} from "@/api/disease";
|
||||||
|
import { ElMessageBox, FormInstance } from "element-plus";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
const isEditFlag = ref(false);
|
||||||
|
const id = ref("");
|
||||||
|
const formData = reactive({
|
||||||
|
toolIdPath: [],
|
||||||
|
diagnosticCriteria: [],
|
||||||
|
locationId: "",
|
||||||
|
locationIdPath: [],
|
||||||
|
locationDiagnosisFlag: "",
|
||||||
|
trait: "",
|
||||||
|
diagnosticRes: "",
|
||||||
|
result: "",
|
||||||
|
requireCheckFlag: "",
|
||||||
|
diagnosisAssessmentFlag: "",
|
||||||
|
expectedDiagnosisResult: "",
|
||||||
|
toolId: ""
|
||||||
|
});
|
||||||
|
const props = {
|
||||||
|
value: "id",
|
||||||
|
label: "toolName",
|
||||||
|
children: "toolList",
|
||||||
|
disabled: "flag",
|
||||||
|
expandTrigger: "hover" as const
|
||||||
|
};
|
||||||
|
const bodyProps = {
|
||||||
|
value: "id",
|
||||||
|
label: "locationName",
|
||||||
|
children: "child",
|
||||||
|
disabled: "flag"
|
||||||
|
};
|
||||||
|
const route = useRoute();
|
||||||
|
const selectBodyInspectList = ref([]);
|
||||||
|
const bodyTreeList = ref([]);
|
||||||
|
const refWangEditor = ref(null);
|
||||||
|
const columns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "体格检查项目",
|
||||||
|
prop: "toolName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "固定检查位",
|
||||||
|
prop: "locationName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "诊断判读",
|
||||||
|
prop: "diagnosisAssessmentFlag",
|
||||||
|
formatter: ({ diagnosisAssessmentFlag }) => {
|
||||||
|
return diagnosisAssessmentFlag === 0 ? "不需要" : "需要";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "是否必查",
|
||||||
|
prop: "requireCheckFlag",
|
||||||
|
formatter: ({ requireCheckFlag }) => {
|
||||||
|
return requireCheckFlag === 0 ? "否" : "是";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "预期诊断结果",
|
||||||
|
prop: "expectedDiagnosisResult",
|
||||||
|
formatter: ({ expectedDiagnosisResult }) => {
|
||||||
|
return expectedDiagnosisResult === 0 ? "正常" : "异常";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "操作",
|
||||||
|
width: 150,
|
||||||
|
slot: "operation"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
defineOptions({
|
||||||
|
name: "BodyInspect"
|
||||||
|
});
|
||||||
|
const diagnosticResList = [
|
||||||
|
{
|
||||||
|
label: "正常",
|
||||||
|
value: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "异常",
|
||||||
|
value: 1
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const rules = {
|
||||||
|
toolIdPath: [
|
||||||
|
{ required: true, message: "请选择体格检查项", trigger: "change" }
|
||||||
|
],
|
||||||
|
diagnosisAssessmentFlag: [
|
||||||
|
{ required: true, message: "请选择诊断判读", trigger: "change" }
|
||||||
|
],
|
||||||
|
requireCheckFlag: [
|
||||||
|
{ required: true, message: "请选择是否必查", trigger: "change" }
|
||||||
|
],
|
||||||
|
expectedDiagnosisResult: [
|
||||||
|
{ required: true, message: "请选择预期诊断结果", trigger: "change" }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
const ruleFormRef = ref<FormInstance>();
|
||||||
|
const bodyToolList = ref([]);
|
||||||
|
const handleChange = item => {
|
||||||
|
formData.toolId = item[item.length - 1];
|
||||||
|
getBodyTree();
|
||||||
|
formData.locationIdPath = [];
|
||||||
|
formData.locationId = "";
|
||||||
|
formData.result = "";
|
||||||
|
formData.locationDiagnosisFlag = "";
|
||||||
|
};
|
||||||
|
const handleLocationChange = item => {
|
||||||
|
formData.locationId = item[item.length - 1];
|
||||||
|
formData.result = "";
|
||||||
|
formData.locationDiagnosisFlag = "";
|
||||||
|
};
|
||||||
|
const getPhysicalToolList = async () => {
|
||||||
|
const res: any = await queryPhysicalToolList();
|
||||||
|
bodyToolList.value = res.data;
|
||||||
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
getPhysicalToolList();
|
||||||
|
getBodyListByDiseaseId();
|
||||||
|
});
|
||||||
|
// 查询部位树
|
||||||
|
const getBodyTree = async () => {
|
||||||
|
const res: any = await queryTreeDiseasePhysical({
|
||||||
|
diseaseId: route.query.id,
|
||||||
|
toolId: formData.toolId
|
||||||
|
});
|
||||||
|
bodyTreeList.value = res.data;
|
||||||
|
};
|
||||||
|
const getBodyListByDiseaseId = async () => {
|
||||||
|
const res: any = await queryBodyListByDiseaseId({
|
||||||
|
diseaseId: route.query.id
|
||||||
|
});
|
||||||
|
selectBodyInspectList.value = res.data;
|
||||||
|
};
|
||||||
|
|
||||||
|
const edit = item => {
|
||||||
|
for (const key in item) {
|
||||||
|
// eslint-disable-next-line no-prototype-builtins
|
||||||
|
if (formData.hasOwnProperty(key)) {
|
||||||
|
formData[key] = item[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getBodyTree();
|
||||||
|
isEditFlag.value = true;
|
||||||
|
id.value = item.id;
|
||||||
|
refWangEditor.value.valueHtml = item.trait;
|
||||||
|
};
|
||||||
|
const del = item => {
|
||||||
|
ElMessageBox.confirm(item ? `是否删除` : "", "提示", {
|
||||||
|
type: "warning"
|
||||||
|
})
|
||||||
|
.then(async () => {
|
||||||
|
const res = await deleteBodyItem({ id: item.id });
|
||||||
|
if (res.code === 200) {
|
||||||
|
getBodyListByDiseaseId();
|
||||||
|
message("删除成功", { type: "success" });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
};
|
||||||
|
const reset = (formEl: FormInstance | undefined) => {
|
||||||
|
if (!formEl) return;
|
||||||
|
formEl.resetFields();
|
||||||
|
formData.result = "";
|
||||||
|
formData.locationDiagnosisFlag = "";
|
||||||
|
isEditFlag.value = false;
|
||||||
|
refWangEditor.value.valueHtml = "";
|
||||||
|
};
|
||||||
|
const save = (formEl: FormInstance | undefined) => {
|
||||||
|
console.log(refWangEditor.value.valueHtml);
|
||||||
|
formEl.validate(async (valid, fields) => {
|
||||||
|
if (valid) {
|
||||||
|
formData.trait = refWangEditor.value.valueHtml;
|
||||||
|
const params = {
|
||||||
|
...formData,
|
||||||
|
diseaseId: route.query.id
|
||||||
|
};
|
||||||
|
if (isEditFlag.value) {
|
||||||
|
const res: any = await updateBodyInspect({
|
||||||
|
...params,
|
||||||
|
id: id.value
|
||||||
|
});
|
||||||
|
if (res.code === 200) {
|
||||||
|
message("修改成功", { type: "success" });
|
||||||
|
reset(ruleFormRef.value);
|
||||||
|
id.value = "";
|
||||||
|
getBodyListByDiseaseId();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const res: any = await addBodyInspect(params);
|
||||||
|
if (res.code === 200) {
|
||||||
|
message("新增成功", { type: "success" });
|
||||||
|
reset(ruleFormRef.value);
|
||||||
|
getBodyListByDiseaseId();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return fields;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="body-inspect">
|
||||||
|
<el-form
|
||||||
|
ref="ruleFormRef"
|
||||||
|
:model="formData"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="150px"
|
||||||
|
>
|
||||||
|
<el-form-item label="疾病名称:" prop="code">
|
||||||
|
<span>{{ route.query.diseaseName }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="体格检查项:" prop="toolIdPath">
|
||||||
|
<el-cascader
|
||||||
|
size="large"
|
||||||
|
v-model="formData.toolIdPath"
|
||||||
|
:options="bodyToolList"
|
||||||
|
:props="props"
|
||||||
|
@change="handleChange"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="部位检查结果:" prop="locationIdPath">
|
||||||
|
<el-cascader
|
||||||
|
size="large"
|
||||||
|
v-model="formData.locationIdPath"
|
||||||
|
:options="bodyTreeList"
|
||||||
|
:props="bodyProps"
|
||||||
|
@change="handleLocationChange"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-select
|
||||||
|
size="large"
|
||||||
|
filterable
|
||||||
|
v-model="formData.locationDiagnosisFlag"
|
||||||
|
style="width: 150px"
|
||||||
|
placeholder="诊断结果"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in diagnosticResList"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<el-input
|
||||||
|
size="large"
|
||||||
|
style="width: 800px; height: 40px"
|
||||||
|
v-model="formData.result"
|
||||||
|
placeholder="请输入诊断部位结果"
|
||||||
|
/>
|
||||||
|
</el-row>
|
||||||
|
<el-form-item label="诊断依据:" prop="diagnosticCriteria">
|
||||||
|
<el-checkbox-group v-model="formData.diagnosticCriteria">
|
||||||
|
<el-checkbox :label="0">初步诊断依据</el-checkbox>
|
||||||
|
<el-checkbox :label="1">证实诊断依据</el-checkbox>
|
||||||
|
<el-checkbox :label="2">鉴别依据</el-checkbox>
|
||||||
|
<el-checkbox :label="3">全面依据</el-checkbox>
|
||||||
|
</el-checkbox-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="诊断判读:" prop="diagnosisAssessmentFlag">
|
||||||
|
<el-radio-group v-model="formData.diagnosisAssessmentFlag">
|
||||||
|
<el-radio :label="0" size="large">不需要</el-radio>
|
||||||
|
<el-radio :label="1" size="large">需要</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="是否必查:" prop="requireCheckFlag">
|
||||||
|
<el-radio-group v-model="formData.requireCheckFlag">
|
||||||
|
<el-radio :label="0" size="large">否</el-radio>
|
||||||
|
<el-radio :label="1" size="large">是</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-row>
|
||||||
|
<el-form-item label="预期诊断结果:" prop="expectedDiagnosisResult">
|
||||||
|
<el-radio-group v-model="formData.expectedDiagnosisResult">
|
||||||
|
<el-radio :label="0" size="large">正常</el-radio>
|
||||||
|
<el-radio :label="1" size="large">异常</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="诊断结果:" prop="trait">
|
||||||
|
<WangEditor ref="refWangEditor" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div class="btn-list">
|
||||||
|
<el-button size="large" @click="save(ruleFormRef)" type="primary"
|
||||||
|
>确定</el-button
|
||||||
|
>
|
||||||
|
<el-button size="large" @click="reset(ruleFormRef)">重置</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="footer">
|
||||||
|
<div class="top">
|
||||||
|
{{ `已选体格检查项目【${selectBodyInspectList.length}个】` }}
|
||||||
|
</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
adaptive
|
||||||
|
ref="tableRef"
|
||||||
|
style="width: 1600px"
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
:data="selectBodyInspectList"
|
||||||
|
:columns="columns"
|
||||||
|
:header-cell-style="{
|
||||||
|
background: 'var(--el-table-row-hover-bg-color)',
|
||||||
|
color: 'var(--el-text-color-primary)'
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<template #operation="{ row }">
|
||||||
|
<el-button link type="primary" @click="edit(row)">编辑</el-button>
|
||||||
|
<el-button link type="danger" @click="del(row)"> 删除 </el-button>
|
||||||
|
</template></pure-table
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.body-inspect {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.footer {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,155 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { reactive, ref } from "vue";
|
||||||
|
import { addSave, update } from "@/api/disease";
|
||||||
|
import { FormInstance } from "element-plus";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
defineOptions({
|
||||||
|
name: "AddEdit"
|
||||||
|
});
|
||||||
|
const dialogVisible = ref(false);
|
||||||
|
const title = ref("");
|
||||||
|
const formData = reactive({
|
||||||
|
diseaseName: "",
|
||||||
|
diseaseNameAlias: "",
|
||||||
|
code: "",
|
||||||
|
symptom: "",
|
||||||
|
id: undefined
|
||||||
|
});
|
||||||
|
const ruleFormRef = ref<FormInstance>();
|
||||||
|
const rules = {
|
||||||
|
code: [{ required: true, message: "请输入类目编码", trigger: "change" }],
|
||||||
|
diseaseNameAlias: [
|
||||||
|
{ required: true, message: "请输入疾病分类别名", trigger: "change" }
|
||||||
|
],
|
||||||
|
diseaseName: [
|
||||||
|
{ required: true, message: "请输入疾病分类名称", trigger: "change" }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
defineExpose({
|
||||||
|
open(type, item) {
|
||||||
|
resetForm();
|
||||||
|
if (type === "add") {
|
||||||
|
title.value = "新增疾病";
|
||||||
|
} else {
|
||||||
|
title.value = "编辑疾病";
|
||||||
|
// formData = JSON.parse(JSON.stringify(item));
|
||||||
|
formData.diseaseName = item.diseaseName;
|
||||||
|
formData.diseaseNameAlias = item.diseaseNameAlias;
|
||||||
|
formData.code = item.code;
|
||||||
|
formData.symptom = item.symptom;
|
||||||
|
formData.id = item.id;
|
||||||
|
}
|
||||||
|
dialogVisible.value = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const resetForm = () => {
|
||||||
|
if (!ruleFormRef.value) return;
|
||||||
|
ruleFormRef.value.resetFields();
|
||||||
|
};
|
||||||
|
const closeDialog = () => {
|
||||||
|
dialogVisible.value = false;
|
||||||
|
resetForm();
|
||||||
|
};
|
||||||
|
const emit = defineEmits(["update"]);
|
||||||
|
const save = (formEl: FormInstance | undefined) => {
|
||||||
|
formEl.validate(async (valid, fields) => {
|
||||||
|
if (valid) {
|
||||||
|
if (title.value === "编辑疾病") {
|
||||||
|
const { code, diseaseName, diseaseNameAlias, symptom, id } = formData;
|
||||||
|
|
||||||
|
const res: any = await update({
|
||||||
|
code,
|
||||||
|
diseaseName,
|
||||||
|
diseaseNameAlias,
|
||||||
|
symptom,
|
||||||
|
id
|
||||||
|
});
|
||||||
|
if (res.code === 200) {
|
||||||
|
closeDialog();
|
||||||
|
emit("update");
|
||||||
|
message("编辑成功", { type: "success" });
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const { code, diseaseName, diseaseNameAlias, symptom } = formData;
|
||||||
|
const res: any = await addSave({
|
||||||
|
code,
|
||||||
|
diseaseName,
|
||||||
|
diseaseNameAlias,
|
||||||
|
symptom
|
||||||
|
});
|
||||||
|
if (res.code === 200) {
|
||||||
|
closeDialog();
|
||||||
|
emit("update");
|
||||||
|
message("新增成功", { type: "success" });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return fields;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-dialog
|
||||||
|
width="800"
|
||||||
|
append-to-body
|
||||||
|
:title="title"
|
||||||
|
v-model="dialogVisible"
|
||||||
|
:show-close="false"
|
||||||
|
:before-close="closeDialog"
|
||||||
|
custom-class="AddEdit"
|
||||||
|
>
|
||||||
|
<div>
|
||||||
|
<el-form
|
||||||
|
ref="ruleFormRef"
|
||||||
|
:model="formData"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="150px"
|
||||||
|
>
|
||||||
|
<el-form-item label="类目编码:" prop="code">
|
||||||
|
<el-input
|
||||||
|
size="large"
|
||||||
|
v-model="formData.code"
|
||||||
|
placeholder="请输入类目编码"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="疾病分类别名:" prop="diseaseNameAlias">
|
||||||
|
<el-input
|
||||||
|
v-model="formData.diseaseNameAlias"
|
||||||
|
size="large"
|
||||||
|
placeholder="请输入疾病分类别名"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="疾病分类名称:" prop="diseaseName">
|
||||||
|
<el-input
|
||||||
|
size="large"
|
||||||
|
v-model="formData.diseaseName"
|
||||||
|
placeholder="请输入疾病分类名称"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="症状:" prop="symptom">
|
||||||
|
<el-input
|
||||||
|
size="large"
|
||||||
|
v-model="formData.symptom"
|
||||||
|
placeholder="请输入症状"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<template #footer>
|
||||||
|
<el-button
|
||||||
|
size="large"
|
||||||
|
@click="save(ruleFormRef)"
|
||||||
|
class="footer-btn"
|
||||||
|
type="primary"
|
||||||
|
>确定</el-button
|
||||||
|
>
|
||||||
|
<el-button size="large" class="footer-btn" @click="closeDialog"
|
||||||
|
>取消</el-button
|
||||||
|
>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,162 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { reactive, ref } from "vue";
|
||||||
|
import { PaginationProps } from "@pureadmin/table";
|
||||||
|
import { queryListAqLibrary, queryItemList } from "@/api/disease";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
defineOptions({
|
||||||
|
name: "ProblemBase"
|
||||||
|
});
|
||||||
|
const dialogVisible = ref(false);
|
||||||
|
const seachForm = reactive({
|
||||||
|
code: ""
|
||||||
|
});
|
||||||
|
const multipleSelection = ref([]);
|
||||||
|
const pagination = reactive<PaginationProps>({
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
currentPage: 1,
|
||||||
|
background: true
|
||||||
|
});
|
||||||
|
const selectColumns: TableColumnList = [
|
||||||
|
{
|
||||||
|
type: "selection",
|
||||||
|
align: "left"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
label: "问题类目",
|
||||||
|
prop: "nameZhPath"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "问题",
|
||||||
|
prop: "question"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "回复",
|
||||||
|
prop: "defaultAnswer"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const dataList = ref([
|
||||||
|
{
|
||||||
|
question: "dsdsdsdsd"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
question: "dsdsdsdsd"
|
||||||
|
}
|
||||||
|
]);
|
||||||
|
const codeList = ref([]);
|
||||||
|
const getItemList = async () => {
|
||||||
|
const res: any = await queryItemList();
|
||||||
|
codeList.value = res.data;
|
||||||
|
};
|
||||||
|
defineExpose({
|
||||||
|
open() {
|
||||||
|
dialogVisible.value = true;
|
||||||
|
getData();
|
||||||
|
getItemList();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const getData = async () => {
|
||||||
|
const res: any = await queryListAqLibrary({
|
||||||
|
code: seachForm.code,
|
||||||
|
pageNum: pagination.currentPage,
|
||||||
|
pageSize: pagination.pageSize
|
||||||
|
});
|
||||||
|
dataList.value = res.data.records;
|
||||||
|
pagination.total = res.data.total;
|
||||||
|
};
|
||||||
|
function handleSizeChange(val: number) {
|
||||||
|
pagination.pageSize = val;
|
||||||
|
getData();
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleCurrentChange(val: number) {
|
||||||
|
pagination.currentPage = val;
|
||||||
|
getData();
|
||||||
|
}
|
||||||
|
function handleSelectionChange(val) {
|
||||||
|
multipleSelection.value = val;
|
||||||
|
}
|
||||||
|
const search = () => {
|
||||||
|
pagination.currentPage = 1;
|
||||||
|
pagination.pageSize = 10;
|
||||||
|
getData();
|
||||||
|
};
|
||||||
|
|
||||||
|
const reset = () => {
|
||||||
|
seachForm.code = "";
|
||||||
|
search();
|
||||||
|
};
|
||||||
|
const emit = defineEmits(["select"]);
|
||||||
|
const save = () => {
|
||||||
|
if (multipleSelection.value.length > 0) {
|
||||||
|
emit("select", multipleSelection.value);
|
||||||
|
dialogVisible.value = false;
|
||||||
|
} else {
|
||||||
|
message("请至少选择一条数据", { type: "warning" });
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-dialog
|
||||||
|
width="1200"
|
||||||
|
append-to-body
|
||||||
|
title="问题库"
|
||||||
|
v-model="dialogVisible"
|
||||||
|
custom-class="ProblemBase"
|
||||||
|
>
|
||||||
|
<div>
|
||||||
|
<div class="seach">
|
||||||
|
<el-form :model="seachForm" label-width="120px">
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="类目:">
|
||||||
|
<el-select
|
||||||
|
size="large"
|
||||||
|
filterable
|
||||||
|
v-model="seachForm.code"
|
||||||
|
placeholder="请选择"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in codeList"
|
||||||
|
:key="item.code"
|
||||||
|
:label="item.nameZh"
|
||||||
|
:value="item.code"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-button size="large" @click="search" type="primary"
|
||||||
|
>搜索</el-button
|
||||||
|
>
|
||||||
|
<el-button size="large" @click="reset">重置</el-button>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-button size="large" @click="save" type="primary"
|
||||||
|
>保存</el-button
|
||||||
|
>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
table-layout="auto"
|
||||||
|
row-key="id"
|
||||||
|
adaptive
|
||||||
|
:data="dataList"
|
||||||
|
:columns="selectColumns"
|
||||||
|
:pagination="pagination"
|
||||||
|
:header-cell-style="{
|
||||||
|
background: 'var(--el-table-row-hover-bg-color)',
|
||||||
|
color: 'var(--el-text-color-primary)'
|
||||||
|
}"
|
||||||
|
@selection-change="handleSelectionChange"
|
||||||
|
@page-size-change="handleSizeChange"
|
||||||
|
@page-current-change="handleCurrentChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,192 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import router from "@/router";
|
||||||
|
import { PaginationProps } from "@pureadmin/table";
|
||||||
|
import AddEdit from "./compontents/addEdit.vue";
|
||||||
|
import ProblemBase from "./compontents/problemBase.vue";
|
||||||
|
import { reactive, ref } from "vue";
|
||||||
|
import { queryPageList, deleteItem } from "@/api/disease";
|
||||||
|
import { onMounted } from "vue";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
import { ElMessageBox } from "element-plus";
|
||||||
|
defineOptions({
|
||||||
|
name: "DiseaseType"
|
||||||
|
});
|
||||||
|
|
||||||
|
const dataList = ref([{}]);
|
||||||
|
const loading = ref(false);
|
||||||
|
const addEditRef = ref(null);
|
||||||
|
const problemBaseRef = ref(null);
|
||||||
|
const seachForm = reactive({
|
||||||
|
diseaseName: ""
|
||||||
|
});
|
||||||
|
const pagination = reactive<PaginationProps>({
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
currentPage: 1,
|
||||||
|
background: true
|
||||||
|
});
|
||||||
|
const columns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "类目编码",
|
||||||
|
prop: "code",
|
||||||
|
minWidth: 150
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "疾病分类名称",
|
||||||
|
prop: "diseaseName",
|
||||||
|
minWidth: 240
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "操作",
|
||||||
|
fixed: "right",
|
||||||
|
width: 400,
|
||||||
|
slot: "operation"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const getData = async () => {
|
||||||
|
const params = {
|
||||||
|
pageNum: pagination.currentPage,
|
||||||
|
pageSize: pagination.pageSize,
|
||||||
|
diseaseName: seachForm.diseaseName
|
||||||
|
};
|
||||||
|
const res: any = await queryPageList(params);
|
||||||
|
dataList.value = res.data.records;
|
||||||
|
pagination.total = res.data.total;
|
||||||
|
};
|
||||||
|
function handleSizeChange(val: number) {
|
||||||
|
pagination.pageSize = val;
|
||||||
|
getData();
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleCurrentChange(val: number) {
|
||||||
|
pagination.currentPage = val;
|
||||||
|
getData();
|
||||||
|
}
|
||||||
|
const search = () => {
|
||||||
|
pagination.currentPage = 1;
|
||||||
|
pagination.pageSize = 10;
|
||||||
|
getData();
|
||||||
|
};
|
||||||
|
|
||||||
|
const reset = () => {
|
||||||
|
seachForm.diseaseName = "";
|
||||||
|
search();
|
||||||
|
};
|
||||||
|
const add = () => {
|
||||||
|
addEditRef.value.open("add");
|
||||||
|
};
|
||||||
|
const edit = item => {
|
||||||
|
addEditRef.value.open("edit", JSON.parse(JSON.stringify(item)));
|
||||||
|
};
|
||||||
|
// 问诊
|
||||||
|
const inspect = item => {
|
||||||
|
router.push({
|
||||||
|
name: "diseaseTypeInquiry",
|
||||||
|
query: {
|
||||||
|
id: item.id
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
const openBodyInspect = item => {
|
||||||
|
router.push({
|
||||||
|
path: "/caseManagement/diseaseType/bodyInspect",
|
||||||
|
query: {
|
||||||
|
id: item.id,
|
||||||
|
diseaseName: item.diseaseName
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
const openSupportInspect = item => {
|
||||||
|
router.push({
|
||||||
|
path: "/caseManagement/diseaseType/supportInspect",
|
||||||
|
query: {
|
||||||
|
id: item.id,
|
||||||
|
diseaseName: item.diseaseName
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
const openDisposalPlan = item => {
|
||||||
|
router.push({
|
||||||
|
name: "diseaseTypeDisposalPlan",
|
||||||
|
query: {
|
||||||
|
id: item.id
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
const handleDelete = item => {
|
||||||
|
ElMessageBox.confirm(
|
||||||
|
item ? `确认删除后${item.diseaseName}的所有信息将被清空, 且无法恢复` : "",
|
||||||
|
"提示",
|
||||||
|
{
|
||||||
|
type: "warning"
|
||||||
|
}
|
||||||
|
)
|
||||||
|
.then(async () => {
|
||||||
|
const res = await deleteItem({ id: item.id });
|
||||||
|
if (res.code === 200) {
|
||||||
|
getData();
|
||||||
|
message("删除成功", { type: "success" });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
getData();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="diseaseType">
|
||||||
|
<div class="seach">
|
||||||
|
<el-form :model="seachForm" label-width="120px">
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="疾病分类:">
|
||||||
|
<el-input size="large" v-model="seachForm.diseaseName" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-button class="ml-8" size="large" @click="search" type="primary"
|
||||||
|
>搜索</el-button
|
||||||
|
>
|
||||||
|
<el-button size="large" @click="reset">重置</el-button>
|
||||||
|
</el-row>
|
||||||
|
<el-row class="mb-10">
|
||||||
|
<el-button size="large" @click="add" type="primary">新增</el-button>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
table-layout="auto"
|
||||||
|
:loading="loading"
|
||||||
|
adaptive
|
||||||
|
:data="dataList"
|
||||||
|
:columns="columns"
|
||||||
|
:pagination="pagination"
|
||||||
|
:header-cell-style="{
|
||||||
|
background: 'var(--el-table-row-hover-bg-color)',
|
||||||
|
color: 'var(--el-text-color-primary)'
|
||||||
|
}"
|
||||||
|
@page-size-change="handleSizeChange"
|
||||||
|
@page-current-change="handleCurrentChange"
|
||||||
|
><template #operation="{ row }">
|
||||||
|
<el-button link type="primary" @click="edit(row)"> 编辑 </el-button>
|
||||||
|
<el-button link type="primary" @click="inspect(row)"> 问诊 </el-button>
|
||||||
|
<el-button link type="primary" @click="openBodyInspect(row)">
|
||||||
|
体格检查
|
||||||
|
</el-button>
|
||||||
|
<el-button link type="primary" @click="openSupportInspect(row)">
|
||||||
|
辅助检查
|
||||||
|
</el-button>
|
||||||
|
<el-button link type="primary" @click="openDisposalPlan(row)">
|
||||||
|
处置计划
|
||||||
|
</el-button>
|
||||||
|
<el-button link type="primary" @click="handleDelete(row)">
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
|
</template>
|
||||||
|
</pure-table>
|
||||||
|
<AddEdit @update="getData" ref="addEditRef" />
|
||||||
|
<ProblemBase ref="problemBaseRef" />
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,106 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { onMounted, ref } from "vue";
|
||||||
|
import {
|
||||||
|
queryListByDiseaseId,
|
||||||
|
diseaseQuestionDel,
|
||||||
|
questionBatchSave
|
||||||
|
} from "@/api/disease";
|
||||||
|
import { ElMessageBox } from "element-plus";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
import ProblemBase from "../compontents/problemBase.vue";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
defineOptions({
|
||||||
|
name: "DiseaseTypeInquiry"
|
||||||
|
});
|
||||||
|
const columns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "序号",
|
||||||
|
type: "index",
|
||||||
|
width: 80
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "问题类目",
|
||||||
|
prop: "itemName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "问题",
|
||||||
|
prop: "questionList",
|
||||||
|
formatter: ({ questionList }) => `${questionList[0]}`
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "回复",
|
||||||
|
prop: "answer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "操作",
|
||||||
|
width: 150,
|
||||||
|
slot: "operation"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const route = useRoute();
|
||||||
|
const selectDataList = ref([]);
|
||||||
|
const problemBaseRef = ref(null);
|
||||||
|
const add = () => {
|
||||||
|
problemBaseRef.value.open();
|
||||||
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
getData();
|
||||||
|
});
|
||||||
|
const getData = async () => {
|
||||||
|
const res: any = await queryListByDiseaseId({
|
||||||
|
diseaseId: route.query.id
|
||||||
|
});
|
||||||
|
selectDataList.value = res.data;
|
||||||
|
};
|
||||||
|
const handleDelete = item => {
|
||||||
|
ElMessageBox.confirm(item ? `是否删除` : "", "提示", {
|
||||||
|
type: "warning"
|
||||||
|
})
|
||||||
|
.then(async () => {
|
||||||
|
const res = await diseaseQuestionDel({ id: item.id });
|
||||||
|
if (res.code === 200) {
|
||||||
|
getData();
|
||||||
|
message("删除成功", { type: "success" });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
};
|
||||||
|
const selectOk = async (data: any) => {
|
||||||
|
const arry = [];
|
||||||
|
data.forEach(e => {
|
||||||
|
arry.push({
|
||||||
|
diseaseId: route.query.id,
|
||||||
|
questionId: e.id
|
||||||
|
});
|
||||||
|
});
|
||||||
|
await questionBatchSave(arry);
|
||||||
|
getData();
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="diseaseType-inquiry">
|
||||||
|
<el-button size="large" @click="add" type="primary">问题库</el-button>
|
||||||
|
<div class="title">
|
||||||
|
{{ `已选疾病补充问题【${selectDataList.length}】` }}
|
||||||
|
</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
:data="selectDataList"
|
||||||
|
:columns="columns"
|
||||||
|
:header-cell-style="{
|
||||||
|
background: 'var(--el-table-row-hover-bg-color)',
|
||||||
|
color: 'var(--el-text-color-primary)'
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<template #operation="{ row }">
|
||||||
|
<el-button link type="danger" @click="handleDelete(row)">
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
|
</template></pure-table
|
||||||
|
>
|
||||||
|
<ProblemBase @select="selectOk" ref="problemBaseRef" />
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,270 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { onMounted, ref, reactive } from "vue";
|
||||||
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
|
import {
|
||||||
|
querySupportLsit,
|
||||||
|
queryAncillaryItemList,
|
||||||
|
deleteSupportItem,
|
||||||
|
addSupportInspect,
|
||||||
|
updateSupportInspect
|
||||||
|
} from "@/api/disease";
|
||||||
|
import { ElMessageBox, FormInstance } from "element-plus";
|
||||||
|
import { message } from "@/utils/message";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
|
const isEditFlag = ref(false);
|
||||||
|
const id = ref("");
|
||||||
|
const formData = reactive({
|
||||||
|
itemIdPath: [],
|
||||||
|
diagnosticCriteria: [],
|
||||||
|
locationDiagnosisFlag: "",
|
||||||
|
result: "",
|
||||||
|
requireCheckFlag: "",
|
||||||
|
diagnosisAssessmentFlag: "",
|
||||||
|
expectedDiagnosisResult: "",
|
||||||
|
itemId: ""
|
||||||
|
});
|
||||||
|
const props = {
|
||||||
|
value: "id",
|
||||||
|
label: "itemName",
|
||||||
|
children: "itemList",
|
||||||
|
disabled: "flag",
|
||||||
|
expandTrigger: "hover" as const
|
||||||
|
};
|
||||||
|
const route = useRoute();
|
||||||
|
const selectSupportInspectList = ref([]);
|
||||||
|
const refWangEditor = ref(null);
|
||||||
|
const columns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "辅助检查项目",
|
||||||
|
prop: "itemName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "固定检查位",
|
||||||
|
prop: "locationName",
|
||||||
|
formatter: () => `不需要`
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "诊断判读",
|
||||||
|
prop: "diagnosisAssessmentFlag",
|
||||||
|
formatter: ({ diagnosisAssessmentFlag }) => {
|
||||||
|
return diagnosisAssessmentFlag === 0 ? "不需要" : "需要";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "是否必查",
|
||||||
|
prop: "requireCheckFlag",
|
||||||
|
formatter: ({ requireCheckFlag }) => {
|
||||||
|
return requireCheckFlag === 0 ? "否" : "是";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "预期诊断结果",
|
||||||
|
prop: "expectedDiagnosisResult",
|
||||||
|
formatter: ({ expectedDiagnosisResult }) => {
|
||||||
|
return expectedDiagnosisResult === 0 ? "正常" : "异常";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "操作",
|
||||||
|
width: 150,
|
||||||
|
slot: "operation"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
defineOptions({
|
||||||
|
name: "SupportInspect"
|
||||||
|
});
|
||||||
|
const rules = {
|
||||||
|
itemIdPath: [
|
||||||
|
{ required: true, message: "请选择辅助检查项", trigger: "change" }
|
||||||
|
],
|
||||||
|
diagnosisAssessmentFlag: [
|
||||||
|
{ required: true, message: "请选择诊断判读", trigger: "change" }
|
||||||
|
],
|
||||||
|
requireCheckFlag: [
|
||||||
|
{ required: true, message: "请选择是否必查", trigger: "change" }
|
||||||
|
],
|
||||||
|
expectedDiagnosisResult: [
|
||||||
|
{ required: true, message: "请选择预期诊断结果", trigger: "change" }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
const ruleFormRef = ref<FormInstance>();
|
||||||
|
const supportToolList = ref([]);
|
||||||
|
const handleChange = item => {
|
||||||
|
formData.itemId = item[item.length - 1];
|
||||||
|
};
|
||||||
|
const getPhysicalToolList = async () => {
|
||||||
|
const res: any = await queryAncillaryItemList({
|
||||||
|
diseaseId: route.query.id
|
||||||
|
});
|
||||||
|
supportToolList.value = res.data;
|
||||||
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
getPhysicalToolList();
|
||||||
|
getsupportListByDiseaseId();
|
||||||
|
});
|
||||||
|
const getsupportListByDiseaseId = async () => {
|
||||||
|
const res: any = await querySupportLsit({
|
||||||
|
diseaseId: route.query.id
|
||||||
|
});
|
||||||
|
selectSupportInspectList.value = res.data;
|
||||||
|
};
|
||||||
|
|
||||||
|
const edit = item => {
|
||||||
|
for (const key in item) {
|
||||||
|
// eslint-disable-next-line no-prototype-builtins
|
||||||
|
if (formData.hasOwnProperty(key)) {
|
||||||
|
formData[key] = item[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
isEditFlag.value = true;
|
||||||
|
id.value = item.id;
|
||||||
|
refWangEditor.value.valueHtml = item.result;
|
||||||
|
};
|
||||||
|
const del = item => {
|
||||||
|
ElMessageBox.confirm(item ? `是否删除` : "", "提示", {
|
||||||
|
type: "warning"
|
||||||
|
})
|
||||||
|
.then(async () => {
|
||||||
|
const res = await deleteSupportItem({ id: item.id });
|
||||||
|
if (res.code === 200) {
|
||||||
|
getsupportListByDiseaseId();
|
||||||
|
message("删除成功", { type: "success" });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
};
|
||||||
|
const reset = (formEl: FormInstance | undefined) => {
|
||||||
|
if (!formEl) return;
|
||||||
|
formEl.resetFields();
|
||||||
|
isEditFlag.value = false;
|
||||||
|
refWangEditor.value.valueHtml = "";
|
||||||
|
};
|
||||||
|
const save = (formEl: FormInstance | undefined) => {
|
||||||
|
console.log(refWangEditor.value.valueHtml);
|
||||||
|
formEl.validate(async (valid, fields) => {
|
||||||
|
if (valid) {
|
||||||
|
formData.result = refWangEditor.value.valueHtml;
|
||||||
|
const params = {
|
||||||
|
...formData,
|
||||||
|
diseaseId: route.query.id
|
||||||
|
};
|
||||||
|
if (isEditFlag.value) {
|
||||||
|
const res: any = await updateSupportInspect({
|
||||||
|
...params,
|
||||||
|
id: id.value
|
||||||
|
});
|
||||||
|
if (res.code === 200) {
|
||||||
|
message("修改成功", { type: "success" });
|
||||||
|
reset(ruleFormRef.value);
|
||||||
|
id.value = "";
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const res: any = await addSupportInspect(params);
|
||||||
|
if (res.code === 200) {
|
||||||
|
message("新增成功", { type: "success" });
|
||||||
|
reset(ruleFormRef.value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getsupportListByDiseaseId();
|
||||||
|
getPhysicalToolList();
|
||||||
|
} else {
|
||||||
|
return fields;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="support-inspect">
|
||||||
|
<el-form
|
||||||
|
ref="ruleFormRef"
|
||||||
|
:model="formData"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="150px"
|
||||||
|
>
|
||||||
|
<el-form-item label="疾病名称:" prop="code">
|
||||||
|
<span>{{ route.query.diseaseName }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="辅助查项:" prop="itemIdPath">
|
||||||
|
<el-cascader
|
||||||
|
size="large"
|
||||||
|
v-model="formData.itemIdPath"
|
||||||
|
:options="supportToolList"
|
||||||
|
:props="props"
|
||||||
|
@change="handleChange"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="诊断依据:" prop="diagnosticCriteria">
|
||||||
|
<el-checkbox-group v-model="formData.diagnosticCriteria">
|
||||||
|
<el-checkbox :label="0">初步诊断依据</el-checkbox>
|
||||||
|
<el-checkbox :label="1">证实诊断依据</el-checkbox>
|
||||||
|
<el-checkbox :label="2">鉴别依据</el-checkbox>
|
||||||
|
<el-checkbox :label="3">全面依据</el-checkbox>
|
||||||
|
</el-checkbox-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="诊断判读:" prop="diagnosisAssessmentFlag">
|
||||||
|
<el-radio-group v-model="formData.diagnosisAssessmentFlag">
|
||||||
|
<el-radio :label="0" size="large">不需要</el-radio>
|
||||||
|
<el-radio :label="1" size="large">需要</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="是否必查:" prop="requireCheckFlag">
|
||||||
|
<el-radio-group v-model="formData.requireCheckFlag">
|
||||||
|
<el-radio :label="0" size="large">否</el-radio>
|
||||||
|
<el-radio :label="1" size="large">是</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-row>
|
||||||
|
<el-form-item label="预期诊断结果:" prop="expectedDiagnosisResult">
|
||||||
|
<el-radio-group v-model="formData.expectedDiagnosisResult">
|
||||||
|
<el-radio :label="0" size="large">正常</el-radio>
|
||||||
|
<el-radio :label="1" size="large">异常</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="诊断结果:" prop="result">
|
||||||
|
<WangEditor ref="refWangEditor" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div class="btn-list">
|
||||||
|
<el-button size="large" @click="save(ruleFormRef)" type="primary"
|
||||||
|
>确定</el-button
|
||||||
|
>
|
||||||
|
<el-button size="large" @click="reset(ruleFormRef)">重置</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="footer">
|
||||||
|
<div class="top">
|
||||||
|
{{ `已选体格检查项目【${selectSupportInspectList.length}个】` }}
|
||||||
|
</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
adaptive
|
||||||
|
style="width: 1600px"
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
:data="selectSupportInspectList"
|
||||||
|
:columns="columns"
|
||||||
|
:header-cell-style="{
|
||||||
|
background: 'var(--el-table-row-hover-bg-color)',
|
||||||
|
color: 'var(--el-text-color-primary)'
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<template #operation="{ row }">
|
||||||
|
<el-button link type="primary" @click="edit(row)">编辑</el-button>
|
||||||
|
<el-button link type="danger" @click="del(row)"> 删除 </el-button>
|
||||||
|
</template></pure-table
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.support-inspect {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.footer {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,15 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { onMounted } from "vue";
|
||||||
|
import MainView from "./page/index.vue";
|
||||||
|
import { useCaseStoreHooks } from "@/store/modules/caseManagement";
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
useCaseStoreHooks().changeIsEditFlag(false);
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<MainView />
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,47 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
defineOptions({
|
||||||
|
name: "DisposalPlan"
|
||||||
|
});
|
||||||
|
defineProps({
|
||||||
|
dataList: {
|
||||||
|
type: Array,
|
||||||
|
default: () => []
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const columns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "处置计划",
|
||||||
|
prop: "disposalPlan"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "一级措施",
|
||||||
|
prop: "firstMeasures"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "二级措施",
|
||||||
|
prop: "secondMeasures"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "处置方式",
|
||||||
|
prop: "disposalMethod",
|
||||||
|
formatter: ({ disposalMethod }) => {
|
||||||
|
return disposalMethod === 0 ? "门诊收治" : "入院治疗";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="DisposalPlan">
|
||||||
|
<div class="title">{{ `处置计划【${dataList.length}】` }}</div>
|
||||||
|
<pure-table
|
||||||
|
border
|
||||||
|
style="width: 1000px; height: 500px"
|
||||||
|
align-whole="center"
|
||||||
|
showOverflowTooltip
|
||||||
|
adaptive
|
||||||
|
:data="dataList"
|
||||||
|
:columns="columns"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,97 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import InspectTable from "../../../list/page/compontents/inspectTable.vue";
|
||||||
|
import { ref } from "vue";
|
||||||
|
import type { TabsPaneContext } from "element-plus";
|
||||||
|
defineOptions({
|
||||||
|
name: "AskInquiry"
|
||||||
|
});
|
||||||
|
defineProps({
|
||||||
|
bodyList: {
|
||||||
|
type: Array,
|
||||||
|
default: () => []
|
||||||
|
},
|
||||||
|
supportList: {
|
||||||
|
type: Array,
|
||||||
|
default: () => []
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const activeName = ref("body");
|
||||||
|
|
||||||
|
const handleClick = (tab: TabsPaneContext, event: Event) => {
|
||||||
|
console.log(tab, event);
|
||||||
|
};
|
||||||
|
|
||||||
|
const bodyColumns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "检查项目",
|
||||||
|
prop: "toolName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "检查部位",
|
||||||
|
prop: "locationName"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "初步诊断依据",
|
||||||
|
slot: "slot0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "证实诊断依据",
|
||||||
|
slot: "slot1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "鉴别依据",
|
||||||
|
slot: "slot2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "全面依据",
|
||||||
|
slot: "slot3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "是否必查",
|
||||||
|
prop: "requireCheckFlag",
|
||||||
|
slot: "requireCheckFlag"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const supportColumns: TableColumnList = [
|
||||||
|
{
|
||||||
|
label: "检查项目",
|
||||||
|
prop: "itemName",
|
||||||
|
width: 300
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "初步诊断依据",
|
||||||
|
slot: "slot0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "证实诊断依据",
|
||||||
|
slot: "slot1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "鉴别依据",
|
||||||
|
slot: "slot2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "全面依据",
|
||||||
|
slot: "slot3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "是否必查",
|
||||||
|
prop: "requireCheckFlag",
|
||||||
|
minWidth: 150,
|
||||||
|
slot: "requireCheckFlag"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="AskInquiry">
|
||||||
|
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
||||||
|
<el-tab-pane label="体格检查" name="body">
|
||||||
|
<InspectTable :columns="bodyColumns" :dataList="bodyList" />
|
||||||
|
</el-tab-pane>
|
||||||
|
<el-tab-pane label="辅助检查" name="support">
|
||||||
|
<InspectTable :columns="supportColumns" :dataList="supportList" />
|
||||||
|
</el-tab-pane>
|
||||||
|
</el-tabs>
|
||||||
|
</div>
|
||||||
|
</template>
|
@ -0,0 +1,80 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
defineOptions({
|
||||||
|
name: "BasicInfo"
|
||||||
|
});
|
||||||
|
defineProps({
|
||||||
|
dataInfo: {
|
||||||
|
type: Object,
|
||||||
|
default: () => ({
|
||||||
|
name: "",
|
||||||
|
gender: "",
|
||||||
|
age: "",
|
||||||
|
profession: "",
|
||||||
|
patientSelfDesc: "",
|
||||||
|
marriage: "",
|
||||||
|
diseaseId: "",
|
||||||
|
diseaseName: "",
|
||||||
|
address: ""
|
||||||
|
})
|
||||||
|
},
|
||||||
|
diseaseName: {
|
||||||
|
type: String,
|
||||||
|
default: ""
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="BasicInfo">
|
||||||
|
<el-form :model="dataInfo" label-width="280px">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="姓名:" prop="name">
|
||||||
|
<span>{{ dataInfo.name }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-form-item label="性别:" prop="gender">
|
||||||
|
<span>{{ dataInfo.gender }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="年龄:" prop="age">
|
||||||
|
<span>{{ dataInfo.age }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="职业:" prop="profession">
|
||||||
|
<span>{{ dataInfo.profession }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="主诉:" prop="patientSelfDesc">
|
||||||
|
<span>{{ dataInfo.patientSelfDesc }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="婚姻状态:" prop="marriage">
|
||||||
|
<span>{{ dataInfo.marriage }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="地址:" prop="address">
|
||||||
|
<span>{{ dataInfo.address }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="疾病分类:" prop="diseaseName">
|
||||||
|
<span>{{ diseaseName }}</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</template>
|