From 86f2f10bfa461881d7a8d63646d1bcd73a9d7492 Mon Sep 17 00:00:00 2001 From: unknown <1327677915@qq.com> Date: Sun, 29 Dec 2024 12:37:23 +0800 Subject: [PATCH] submit1 --- laundrymanagementsystem/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.jar | 439 +++++++++++++ .../.mvn/wrapper/maven-wrapper.properties | 2 + laundrymanagementsystem/mvnw | 308 +++++++++ laundrymanagementsystem/mvnw.cmd | 205 ++++++ laundrymanagementsystem/pom.xml | 71 +++ .../LaundryManagementApplication.java | 11 + .../mapper/AdministratorMapper.java | 18 + .../mapper/AnnouncementMapper.java | 15 + .../mapper/ClothMapper.java | 117 ++++ .../mapper/EvaluationMapper.java | 29 + .../mapper/InformationMapper.java | 29 + .../mapper/OrderMapper.java | 62 ++ .../mapper/ReminderMapper.java | 10 + .../mapper/ReservationMapper.java | 37 ++ .../mapper/UserMapper.java | 73 +++ .../mapper/WmachineMapper.java | 17 + .../pojo/AdminInfo.java | 14 + .../pojo/Administrator.java | 16 + .../pojo/Announcement.java | 17 + .../laundrymanagementsystem/pojo/Cloth.java | 16 + .../pojo/ClothCleaningInfo.java | 17 + .../pojo/Evaluation.java | 16 + .../laundrymanagementsystem/pojo/Log.java | 17 + .../laundrymanagementsystem/pojo/Order.java | 18 + .../pojo/OrderDetails.java | 17 + .../pojo/Reminder.java | 18 + .../pojo/Reservation.java | 21 + .../pojo/ReservationDetails.java | 17 + .../laundrymanagementsystem/pojo/User.java | 21 + .../pojo/UserInfo.java | 19 + .../pojo/UserOrderInfo.java | 16 + .../pojo/Wmachine.java | 15 + .../pojo/query/OrderLogInfo.java | 18 + .../pojo/query/OrderUserInfo.java | 13 + .../pojo/query/ReservationUserInfo.java | 15 + .../src/main/resources/application.properties | 7 + .../mapper/ClothMapper.xml | 23 + .../mapper/UserMapper.xml | 20 + .../LaundryManagementApplicationTests.java | 595 ++++++++++++++++++ 40 files changed, 2442 insertions(+) create mode 100644 laundrymanagementsystem/.gitignore create mode 100644 laundrymanagementsystem/.mvn/wrapper/maven-wrapper.jar create mode 100644 laundrymanagementsystem/.mvn/wrapper/maven-wrapper.properties create mode 100644 laundrymanagementsystem/mvnw create mode 100644 laundrymanagementsystem/mvnw.cmd create mode 100644 laundrymanagementsystem/pom.xml create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplication.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AdministratorMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AnnouncementMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/EvaluationMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/InformationMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/OrderMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReminderMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReservationMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/WmachineMapper.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/AdminInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Administrator.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Announcement.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Cloth.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ClothCleaningInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Evaluation.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Log.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Order.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/OrderDetails.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reminder.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reservation.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ReservationDetails.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/User.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserOrderInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Wmachine.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderLogInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderUserInfo.java create mode 100644 laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/ReservationUserInfo.java create mode 100644 laundrymanagementsystem/src/main/resources/application.properties create mode 100644 laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.xml create mode 100644 laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.xml create mode 100644 laundrymanagementsystem/src/test/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplicationTests.java diff --git a/laundrymanagementsystem/.gitignore b/laundrymanagementsystem/.gitignore new file mode 100644 index 0000000..549e00a --- /dev/null +++ b/laundrymanagementsystem/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.jar b/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000..2a99b9d --- /dev/null +++ b/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.jar @@ -0,0 +1,439 @@ +PK +  hV META-INF/PK  hVlt3? J  META-INF/MANIFEST.MFA +?Ea.v!t?آ롙j0MB?VP]j?j?HS?m +qw}{ws-~]SW? j.T?=rnk3??M#Z%;1I e['dWt?bt?VTc_^>[i7X?{!pKUAUB?֌۝N?>hxΔcX/cO+Mz?w?P  ??s+lv[z!S@me#Ic?$?I ZY/^A?o +i +!?RcWҴ?arxùxg,я71ɪG3/eFGqB_RW? Y?*?w!#J N?,`E+;U?׍?VN$ٹe??\hЄvGI%/i;a?A?? d?AFu`R?'?=6L\Z]^???Q?y|x?[?dąn`x8?[ +dV9 X[BA[/??eΰ?œⓋW#$Sc?W ?h7;? ??AP|#:Tp~??܊܅r8k iՃ&Wbi|?66|y6yaX唃H!K4?Lou ?NՓ?ı?HVRT)h:Fj??2??㤓?N? D%?Ѩ'Ju??S6??\Q6?pHd??~J?K?QMm7n ;h#ZLj?De?}?ie^f^˰H5? 腍l(uD>[_`FWPhd!R??K:"?7@)AZV?r 7?5wTXBJ?v?V>f+kF/2DAfm?prtTiǖȏx?`YC?)Y?(IfbC?S?7Ī|t{??3]B΁)wv#?jL_?lqn +N}?:?C?C6ժFo??tr)~?jVQ??bӁړlȦ?_ +Δ ԟJ;jҶ?]1 ?7yc`HKa>]R?ušq?ˉs/q??[r=?,u0?bu^ZX~_h?~K'ф+U6&MDsRp? M."{ +`z\[z??]߽?\|B~u?^?N~Y_so@6t@73?N?OB˝1<I䲝fjExPGʮT|Ǡ?w?c?Awa6Boy̗Z???Acc'ĭd4?GotMv9????KL'ݢ$DO, L{&]3>csmhJЮ +`ՙѹ-!Q ?Gkm&CW*QӹF:?-l>?F]8WWXWϽG?no?ߠ +iZ z/o>??.(kiBB>F?Zr +$;o)D_gh2?Nz..L@A.u?? @?vv7??zV p6/i?' +(Nr@?c嶋hfqZݨ +ݐM.r4F a|_PM<½kϤ!?o?e? UBzG?HgO*.?"?\?x61FT?"ufC?9م@CϽr?j}?T?_П3NpK?H???h +??p@ ?toiI\?PK  hVAh7 ?  META-INF/NOTICE}̱ +@ ?OQ nn"8?8^?KH?"??7?H?{2?Mѱmݡm?xV??U?ȓd!??c?^p?Ϣ?pTץ} oPK  hV۱A? U 3 org/apache/maven/wrapper/BootstrapMainStarter.classWk{?~ǖ?pJMeǖJ 4?!BvjRt%M]eҦ)?׶hWz//~~)}gU:#.???~Q??,ɧvy`p +l?mӝCk?;{{Vp_6DhD(2gkk8$??wOO_tgT~gDD1ݹ?]??x^^ }&?/3\s:zLQKv_t:??)?EZw?m?H?5akk"? +?EF%•{`MW_Ӄ +??Dh +?p|{F?gCD9.3?kL=???'B2?B{W= W +VA^zs??m?Ȓk{0BT&?F9???Z?{xZvs???E",ɱ!Ғ\?!?(??~B-??:r +|ׯ@?%C+?n?PK  hVpx/2 % 2 org/apache/maven/wrapper/DefaultDownloader$1.classSmoA~?GE`}kXVjaj(?~0[™c?GI~?M??܁Mm^r{3???w0J~?3] c +E??k9C??~?s?Ĵ1}?>wF^LDzu?~TV.??e?9%3ܤUuX:?ReYɌt?>!So]?q`ᛝU8I2~+xD??iŰBSKtԣ^f5Uw??>Yν|y2Wo\?ӛ깞?Sy|?#FO_)?[zŠ@AOyٙirO?_tg@v??:"??cw[;ѰN[.??AbIHywLGtunc΂??X< ,*~K?~M {W?TU?f_FaExVLav?5kT?׎$ƐWR?xDxa:9gv  V?u?sn4[[ŸoҼrGȮB??m?tׇT㯜p H߼N???OTF& ?,‹xI*N ?P?nU,c/x\?Q?.]hp?$OH[CONʙ?[`WY6>rDxےC?? +?tk?ޤ43?[0բZa?u>ٹdb?oOj_d?T󜛳Q?bd?8ݤWܒLXRWĹ}??Ufto?QSenUpvhVqV s[M?3$??E?0?2kg? ?E?? C^fM, +??x"sHf֙?/N䩋KY?T43R^jUW|?S?!_p$T0?!?n? VNƞ92\*<1 ?r8?!#[ē|+۵C;]tnww\?wױz +=CNb?mo^~-EH,?JU,$?l? + +?\`?7:[?w??? + +t`q U]V^q U=%??8???WÇ??ic?=4@ + ڽA4myY2Vq?Xfc%El'Wxp?#1|r G[+cx,?Q>V<)_d?>dJppxF?TE_O~Q|s ??O0DnY֐O?s=_J?*??yuISQ,ĵ,C?"ד?n&q??,? +ޥq_H,h%MP?_?K&:neW?TyIVST! q\SH8?I=HƲ?PNyj?,R +=T3*&?<< (?? YZoG% JmZZQ? ?)?V4P?^BJ?z>?~y~ +ճ5?mY?S?? +?f +1Ĝ;?=HOA?ZQBJ_YXŇEEtY?Ma?HKrx?xAvvyv?QD?;Dc?Ck?RV!\6ZY +RQǯBrH\?HV9z\(V;=3?7 @?PK  hVy]? ? ) org/apache/maven/wrapper/Downloader.classEjP?? +>?lܹm +~LF??u?C?ap?Zu'BD?5\9) +ul+[?F\s1'~?d~\#l-yy[?|Ls嵔r??_?ejG ¸zw8ڤ { + 4 org/apache/maven/wrapper/HashAlgorithmVerifier.classV]wE~?]?JV`)Z%A?@JBdlIvf +~rx +xQzD +oxNJLN??ыď?CKD?czѐ5?ZA?4"D?K?NhJTxAùZu4F9V0K ?;z?b%}Z[rj|^?a?zq??;蚎QodwB`nH˗!N/ +K[Z֨IWBmrzg%#_p$ATAOK椀Vuٕ®P3Ex?U?cjH!q{q=u?C?Q[Jc–la251zRlJ?&?*?1?Ҧ?T?M?Ǵ\? }DHH&?, +3?Xzl[W_F~?z.2jYS+ahkmqJvk?{ٕO*?t?u?g?e/-SOkf/?U?T?1E^7}RUj?Sg?5t'?F3?p?]?Cc܉,J ??yE?q? +?] ?}a~ +ŹT?Z?B +_Y +?Gj?yN|KJo5M+?IF~P>u|?d#Hnar|H?O????ѹr??x????G ",O?3> PK  hVH? ? * org/apache/maven/wrapper/Installer$1.classTYSP?miB????j#LGަ?N??gE?A}x +RpLr;s_?ǝ8j??Z?^xB[ԞڼX?g:.7 a1Ժ?%lu?Q(*2tl?V?eY4?Z#]?IiJ7?O?$?ESH24?C??wө\hUEN3G +d?ŕG?nHtgIy@帾ӌNI>c?0ԲDsK?2ө*1x\???C???Whw?usjGTf?Nr i@Q5d?Kya?g2kq[z@??cG?w?ʘb[gh9 .ן,b@TN?M?\?H??????? +N9?Llx"[?OtBQrw&*?Sc̚a9\[UbxOCxmΙ +?A'ݏ=x{hAO?Y?6??k?x^[VC?"yלt]?Dd 4?IK"L?_RL?㵏Y`'€ϝ??}` +Fh&F?x> y?e9??EP?PpWȺ8E * ?}¹?ˤ2?NE?~?n4nPK  hV[/A? ? ( org/apache/maven/wrapper/Installer.classZ +`Tՙd?3Bȃ"?Y? IPz$`[V??[Jڊ?dnkպvvw][߹??s???zE ?yQB}??dkgvڂµp^'?_? +^E?hw?1:{̚^?i +l#2?w +?# 8???SL?3 +v??:J0[0-b?ٻב~S<?Vutq??ZѶAeJ@0Y+:W>zXǗ?q7?RΤa?u`{`0Qx?mtTuv\*?n*g?8cTm??d?oip,U?A?۵m˖6y??FpE_vvl?`??k?F0???Zoph]po?vh2J??èˊ?ŦL ]Sr&?0?Н*s.? ?ӕGNܘɚjvm}??b@L1?0M[?a?^$_?V l??mZ?-w?)?ny[ DեHx?fw ??st?)m?+?3EcD[ͫfT^?KVzD?i2Gl?Qz??O?L6}Fh?I?Rmy{0T?k1od?U??DT\5[M??,e?!Vv͒?Yt]&U>vZqu?RIӛa[?Ah {uHe?5??+ol6[Q?dkLm[˹](RBrA*[6AF +2 ]W7 ?xr?u7Q?dhraaClgpg(`??Y$i~ň:t]w0l΅Wʨ70M\*hNᤊ`۔n?ͺ6?۩U? +5?]I+1]+??ʏZ?t(0H$[v^+56D>9?i خ6VpܲWNa?4^\mOo?ۚookҲgk}F? +bIW?|- 4k?`h͖x^3ڦ*IܶѠzONTU!TNg؍}GY{#?:?O?cD??`?ƸyŠ?Xcf?~?ta? YՇi> +8wؙoϱ.ܼtlXGxܿو85BeڍB4c?er4P???9??ĵSdU?J?KG1oS8hFw?^jtۺ?gW A**VQ?UT?Y??-bP +?kBlEb?e?s??;g?NοLAnϙ`4Q?T[ EqW4Ct?}A?lS +|Qշ?ᡣ_M}Ei)Gիg?)Q?uxO?M-?}*OT?x>O 4?Վ`z<Mn_k9sg`?z?o?Vj??P?Xnt0C?JzGMi[!W??6W&0?ZK?qqLqY?H???_?~GOY?q +b~W\A?Q?ϟ?I>>qR Q?בz~FFs +w]?jx +J?ZWgV??y?mO]?esCZ=?k8yX?oJ=qGnL???~* I@@χ:VY?#1QxϘyݤі2;ZwRz^OCLP??BC?]֧ +^v 6 ++?Ay/Hiݧo?5S_b~Rf?5԰i)OseL?O??Ct?KIFsH y{{bTQM?.%CR:,swaf3xNO?]>u| +_OpϻsE\yjD????P0$gr?#R?q5Z?յլ qVi?rA5\|\v$}\"?L??$PQxcsxX6`qs;?c=(m*?uvU'{|^t?GO??b>Hg?PgǨ? ?q>x +?M'i +Sx?)e?އ?#? \vD'%_ë ~?8?>r??>F ?Tȃ2?_?9NڝCNԪ*je?[Oa\YIئjzO???MXx$x'!Ji %#4?mH?ic?Kdg~F ?бJr?cNǹ*y PK  hV;n4GR % % org/apache/maven/wrapper/Logger.classSNA-l]n + rEe?ŀ!?Ú6?3aYlwQ| 0Qb?Cn +T(?/ WATALCzw?7jܵ]Q?z?l)? +T +Ih S +?ap?? +! +ӳm!?ǀA +C?>7}Q' +o?Sfq&/̼aMV[?jkKWkEI0E즭ݭ?kͶT?d&?{?Y?= ???S???q?Gk?@~} 0w +W?@?B?FtVh??Q-ѣ?r4`:@XګEJ?ڭv$k?sN_b ???f@?x?*ʥDRa6 LE)?,NףAΛQ??£u +??Nq+je +?֩݉c?k%)<,P]>'v"֩X/5v=FlRYE9*fuB?:yA-3mMVJAAhCE?3`e?*b?-m?-Q#? +?’ۡE(p;.Vp.ʴ+m +?m??%P??Df?W^? +T4I?qӠW?сtP? >W?W`]VpԂA=rKVf}D?fp8hhD?mIh<|؉]`sdNj? +c!\`$ Cf?6e](?A݊^^x??m5B??r?/_?f?x]v?M`e C1??}?5屮D??*p-n9h d$ O& +,?4d]?j?p{ ?q??}?)+emL\8,aLE  +Fx$0RֶQ??!,?4?]q|?V +8?+?x3%[Sɣ???9?I?vg?xx)??th! +^t~T?q<{K/????\D? k塂|??@U*^-FcZTz;%T;.xkU5  ^O?#9q oT?o[VK?jT?5B?oSq}?A??PN?̮m +jm1? f#du`fvhm:^OU| X?4úψGDy[RaQQ|e2vïVgVlu>O*8>ON22Mm޲6F§V|Gæv{į[YAYkf ?xSMPzǢa?ǁiVRH'NaU<"T5l4?|gU|?Cq-Kk?\qec +Kx|~إdmOs?p?:u?헐?vl[܉`tKwYs?ZLwo?\#U?T!?W>xޟ?󹤉&pI|[wT<Vʥe/9c?Tu??Qj|8Q(b${??ďPatJ?x +]c\?;R0;V1[Y?Q-l?ρ?t?Gxx|O?;W>~W?$Y|+,}m?S?D?ʦ?4?XDˮk?_$o?QWyŪ +Ø_?QwMbG[? &'?Kſ}??A#? $eeiHY + K?rRev?D? xp?7g:a_:A u:KmD +m?{1sAUt4{;|ޞ?/gbU,?.xb?\wfoKC_{P?^??O +??ut~LKbnR}X?RJ twu utu{{zۼdLIge?6`\V?g$ ??}oϨCޞ.!?mQ$kgC IfH?>@WOClYbsMVY6iuC h?LZ4 ?b? ?[UK36?}Ii6v.J3SNZ{?LGL;Zrƾiطs?qߥ?A|ѰfZWkI4)?LVNΟCLd? Ti!գyqYr2ޕv?xtme?q?\)V|r?L9?kfڔq!KxCx#ǛRƛᄐRNJ-GX䙄b3???*E?ZԐE +^9L)3o+'ҵj1?a +yp?.?ޙ_F4Z]ey;? +Fz&?i\IUzVՋQg=bA AO׌hl+ц!t;nhV\w??BW??%ʥkQJKIbF+6bHlgZ/?Vl?{r. Qq?騬?]7PY噀1#8|"yR + |I/чeJ XJm??X+.;t1:QO ?9J=b;z?7?I? Sn ?p_?j*Z?lP +06Z?7+?fu T-?f??v ERRВ&iTJz?rKk]wO?'֜yGR?J?Dy]?} ||q?VNb??=X%??B`7N⛧ioY@D +?"DÅ?!?yb?DE?&??8?Lᨄ?)y5*lh"?? +8#[z +.rLb Gk\>c(3Lgy{%Jo&??𧁪NϣPHGv~?B}%"?)"{FTWA??7%"??˩X?73*o?J9q\y=?n]??QY\^B?? # J<6(خ??M>Μ?r85^tJfl?mabD8SY" +D,_G??M$ú,Dr'7?Tx^^労hMfK-L?b9NlR"ʬ|@ˀ~+? +PK  hV|?  > org/apache/maven/wrapper/PathAssembler$LocalDistribution.classR]kA=wv֪ۤ?%IR?mv3Mlv-??xgmA|?gޙ??xpPrQQA8"E2 +އ???Pj?5,?:գ@LE4D\?t*uAY&'a,~\p4!CN{JV4QipbiFhGݨ/jJo?a?MPD&?ChyB+?r>VMw:#? +6Z WZ'{әԡ^@M??=?e +Ru~NzU?xYiv+21% +"H؊ C +MeXvKv$bwIh?e(i}A[?ʹm??ʀlp?cap?6K?;6o?,Ct sCE\-6ЊPa.?TA?tH`XA0SO-P?FYF?)O{?z? 'k'l6!G+?`[f Z\T?ֵwF?R70fI~OA?S{ԾwBHb_y˽g [0B*%d`XzB9?aѣj3*ɰJjܷ_I? +RͰi;?jIS?jDBXP_,>)?55̣bæ@ܐbGsPϰ<?a?B?$$A*?גi3d\I0[T0yc~OE?;~F5?וVV?B3JGFN}){8u9+}#1CT܅V??WDBd?/p\yn/t7w:̭CIdXWNk?|Ê??̘J7Ȧ??TO`eXWv?FLEiQPv?0^ˏSUN?q?l?|?wїh?]^? rSVԖ??EJ?^blZsǙ:Oz5!S O +aWtz??3mP?EG K??T_?k7z?˄݂ +kiV?n\1FiWI{zeh{g?Ӧa[?} ^V?IR\Qڀ????~iuD\> ?W?љ_BhO}Gmn{ݶkhΡcl]daC 6{3؞Aw?v]`???p< +vۮ?G2x<?Y2mev?$ϣ?,YLU͋?h?z`7]?t`Om?y@tVH???бg|Ľ?\??Y[O"Jjxv?=J?? vRTP4>>G??>?5O ??z#YH>+?I}A? \7?ቛJI8O[ u? ?)B*?OTm* 1?y*??*g?pU[G*X?Z]D=HPK  hV + a ' org/apache/maven/wrapper/Verifier.classPN@ }.%W +?&F6?,?UAY?rӫ?:?~.:?X???a?ILN?ySuN,{??3ѹq?8 +NOƽ?$l8x.u^`\HL>??J?D0??[Yߘ0?!4/S.?oMΒ?V\}ʗb(|FŠUDT54@&????mPK  hVW! ? 3 org/apache/maven/wrapper/WrapperConfiguration.classVF?!U s 9PJ?NM ?>P?? ?eɰ??+YG??G{fg? XatN??_p?5{V?t_?܉͖BaxjNT~?Ou_zYzMM?6N???ĎVJf*{Z.ܭh?m?_)fr??OA?ZW?‰?L,ݴ duTQ ?`# Uչɠ7aYr/BS0O)W/]4i߿0r?LJeY-!+x uiV-~?N[!s?l[?;?|U*vv')r`I??惺{:C~z1xO| SmLU*?HnitH?b!TrZaa?azlTuyU`??ZĪX|`A0~5?[R?܍W +kҽ9 ?r˽P?27{O|'mdpZ?i:%^\?7?ZO?ZZ?Cdsj?j?]UɰpZm?tʳwsӐ? ݚDxVVHGT zl(&{l˜?LZ?Hn'Gc2o?L^a7ފ_? RS/my^;Է ?㲣xD-Aoޕu<?duo ~?G?H隹o/kG(uEƕ?x=>y5Fщxt??Ɯk{n?O u?0{?x]۲IW + $idw>JX?IF?R~?y +??).Q̲a??(d4\ +R2Y? ?H;? ?$-?X ?)f?%Q8W HJ +?d:C1? 3n?P?A^IAJؓA?Sj"n?T Ⱦd_|?żi+R??R?,At?n+T ?y-Wd5rF1f?_?nL?PK  hVe  . org/apache/maven/wrapper/WrapperExecutor.classX `?~[e??DBH ?;DXg, d'@ ?{7-]J-(@K-t~$K? ?o?}^  +U + +x2F-ƤhJn?weX +>a{;;#Y;cɥ[Q?ZJ'-33~j]!x?i?d˘7[z +{?3IQgCH촕omΥiհP?g!k[ނ? `%*h%,?p` ?J?ÕF+km԰Lay)AJIV2?acpB]龭|djIc] hmةxg]ӗMքٱotbNp?Ia!?g}}==|? +M^C +??'eքF?҂?&АhӳRs? ? +?֢d?$?LO\5?~W\D>wpNS? |?ΰPoI&Ƭlp?k?g?gQgY??FdT zXai唓hf%G]Gd?'Jtl|_O5RulG?fHI[@b ?햁VG?,ʘv1’pA?ehf#c +~dru?j\c;?f~X)e?X2?3W??W +c7FpE?$4u~;??X.ձ??t̒jQh` tBGJ/?JĴ~?| mY?@vZ}@?Ey ^@????=z??N?NZu\#rV:jaħvo-ހ7jx7?Y?nN&?ua?t?`?ށw?k(ch+"N?ރV?!:S>i{r*!?d7?)W5|(?¡G[޲94U? +~T&#UtrM??n -?c??LLk8?_^q? Ԃi?QM܎;4ܩ?I@?sxRNڭ44q?O?M?GEىf_r\<(AI?x:?1??,`?Ro}Bo {,6/Ej& sYr;b21|#?33lzB^hAAtFS?^'+?H}E b)]L\(SS?ab:f?b)??aOg%3(FzA ???_xޤvWĘ#\_+*??9aJJ G?#vͤ?ĜLeV*~a BV'A9S?_qh|?EK8n,8R4㦢?(Ws~ y{jZpԆeP=??₡i,F?L?g?O?Q?k?;MY;?,?Xy?݅Pd?U7f?Ss$vDs +}؎cx???͵G?Nk ] ?p'?weMw1r76E\Ŷclm?WљC@^9Ħ?]%??9?2&C3w箘CJw׹k?S3x[rg?f۝]FğӸ?x??=O^e|Ol?lQ4W??}g{Џ+1??؁[q!g;?.&wO?Fr!ozA׫3ԙ?O:RΗb?z?טJ?W??^I?k豏nGRwCAX?Kҟid +i +f[>?Vұ???s?~ h ~>{M9?>\}2}~9G8Hߘ?XTFsqy?~W݄`z_7(?$%TH +cu{^?"f?b?B??d~!"÷/sЍwHX?uu'[g)?'ޏe"#[m_ K?XFm? +̬?|BI)#?2+??,q2z1o#ֵ|?cV? ϒHGz?GJ%i-??zmЦC^/?i?I$o{N?vKjYN) OQT?֩sA*D? zs:ؑ?pHݬZ?bﴋߢ Oc +4yc?'S?\?s½F̪w5Hsu=u W??Ư|B?Ժz?MZгaruow~>??? q?TJ]hLWV|?|h5 Wуkta?AzI?N +ȭ~?]W?^\Ξ-Q?k\oMj?T?ư@Mo / N B`Ĥ7} +xσoG+O[B?E?XȾ`?f}d#ֲ'PK  hVlk?I ? 7 org/apache/maven/wrapper/cli/CommandLineConverter.classRJ?>??4?Lв;֌6-YW}6/| JRz|~Nr>? ?-(8KdHYʂ?QW% +"NI31pn"r?J +?C?1?m?~P֏i9[i?1Fz?72??@`X"cSL$qr?]Ly~gOLp0ӯrym[U\--rɼ?VnŲ[&b +PS؅T`7`䲥K?L?mhJJPڣbR5X-qYzV? U m-gp.e3D??)O?? +>PqvPT(?:nք "JMWKi??? Lh?Jw ~ hGZY?Dȝ?fW??x +? +|Jΐ?'I@?pI+W?h㼼c?8H>gCJyjPDN Y???p??Ɛ[hgRZU;ϯΑHN ?BC_? tы_?ߧ?z\rut{?;|z9?,?Ko! [?^aW8 hs7??#8??x?}@NaD?Hs>?|Ft?sh?ny"XJkMi`?R_!M?ȋ?]ƕ0?<pqE +Wl ? I"tpo?b??V@b1?aq?&;b'1m +fC0 ?i +GJ–]P?,k?=8/k?BxY~u,;=S?+Ϻ\?.z??$??X*zX?KnU\?D4˯ۿrE/?UX&( +˦s_,N ?(KL\n^}5 nBX?殰+w??)T0~P/cZ??ָVA|Gbs{a?!xC+[p sʒv֝pY?T^J&ӑos`???k|^AwWN??&HxtqG|?A [jk(?^ǚ?)Yhd.?^?? T?C ~?(oph????AR?swpaIARlYe(ai?E{?U-?66)}ㄊ$Nb?N.KT*?]GDm}`DN?~^kEy!kl?eQ+ ǔc?uLٻawL?!] +6?[ DSb^?mkbicnޖZtL֬mU0&9#tUl#(?ڼ攍'̒?c2,S?h4ayaDK?W? ???6r\6|pjɽu–S3?R? z Gw{ڄ m,xh*??C޵?I|@?℈q~hCR2km3f?w +Q?Rn?i???#?uPUX?j*??YxW?LZ?_Ī`N4̭kiFF&hĊ`&Cu??LcV:?/7?(&_?raeZ4?XaI[?De]8e9?Y?KA}5~.%q}?['*a#X? +??b?]?n7$?J?\4^$H_?!ԓ޲Zi?Qhp+\c0sd?Gte?O˖e:?QL?y??qZpePŗl.f͟E f?\un?]+,?0x{Drox?[? ]CceX?O`?lͷ?Z?`H???k??¯?t*a?_?m+$x?gē} O-O1_?]??g?xA[?5?BM#I3,??ZB???GxB6V?k^?^˱(·WYW?`(?ys?>?{(?C +qX@"?%ى7JS?b__(Pd}??PK  hVF] C T org/apache/maven/wrapper/cli/CommandLineParser$CaseInsensitiveStringComparator.classS]OA=mY([??(-`??%ML?IJ?,Clg-W?}??c?BQm8sw?slga!e#???_w]>މpL(惁Юדn:jI%^m@4U T Cy&ڡKaykdXgH?M?)?nTxapl??0Eov?ͰXj] +?3?8XDN?k?\i?B?>eԜafo?Rh?u?[M?B-Sxl??p$X??n?.?/?n)SҤlCa{\e[vfo;jvvƙ?T?H3sq\?18MnxF2Y?+X?ZWuR2Py IK?trI2?ba??e\?YStdac?GdGFϏȚ +&šŔ?kXsz??VJ< ͢fDkD<#7?#IS?DQ?hSAvRؾ?Zщ- +J|7. +x?{ѻXapTI?iݸY?"??qF]z覀tm,?ϯ&2ڑeI-!# Ҷ;Kn[qd!ɊL.r+C??c@?tJct56-?}WOb???Xݩ? St{7åJOm +g?p 9??Bk7׸  l?B??|B??QQ Ͷ6uS.޾D8r??H(HJhJ?(i+9(n?P3rTB "Q?I0:VG??pc⭋SA}>M?)GͧK]<Ȅfi%Tq?fi ?p?8NS +>-??\8?wTcGs?AgPƦ +ň~QK\XWRsc?q/J@إ?-?UpYPazoH|??y̞?[85n+黤sbX??pbgwdTRB?A|:0E~?}IؔAսئS+?V࢙r3?It;?*?$?J?!+?:[c?A?>bw$k ?z2$)?gS?I9%wxkDߋD7px?????????3O_ z0??B>e֠]Up]Ppߨq-9P?Z<mni?U۞Y]{qyjJD?\e??a饚/Tj,?q +ë +xͥLTJufmoP??ҕtG? PK  hVmKs? ? J org/apache/maven/wrapper/cli/CommandLineParser$MissingOptionArgState.class[OQ?SJ[( xD?Y?Z\ ?eSִg?A ??ga?ٝ9O ?BGa +,(ozM?RߵEnzjV?fɔƪ??}e:?++u״S??Dt?R@bpUEԨ?]N)? 4\?Cr?4Y|ŷ^vM/y²k +q\TpIe 3da1Dx?????FNC9???]?S?n0|K?pR1?ER8?D^Y*IMYBݫW?R2?yJ??S)Q?J5VbR'@?x?2(???ߧ??[1I&???׏{W~??)ovUKNK%?mSuMN?)x@}oa0 ?Bw?G݅?`PO ? +iz???IE?KO퀥7(D>ޢ_TD#C? tdJb y?Y?!,?}s?[ʥ Bhfq?ݐbb?N~jG+1e??.n{ +OJ^ wۤ>6?2?*ڱ?? ,a?PK  hV(uq? ` E org/apache/maven/wrapper/cli/CommandLineParser$OptionComparator.classTmOA~z(?J?|?/6?iD?eSw݁ _?FgqwU9?3_?XA1 +jQ?lNMM^=z? +KfS8znE~ٴ?™izm?COLo??1$?ܪ?{Џ?1İ|~DXMx2 ?V#Ϭ???^W6?UN1$2?}?IC +?܎c cWPvNdYD&%.w?Ya3#R{o? +?C?rW?WXǢI$AӘaЪ????0:-쿇??e??iH3vA-}H^?j??߫elWy}?\ F?0h[a?Dݲa3?D?9g/V_:-?1ː }fqH?k#?6u +GNU?e9R`e xɲSs?!f?SKu?aIcKCI/4UiZ?C+?#??PH %L'r%d?s$ޱ3|l/vsLҸz'!5bNR[nZ?I??ݝ?&?J?_ ?\?S̞???XB&;8yNR aI?.FJi y?9r +V +X?E*`䦼QXKL?PK  hV7A? ! F org/apache/maven/wrapper/cli/CommandLineParser$OptionParserState.classSMO@? +i~іC?Dm*TRHr1+^[??kzC ?['Bpqe?͛^??(\?*ĄHEp*XK?0"MH$>(-ɤY?LJZa%Iiew NwTG? Ĺ?Cp|&K?,8IE<"?˙sfɏ_ ???b*!?0M?L[FtufN?ʊeZ÷{w-Jq?!#^vUo.S???[l?Lɶol6RPѧ_?[ֶvL?D +?HT |>a?bc-??キmP Q? +&#.<۵jMa}b78B?Bw"k3?eIqK?? i?̶C??(/SIH[^?I?;?dVw[VlLY ??Zrc?V.pʄu__FH_EiWsA6EٔY0Lϛ*.MBw(ug??Lpü?ԗm5y`?ߝ?E?Bۄ?J!??m?? lS??hf?A t.? ?F1$)~AMH`$Ex9t?s`Qtb??qUN;om-?h?C@?uW~kA??tƸvitM3L?Sb^c?ɬC98I ך[N??$D?ptpMGߑPG?hQP?e,a t?PK  hVs#? ? K org/apache/maven/wrapper/cli/CommandLineParser$OptionStringComparator.classTOPݶP +T>??6t|3B$%LfH2n?m+?{?M??@|sno ְa@C3C??ۼKap>ׅoj5?W~ zxn1?L?y =[ j2gWc???ۻ?臩c ?[Tn9DHy?vȻp'tU?,G֓?? +q`K`OvrqS Q?:U,w@xCN/|JW=?n;? /mMf?/?z??? +?C^z?u TAaX~! }E!װyS?slnK#;?C fu ?Rw?Oi?W?C)!C׮ Hϟ;d???H[`t?o?v? x??ƴĔfDLjiͯ? ?{I jTx:àGBǜ22ee +J""*?${???b#Y̑az̧?Lz?lU? +_@%??yBRi]?x+ ),P\E:_ģH.v@;SI`?*?y?PK  hV  2 @ org/apache/maven/wrapper/cli/CommandLineParser$ParserState.classSMo@}?upS?P(P ih\ B@BJA9p?Un?ą +H??ĬVZgf????5 )mX9dBx+F?/Τr?k1Iv?|_^SXPĴ"Iʁ +!]d +?BD?w(T?n*cjU kjc=? +SV??ؾXKH?7gO?uxw(:C^)6L<^d ?B}#9??Ez?o??j*k?m.?ּ@?>^4K%PwGxY^Y&??KpZ9f??(%uc(P??jqN4ocgD(̭#?; k?u??9r?OI??? 6P,?bl?g?u@ M)?%&naĄq'&]^'ܻPWc~gmM(2o4n?_MۚK.N\?ic?D?[*ll?x>?PK  hVĆ? g M org/apache/maven/wrapper/cli/CommandLineParser$UnknownOptionParserState.classUISQ? +? !"?j2, R?URLd&5? W?)???^xQ~3?M?3mQ?,[s p?cOŖH䄙M?afg?T9;F?Hf04????V'X?ru6??:kJ*:q??$eMBu?!X?? +XΩE!l\u>??\ ᒊ˸Bi,OBd8H\uJ.??KR~C????oMHXj4,??EqΖpma;+??Yi?(?_ϓ\$o')Q9a??3f~ߐ^sh\aMBJh? +X~S_6фuGPMNf'?6?.4aYP9Lc?uyVw͏p4GđXU +?̃h5цv}Q??bId?UԮ???~T ??O@?^߰?ԋL+JA55х͂HWs$?EuCݦvjn\̜ܞ?\+bSJl?.5q?XE +FMQ]E3UC7?x^_8D9?Wt?賷jeujZ?T:ev?`F|BCA*a b?? ?VU?}T+B2K??>7bk?f?h>NM|Y8b)܎)??SeZnK( +?`Kt?>UD7bR?q/?m +22:?Ҫ? +%tJMHa6;ҖzďUqK΀fCx?`[]cʛGM<07l{/5cW?ZNbw?}??V7Я`䉁sI=V +?+g+gƳJ??n%ܐXD׳?/x /DW|N@Dp{&ۗ^Qao ?/ˎ˓?KxփůTd{>:LrK + +KЃE=n}k#?HF$XJ +U;?&>?HC~#8XJ_&[%Jv?זG +_W*ҩy!%?Wsm??k?&> ?OʾYmbfRuzJ?d?5?SD?nFunɦۦE?մ?vq??9Bt?pnώ??&7m?BI Q?u2?),T**}Ƙ2V??i7dPV0?DL!AYqXɮRj݆"ҧRv?H ?v,xd`R,% +OL/G +? OyB?$4S?B)"4I?z?j?F?QCd?^k`0-d?RԵn01?Ѭ[Z8lL?K=r2tSf3j` k0gGaۗvwq"?k?Mc}Alx`WU]H?luᆮf;|nL2bXa?:~U1܃Ks:q6p|l?Z7O&zdE s0$j?K4Kx?AnS?JT???! FtyCqM?%al?3+N`?u39ۣě_?eاXwg"??Ļֲg]w̼?i?.?a?u}ְOڧ鼈FPJ; hFүT0!Si?|aIeW5I?`UE^z=[ueL?J^:@%TgT[i?n?Ba?{@VILhf?ǁs??$كKGU?=In&P?ͺwJZ +u=%E[N5yL]ՇL1GJ"bG"STTN_1{?r?95×3}@|%07qV??r?vi u[~?ㆈ?A;/Q +`2?#L1SX?\ +>R?ƨkC?hjVĮ +F`?oʞt +Cs׆j_p?C?#?.!w ?#1akKd7仂?LÆs-VNR?C?{UiL)?ӎ"-{aϡ?Uԃ2?3[0>Ll\??܈lG?cOq^CA???YF`rK1? +/F\*ql҉+?\)*?W?ދ??Fy7ˇE1npGVvH?RvLeoj̠fflX?YΔ?񸹜yӈf=?b?g?1^7-HVp̅y\V?*|zfx4?y_V˗?ES52????s +l0p??po Q_?P?8%k?\|8:??XsB +ı 8 "1̻ߓyFr2?Me!_?1?⎼֏} +&'?I zx^?D}x> +k +JGY^# 1c0՛?]11o*1B13?JyB~?0bRr?q)k[?*?t܍^wl;??[N?P?Tb?x(?a???ß}E\Կ)v.IZ[\;?}xsw??A>zc$$&7esF1hQUiܠ1Kc +?2br?49Bc??r1NOX???`j"D +?m؇SI?Qd?!\5ME?R +Vx[,h?bXEJ/Hº +:["KDҥX,~ +Vy|< 1ڐ9 C;N)FQu+k?,)OQ_Tu\G{q^icVS?x?_ +x?^N?#%I?W9XM?RkL?Q¡Wu?=]߳og^?#h䎮|?nggIr]??D.XЙ?CpU?+t$~A?eMs?VX???w?V?\?&e ̹̗g\?+30?ܿ*y*gY=R?G?Ky2 +'_k4r~]|N scop??1Ci;Kn|~σ]9r +o??y;lce'}'wn>ud? PK  hVsP ? 4 org/apache/maven/wrapper/cli/ParsedCommandLine.classWiw?~??-`'۲lMLL +b"?v ?X?D)Ino$??(t֞~hz8??{?Ѽ{y>_ w1???E@ecH ;?{9?4l?hhTJ?OI?p +ZkhюmCE'?J^4L;}?J%I?S6s'Z?Xr]>??Nv?j}tcб]??{?h?hhq?Vvy?(??NH?QgJ?m^$4??pMǸX`j͖ݢ#_gaߧ?WGVT??xT):Rj{Gv]kQW2 +?y?z'cF8?x??͵:t6$/+ъ?zG?^hm`GV^?9Ӊ!p3??rqN?^cYK;'0x??A?ҋ:pvՎmd`-V??z???}\eh%ɶ3 mrpl?k?Q,Zy +?Zogpw{^e,|$?AMYx-7 +U?o*xE`?D`?aDμsC1?nL+pEU?Š\N īx??9i+on?s??V??Y`[jX7?Q?ܜ$sD1'??TeMx?of ǒk#0-K??J*?qZ?~0H]yrKԊ?&~?X.U??aC?jv!DP`Y??rU\tQ??(mGo݀yIqUm+Ys??])?|IM'?>o?77FY? +==[_Zd{Xlt̛?Iɮ +zC22G#tqyk\)y!??oh?P? FhAk?{?b;(oa;]og??LuD,?{M??ѺUxle?ۘ?s G{`?g(aE?I?"?QCsB2?u?@\CVҔy ?oR$?LƅY?X7jƔBMH:Ɏ7hN?rC?>#||{TL%IK?XYwF +?,)?#?/)?ÀCYZ~@G?ƣk)b?,OɾbЗC rx2w {.^?2H݁M55dq%?Oy^??S;Q?R?CG/ۂo~?0kTZîx??ӳ~mui?UB}{]YR\WV?_p_?E?$kRj`]U?Y٣P?3!jw(]Q~?PK  hVvE? a : org/apache/maven/wrapper/cli/ParsedCommandLineOption.classTKOQ=??Uaxm(GIM +?Nč +LT?e@EwN=?y< ??[|7+V??tSs D?!?lP???ݐ%ȸ^UQyZۚxYjWjjzr^7MFKk|[Hhd#'#~P????aa~??7 +6%??J5n+UpsGqt? h?`"ߦ,ؖnVb7FpM¨?( κd4]j Þ"9Vj-?ӂkJuLSBEj2?ęfDvJ?nR6/?{ +Izsְw?bre٩^/?<Җez٪mjkiK?rK?:??E ?5ě@"y?C +?ox?a?xA%Ҫi& +%O?=Ӆ +*JD?&?|c?6!9DS `?H?E}gTzQARH?&O?=? +?WSBD ?D҇7M&?S???{bn7f?>"?tRqةREɢcd?PK  hVx͊ 5 H org/apache/maven/wrapper/cli/ProjectPropertiesCommandLineConverter.classN1? +"n\?&0w^Ÿ"Jq_P23te ??8Q??M_ߞ_ b'?H0?CM*1?|@{xr@gV +%j2 yԮj2?CXDB?Jr C+?OWLs(0?I;f[wI9NS"N~թ4¡Tfhxc|o}kM KV?R7?X?n?v=Ӻ#z ?}İӇixk!#R??<ݦV"u4?v?oʾR?? {X0?Ŏ4+&.k23y Lflbf$na؀"VG??peه)t?D7йit/L@kX;PK  hVkn?? & G org/apache/maven/wrapper/cli/SystemPropertiesCommandLineConverter.classAO??nKBi?2\&q &V;?&eM$??jv?؇p?M%I=m? |Q+(հ?C_*1|Nsxr@8D+JI +J? y4???CLDBb(?# +X?l&i?Ʀ?ÉK^vS?GWvz~???fUpYw%C=1o|??F\?_?=yO>ehu?ڝw>N?q?oJHsЄ?g/Xur??2??-?Q?u?fffpvgX^?,@?|??}YG[AAFVu? PK  hVSLv  = META-INF/maven/org.apache.maven.wrapper/maven-wrapper/pom.xmlVr?+?tuifĞ?"! +6 0 hIw?)1Na?Hm3 ~9: +NG@y"RƳ?e?|߻a 劦?qI?+?µxJ4&???8B $\K4r?H&)-(? SjsOg?Xz)S?0F S??V?3EIc0 *?) +??T%Fc\?`'aHű}D]!2?\ +6_?ƻX? +DR J3ju+tЈskp?"ybZwٙo?tq? Ov)?hZN=|:exCXű)zx?X?i\T~C?Jc|:D>ntщv1]iAet?Eٱ0]Y?4? + Z?k[@!DJ?[? ?TԘ8??tN}?zffi?T_Ҝ\ٞby?yónh$Jb| l??_:q?Qɤm?s  +XVI2Шq?^܈??uX_5do?%"2Yg?[պ?4??7a~CFᤛE;{vX PK  hVY?@ H D META-INF/maven/org.apache.maven.wrapper/maven-wrapper/pom.propertiesK,*LKL.LM,K-/J,(H-J/?- %$&g?g???p PK +  hV  A META-INF/PK  hVlt3? J  ' META-INF/MANIFEST.MFPK +  hV   A org/PK +  hV +  A# org/apache/PK +  hV   AL org/apache/maven/PK +  hV   A{ org/apache/maven/wrapper/PK +  hV   A? org/apache/maven/wrapper/cli/PK +  hV   A? META-INF/maven/PK +  hV (  A META-INF/maven/org.apache.maven.wrapper/PK +  hV 6  A` META-INF/maven/org.apache.maven.wrapper/maven-wrapper/PK  hVG?q +  ? META-INF/DEPENDENCIESPK  hVm ^,  X META-INF/LICENSEPK  hVAh7 ?  ? META-INF/NOTICEPK  hV۱A? U 3 ? org/apache/maven/wrapper/BootstrapMainStarter.classPK  hVpx/2 % 2 ? org/apache/maven/wrapper/DefaultDownloader$1.classPK  hVx2 ? S _ org/apache/maven/wrapper/DefaultDownloader$SystemPropertiesProxyAuthenticator.classPK  hV)G#d P 0  org/apache/maven/wrapper/DefaultDownloader.classPK  hVy]? ? ) ? org/apache/maven/wrapper/Downloader.classPK  hVK>8ڤ { + 4 ? org/apache/maven/wrapper/HashAlgorithmVerifier.classPK  hVH? ? * ? org/apache/maven/wrapper/Installer$1.classPK  hV[/A? ? ( ? org/apache/maven/wrapper/Installer.classPK  hV;n4GR % % G org/apache/maven/wrapper/Logger.classPK  hVb`3N , / J org/apache/maven/wrapper/MavenWrapperMain.classPK  hV|?  > +W org/apache/maven/wrapper/PathAssembler$LocalDistribution.classPK  hV\@j# ? , +Y org/apache/maven/wrapper/PathAssembler.classPK  hVR( c 6 _ org/apache/maven/wrapper/SystemPropertiesHandler.classPK  hV + a ' f org/apache/maven/wrapper/Verifier.classPK  hVW! ? 3 8g org/apache/maven/wrapper/WrapperConfiguration.classPK  hVe  . k org/apache/maven/wrapper/WrapperExecutor.classPK  hV  T ? x org/apache/maven/wrapper/cli/AbstractCommandLineConverter.classPK  hVGX?? + + I $| org/apache/maven/wrapper/cli/AbstractPropertiesCommandLineConverter.classPK  hV?dP g ? P? org/apache/maven/wrapper/cli/CommandLineArgumentException.classPK  hVlk?I ? 7 org/apache/maven/wrapper/cli/CommandLineConverter.classPK  hVIU ? 4 org/apache/maven/wrapper/cli/CommandLineOption.classPK  hV??  6 B? org/apache/maven/wrapper/cli/CommandLineParser$1.classPK  hVb+%e ? I G? org/apache/maven/wrapper/cli/CommandLineParser$AfterFirstSubCommand.classPK  hVwM 0 A ? org/apache/maven/wrapper/cli/CommandLineParser$AfterOptions.classPK  hV?? ? J 1? org/apache/maven/wrapper/cli/CommandLineParser$BeforeFirstSubCommand.classPK  hVF] C T org/apache/maven/wrapper/cli/CommandLineParser$CaseInsensitiveStringComparator.classPK  hV֦ɲ? A K org/apache/maven/wrapper/cli/CommandLineParser$KnownOptionParserState.classPK  hVmKs? ? J ʡ org/apache/maven/wrapper/cli/CommandLineParser$MissingOptionArgState.classPK  hVs]? ? K org/apache/maven/wrapper/cli/CommandLineParser$OptionAwareParserState.classPK  hV(uq? ` E $? org/apache/maven/wrapper/cli/CommandLineParser$OptionComparator.classPK  hV7A? ! F Z? org/apache/maven/wrapper/cli/CommandLineParser$OptionParserState.classPK  hVO4?  A q? org/apache/maven/wrapper/cli/CommandLineParser$OptionString.classPK  hVs#? ? K org/apache/maven/wrapper/cli/CommandLineParser$OptionStringComparator.classPK  hV  2 @ org/apache/maven/wrapper/cli/CommandLineParser$ParserState.classPK  hVĆ? g M ? org/apache/maven/wrapper/cli/CommandLineParser$UnknownOptionParserState.classPK  hV/x ? 4 f? org/apache/maven/wrapper/cli/CommandLineParser.classPK  hVsP ? 4 0? org/apache/maven/wrapper/cli/ParsedCommandLine.classPK  hVvE? a : org/apache/maven/wrapper/cli/ParsedCommandLineOption.classPK  hVx͊ 5 H ? org/apache/maven/wrapper/cli/ProjectPropertiesCommandLineConverter.classPK  hVkn?? & G ? org/apache/maven/wrapper/cli/SystemPropertiesCommandLineConverter.classPK  hVSLv  = META-INF/maven/org.apache.maven.wrapper/maven-wrapper/pom.xmlPK  hVY?@ H D META-INF/maven/org.apache.maven.wrapper/maven-wrapper/pom.propertiesPK 7 7 ? n? \ No newline at end of file diff --git a/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.properties b/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..5f0536e --- /dev/null +++ b/laundrymanagementsystem/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.5/apache-maven-3.9.5-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar diff --git a/laundrymanagementsystem/mvnw b/laundrymanagementsystem/mvnw new file mode 100644 index 0000000..66df285 --- /dev/null +++ b/laundrymanagementsystem/mvnw @@ -0,0 +1,308 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.2.0 +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /usr/local/etc/mavenrc ] ; then + . /usr/local/etc/mavenrc + fi + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "$(uname)" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME="$(/usr/libexec/java_home)"; export JAVA_HOME + else + JAVA_HOME="/Library/Java/Home"; export JAVA_HOME + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=$(java-config --jre-home) + fi +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$JAVA_HOME" ] && + JAVA_HOME=$(cygpath --unix "$JAVA_HOME") + [ -n "$CLASSPATH" ] && + CLASSPATH=$(cygpath --path --unix "$CLASSPATH") +fi + +# For Mingw, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] && + JAVA_HOME="$(cd "$JAVA_HOME" || (echo "cannot cd into $JAVA_HOME."; exit 1); pwd)" +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="$(which javac)" + if [ -n "$javaExecutable" ] && ! [ "$(expr "\"$javaExecutable\"" : '\([^ ]*\)')" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=$(which readlink) + if [ ! "$(expr "$readLink" : '\([^ ]*\)')" = "no" ]; then + if $darwin ; then + javaHome="$(dirname "\"$javaExecutable\"")" + javaExecutable="$(cd "\"$javaHome\"" && pwd -P)/javac" + else + javaExecutable="$(readlink -f "\"$javaExecutable\"")" + fi + javaHome="$(dirname "\"$javaExecutable\"")" + javaHome=$(expr "$javaHome" : '\(.*\)/bin') + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="$(\unset -f command 2>/dev/null; \command -v java)" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + if [ -z "$1" ] + then + echo "Path not specified to find_maven_basedir" + return 1 + fi + + basedir="$1" + wdir="$1" + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=$(cd "$wdir/.." || exit 1; pwd) + fi + # end of workaround + done + printf '%s' "$(cd "$basedir" || exit 1; pwd)" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + # Remove \r in case we run on Windows within Git Bash + # and check out the repository with auto CRLF management + # enabled. Otherwise, we may read lines that are delimited with + # \r\n and produce $'-Xarg\r' rather than -Xarg due to word + # splitting rules. + tr -s '\r\n' ' ' < "$1" + fi +} + +log() { + if [ "$MVNW_VERBOSE" = true ]; then + printf '%s\n' "$1" + fi +} + +BASE_DIR=$(find_maven_basedir "$(dirname "$0")") +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR +log "$MAVEN_PROJECTBASEDIR" + +########################################################################################## +# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +# This allows using the maven wrapper in projects that prohibit checking in binary data. +########################################################################################## +wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" +if [ -r "$wrapperJarPath" ]; then + log "Found $wrapperJarPath" +else + log "Couldn't find $wrapperJarPath, downloading it ..." + + if [ -n "$MVNW_REPOURL" ]; then + wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + else + wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + fi + while IFS="=" read -r key value; do + # Remove '\r' from value to allow usage on windows as IFS does not consider '\r' as a separator ( considers space, tab, new line ('\n'), and custom '=' ) + safeValue=$(echo "$value" | tr -d '\r') + case "$key" in (wrapperUrl) wrapperUrl="$safeValue"; break ;; + esac + done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" + log "Downloading from: $wrapperUrl" + + if $cygwin; then + wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath") + fi + + if command -v wget > /dev/null; then + log "Found wget ... using wget" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + else + wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + fi + elif command -v curl > /dev/null; then + log "Found curl ... using curl" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" + else + curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" + fi + else + log "Falling back to using Java to download" + javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java" + javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class" + # For Cygwin, switch paths to Windows format before running javac + if $cygwin; then + javaSource=$(cygpath --path --windows "$javaSource") + javaClass=$(cygpath --path --windows "$javaClass") + fi + if [ -e "$javaSource" ]; then + if [ ! -e "$javaClass" ]; then + log " - Compiling MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/javac" "$javaSource") + fi + if [ -e "$javaClass" ]; then + log " - Running MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath" + fi + fi + fi +fi +########################################################################################## +# End of extension +########################################################################################## + +# If specified, validate the SHA-256 sum of the Maven wrapper jar file +wrapperSha256Sum="" +while IFS="=" read -r key value; do + case "$key" in (wrapperSha256Sum) wrapperSha256Sum=$value; break ;; + esac +done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" +if [ -n "$wrapperSha256Sum" ]; then + wrapperSha256Result=false + if command -v sha256sum > /dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c > /dev/null 2>&1; then + wrapperSha256Result=true + fi + elif command -v shasum > /dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c > /dev/null 2>&1; then + wrapperSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." + echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties." + exit 1 + fi + if [ $wrapperSha256Result = false ]; then + echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2 + echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2 + echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2 + exit 1 + fi +fi + +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$JAVA_HOME" ] && + JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") + [ -n "$CLASSPATH" ] && + CLASSPATH=$(cygpath --path --windows "$CLASSPATH") + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR") +fi + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +# shellcheck disable=SC2086 # safe args +exec "$JAVACMD" \ + $MAVEN_OPTS \ + $MAVEN_DEBUG_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/laundrymanagementsystem/mvnw.cmd b/laundrymanagementsystem/mvnw.cmd new file mode 100644 index 0000000..95ba6f5 --- /dev/null +++ b/laundrymanagementsystem/mvnw.cmd @@ -0,0 +1,205 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.2.0 +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* +if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %WRAPPER_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file +SET WRAPPER_SHA_256_SUM="" +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B +) +IF NOT %WRAPPER_SHA_256_SUM%=="" ( + powershell -Command "&{"^ + "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^ + "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^ + " Write-Output 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^ + " Write-Output 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^ + " Write-Output 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^ + " exit 1;"^ + "}"^ + "}" + if ERRORLEVEL 1 goto error +) + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %WRAPPER_JAR% ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" +if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%"=="on" pause + +if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% + +cmd /C exit /B %ERROR_CODE% diff --git a/laundrymanagementsystem/pom.xml b/laundrymanagementsystem/pom.xml new file mode 100644 index 0000000..cb75f17 --- /dev/null +++ b/laundrymanagementsystem/pom.xml @@ -0,0 +1,71 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.7.5 + + + com.guangzongyaozu + laundry-management + 0.0.1-SNAPSHOT + laundry-management + laundry-management + + 11 + + + + + + + + + + com.mysql + mysql-connector-j + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + + + com.baomidou + mybatis-plus-boot-starter + 3.5.3.1 + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplication.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplication.java new file mode 100644 index 0000000..4a078eb --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplication.java @@ -0,0 +1,11 @@ +package com.guandongzu.laundrymanagementsystem; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class LaundryManagementApplication { + public static void main(String[] args) { + SpringApplication.run(LaundryManagementApplication.class, args); + } +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AdministratorMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AdministratorMapper.java new file mode 100644 index 0000000..d4c470a --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AdministratorMapper.java @@ -0,0 +1,18 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Administrator; +import com.guandongzu.laundrymanagementsystem.pojo.AdminInfo; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface AdministratorMapper { + /** + * 查看所有管理员的基本信息 + */ + @Select("SELECT adminID, name, phoneNumber FROM administrator") + List selectAllAdmin(); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AnnouncementMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AnnouncementMapper.java new file mode 100644 index 0000000..7675b16 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/AnnouncementMapper.java @@ -0,0 +1,15 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.guandongzu.laundrymanagementsystem.pojo.Announcement; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +@Mapper +public interface AnnouncementMapper extends BaseMapper { + /** + * 查询最新的公告信息 + */ + @Select("SELECT * FROM announcement ORDER BY addTime DESC LIMIT 1") + Announcement selectLastestAnnouncement(); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.java new file mode 100644 index 0000000..3ce7679 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.java @@ -0,0 +1,117 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Cloth; +import com.guandongzu.laundrymanagementsystem.pojo.ClothCleaningInfo; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface ClothMapper{ + /** + * 查看所有衣物清洗信息 + */ + @Select("SELECT clothID, clothType, quantity,cleaningType FROM cloth") + List selectAllClothCleaningInfo(); + + /** + * 查询所有衣物数量为1的衣物记录 + */ + @Select("SELECT * FROM cloth WHERE quantity = 1") + List selectClothByQuantityOne(); + + /** + * 查询所有衣物类型为“毛衣”或“卫衣”的衣物信息 + */ + @Select("SELECT * FROM cloth WHERE clothType IN ('毛衣', '卫衣')") + List selectClothByTypeSweaterSweatshirt(); +// /** +// * 根据id选择衣服 +// * +// * @return +// */ +// @Select("select * from cloth where id = #{id}") +// Reservation selectById(Integer id); +// /** +// * 增加衣服 +// */ +// @Options(useGeneratedKeys = true, keyProperty = "id") +// @Insert("insert into cloth (id, type, sum, user_id) " + +// "values (null, #{type}, #{sum}, #{userId})") +// void saveCloth(Cloth cloth); +// /** +// * 将衣服添加到清洗方式表 +// */ +// void saveMethod(Integer clothId); +// /** +// * 将衣服添加到预约表 +// */ +// @Insert("insert into reservation (user_id, notes) VALUES " + +// "(#{userId}, #{notes})") +// void saveRes(Reservation reservation); +// +// /** +// * 用户预约信息查询 +// */ +// @Select("select * from reservation where user_id = #{id}") +// List selectResById(User user); +// /** +// * 用户取消预约 +// */ +// @Delete("delete from reservation where id = #{id}") +// void deleteRes(Integer id); +// /** +// * 用户查看订单 +// */ +// @Select("select * from orders where user_id = #{id}") +// List selectOrdById(Integer id); +// /** +// * 用户删除订单 +// */ +// @Delete("delete from orders where id = #{id}") +// void deleteOrd(Integer id); +// +// /** +// * 加入订单 +// */ +// @Options(useGeneratedKeys = true, keyProperty = "id") +// @Insert("insert into orders (state, user_id, cost) values ('等待', #{userId}, #{cost})") +// void addOrder(Order order); +// /** +// * 调用优惠函数 +// */ +// void preferential(Integer order_id); +// /** +// * 修改用户为vip +// */ +// void upgrade(Integer userid); +// /** +// * 修改预约 +// */ +// void updateById(Reservation r); +// /** +// * 查找预约 +// */ +// @Select("select * from reservation where id = #{id}") +// Reservation selectResByIdReturnOne(Integer id); +// +// /** +// * 插入中间表 +// */ +// @Insert("insert into cloth_orders_res (reservation_id, order_id, cloth_id) VALUES " + +// "(#{id}, #{id1}, #{id2})") +// void insertIntoMid(Integer id, Integer id1, Integer id2); +} + + + + + + + + + + + diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/EvaluationMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/EvaluationMapper.java new file mode 100644 index 0000000..6232bd6 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/EvaluationMapper.java @@ -0,0 +1,29 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Evaluation; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface EvaluationMapper { + /** + * 查询所有评价类型为“四星”或“五星”的评价 + */ + @Select("SELECT * FROM evaluation WHERE type IN ('四星','五星')") + List selectEvaluationByTypeStars(); + + /** + * 查询所有评价内容以“好评”开头的评价 + */ + @Select("SELECT * FROM evaluation WHERE content LIKE '好评%'") + List selectEvaluationByContentStartingWithGoodReview(); + + /** + * 查询所有评价内容包含“好”的评价 + */ + @Select("SELECT * FROM evaluation WHERE content LIKE '%好%'") + List selectEvaluationByContentContainingGood(); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/InformationMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/InformationMapper.java new file mode 100644 index 0000000..5bdd035 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/InformationMapper.java @@ -0,0 +1,29 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Log; +import com.guandongzu.laundrymanagementsystem.pojo.Announcement; +import com.guandongzu.laundrymanagementsystem.pojo.AdminInfo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface InformationMapper { + /** + * 公告 + */ + @Select("select * from notice") + List selectALl(); + /** + * 消息 + */ + @Select("select * from user_message_v1 where id = #{id}") + List selectAllMsg(Integer id); + + /** + * 系统日志 + */ + @Select("select * from log") + List selectAllLogs(); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/OrderMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/OrderMapper.java new file mode 100644 index 0000000..3cde2c3 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/OrderMapper.java @@ -0,0 +1,62 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Order; +import com.guandongzu.laundrymanagementsystem.pojo.OrderDetails; +import com.guandongzu.laundrymanagementsystem.pojo.UserOrderInfo; +import com.guandongzu.laundrymanagementsystem.pojo.query.OrderLogInfo; +import com.guandongzu.laundrymanagementsystem.pojo.query.OrderUserInfo; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface OrderMapper { + /** + * 查看所有订单的基本信息 + */ + @Select("SELECT orderID, userID, addTime, state FROM `order`") + List selectAllOrders(); + + /** + * 查看所有用户及其相关订单信息 + */ + @Select("SELECT u.name, o.orderID, o.state FROM user u JOIN `order` o ON u.userID = o.orderID") + List selectAllUserOrderInfo(); + + /** + * 查询所有清洗费用大于80的订单 + */ + @Select("SELECT * FROM `order` WHERE cost > #{cost}") + List selectOrderGte(int cost); + + /** + * 查询所有清洗费用在50到100之间的订单 + */ + @Select("SELECT * FROM `order` WHERE cost BETWEEN 50 AND 100") + List selectOrderBetween50And100(); + + /** + * 查询所有订单及其对应用户的姓名和手机号 + */ + @Select("SELECT o.orderID, u.name, u.phoneNumber FROM `order` o JOIN user u ON o.userID = u.userID") + List selectOrderWithUserInfo(); + + /** + * 查询所有订单及其对应的日志 + */ + @Select("SELECT " + + "o.orderID, o.addTime AS orderAddTime, o.cost, l.logID, l.addTime AS logAddTime, l.state AS logState " + + "FROM `order` o " + + "JOIN log l ON o.orderID = l.orderID") + List selectOrderWithLogInfo(); + + /** + * 查询所有清洗费用高于平均费用的订单 + */ + @Select("SELECT * FROM `order` " + + "WHERE cost > (SELECT AVG(cost) FROM `order`)") + List selectOrderAboveAverageCost(); + +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReminderMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReminderMapper.java new file mode 100644 index 0000000..487a2b0 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReminderMapper.java @@ -0,0 +1,10 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.guandongzu.laundrymanagementsystem.pojo.Reminder; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ReminderMapper extends BaseMapper { + +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReservationMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReservationMapper.java new file mode 100644 index 0000000..872faa4 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/ReservationMapper.java @@ -0,0 +1,37 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Reservation; +import com.guandongzu.laundrymanagementsystem.pojo.ReservationDetails; +import com.guandongzu.laundrymanagementsystem.pojo.query.ReservationUserInfo; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface ReservationMapper { + /** + * 查看所有预约信息 + */ + @Select("SELECT reservationID, userID,applicationTime,examine FROM reservation") + List selectAllReservations(); + + /** + * 查询所有预约申请日期在2024年9月1日之后的预约 + */ + @Select("SELECT * FROM reservation WHERE applicationTime > '2024-09-01'") + List selectReservationAfterDate(); + + /** + * 查询所有预约及其对应用户的邮箱和申请日期 + */ + @Select("SELECT r.reservationID, u.email, r.applicationTime FROM reservation r JOIN user u ON r.userID = u.userID") + List selectReservationWithUserEmailAndDate(); + + /** + * 增加新预约 + */ + @Insert("INSERT INTO reservation(userID, notes, applicationTime) VALUES(#{userID},#{notes},#{applicationTime})") + void insertNewReservation(Reservation reservation); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.java new file mode 100644 index 0000000..91e689d --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.java @@ -0,0 +1,73 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.User; +import com.guandongzu.laundrymanagementsystem.pojo.UserInfo; +import org.apache.ibatis.annotations.*; + +import java.util.List; + +@Mapper +public interface UserMapper { + /** + * 查看所有用户的基本信息 + */ + @Select("SELECT userID, account, addTime,name, email,phoneNumber FROM user") + List selectAllUsers(); + + /** + * 查询所有性别为“女”的用户信息 + * @return + */ + @Select("SELECT * FROM user WHERE sex=#{str}") + List selectUserBySex(String str); + + /** + * 查询所有用户的手机号码,并排除邮箱为“aaaaa@abc.com”的用户 + */ + @Select("SELECT name, phoneNumber FROM user WHERE email <> 'aaaaa@abc.com'") + List selectUserPhoneExcludingEmail(); + + /** + * 查询所有用户名中包含“李”的用户 + */ + @Select("SELECT * FROM user WHERE name LIKE '%李%'") + List selectUserByNameContainingLi(); + + /** + * 查询所有有超过1条评价的用户信息 + */ + @Select("SELECT * FROM user " + + "WHERE userID IN (SELECT userID FROM evaluation GROUP BY userID HAVING COUNT(*) > 1)") + List selectUserWithMoreThanOneEvaluation(); + + /** + * 查询所有有评价的用户 + */ + @Select("SELECT * FROM user u " + + "WHERE EXISTS (SELECT 1 FROM evaluation e WHERE e.userID = u.userID)") + List selectUserWithEvaluations(); + + /** + * 查询所有有未审核预约的用户 + */ + @Select("SELECT * FROM user u " + + "WHERE EXISTS (SELECT 1 FROM reservation r WHERE r.userID = u.userID AND r.examine = '否')") + List selectUserWithPendingReservations(); + /** + * 根据姓名查找用户 + */ + @Select("SELECT * FROM user WHERE name = #{name}") + User selectUserByName(String name); + + /** + * 根据姓名查找用户对应id + */ + @Select("SELECT userID FROM user WHERE name = #{name}") + int selectIdByName(String name); + /** + * 更新个人信息 + */ + @Update("UPDATE user SET account = #{account},password = #{password}, name = #{name}, sex = #{sex}, email = #{email},phoneNumber = #{phoneNumber} WHERE userID = #{userID}") + void updateUserInfo(User user); + +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/WmachineMapper.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/WmachineMapper.java new file mode 100644 index 0000000..de6028d --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/mapper/WmachineMapper.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.mapper; + +import com.guandongzu.laundrymanagementsystem.pojo.Wmachine; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface WmachineMapper { + /** + * 查询所有洗衣机状态为“空闲”的洗衣机 + */ + @Select("SELECT * FROM wmachine WHERE state = '空闲'") + List selectWmachineByStateFree(); +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/AdminInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/AdminInfo.java new file mode 100644 index 0000000..a3f38ee --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/AdminInfo.java @@ -0,0 +1,14 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AdminInfo { + private Integer adminID; + private String name; + private String phoneNumber; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Administrator.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Administrator.java new file mode 100644 index 0000000..605fbde --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Administrator.java @@ -0,0 +1,16 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Administrator { + Integer adminID; + String account; + String password; + String name; + String phoneNumber; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Announcement.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Announcement.java new file mode 100644 index 0000000..6702d31 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Announcement.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Announcement { + Integer announcementID; + String title; + String content; + LocalDateTime addTime; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Cloth.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Cloth.java new file mode 100644 index 0000000..082307f --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Cloth.java @@ -0,0 +1,16 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Cloth { + Integer clothID; + String clothType; + Integer quantity; + String cleaningType; + String color; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ClothCleaningInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ClothCleaningInfo.java new file mode 100644 index 0000000..51d5f38 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ClothCleaningInfo.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ClothCleaningInfo { + private Integer clothID; + private String clothType; + private int quantity; + private String cleaningType; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Evaluation.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Evaluation.java new file mode 100644 index 0000000..c9bff1b --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Evaluation.java @@ -0,0 +1,16 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Evaluation { + Integer evaluationID; + String type; + Integer orderID; + Integer userID; + String content; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Log.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Log.java new file mode 100644 index 0000000..cac18d8 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Log.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Log { + Integer logID; + Integer orderID; + LocalDateTime addTime; + String state; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Order.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Order.java new file mode 100644 index 0000000..d737f3a --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Order.java @@ -0,0 +1,18 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Order { + Integer orderID; + LocalDateTime addTime; + String state; + Integer userID; + Integer cost; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/OrderDetails.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/OrderDetails.java new file mode 100644 index 0000000..a1d9cb2 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/OrderDetails.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class OrderDetails { + private Integer orderID; + private Integer userID; + private LocalDateTime addTime; + private String state; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reminder.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reminder.java new file mode 100644 index 0000000..8f72370 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reminder.java @@ -0,0 +1,18 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Reminder { + Integer reminderID; + String title; + String content; + LocalDate date; + Integer orderId; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reservation.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reservation.java new file mode 100644 index 0000000..c515b32 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Reservation.java @@ -0,0 +1,21 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Reservation { + Integer reservationId; + LocalDateTime addTime; + Integer userID; + String notes; + LocalDate applicationTime; + String examine; + String reply; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ReservationDetails.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ReservationDetails.java new file mode 100644 index 0000000..a58984a --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/ReservationDetails.java @@ -0,0 +1,17 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ReservationDetails { + private Integer reservationID; + private Integer userID; + private LocalDate applicationTime; + private String examine; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/User.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/User.java new file mode 100644 index 0000000..7216e91 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/User.java @@ -0,0 +1,21 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class User { + Integer userID; + LocalDateTime addTime; + String account; + String password; + String name; + String sex; + String email; + String phoneNumber; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserInfo.java new file mode 100644 index 0000000..0f69188 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserInfo.java @@ -0,0 +1,19 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class UserInfo { + private Integer userID; + private String account; + private LocalDateTime addTime; + private String name; + private String email; + private String phoneNumber; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserOrderInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserOrderInfo.java new file mode 100644 index 0000000..99c1e3d --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/UserOrderInfo.java @@ -0,0 +1,16 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class UserOrderInfo { + private String name; + private Integer orderID; + private String state; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Wmachine.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Wmachine.java new file mode 100644 index 0000000..4f20d57 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/Wmachine.java @@ -0,0 +1,15 @@ +package com.guandongzu.laundrymanagementsystem.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Wmachine { + Integer wmachineID; + String state; + String workPhase; + String type; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderLogInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderLogInfo.java new file mode 100644 index 0000000..506b034 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderLogInfo.java @@ -0,0 +1,18 @@ +package com.guandongzu.laundrymanagementsystem.pojo.query; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class OrderLogInfo { + Integer orderID; + LocalDateTime orderAddTime; + Integer cost; + Integer logID; + LocalDateTime logAddTime; + String logState; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderUserInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderUserInfo.java new file mode 100644 index 0000000..76f8179 --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/OrderUserInfo.java @@ -0,0 +1,13 @@ +package com.guandongzu.laundrymanagementsystem.pojo.query; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class OrderUserInfo { + Integer orderID; + String name; + String phoneNumber; +} diff --git a/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/ReservationUserInfo.java b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/ReservationUserInfo.java new file mode 100644 index 0000000..897c8cc --- /dev/null +++ b/laundrymanagementsystem/src/main/java/com/guandongzu/laundrymanagementsystem/pojo/query/ReservationUserInfo.java @@ -0,0 +1,15 @@ +package com.guandongzu.laundrymanagementsystem.pojo.query; + +import java.time.LocalDate; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ReservationUserInfo { + Integer reservationID; + String email; + LocalDate applicationTime; +} diff --git a/laundrymanagementsystem/src/main/resources/application.properties b/laundrymanagementsystem/src/main/resources/application.properties new file mode 100644 index 0000000..3206c0e --- /dev/null +++ b/laundrymanagementsystem/src/main/resources/application.properties @@ -0,0 +1,7 @@ +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver +spring.datasource.url=jdbc:mysql://localhost:3306/laundrymanagementsystem +spring.datasource.username=root +spring.datasource.password=123456 +mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl +mybatis.configuration.map-underscore-to-camel-case=true +mybatis-plus.global-config.db-config.id-type=auto \ No newline at end of file diff --git a/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.xml b/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.xml new file mode 100644 index 0000000..034d3c1 --- /dev/null +++ b/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/ClothMapper.xml @@ -0,0 +1,23 @@ + + + + + {call clothToMethod (#{clothId, mode=IN})} + + + {call preferential (#{order_id, mode=IN})} + + + {call upgradeVIP (#{userid, mode=IN})} + + + update reservation + + examine = #{examine}, + reply = #{reply}, + + where id = #{id} + + \ No newline at end of file diff --git a/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.xml b/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.xml new file mode 100644 index 0000000..dd6baf9 --- /dev/null +++ b/laundrymanagementsystem/src/main/resources/com/guandongzu/laundrymanagementsystem/mapper/UserMapper.xml @@ -0,0 +1,20 @@ + + + + + update user + + name = #{name}, + sex = #{sex}, + email = #{email}, + phoneNumber = #{phoneNumber}, + password = #{password} + + where id = #{id} + + + {call deleteUser(#{userid, mode=IN})} + + \ No newline at end of file diff --git a/laundrymanagementsystem/src/test/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplicationTests.java b/laundrymanagementsystem/src/test/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplicationTests.java new file mode 100644 index 0000000..403a596 --- /dev/null +++ b/laundrymanagementsystem/src/test/java/com/guandongzu/laundrymanagementsystem/LaundryManagementApplicationTests.java @@ -0,0 +1,595 @@ +package com.guandongzu.laundrymanagementsystem; + +import com.guandongzu.laundrymanagementsystem.mapper.*; +import com.guandongzu.laundrymanagementsystem.pojo.*; +import com.guandongzu.laundrymanagementsystem.pojo.query.*; +import lombok.extern.slf4j.Slf4j; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.time.LocalDate; +import java.util.List; +import java.util.Scanner; + +@SpringBootTest +@Slf4j +class LaundryManagementApplicationTests { + @Autowired + private UserMapper userMapper; + @Autowired + private AdministratorMapper administratorMapper; + @Autowired + private ClothMapper clothMapper; + @Autowired + private InformationMapper reminderMapper; + @Autowired + private AnnouncementMapper announcementMapper; + @Autowired + private OrderMapper orderMapper; + @Autowired + private ReservationMapper reservationMapper; + @Autowired + private WmachineMapper wmachineMapper; + @Autowired + private EvaluationMapper evaluationMapper; + + //用户模块 + + /** + * 查看个人信息 + */ + @Test + void checkUserInfo() { + User user = userMapper.selectUserByName("王浩轩"); + System.out.println(user); + } + + /** + * 修改个人信息 + */ + @Test + void editUserInfo() { + User user = userMapper.selectUserByName("王浩轩"); + user.setAccount("1327677915"); + userMapper.updateUserInfo(user); + System.out.println("修改后的信息:"+user); + } + + /** + * 创建预约信息 + */ + + //Integer reservationId; + // LocalDateTime addTime; + // Integer userID; + // String notes; + // LocalDate applicationTime; + // String examine; + // String reply; + @Test + void createNewReservation() { + Reservation reservation = new Reservation(); + reservation.setUserID(userMapper.selectIdByName("王浩轩")); + reservation.setNotes("洗羽绒服"); + reservation.setApplicationTime(LocalDate.parse("2024-12-31")); + reservationMapper.insertNewReservation(reservation); + } + /** + * 集合比较1:查询所有评价类型为“四星”或“五星”的评价 + */ + @Test + void findEvaluationByTypeStars() { + List evaluations = evaluationMapper.selectEvaluationByTypeStars(); + evaluations.forEach(System.out::println); + } + + /** + * 范围比较3:查询最新的公告信息 + */ + @Test + void findLastestAnnoucement() { + Announcement announcement = announcementMapper.selectLastestAnnouncement(); + System.out.println(announcement); + } + + /** + * 字符串相似比较2:查询所有评价内容以“好评”开头的评价 + */ + @Test + void findEvaluationByContentStartingWithGoodReview() { + List evaluations = evaluationMapper.selectEvaluationByContentStartingWithGoodReview(); + evaluations.forEach(System.out::println); + } + + /** + * 字符串相似比较3:查询所有评价内容包含“好”的评价 + */ + @Test + void findEvaluationByContentContainingGood() { + List evaluations = evaluationMapper.selectEvaluationByContentContainingGood(); + evaluations.forEach(System.out::println); + } + //管理员模块 + + /** + * 用户基本信息视图 + */ + @Test + void findAllUser() { + List userInfoList = userMapper.selectAllUsers(); + userInfoList.forEach(System.out::println); + } + + /** + * 订单信息视图 + */ + @Test + void findAllOrder() { + List OrderDetailsList = orderMapper.selectAllOrders(); + OrderDetailsList.forEach(System.out::println); + } + + /** + * 预约信息视图 + */ + @Test + void findAllReservation() { + List ReservationDetailsList = reservationMapper.selectAllReservations(); + ReservationDetailsList.forEach(System.out::println); + } + + /** + * 衣物清洗信息视图 + */ + @Test + void findAllClothCleaningInfo() { + List ClothCleaningInfoList = clothMapper.selectAllClothCleaningInfo(); + ClothCleaningInfoList.forEach(System.out::println); + } + + /** + * 用户及其相关订单信息视图 + */ + @Test + void findAllUserOrderInfo() { + List UserOrderInfoList = orderMapper.selectAllUserOrderInfo(); + UserOrderInfoList.forEach(System.out::println); + } + + /** + * 比较查询1:查询所有性别为“女”的用户信息 + */ + @Test + void findUserBySex() { + List Users = userMapper.selectUserBySex("女"); + Users.forEach(System.out::println); + } + + /** + * 比较查询2:查询所有清洗费用大于80的订单 + */ + @Test + void findOrderGte() { + List Orders = orderMapper.selectOrderGte(80); + Orders.forEach(System.out::println); + } + + /** + * 比较查询3:查询所有洗衣机状态为“空闲”的洗衣机 + */ + @Test + void findWmachineByStateFree() { + List machines = wmachineMapper.selectWmachineByStateFree(); + machines.forEach(System.out::println); + } + + /** + * 比较查询4:查询所有衣物数量为1的衣物记录 + */ + @Test + void findClothByQuantityOne() { + List clothes = clothMapper.selectClothByQuantityOne(); + clothes.forEach(System.out::println); + } + + /** + * 比较查询5:查询所有用户的手机号码,并排除邮箱为“aaaaa@abc.com”的用户 + */ + @Test + void findUserPhoneExcludingEmail() { + List users = userMapper.selectUserPhoneExcludingEmail(); + users.forEach(System.out::println); + } + + /** + * 集合比较2:查询所有衣物类型为“毛衣”或“卫衣”的衣物信息 + */ + @Test + void findClothByTypeSweaterSweatshirt() { + List clothes = clothMapper.selectClothByTypeSweaterSweatshirt(); + clothes.forEach(System.out::println); + } + + /** + * 范围比较1:查询所有清洗费用在50到100之间的订单 + */ + @Test + void findOrderBetween50And100() { + List orders = orderMapper.selectOrderBetween50And100(); + orders.forEach(System.out::println); + } + + /** + * 范围比较2:查询所有预约申请日期在2024年9月1日之后的预约 + */ + @Test + void findReservationAfterDate() { + List reservations = reservationMapper.selectReservationAfterDate(); + reservations.forEach(System.out::println); + } + + /** + * 字符串相似比较1:查询所有用户名中包含“李”的用户 + */ + @Test + void findUserByNameContainingLi() { + List users = userMapper.selectUserByNameContainingLi(); + users.forEach(System.out::println); + } + + /** + * 多表连接1:查询所有预约及其对应用户的邮箱和申请日期 + */ + @Test + void findReservationWithUserEmailAndDate() { + List reservations = reservationMapper.selectReservationWithUserEmailAndDate(); + reservations.forEach(System.out::println); + } + + /** + * 多表连接2:查询所有订单及其对应用户的姓名和手机号 + */ + @Test + void findOrderWithUserInfo() { + List orders = orderMapper.selectOrderWithUserInfo(); + orders.forEach(System.out::println); + } + + /** + * 多表查询3:查询所有订单及其对应的日志 + */ + @Test + void findOrderWithLogInfo() { + List orders = orderMapper.selectOrderWithLogInfo(); + orders.forEach(System.out::println); + } + + /** + * 嵌套查询1:查询所有清洗费用高于平均费用的订单 + */ + @Test + void findOrderAboveAverageCost() { + List orders = orderMapper.selectOrderAboveAverageCost(); + orders.forEach(System.out::println); + } + + /** + * 嵌套查询2:查询所有有超过1条评价的用户信息 + */ + @Test + void findUserWithMoreThanOneEvaluation() { + List users = userMapper.selectUserWithMoreThanOneEvaluation(); + users.forEach(System.out::println); + } + + /** + * EXISTS查询1:查询所有有评价的用户 + */ + @Test + void findUserWithEvaluations() { + List users = userMapper.selectUserWithEvaluations(); + users.forEach(System.out::println); + } + + /** + * EXISTS查询2:查询所有有未审核预约的用户 + */ + @Test + void findUserWithPendingReservations() { + List users = userMapper.selectUserWithPendingReservations(); + users.forEach(System.out::println); + } + //系统管理员模块 + + /** + * 管理员基本信息视图 + */ + @Test + void findAllAdmin() { + List adminInfoList = administratorMapper.selectAllAdmin(); + adminInfoList.forEach(System.out::println); + } + + +// /** +// * 用户注册 +// */ +// @Test +// void register() { +// User user = new User(); +// user.setAccount("123456"); +// user.setPassword("123456"); +// user.setName("zhwsadff"); +// user.setSex("男"); +// user.setEmail("123jfasdhb@qq.com"); +// user.setPhoneNumber("18576290382"); +// String s = userMapper.selectByName(user.getName()); +// if (s == null) { +// log.info("注册成功"); +// userMapper.SaveUser(user); +// } else { +// log.info("重名了,注册失败!"); +// } +// } +// +// /** +// * 用户登录 +// */ +// @Test +// void login() { +// User user = new User(); +// user.setAccount("298427"); +// user.setPassword("fashba"); +// User u = userMapper.findUser(user); +// if (u == null) { +// log.info("请检查用户名和密码!"); +// } else { +// log.info("用户登陆成功!"); +// } +// } +// +// /** +// * 新增衣服,自动添加到清洗方式、预约表 +// */ +//// @Test +//// void addCloth() { +//// Cloth cloth = new Cloth(); +//// cloth.setSum(5); +//// cloth.setUserId(25); +//// cloth.setType("衬衫"); +//// Reservation reservation = new Reservation(); +//// reservation.setUserId(cloth.getUserId()); +//// reservation.setNotes("好好洗洗"); +//// +//// clothMapper.saveCloth(cloth); +//// clothMapper.saveRes(reservation); +//// clothMapper.saveMethod(cloth.getId()); +//// } +// +// /** +// * 用户查看、取消预约 +// */ +// @Test +// void findRes() { +// User user = new User(); +// user.setName("王浩轩"); +//// user.setId(1); +// +// List reservation = clothMapper.selectResById(user); +// log.info("用户的预约信息:{}", reservation); +// } +// +// @Test +// void deleteRes() { +// User user = new User(); +// user.setName("小张"); +//// user.setId(20); +// +// clothMapper.deleteRes(21); +// } +// +// /** +// * 查看订单 +// */ +// @Test +// void findOrd() { +// User user = new User(); +// user.setName("小张"); +//// user.setId(20); +// +//// List orders = clothMapper.selectOrdById(user.getId()); +//// log.info("用户订单:{}", orders); +// } +// +// /** +// * 查看系统公告 +// */ +// @Test +// void findNotice() { +// List announcements = reminderMapper.selectALl(); +// announcements.forEach(System.out::println); +// } +// +// /** +// * 查看并修改个人信息 +// */ +// @Test +// void findUser() { +// User user = new User(); +// user.setName("小孙"); +//// user.setId(25); +// +// User u = userMapper.findUserByid(user); +// log.info("用户:{}", u); +// } +// +// @Test +// void updateUser() { +// User user = new User(); +// user.setName("小孙"); +//// user.setId(25); +// user.setAccount("1244985"); +// user.setPassword("194852"); +// user.setSex("男"); +// user.setEmail("10122122@qq.com"); +// user.setPhoneNumber("102857395729"); +// +// userMapper.UpdateUser(user); +// } +// +// /** +// * 查看自己的消息 +// */ +// @Test +// void findMessage() { +// User user = new User(); +//// user.setId(18); +// +//// List adminInfos = infomationMapper.selectAllMsg(user.getId()); +//// adminInfos.forEach(System.out::println); +// } +// +// +// //管理员模块 +// +// /** +// * 查看和删除用户 +// */ +//// @Test +//// void findALlUsers() { +//// List userList = userMapper.selectAllUsers(); +//// userList.forEach(System.out::println); +//// } +// +// // 删除用户,调用存储过程 +// @Test +// void deleteUser() { +// userMapper.deleteUserById(19); +// } +// +// /** +// * 删改查用户的预约信息,当修改预约为成功后,自动加入到订单(根据优惠减钱,统计是否为vip)和中间表 +// */ +// @Test +// void updateRes() { +// Reservation r = clothMapper.selectResByIdReturnOne(25); +// r.setExamine("是"); +// r.setReply("预约成功啦"); +// Cloth cloth = new Cloth(); +//// cloth.setId(25); +// +// clothMapper.updateById(r); +// +// if ("是".equals(r.getExamine())) { +// Order o = new Order(); +//// o.setUserId(r.getUserId()); +// o.setCost(400); +// clothMapper.addOrder(o); +//// clothMapper.preferential(o.getId()); +//// clothMapper.upgrade(r.getUserId()); +//// clothMapper.insertIntoMid(r.getId(), o.getId(), cloth.getId()); +// } +// } +// +// /** +// * 删改查用户的订单信息 +// */ +// @Test +// void selectAllOrders() { +// Order order = orderMapper.selectById(126); +// log.info("订单:{}", order); +// } +// +// @Test +// void deleteOrders() { +// orderMapper.deleteById(1); +// } +// +// @Test +// void updateOrders() { +// Order o = new Order(); +//// o.setId(126); +// o.setCost(1000); +// orderMapper.updateById(o); +// } +// +// /** +// * 增删改查发给用户的消息 +// */ +//// @Autowired +//// private ReminderMapper reminderMapper; +// +//// @Test +//// void addMessage() { +//// Reminder msg = new Reminder(); +//// msg.setTitle("订单因为不可抗力失败了"); +//// msg.setContent("肥肠抱歉!"); +//// msg.setOrderId(125); +//// +//// reminderMapper.insert(msg); +//// } +//// +//// @Test +//// void updateMessage() { +//// Reminder msg = new Reminder(); +//// msg.setTitle("失败了"); +////// msg.setContent("肥肠抱歉!"); +////// msg.setId(12); +//// +//// reminderMapper.updateById(msg); +//// } +//// +//// @Test +//// void deleteMessage() { +//// Reminder msg = new Reminder(); +////// msg.setId(11); +//// +//// reminderMapper.deleteById(msg); +//// } +//// +//// /** +//// * 增删改查系统公告 +// */ +// @Test +// void addNotice() { +// Announcement announcement = new Announcement(); +// announcement.setTitle("1111231"); +// announcement.setContent("1241243"); +// +// announcementMapper.insert(announcement); +// } +// +// @Test +// void updateNotice() { +// Announcement announcement = new Announcement(); +// announcement.setTitle("沙克洗衣店开业大酬宾"); +//// notice.setContent("123"); +//// announcement.setId(1); +// +// announcementMapper.updateById(announcement); +// } +// +// @Test +// void deleteNotice() { +// Announcement announcement = new Announcement(); +//// announcement.setId(11); +// +// announcementMapper.deleteById(announcement); +// } +// +// /** +// * 查看系统日志 +// */ +// @Test +// void selectAllLogs() { +// List logs = reminderMapper.selectAllLogs(); +// logs.forEach(System.out::println); +// } +} + + + + + +