From 9ac1d90f296e2515ba7691fd1482f9e8cd9c7e10 Mon Sep 17 00:00:00 2001 From: wally <18603454788@163.com> Date: Tue, 16 May 2023 13:23:33 +0800 Subject: [PATCH] faet: ui --- App.vue | 5 + components/CreatePatient/CreatePatient.vue | 90 ++++++ components/DetailBase/DetailBase.vue | 9 + components/FloatButton/FloatButton.vue | 52 +++ components/SearchList/SearchList.vue | 37 +++ config/local.ts | 3 + index.html | 9 +- main.js | 5 + manifest.json | 0 package.json | 0 pages.json | 60 +++- pages/detail1/detail1.vue | 211 +++++++++++++ pages/detail2/detail2.vue | 125 ++++++++ pages/index/index.vue | 45 ++- pages/loading/loading.vue | 101 ++++++ pages/patient-list/patient-list.vue | 94 ++++++ pnpm-lock.yaml | 0 static/c1.png | Bin 401 -> 0 bytes static/c2.png | Bin 470 -> 0 bytes static/c3.png | Bin 511 -> 0 bytes static/c4.png | Bin 476 -> 0 bytes static/c5.png | Bin 472 -> 0 bytes static/c6.png | Bin 545 -> 0 bytes static/c7.png | Bin 365 -> 0 bytes static/c8.png | Bin 587 -> 0 bytes static/c9.png | Bin 565 -> 0 bytes static/customicons.css | 20 -- static/customicons.ttf | Bin 2416 -> 0 bytes static/images/bed.png | Bin 0 -> 10097 bytes static/images/car.png | Bin 0 -> 2371 bytes static/images/change-dark.png | Bin 0 -> 2486 bytes static/images/change.png | Bin 0 -> 2815 bytes static/images/create-user.png | Bin 0 -> 9555 bytes static/images/doctor.png | Bin 0 -> 15879 bytes static/images/heart.png | Bin 0 -> 9883 bytes static/images/loading-img.png | Bin 0 -> 30255 bytes static/images/menu.png | Bin 0 -> 9349 bytes static/images/plus.png | Bin 0 -> 1768 bytes static/images/user.png | Bin 0 -> 9555 bytes store/modules/service.ts | 75 +---- tsconfig.json | 0 uni-webview-js.js | 207 ++++++++++++ uni.scss | 62 ++++ .../components/uni-section/uni-section.vue | 297 +++++++++--------- utils/common.ts | 14 + 45 files changed, 1254 insertions(+), 267 deletions(-) mode change 100644 => 100755 App.vue create mode 100644 components/CreatePatient/CreatePatient.vue create mode 100644 components/DetailBase/DetailBase.vue create mode 100644 components/FloatButton/FloatButton.vue create mode 100644 components/SearchList/SearchList.vue create mode 100644 config/local.ts mode change 100644 => 100755 index.html mode change 100644 => 100755 main.js mode change 100644 => 100755 manifest.json mode change 100644 => 100755 package.json mode change 100644 => 100755 pages.json create mode 100644 pages/detail1/detail1.vue create mode 100644 pages/detail2/detail2.vue create mode 100644 pages/loading/loading.vue create mode 100644 pages/patient-list/patient-list.vue mode change 100644 => 100755 pnpm-lock.yaml delete mode 100644 static/c1.png delete mode 100644 static/c2.png delete mode 100644 static/c3.png delete mode 100644 static/c4.png delete mode 100644 static/c5.png delete mode 100644 static/c6.png delete mode 100644 static/c7.png delete mode 100644 static/c8.png delete mode 100644 static/c9.png delete mode 100644 static/customicons.css delete mode 100644 static/customicons.ttf create mode 100644 static/images/bed.png create mode 100644 static/images/car.png create mode 100644 static/images/change-dark.png create mode 100644 static/images/change.png create mode 100644 static/images/create-user.png create mode 100644 static/images/doctor.png create mode 100644 static/images/heart.png create mode 100644 static/images/loading-img.png create mode 100644 static/images/menu.png create mode 100644 static/images/plus.png create mode 100644 static/images/user.png mode change 100644 => 100755 tsconfig.json create mode 100755 uni-webview-js.js mode change 100644 => 100755 uni.scss create mode 100644 utils/common.ts diff --git a/App.vue b/App.vue old mode 100644 new mode 100755 index 377a404..a4907ec --- a/App.vue +++ b/App.vue @@ -23,4 +23,9 @@ export default { page { background-color: #f5f5f5; } + +uni-page-body { + min-height: 100%; + height: 100%; +} diff --git a/components/CreatePatient/CreatePatient.vue b/components/CreatePatient/CreatePatient.vue new file mode 100644 index 0000000..0668488 --- /dev/null +++ b/components/CreatePatient/CreatePatient.vue @@ -0,0 +1,90 @@ + + + + + diff --git a/components/DetailBase/DetailBase.vue b/components/DetailBase/DetailBase.vue new file mode 100644 index 0000000..40b9fc4 --- /dev/null +++ b/components/DetailBase/DetailBase.vue @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/components/FloatButton/FloatButton.vue b/components/FloatButton/FloatButton.vue new file mode 100644 index 0000000..81ef116 --- /dev/null +++ b/components/FloatButton/FloatButton.vue @@ -0,0 +1,52 @@ + + + + + diff --git a/components/SearchList/SearchList.vue b/components/SearchList/SearchList.vue new file mode 100644 index 0000000..4842833 --- /dev/null +++ b/components/SearchList/SearchList.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/config/local.ts b/config/local.ts new file mode 100644 index 0000000..9538d5c --- /dev/null +++ b/config/local.ts @@ -0,0 +1,3 @@ +export const LOCAL_KEY = { + LOADED: 'loaded', // 用来显示启动页 有本地数据不显示启动页 没有才显示 +} diff --git a/index.html b/index.html old mode 100644 new mode 100755 index c3ff205..7799d46 --- a/index.html +++ b/index.html @@ -3,11 +3,13 @@ @@ -16,5 +18,6 @@
+ diff --git a/main.js b/main.js old mode 100644 new mode 100755 index 39a1f9c..2b9cb3e --- a/main.js +++ b/main.js @@ -1,12 +1,17 @@ import * as Pinia from 'pinia' import App from './App.vue' +import { LOCAL_KEY } from '@/config/local' import { createSSRApp } from 'vue' +import { openPage } from '@/utils/common' import { setupApi } from '@/api' import { setupHttp } from '@/utils/http' import { setupStore } from '@/store' import uView from './uni_modules/vk-uview-ui' +uni.$u.openPage = openPage +uni.$u.LOCAL_KEY = LOCAL_KEY + export function createApp() { const app = createSSRApp(App) setupHttp(app) diff --git a/manifest.json b/manifest.json old mode 100644 new mode 100755 diff --git a/package.json b/package.json old mode 100644 new mode 100755 diff --git a/pages.json b/pages.json old mode 100644 new mode 100755 index 27973fb..8d8516d --- a/pages.json +++ b/pages.json @@ -1,17 +1,47 @@ { - "pages": [{ - "path": "pages/index/index", - "style": { - "navigationBarTitleText": "uni-app" - } - }], - "globalStyle": { - "navigationBarTextStyle": "black", - "navigationBarTitleText": "uni-app", - "navigationBarBackgroundColor": "#F8F8F8", - "backgroundColor": "#F8F8F8", - "app-plus": { - "background": "#efeff4" - } - } + "pages": [ + { + "path": "pages/loading/loading", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "" + } + }, + { + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "uni-app", + "navigationStyle": "custom" + } + }, + { + "path": "pages/patient-list/patient-list", + "style": { + "navigationBarTitleText": "患者列表" + } + }, + { + "path": "pages/detail1/detail1", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "患者详情" + } + }, + { + "path": "pages/detail2/detail2", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "患者详情" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "暴风眼质控", + "navigationBarBackgroundColor": "#F8F8F8", + "backgroundColor": "#F8F8F8", + "app-plus": { + "background": "#efeff4" + } + } } diff --git a/pages/detail1/detail1.vue b/pages/detail1/detail1.vue new file mode 100644 index 0000000..65d91da --- /dev/null +++ b/pages/detail1/detail1.vue @@ -0,0 +1,211 @@ + + + + + diff --git a/pages/detail2/detail2.vue b/pages/detail2/detail2.vue new file mode 100644 index 0000000..2d587db --- /dev/null +++ b/pages/detail2/detail2.vue @@ -0,0 +1,125 @@ + + + + + diff --git a/pages/index/index.vue b/pages/index/index.vue index 7697316..b2ba275 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1,29 +1,26 @@ - +onLoad(() => { + + document.addEventListener('UniAppJSBridgeReady', () => { + console.log(uni); + + }, false) - +}) + +function send() { + + window.postMessage('hello', '*') + // uni.postMessage({ + // data: { action: "msg ok" } + // }) +} + diff --git a/pages/loading/loading.vue b/pages/loading/loading.vue new file mode 100644 index 0000000..3c37752 --- /dev/null +++ b/pages/loading/loading.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/pages/patient-list/patient-list.vue b/pages/patient-list/patient-list.vue new file mode 100644 index 0000000..a4d8b7c --- /dev/null +++ b/pages/patient-list/patient-list.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml old mode 100644 new mode 100755 diff --git a/static/c1.png b/static/c1.png deleted file mode 100644 index 9d38fdc45f54393919608143278902961ebfc03e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 401 zcmeAS@N?(olHy`uVBq!ia0vp^DImv+@EMfolJl@2-tdeIgiE72V3$+1a&#<;nGqB*6-wd0Dfno2^$& z7L}LYx}4kkKI1~4j2xSM#i^{e>mxFDC0DcwoaERsZFdmo&xZb=|e; zVChPF@z}uo`_jyFigEMR=cKgdY*81V{;5gJlXF9MvNaZ^cipGtGKCwGwYFdLih#FiI|b%1`}h zcD?9wzL;(MG`RGl!=KdO=X$Ia3G&T>{3@pZ$E>nWT~vAlEaktaqI1klarbacw7TzPB-Tm@A?1# z=DKt1Tm@&jBni*W72Dq8$U1XQ@j1)qcYd?AM-~6vdS%zgB|W!|l9z8;VdkK15fZWZ z0_Xa#{=&Tl?+&}Myixw!c0&2Cz{(%uYaLfyIpx20a+b;i&8Hu}PrN-Tsf8gx{xaWd zSEda)?3G(j%z6CKKWpOGAAJoS5gg_&aw+l?Pq*dmh)8I56YfnYkc%|gRM+fjvg@w| z$E(g+E=n8A7O8TmM)@~hDG@eQ_vn5n5wpR0%`A=`87W~$m7>*=T~gqVW%D$JmT%Wy00-NUV`g= zPWq+lU_K79dVw=Ll(hEL%sa^y|HiF3Bqng#c7b&Xt+%gdOo& V%D;5ZBtB5oc)I$ztaD0e0stIlwo?EA diff --git a/static/c3.png b/static/c3.png deleted file mode 100644 index 216202ad01c5d093a15c247cf791bf66759cf54d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 511 zcmeAS@N?(olHy`uVBq!ia0vp^DImqEwn3#C`6axcex~Gd{NX4zUH%{jrQQ%<>_`I#L<;VZ} zZHv8>O^d80dDUJWN}qZ5sw(5+2E$_#$vr=hznV9v_(!hA^s)ehHzYuO_$GPFaj>L^Z^8*-5pGM3JjCnSB#oUXR4yIck*z;L5euG4hrQnMaF=Mr^If6ezqfPO{rmaH zG`Recv6gZBZ^h$ro*MqgZ`L;0*JWSQ?4MdEEc#Ycl^2Ku*&||7ybYSKxgR(e zUi8LbW#8LW_O;o`+{cdv9h)e%;+1X1dv+zh{}-wmlY4-{_IaWH_ctMZlX+XXL2>Bm L>gTe~DWM4f<{`=m diff --git a/static/c4.png b/static/c4.png deleted file mode 100644 index fb8b4770c323cc87544a502c4efcd9792ec6047a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 476 zcmeAS@N?(olHy`uVBq!ia0vp^DIm!v{Zmph6H*@EOQ`c;Jj35m?s8tsB!ig_bOsad3NWyNKsO#%u4s6f}!WF<$1wue~HTU+T}QZ;Gq4 z+^p*LR=oRR<2>VYrDayznw7JEgn9(s4mmKdKH{5e^24HIn&xXKq`oqWXf4s;nPY6> zl5RSUO)+g!*Qq{!;a&O8LAO2%J{IadS>Y&oFLd#-`B8Zi;r0eCLdRUCfQpstnaz}|9;&C$edE%qT=zMqcbI`S>(i_Uwsp-Jh?$Zac<}T=h6;^ V(bfHGPg+0`|eiw2lA( diff --git a/static/c5.png b/static/c5.png deleted file mode 100644 index 310bfb123ba811240a23883c589557cced22af97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 472 zcmeAS@N?(olHy`uVBq!ia0vp^DImMU#{OfDLKp{`iu-m;URIy-X0%w>4GPR z_aE3Db+En7Vpp-?y{8>c_3j;K1E(wImUzhRpIo-4)yng0f9$<4bN?NcJ+$)R>Cmd5 zPnT-Q*3a3qRzbM)VHC^C!+&Q!2$x98T^XQ1{a2U4m97Z?l}kQ1avTGN#j9nTb Uw;LB#rGg^I)78&qol`;+04O}Qp#T5? diff --git a/static/c6.png b/static/c6.png deleted file mode 100644 index c3c45d8814b2657a1c603b1a44c8207da134cb40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 545 zcmeAS@N?(olHy`uVBq!ia0vp^DImqbxJT^6j8j=}L4 z`U~zp;jZGGq_3%#*Y{@jiL-*|KAoCX9M=6tMV3p`Xx_9LpK6YHtIv61@a%(@?tX{a zixmsYle>5975wq9?fBo`FZ<0Z_ST1U_$og>`Bwh@oq)-Q*IY8`n6H2IUEezHG>gnR z4m?JSR+TGA8lKK}%#OUITJo;LRm!DE@lpDwn1HB=DfxjiElxjmC-aCcb$n6qV?vwH z70D$Ac9y-Kb4tS6k2yc|sk#5)HGj$%vfgZBIOdhE(svqtDm`(*VzL-mu^Hy19AKPf2Xw<}^wvyk3;W5tc1>eFM@ s<<*_%cP|y0-yh@^lK=|O<{9 diff --git a/static/c7.png b/static/c7.png deleted file mode 100644 index a1e73908c282c8ce053a037a9b0d0ff2bcdb5f28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 365 zcmeAS@N?(olHy`uVBq!ia0vp^DIm6ZD L`njxgN@xNA8ryiD diff --git a/static/c8.png b/static/c8.png deleted file mode 100644 index c32633c0b399d119fe940b19fb48ee0efd986ca1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 587 zcmeAS@N?(olHy`uVBq!ia0vp^DImtDWKw)GSgG z<{?!7vyg^n3M^01LJZ}7srr_TW_zQ?t87k(~wwf+9)vT z%KQIoiZ6ORmsqxitIvdcU#@t4EXP6v-^(UI#Jk~jfg$H7CzX--mMU=ckjl- zO_N=n{=9#BNIpzt0(^6iu(G%&IbVv*qm>1hi!XSEd0U$OB}=(W(sDW)~2<6brG`eb|Eywk@UH2a9_S~2ou;@L{mE;Re4S!9(w0H>~IdYlxQPbf~&0B26{}evs0SCD6 b<@sM36JAtSn%f$@0;LB}S3j3^P6r-DwW=|@#WR(W@( zZdqJkeNu(zZcxH)-rk0j)>6#pwJ%5 z({0I4*ENL;Hg>s)Wo2yHMQWq+YVK10K1LEVCnUj62Kls6uex~DF( zmCs;?h^>{Qb=Fc@o?qGaU(P$0_Dg@wVQpV1_%AL~YBQ@%pW7wIWu-GZ7%RRBC{J)$ zYTez|@_3zqf=Wi}%JdkW31MA*>f4V5YcgIo@dcs(Z~1ke=Y_pcHP{M@c~4hAmvv4F FO#nHb*8Bhf diff --git a/static/customicons.css b/static/customicons.css deleted file mode 100644 index 14ed5fa..0000000 --- a/static/customicons.css +++ /dev/null @@ -1,20 +0,0 @@ -@font-face { - font-family: "customicons"; /* Project id 2878519 */ - src:url('/static/customicons.ttf') format('truetype'); -} - -.customicons { - font-family: "customicons" !important; -} - -.youxi:before { - content: "\e60e"; -} - -.wenjian:before { - content: "\e60f"; -} - -.zhuanfa:before { - content: "\e610"; -} diff --git a/static/customicons.ttf b/static/customicons.ttf deleted file mode 100644 index a3c8ab9f22d18d5d605503eda314e5d2a31fdfc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2416 zcmd^A%WoS+82@H>?IgD2#K~q|hdkDH>bQB>&f0O>=25F@5|GlQX`8fENObGiPEx<* zIHl>yDoB8U!lAtvAt9k$df{KC1gT1(TA*@aKU;Z8A_c6Yj%<0Ab$%Pq=pKvad z-A@0oKRQn&-bGc{Qu=Do+{0<;!iM5&AR2xX-va&;wQns~zS&B(8f^c>xHVfy>O!2V zuzd$(TTZ`OWbJet@*^0lc|DhE{bb?+k@a&TAyX`DmiI>vrzUh9wW#VtLONPQPcgH{GfcG%HCo!>rVIv8K7)wAe(G9W~W6s*} z5MlL3;c^>AXo`e0v-20pnbpgA>V(Zx`M)vCu4i=kuX|?D<5C8Ok=0}+EcYWmqwucq z9k>tcJ$p@N7UdY3K%*@M)z9zF77#b3%z!fxHdq^cAvWrY zjm5{}(W73UQ-HKbh-#b|iyQiGC8|vcP=ZB(`A1^`pS7F$eO6f+XC1Pl#U~jwSS-Z6 zoYdm6fFb2Ts4UG+2aoy3eJ4h)WHMJqPWZ+ggv;Y`8Ne>v?K0a?dV7a@d%xnHstS*S!80>UHNq5P zcT^Cf-6E!7v@~-j7+e|8elTC7!G#HLb7P0n=yWzJ9gWT2iG@K%Yp-64j#evA{TmZG zWJPwUm;la=mS?v1K>SNwq9YWdlSr<&p0z19Zlu(!^)Mr=JSzZ7)T_mjuz=s|>kl!c zB@l~)Q)H`{IH*LH!r`TeI(%*{!Lr8Sps0GoVXsi(ZM7mhk8cX!KdH!FU9!mAbI=zO zP#q6W0#>gAiixoIV3!-P``)ng_~q*Du3#5l{`J@HiH~s`$rPj0xaF>5@3G|gDTd`t z2}&`saAq1brJKoCUtp5O z;^K01ht1M-_H0vw)#X+iuR9#q9aYKR<`5;DCw%I1?(O?_+2N4wrR4G}CnNsOmL?^| z?r41nJAO^`vqW__v>3uGEQc3DyKNq9yhk|YJmP6uSZGw-E=vQP_BpOMS9fi$j;5~R zmD%KpS-b3(?Z^BHZ8{R|>1<(-tEK86+@Y}Cr!9vT!UsEbw=A*jY1`o&ywm0}zN$9* z)x4>Q+QHOsI)0nBn^>R*ddb8hc%O+S-~kg`@aNM^Yz04QVjB(OyQ}-O!($Prh)GSD zCqQqSm{BWzW@3Sy^o5B<@ZXwP0{+Rw7E);6#8&VJCbrQEYc{c+0xUUQO6ld)s(Ni( zT~8MB=|aAI*q={jwz7KZaCq3Sq)MCXg}gcviX2jNseGz*=w|aqMk|-oYPwX&sk88x z%4Q2{u~gVdCCj0;a=Cai9OmS z&fu!b!m{+7^jYf_XqRXcdfcZoHN+IGM+T-)9_ZH9MG(} zz7$rH1y-?vT($u}Noa>?&9ExsItb%AjOS24WW<@{KiqoZ|NR#gi3v<(60?v^AJ&GW i+l8&0>&^ObYFtuIC+Gpxs*A((`E@KK=o#Msw}} diff --git a/static/images/bed.png b/static/images/bed.png new file mode 100644 index 0000000000000000000000000000000000000000..403c0f5af37e756baff68b51c48836321ced3fa7 GIT binary patch literal 10097 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 literal 0 HcmV?d00001 diff --git a/static/images/car.png b/static/images/car.png new file mode 100644 index 0000000000000000000000000000000000000000..db0cfc37c139a00b656b75adf66672cbd28ca96e GIT binary patch literal 2371 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