P15GEN2\59518
2025-10-10 9f6890646993d16260d4201d613c092132856127
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
package foundation.icall.callout.send;
 
import java.util.ArrayList;
import java.util.List;
 
import foundation.data.entity.Entity;
import foundation.io.template.SendTemplate;
import foundation.json.IJSONWriter;
 
public class SendAction {
 
    private String id;
    private String serverName;
    private String name;
    private String subject;
    private String fieldAddress;
    private String fieldTargetName;
    private String fieldTargetCode;
    private String fieldTargetId;
    private String templateCode;
    private String templateName;
    private SendTemplate template;
    private List<String> fileIds;
    
    public SendAction() {
        
    }
 
    public void load(Entity entity) {
        id = entity.getString("id");
        serverName = entity.getString("server_name");
        name = entity.getString("action_name");
        subject = entity.getString("subject");
        templateCode = entity.getString("template_code");
        templateName = entity.getString("template_name");
        fieldAddress = entity.getString("field_mail_address");
        fieldTargetId = entity.getString("field_target_id");
        fieldTargetCode = entity.getString("field_target_code");
        fieldTargetName = entity.getString("field_target_name");
        
        template = new SendTemplate(templateName);
        fileIds = new ArrayList<String>();
    }
 
    public static SendAction getInstance(String mailName) {
        mailName = mailName.toLowerCase();
        SendActionBucket actionBucket = SendActionBucket.getInstance();
        return actionBucket.get(mailName);
    }
    
    public String getId() {
        return id;
    }
    
    public String getServerName() {
        return serverName;
    }
    
    public String getName() {
        return name;
    }
 
    public String getSubject() {
        return subject;
    }
    
    public String getFieldAddress() {
        return fieldAddress;
    }
 
    public boolean isFromAccount() {
        if("business_email".equalsIgnoreCase(fieldAddress)) {
            return true;
        }
        return false;
    }
 
    public String getFieldTargetName() {
        return fieldTargetName;
    }
 
    public String getFieldTargetCode() {
        return fieldTargetCode;
    }
 
    public String getFieldTargetId() {
        return fieldTargetId;
    }
 
    public String getTemplateCode(){
        return templateCode;
    }
 
    public synchronized SendTemplate getTemplate() throws Exception {
        return template;
    }
 
    public void setFileIds(String id) {
        fileIds.add(id);
    }
    
    public List<String> getFileIds() {
        return fileIds;
    }
 
    public void writeJSONBody(IJSONWriter writer) {
        writer.write("name", name);
        writer.write("subject", subject);
        writer.write("field_target_name", fieldTargetName);
        writer.write("field_target_code", fieldTargetCode);
        writer.write("field_target_id", fieldTargetId);
        writer.write("template", templateName);
    }
}