From 92455baa4338f86352d01151b4c376ada9030c6d Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 01:01:25 +0900 Subject: [PATCH 01/15] =?UTF-8?q?:sparkles:=20feat:=20=EB=B9=84=EB=B0=80?= =?UTF-8?q?=EB=B2=88=ED=98=B8=20=ED=9E=88=EB=93=A0=EC=B2=98=EB=A6=AC?= =?UTF-8?q?=EB=90=98=EC=96=B4=20=EC=B6=9C=EB=A0=A5=EB=90=98=EB=8F=84?= =?UTF-8?q?=EB=A1=9D=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/templates/member/login.html | 2 +- src/main/resources/templates/member/member-info.html | 4 ++-- src/main/resources/templates/member/member-sign-out.html | 2 +- src/main/resources/templates/member/sign-up.html | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/resources/templates/member/login.html b/src/main/resources/templates/member/login.html index 2a50eb02..8d64cf9b 100644 --- a/src/main/resources/templates/member/login.html +++ b/src/main/resources/templates/member/login.html @@ -18,7 +18,7 @@
- +
diff --git a/src/main/resources/templates/member/member-info.html b/src/main/resources/templates/member/member-info.html index 2ffff617..b887f971 100644 --- a/src/main/resources/templates/member/member-info.html +++ b/src/main/resources/templates/member/member-info.html @@ -23,11 +23,11 @@
- +
- +
diff --git a/src/main/resources/templates/member/member-sign-out.html b/src/main/resources/templates/member/member-sign-out.html index 2d5e30ee..dcfe4c81 100644 --- a/src/main/resources/templates/member/member-sign-out.html +++ b/src/main/resources/templates/member/member-sign-out.html @@ -17,7 +17,7 @@
- +
diff --git a/src/main/resources/templates/member/sign-up.html b/src/main/resources/templates/member/sign-up.html index bb55f5b0..5148ea19 100644 --- a/src/main/resources/templates/member/sign-up.html +++ b/src/main/resources/templates/member/sign-up.html @@ -24,11 +24,11 @@
- +
- +
From 657dc223c941519046512be5f9428a0d276c387c Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 01:14:10 +0900 Subject: [PATCH 02/15] =?UTF-8?q?:sparkles:=20feat:=20=ED=98=84=EC=9E=AC?= =?UTF-8?q?=20=EA=B2=BD=ED=97=98=EC=B9=98=20=EC=9A=B0=EC=B8=A1=EC=97=90=20?= =?UTF-8?q?=EB=AA=A9=ED=91=9C=20=EA=B2=BD=ED=97=98=EC=B9=98=20=EC=B6=9C?= =?UTF-8?q?=EB=A0=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/springles/domain/dto/member/MemberProfileRead.java | 1 + .../java/com/springles/service/impl/MemberServiceImpl.java | 1 + src/main/resources/templates/member/my-page.html | 5 +++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java b/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java index aac8d3ae..b75e14c2 100644 --- a/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java +++ b/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java @@ -22,6 +22,7 @@ public class MemberProfileRead { private String profileImgUrl; private String level; private Long exp; + private Long goalExp; private String nextLevel; private Long rank; } \ No newline at end of file diff --git a/src/main/java/com/springles/service/impl/MemberServiceImpl.java b/src/main/java/com/springles/service/impl/MemberServiceImpl.java index b344e7da..9eab7515 100644 --- a/src/main/java/com/springles/service/impl/MemberServiceImpl.java +++ b/src/main/java/com/springles/service/impl/MemberServiceImpl.java @@ -569,6 +569,7 @@ public MemberProfileRead readProfile(String accessToken) { .profileImgUrl(optionalMemberGameInfo.get().getProfileImg().getFileUrl()) .level(optionalMemberGameInfo.get().getLevel().getName()) .exp(optionalMemberGameInfo.get().getExp()) + .goalExp(optionalMemberGameInfo.get().getLevel().getGoalExp()) // 최종레벨일 경우, nextLevel 비노출 필요 .nextLevel(nextLevel(optionalMemberGameInfo.get().getLevel()).getName()) .rank(rank(optionalMember.get().getId())) diff --git a/src/main/resources/templates/member/my-page.html b/src/main/resources/templates/member/my-page.html index ffe36b9b..2b14618f 100644 --- a/src/main/resources/templates/member/my-page.html +++ b/src/main/resources/templates/member/my-page.html @@ -26,10 +26,10 @@
- +
-

경험치 :

+

경험치 : exp / exp

@@ -118,6 +118,7 @@ $('#profile-img-url').attr('src', profile.profileImgUrl) $('#nickname').text(profile.nickname); $('#exp').text(profile.exp); + $('#goal-exp').text(profile.goalExp); $('#next-level').text(profile.nextLevel); $('#rank').text(profile.rank); }, From 0345bf4d8f0ce97350546f99dc2d35b4b1671728 Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 03:47:04 +0900 Subject: [PATCH 03/15] =?UTF-8?q?:sparkles:=20feat:=20=EB=A0=88=EB=B2=A8?= =?UTF-8?q?=20=EC=95=88=EB=82=B4=20=EB=AA=A8=EB=8B=AC=20=ED=8C=9D=EC=97=85?= =?UTF-8?q?=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/static/css/basic.css | 34 +++++ .../static/images/icon_lv_info_btn.png | Bin 0 -> 5450 bytes .../static/images/level/ASSOCIATE.png | Bin 0 -> 6358 bytes .../static/images/level/BEGINNER.png | Bin 0 -> 5634 bytes .../resources/static/images/level/BOSS.png | Bin 0 -> 5320 bytes .../resources/static/images/level/CAPTAIN.png | Bin 0 -> 6786 bytes .../resources/static/images/level/SOLDIER.png | Bin 0 -> 7303 bytes .../static/images/level/UNDERBOSS.png | Bin 0 -> 5713 bytes .../resources/templates/member/my-page.html | 124 ++++++++++++++---- 9 files changed, 136 insertions(+), 22 deletions(-) create mode 100644 src/main/resources/static/images/icon_lv_info_btn.png create mode 100644 src/main/resources/static/images/level/ASSOCIATE.png create mode 100644 src/main/resources/static/images/level/BEGINNER.png create mode 100644 src/main/resources/static/images/level/BOSS.png create mode 100644 src/main/resources/static/images/level/CAPTAIN.png create mode 100644 src/main/resources/static/images/level/SOLDIER.png create mode 100644 src/main/resources/static/images/level/UNDERBOSS.png diff --git a/src/main/resources/static/css/basic.css b/src/main/resources/static/css/basic.css index 28010b09..1b49835c 100644 --- a/src/main/resources/static/css/basic.css +++ b/src/main/resources/static/css/basic.css @@ -251,4 +251,38 @@ body { .password-input { +} + + +.lv-box { + max-height: 50px; +} + +.lv-content { + max-height: 50px; + line-height: 50px; +} + +.lv-img { + width: 20%; + height: 20%; +} + +.lv-title { + max-height: 50px; + font-weight: bold; +} + +.lv-sub-title { + font-size: 12px; + color: #888888; +} + +.lv-modal-close-btn { + text-align: center; +} + +.level-info-btn-img { + width: 14px; + height: 14px; } \ No newline at end of file diff --git a/src/main/resources/static/images/icon_lv_info_btn.png b/src/main/resources/static/images/icon_lv_info_btn.png new file mode 100644 index 0000000000000000000000000000000000000000..00ecc80c244f83640bbc5c8c1d7ee7513c8447aa GIT binary patch literal 5450 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 A2LJ#7 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/images/level/ASSOCIATE.png b/src/main/resources/static/images/level/ASSOCIATE.png new file mode 100644 index 0000000000000000000000000000000000000000..7715e3696066f871a930a926bd7679871d32a88a GIT binary patch literal 6358 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 Y|9@E_HO*fKfB*mh07*qoM6N<$f*;F*u>b%7 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/images/level/BEGINNER.png b/src/main/resources/static/images/level/BEGINNER.png new file mode 100644 index 0000000000000000000000000000000000000000..5077d7873a758dbbad990bd112f9aaf5ba426e17 GIT binary patch literal 5634 zcmV+d7X9goP)^{S_<`~85{3@OeG+5Oe)_g=kv zbxsTw9z1wZ!$bR+nwqMeJ9q9PzmG?LZ~oU`f1P(fS{v{-E%%y3JRIURhj`w4{rdHf zI9l%iTQ_gsY>5%fIWfk9B8Rvy;VA|F9v=4^!`Az6WrGgn;_t#)_N$4AeHe6~nmC^Q^2;wxyEB}|#4m5G z`^?M?#eNl5^OBSlx=MIx9v>e+zIE%?zEqsbik}u9g8vv|Uy;EXdYH?1#ZoU5Pe;YHW&m=oR7zAYirw5Au1vM4lDner0v7UriG)4_+YaN zcY{)k-}&-)%*uPQjY06Z%o(Fnir+-9N10usQiM*Pm&-*MKykl=TFi3zm7;px%q*RT2f2RwhpuQ6cxTz>lLr&owi zj(WWwKeNC`2EbW36m!w>wB*b4(Ykz=a4`QU)4=^xa_7k-x z_?$U>&LW;Jaxm}_$C4C>mL!rDDzx|uX6-5TJwD=hI>+$EOqJ8~dQd@$hm z_!6Ios-GHSm1-Ax35KC?FssbC_v?ju_fp!?A{I7iFGc5(6Mt z@kbUut^5W~;!822z`MZI)YKh`G)Iv40LV@J5ruEoK7X#^T7E7O$a4VXBK}yyX9+P* z)|y%S{D~P0CVp3|^Q|b(+`5%gJjn-Q6b-H?xU1|29iE(=d=RUtZWQsysKqz`zW79n z1ESReO-Te?b!JWUIDl2TZo)4%T&D~pwJy4M=B(OR9d+@u9$ys8l3AjFk-u(%Z5nU@ z;F_)Tx``f_oUT++b$hfkJMIJ~*%QWSb4Rl_NIL_hCVuSz*MwghGzY*Tyny$${C_pK z#|5}1e50F9MHgtEI%8K4Q9wof&L69Z0w(-YqB#I+Y-b}11iL+OcUD|ODGd%RxGgPn zaDTSsO_Qx)T>7&q0R)L(GoNpH{7Nu~l=Ty(d4SgJ?CkritE-3NNs!wE;q&%WlR!-P zmEnl<0KDE3PO$sqZTVgQ%x^>ii2k}*$wHN2pV23xK#2R}ZTYqQd{?Aq!mkzw?z#s< z9r|W}yu{D?e9_77?1)uoR+Sxg)sS#%$H&KB9sb64dt8wFcL{`kAM152vr}ob0${Jn zudyw^3vz>DfNR39JnaA&S_sv_{M6Lc*tI`niJw*<4=WM~{XNU<7{u*Z(~v-*r>jiD zjPshY#1BiY5#+MVg8BJIC)7i5kEL?^=u$!rgIw>Nli-U|{lmGbz9?nFi({IKbEKJ;2K7GIqE>L2H4X zPMf3r>`0bh!|J>Bw|Vx0AI5S~#Xka^5&x@{ZwDE1^*=#Pu|~E2Bl-NWk{?ST%LZRSz&bH!sEbv~To-m~=34-LvPN?dgjFC1(mp6jmb8Yo!*`d43lb+PAr_xdJolU|DhGAyrO zOcI^ZX4&(u1b`Xe)n4E4=l1lyRg8k=^$W{FigN%kq)iC`ukY!?pAmnf(O{F=n)tJ4 zR=>F5+NkfMk^_4ZR>M^5HRIc>s&hpG;4KO#SgJ(ebo`tv<7Ihu9w|wF4t@Wm3gT$} zah|+m7Q_y9>8kde>G2_#T`8>(jLw_*AgLHZ?G-a);cD9d;2OI|3r?BLz-Ojb4Z7ufvG^Q6jZ;p@Eb1VBq^g{JGSf_31Xz zbqN3$EaaCnI&hmjT-PY^?FJ&ckm9UwXtgKqtRHoLeMu zTDGCiyp2Go-{0x;ds}|C)DR;N>^w`D-a7sMw)ow0ubOy*H?)hA1Gwm#ch_V~Py+Qf zpXK|f+?xgY`^XtvfBnS3HUB}fx+^2eKNgg;;)G(IFTveK2t-bCI>Fh-z0I^vsC=4^Pjf( zLyFmOBF*yW1g_IRivsX@%g`b|M0f4U+^J!WeTHGdZa%msR2ua-dzdgQ!!--ZR<$!e zwEQ*k1h<|aEZB_?>-@DE{c7!kSOAVf_VYbCIr&|X_{j=CEPe_cv=tvE{^ za-Q0j-}em?pCVVoZKdP;TKe?w##mNJSH}g)Wi?XXZV%_SX!*U}9^)NH;i!l-ue@#5GwuBSq z$gS);K)kS9#mPqe{jUOC#+q6FL~+3^yB8l-c$Pir?>6x#3WUGdm1Uy4b5OQf+?bg7 z%L6k`oF8Bp<^w$LaCaOr`eM_wwh`p}-^Cq!-4-Fe zDQr9RohZO-*-fDG6J4%qQU$j=3$65J#ggVuxGOvN}9Ev9hq|E16 z#xOjAMt=$?;d}AN#2*ni5E{4}{JSVmTrmhPLBhh@ z=f^qyF*Ma_*@GPD*rG^t(rONqU`bnl7;f(-UijNvLD?R>fr&p~xIu+l)h74kP1*Xp zn9~cy3T?NiC7$?h3u*X+3;v&qF+l3p-`n`&9EMqb7FUUpHx#~F7Y2xbSrUayK*baI z{9)oxbxX?np;|?4!f1@iV|8qKyxO@ z>-gl8PrlExJt5*xa!bq93G7nb{az`$uOYwlKL5$OG<)xGXMX?0(9HWMclQqQ_p`aJ z%<}JxC-^12+jbcKXztGyBBTl8ZFFI5#ora@wxj0E}nuF+SUx8e`=`w=wN#mEI*z-8sSs+3lB z1>NyFb^ccT@PnEX;P*rPe-I-N7Pa>0%HY1dk`5u;u^u{|x9P6uZ;B^4fpsxr!z_o& z{#>2FaHZ7Twl1E)>YsA$Pl-R!?+?wr8iQf!@m7p7@`SdNt%v;m801e+ecky5M#fVK zBiZuUBI1$=*VvO2$LEpOPwXYs$suS5dL#;(onN2XS>oZthu;S5$bN(m_+ug`lR@K# zD1g6LrOSfL;w<3zVzD4yoalE_eAZ?nJv}+_|0loz?60k@z2EtbGktqt{huMA@)iG_ zTO3h_?d?Yf7COm>uuO3#)XesB;GOS`OMhkoJH+3V05EXsVkALIU7SOE7@eG)Yk^!p#}a_0J(D1r-Pot6r*B9Y z&w72cr}*LeY)cr+R_;(}lG(U|RzK9`!Fzn!>-#;$@2cLK;!pAok;)3)9f%z zMJD`|wvTmIKd1*ka{Jr;{>-Z3o|5o2tiB9!-3KaRDGBG2c)(cg@V=R0NNb%{{zLZ5crz)pB${zye)7-nN>bRn`zvAf&xRoiDB@YCDQ}AM)Q7aVA$%r%> zjc+7y(KLRkyZGaZ;)AM{G)IEXXkW1#GY)P~L~(P`$;&c{y$h~g_*}wZdh>Uq{NTu2 zk!o0fw;6J?AigNue5-XjjsbqZp5KS?rEIueC^gn5j~t_pZ25_X^%obAiD7iW)oKzL z7t+_iapT4ZqyGF@8`3Fce#lbQx4|^dKs^K}MBomtj`Quq?w)i=^LTi2;3rYcwktpu^ z2YUcqgg>s;CtjOSpFe+|ivwB`&NcJ@E6X)^gwk4HU*8Z9yu{CnPuyn43NHEq|DXPz z_4lt9i%NdJgy_&q{KQQkYq&q{$uA3ltAPt}?}`rFqm(i9!(04hc6N3{ble{b-vZ#0 zL*cssSHsY?LR0TS;@5P4I*FF;kRK)MxAJ$ZaPJU(B04NE{ z!q0T3f{OTwoBYzK{mHNakT}Z1_nyq^$FwN2ySw|pSFT+7Cp`TZ(SbhV1&sDR_>9M5 zB!Np>{FkQi!9Cx}tbUAD(mX1SM&nyN__jIk1s8FAp6Z&^Dna2hYbUxBmuGtGYoO-# zbOKBLk>~}$geS6L6Jf>1El7DHy25WcJ*g8#{PfFCPEPm>YX!ihJrO2W3Q<%R6(_JV z+5xVnpWjIo@e}q#ho#n<0L$Q(Jx{C{u5fVeEiJz4otgTHC48b9@OFa$`2Uxemw$w> z{%@iP-tS-WFbAvfe-;Q&4*K`F7XN{#>ZR!r{%r)f+Y*r|0dF^3TU#4ANq0ma2Ea)* zUo8vDbvmbDN>e+t(~D?sPbd6Cl;;34c;cU%8BYNHxLj1%HfUiZj8gw8Pj|mva*17jpPNFCK zEK-YEvM>&X5r0Ob(V!3bspQKZ1h9+AvSvy9-nVfFbL`p5+}uKVibjBtbHfRi9aKc+8|>n%;enTehsNu z`%aP-KS{wADlt!C?Qa(~lQRlQi$8;d072j*H+f@3gxh^0KG{so#py*U#Gg^ntWYT^ zljt)_CH@Q!0^A8cwmU&MWfXlzDaD_`%n)LN6^jYRr_7?yD7E-AIs#)(`PangM>~6i zxrObN1KCljg!nr#m*_0C@(}zpq%5~nOj-I;Iq_$>!a0`Mekj$v8*o2`$5pZNy{N4C zJGp=V{v}MyGd8#kLFBfWCU5Zf?bE_@-9njt`B5?PcfmUX9#}%bJ3?J@UQ?h9U6>{Y zG|RG|R@K7y!^A%Xmod8Jf@R(nYEoP}#lCOWeK02eF>#qA4gwB{_i)rE;3^%;Z$keL zk1Z$mmKY;r;#b1COYH-LqlQ62cj=;goQFs=_o+7EZCd;XuW5@LuW5gc$L}HTmizyf ciCl+&0Hc4!UlW{)>;M1&07*qoM6N<$f|Z02@Bjb+ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/images/level/BOSS.png b/src/main/resources/static/images/level/BOSS.png new file mode 100644 index 0000000000000000000000000000000000000000..55ca4a209806846e9273dda6c0c58ddc9b6674a2 GIT binary patch literal 5320 zcmV;(6gTUMP)8XxL=JvUJr=Rq++RxWL^Jd=bU)5vxR?FVr?tglEdV0Du zFjV*tK<{U~a=tQvC-|S}=XG!w;N!hnuYu1S^4$Y`-T}C4h>zdHpNDiE!|QhspJxcj zz*q?q`Tqc(0Vm?8QJDR#B<@h)@4cP5f$=Tg-af)>+Xlr-nD`fP3&ou~v2Wqkhrl9V zks)5U@w!0+;tv1=FlJ)npMWjx&3+SVDNRpQ@87Y41~X}tR~IBRb> z26$aQ39th#q7~vt(f2S!_y$h!jUxghM$K@tR zj2bC^6TK<}XsAonDDj)e3J%2BgAi_4+^ab&NN|7khJ(|A&b$QPrz+T8DZH; zePNuW_$g$G(VKTIdQ(3rpmVq=J`V|!ocP(rxdiRpn2MDlyFvp8_e!w?dQ3Pmmc$gDjHeGlA4Vh0$oFz6h zHxObN3>RtP-kvXE#eO#e2U&& zgcdGjwK;O>75@N_u25YAAh`HF3;&Qs{{~N}6ua0jENEDXQy5{GM|0&A*QvPwN10xj-H8 zz%l(KwL2*M*TIAzHE8heVmS0|(4Cok9S^QEp)P*P$Jb0trWA$DeW13mO#m7I^nGz^ zi3-#+fzNrUqPodNksVMBY4Qh1A+P&jqy&9m)EbH0pQk{F=g$D#!%eWSKnXRUUweUD z626f(XBCsxj_ z1E`3|=jUo_J&r9J>YN54?C)7*$0!ovE`pp_ zc314ixsv$1I*VMYrDJ}+QHJy&uCcVLSF*Ivue6hU7*Sq+(cULU%Duc=0Uw0<41{%o zRtbF`gXIzX`aHeG;_htuE|;i8(E{lXw?(2JV2yJbyKcZ=l%54<>pxiLxl37oC96-- zonW=#m*7+);-3b6mS02jI>-R$|A-oAENlIj_4(fbAz7HJziok9lfFbk!Ry*6Ty1^t zXe@r0_5Bx$|CU=p_dx)sDO+^M563fiVC3Sc83txgA^*R>Oyp;w_;UrT4?3YNV?Hzp z-YU%mDI+c`zl`;tD}If*eq@W>HZYzE5}ySQb9p$tzq=p>XRi1ac5_MeYNz;(<>6U? zQU~hl!7HMp&`GDWz;G{ed-@>2eEr(lNO%BKaWSG^D3o0WXy6d_a1?%7c zH^37!UVG|;l@13KnAMMyM0d1F_}4+e&j4qpJw8?Z*_^3jNi41(C&yFV1IXkhN~XH- zkBNWR6`Acpbtu=wtbU|qe!8gmW)EaJOucD4zK>;fc7&T+IJI6ESHemR$##71!jMIJ zb%>B8{T}lDlS+ug&uNee)+`+-{z3V%Y2v3;->MvTgi}-V$7#E-hVF6;wLuKc-)*L(;?c_g*<**CLuxfS7@cA7cgM&JC8;HjhwzWx@Z2c7r5 z0TrPd|C3RlN5tQihc_#~Ipb0IZ0qZphu}f(nn)+N>)REE&#A#(`RB<6uO!Mt7JmSS zHWxEL(X$lu|H)OW>{;X!#(h%!eW*xg!uJV@U)4t+>2*vAiqQ3W#NB%!em=A!Df(|N zk4HxOJqvyX3DR}PH>crASmO$IP@NwAXDoj7gPw-! znAH!*3DBV^ftWH9*JrHvLi|0bNS^lenHnlNIhm{XnKZ(`p-=x2yFDGV{K3HQ>9?Rm z6H3HObT{72?d%GyzQUU@mV}E?Y2@ROyU>L1OcJdcM|?WR1me$}%VUdO&rqJfR-s?5 zE{G98x~n_@?gKp8$z}e&9ar=WH*HXbujG_D`ZWv92y^2f(s=Hb|5q)2@J^;KGt8gbJm(W^k> z??H8J!CN1PTr_~<_EgBVjhl@!pC61=A;VLMzOB3LqQBe3pDr5{QKoUuP6KywybG}NF%Eo+l|@+NEjbD8)LI+;NHxw$>T!SCxYptlA{ z+WJe3FX>(+{>()sjIbPPHmE}Zoq}|!Z26B!{6EVqf08XN8-QB=K7WTPy068)NF{y& z@Izd~3#7M6OXh=j}#|s$cETTP?#h+?R%hb`Vw49>*Iug8Rob7JY zZBeE922{lS{@T!t`zJShXR=7ocyFty&wm@L6J6PkmY})otJU-(Bod?h(DH*UvyhBMV`wzq~_4`MP zUxqQC%%vn~8k>|(b%|!Yvd$lff7^|S%6>n-&~spfU?Wqm#*n8~}e_7w0ZnkT!C>&!qUfu4j-0YeJXj_Vz?3!((-OaC*I(RTMwClR>9C&1i4G zGZ6J%VS_TW_UPn#lEM0*F)P$WyJ zaRsMxNL`)_(;lBHeqI$1pgPGHL~1a}xI08951$XVXSnh6Dz;q(0jU>6YA8iV_9Q~l zWc4$7vEG?3d}q!t-T`3|TeJRAQ3yYo3{JNCl6suOlXG17nd0AerOQ7B0cQQ9ff`i5 z4hacg!|G=XT=%(!Y84i~X8r4hs=FoGj6!Pli6d9rbS87fudwhn>t7#*wNGxhovpq! zZF^^X!G6`k66K3V&k~UEKL8^XB>K16+9%mHMM7D!okV0qp}<; zHKbFB{1BTK`!~w49>f6=)aRL1p1+d#c?B&!=UcSFw5AqD5!3$=P=r1x?`>I#WSK`~>@7 z8o56OHUQE`P56X{pI@d6id+Kt>NLQw@l8GtI*^Y@xgV6jejkifprFNHHHA-p{+6;a zRPp&Ix#9f(s%6fnafdfW>>NP+tZ~#%ZR3(^>!a|W1!dISo-*i{y_zddPvD|Jv=3k# zVG+X{Sf7Kg@Q0))@PHTbZ$Es)S_@#J*a)*!h&b8M+Q2F(7P#BGhV%hm#7|H?^dr3u zumTzYpW9)WxZq}aWbsvJW^{GW_!2&$y5ODUGQfXP{rB+hi=YU8D8I*>HN5=}Y$04H ze`wq3e%`d_(W~uCvF0~hc};qXJ~VbyARqRSj-w9E)UUHfx?*= zpeAY+Kd}q&N_U(S2kYRMeH;YWY!J*OnCNNeHgh#K#RbqL)GmGk2S5)+xtn=fOif^e z;88+a`Ukl>+fzEChb9W~6FdOERL%ySOUu^;w2VEOmfKWD{&0US}{ci z3B3?~(CQfM-=D8@VLOW`#ZLrY2TY?p5K`-eLIOua`@prSr5p_V_uf*Hr9>f5= zfbZ!pxWN!=K#DE6S@9EzxI#_k3bm+;HIlOoNsGUL1_9>>^}+DX;K)@@ z8$jYTLi`1hMunO}V?>&l2Tk_nm&L?C0q+^~@$So%4xEKQQ=kUt(huY_Nr5dM0KUX+rF`&AQLW#J?iDPWWekFKNjIWNnUB?gi3A)Xl>oj(s=FJ?XZZ;%r68MlG|8eB*k1rFs a4*v(;IGq?1log=>0000xftq6r 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/images/level/UNDERBOSS.png b/src/main/resources/static/images/level/UNDERBOSS.png new file mode 100644 index 0000000000000000000000000000000000000000..38d63c94c80122d5efe3bf557e7d79d0eca4cf4c GIT binary patch literal 5713 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
-

다음 레벨 :

+

다음 레벨 + + + + :

@@ -96,36 +100,101 @@
+ + +
From 7af1c444294d3e57d8729eaed22dd67316a5dc1c Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 14:04:02 +0900 Subject: [PATCH 04/15] =?UTF-8?q?:sparkles:=20feat:=20=EB=A7=88=EC=9D=B4?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EB=A0=88=EB=B2=A8=20=EC=A2=8C?= =?UTF-8?q?=EC=B8=A1=EC=97=90=20=EC=95=84=EC=9D=B4=EC=BD=98=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/springles/domain/constants/Level.java | 18 ++++++++++-------- .../domain/dto/member/MemberProfileRead.java | 1 + .../service/impl/MemberServiceImpl.java | 1 + src/main/resources/static/css/basic.css | 7 ++++++- .../resources/templates/member/my-page.html | 11 ++++++----- 5 files changed, 24 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/springles/domain/constants/Level.java b/src/main/java/com/springles/domain/constants/Level.java index 60e1f054..b68e7529 100644 --- a/src/main/java/com/springles/domain/constants/Level.java +++ b/src/main/java/com/springles/domain/constants/Level.java @@ -4,21 +4,23 @@ @Getter public enum Level { - BEGINNER(0L, 200L, "BEGINNER"), - ASSOCIATE(1L, 1000L, "ASSOCIATE"), - SOLDIER(2L, 3000L, "SOLDIER"), - CAPTAIN(3L, 6000L, "CAPTAIN"), - UNDERBOSS(4L, 10000L, "UNDER BOSS"), - BOSS(5L, 0L, "BOSS"), - NONE(6L,0L,"NONE"); + BEGINNER(0L, 200L, "BEGINNER", "../images/level/BEGINNER.png"), + ASSOCIATE(1L, 1000L, "ASSOCIATE", "../images/level/ASSOCIATE.png"), + SOLDIER(2L, 3000L, "SOLDIER", "../images/level/SOLDIER.png"), + CAPTAIN(3L, 6000L, "CAPTAIN", "../images/level/CAPTAIN.png"), + UNDERBOSS(4L, 10000L, "UNDER BOSS", "../images/level/UNDER.png"), + BOSS(5L, 0L, "BOSS", "../images/level/BOSS.png"), + NONE(6L,0L,"NONE", ""); private Long val; private Long goalExp; private String name; + private String imgUrl; - Level(Long val, Long goalExp, String name) { + Level(Long val, Long goalExp, String name, String imgUrl) { this.val = val; this.goalExp = goalExp; this.name = name; + this.imgUrl = imgUrl; } } diff --git a/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java b/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java index b75e14c2..7b1fc898 100644 --- a/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java +++ b/src/main/java/com/springles/domain/dto/member/MemberProfileRead.java @@ -21,6 +21,7 @@ public class MemberProfileRead { private ProfileImg profileImg; private String profileImgUrl; private String level; + private String levelImgUrl; private Long exp; private Long goalExp; private String nextLevel; diff --git a/src/main/java/com/springles/service/impl/MemberServiceImpl.java b/src/main/java/com/springles/service/impl/MemberServiceImpl.java index 9eab7515..ff82989b 100644 --- a/src/main/java/com/springles/service/impl/MemberServiceImpl.java +++ b/src/main/java/com/springles/service/impl/MemberServiceImpl.java @@ -568,6 +568,7 @@ public MemberProfileRead readProfile(String accessToken) { .profileImg(optionalMemberGameInfo.get().getProfileImg()) .profileImgUrl(optionalMemberGameInfo.get().getProfileImg().getFileUrl()) .level(optionalMemberGameInfo.get().getLevel().getName()) + .levelImgUrl(optionalMemberGameInfo.get().getLevel().getImgUrl()) .exp(optionalMemberGameInfo.get().getExp()) .goalExp(optionalMemberGameInfo.get().getLevel().getGoalExp()) // 최종레벨일 경우, nextLevel 비노출 필요 diff --git a/src/main/resources/static/css/basic.css b/src/main/resources/static/css/basic.css index 1b49835c..2baa5c06 100644 --- a/src/main/resources/static/css/basic.css +++ b/src/main/resources/static/css/basic.css @@ -282,7 +282,12 @@ body { text-align: center; } -.level-info-btn-img { +.lv-info-btn-img { width: 14px; height: 14px; +} + +.profile-lv-img { + width: 20px; + height: 20px; } \ No newline at end of file diff --git a/src/main/resources/templates/member/my-page.html b/src/main/resources/templates/member/my-page.html index 35b85da0..97ccc2c2 100644 --- a/src/main/resources/templates/member/my-page.html +++ b/src/main/resources/templates/member/my-page.html @@ -10,8 +10,8 @@
-
-
+
+ 레벨 이미지
@@ -33,11 +33,11 @@
-
+

다음 레벨 - - + + :

@@ -184,6 +184,7 @@

레벨 안내

const profile = response.data $('#level').text(profile.level); + $('#level-img').attr('src', profile.levelImgUrl) $('#profile-img-url').attr('src', profile.profileImgUrl) $('#nickname').text(profile.nickname); $('#exp').text(profile.exp); From 41625cf2b88a6399c56f234353d045a83c9458ae Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 15:26:39 +0900 Subject: [PATCH 05/15] =?UTF-8?q?:bug:=20fix:=20form=20ui=20=ED=86=B5?= =?UTF-8?q?=EC=9D=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/static/css/basic.css | 28 ++++++++++++++++--- src/main/resources/templates/home/add.html | 17 +++++------ .../resources/templates/member/login.html | 8 +++--- .../templates/member/member-info.html | 14 +++++----- .../templates/member/member-sign-out.html | 8 +++--- .../templates/member/profile-change.html | 10 +++---- .../templates/member/profile-settings.html | 10 +++---- .../resources/templates/member/sign-up.html | 15 +++++----- .../templates/member/vertification-id.html | 6 ++-- .../templates/member/vertification-pw.html | 8 +++--- 10 files changed, 72 insertions(+), 52 deletions(-) diff --git a/src/main/resources/static/css/basic.css b/src/main/resources/static/css/basic.css index 2baa5c06..aab8fe25 100644 --- a/src/main/resources/static/css/basic.css +++ b/src/main/resources/static/css/basic.css @@ -45,8 +45,10 @@ body { } .form-item { - width: 60%; - padding: 20px; + width: 400px; + padding: 30px; + border: 1px solid #ced4da; + border-radius: 14px; } .profile { @@ -205,7 +207,8 @@ body { .sign-out-btn { border: #ced4da solid 1px; background-color: #ffffff; - color: #000000; + color: #666666; + font-size: 14px; } .sign-out-btn-box { @@ -214,6 +217,7 @@ body { .vertif-txt { color: #666666; + font-size: 14px; } .vertif-id-box { @@ -290,4 +294,20 @@ body { .profile-lv-img { width: 20px; height: 20px; -} \ No newline at end of file +} + +.form-item-line { + margin-top: 1.5rem; + margin-bottom: 1.5rem; +} + +.form-title { + margin-bottom: 2.0rem; +} + +.checkbox-icon { + width: 20px; + height: 20px; + position: relative; + top: 3.5px; +} diff --git a/src/main/resources/templates/home/add.html b/src/main/resources/templates/home/add.html index 29cdb731..686a6bb5 100644 --- a/src/main/resources/templates/home/add.html +++ b/src/main/resources/templates/home/add.html @@ -7,31 +7,32 @@
-
+
+
게임 만들기
-
+
-
+
-
+
- +
-
+
- +
diff --git a/src/main/resources/templates/member/login.html b/src/main/resources/templates/member/login.html index 8d64cf9b..c220f03a 100644 --- a/src/main/resources/templates/member/login.html +++ b/src/main/resources/templates/member/login.html @@ -8,20 +8,20 @@
-
로그인
+
로그인
-
+
-
+
- +
diff --git a/src/main/resources/templates/member/member-info.html b/src/main/resources/templates/member/member-info.html index b887f971..016e8654 100644 --- a/src/main/resources/templates/member/member-info.html +++ b/src/main/resources/templates/member/member-info.html @@ -7,34 +7,34 @@
-
회원 정보 관리
+
회원 정보 관리
-
+
-
+
-
+
-
+
- +
-
+
diff --git a/src/main/resources/templates/member/member-sign-out.html b/src/main/resources/templates/member/member-sign-out.html index dcfe4c81..85fae32d 100644 --- a/src/main/resources/templates/member/member-sign-out.html +++ b/src/main/resources/templates/member/member-sign-out.html @@ -6,8 +6,8 @@
-
-
회원 탈퇴
+
+
회원 탈퇴

탈퇴 이후에는 데이터가 모두 삭제됩니다.
회원 탈퇴를 하시겠습니까?

@@ -15,12 +15,12 @@
-
+
- +
diff --git a/src/main/resources/templates/member/profile-change.html b/src/main/resources/templates/member/profile-change.html index 2d01b055..05c59c81 100644 --- a/src/main/resources/templates/member/profile-change.html +++ b/src/main/resources/templates/member/profile-change.html @@ -6,16 +6,16 @@
-
-
프로필 변경
+
+
프로필 변경
-
+
-
+

프로필 이미지

@@ -60,7 +60,7 @@
- +
diff --git a/src/main/resources/templates/member/profile-settings.html b/src/main/resources/templates/member/profile-settings.html index 7e1123d3..b24a1fea 100644 --- a/src/main/resources/templates/member/profile-settings.html +++ b/src/main/resources/templates/member/profile-settings.html @@ -6,16 +6,16 @@
-
-
프로필 설정
+
+
프로필 설정
-
+
-
+

프로필 이미지

@@ -60,7 +60,7 @@
- +
diff --git a/src/main/resources/templates/member/sign-up.html b/src/main/resources/templates/member/sign-up.html index 5148ea19..dba8bdee 100644 --- a/src/main/resources/templates/member/sign-up.html +++ b/src/main/resources/templates/member/sign-up.html @@ -9,29 +9,28 @@
-
회원가입
+
회원가입
- -
+
-
- +
+
-
+
-
+
- +
diff --git a/src/main/resources/templates/member/vertification-id.html b/src/main/resources/templates/member/vertification-id.html index f7a0aaec..90d54bc6 100644 --- a/src/main/resources/templates/member/vertification-id.html +++ b/src/main/resources/templates/member/vertification-id.html @@ -6,17 +6,17 @@
-
아이디 찾기
+
아이디 찾기
-
+
- +
diff --git a/src/main/resources/templates/member/vertification-pw.html b/src/main/resources/templates/member/vertification-pw.html index 524ad60d..fa10f03a 100644 --- a/src/main/resources/templates/member/vertification-pw.html +++ b/src/main/resources/templates/member/vertification-pw.html @@ -7,20 +7,20 @@
-
비밀번호 찾기
+
비밀번호 찾기
-
+
-
+
- +
From a54b9c2acd74e9153768d4d04d889832d2ed73c9 Mon Sep 17 00:00:00 2001 From: nayonnii Date: Sat, 9 Sep 2023 16:49:42 +0900 Subject: [PATCH 06/15] =?UTF-8?q?:bug:=20fix:=20=EB=A7=88=EC=9D=B4?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20ui=20=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/static/css/basic.css | 47 ++++- .../resources/templates/member/my-page.html | 173 +++++++++--------- 2 files changed, 130 insertions(+), 90 deletions(-) diff --git a/src/main/resources/static/css/basic.css b/src/main/resources/static/css/basic.css index aab8fe25..7e766f1d 100644 --- a/src/main/resources/static/css/basic.css +++ b/src/main/resources/static/css/basic.css @@ -37,7 +37,21 @@ body { height: 50vh; } -.card-header{ +/*.card-header{*/ +/* text-align: left;*/ +/* background-color:#666666;*/ +/* border-top-left-radius: 14px;*/ +/* border-top-right-radius: 14px;*/ +/*}*/ + +.idx-card-header{ + text-align: left; + background-color:#666666; + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} + +.my-card-header{ text-align: left; background-color:#666666; border-top-left-radius: 14px; @@ -57,6 +71,10 @@ body { height: 30vh; } +.my-profile { + border: #666666 solid 1px; +} + .card-body2 { float: none; /*margin:10px auto;*/ @@ -182,10 +200,11 @@ body { overflow-y: scroll; } -.card_body_info{ +.card-body-info{ text-align: left; background-color:#666666; - border-radius: 14px; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; font-size: 14px; color: #ffffff; } @@ -198,10 +217,8 @@ body { width: 100%; } -.record_box { - border-radius: 14px; - border: #666666 solid 1px; - background-color: #ffffff; +.record-item { + } .sign-out-btn { @@ -311,3 +328,19 @@ body { position: relative; top: 3.5px; } + +.member-record-box { + border : #666666 solid 1px; + border-radius: 14px; + background-color: #F5F5F5; + min-width: 550px; + padding: 2rem; +} + +.fs-18 { + font-size: 18px; +} + +.profile-area { + min-width: 300px; +} \ No newline at end of file diff --git a/src/main/resources/templates/member/my-page.html b/src/main/resources/templates/member/my-page.html index 97ccc2c2..b8f8d563 100644 --- a/src/main/resources/templates/member/my-page.html +++ b/src/main/resources/templates/member/my-page.html @@ -8,32 +8,34 @@
-
+
-
- 레벨 이미지
+
+ 레벨 이미지 +
-
- -
- 프로필이미지 -
- -
-
+
+
+ +
+ 프로필이미지 +
+ +
+
+
- -
+ -
-

내 전적

-
-

총 게임 횟수:

+
+

나의 게임기록

+
+

▶ 총 게임 횟수:

-
-

총 게임 시간:

+
+
+

▶ 총 게임 시간:

-
-
-

마피아

-

횟수:

-

승률: %

+
+
+

▶ 직업별 기록

+
+
+
+

마피아

+

· 횟수:

+

· 승률: %

-
-

시민

-

횟수:

-

승률: %

+
+

시민

+

· 횟수:

+

· 승률: %

+
-
-

경찰

-

횟수:

-

승률: %

+
+

경찰

+

· 횟수:

+

· 승률: %

-
-

의사

-

횟수:

-

승률: %

+
+

의사

+

· 횟수:

+

· 승률: %

@@ -109,54 +116,54 @@

레벨 안내