1
1
package com .semtleapp .semtleapp .semtledues .service ;
2
2
3
+ import com .semtleapp .semtleapp .file .entity .PhotoType ;
4
+ import com .semtleapp .semtleapp .file .service .FileUserService ;
3
5
import com .semtleapp .semtleapp .semtledues .convertor .SemtleDuesConvertor ;
4
- import com .semtleapp .semtleapp .semtledues .dto .GetDuesResDto ;
5
- import com .semtleapp .semtleapp .semtledues .dto . ModifyDuesReqDto ;
6
- import com .semtleapp .semtleapp .semtledues .dto . ModifyDuesResDto ;
6
+ import com .semtleapp .semtleapp .semtledues .dto .* ;
7
+ import com .semtleapp .semtleapp .semtledues .entity . SemtleDuesReceiptPost ;
8
+ import com .semtleapp .semtleapp .semtledues .repository . SemtleDuesPostRepository ;
7
9
import com .semtleapp .semtleapp .semtledues .repository .SemtleDuesRepository ;
8
10
import com .semtleapp .semtleapp .semtleuser .entity .SemtleUserInfo ;
9
11
import lombok .RequiredArgsConstructor ;
10
12
import org .springframework .stereotype .Service ;
13
+ import org .springframework .web .multipart .MultipartFile ;
11
14
15
+ import javax .imageio .IIOException ;
12
16
import javax .transaction .Transactional ;
17
+ import java .io .IOException ;
13
18
import java .util .ArrayList ;
14
19
import java .util .List ;
15
20
19
24
public class SemtleDuesServiceImpl implements SemtleDuesService {
20
25
21
26
private final SemtleDuesRepository semtleDuesRepository ;
27
+ private final SemtleDuesPostRepository semtleDuesPostRepository ;
28
+ private final FileUserService fileUserService ;
22
29
23
30
@ Override
24
31
public List <GetDuesResDto .DuesList > getDues () {
@@ -40,4 +47,23 @@ public ModifyDuesResDto modifyDuesStatus(String studentId, ModifyDuesReqDto modi
40
47
41
48
return ModifyDuesResDto .builder ().message ("회비 납부 상태가 수정되었습니다." ).build ();
42
49
}
50
+
51
+ @ Override
52
+ public ReceiptDuesPostResDto receiptDuesPost (ReceiptDuesPostReqDto receiptDuesPostReqDto , List <MultipartFile > files ) {
53
+ SemtleDuesReceiptPost semtleDuesReceiptPost = SemtleDuesConvertor .receiptDuesPost (receiptDuesPostReqDto );
54
+ SemtleDuesReceiptPost saveSemtleDuesPost = semtleDuesPostRepository .save (semtleDuesReceiptPost );
55
+ uploadPhotos (files , saveSemtleDuesPost );
56
+ return ReceiptDuesPostResDto .builder ().message ("영수증이 업로드 되었습니다." ).build ();
57
+
58
+ }
59
+
60
+ private void uploadPhotos (List <MultipartFile > files , SemtleDuesReceiptPost saveSemtleDuesPost ) {
61
+ if (files != null ) {
62
+ try {
63
+ fileUserService .saveFiles (files , PhotoType .DUES , saveSemtleDuesPost .getReceiptId ());
64
+ } catch (IOException e ) {
65
+ e .printStackTrace ();
66
+ }
67
+ }
68
+ }
43
69
}
0 commit comments