From 040e28915b538f651ffece9397730af74b4abcf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E5=B0=8F=E4=B8=9C?= <13396135+anton-aoi@user.noreply.gitee.com> Date: Thu, 19 Oct 2023 22:43:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E8=8D=AF=E5=93=81=E5=88=97?= =?UTF-8?q?=E8=A1=A8=20=E5=AE=9E=E7=8E=B0=E8=8D=AF=E5=93=81=E5=88=86?= =?UTF-8?q?=E7=B1=BB=20=E5=9B=BE=E7=89=87=E4=B8=8A=E4=BC=A0=20banner?= =?UTF-8?q?=E5=9B=BE=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/inspectionProfiles/Project_Default.xml | 6 ++ bwie-auth/target/classes/bootstrap.yml | 59 ++++++++++++++++++ .../com/bwie/auth/AuthApplication.class | Bin 0 -> 815 bytes .../bwie/auth/controller/AuthController.class | Bin 0 -> 3047 bytes .../com/bwie/auth/feign/AuthFeign.class | Bin 0 -> 693 bytes .../com/bwie/auth/service/AuthService.class | Bin 0 -> 546 bytes .../auth/service/impl/AuthServiceImpl.class | Bin 0 -> 5109 bytes .../java/com/bwie/common/domain/Drug.java | 11 ++++ .../com/bwie/common/domain/DrugDetails.java | 16 +++++ .../com/bwie/gateway/GatewayApplication.java | 11 ++++ bwie-gateway/target/classes/bootstrap.yml | 29 +++++++++ .../com/bwie/gateway/GatewayApplication.class | Bin 0 -> 767 bytes .../gateway/config/IgnoreWhiteConfig.class | Bin 0 -> 2590 bytes .../bwie/gateway/filters/GatewayFilter.class | Bin 0 -> 4048 bytes .../com/bwie/gateway/utils/GatewayUtils.class | Bin 0 -> 6222 bytes 15 files changed, 132 insertions(+) create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 bwie-auth/target/classes/bootstrap.yml create mode 100644 bwie-auth/target/classes/com/bwie/auth/AuthApplication.class create mode 100644 bwie-auth/target/classes/com/bwie/auth/controller/AuthController.class create mode 100644 bwie-auth/target/classes/com/bwie/auth/feign/AuthFeign.class create mode 100644 bwie-auth/target/classes/com/bwie/auth/service/AuthService.class create mode 100644 bwie-auth/target/classes/com/bwie/auth/service/impl/AuthServiceImpl.class create mode 100644 bwie-common/src/main/java/com/bwie/common/domain/Drug.java create mode 100644 bwie-common/src/main/java/com/bwie/common/domain/DrugDetails.java create mode 100644 bwie-gateway/src/main/java/com/bwie/gateway/GatewayApplication.java create mode 100644 bwie-gateway/target/classes/bootstrap.yml create mode 100644 bwie-gateway/target/classes/com/bwie/gateway/GatewayApplication.class create mode 100644 bwie-gateway/target/classes/com/bwie/gateway/config/IgnoreWhiteConfig.class create mode 100644 bwie-gateway/target/classes/com/bwie/gateway/filters/GatewayFilter.class create mode 100644 bwie-gateway/target/classes/com/bwie/gateway/utils/GatewayUtils.class diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..911cffe --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/bwie-auth/target/classes/bootstrap.yml b/bwie-auth/target/classes/bootstrap.yml new file mode 100644 index 0000000..f1b2f8d --- /dev/null +++ b/bwie-auth/target/classes/bootstrap.yml @@ -0,0 +1,59 @@ +# Tomcat +server: + port: 9001 +# Spring +spring: + main: + allow-circular-references: true + jackson: + date-format: yyyy-MM-dd HH:mm:ss + time-zone: GMT+8 + application: + # 应用名称 + name: bwie-auth + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 106.54.220.85:8848 + config: + # 配置中心地址 + server-addr: 106.54.220.85:8848 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + rabbitmq: + host: 106.54.220.85 + port: 5672 + username: guest + password: guest + virtual-host: / + publisher-confirm-type: correlated #确认消息已发送到交换机(Exchange) + publisher-returns: true #确认消息已发送到队列(Queue) + listener: + simple: + prefetch: 1 # 每次只能获取一条,处理完成才能获取下一条 + acknowledge-mode: manual # 设置消费端手动ack确认 + retry: + enabled: true # 是否支持重试 + template: + # 只要消息抵达Queue,就会异步发送优先回调return firm + mandatory: true + kafka: + bootstrap-servers: 106.54.220.85:9092 + producer: + key-serializer: org.apache.kafka.common.serialization.StringSerializer + value-serializer: org.apache.kafka.common.serialization.StringSerializer + retries: 3 + acks: all + compression-type: lz4 + consumer: + key-deserializer: org.apache.kafka.common.serialization.StringDeserializer + value-deserializer: org.apache.kafka.common.serialization.StringDeserializer + group-id: bw-gp + enable-auto-commit: false diff --git a/bwie-auth/target/classes/com/bwie/auth/AuthApplication.class b/bwie-auth/target/classes/com/bwie/auth/AuthApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..a651428d1e9773834cf4b128e7fb1dabf0548f52 GIT binary patch literal 815 zcmaJYx15Pi8(U;73Yp7z4nk37jtG3RD2 z^+Kvt^B3A{J@e~HrlfW`Nja@ejg4_$yh)5+sI;(>PfPaa1XO3yM+X7J{(mP%ny-&3 zzqr;Q?_*3M5O_`Xj{-##KX!>Ofr$@qnhC#)ruvJPJVWLa;4Qz zsZxT%9vq0H0bSh0Eh6#B zPfIeOH)u3}p!p50_kSru0tq6Deubuo4Qx_;i~cq}ZgLF_O1q66@;>c0`CZ@--n7?- literal 0 HcmV?d00001 diff --git a/bwie-auth/target/classes/com/bwie/auth/controller/AuthController.class b/bwie-auth/target/classes/com/bwie/auth/controller/AuthController.class new file mode 100644 index 0000000000000000000000000000000000000000..0017d29f938f49e9759c5d0a4fa0499f8d0ae94f GIT binary patch literal 3047 zcmb_eS#uOs7(F-JWG0P3*aTDvYmy1H!hm2R3Q^WczyzX#ThGkRq{F0p?Cv3=Wfh|3 zgC&BcP^D7nn{O;?RTx=(_is>>#3%lN<+WReLGs(k3XeD~YVx7^!*|NG}%010Gc zScF%jScu(?*rVp|CcK8%)vz~)ec0cG130J-4mBZ(o<{U4%Hc*FQS%#$*r$g62#&^Z z3xr&A!}O6QcBmI7;&X?sLZjha$7 z3f_<&9_YKd=?|F5zr3$tdFF^5FkLg1le;a;_6*OoEmvTNZ_mv;v@_@!BXZPsPUFpxg*0uqGx^6o|81s{+C3_1aDd`+F=%GM!(oP$>0mCuXJ|xz8Lnd8rn*lm) zTb^U*a?`5dGK#=FSQmA*&1b`Bd7;}8d&FcflVG!*O0$z>`LdtHjee%1t%@{nyP6R zscUDd{Whyh;bAw-Y$;?_dQ;+zY5T0MyR1=Zd+Z3k+a6&}OUvuj@C=^Suoz1O3Z<`p zp8Why>B6~*U$5W4{o}ne7ydbWb>ixc(zP!qe)(+Thg+pP7w?_<_Wtd!C$Ei--#9xt zcCB>xi-7Z!Pb*KxFBMC-&(C&JI)8TjVyNAh(Xaw5BX~>0+c>V_1dd1Wj)r&fUIg!J z*oqG{EXA@23=M0sPGH&OU*DI0x-xO=yYVZRD@-Wfl)%wy6qDbKmCj%C?32=}bn*$@ zSGv<`NNCuJ1h4Mt56DCB(g-pdBnEk1sI*pAr@;C-UH<~}vgNnnSl)dox#TBsz!AH1fJ%)f%9^o#=ern3tU*=p(+K%5)(_GvB2kMHb=hfmb z8U*4u5hM%M z;XV5@R@UNyQRo~rYa6)|5R=>sE30*lWC)<$6M%uX94AE)CTw7SU$ zwlpvi0^1P6;g1*%D>wmV8&?5_?PUxvk``dt!4)r@(Cq|wg3>V+^dc4rC~s=~Fb8Sf z;#&^V8VfDY)IJrVm(YmLa=oP{0WBXo8Rckt%^G5j0fZWY{?D+L7%gLWm!u-~;$5 z#CVYc2nx{3JNvjZK6l2iZ_h6Pun#LGSSrD?faRF{l_PulaGpw)Tx4lPR>0n7y)W-2 zCQ`@P_Ezb*x>fI(6r-Ucm^vY;PIj9>OqZw}EhI>>Um% z!bs^Z%8?eE#`%UE41#L`#e11#47`EA^$H)qID8VY{+(ddi*G20e@BtNcP*`w?1ovU z+a|Les;Pv5Dkqum)recV6NV*V_t&zW#AIDG1Jbuai+RRbqDXtLSPlc-b`Q=|Dqw9i zV#&4fBVn`+Px$jxTtq3w^SbPV_=+bNe literal 0 HcmV?d00001 diff --git a/bwie-auth/target/classes/com/bwie/auth/service/AuthService.class b/bwie-auth/target/classes/com/bwie/auth/service/AuthService.class new file mode 100644 index 0000000000000000000000000000000000000000..cfe601bdd0f63ab89d05f85937ade835497aea4b GIT binary patch literal 546 zcmb_Z%TB{E5ZrC^AmtT4fm^xY3!G9Rap3?#AR<1%O_$VFVuNG15}(F_58$H^+f-B) zJ@mrC+8xcTW_JDc{qYF^7jP28aSSO!;#;!0sgy>z8|I~H#CV}daMKtqCZ>@}3rlaF zS|^@=#o5`G)KcqfC!V^JA*A=@re^Xet!&7VZ4ttHWt0@E($aZL2=D)AI@-##j^Dl- z-IBOnIL_Dg*%fCDlzuS?r^DUrT<+40@|m1VQA=Hkhw+R`*I7iov+)jLP#AAZx=}T6 zonCu4Ey&JQN$1Ns4za$yWKQs3K@k65to=>5B8W! SV8GH9-e-KUiJ3X&R3Pm}r z&{BI?Xth*rMO4nRgrk7B*88YuJ*rIzUe*7rKc8=Ave^qzf9@YM^L_Jv@A16n?Cbx! zcm=>T{KJnL#C&+f4-0WWY$RlC@nNeU#n@JgYP6SOJ3ipY4t!9?hkV#69(M`yNBt-h zmucAT!-r*j#E$@Ce(b?saoHzhzYiZ3n~(YMF+qI5kArwzaDBp$LwHig$Nd=cov^1rh@zxzgddsaJURd@Vtx{{HPQ%D)C97$EO6Z7k$`JhNF1Nk5A(> zK73Y4d08BIMaJg@uVbb7JdXSE1$TIiX`M5|B)JO=fNLdqWNYswY;Owi0aD|ktW?*tr1TN zfjTp!h1Y17A=chzk=<$#;0amo5mJqit{Q~R@sg0rjase+90?NCnJorAyR4%3EPWg? zqiVAm(TphZbZk)@dx&c)b4V>co(S8-TinRGIP7vAmqU3|rVAm(?j|b=EFv>7-cFt=LNXIY{bF*@d zx^=v+XxglY>>6>lyusE&ZG^!ICmCm0#w7Hu*X>rbd8H;&)z&TgWc&XwN^WXVUgU(9 zMMiX!DPefU?c-01v#d#&eml~1gwpURVfdN}rmw%jOjsd(ks&f~fT(i~y%{u7M2Uoo zyoDrAz;x55gH`WHje^BkB4NhE4^FC@rB!X8TeW^;)kEVS$XsriSiuh_K; zMr=nYY$lp3N69#=;8mQHkyLOV9TGLP13Fthz_xjOCT{R{2a|}$+QyE`X z@HKp0!8dSD!kBE`LQG3ri`sFKck_D|5_}@LH@4~R3ciVNdC9)fXjbrTye{KA3cic) zDVU3SGQO|i2l%0cyL#butNpx$5pEVn3lF(n(1WB`>}pXZ(gc?~m2jg|JmS>~euN*( z_=$p_;td%;Q}A>ALdGu@{0hI8Fg}}as#@k269sPym;DC6Rj?3?Wc*IS@9~z5KPdPk z-exUyR2dd>I_j_{eONRR4i7V}VQiu{ap=Tb3c7HeiJon!f^OW9@h1g;#$ROoRl(nc ztatEty6DEPU7hWC(JzjoF<4d|Il}k`xUeL}$t1j|^6}czVcILNg zR)grB(U4wK$!0b%54~vhz2-R(X3bPokvfZHo7bM9`P6*ua@s@&R5VN`vjtAC%(UFA ze(ZC)WtoieG7_%T;&IMs&74kXh!$oC$S}e?B#i6Ro2reCwF_7}EiFnvxQjp!$_}Dp zkE-}=)6FaP<(R0pGt({dc&7o{BQ1A}ql|}9Ep;8(Bg`4pYNIwCD4PF}>@X6_IEA87 zJkaEjrE|J;@a>T)nVC%yhRTC9kRf11b!qxK25X^C+Af zH%o7$gUC)F`FRl`#}lED9%rOv>BUgUcV zsaGW3=ys2I0WKTyc}$8nHuZFTaw?VI%O+lkFiIw7$-jv!oO-1NhXC@oyo;OT&B|pJzGS#&R!==BYOy)KNPJC_J zVHWO^W}RPPOt`V>I^{8Co@s{pOetdx4l2c%AP& zFUWewrkq7z#5G4iUTb+mvc-(nNryUkcc@@loAeQl}xCE#}Jy#NzV+B>=Vd)g< zO1XC}P%u7;!VVPOch3=&UqbP^K*@Q?SI4~ypLlZtr3F}Cm4yEq%BqW`V9_fm4JaKb zKgHL5f<;N(kwo7k-0UYdFCnn*Jo;A`cVIvg1FK7d#eutmB}oig%cr2Ae~-K9z}?j{ z#oUv`;7b_7Q$qv8lNce0MS2PT}N z4Mh-kFXf*gz)1Kp3VkpdgD@6jP(hd~F&*RRhzX>r!b(iSI!uO!DQLq~Y~!CRJ4taI z_u?#O;38%^*llp}@vtLOJo#Q?=tmN(&_K71;ol#t(MUv9Jc%_}OHJ0H1@GgvnEW?l zJsu>^JL%>PeBuC(ay*2G;p02t&J>ULlZSg!x;s7F-ZC+M#u=sXdVEayTuZf zfEO>Ds7wo5$wWlM8)PB=&RIu9s{#`*KrKMs_zp}uOwUYq+|_|8^?C4~;KF?YQwwP1 zwB=QSvJOmlynP1u^6d=a2?yyy2k8;i9}H)OLEN7K9K-_tqqLA#E+SfsiOmuR!D+5S z9)b#EP@up*N?!0Jb6Z1zlTfjN5PjaSwAqE0ZD}cA6+)G^J>W|()uKveCAfqSv1mDPa#A;So7gMI>9#+M z6BQEt0De@}akhvB7Kucev1cZ4-m~Y&)z|L;cCi_viM0Uh0q%v^!2JLZ7+TMjR&Jl6 z-rF8AGzR8SGAu<(%Qs~nOZ!2@8AZC0NkldhR{8x+u;GqX!LSu2Cg<@)NuCNPC*p#? zn)-wBI8%vm%IH3U=R#?Qwce-bM4Snp37ztxvr4D^s=2T!!L7_mGc3QB?${i@6ISHX zNlS&{(3CcjFO?^_{&&k~z6-;~`%*iV%aJM+aX--7xQY@%>_^6?ycl~9M;>`%>?x0p zaa@$nBt{>pw6u~BtCAO#nAOxl3jxE^|Ikkg{uCYHVF!=!__x&C_(Ud-VdtO3rc`EV z(B;{Z4mR%1oa-PHMbV#gl-qM9lTs(o9Ut5%_P0FKg2F!C#}m|OjQmprO%DRH3$)|p z8TsbU7qHJ&dXa3a3I+&i-I*4kO)Fp#w{V+4{Lgz87|`z4>fcbmMC0Qxh>()LJgnZI bFl{Vhnc{coYtq1ytD#%j6|9o?o$mtI{H4dS literal 0 HcmV?d00001 diff --git a/bwie-gateway/target/classes/com/bwie/gateway/config/IgnoreWhiteConfig.class b/bwie-gateway/target/classes/com/bwie/gateway/config/IgnoreWhiteConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..a84d0200dec19a49eeccf18abe06212fb4622641 GIT binary patch literal 2590 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