8
8
import muit .backend .config .jwt .TokenDTO ;
9
9
import muit .backend .config .jwt .TokenProvider ;
10
10
import muit .backend .converter .MemberConverter ;
11
- import muit .backend .converter .MusicalConverter ;
12
- import muit .backend .domain .entity .member .Likes ;
13
11
import muit .backend .domain .entity .member .Member ;
14
- import muit .backend .domain .entity .musical .Musical ;
15
12
import muit .backend .domain .enums .ActiveStatus ;
16
13
import muit .backend .domain .enums .Role ;
17
14
import muit .backend .dto .memberDTO .*;
18
- import muit .backend .dto .musicalDTO .MusicalResponseDTO ;
19
- import muit .backend .repository .LikesRepository ;
20
15
import muit .backend .repository .MemberRepository ;
21
16
22
17
import org .springframework .security .authentication .UsernamePasswordAuthenticationToken ;
25
20
import org .springframework .stereotype .Service ;
26
21
import org .springframework .transaction .annotation .Transactional ;
27
22
28
- import java .util .List ;
29
-
30
23
@ Slf4j
31
24
@ Service
32
25
@ RequiredArgsConstructor
@@ -35,7 +28,6 @@ public class MemberServiceImpl implements MemberService {
35
28
private final MemberRepository memberRepository ;
36
29
private final BCryptPasswordEncoder encoder ;
37
30
private final TokenProvider tokenProvider ;
38
- private final LikesRepository likesRepository ;
39
31
40
32
//== 개인회원 가입 - 이메일 ==//
41
33
@ Override
@@ -166,26 +158,103 @@ public MyPageResponseDTO deactivateMember(Long tokenId, Long memberId){
166
158
member .deactivateMember (member );
167
159
return MyPageResponseDTO .builder ()
168
160
.id (memberId )
161
+ .phone (member .getPhone ())
162
+ .email (member .getEmail ())
169
163
.name (member .getName ())
170
- .username (member .getUsername ()).build ();
164
+ .username (member .getUsername ())
165
+ .status (member .getActiveStatus ()).build ();
171
166
172
167
}
173
168
174
169
@ Override
175
- public boolean CheckPassword (Member member ,PasswordCheckRequestDTO dto ){
170
+ public boolean CheckPassword (Member member , PasswordRequestDTO dto ){
176
171
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder ();
177
-
178
172
return passwordEncoder .matches (dto .getPassword (), member .getPassword ());
179
173
}
180
174
175
+ @ Transactional
181
176
@ Override
182
- public List <MusicalResponseDTO .MusicalHomeDTO > getLikeMusicals (Member member ){
183
- Long memberId = member .getId ();
184
- List <Likes > likesList = likesRepository .findAllByMemberId (memberId );
185
- return likesList .stream ()
186
- .map (likes ->MusicalConverter .toMusicalHomeDTO (likes .getMusical ())).toList ();
177
+ public MyPageResponseDTO changePhoneNumber (Long tokenId , Long memberId , PhoneChangeRequestDTO dto ){
178
+ Member member = memberRepository .findById (memberId ).orElseThrow (() -> new GeneralException (ErrorStatus .MEMBER_NOT_FOUND ));
179
+ if (!tokenId .equals (memberId )) {
180
+ throw new GeneralException (ErrorStatus .MEMBER_NOT_AUTHORIZED );
181
+ }
182
+
183
+ member .changePhoneNumber (dto .getNewPhoneNumber ());
184
+ return MyPageResponseDTO .builder ()
185
+ .id (memberId )
186
+ .phone (member .getPhone ())
187
+ .email (member .getEmail ())
188
+ .name (member .getName ())
189
+ .username (member .getUsername ())
190
+ .status (member .getActiveStatus ()).build ();
187
191
}
188
192
193
+ @ Transactional
194
+ @ Override
195
+ public MyPageResponseDTO changeUsername (Long tokenId , Long memberId , UserNameChangeRequestDTO dto ){
196
+ Member member = memberRepository .findById (memberId ).orElseThrow (() -> new GeneralException (ErrorStatus .MEMBER_NOT_FOUND ));
197
+ if (!tokenId .equals (memberId )) {
198
+ throw new GeneralException (ErrorStatus .MEMBER_NOT_AUTHORIZED );
199
+ }
200
+
201
+ member .changeUsername (dto .getNewUsername ());
202
+ return MyPageResponseDTO .builder ()
203
+ .id (memberId )
204
+ .phone (member .getPhone ())
205
+ .email (member .getEmail ())
206
+ .name (member .getName ())
207
+ .username (member .getUsername ())
208
+ .status (member .getActiveStatus ()).build ();
209
+ }
210
+ @ Transactional
211
+ @ Override
212
+ public MyPageResponseDTO changeEmail (Long tokenId , Long memberId , EmailVerifyRequestDTO dto ){
213
+ Member member = memberRepository .findById (memberId ).orElseThrow (() -> new GeneralException (ErrorStatus .MEMBER_NOT_FOUND ));
214
+ if (!tokenId .equals (memberId )) {
215
+ throw new GeneralException (ErrorStatus .MEMBER_NOT_AUTHORIZED );
216
+ }
217
+
218
+ member .changeEmail (dto .getEmail ());
219
+ return MyPageResponseDTO .builder ()
220
+ .id (memberId )
221
+ .phone (member .getPhone ())
222
+ .email (member .getEmail ())
223
+ .name (member .getName ())
224
+ .username (member .getUsername ())
225
+ .status (member .getActiveStatus ()).build ();
226
+ }
227
+ @ Transactional
228
+ @ Override
229
+ public MyPageResponseDTO changePassword (Long tokenId , Long memberId , PasswordChangeRequestDTO dto ){
230
+ Member member = memberRepository .findById (memberId ).orElseThrow (() -> new GeneralException (ErrorStatus .MEMBER_NOT_FOUND ));
231
+ if (!tokenId .equals (memberId )) {
232
+ throw new GeneralException (ErrorStatus .MEMBER_NOT_AUTHORIZED );
233
+ }
234
+
235
+ if (!dto .getNewPassword ().equals (dto .getNewPasswordConfirm ())){
236
+ throw new GeneralException (ErrorStatus .PASSWORD_NOT_MATCH );
237
+ }
238
+
239
+ String encodedPw = encoder .encode (dto .getNewPassword ());
240
+
241
+ member .encodePassword (encodedPw );
242
+
243
+
244
+ return MyPageResponseDTO .builder ()
245
+ .id (memberId )
246
+ .phone (member .getPhone ())
247
+ .email (member .getEmail ())
248
+ .name (member .getName ())
249
+ .username (member .getUsername ())
250
+ .status (member .getActiveStatus ()).build ();
251
+ }
252
+
253
+
254
+
255
+
256
+
257
+
189
258
190
259
191
260
}
0 commit comments