From 9deadf208336ed4507ae8ffa7186ff44072569f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A4=A9=E9=AA=84?= <5307576@qq.com> Date: Mon, 15 Jun 2026 17:28:35 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20ai=E7=94=9F=E6=88=90=E7=97=85=E4=BE=8B?= =?UTF-8?q?=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 2 +- src/api/cases.ts | 51 ++- src/api/users.ts | 2 +- src/assets/images/logo.png | Bin 0 -> 145298 bytes src/assets/styles/main.scss | 100 ++++- src/layouts/AdminLayout.vue | 30 +- src/router/index.ts | 2 +- src/views/AiCaseGenerateView.vue | 671 +++++++++++++++++++++++++++++-- src/views/CasesView.vue | 620 ++++++++++++++++++++++++---- src/views/LoginView.vue | 8 +- src/views/ModuleView.vue | 2 +- 11 files changed, 1353 insertions(+), 135 deletions(-) create mode 100644 src/assets/images/logo.png diff --git a/index.html b/index.html index 46d9818c..80948d5f 100644 --- a/index.html +++ b/index.html @@ -3,7 +3,7 @@ - MediAI - 医疗AI平台管理系统 + 新方正集团
diff --git a/src/api/cases.ts b/src/api/cases.ts index 32d89bb3..5977e418 100644 --- a/src/api/cases.ts +++ b/src/api/cases.ts @@ -49,6 +49,7 @@ export interface CaseExamItemPayload { item_code: string item_name?: string item_type?: string + result_text?: string } export interface CreateCaseDraftPayload { @@ -111,9 +112,17 @@ export interface AiGenerateCaseResult { raw: unknown } +export interface ImportCasePdfResult { + parseId: string + caseType: DraftCaseType + data: Record + raw: unknown +} + export interface ImportCasePdfParams { token: string file: File + case_type: DraftCaseType } export interface UpdateCaseRelationsPayload { @@ -133,6 +142,12 @@ export interface CaseActionParams { id: string | number } +export interface SubmitCasePayload extends CreateCaseDraftPayload {} + +export interface SubmitCaseParams extends CaseActionParams { + payload?: SubmitCasePayload +} + const listKeys = ['results', 'list', 'rows', 'items', 'records', 'cases'] const totalKeys = ['count', 'total', 'total_count', 'totalCount'] @@ -231,6 +246,10 @@ function getStringList(record: Record, keys: string[]): string[ return [] } +function normalizeDraftCaseType(value: string, fallback: DraftCaseType = 'traditional'): DraftCaseType { + return value === 'teaching' ? 'teaching' : fallback +} + function normalizePublishStatus(value: unknown): CasePublishStatus | null { if (value === 0 || value === 1 || value === 2) { return value @@ -384,6 +403,22 @@ function normalizeAiGenerateResult(data: unknown): AiGenerateCaseResult { } } +function normalizeImportCasePdfResult(data: unknown, fallbackCaseType: DraftCaseType): ImportCasePdfResult { + const root = getRecord(data) + const payload = root.parse_id || root.parseId || root.case_type || root.caseType || root.title + ? root + : getRecord(root.data) + const nestedData = getRecord(payload.data) + const generatedData = Object.keys(nestedData).length ? nestedData : payload + + return { + parseId: getString(payload, ['parse_id', 'parseId']), + caseType: normalizeDraftCaseType(getString(payload, ['case_type', 'caseType']), fallbackCaseType), + data: generatedData, + raw: data + } +} + function createCaseQuery(params: Partial) { const query = new URLSearchParams() if (params.search?.trim()) { @@ -489,9 +524,10 @@ export async function generateCaseWithAi(params: AiGenerateCaseParams): Promise< return normalizeAiGenerateResult(data) } -export async function importCasePdf(params: ImportCasePdfParams): Promise { +export async function importCasePdf(params: ImportCasePdfParams): Promise { const formData = new FormData() - formData.append('file', params.file) + formData.append('files', params.file) + formData.append('case_type', params.case_type) const response = await fetch('/server/api/cms/cases/import-pdf/', { method: 'POST', @@ -502,7 +538,8 @@ export async function importCasePdf(params: ImportCasePdfParams): Promise { @@ -519,13 +556,15 @@ export async function updateCaseRelations(params: UpdateCaseRelationsParams): Pr return parseMutationResponse(response, '编辑病例关联失败') } -export async function submitCase(params: CaseActionParams): Promise { +export async function submitCase(params: SubmitCaseParams): Promise { const response = await fetch(`/server/api/cms/cases/${params.id}/submit/`, { method: 'POST', headers: { Accept: 'application/json', - Authorization: createAuthorization(params.token) - } + Authorization: createAuthorization(params.token), + ...(params.payload ? { 'Content-Type': 'application/json' } : {}) + }, + ...(params.payload ? { body: JSON.stringify(params.payload) } : {}) }) return parseMutationResponse(response, '提交病例失败') diff --git a/src/api/users.ts b/src/api/users.ts index 5a1b8363..0e455157 100644 --- a/src/api/users.ts +++ b/src/api/users.ts @@ -394,7 +394,7 @@ export async function resetUserPassword(params: ResetUserPasswordParams): Promis export async function importUsers(params: ImportUsersParams): Promise { const formData = new FormData() - formData.append('file', params.file) + formData.append('files', params.file) const response = await fetch('/server/api/cms/users/import/', { method: 'POST', diff --git a/src/assets/images/logo.png b/src/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..bbad25eac7cdcd2b4e307bb8bf8b304866a95b4e GIT binary patch literal 145298 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‚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≪H>OWCJ<+>f_GP`;4nT{)MGs&5-nngQ6DbW}@ zl^U~^Z!`Eg_YrLej=|Y|O3LCj-UF(4Fbh`dW>H{$&1DD*jm(L-^lT9=He=;;8%H}` z!;y_V4@LWpwD>1tB!r7N!8fcksMhH&DD4)~Ybth}2(f)n)x5BYdyi8tzd{`T*`YLz z5t-xWtlzOh>aOQ>jHrReOo@@5XZ~})%hDyL0EI@0X2OO9^`uZCW|Kzw2sYHa3BMo=8WB;u?Pe-9bqy^*WkQQF=4(#@?}p_uI{$S$DZzuy+IdP3)E-RY@SZjtTo zqXLA6P11Q$PtmembQi@Agf@=JkKU2zINhy%KC0(N-!>$v3h86f0@wxptZ zaNXLVaegW{o9Q*B{XsL`B9rEzkT<$XaD+#Z~yy0e&>sye)$?tYn}l6|IekPMTe_ZOyvanR0rS|-@E0lN|5 zIzPENml|`25ObyxUL0axo3WEM?pV-FshY!uaU@($wo;8C3<5luc~rPsm-Ij(GtUC! zPP1@xQo7I!Xoi;`nQx|IKt#pjjN9_z*OV;fFjoaERwhdn-vV4al#)>i(K#Nbx7Jf+ zQETlh|o0;;Y5_CAVTSz5IQpA5!~NcvqEIT z&cc~K|3C0=zx?Whzxw`LfBDDnzWM6@LrAeas)&sMuNWsv!eXopIe=;5SN21T`s6B_ zRUA8o9I{NJlrNJpMOFEWh0|Hd*C0BS%?;fs#_{&Tf$?E*x~IZZLyudXyK^ZZqz<6T zli2I$NUhFW%Z;pELs>`LGNxsxL+)81p*2j-usIX6^dX=V3UzpL;mh5TiNv)M3K1Xw zA}1aM)^-P-w%fp6t3ITmuUOg*JmVF7kw7*9Oh*WN<`6R%%Nu%)=$~kYe?-zQ8r`W~ zPbd*L`e>js&q`P(ev3nUPAkin%JnT_Bl2qTIB8FfG)HXtII=M}W0T+Zema-dsepI4 z1cDjq3z4aZe}xmDhj#N5`yZ-L4HaFwJi8M_v3m|2<}wYdSEtQW|$ zGX^NAYE_jC+l#(yareL@IdwA}67!KUVVv3cRZdjaGc?XZ2ws$04i^AlK%l>UN3s$` znFsG2IXQ!L$Eaiwaqx`^1WN$`D|PnY#a;^9aER5NaF+B$N{EHmHlAnR`t);u`Te*4 z+wXtvt=j3|TYAczOUgpoo?!M(5)66NLQ4fk&)%{^*#F0*^TyT(DuE2O z7J~Ck8yKdl{bqs{=syHHj*G=Xk41aQe9WZN3)os(B^O(>TcC%!Ep$8pt zT^E8koSGrrej^lL=ciW}rKw!dYfA<(_AM=d$l+4O&=6e;9&s&y;Bxp_y%6js0j6489 z>VuCNLPlyxxNM%#lQ9o1h>gRk2mfcDJo@6Np8XHs`_g~+qp!dHI{%eYx#>%N7D=qD zJxn1onEZBEcLtEa3A#ifVYRfevN{qx0tY`YG|tEFh(|tS?PaA8Z{FM21X5yYOI5kZ zekripbY$-Ip3dIvZOPO@$DpqBhn{0G9RTe(!8pExYV4R`rSWw1=uG1E%$yRM+|pMV z9rM-o(S?sc7V;^6nGIAn20}@Oi?hDKm4iIA!orNeZDxx`8-%$~rmcLUSdWg;LJtTA9)(GmbIfjjO8obr0-`>_%>kHRceiwCe&>3Ur(; zUNS;x(V5XcUa3?|)7m%}09pO)UT!K-x$+&II`kbVql3Blc$*+8E3nQ}aM5PHG7?%Y z-ScE7Kfl=%Pgv3H4X|V6j4!}`+!@T70a%K78u(r%9|xTZTnSeXk3wP;cif8uPvAQF|hIE>7(C%;pJ!l{rBGb z>z};$-W#9v&kx1u9tLI{H_R$?awoI{bZ1~0jOSIG-Z%MUQmwEJ23RyM8dU)Rj6uV4 zu|$oquFW1jC}n^820>5vzTd%fx$9X3Aun0;r=+13FU>kK(@sSaZzM8<$ku5n4$+)3 zl9RFTgBJov&v&k0IDSgklp5MtnlZrvom*Z$mfLU=p zr%`$Z7Su+TUFg#3hIxc172u34w<$7{86Y>tM(oZ>-9>J>Iw>&<*@85>tqt)QCk0Lg zAZcmJoy7S_OO0~&A@^IA(Xn%G6u#piFFD?HbiwM+T3e1>C34@w9pe7H>pw^^ zYUVtY2`Dax!E0_%CQv}f5;I1eDaXq|y`@5CIgiRI7_2~1jJoE4V`J2D^$p_!~{HN|H5pi)OwgYTYD+=vPJwstR zj5s^4{cHr=LZw8BN7c&1QwwxbOW`k(*i{h~A zhnMl1Hu;>bNs|pdEw*4uSo3j>U}9Sl1cliYY94#Hg(@w!wStg*Hn=e5TlWfjPgB0R zX~oOs@Av_f+njbMOW?Z`CW<^HQN0R^cKd8vfRwUq2g7!Nc5OUq7#07Zr$8vf9MOU^ zd*x?fl<*>Q296rNMQqH1Rj*;|hq#AC&wdCc=Arr)PjAnLd8+P5h9-!p?eCJ*fB*`?bQouMUVx) z5XL@i1Gy|MhWY9n_#6>hH@H!xey9Wk9QBqMwN>skcd&HVSp22P#l?*b0zAR^12~1~ zY9c$7&N=*=ocwrLgDO!9nt`@=Ml_47(cZ&@LtyTxsyIXCf;K|jw4t6lxs>=~asT#> zPdxp%-+lA%K79WhU)UCdO4p7xCXv=5xwx9~LdaozQH`O@=~ZE@AuTK-A`YRmm^05Q z8zwZC>o#eiEy60PLtp+T9c5I}$$-6pzl4?RL5xnkarQfI!ln`F7UGUQW9C3csSDKU@>6dL9Jz@I(ix4&Ee|eVxIk+8xn5w zriH1HE;-A*r+_nGQd=SAbhs?mL|~Gv1g2}d!pO9pS#yyQvL3Itxkv>aAlhY4o7KV+ z?Yq3z$`6AwLWM2oHnn>CVZVEbZ^6u*ysVhu2RFj>;fdnxR;kGq4^?F+crnI7dKL(a zQ@8cV-I)i}$xiZ=)bxiA3Cn0*D8gN>q~-dFrXMiNiL+vZ31S^`O(=mZ93yKalQu3r z3W78TP-qCFDfX7Oaq$9Q@o5yxes3`>+T*8hy!6b!`Db7FyPv-Qf&U@oj$QAc8%Adx8Rz&TcHLNK)RS=>P%Q$bAdSVNbXhrT6WiFTJB*nhXO1+DzKy7l9;A0c z$(I-ACT%@Qs^L-!pwEK*%&0%Prvb-<$33&IvNrkMrS=__qG{y};?fs`7hkn#z}a(w zb(e@+@Mz$K2UF+Vy4#Ligs4{l=YfPbY8dmPOZEJNZyL5QLDIoCiRH-Bl8VaLTHvKF%zmu(z9kpa-jJh+WS=96@NX*YS2(1%CDl|CW~#p4>hRG8h7D%tf?HTS%aq3Jx%Q`jNt;&&p_e$BjEG zBe(z#upN=hcK z)6rET<~G@Zr=;mr1V)$$B}H^G0-Z#vM-_%p6B=QBE%~T?=Oo zES!KyK=5Xswo=Gtl_*VZpn;kGp?hyC*wP@nOXwI#*PD4u(a8>U0h?rjXkzS=u0XA2d+K`DkWlrpA{Se)#&0(VfhcahKvYlHmGPCMb{7Z7Eku`LB zIDF4M*^+5Y4XwzK8h7XqCWO^C_*2opmfJDqvb`e?reVCigakSq)(DG;+02ct38V>H zycEobpUN|ge5%wn7})Xl3^=W=puaOsRPQ28~Ngi?9n~k#@;?yV+XHD-^~5+~c2p>(jsa`8U4%?&lx+ zH-#NO%sXOY??^-j`)(xzhz;;aNr&b>*e)M%pyuJZ_gSSv1WS~c2KskoETS~3mWlB5 zY_)CmHY;27P7e&Skp}Vh)(CeFbVzF3l#2n*Uf|QK)o>Xr^`t<1I)1PrApew{JdVyG zZ04YiyM3InOoFStXmc@)$UB|6k-%jVu-EYn!8G;HS1$T?R%}yNaHTm1ZVmBG=N&ku z1uicqyp5d+hKAReX@yQxKgM%#gjIH;-D}^3dUW7}3pCh7%E6+ytu7_v5*AFve(`cN z>NC?)#{^n!F@h|(!()t+TcNc)OU)D=RuGnvyhXO>*;(E~bLAU|qzWEpL2gAr?^`y} zq%AQxizt2$=Gf!C3TbQSKO+?~%O*3<8_@tb6+Ij&%S4TQVqd~EE4x#W7&D+vGEJYWzJHSSAzO|GJo7Dsdv{{lMR_-ibFw;arz=ny;p+IOF%7y1_d=xzN@Tr(D zZ(EK7lKz8n>&aej4XnKiehP~Jt?k2aefsbJ^c&xM?~5-y*Ujb%Jp!N_!9zYx&f>Q| zqoGFKsmqEUDcLyyP5I&A>j)gMQ)G-0kvlqFjH69usaHX)fnY8o)wVr2qfg>k*lwylUyS=4hVUWUV1)CU_Zs$q8}M(F6_fZBPCos zyZfb@b2T{jNE{1|VABv1MBuZz9DKGM(Bi9(L3P3%I%@c$xS*~Sn3{?%y=?lK2tT0Y z-%}hRP4wBp4d2`=dS3FJR&KXaw@HW>atQTUmcUxyyc^7V8zT$LKbW(RP|SFS1yHLB zya{1p+!h{~PBNnrsx(p=Lv${Fi0ktg?}LoJLh6ocHrIA0T5->Dsze$I$QL}U;B*Uu*6XmKB8fBRL ze<7`1Q!!k6Ed7|Qo2S_KUf67MnVJK>WQ|rVY=OdMWNqgy2nRMgX0w@Kz~q#={hjPL z)QFvK`!ySH4RhsU+?WQfO`wc0d7&cu-Jk8Ml#b)(qnoIcuX}PV$7~1}8Kc20ic2ib zl|UJuAvzfFN|T>z0p#vM zSH_-jFnRv$Dil_oc+|_ z|NMg=y#MBl4=IkuhCK~p#e&OqEroSJbU|35i;Qd5FN_Z$Uvrdd1SZVV##y z{uKzx2ziB<4wVj>(}4}AcmaZmnLt@IRisgu>olB`IB`xP7zH>v)aWEFL)@R+-^vSe zOd=%!wiFvPQO+nbYQt!1wDVPy`q`4Z436P<{>T14il^nBTPEDLR2hpNo( zmN@U}JlZX|S}V?aXz2xfWfS<6mpj^<1qNDb8WsknaE)U)sH}`s90bW|ZD5+*9_T@m z3(KB1T0YX!qIS!^XEz;;gw0vx^l)Ko8+c3#V!2A%^#iNobB;N6&|VS{ODbyAkT^hC z@>w8FjgFV^f^82=8fY20;Q4=})DnxxlEU)IOV2&}$u~apKm6GTKm6d$mmcm%E=+7F z_Zkx-D8CdM`5%X^a8qdpZ;c#!d(DB%%gD0vhnUpPCce7r+*DXn=35FrtvE8?>TyTw zUVL$3vQ`G`Rn0PR8$ErCAdVLf%u!Kc2fdn3hgQ1+*(jEb<4KnTFFb6;tgAf^nHL4v z8P6Bhx<#X{8HpfFE@i3Kbp)#cF$lygLVMk8qFFM~z8whslt4k1zUgyW>degQB|P(>pkXE#)gqD4mB2)m^a|j@NRKYk7bl?| zvH-QPkh1VvV}rxYvoZHQEF`cN+x|nGubN)j_tyF3>jm1)*D8YrVOBJ6*z$x%cGBRO zYeT^97OQ*2HfbX+xmg1<6uh(*uO(!vVorK4dmhPm%1B^owTWk)b=SOK2jg-;6e338 z2GHDc#LGw(Vhd?G5??1pi-n}EJfJ-~t{VAS8N2M5urwJbz=M~bedfm>_#Z<4_=7Kf z{2~7d0moflLi&=)J-HFC$z%Jn!SOP?I5{hbkH)j(!pn!#<0a5pV3x?Ogzj~#sOE`; z884wI>t3RC+(JatAaWs;BXILY$eNA=7l_CBn z2z4xIoeCmmB02>KF}B6xWThsy-7P#gun~Ex6zPn-u2A?HHs4QlLC2cN-Vq%Y#Ohq?{+_Z^s#3j|M9!8{`#k1|Ir6;ou?Qpqmi`r94RJ)P$%7KJ!{}3 zWXIHSUFoNyyQ5r`B6m%vMMxLfj9u@oow=j+?bFiAeo(_Skirvzc88zGF^)aDDnl)f zyjM>VH;w=ZQt&hIhjtj$)=k8EZrtE`HEe;&_JWqBvF(49q`?@KW3Gi6**HVXkyj$m z{Sd5{u|;|&r^cpmJEFaE_<0{>is(H%Vi{U!Xe)42qH}0jmz6+0@vd!Zc@Z^1-|)tN zl?4EIsd=_kHP*Jr*FE9-(xQ5IHLdi{Re?0uKnAlnfg@F5Q-U^(X#YA!D_1Snb-Igb z))K$D(9zj-bpqP(reKw%gT;*tw$-PhrGuBECeDT!uSEoA>w&k*`V;$BTYDy$jlWpT zP%Wv<5Jy6r;IE$F7Q~nOPXa`yT~Fgri=GiYi_BJkB zxrl)c?|Ag66SSTfTd@vMpl$l?UJQ z5VNLOOhoP-vhEPK&53La6^;q=qC(NJ3!{AnSy;f_Okh zr}@r+a*(|E0Je6K_koE&m}FYlf%Awlv>u`hh{bNR8@GHEy4yQWt$X1EBVG~>Xf+eO zcY#;o6w{b(52ZpxdAqP-DG}2}`*ivGvoIzovDJ3fLx6<3n_c;1GZj&BvQ4W`Tbx@B z1;t0Ud;z$%ov&FN!bgLs)4psl=$ZN-L3`R-Yv^PvM}j=zC!HVv-rKMI>cjW`^mo7f@{8MI^cQ3Z zHrBm40yBIhAd|ugXU(;ZoP+Jt#0unH4b2ljGVpu9YWGxbfP-LJX!GR2Qvd}87Cg_( zRJBt#vANUbY|ENr-xM4N$w<$?rWCM?6xhyKZmjatj2Bq^Bd%UZ1aur64nh^MX(lVN z8tsw9pdl;vymqtE(^2LErg8d9+hde<3#cl^Q_FI94is3g<$zALCx@W>Su7ic9Mkdx z?2dt}g1e1NS1->8h@n}3oX#MLdlJMLjI^2(%nStx={kM1r*tlu9b`N(DreQwl8lZ$ z19%s#l9s{QlD)CYLBnd5xSeHP!C*yYsX}B&*HQA-j_{oCimZd-e2CxB3Jnd!4xTCv z`q9hA!2y>fC%_M2;r7w5^CDuiGGsxGB2UK#{d2{WfD;R=qE!KCgOLy^{7XemeZjwCvxeHnQbauc|W z2;y|X-EJ{7TJs{N-*g!CgF44Ise5HGDhog{MXJq%5?ADYESfzk-4S`f`c_ez-ATAE zb%w+I3or+ZA+~{Zw#~rP0Mq%{-mMTP=aXT|&(+5aqN}7Y)V@1Zg<1&A>nY|>Cv-O%qnbY(wX18F)VmdYz;#hdki7-Lc8QF+tP|0X4gv;p`q9hpD z+%=w!-~cv;M!r&a6&5CbTF*YtmT*O6tsb=T?*}Z^i;M7Mh=d^XsTuUmq zG~R4khhoay4`MM!YlxB%q0|V*J=pJtoKX-poLyxl>J=KNpsb;rb;g`GA~_mD4*9cBnpJk`nmE(_s@AQBm6uR$+Q)W*GA#B7O2-te$_BM9F$0Ap~X^(B+sV9Sgn{*268eRgXuX z^SKnYkRjhEHdz=m5x2X&WzdS);b_md+3rd9++)G4N^Z)49W&xmG>xOV$=So8ftq;k zk`dsN(6s8W8OvIHneWE+>I> zDDoP#uf%&mHgYpjst`}ETUnN@QsXjXrx~5`3JUoa1t7hIhX&t#?aeIq(o=%X%Q{_o zS3P_=j!nsX+fFE4s*vS&~{hc*K=jUr002HQ^5w6(s z>*$~Uhu{6+PuyZY`Y!)lo0P0kp!&Wvmf2wyzGyS(Yz@~1o{8OHDG07nrq|mLqBrQ; zAj1}49;I=VVO2tba0O!%Z?KS1WrIsz10024Xewl>%#QS$l_un9^5W2x6GmtH%2S!g z08bwn!{}l8>B;Td(tZH1Ec0AwJwnWYVBEXbIMiV%of0s#OF+j%Bi&eO_+TpUC`9Q! zUH`hK;dqUJ##@|M#I4SvF3f;9>*Mr2&h%Ie9x5zfEqfskT%mepFFe3_QP0Hts|Wa7 z*cfC}?%2EnwaSR0$Q+7gDHUX+*aT{N`8Lc&+Y~6miM?l#xXI9;#~aT|xK3IR1#w^z zVpGG?)8bvs1Wvl`*uKm04bHLe{WCIC0uS?k(@FCAx@3zPPqe~dUhr?RQStX}?6^Ay6C^qhTxkhjV zU-$W7L7Nu_dbv5GIat!J8dw!lcW!nc|K;y~_$Pn+qd)jhfA}k3|H`2$pFDT9%aJ2N zjAn-Cwf3<`%CMaI8O`%Cb_L}(a!hTW!udPLUXv8W{r~A=OD?>S+>g=;2XhxnHF1w1 zC??oAmpIm66p1<&i829o$i(6y%yzi}U?9vmPi_=F4}w2n7O-QJ2n$n2;aIQi(+gzF z6E-)Nv!fA2V<77Rrnq(y;Be%x5Y*J|)2J5?=78MI)m)Y-^OM%822JAaFtD@NV>6rv zvjh^k=pP?04kSD>KFk_BJnYgQ-3bkzao123c$gc{PVD~mm>i5{v^B$i=-JXAh5muxK61eHp=Tq7ozF zF(HzcU5-`iZHQ<#flx^*{)ka-F8&_@#0X4Wau{BcUy#UyeIK>@TQ|yNQ6$qHb*3TZf=m>}M~*d=2Bb zry>F9RrOt!NVY+F>q>6!p_N`I6lr&r2IPCkwB6cF0`SakX*AUh#p}+T(sv=^9bMM& z#uj+_fJ7K6vk8H3Iym#~xDo4t8GNwlSiQRB7%iOSlB3RM)TB9R$mDI$AtA4*!=Vo{ zhkm`Yp~H^AG6pId5SNp)t%2k>3{+L`Dr$JGiPZ}Y#)#-z0%(aB3$2{}qk4sa58DZV zAsiN!CL9m~={}{(=>2Yv(YC%fGGoD6cgNlM_--Gp?8*_Z@@Tc-|D65tcRu*<*kXS2 z(XW1EKT)zGCnp(mB(Z_qi;iO|`AN#u5#k;pInmW|@*F>g2!rln8*|#y*h^avdY%a| zs!7eubh0rG+u0>I1ViuT$T4=5pKQZL*lhDTD_ESm$2-bV3G>caNowZsNq`89NQFCc zWGG;Rp_3$5iaOL_-jppz@m4x+S&&g5{CsO$+jzE!!jzngTiCL8WR;yLHXa0IX`6=_ z5t1kz{e2nAO0MRx)Mm|e!G9@=SprIW5&ksPxkAtzUYOEIkBr%7>=MYfAt_0^**iuU zdMg&xd9s6_wgL)r<+B5;k;k&+rL|XH<+aRVGDXQ7f$qD#jf$;l1A%ax0M|3zAkEcq zw)}QpQl)49>04-&B;c0}d=9qm^>o!sRz4@S5-{+{z1s}%S|IXgMpjI1GekoUT?PWV9CHbnh*{FybWzu9R`7(0dsI*so|a@fFr7cu2wvuA zDj27&6;Fz6U0lCChr>(crlesoH8ICj#gqL}7ZLiUC7#Z8yJim>KFpK$Cl$#-F=ZQw>QuM72F^``d zdPN>fB)D2;qQI){crJq&Z1qd zMC>4u<6`P|_*$bL4szg;fn|w=_9`S)E*BFo>le{sS+W2zJm`7R9cqZ?fu%x!h$sGl zjkb)cTBIU#h!s$$7*%;RVfq|hJExjoY$*yg-6=wuBV{ysPUn04u!JHzcHAa2sNQ;T{Ma3a~<}>Xs|JvB-1e63YHuh6|5E2Y_K2h+^mbR?WCKCD6Hq^>5`EL zUh##AC9-NZxoRxG_8J!$Dne*&G}o|WJfkyX4rTQf4^tpvB3QvV(G`YG0#P-gmyO+^ zv-fwpi>{~hX+s*_DcZ#f?eksq(SG`w{{RFRp+stgxbmgUli`~{G$__EwXb4WKm?%- zwa|yY4>uc%<1xRhxA)8jEhuRvI=|0Kj!P2^w5TN4TS3OwAR$oE6&^MA$W)C1g>obm z;VV1dDE;7DAN=9p{Ix&)z2E%)H@~Lt>gYDL4vnAL!Gj$S3;VHuq= zw2t-o&(bGcqh=OP0O4hBa`_%3)zR3$$yUcv1z@J8%r5{%vDP3L#R>}Kx0lGR8?Z*E znDWZGX-_f`OajD)701hBb27MdIwinI*8;wPn+Fn7-$g3YfHp57FshwKI1bu-IR@RJ zNJM|l4JP0<0>pwx#b1*Z$Z$)fo;k3eG0{^EM^h`=JoU|yd08>=;D%!Jmz=}iWNGyn z!9y}Q77`Ada0OSc=A^lH%$X|=Q{}*h7o^-6EvRw(8HBKLkTKs(8<&kWQ^6+};%nuM zzp-F0m>-M7MOD76(k)cGtXMHSDkd$-Km&9;&XdnR{r)%K`@`S;^*{Q(AM?9+c$l|G z_+k%4$AmhjZ(@{P5?K_`LidP$_g?$M)K?{sqVS$WrJ4BB9Rh~Ds?V*4aerRaB0nV< zXK)9e@u^L1wj}YSU>PjpDq^6Sl4&TzW-3YhHj_~;5FbD-5Q%yKH zhuXV{B%r}qYr;owyG1mA@aO-@c99@zkSqeG zCMtz?FROF*T_nW8yKwe4oSc28l5U)hxRKToAyaS+Xiv5L&6k6JJN52oZ~Ih&tT5Ps zY}?t}v5ghO=4{K^`7Sj&&Q!t>qK7Q&I7Q;q1x+Rq^R8jrabnllF$qQ}7Xnz5m5{#3 zEe^eQ3O+xf}T7CW$&lLL(h#WBDSJ=MCg=Gpxt{ z6cZB!lX0fPmBP7!;^SZcrT6|@{?FOJ`Qsmc`xhG{Oi2J`@#eVLx)>3I3PV_EfLZRd zA*m@_ei3VcdXj~CQ$-thYLPa{K^03_01fR!C@-Yt9vSo=8hce$R2u#e(t*ATy2Pa? zh%ZqcoopOXV$sp;MlNM@UzN%+LnjVG$MoPwJ046pF+p~;uyJNAu4SoBltxAbOB*+Y zj;_S|u3Ov6V8aVQ0N2;?acD5cl$dCd``I(cWlK~9OkvFY z5tZw}gK`#e1(Y|XbD`dxz0Wt`)VZ3Bg0T$l)r>ZN%H)a0z>zUfJS&l#LCbr?xDC#+ z5|3|M?H2wnuiQFfv&C*gpjj2_S>na_y^u1rmOWzSjIYpvbH<>^C1uZpzp-G@<&Jeg zZvl5P=^LSF@Q`kYMC8ck)6KqbP3QIRqvY-Ff{QDNd%)Y74^1N zfMOYLvZLDsi@Ya8?C_r}uMJKl?YV`;hR?+)UFK+o<*zw6{l-m~{qCN;Bxl+0QM{6td+<%fbc>LoW7*ETPD!X*@(B%4|a8SFP-djIqH-~af{Pieo;zX-?B z2Ti?llZ&A%3cgS+XrX9Xq)j{Pi!lPdY4WG)3+(_S5F}qbq#8ml?FmK0JqUHIWF~=* zgDr*q-9~&hI1G*JEn62OhasHK{1eocy0+GC0ny+sPl1Qldvf)8Cx={72vT@DG0Sy+8U}zxm_u{?eI)TJbV)jd@|bE;1_mv}r7vd1d5D zDwf27uB{1 zYGEmVrRlIy#gW8jawRkZ5kc=H-n+saD|FtyHMoBKn`{nuLN3J;C3w2`x*Dp_92B{y zbz5>xlz=T-mUR1S``~Jlr49#*}aK{w2*t)UmX5gF5h9spYJY4fjLoX?hwJuIW zURazrTyoMLcre{S&^Cv9R;ap8bnU{q1B=snK&w{4+~+TcVa6uz8<+VbRqkE8<~<#I zh5q&2wlRGyBgUme+%qVyk8Xy7H5z8nA~%wOJp>@SHE-~8k^f8&?G)}2QSh9f4G@nD{qmTOH@3L_pOr!%N&MRXz!61I07 z86ty3sr21ejCCZTI&0B2~1tuzf|D8kwD}?2*8Cyv ziE|O>Yf=|VFkfa`6@})NI~qND@No{DX|l`vtj3VBMM8|+#IjLVuGjkuw{l9Og-6rt zP}@iM3L(C6IlOeS2n_&gv2ps0@IUum11<=byg)($C)i^eb=P`-RWn`;h-j z7As-BRr^%tu3?JSsHtF#P{d@^siZLqjlGG;5qCra@v4DgLLV}`nFA;Cxl!b#?_vol zTA?#1LN9YnZr5Iqae90)0ztDO;e?YMi`-y zWE&KKBq$3EO(u+{hod5#4hzDiDS8t3T_k`rDJczO5H1zTQ3Kz338X@gbKvDrN?A28 z(x>d>$xw7ZIL4S*af~glNQ}GXik~OsoJ#Wuv#-1)Zuca4}lr%QaLTr z@K-2nSJ|<|453HxB*;sNNzKs&ReCrgoCWNRRWp2v=VLLh`Cv2#)8G9y`;~FnPdqch zTAl}bGXQHsQqv6HynW#s5hl>r( z8Y|LqqPE6Nv3;H7O1YU#WP)jKI(ySGFvPhGOpL1JhUnlJi38cD0?inuF)Ytn8jgrQ zk(3eN{_E)D(JU!phP81Z{c3nuX@T(W!2z#EE!GR!8t~apFR|OaqU-#WpW%yVLsz<+ z+!FG@E7th>=4vCW4oikK3~FS$wyo-CZ@=}GH^2LrzxfaT#z+6S_4X?^r~wj&|bOUPFgx( zQb9IWj1gOH!!6kpTOG%ytR5nJ*>mKeZeh_0OfgNuXX=84uHRfKe<67H+q0EpX9Uem zW<*KWJF$~#g8bWp1%d*C4cgPqw=hPU=b{Eo2;|H{`L{^6-kbb_Ob%x^<$maahm$`L z9>ge-Y=rT1nH2)jSXaIDiLmAB9pI%9)mpzmDa2zrD!Fcacv4pxH&Y`a?ktC zd*AuihkxfMAN|XJ^>6<1|M+Kr_UY$5#CWTCYaY&;WhB=~G094BV?u&}dSHkF!Dps5 z_lNl`$RKGwCGZI;jrR%xRN8*>G)c8aaU&2|6LrGWZRThk_rHjuAG#ivKMK5!! zD|HMwxLA6{b<^K8(Qs&PPTps_o?LWI9i=)i6aaQLlmgO_#z8P)PsExfK&yXIEzdzC zh%0<>@#XrG6gDIoPoXy=nFx-gm!#>w^X8Mc|F(o(Y3ewg0kEYXSE_Ry@L>g!E$Oyp z2ttgC&}39leTO9*mvLgwZt03};Gl4yeg4TOZ$JHC|LOnzkN<~%^56fHfAPQl>(Bq+ zpT7Ia$NudJlW;71FMR;$8cSY0-9Up6jIlbyh>*c%u3KU|=?r9fSOIg{GZ!1TX-o#l*3^8yyRWQduGVwr$tsxNbwO^0QMTscz#Jo?| z93~F_!PK&fmo)gNr`ixg`X1Z|Xm2j^A7PN!JMX{u?pMC_-nYN@;Sc}PFZ|UXeDimH z^E>~^55E1quYaYK9(>*L1igR&`Ug+YGOL5M_5z}jIPEeJH;tQG=|KzDns zm{GW^D4ZAC9mqLCa#(9i47t%g0MnPQ*$FM!0KLpoCdcKZlLYHaSP!6w)-_CP?sj%? zZn+fjA*^D_`Ypc3G%}yIpktixyKg@EG=c zjmnuB)u`6hONT=CgJE`?_x|O-`v3mtfA)X;Pk;Ka|MdU)+0Xb58ithP&3g?s14iBs z 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 IM6N<$f{1@y)&Kwi literal 0 HcmV?d00001 diff --git a/src/assets/styles/main.scss b/src/assets/styles/main.scss index d0d3f923..beec6d5d 100644 --- a/src/assets/styles/main.scss +++ b/src/assets/styles/main.scss @@ -90,13 +90,21 @@ p { display: inline-flex; align-items: center; justify-content: center; + gap: 10px; height: 42px; - padding: 0 16px; + padding: 0 16px 0 8px; border: 1px solid rgb(255 255 255 / 38%); border-radius: 8px; font-size: 18px; font-weight: 800; background: rgb(255 255 255 / 12%); + + img { + width: 30px; + height: 30px; + border-radius: 6px; + object-fit: cover; + } } .login-brand h1 { @@ -194,17 +202,46 @@ p { transition: grid-template-columns 0.22s ease; &.collapsed { - grid-template-columns: 82px 1fr; + grid-template-columns: 88px 1fr; .brand-copy, + .nav-section-title, .nav-item span, .user-meta { display: none; } - .sidebar-header, + .sidebar-header { + display: grid; + grid-template-rows: 38px 26px; + align-content: center; + justify-content: center; + gap: 8px; + padding: 0; + } + .nav-item { justify-content: center; + padding: 0; + } + + .nav-list { + padding: 16px 18px; + } + + .sidebar-toggle { + position: static; + margin: 0 auto; + width: 26px; + height: 26px; + min-height: 26px; + color: #c7d2fe; + background: rgb(255 255 255 / 12%); + } + + .user-card { + justify-content: center; + margin-bottom: 0; } .sidebar-footer { @@ -235,6 +272,7 @@ p { } .sidebar-header { + position: relative; display: flex; align-items: center; gap: 12px; @@ -250,13 +288,20 @@ p { justify-content: center; width: 38px; height: 38px; + overflow: hidden; border-radius: 8px; - color: #fff; - font-weight: 800; - background: linear-gradient(135deg, var(--primary), var(--teal)); + background: #fff; + + img { + width: 100%; + height: 100%; + object-fit: cover; + } } .brand-copy { + min-width: 0; + strong, span { display: block; @@ -264,7 +309,8 @@ p { strong { color: #fff; - font-size: 18px; + font-size: 17px; + white-space: nowrap; } span { @@ -274,6 +320,20 @@ p { } } +.sidebar-toggle { + margin-left: auto; + color: #dbeafe; + border-color: rgb(255 255 255 / 22%); + background: rgb(255 255 255 / 8%); + + &:hover, + &:focus { + color: #fff; + border-color: rgb(255 255 255 / 38%); + background: rgb(37 99 235 / 34%); + } +} + .sidebar-scroll { flex: 1; } @@ -307,6 +367,7 @@ p { transition: background 0.16s ease, color 0.16s ease; .el-icon { + flex: 0 0 auto; font-size: 18px; } @@ -801,6 +862,7 @@ p { } .case-create-form, +.case-import-form, .case-relations-form { .el-select, .el-input-number { @@ -844,7 +906,7 @@ p { } .exam-item-row { - grid-template-columns: minmax(150px, 0.8fr) minmax(160px, 1fr) minmax(120px, 0.8fr) 36px; + grid-template-columns: minmax(130px, 0.8fr) minmax(140px, 1fr) minmax(110px, 0.7fr) minmax(150px, 1fr) 36px; } .case-empty-line { @@ -862,6 +924,18 @@ p { .case-detail-drawer { display: grid; gap: 16px; + min-height: 100%; +} + +.case-detail-form { + align-content: start; +} + +.drawer-form-footer { + display: flex; + justify-content: flex-end; + gap: 12px; + padding-top: 8px; } .kanban-grid { @@ -990,6 +1064,16 @@ p { gap: 16px; } +.ai-result-actions { + display: inline-flex; + align-items: center; + gap: 10px; +} + +.ai-draft-form { + min-width: 0; +} + .ai-result-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); diff --git a/src/layouts/AdminLayout.vue b/src/layouts/AdminLayout.vue index 07149468..91222a58 100644 --- a/src/layouts/AdminLayout.vue +++ b/src/layouts/AdminLayout.vue @@ -2,11 +2,16 @@

@@ -388,6 +554,7 @@ import { submitCase, updateCaseRelations, type CaseExamItemPayload, + type ImportCasePdfResult, type CaseListItem, type CasePublishStatus, type CaseScoringRulePayload, @@ -411,6 +578,7 @@ interface ExamItemForm { item_code: string item_name: string item_type: string + result_text: string } interface CaseDraftForm { @@ -443,13 +611,16 @@ const savingCase = ref(false) const importing = ref(false) const savingRelations = ref(false) const detailLoading = ref(false) +const submittingDetail = ref(false) const caseDialogVisible = ref(false) const importDialogVisible = ref(false) const relationsDialogVisible = ref(false) const detailDrawerVisible = ref(false) const caseFormRef = ref() +const detailFormRef = ref() const importUploadRef = ref() const importFile = ref(null) +const importCaseType = ref('traditional') const importFileList = ref([]) const cases = ref([]) const relationsCase = ref(null) @@ -505,6 +676,30 @@ const caseForm = reactive({ exam_items: [] }) +const detailForm = reactive({ + title: '', + case_type: 'traditional', + institution_id: undefined, + department_name: '', + difficulty: '', + chief_complaint: '', + description: '', + patient_age: undefined, + patient_gender: '', + tags: '', + icd_codes: '', + estimated_minutes: undefined, + osce_enabled: false, + traditional_standard_diagnosis: '', + traditional_standard_treatment: '', + traditional_guideline_reference: '', + teaching_learning_objectives: '', + teaching_key_points: '', + teaching_reference_answer: '', + scoring_rules: [{ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }], + exam_items: [] +}) + const relationsForm = reactive<{ institutionMode: RelationInstitutionMode institution_id?: number @@ -610,30 +805,41 @@ function openCreateDialog() { } function resetCaseForm() { - caseForm.title = '' - caseForm.case_type = 'traditional' - caseForm.institution_id = undefined - caseForm.department_name = '' - caseForm.difficulty = '' - caseForm.chief_complaint = '' - caseForm.description = '' - caseForm.patient_age = undefined - caseForm.patient_gender = '' - caseForm.tags = '' - caseForm.icd_codes = '' - caseForm.estimated_minutes = undefined - caseForm.osce_enabled = false - caseForm.traditional_standard_diagnosis = '' - caseForm.traditional_standard_treatment = '' - caseForm.traditional_guideline_reference = '' - caseForm.teaching_learning_objectives = '' - caseForm.teaching_key_points = '' - caseForm.teaching_reference_answer = '' - caseForm.scoring_rules = [{ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }] - caseForm.exam_items = [] + resetDraftForm(caseForm) caseFormRef.value?.clearValidate() } +function resetDetailForm() { + detailCase.value = null + caseDetail.value = null + resetDraftForm(detailForm) + detailFormRef.value?.clearValidate() +} + +function resetDraftForm(form: CaseDraftForm) { + form.title = '' + form.case_type = 'traditional' + form.institution_id = undefined + form.department_name = '' + form.difficulty = '' + form.chief_complaint = '' + form.description = '' + form.patient_age = undefined + form.patient_gender = '' + form.tags = '' + form.icd_codes = '' + form.estimated_minutes = undefined + form.osce_enabled = false + form.traditional_standard_diagnosis = '' + form.traditional_standard_treatment = '' + form.traditional_guideline_reference = '' + form.teaching_learning_objectives = '' + form.teaching_key_points = '' + form.teaching_reference_answer = '' + form.scoring_rules = [{ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }] + form.exam_items = [] +} + function addScoringRule() { caseForm.scoring_rules.push({ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }) } @@ -647,13 +853,33 @@ function removeScoringRule(index: number) { } function addExamItem() { - caseForm.exam_items.push({ item_code: '', item_name: '', item_type: '' }) + caseForm.exam_items.push({ item_code: '', item_name: '', item_type: '', result_text: '' }) } function removeExamItem(index: number) { caseForm.exam_items.splice(index, 1) } +function addDetailScoringRule() { + detailForm.scoring_rules.push({ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }) +} + +function removeDetailScoringRule(index: number) { + if (detailForm.scoring_rules.length <= 1) { + return + } + + detailForm.scoring_rules.splice(index, 1) +} + +function addDetailExamItem() { + detailForm.exam_items.push({ item_code: '', item_name: '', item_type: '', result_text: '' }) +} + +function removeDetailExamItem(index: number) { + detailForm.exam_items.splice(index, 1) +} + async function submitCaseForm() { if (!appStore.token) { ElMessage.warning('缺少登录信息,请重新登录') @@ -691,60 +917,64 @@ async function submitCaseForm() { } function buildCreatePayload(): CreateCaseDraftPayload { - const structure = buildCaseStructure() - const scoringRules = normalizeScoringRules() - const examItems = normalizeExamItems() + return buildDraftPayload(caseForm) +} + +function buildDraftPayload(form: CaseDraftForm): CreateCaseDraftPayload { + const structure = buildCaseStructure(form) + const scoringRules = normalizeScoringRules(form) + const examItems = normalizeExamItems(form) const payload: CreateCaseDraftPayload = { - title: caseForm.title.trim(), - case_type: caseForm.case_type, + title: form.title.trim(), + case_type: form.case_type, scoring_rules: scoringRules } - payload[caseForm.case_type] = structure - if (canManageInstitution.value && caseForm.institution_id) payload.institution_id = caseForm.institution_id - if (caseForm.department_name.trim()) payload.department_name = caseForm.department_name.trim() - if (caseForm.difficulty.trim()) payload.difficulty = caseForm.difficulty.trim() - if (caseForm.chief_complaint.trim()) payload.chief_complaint = caseForm.chief_complaint.trim() - if (caseForm.description.trim()) payload.description = caseForm.description.trim() - if (caseForm.patient_age !== undefined) payload.patient_age = caseForm.patient_age - if (caseForm.patient_gender) payload.patient_gender = caseForm.patient_gender - if (caseForm.tags.trim()) { - payload.tags = isContentAdmin.value ? caseForm.tags.trim() : parseTextList(caseForm.tags) + payload[form.case_type] = structure + if (canManageInstitution.value && form.institution_id) payload.institution_id = form.institution_id + if (form.department_name.trim()) payload.department_name = form.department_name.trim() + if (form.difficulty.trim()) payload.difficulty = form.difficulty.trim() + if (form.chief_complaint.trim()) payload.chief_complaint = form.chief_complaint.trim() + if (form.description.trim()) payload.description = form.description.trim() + if (form.patient_age !== undefined) payload.patient_age = form.patient_age + if (form.patient_gender) payload.patient_gender = form.patient_gender + if (form.tags.trim()) { + payload.tags = isContentAdmin.value ? form.tags.trim() : parseTextList(form.tags) } - if (parseTextList(caseForm.icd_codes).length) payload.icd_codes = parseTextList(caseForm.icd_codes) - if (caseForm.estimated_minutes !== undefined) payload.estimated_minutes = caseForm.estimated_minutes - if (caseForm.osce_enabled) payload.osce_enabled = caseForm.osce_enabled + if (parseTextList(form.icd_codes).length) payload.icd_codes = parseTextList(form.icd_codes) + if (form.estimated_minutes !== undefined) payload.estimated_minutes = form.estimated_minutes + if (form.osce_enabled) payload.osce_enabled = form.osce_enabled if (examItems.length) payload.exam_items = examItems return payload } -function buildCaseStructure(): Record { - if (caseForm.case_type === 'teaching') { - if (!caseForm.teaching_learning_objectives.trim()) { +function buildCaseStructure(form: CaseDraftForm): Record { + if (form.case_type === 'teaching') { + if (!form.teaching_learning_objectives.trim()) { throw new Error('请输入教学目标') } return { - learning_objectives: caseForm.teaching_learning_objectives.trim(), - ...(caseForm.teaching_key_points.trim() ? { key_points: caseForm.teaching_key_points.trim() } : {}), - ...(caseForm.teaching_reference_answer.trim() ? { reference_answer: caseForm.teaching_reference_answer.trim() } : {}) + learning_objectives: form.teaching_learning_objectives.trim(), + ...(form.teaching_key_points.trim() ? { key_points: form.teaching_key_points.trim() } : {}), + ...(form.teaching_reference_answer.trim() ? { reference_answer: form.teaching_reference_answer.trim() } : {}) } } - if (!caseForm.traditional_standard_diagnosis.trim()) { + if (!form.traditional_standard_diagnosis.trim()) { throw new Error('请输入标准诊断') } return { - standard_diagnosis: caseForm.traditional_standard_diagnosis.trim(), - ...(caseForm.traditional_standard_treatment.trim() ? { standard_treatment: caseForm.traditional_standard_treatment.trim() } : {}), - ...(caseForm.traditional_guideline_reference.trim() ? { guideline_reference: caseForm.traditional_guideline_reference.trim() } : {}) + standard_diagnosis: form.traditional_standard_diagnosis.trim(), + ...(form.traditional_standard_treatment.trim() ? { standard_treatment: form.traditional_standard_treatment.trim() } : {}), + ...(form.traditional_guideline_reference.trim() ? { guideline_reference: form.traditional_guideline_reference.trim() } : {}) } } -function normalizeScoringRules(): CaseScoringRulePayload[] { - const rules = caseForm.scoring_rules +function normalizeScoringRules(form: CaseDraftForm): CaseScoringRulePayload[] { + const rules = form.scoring_rules .map(rule => ({ dimension: rule.dimension.trim(), score_weight: Number(rule.score_weight), @@ -774,14 +1004,15 @@ function normalizeScoringRules(): CaseScoringRulePayload[] { })) } -function normalizeExamItems(): CaseExamItemPayload[] { - const items = caseForm.exam_items +function normalizeExamItems(form: CaseDraftForm): CaseExamItemPayload[] { + const items = form.exam_items .map(item => ({ item_code: item.item_code.trim(), item_name: item.item_name.trim(), - item_type: item.item_type.trim() + item_type: item.item_type.trim(), + result_text: item.result_text.trim() })) - .filter(item => item.item_code || item.item_name || item.item_type) + .filter(item => item.item_code || item.item_name || item.item_type || item.result_text) const codes = new Set() for (const item of items) { @@ -797,7 +1028,8 @@ function normalizeExamItems(): CaseExamItemPayload[] { return items.map(item => ({ item_code: item.item_code, ...(item.item_name ? { item_name: item.item_name } : {}), - ...(item.item_type ? { item_type: item.item_type } : {}) + ...(item.item_type ? { item_type: item.item_type } : {}), + ...(item.result_text ? { result_text: item.result_text } : {}) })) } @@ -807,6 +1039,7 @@ function openImportDialog() { function resetImportFile() { importFile.value = null + importCaseType.value = 'traditional' importFileList.value = [] importUploadRef.value?.clearFiles() } @@ -842,14 +1075,15 @@ async function submitImportPdf() { try { importing.value = true - await importCasePdf({ + const result = await importCasePdf({ token: appStore.token, - file: importFile.value + file: importFile.value, + case_type: importCaseType.value }) - ElMessage.success('PDF 病例导入完成') + fillCaseFormFromImportedPdf(result) importDialogVisible.value = false - pagination.page = 1 - await loadCases() + caseDialogVisible.value = true + ElMessage.success('PDF 病例导入完成,请确认后保存草稿') } catch (error) { ElMessage.error(error instanceof Error ? error.message : '导入 PDF 病例失败') } finally { @@ -1001,6 +1235,7 @@ async function openDetailDrawer(row: CaseListItem) { token: appStore.token, id: row.id }) + fillDetailForm(row, caseDetail.value) } catch (error) { ElMessage.error(error instanceof Error ? error.message : '获取病例详情失败') } finally { @@ -1008,6 +1243,42 @@ async function openDetailDrawer(row: CaseListItem) { } } +async function submitDetailForm() { + if (!appStore.token || !detailCase.value) { + ElMessage.warning('缺少登录信息,请重新登录') + return + } + + const isValid = await detailFormRef.value?.validate().catch(() => false) + if (!isValid) { + return + } + + let payload: CreateCaseDraftPayload + try { + payload = buildDraftPayload(detailForm) + } catch (error) { + ElMessage.warning(error instanceof Error ? error.message : '请检查病例表单') + return + } + + try { + submittingDetail.value = true + await submitCase({ + token: appStore.token, + id: detailCase.value.id, + payload + }) + ElMessage.success('病例已提交') + detailDrawerVisible.value = false + await loadCases() + } catch (error) { + ElMessage.error(error instanceof Error ? error.message : '提交病例失败') + } finally { + submittingDetail.value = false + } +} + function parseTextList(value: string): string[] { return value .split(/[,\n,;;]/) @@ -1015,6 +1286,205 @@ function parseTextList(value: string): string[] { .filter(Boolean) } +function fillCaseFormFromImportedPdf(result: ImportCasePdfResult) { + resetDraftForm(caseForm) + + const record = getImportRecord(result.data) + const caseType = normalizeImportCaseType(getImportString(record, ['case_type', 'caseType']), result.caseType) + const traditional = getImportRecord(getImportFirst(record, ['traditional'])) + const teaching = getImportRecord(getImportFirst(record, ['teaching'])) + const scoringRules = getImportScoringRules(record) + const examItems = getImportExamItems(record) + + caseForm.case_type = caseType + caseForm.title = getImportString(record, ['title', 'name', 'case_title', 'caseTitle']) + caseForm.department_name = getImportString(record, ['department_name', 'departmentName']) + caseForm.difficulty = getImportString(record, ['difficulty']) + caseForm.chief_complaint = getImportString(record, ['chief_complaint', 'chiefComplaint']) + caseForm.description = getImportString(record, ['description', 'summary', 'content']) + caseForm.patient_age = getImportNumber(record, ['patient_age', 'patientAge']) ?? undefined + caseForm.patient_gender = normalizeImportGender(getImportString(record, ['patient_gender', 'patientGender'])) + caseForm.tags = getImportStringList(record, ['tags', 'tag_list', 'tagList']).join(', ') + caseForm.icd_codes = getImportStringList(record, ['icd_codes', 'icdCodes', 'icd_list', 'icdList']).join(', ') + caseForm.estimated_minutes = getImportNumber(record, ['estimated_minutes', 'estimatedMinutes']) ?? undefined + caseForm.osce_enabled = getImportBoolean(record, ['osce_enabled', 'osceEnabled']) + + caseForm.traditional_standard_diagnosis = getImportString(traditional, ['standard_diagnosis', 'standardDiagnosis']) + caseForm.traditional_standard_treatment = getImportString(traditional, ['standard_treatment', 'standardTreatment']) + caseForm.traditional_guideline_reference = getImportString(traditional, ['guideline_reference', 'guidelineReference']) + caseForm.teaching_learning_objectives = getImportString(teaching, ['learning_objectives', 'learningObjectives']) + caseForm.teaching_key_points = getImportString(teaching, ['key_points', 'keyPoints']) + caseForm.teaching_reference_answer = getImportString(teaching, ['reference_answer', 'referenceAnswer']) + caseForm.scoring_rules = scoringRules.length + ? scoringRules + : [{ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }] + caseForm.exam_items = examItems + caseFormRef.value?.clearValidate() +} + +function fillDetailForm(row: CaseListItem, fullData: unknown) { + resetDraftForm(detailForm) + + const record = getDetailRecord(fullData) + const traditional = getImportRecord(getImportFirst(record, ['traditional'])) + const teaching = getImportRecord(getImportFirst(record, ['teaching'])) + const scoringRules = getImportScoringRules(record) + const examItems = getImportExamItems(record) + + detailForm.title = getImportString(record, ['title', 'name', 'case_title', 'caseTitle'], row.title) + detailForm.case_type = normalizeImportCaseType(getImportString(record, ['case_type', 'caseType'], row.caseType), normalizeImportCaseType(row.caseType, 'traditional')) + detailForm.institution_id = getImportNumber(record, ['institution_id', 'institutionId']) ?? undefined + detailForm.department_name = getImportString(record, ['department_name', 'departmentName'], row.departmentName) + detailForm.difficulty = getImportString(record, ['difficulty'], row.difficulty) + detailForm.chief_complaint = getImportString(record, ['chief_complaint', 'chiefComplaint'], row.chiefComplaint) + detailForm.description = getImportString(record, ['description', 'summary', 'content']) + detailForm.patient_age = getImportNumber(record, ['patient_age', 'patientAge']) ?? undefined + detailForm.patient_gender = normalizeImportGender(getImportString(record, ['patient_gender', 'patientGender'])) + detailForm.tags = getImportStringList(record, ['tags', 'tag_list', 'tagList']).join(', ') + detailForm.icd_codes = getImportStringList(record, ['icd_codes', 'icdCodes', 'icd_list', 'icdList']).join(', ') + detailForm.estimated_minutes = getImportNumber(record, ['estimated_minutes', 'estimatedMinutes']) ?? row.estimatedMinutes ?? undefined + detailForm.osce_enabled = getImportBoolean(record, ['osce_enabled', 'osceEnabled']) + detailForm.traditional_standard_diagnosis = getImportString(traditional, ['standard_diagnosis', 'standardDiagnosis']) + detailForm.traditional_standard_treatment = getImportString(traditional, ['standard_treatment', 'standardTreatment']) + detailForm.traditional_guideline_reference = getImportString(traditional, ['guideline_reference', 'guidelineReference']) + detailForm.teaching_learning_objectives = getImportString(teaching, ['learning_objectives', 'learningObjectives']) + detailForm.teaching_key_points = getImportString(teaching, ['key_points', 'keyPoints']) + detailForm.teaching_reference_answer = getImportString(teaching, ['reference_answer', 'referenceAnswer']) + detailForm.scoring_rules = scoringRules.length + ? scoringRules + : [{ dimension: '', score_weight: 1, ai_auto_score: true, scoring_standard: '' }] + detailForm.exam_items = examItems + detailFormRef.value?.clearValidate() +} + +function getImportRecord(value: unknown): Record { + return value && typeof value === 'object' && !Array.isArray(value) ? (value as Record) : {} +} + +function getImportFirst(record: Record, keys: string[]): unknown { + for (const key of keys) { + if (record[key] !== undefined && record[key] !== null) { + return record[key] + } + } + + return undefined +} + +function getImportString(record: Record, keys: string[], fallback = ''): string { + for (const key of keys) { + const value = record[key] + if (typeof value === 'string' && value.trim()) { + return value.trim() + } + if (typeof value === 'number') { + return String(value) + } + } + + return fallback +} + +function getImportNumber(record: Record, keys: string[]): number | null { + const value = getImportFirst(record, keys) + if (typeof value === 'number' && Number.isFinite(value)) { + return value + } + if (typeof value === 'string' && value.trim() && Number.isFinite(Number(value))) { + return Number(value) + } + + return null +} + +function getImportBoolean(record: Record, keys: string[]) { + const value = getImportFirst(record, keys) + if (typeof value === 'boolean') { + return value + } + if (typeof value === 'number') { + return value === 1 + } + if (typeof value === 'string') { + const normalized = value.trim().toLowerCase() + return ['true', '1', 'yes', 'y', 'on', '开启', '启用', '是'].includes(normalized) + } + + return false +} + +function getImportStringList(record: Record, keys: string[]): string[] { + const value = getImportFirst(record, keys) + if (Array.isArray(value)) { + return value + .map(item => { + if (typeof item === 'string' || typeof item === 'number') { + return String(item).trim() + } + const itemRecord = getImportRecord(item) + return getImportString(itemRecord, ['name', 'title', 'code', 'value']) + }) + .filter(Boolean) + } + + if (typeof value === 'string') { + return parseTextList(value) + } + + return [] +} + +function getImportScoringRules(record: Record): ScoringRuleForm[] { + const raw = getImportFirst(record, ['scoring_rules', 'scoringRules']) + if (!Array.isArray(raw)) { + return [] + } + + return raw + .map(item => { + const itemRecord = getImportRecord(item) + const scoreWeight = getImportNumber(itemRecord, ['score_weight', 'scoreWeight', 'weight']) + const rawAutoScore = getImportFirst(itemRecord, ['ai_auto_score', 'aiAutoScore']) + return { + dimension: getImportString(itemRecord, ['dimension', 'name']), + score_weight: scoreWeight ?? 1, + ai_auto_score: rawAutoScore === undefined ? true : getImportBoolean(itemRecord, ['ai_auto_score', 'aiAutoScore']), + scoring_standard: getImportString(itemRecord, ['scoring_standard', 'scoringStandard', 'description']) + } + }) + .filter(item => item.dimension || item.scoring_standard) +} + +function getImportExamItems(record: Record): ExamItemForm[] { + const raw = getImportFirst(record, ['exam_items', 'examItems']) + if (!Array.isArray(raw)) { + return [] + } + + return raw + .map(item => { + const itemRecord = getImportRecord(item) + return { + item_code: getImportString(itemRecord, ['item_code', 'itemCode', 'code']), + item_name: getImportString(itemRecord, ['item_name', 'itemName', 'name']), + item_type: getImportString(itemRecord, ['item_type', 'itemType', 'type']), + result_text: getImportString(itemRecord, ['result_text', 'resultText']) + } + }) + .filter(item => item.item_code || item.item_name || item.item_type || item.result_text) +} + +function normalizeImportCaseType(value: string, fallback: DraftCaseType): DraftCaseType { + return value === 'teaching' ? 'teaching' : fallback +} + +function normalizeImportGender(value: string) { + if (value === '男') return 'male' + if (value === '女') return 'female' + if (value === '未知') return 'unknown' + return ['male', 'female', 'unknown'].includes(value) ? value : '' +} + function createDetailDisplay(row: CaseListItem | null, fullData: unknown) { const record = getDetailRecord(fullData) const title = getDetailString(record, ['title', 'name']) || row?.title || '-' diff --git a/src/views/LoginView.vue b/src/views/LoginView.vue index 655a2bf3..5f0a401e 100644 --- a/src/views/LoginView.vue +++ b/src/views/LoginView.vue @@ -3,8 +3,11 @@