fix-二期代码提交
@ -0,0 +1,129 @@
|
||||
import { http } from "@/utils/http";
|
||||
|
||||
/** 分页查询问题库列表 */
|
||||
export const queryPageList = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/aqLibrary/queryPageList",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
/** 保存问题库信息 */
|
||||
export const saveQuestionLibrary = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/aqLibrary/saveQuestionLibrary",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 更新问题库信息 */
|
||||
export const updateQuestionLibrary = (data?: object) => {
|
||||
return http.request(
|
||||
"put",
|
||||
"/virtual-patient-manage/aqLibrary/updateQuestionLibrary",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 删除问题库信息 */
|
||||
export const deleteQuestionLibrary = (data?: object) => {
|
||||
return http.request(
|
||||
"delete",
|
||||
"/virtual-patient-manage/aqLibrary/deleteQuestionLibrary",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 新增文件目录 */
|
||||
export const addDirectory = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/directoryManage/addDirectory",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 修改文件目录 */
|
||||
export const updateDirectory = (data?: object) => {
|
||||
return http.request(
|
||||
"put",
|
||||
"/virtual-patient-manage/directoryManage/updateDirectory",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 查询文件目录 */
|
||||
export const getFileDirectory = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/directoryManage/getFileDirectory",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 上传素材 */
|
||||
export const uploadMaterial = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/materialLibrary/uploadMaterial",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 素材管理分页查询 */
|
||||
export const queryMedicalRecPage = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/materialLibrary/queryMedicalRecPage",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 修改素材 */
|
||||
export const updateMaterial = (data?: object) => {
|
||||
return http.request(
|
||||
"put",
|
||||
"/virtual-patient-manage/materialLibrary/updateMaterial",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 删除素材 */
|
||||
export const deleteMaterial = (data?: object) => {
|
||||
return http.request(
|
||||
"delete",
|
||||
"/virtual-patient-manage/materialLibrary/deleteMaterial",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 查询病例默认问题 */
|
||||
export const queryMedicalDefaultAnswer = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/medicalRecManage/queryMedicalDefaultAnswer",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 对话服务 */
|
||||
export const talkRasa = (data?: object) => {
|
||||
return http.request("post", "/virtual-patient-rasa/rasaCmd/deploy", {
|
||||
data
|
||||
});
|
||||
};
|
@ -0,0 +1,52 @@
|
||||
import { http } from "@/utils/http";
|
||||
|
||||
/** 分页查询病案管理 */
|
||||
export const queryProcessRecordPage = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/processRecord/queryProcessRecordPage",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 电子病例视图 */
|
||||
export const queryViewDetails = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient/medicalRecord/queryViewDetails",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 保存或更新考核病案评估 */
|
||||
export const saveProcessEvaluation = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/processRecord/saveProcessEvaluation",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 查询考核病案评估 */
|
||||
export const queryProcessEvaluation = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/processRecord/queryProcessEvaluation",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
export const querySingleDiseaseListByDropList = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/medicalRecManage/querySingleDiseaseListByDropList",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
@ -0,0 +1,175 @@
|
||||
import { http } from "@/utils/http";
|
||||
|
||||
/** 分页查询药物信息 */
|
||||
export const queryDrugManagePageList = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/drugManage/queryPageList",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 新增药物信息 */
|
||||
export const addDrugManage = (data?: object) => {
|
||||
return http.request("post", "/virtual-patient-manage/drugManage/save", {
|
||||
data
|
||||
});
|
||||
};
|
||||
/** 修改药物信息 */
|
||||
export const edtDrugManage = (data?: object) => {
|
||||
return http.request("put", "/virtual-patient-manage/drugManage/update", {
|
||||
data
|
||||
});
|
||||
};
|
||||
/** 删除药物信息 */
|
||||
export const delDrugManage = (data?: object) => {
|
||||
return http.request("delete", "/virtual-patient-manage/drugManage/delete", {
|
||||
params: data
|
||||
});
|
||||
};
|
||||
/** 保存处置计划 */
|
||||
export const saveTreatmentPlan = (data?: object) => {
|
||||
return http.request("post", "/virtual-patient-manage/treatmentPlan/save", {
|
||||
data
|
||||
});
|
||||
};
|
||||
/** 分页查询处置计划列表 */
|
||||
export const queryTreatmentPlanList = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/treatmentPlan/queryPageList",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
/** 修改 */
|
||||
export const updateTreatmentPlan = (data?: object) => {
|
||||
return http.request("put", "/virtual-patient-manage/treatmentPlan/update", {
|
||||
data
|
||||
});
|
||||
};
|
||||
/** 删除处置计划 */
|
||||
export const delTreatmentPlan = (data?: object) => {
|
||||
return http.request(
|
||||
"delete",
|
||||
"/virtual-patient-manage/treatmentPlan/delete",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
/** 体格检查分页查询 */
|
||||
export const queryPhysicalPage = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/physicalTool/queryPhysicalPage",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
/** 删除体格工具 */
|
||||
export const deleteConfigPhysicalTool = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/physicalTool/deleteConfigPhysicalTool",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 保存体格工具 */
|
||||
export const saveConfigPhysicalTool = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/physicalTool/saveConfigPhysicalTool",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 修改体格工具 */
|
||||
export const modifyConfigPhysicalTool = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/physicalTool/modifyConfigPhysicalTool",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 查询身体部位树 */
|
||||
export const queryPhysicalLocation = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/physicalLocation/queryTree",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
export const queryConfigPhysicalToolDetail = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/physicalTool/queryConfigPhysicalToolDetail",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 查询辅助检查项目列表 */
|
||||
export const queryAncillaryItemList = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/ancillaryItem/queryAncillaryItemList",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 分页查询辅助检查 */
|
||||
export const queryAncillaryPage = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/ancillaryItem/queryAncillaryPage",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 保存辅助检查项 */
|
||||
export const saveAncillaryItem = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/ancillaryItem/saveAncillaryItem",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 修改辅助检查项 */
|
||||
export const modifyAncillaryItem = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/ancillaryItem/modifyAncillaryItem",
|
||||
{
|
||||
data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 删除辅助检查项 */
|
||||
export const deleteAncillaryItem = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/ancillaryItem/deleteAncillaryItem",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
@ -0,0 +1,34 @@
|
||||
import { http } from "@/utils/http";
|
||||
|
||||
/** 查询用户列表 */
|
||||
export const queryUserPage = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/userManage/queryUserPage",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 停用用户 */
|
||||
export const deactivateUser = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/userManage/deactivateUser",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 保存用户 */
|
||||
export const saveUser = (data?: object) => {
|
||||
return http.request("post", "/virtual-patient-manage/userManage/saveUser", {
|
||||
data
|
||||
});
|
||||
};
|
||||
/** 更新用户 */
|
||||
export const updateUser = (data?: object) => {
|
||||
return http.request("post", "/virtual-patient-manage/userManage/updateUser", {
|
||||
data
|
||||
});
|
||||
};
|
@ -0,0 +1,22 @@
|
||||
import { http } from "@/utils/http";
|
||||
|
||||
/** 查询字典树 */
|
||||
export const queryCommonDictTree = (data?: object) => {
|
||||
return http.request(
|
||||
"get",
|
||||
"/virtual-patient-manage/commonDic/queryCommonDictTree",
|
||||
{
|
||||
params: data
|
||||
}
|
||||
);
|
||||
};
|
||||
/** 上传文件*/
|
||||
|
||||
export const uploadFile = (data?: object) => {
|
||||
return http.request(
|
||||
"post",
|
||||
"/virtual-patient-manage/fileManage/uploadFile",
|
||||
{ data },
|
||||
{ headers: { "Content-Type": "multipart/form-data" } }
|
||||
);
|
||||
};
|
After Width: | Height: | Size: 667 B |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 970 B |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 591 B |
After Width: | Height: | Size: 713 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 844 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 601 B |
After Width: | Height: | Size: 638 B |
@ -0,0 +1,13 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="xiazai" clip-path="url(#clip0_1507_5683)">
|
||||
<path id="Vector" d="M16.375 2.5H3.625C3.00368 2.5 2.5 3.00368 2.5 3.625V16.375C2.5 16.9963 3.00368 17.5 3.625 17.5H16.375C16.9963 17.5 17.5 16.9963 17.5 16.375V3.625C17.5 3.00368 16.9963 2.5 16.375 2.5Z" stroke="#333333" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M13.3333 2.5V10H6.25V2.5H13.3333Z" stroke="#333333" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M10.833 5.41602V7.08268" stroke="#333333" stroke-width="1.5" stroke-linecap="round"/>
|
||||
<path id="Vector_4" d="M4.58203 2.5H14.9993" stroke="#333333" stroke-width="1.5" stroke-linecap="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1507_5683">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 863 B |
@ -0,0 +1,8 @@
|
||||
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="gengduo">
|
||||
<rect id="Rectangle 1973" width="30" height="30" rx="4" fill="#666666"/>
|
||||
<circle id="Ellipse 357" cx="7" cy="15" r="2" fill="white"/>
|
||||
<circle id="Ellipse 358" cx="15" cy="15" r="2" fill="white"/>
|
||||
<circle id="Ellipse 359" cx="23" cy="15" r="2" fill="white"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 383 B |
@ -0,0 +1,13 @@
|
||||
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="tishi" clip-path="url(#clip0_1492_1598)">
|
||||
<path id="Vector" d="M7 0C3.1 0 0 3.1 0 7C0 10.9 3.1 14 7 14C10.9 14 14 10.9 14 7C14 3.1 10.9 0 7 0Z" fill="#00975E"/>
|
||||
<g id="对号 2">
|
||||
<path id="Vector_2" d="M4.14564 6.15296C3.8463 5.85206 3.36038 5.85226 3.06059 6.15282L3.06046 6.15296C2.76162 6.45335 2.76162 6.9404 3.06046 7.24079L3.06052 7.24085L5.52864 9.71898L5.52886 9.71919L4.0393 6.25875M4.14564 6.15296L4.0393 6.25875M4.14564 6.15296L4.14557 6.1529L4.0393 6.25875M4.14564 6.15296L6.07117 8.08619M4.0393 6.25875L5.96532 8.19247L6.07117 8.08619M6.07117 8.08619L6.17703 8.19247L6.07117 8.29875L9.84735 4.29481L9.84739 4.29477L9.95367 4.40062L9.8472 4.29497L6.07117 8.08619Z" fill="white" stroke="white" stroke-width="0.3"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1492_1598">
|
||||
<rect width="14" height="14" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 979 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="tishi" clip-path="url(#clip0_1507_5706)">
|
||||
<path id="Vector" d="M7 0C3.1 0 0 3.1 0 7C0 10.9 3.1 14 7 14C10.9 14 14 10.9 14 7C14 3.1 10.9 0 7 0ZM7.8 11.2C7.8 11.7 7.5 12 7 12C6.5 12 6.2 11.7 6.2 11.2V6.6C6.2 6.1 6.5 5.8 7 5.8C7.5 5.8 7.8 6.1 7.8 6.6V11.2ZM8.2 3.6C8.2 4.3 7.6 4.8 7 4.8C6.4 4.8 5.8 4.3 5.8 3.6C5.8 2.9 6.3 2.3 7 2.3C7.7 2.3 8.2 2.9 8.2 3.6Z" fill="#FFA700"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1507_5706">
|
||||
<rect width="14" height="14" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 591 B |
@ -0,0 +1,13 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="zhengshi" clip-path="url(#clip0_200_661)">
|
||||
<path id="Vector" d="M3.5 2.8C3.5 2.35817 3.91572 2 4.42857 2H15.5714C16.0843 2 16.5 2.35817 16.5 2.8V18L13.25 16L10 18L6.75 16L3.5 18V2.8Z" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M7.5 9.16699H12.5" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M7.5 12.5H12.5" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M7.5 5.83301H12.5" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_661">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 863 B |
@ -0,0 +1,11 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="jianbie" clip-path="url(#clip0_200_697)">
|
||||
<path id="Vector" d="M3.3335 18.3332V2.49984C3.3335 2.0396 3.70659 1.6665 4.16683 1.6665H15.8335C16.2937 1.6665 16.6668 2.0396 16.6668 2.49984V18.3332L10.0002 14.8862L3.3335 18.3332Z" stroke="#4287FF" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M6.6665 7.5H13.3332" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_697">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 633 B |
@ -0,0 +1,15 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="chuzhi" clip-path="url(#clip0_200_746)">
|
||||
<path id="Vector" d="M16.25 2.5H3.75C3.05964 2.5 2.5 3.05964 2.5 3.75V16.25C2.5 16.9404 3.05964 17.5 3.75 17.5H16.25C16.9404 17.5 17.5 16.9404 17.5 16.25V3.75C17.5 3.05964 16.9404 2.5 16.25 2.5Z" stroke="#4287FF" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M1.66699 12.9165H6.25033L7.08366 14.5832H12.917L13.7503 12.9165H18.3337" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M17.5 15.0002V10.8335" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M2.5 15.0002V10.8335" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_5" d="M7.08301 6.25H12.9163" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_6" d="M7.08301 9.5835H12.9163" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_746">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.2 KiB |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="wenzhenlishi" clip-path="url(#clip0_200_804)">
|
||||
<path id="Vector" d="M2.4248 2.80322V5.83352H5.45511" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M1.66699 9.99984C1.66699 14.6022 5.39795 18.3332 10.0003 18.3332C14.6027 18.3332 18.3337 14.6022 18.3337 9.99984C18.3337 5.39746 14.6027 1.6665 10.0003 1.6665C6.91616 1.6665 4.22328 3.34197 2.78231 5.83238" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M10.0025 5L10.002 10.0037L13.535 13.5368" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_804">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 867 B |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="biaozhun" clip-path="url(#clip0_200_809)">
|
||||
<path id="Vector" d="M7.93163 18.3332C7.52334 17.0017 6.90738 16.009 6.08375 15.3553C4.84829 14.3747 2.88531 14.9841 2.1602 13.9726C1.4351 12.9612 2.66822 11.101 3.10094 10.0035C3.53365 8.906 1.44237 8.51792 1.68653 8.20638C1.8493 7.99863 2.90609 7.39925 4.85692 6.40817C5.41121 3.24705 7.45863 1.6665 10.9992 1.6665C16.31 1.6665 18.3333 6.16896 18.3333 9.03271C18.3333 11.8964 15.8833 14.9816 12.3933 15.6468C12.0813 16.1013 12.5314 16.9968 13.7436 18.3332" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M8.75904 1.9126C8.26408 4.09118 8.26408 5.78629 8.75904 6.998C9.50154 8.8155 12.7836 8.53625 12.7836 10.232C12.7836 11.9277 10.8712 12.2537 11.1264 13.4301C11.2965 14.2144 11.675 15.2316 12.2616 16.4817" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round"/>
|
||||
<path id="Vector_3" d="M7.08337 12.7293C7.18146 12.7293 8.08354 12.6717 8.73292 11.9995C9.16583 11.5514 9.38225 11.0237 9.38225 10.4165" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_809">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.3 KiB |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="chubu" clip-path="url(#clip0_200_616)">
|
||||
<path id="Vector" d="M4.16659 18.3332C3.70635 18.3332 3.33325 17.9601 3.33325 17.4998V2.49984C3.33325 2.0396 3.70635 1.6665 4.16659 1.6665H15.8333C16.2935 1.6665 16.6666 2.0396 16.6666 2.49984V17.4998C16.6666 17.9601 16.2935 18.3332 15.8333 18.3332H4.16659Z" stroke="#4287FF" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" fill-rule="evenodd" clip-rule="evenodd" d="M8.75 9.1665V1.6665H13.75V9.1665L11.25 6.55288L8.75 9.1665Z" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M4.16675 1.6665H15.8334" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_616">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 919 B |
@ -0,0 +1,11 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="pingfen" clip-path="url(#clip0_200_527)">
|
||||
<path id="Vector" d="M3.33337 18.3332V1.6665H12.9167L16.6667 6.0415V18.3332H3.33337Z" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M9.99999 6.25L11.285 9.06463L14.359 9.417L12.0792 11.5089L12.694 14.5413L9.99999 13.0196L7.30599 14.5413L7.92074 11.5089L5.64099 9.417L8.71495 9.06463L9.99999 6.25Z" stroke="#4287FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_527">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 703 B |
@ -0,0 +1,13 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="fangda" clip-path="url(#clip0_371_98)">
|
||||
<path id="Vector" d="M8.75 15.8332C12.662 15.8332 15.8333 12.6618 15.8333 8.74984C15.8333 4.83784 12.662 1.6665 8.75 1.6665C4.838 1.6665 1.66667 4.83784 1.66667 8.74984C1.66667 12.6618 4.838 15.8332 8.75 15.8332Z" stroke="#333333" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M8.75 6.25V11.25" stroke="#333333" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M6.2565 8.7565L11.25 8.75" stroke="#333333" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M13.8423 13.8423L17.3779 17.3778" stroke="#333333" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_371_98">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 934 B |
@ -0,0 +1,13 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="zhengshi" clip-path="url(#clip0_200_621)">
|
||||
<path id="Vector" d="M3.5 2.8C3.5 2.35817 3.91572 2 4.42857 2H15.5714C16.0843 2 16.5 2.35817 16.5 2.8V18L13.25 16L10 18L6.75 16L3.5 18V2.8Z" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M7.5 9.16699H12.5" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M7.5 12.5H12.5" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M7.5 5.83301H12.5" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_621">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 863 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="shanchu" clip-path="url(#clip0_200_899)">
|
||||
<path id="Vector" d="M4.66666 3.66699L1.33333 8.00033L4.66666 12.3337H14.6667V3.66699H4.66666Z" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M7 6.33301L10.3333 9.66634" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M10.3333 6.33301L7 9.66634" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_899">
|
||||
<rect width="16" height="16" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 711 B |
@ -0,0 +1,11 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="jianbie" clip-path="url(#clip0_200_667)">
|
||||
<path id="Vector" d="M3.3335 18.3332V2.49984C3.3335 2.0396 3.70659 1.6665 4.16683 1.6665H15.8335C16.2937 1.6665 16.6668 2.0396 16.6668 2.49984V18.3332L10.0002 14.8862L3.3335 18.3332Z" stroke="#2B3F54" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M6.6665 7.5H13.3332" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_667">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 633 B |
@ -0,0 +1,15 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="chuzhi" clip-path="url(#clip0_200_689)">
|
||||
<path id="Vector" d="M16.25 2.5H3.75C3.05964 2.5 2.5 3.05964 2.5 3.75V16.25C2.5 16.9404 3.05964 17.5 3.75 17.5H16.25C16.9404 17.5 17.5 16.9404 17.5 16.25V3.75C17.5 3.05964 16.9404 2.5 16.25 2.5Z" stroke="#2B3F54" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M1.66699 12.9165H6.25033L7.08366 14.5832H12.917L13.7503 12.9165H18.3337" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M17.5 15.0002V10.8335" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M2.5 15.0002V10.8335" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_5" d="M7.08301 6.25H12.9163" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_6" d="M7.08301 9.5835H12.9163" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_689">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.2 KiB |
@ -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="shouqi" clip-path="url(#clip0_200_894)">
|
||||
<path id="Vector" d="M2 3H14" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M2 6.33301H14" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M2 8.66699L8 13.3337L14 8.66699" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_894">
|
||||
<rect width="16" height="16" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 636 B |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="wenzhenlishi" clip-path="url(#clip0_200_741)">
|
||||
<path id="Vector" d="M2.4248 2.80322V5.83352H5.45511" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M1.66699 9.99984C1.66699 14.6022 5.39795 18.3332 10.0003 18.3332C14.6027 18.3332 18.3337 14.6022 18.3337 9.99984C18.3337 5.39746 14.6027 1.6665 10.0003 1.6665C6.91616 1.6665 4.22328 3.34197 2.78231 5.83238" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M10.0025 5L10.002 10.0037L13.535 13.5368" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_741">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 867 B |
@ -0,0 +1,14 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="wenzhen" clip-path="url(#clip0_200_814)">
|
||||
<path id="Vector" fill-rule="evenodd" clip-rule="evenodd" d="M3.33337 3.33333C3.33337 2.8731 3.70647 2.5 4.16671 2.5H11.25V7.5H16.6667V16.6667C16.6667 17.1269 16.2936 17.5 15.8334 17.5H4.16671C3.70647 17.5 3.33337 17.1269 3.33337 16.6667V3.33333Z" stroke="#2B3F54" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M11.25 2.5L16.6667 7.5" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M11.2601 2.5V7.53408H16.6665" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_4" d="M5.83337 12.5H10.8334" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round"/>
|
||||
<path id="Vector_5" d="M8.33337 10V15" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_814">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.0 KiB |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="suoxiao" clip-path="url(#clip0_371_104)">
|
||||
<path id="Vector" d="M8.75 15.8332C12.662 15.8332 15.8333 12.6618 15.8333 8.74984C15.8333 4.83784 12.662 1.6665 8.75 1.6665C4.838 1.6665 1.66667 4.83784 1.66667 8.74984C1.66667 12.6618 4.838 15.8332 8.75 15.8332Z" stroke="#333333" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M6.25 8.75H11.25" stroke="#333333" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M13.8423 13.8423L17.3779 17.3778" stroke="#333333" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_371_104">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 802 B |
@ -0,0 +1,12 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="yuqi" clip-path="url(#clip0_200_531)">
|
||||
<path id="Vector" d="M4.16671 18.3332C3.70647 18.3332 3.33337 17.9601 3.33337 17.4998V2.49984C3.33337 2.0396 3.70647 1.6665 4.16671 1.6665H15.8334C16.2936 1.6665 16.6667 2.0396 16.6667 2.49984V17.4998C16.6667 17.9601 16.2936 18.3332 15.8334 18.3332H4.16671Z" stroke="#2B3F54" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" fill-rule="evenodd" clip-rule="evenodd" d="M8.75 9.1665V1.6665H13.75V9.1665L11.25 6.55288L8.75 9.1665Z" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M4.16663 1.6665H15.8333" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_531">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 918 B |
@ -0,0 +1,11 @@
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="pingfen" clip-path="url(#clip0_200_607)">
|
||||
<path id="Vector" d="M3.33325 18.3332V1.6665H12.9166L16.6666 6.0415V18.3332H3.33325Z" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M10.0001 6.25L11.2852 9.06463L14.3591 9.417L12.0794 11.5089L12.6941 14.5413L10.0001 13.0196L7.30611 14.5413L7.92086 11.5089L5.64111 9.417L8.71507 9.06463L10.0001 6.25Z" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_607">
|
||||
<rect width="20" height="20" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 706 B |
@ -0,0 +1,5 @@
|
||||
<svg width="16" height="10" viewBox="0 0 16 10" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="xiala">
|
||||
<path id="xiala_2" d="M7.26545 9.20482C7.66137 9.63342 8.33863 9.63342 8.73455 9.20482L13.3776 4.17855C13.9693 3.53807 13.515 2.5 12.6431 2.5H3.35693C2.485 2.5 2.03073 3.53807 2.62238 4.17855L7.26545 9.20482Z" fill="#2B3F54"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 350 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="zhankai" clip-path="url(#clip0_200_919)">
|
||||
<path id="Vector" d="M2 13H14" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_2" d="M2 9.66699H14" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path id="Vector_3" d="M2 7.33301L8 2.66634L14 7.33301" stroke="#2B3F54" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_200_919">
|
||||
<rect width="16" height="16" fill="white" transform="matrix(1 0 0 -1 0 16)"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 672 B |
@ -0,0 +1,14 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="xinjianwenjian" clip-path="url(#clip0_1507_5744)">
|
||||
<path id="Vector" d="M22.0311 22H1.96886C1.43305 22 1 21.561 1 21.0179V4.98208C1 4.43896 1.43305 4 1.96886 4H22.0311C22.5669 4 23 4.43896 23 4.98208V21.0179C23 21.5586 22.5645 22 22.0311 22Z" fill="#FFE9B4"/>
|
||||
<path id="Vector_2" d="M12.429 8.13636H1V3.00662C1 2.44992 1.44995 2 2.00664 2H9.82846C10.2733 2 10.6648 2.28979 10.7919 2.71683L12.429 8.13636Z" fill="#FFB02C"/>
|
||||
<path id="Vector_3" d="M22.0311 22H1.96886C1.43305 22 1 21.4909 1 20.8609V6.13909C1 5.50913 1.43305 5 1.96886 5H22.0311C22.5669 5 23 5.50913 23 6.13909V20.8609C23 21.488 22.5645 22 22.0311 22Z" fill="#FFCA28"/>
|
||||
<rect id="Rectangle 1968" x="7.25" y="12.5" width="9" height="1.5" fill="#FFAA0F"/>
|
||||
<rect id="Rectangle 1969" x="11" y="17.75" width="9" height="1.5" transform="rotate(-90 11 17.75)" fill="#FFAA0F"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1507_5744">
|
||||
<rect width="24" height="24" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.0 KiB |
@ -0,0 +1,45 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, nextTick } from "vue";
|
||||
|
||||
defineOptions({
|
||||
name: "PlayVideo"
|
||||
});
|
||||
const videoUrl = ref("");
|
||||
const type = ref(1);
|
||||
const titleList = ["图片", "播放视频", "播放音频"];
|
||||
defineExpose({
|
||||
async open(id, val) {
|
||||
videoUrl.value = "";
|
||||
type.value = val;
|
||||
dialogVisible.value = true;
|
||||
await nextTick;
|
||||
videoUrl.value = `/virtual-patient-manage/fileManage/downloadFile?fileId=${id}`;
|
||||
}
|
||||
});
|
||||
const closed = () => {
|
||||
videoUrl.value = "";
|
||||
dialogVisible.value = false;
|
||||
};
|
||||
const dialogVisible = ref(false);
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog
|
||||
width="600"
|
||||
:title="titleList[type]"
|
||||
append-to-body
|
||||
v-model="dialogVisible"
|
||||
:before-close="closed"
|
||||
custom-class="PlayVideo"
|
||||
>
|
||||
<div v-if="videoUrl && type === 1">
|
||||
<video ref="videoPlayer" :src="videoUrl" type="video/mp4" controls />
|
||||
</div>
|
||||
|
||||
<audio v-if="videoUrl && type === 2" id="myAudio" controls>
|
||||
<source :src="videoUrl" type="audio/mpeg" />
|
||||
</audio>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
@ -0,0 +1,34 @@
|
||||
export default {
|
||||
path: "/generalRules",
|
||||
redirect: "/generalRules/responseStrategy",
|
||||
meta: {
|
||||
title: "通用规则",
|
||||
icon: "weixinFavorites",
|
||||
rank: 14
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/generalRules/responseStrategy",
|
||||
name: "ResponseStrategy",
|
||||
component: () =>
|
||||
import("@/views/generalRules/responseStrategy/index.vue"),
|
||||
meta: {
|
||||
title: "应答策略 ",
|
||||
showLink: true,
|
||||
showParent: true,
|
||||
roles: ["admin", "common"]
|
||||
}
|
||||
},
|
||||
{
|
||||
path: "/generalRules/materialCenter",
|
||||
name: "MaterialCenter",
|
||||
component: () => import("@/views/generalRules/materialCenter/index.vue"),
|
||||
meta: {
|
||||
title: "素材中心 ",
|
||||
showLink: true,
|
||||
showParent: true,
|
||||
roles: ["admin", "common"]
|
||||
}
|
||||
}
|
||||
]
|
||||
} as RouteConfigsTable;
|
@ -0,0 +1,35 @@
|
||||
export default {
|
||||
path: "/inquiryCase",
|
||||
redirect: "/inquiryCase/list",
|
||||
meta: {
|
||||
title: "问诊病历",
|
||||
icon: "terminal",
|
||||
rank: 13
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/inquiryCase/list",
|
||||
name: "InquiryCase",
|
||||
component: () => import("@/views/inquiryCase/list/index.vue"),
|
||||
meta: {
|
||||
title: "问诊病历 ",
|
||||
showLink: true,
|
||||
showParent: true,
|
||||
roles: ["admin", "common"]
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/inquiryCase/estimate",
|
||||
name: "Estimate",
|
||||
component: () => import("@/views/inquiryCase/estimate/index.vue"),
|
||||
meta: {
|
||||
title: "评估",
|
||||
showLink: false,
|
||||
activePath: "/inquiryCase/list",
|
||||
roles: ["admin", "common"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
} as RouteConfigsTable;
|
@ -0,0 +1,376 @@
|
||||
<script setup lang="ts">
|
||||
import { nextTick, reactive, ref } from "vue";
|
||||
import {
|
||||
addBodyInspect,
|
||||
queryPhysicalToolList,
|
||||
queryTreeDiseasePhysical,
|
||||
updateBodyInspect
|
||||
} from "@/api/disease";
|
||||
import { FormInstance } from "element-plus";
|
||||
import { message } from "@/utils/message";
|
||||
import { useRoute } from "vue-router";
|
||||
defineOptions({
|
||||
name: "AddEdit"
|
||||
});
|
||||
const props = {
|
||||
value: "id",
|
||||
label: "toolName",
|
||||
children: "toolList",
|
||||
disabled: "flag",
|
||||
|
||||
expandTrigger: "hover" as const
|
||||
};
|
||||
const bodyProps = {
|
||||
value: "id",
|
||||
checkStrictly: true,
|
||||
label: "locationName",
|
||||
children: "child",
|
||||
disabled: "flag"
|
||||
};
|
||||
const bodyTreeList = ref([]);
|
||||
const route = useRoute();
|
||||
const isEditFlag = ref(false);
|
||||
const requireLocationFlag = ref(false);
|
||||
const id = ref("");
|
||||
const dialogVisible = ref(false);
|
||||
const formData = reactive({
|
||||
toolIdPath: [],
|
||||
diagnosticCriteria: [],
|
||||
locationId: "",
|
||||
locationIdPath: [],
|
||||
expectedDiagnosisResult: undefined,
|
||||
diagnosticRes: "",
|
||||
result: "",
|
||||
requireCheckFlag: "",
|
||||
toolId: "",
|
||||
normalResult: ""
|
||||
});
|
||||
const ruleFormRef = ref<FormInstance>();
|
||||
const bodyToolList = ref([]);
|
||||
const cascaderRef = ref();
|
||||
const locationIdPathRef = ref();
|
||||
const handleChange = item => {
|
||||
const dataInfo = cascaderRef.value.getCheckedNodes();
|
||||
if (dataInfo && dataInfo.length > 0) {
|
||||
if (dataInfo[0].data.requireLocation === 1) {
|
||||
requireLocationFlag.value = true;
|
||||
} else {
|
||||
requireLocationFlag.value = false;
|
||||
}
|
||||
}
|
||||
|
||||
formData.toolId = item[item.length - 1];
|
||||
getBodyTree();
|
||||
formData.locationIdPath = [];
|
||||
formData.locationId = "";
|
||||
formData.result = "";
|
||||
formData.normalResult = "";
|
||||
formData.expectedDiagnosisResult = undefined;
|
||||
};
|
||||
const handleLocationChange = item => {
|
||||
formData.locationId = item[item.length - 1];
|
||||
formData.result = "";
|
||||
formData.expectedDiagnosisResult = undefined;
|
||||
const dataInfo = locationIdPathRef.value.getCheckedNodes();
|
||||
if (dataInfo && dataInfo.length > 0 && dataInfo[0].data.indicatorValue) {
|
||||
formData.normalResult = dataInfo[0].data.indicatorValue;
|
||||
}
|
||||
};
|
||||
const rules = {
|
||||
toolIdPath: [
|
||||
{ required: true, message: "请选择体格检查项", trigger: "change" }
|
||||
],
|
||||
requireCheckFlag: [
|
||||
{ required: true, message: "请选择是否必查", trigger: "change" }
|
||||
],
|
||||
expectedDiagnosisResult: [
|
||||
{ required: true, message: "请选择预期诊断结果", trigger: "change" }
|
||||
],
|
||||
result: [{ required: true, message: "请输入异常结果", trigger: "change" }]
|
||||
};
|
||||
const getPhysicalToolList = async () => {
|
||||
const res: any = await queryPhysicalToolList();
|
||||
bodyToolList.value = res.data;
|
||||
};
|
||||
defineExpose({
|
||||
async open(item) {
|
||||
getPhysicalToolList();
|
||||
dialogVisible.value = true;
|
||||
await nextTick;
|
||||
isEditFlag.value = false;
|
||||
if (item) {
|
||||
for (const key in item) {
|
||||
// eslint-disable-next-line no-prototype-builtins
|
||||
if (formData.hasOwnProperty(key)) {
|
||||
formData[key] = item[key];
|
||||
}
|
||||
}
|
||||
if (item.locationIdPath && item.locationIdPath.length > 0) {
|
||||
requireLocationFlag.value = true;
|
||||
} else {
|
||||
requireLocationFlag.value = false;
|
||||
}
|
||||
getBodyTree();
|
||||
isEditFlag.value = true;
|
||||
id.value = item.id;
|
||||
}
|
||||
}
|
||||
});
|
||||
const resetForm = () => {
|
||||
ruleFormRef.value.resetFields();
|
||||
formData.result = "";
|
||||
formData.expectedDiagnosisResult = "";
|
||||
};
|
||||
const reset = () => {
|
||||
if (isEditFlag.value) {
|
||||
ruleFormRef.value.resetFields([
|
||||
"expectedDiagnosisResult",
|
||||
"normalResult",
|
||||
"result",
|
||||
"diagnosticCriteria",
|
||||
"requireCheckFlag"
|
||||
]);
|
||||
} else {
|
||||
ruleFormRef.value.resetFields();
|
||||
}
|
||||
formData.result = "";
|
||||
formData.expectedDiagnosisResult = "";
|
||||
};
|
||||
const closeDialog = () => {
|
||||
dialogVisible.value = false;
|
||||
resetForm();
|
||||
};
|
||||
const emit = defineEmits(["update"]);
|
||||
|
||||
// 查询部位树
|
||||
const getBodyTree = async () => {
|
||||
const res: any = await queryTreeDiseasePhysical({
|
||||
diseaseId: route.query.id,
|
||||
toolId: formData.toolId
|
||||
});
|
||||
bodyTreeList.value = res.data;
|
||||
};
|
||||
const save = (formEl: FormInstance | undefined) => {
|
||||
formEl.validate(async (valid, fields) => {
|
||||
if (valid) {
|
||||
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" });
|
||||
dialogVisible.value = false;
|
||||
id.value = "";
|
||||
emit("update");
|
||||
}
|
||||
} else {
|
||||
const res: any = await addBodyInspect(params);
|
||||
if (res.code === 200) {
|
||||
dialogVisible.value = false;
|
||||
message("新增成功", { type: "success" });
|
||||
emit("update");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return fields;
|
||||
}
|
||||
});
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<el-drawer
|
||||
:size="800"
|
||||
append-to-body
|
||||
v-model="dialogVisible"
|
||||
:show-close="false"
|
||||
:with-header="false"
|
||||
:before-close="closeDialog"
|
||||
custom-class="AddEdit"
|
||||
>
|
||||
<div class="AddEdit">
|
||||
<div class="header-title">
|
||||
<div class="tip" />
|
||||
<span>体格检查</span>
|
||||
</div>
|
||||
<div class="line" />
|
||||
<el-form
|
||||
ref="ruleFormRef"
|
||||
:model="formData"
|
||||
:rules="rules"
|
||||
label-width="100px"
|
||||
>
|
||||
<el-form-item label="疾病名称:" prop="code">
|
||||
<!-- <span>{{ route.query.diseaseName }}</span> -->
|
||||
<el-input size="large" readonly v-model="route.query.diseaseName" />
|
||||
</el-form-item>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="体格检查项:" prop="toolIdPath">
|
||||
<el-cascader
|
||||
:disabled="isEditFlag"
|
||||
ref="cascaderRef"
|
||||
style="width: 100%"
|
||||
size="large"
|
||||
v-model="formData.toolIdPath"
|
||||
:options="bodyToolList"
|
||||
:props="props"
|
||||
@change="handleChange"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row v-if="requireLocationFlag">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="检查部位:" prop="locationIdPath">
|
||||
<el-cascader
|
||||
:disabled="isEditFlag"
|
||||
ref="locationIdPathRef"
|
||||
size="large"
|
||||
style="width: 100%"
|
||||
v-model="formData.locationIdPath"
|
||||
:options="bodyTreeList"
|
||||
:props="bodyProps"
|
||||
@change="handleLocationChange"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="预期结果:" prop="expectedDiagnosisResult">
|
||||
<el-radio-group
|
||||
@change="formData.result = ''"
|
||||
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-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="正常结果:" prop="normalResult">
|
||||
<el-input
|
||||
size="large"
|
||||
v-model="formData.normalResult"
|
||||
placeholder="请输入正常结果"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-if="formData.expectedDiagnosisResult === 1">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="异常结果:" prop="result">
|
||||
<el-input
|
||||
size="large"
|
||||
v-model="formData.result"
|
||||
placeholder="请输入异常结果"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</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="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="trait">
|
||||
<WangEditor ref="refWangEditor" />
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="footer_btn">
|
||||
<div class="reset" @click="reset()">重置</div>
|
||||
<div class="main" @click="save(ruleFormRef)">确定</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.AddEdit {
|
||||
.header-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
// border-left: 6px solid #4287ff;
|
||||
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #2b3f54;
|
||||
|
||||
.tip {
|
||||
width: 6px;
|
||||
height: 20px;
|
||||
margin-right: 10px;
|
||||
line-height: 20px;
|
||||
background: #4287ff;
|
||||
}
|
||||
}
|
||||
|
||||
.line {
|
||||
position: relative;
|
||||
left: -20px;
|
||||
width: 755px;
|
||||
height: 1px;
|
||||
margin: 24px 0;
|
||||
background: rgb(91 139 255 / 30%);
|
||||
}
|
||||
|
||||
.footer_btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
margin-top: 16px;
|
||||
|
||||
.reset {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
margin-right: 24px;
|
||||
font-size: 16px;
|
||||
font-weight: 400;
|
||||
line-height: 48px;
|
||||
color: #4287ff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #fff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.main {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
font-size: 16px;
|
||||
line-height: 48px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #4287ff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
@ -0,0 +1,197 @@
|
||||
<script setup lang="ts">
|
||||
import { reactive, ref } from "vue";
|
||||
import { addSave, update, queryPageList } from "@/api/disease";
|
||||
import { FormInstance } from "element-plus";
|
||||
import { message } from "@/utils/message";
|
||||
import { nextTick } from "vue";
|
||||
defineOptions({
|
||||
name: "AddComplexDiseases"
|
||||
});
|
||||
const dialogVisible = ref(false);
|
||||
const title = ref("");
|
||||
const formData = reactive({
|
||||
diseaseName: "",
|
||||
diseaseNameAlias: "",
|
||||
symptom: "",
|
||||
containDiseaseIds: [],
|
||||
id: undefined
|
||||
});
|
||||
const ruleFormRef = ref<FormInstance>();
|
||||
const rules = {
|
||||
diseaseNameAlias: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
diseaseName: [
|
||||
{ required: true, message: "请输入疾病分类名称", trigger: "change" }
|
||||
]
|
||||
};
|
||||
|
||||
const diseaseList = ref([]);
|
||||
defineExpose({
|
||||
async open(type, item) {
|
||||
dialogVisible.value = true;
|
||||
await nextTick();
|
||||
getDiseaseList();
|
||||
if (type === "add") {
|
||||
title.value = "新增复合疾病";
|
||||
} else {
|
||||
title.value = "编辑复合疾病";
|
||||
// formData = JSON.parse(JSON.stringify(item));
|
||||
formData.diseaseNameAlias = item.diseaseNameAlias;
|
||||
formData.diseaseName = item.diseaseName;
|
||||
formData.containDiseaseIds = item.containDiseaseIds;
|
||||
formData.symptom = item.symptom;
|
||||
formData.id = item.id;
|
||||
}
|
||||
}
|
||||
});
|
||||
const getDiseaseList = async () => {
|
||||
const params = {
|
||||
pageNum: 1,
|
||||
pageSize: 99999,
|
||||
diseaseName: ""
|
||||
};
|
||||
const res: any = await queryPageList(params);
|
||||
diseaseList.value = res.data.records;
|
||||
};
|
||||
const resetForm = () => {
|
||||
ruleFormRef.value.resetFields();
|
||||
};
|
||||
const closeDialog = () => {
|
||||
dialogVisible.value = false;
|
||||
resetForm();
|
||||
};
|
||||
const selectDisease = val => {
|
||||
const list = [];
|
||||
for (const item of val) {
|
||||
diseaseList.value.forEach(res => {
|
||||
if (res.id === item) {
|
||||
list.push(res.diseaseNameAlias);
|
||||
}
|
||||
});
|
||||
}
|
||||
formData.diseaseNameAlias = list.join(",");
|
||||
};
|
||||
const emit = defineEmits(["update"]);
|
||||
const save = (formEl: FormInstance | undefined) => {
|
||||
formEl.validate(async (valid, fields) => {
|
||||
if (valid) {
|
||||
if (title.value === "编辑复合疾病") {
|
||||
const {
|
||||
containDiseaseIds,
|
||||
diseaseName,
|
||||
diseaseNameAlias,
|
||||
symptom,
|
||||
id
|
||||
} = formData;
|
||||
|
||||
const res: any = await update({
|
||||
containDiseaseIds,
|
||||
diseaseName,
|
||||
diseaseNameAlias,
|
||||
symptom,
|
||||
id
|
||||
});
|
||||
if (res.code === 200) {
|
||||
closeDialog();
|
||||
emit("update");
|
||||
message("编辑成功", { type: "success" });
|
||||
}
|
||||
} else {
|
||||
const { containDiseaseIds, diseaseName, diseaseNameAlias, symptom } =
|
||||
formData;
|
||||
const res: any = await addSave({
|
||||
containDiseaseIds,
|
||||
diseaseName,
|
||||
diseaseNameAlias,
|
||||
symptom
|
||||
});
|
||||
if (res.code === 200) {
|
||||
closeDialog();
|
||||
emit("update");
|
||||
message("新增成功", { type: "success" });
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return fields;
|
||||
}
|
||||
});
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<el-drawer
|
||||
width="800"
|
||||
append-to-body
|
||||
v-model="dialogVisible"
|
||||
:show-close="false"
|
||||
:with-header="false"
|
||||
:before-close="closeDialog"
|
||||
custom-class="AddEdit"
|
||||
>
|
||||
<div class="AddEdit">
|
||||
<div class="header-title">
|
||||
<div class="tip" />
|
||||
<span>{{ title }}</span>
|
||||
</div>
|
||||
<div class="line" />
|
||||
<el-form
|
||||
ref="ruleFormRef"
|
||||
:model="formData"
|
||||
:rules="rules"
|
||||
label-width="120px"
|
||||
>
|
||||
<el-form-item label="疾病分类:" prop="containDiseaseIds">
|
||||
<el-select
|
||||
style="width: 100%"
|
||||
size="large"
|
||||
filterable
|
||||
multiple
|
||||
v-model="formData.containDiseaseIds"
|
||||
placeholder="请选择"
|
||||
@change="selectDisease"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in diseaseList"
|
||||
:key="item.id"
|
||||
:label="item.diseaseName"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="疾病分类别名:" prop="diseaseNameAlias">
|
||||
<el-input
|
||||
readonly
|
||||
v-model="formData.diseaseNameAlias"
|
||||
size="large"
|
||||
placeholder="请输入疾病分类别名"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="疾病分类名称:" prop="diseaseName">
|
||||
<el-input
|
||||
size="large"
|
||||
maxlength="20"
|
||||
show-word-limit
|
||||
v-model="formData.diseaseName"
|
||||
placeholder="请输入疾病分类名称"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="症状:" prop="symptom">
|
||||
<el-input
|
||||
size="large"
|
||||
maxlength="20"
|
||||
show-word-limit
|
||||
v-model="formData.symptom"
|
||||
placeholder="请输入症状"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="footer_btn">
|
||||
<div class="reset" @click="resetForm()">重置</div>
|
||||
<div class="main" @click="save(ruleFormRef)">确定</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
@ -0,0 +1,371 @@
|
||||
<script setup lang="ts">
|
||||
import { nextTick, reactive, ref } from "vue";
|
||||
import {
|
||||
saveDiseaseTreatmentPlan,
|
||||
updateDiseaseTreatmentPlann,
|
||||
queryTreeTreatmentPlan
|
||||
} from "@/api/disease";
|
||||
import { queryDrugManagePageList } from "@/api/inquiryManagement";
|
||||
import { FormInstance } from "element-plus";
|
||||
import { message } from "@/utils/message";
|
||||
import { useRoute } from "vue-router";
|
||||
|
||||
defineOptions({
|
||||
name: "AddEdit"
|
||||
});
|
||||
import { queryCommonDictTree } from "@/api/utils";
|
||||
const route = useRoute();
|
||||
const isEditFlag = ref(false);
|
||||
const id = ref("");
|
||||
const dialogVisible = ref(false);
|
||||
const formData = reactive({
|
||||
id: "",
|
||||
disposalPlanId: "",
|
||||
firstMeasuresId: "",
|
||||
disposalMethod: "",
|
||||
drugIds: []
|
||||
});
|
||||
const dosageFormList = ref([]);
|
||||
const ruleFormRef = ref<FormInstance>();
|
||||
const firstMeasuresList = ref([]);
|
||||
const medicationList = ref([]);
|
||||
const rules = {
|
||||
disposalMethod: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
disposalPlanId: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
drugIds: [{ required: true, message: "请选择", trigger: "change" }]
|
||||
};
|
||||
const disposalMethodFlag = ref(false);
|
||||
defineExpose({
|
||||
async add(val) {
|
||||
dialogVisible.value = true;
|
||||
await nextTick;
|
||||
isEditFlag.value = false;
|
||||
getDosageFormList();
|
||||
if (val !== null) {
|
||||
formData.disposalMethod = val;
|
||||
getTree(val);
|
||||
disposalMethodFlag.value = true;
|
||||
} else {
|
||||
disposalMethodFlag.value = false;
|
||||
}
|
||||
},
|
||||
async edit(item) {
|
||||
getDosageFormList();
|
||||
disposalMethodFlag.value = true;
|
||||
dialogVisible.value = true;
|
||||
await nextTick;
|
||||
if (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;
|
||||
}
|
||||
getDrugList(formData.firstMeasuresId);
|
||||
const res: any = await queryTreeTreatmentPlan({
|
||||
diseaseId: route.query.id,
|
||||
disposalMethod: formData.disposalMethod
|
||||
});
|
||||
disposalPlanList.value = res.data;
|
||||
if (formData.disposalPlanId) {
|
||||
disposalPlanList.value.forEach(res => {
|
||||
if (res.id === formData.disposalPlanId) {
|
||||
firstMeasuresList.value = res.child;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
const resetForm = () => {
|
||||
if (disposalMethodFlag.value) {
|
||||
ruleFormRef.value.resetFields([
|
||||
"disposalPlanId",
|
||||
"firstMeasuresId",
|
||||
"drugIds"
|
||||
]);
|
||||
} else {
|
||||
ruleFormRef.value.resetFields();
|
||||
}
|
||||
|
||||
firstMeasuresList.value = [];
|
||||
formData.firstMeasuresId = "";
|
||||
isEditFlag.value = false;
|
||||
};
|
||||
const closeDialog = () => {
|
||||
dialogVisible.value = false;
|
||||
resetForm();
|
||||
};
|
||||
const emit = defineEmits(["update"]);
|
||||
const disposalPlanList = ref([]);
|
||||
const handleChange = val => {
|
||||
disposalPlanList.value.forEach(res => {
|
||||
if (res.id === val) {
|
||||
firstMeasuresList.value = res.child;
|
||||
}
|
||||
});
|
||||
formData.drugIds = [];
|
||||
formData.firstMeasuresId = "";
|
||||
};
|
||||
const getDosageFormList = async () => {
|
||||
const res: any = await queryCommonDictTree({ groupCode: "DOSE" });
|
||||
dosageFormList.value = res.data;
|
||||
};
|
||||
const submit = (formEl: FormInstance | undefined) => {
|
||||
formEl.validate(async (valid, fields) => {
|
||||
if (valid) {
|
||||
if (isEditFlag.value) {
|
||||
const res: any = await updateDiseaseTreatmentPlann({
|
||||
...formData,
|
||||
diseaseId: route.query.id
|
||||
});
|
||||
if (res.code === 200) {
|
||||
message("提交成功", { type: "success" });
|
||||
formData.disposalMethod = "";
|
||||
|
||||
emit("update");
|
||||
dialogVisible.value = false;
|
||||
}
|
||||
} else {
|
||||
const res: any = await saveDiseaseTreatmentPlan({
|
||||
...formData,
|
||||
diseaseId: route.query.id,
|
||||
id: undefined
|
||||
});
|
||||
if (res.code === 200) {
|
||||
message("提交成功", { type: "success" });
|
||||
formData.disposalMethod = "";
|
||||
emit("update");
|
||||
dialogVisible.value = false;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return fields;
|
||||
}
|
||||
});
|
||||
};
|
||||
const selectType = val => {
|
||||
getTree(val);
|
||||
};
|
||||
const getDrugList = async val => {
|
||||
if (formData.disposalPlanId === "8") {
|
||||
const res: any = await queryDrugManagePageList({
|
||||
pageNum: 1,
|
||||
pageSize: 99999,
|
||||
dosageForm: val
|
||||
});
|
||||
medicationList.value = res.data.records;
|
||||
}
|
||||
};
|
||||
const getTree = async val => {
|
||||
const res: any = await queryTreeTreatmentPlan({
|
||||
diseaseId: route.query.id,
|
||||
disposalMethod: val
|
||||
});
|
||||
disposalPlanList.value = res.data;
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<el-drawer
|
||||
:size="800"
|
||||
append-to-body
|
||||
v-model="dialogVisible"
|
||||
:show-close="false"
|
||||
:with-header="false"
|
||||
:before-close="closeDialog"
|
||||
custom-class="AddEdit"
|
||||
>
|
||||
<div class="AddEdit">
|
||||
<div class="header-title">
|
||||
<div class="tip" />
|
||||
<span>处置计划</span>
|
||||
</div>
|
||||
<div class="line" />
|
||||
<el-form
|
||||
ref="ruleFormRef"
|
||||
:model="formData"
|
||||
:rules="rules"
|
||||
label-width="100px"
|
||||
>
|
||||
<el-form-item
|
||||
label="处置方式:"
|
||||
style="margin-bottom: 0"
|
||||
prop="disposalMethod"
|
||||
>
|
||||
<el-radio-group
|
||||
:disabled="disposalMethodFlag"
|
||||
v-model="formData.disposalMethod"
|
||||
@change="selectType"
|
||||
>
|
||||
<el-radio :label="0" size="large">门诊收治</el-radio>
|
||||
<el-radio :label="1" size="large">入院治疗</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<div class="add_tip">该疾病处置方式配置后不支持修改</div>
|
||||
<el-form-item label="处置计划:" prop="disposalPlanId">
|
||||
<el-select
|
||||
filterable
|
||||
size="large"
|
||||
v-model="formData.disposalPlanId"
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
@change="handleChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in disposalPlanList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="formData.disposalPlanId !== '8'"
|
||||
label="一级措施"
|
||||
prop="firstMeasuresId"
|
||||
>
|
||||
<el-select
|
||||
filterable
|
||||
size="large"
|
||||
v-model="formData.firstMeasuresId"
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in firstMeasuresList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="formData.disposalPlanId === '8'"
|
||||
label="一级措施"
|
||||
prop="firstMeasuresId"
|
||||
>
|
||||
<el-select
|
||||
filterable
|
||||
size="large"
|
||||
v-model="formData.firstMeasuresId"
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
@change="getDrugList"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in dosageFormList"
|
||||
:key="item.code"
|
||||
:label="item.nameZh"
|
||||
:value="item.code"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="formData.disposalPlanId === '8'"
|
||||
label="选择药品"
|
||||
prop="drugIds"
|
||||
>
|
||||
<el-select
|
||||
filterable
|
||||
size="large"
|
||||
multiple
|
||||
v-model="formData.drugIds"
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in medicationList"
|
||||
:key="item.id"
|
||||
:label="item.drugName"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="footer_btn">
|
||||
<div class="reset" @click="resetForm()">重置</div>
|
||||
<div class="main" @click="submit(ruleFormRef)">确定</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.AddEdit {
|
||||
.header-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
// border-left: 6px solid #4287ff;
|
||||
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #2b3f54;
|
||||
|
||||
.tip {
|
||||
width: 6px;
|
||||
height: 20px;
|
||||
margin-right: 10px;
|
||||
line-height: 20px;
|
||||
background: #4287ff;
|
||||
}
|
||||
}
|
||||
|
||||
.add_tip {
|
||||
margin-bottom: 12px;
|
||||
margin-left: 100px;
|
||||
font-size: 12px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.line {
|
||||
position: relative;
|
||||
left: -20px;
|
||||
width: 755px;
|
||||
height: 1px;
|
||||
margin: 24px 0;
|
||||
background: rgb(91 139 255 / 30%);
|
||||
}
|
||||
|
||||
.footer_btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
margin-top: 16px;
|
||||
|
||||
.reset {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
margin-right: 24px;
|
||||
font-size: 16px;
|
||||
font-weight: 400;
|
||||
line-height: 48px;
|
||||
color: #4287ff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #fff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.main {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
font-size: 16px;
|
||||
line-height: 48px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #4287ff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
@ -0,0 +1,316 @@
|
||||
<script setup lang="ts">
|
||||
import { nextTick, reactive, ref } from "vue";
|
||||
import {
|
||||
addSupportInspect,
|
||||
queryAncillaryItemList,
|
||||
updateSupportInspect
|
||||
} from "@/api/disease";
|
||||
import { FormInstance } from "element-plus";
|
||||
import { message } from "@/utils/message";
|
||||
import WangEditor from "@/components/WangEditor/index.vue";
|
||||
import { useRoute } from "vue-router";
|
||||
defineOptions({
|
||||
name: "AddEdit"
|
||||
});
|
||||
const props = {
|
||||
value: "id",
|
||||
label: "itemName",
|
||||
children: "itemList",
|
||||
disabled: "flag",
|
||||
expandTrigger: "hover" as const
|
||||
};
|
||||
const refWangEditor = ref();
|
||||
const route = useRoute();
|
||||
const isEditFlag = ref(false);
|
||||
const id = ref("");
|
||||
const dialogVisible = ref(false);
|
||||
|
||||
const formData = reactive({
|
||||
itemIdPath: [],
|
||||
diagnosticCriteria: [],
|
||||
locationDiagnosisFlag: "",
|
||||
result: "",
|
||||
requireCheckFlag: "",
|
||||
diagnosisAssessmentFlag: "",
|
||||
expectedDiagnosisResult: null,
|
||||
itemId: "",
|
||||
normalResult: ""
|
||||
});
|
||||
const ruleFormRef = ref<FormInstance>();
|
||||
const supportToolList = ref([]);
|
||||
const handleChange = item => {
|
||||
formData.itemId = item[item.length - 1];
|
||||
};
|
||||
|
||||
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 getPhysicalToolList = async () => {
|
||||
const res: any = await queryAncillaryItemList({
|
||||
diseaseId: route.query.id
|
||||
});
|
||||
supportToolList.value = res.data;
|
||||
};
|
||||
defineExpose({
|
||||
async open(item) {
|
||||
getPhysicalToolList();
|
||||
dialogVisible.value = true;
|
||||
await nextTick();
|
||||
if (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;
|
||||
|
||||
nextTick(() => {
|
||||
setTimeout(() => {
|
||||
refWangEditor.value.initText(item.result);
|
||||
}, 200);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
const resetForm = () => {
|
||||
ruleFormRef.value.resetFields();
|
||||
};
|
||||
const closeDialog = () => {
|
||||
dialogVisible.value = false;
|
||||
isEditFlag.value = false;
|
||||
resetForm();
|
||||
};
|
||||
const emit = defineEmits(["update"]);
|
||||
const reset = () => {
|
||||
if (isEditFlag.value) {
|
||||
ruleFormRef.value.resetFields([
|
||||
"diagnosticCriteria",
|
||||
"diagnosisAssessmentFlag",
|
||||
"requireCheckFlag",
|
||||
"expectedDiagnosisResult",
|
||||
"normalResult"
|
||||
]);
|
||||
} else {
|
||||
ruleFormRef.value.resetFields();
|
||||
}
|
||||
|
||||
// refWangEditor.value.valueHtml = "";
|
||||
};
|
||||
const changeResult = val => {
|
||||
if (val === 0) {
|
||||
formData.normalResult = "";
|
||||
}
|
||||
};
|
||||
const save = (formEl: FormInstance | undefined) => {
|
||||
formEl.validate(async (valid, fields) => {
|
||||
if (valid) {
|
||||
// formData.result = refWangEditor.value.valueHtml;
|
||||
const params = {
|
||||
...formData,
|
||||
result: refWangEditor.value.valueHtml,
|
||||
diseaseId: route.query.id
|
||||
};
|
||||
if (isEditFlag.value) {
|
||||
const res: any = await updateSupportInspect({
|
||||
...params,
|
||||
id: id.value
|
||||
});
|
||||
if (res.code === 200) {
|
||||
message("修改成功", { type: "success" });
|
||||
id.value = "";
|
||||
}
|
||||
} else {
|
||||
const res: any = await addSupportInspect(params);
|
||||
if (res.code === 200) {
|
||||
message("新增成功", { type: "success" });
|
||||
}
|
||||
}
|
||||
dialogVisible.value = false;
|
||||
emit("update");
|
||||
} else {
|
||||
return fields;
|
||||
}
|
||||
});
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<el-drawer
|
||||
:size="800"
|
||||
append-to-body
|
||||
v-model="dialogVisible"
|
||||
:show-close="false"
|
||||
:with-header="false"
|
||||
:before-close="closeDialog"
|
||||
custom-class="AddEdit"
|
||||
>
|
||||
<div class="AddEdit">
|
||||
<div class="header-title">
|
||||
<div class="tip" />
|
||||
<span>辅助检查</span>
|
||||
</div>
|
||||
<div class="line" />
|
||||
<el-form
|
||||
ref="ruleFormRef"
|
||||
:model="formData"
|
||||
:rules="rules"
|
||||
label-width="120px"
|
||||
>
|
||||
<el-form-item label="疾病名称:" prop="code">
|
||||
<span>{{ route.query.diseaseName }}</span>
|
||||
</el-form-item>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="辅助查项:" prop="itemIdPath">
|
||||
<el-cascader
|
||||
:disabled="isEditFlag"
|
||||
style="width: 100%"
|
||||
size="large"
|
||||
v-model="formData.itemIdPath"
|
||||
:options="supportToolList"
|
||||
:props="props"
|
||||
@change="handleChange"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</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-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-form-item label="预期诊断结果:" prop="expectedDiagnosisResult">
|
||||
<el-radio-group
|
||||
@change="changeResult"
|
||||
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
|
||||
v-if="formData.expectedDiagnosisResult === 1"
|
||||
label="正常结果:"
|
||||
prop="normalResult"
|
||||
>
|
||||
<el-input
|
||||
size="large"
|
||||
v-model="formData.normalResult"
|
||||
placeholder="请输入"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="诊断结果:" prop="result">
|
||||
<WangEditor v-if="dialogVisible" ref="refWangEditor" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="footer_btn">
|
||||
<div class="reset" @click="reset()">重置</div>
|
||||
<div class="main" @click="save(ruleFormRef)">确定</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.AddEdit {
|
||||
:deep(.el-form-item__label) {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
// border-left: 6px solid #4287ff;
|
||||
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #2b3f54;
|
||||
|
||||
.tip {
|
||||
width: 6px;
|
||||
height: 20px;
|
||||
margin-right: 10px;
|
||||
line-height: 20px;
|
||||
background: #4287ff;
|
||||
}
|
||||
}
|
||||
|
||||
.line {
|
||||
position: relative;
|
||||
left: -20px;
|
||||
width: 755px;
|
||||
height: 1px;
|
||||
margin: 24px 0;
|
||||
background: rgb(91 139 255 / 30%);
|
||||
}
|
||||
|
||||
.footer_btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
margin-top: 16px;
|
||||
|
||||
.reset {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
margin-right: 24px;
|
||||
font-size: 16px;
|
||||
font-weight: 400;
|
||||
line-height: 48px;
|
||||
color: #4287ff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #fff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.main {
|
||||
width: 188px;
|
||||
height: 48px;
|
||||
font-size: 16px;
|
||||
line-height: 48px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background: #4287ff;
|
||||
border: 1px solid #4287ff;
|
||||
border-radius: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|