프로젝트

일반

사용자정보

통계
| 브랜치(Branch): | 개정판:

markus / ConvertService / ServiceBase / Markus.Service.StationController / Views / DataBaseView.xaml @ 31beca73

이력 | 보기 | 이력해설 | 다운로드 (21.4 KB)

1
<UserControl
2
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
4
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
6
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
7
             xmlns:controls="clr-namespace:Markus.Service.StationController.Controls"
8
             xmlns:VM="clr-namespace:Markus.Service.StationController.ViewModel"
9
             xmlns:Data="clr-namespace:Markus.Service.StationController.Data"
10
             xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
11
             xmlns:local="clr-namespace:Markus.Service.StationController.Views" x:Class="Markus.Service.StationController.Views.DataBaseView"
12
             mc:Ignorable="d"  Background="White" DataContext="{DynamicResource DataBaseItemsModel}" 
13
    d:DesignHeight="450" d:DesignWidth="1000">
14
    <UserControl.Resources>
15
        <Style TargetType="telerik:GridViewCell" x:Key="StretchCellStyle">
16
            <Setter Property="Margin" Value="0"/>
17
            <Setter Property="Padding" Value="0"/>
18
            <Setter Property="VerticalContentAlignment" Value="Stretch"/>
19
            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
20
        </Style>
21
        <Style TargetType="{x:Type telerik:GridViewHeaderCell}">
22
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
23
            <Setter Property="Background" Value="Gray"/>
24
        </Style>
25
        <Style TargetType="{x:Type telerik:GridViewCell}">
26
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
27
        </Style>
28
        <Style TargetType="{x:Type controls:RowIndexColumn}">
29
            <Setter Property="TextAlignment" Value="Center"/>
30
        </Style>
31
        <Style TargetType="{x:Type TextBox}">
32
            <Setter Property="Margin" Value="5,5,0,0"/>
33
            <Setter Property="VerticalAlignment" Value="Center"/>
34
            <Setter Property="HorizontalContentAlignment" Value="Left"/>
35
            <Setter Property="Foreground" Value="Black"/>
36
            <Setter Property="Background" Value="Transparent"/>
37
            <Setter Property="BorderBrush" Value="Transparent"/>
38
            <Setter Property="BorderThickness" Value="0"/>
39
            <Setter Property="IsReadOnly" Value="true"/>
40
            <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
41
            <Setter Property="ScrollViewer.PanningMode" Value="VerticalFirst"/>
42
            <Setter Property="Stylus.IsFlicksEnabled" Value="False"/>
43
            <Setter Property="Template">
44
                <Setter.Value>
45
                    <ControlTemplate TargetType="{x:Type TextBox}">
46
                        <Border x:Name="Bd" 
47
                    BorderThickness="{TemplateBinding BorderThickness}" 
48
                    SnapsToDevicePixels="true">
49
                            <ScrollViewer x:Name="PART_ContentHost" BorderThickness="{TemplateBinding BorderThickness}"
50
                    SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
51
                        </Border>
52
                    </ControlTemplate>
53
                </Setter.Value>
54
            </Setter>
55
        </Style>
56
        <VM:DataBaseItemsModel x:Key="DataBaseItemsModel"/>
57
        <DataTemplate x:Key="RowDetailsTemplate">
58
            <local:DataBaseViewInfo />
59
        </DataTemplate>
60
    </UserControl.Resources>
61
    <!--<UserControl.DataContext>
62
        <VM:DataBaseItemsModel/>
63
    </UserControl.DataContext>-->
64
    <i:Interaction.Triggers>
65
        <i:EventTrigger  EventName="Loaded">
66
            <i:InvokeCommandAction Command="{Binding LoadedCommand}"/>
67
        </i:EventTrigger>
68
        <i:EventTrigger  EventName="Unloaded">
69
            <i:InvokeCommandAction Command="{Binding ClosingCommand}"/>
70
        </i:EventTrigger>
71
    </i:Interaction.Triggers>
72
    <Grid HorizontalAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" VerticalAlignment="Stretch">
73
        <Grid.RowDefinitions>
74
            <RowDefinition Height="Auto"/>
75
            <RowDefinition Height="Auto"/>
76
            <RowDefinition Height="*"/>
77
            <RowDefinition Height="Auto"/>
78
            <RowDefinition Height="Auto"/>
79
        </Grid.RowDefinitions>
80
        <StackPanel Margin="0,10" Orientation="Horizontal" HorizontalAlignment="Right" Grid.Row="0"  Height="20" >
81
            <TextBlock Text="Display Count : " VerticalAlignment="Center"/>
82
            <telerik:RadComboBox x:Name="ComboCount" Width="100" SelectedItem="{Binding SelectedCount, Mode=TwoWay}" Margin="0,0,10,0" SelectedValuePath="DisplayMember"
83
                  DisplayMemberPath="ValueMember" ItemsSource="{Binding SelectedCountList}" SelectedIndex="0" />
84
            <TextBlock Text="Status Type : " Margin="10,0,0,0"  VerticalAlignment="Center"/>
85
            <telerik:RadComboBox Width="100" SelectedItem="{Binding SelectedStatus, Mode=TwoWay}" SelectedIndex="4"
86
                   DisplayMemberPath="DisplayName" SelectedValuePath="Value" ItemsSource="{Binding StatusCodeList}" Height="20"/>
87
            <telerik:RadToggleButton Content="  엑셀 저장  " Margin="10,0" Height="20" Command="{Binding DataSaveFileGemBoxCommand, Mode=OneWay}"/>
88
        </StackPanel>
89
        <StackPanel Orientation="Vertical" Grid.Row="1">
90
            <controls:DatabaseFilter ProjectNo="{Binding ProjectNumberFilter,Mode=TwoWay}" UniqueKey="{Binding UniqueKeyFilter,Mode=TwoWay}" Service_ID="{Binding Service_IDFilter, Mode=TwoWay}"
91
                                             Docuemnt_Name="{Binding Document_NameFilter, Mode=TwoWay}" Docuemnt_NO="{Binding Docuemnt_NOFilter, Mode=TwoWay}" Reconverter="{Binding ReconverterFilter, Mode=TwoWay}"
92
                                             Revision="{Binding RevisionFilter, Mode=TwoWay}" GroupNO="{Binding GroupNOFilter, Mode=TwoWay}" Document_URL="{Binding DOCUMENT_URLFilter, Mode=TwoWay}"/>
93
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
94
                <telerik:RadToggleButton Content=" Convert 추가" Command="{Binding ConverAddCommand, Mode=OneWay}" Width="100" Margin="0,0,20,0" HorizontalAlignment="Right"/>
95
                <telerik:RadToggleButton Content=" 검색" Command="{Binding DataFilterCommand, Mode=OneWay}" Width="100" Margin="0,0,20,0" HorizontalAlignment="Right"/>
96
                <telerik:RadToggleButton Content=" 초기화" Command="{Binding ResetCommand, Mode=OneWay}" Width="100" Margin="0,0,20,0" HorizontalAlignment="Right"/>
97
            </StackPanel>
98
        </StackPanel>
99

    
100
        <telerik:RadExpander ExpandDirection="Down"  BorderThickness="0" Grid.Row="2"
101
                  ScrollViewer.HorizontalScrollBarVisibility="Auto"  ScrollViewer.VerticalScrollBarVisibility="Auto"  IsExpanded="True"
102
                             telerik:AnimationManager.IsAnimationEnabled="False" >
103
            <telerik:RadExpander.Header>
104
                <Grid>
105
                    <Grid.ColumnDefinitions>
106
                        <ColumnDefinition Width="Auto"/>
107
                        <ColumnDefinition Width="Auto"/>
108
                    </Grid.ColumnDefinitions>
109
                    <TextBlock Text="DataBase Items : "/>
110
                    <TextBlock Text="{Binding SelectedCount.DisplayMember, StringFormat=\{0:d\}}" Grid.Column="1"/>
111
                </Grid>
112
            </telerik:RadExpander.Header>
113

    
114
            <telerik:RadGridView x:Name="dataGrid1"  GroupRenderMode="Flat" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"  
115
                                                         ItemsSource="{Binding FilterConvertSourceView}" 
116
                             SelectedItem="{Binding SelectFilterConvert, Mode=TwoWay}"
117
                             RowDetailsTemplate="{StaticResource RowDetailsTemplate}"  
118
                                                         AutoGenerateColumns="False" 
119
                             ColumnWidth="*" CanUserFreezeColumns="False"
120
                             Grid.Row="1"  ScrollViewer.CanContentScroll="True" IsFilteringAllowed="True"
121
                             LeftFrozenColumnCount="6" 
122
                             RightFrozenColumnCount="0">
123
                <telerik:RadContextMenu.ContextMenu>
124
                    <telerik:RadContextMenu x:Name= "GridContextMenu">
125
                        <telerik:RadMenuItem  Header="Convert"  Command="{Binding ConvertCommand}"/>
126
                        <telerik:RadMenuItem Header="Validation"  Command="{Binding ValidateCommand}"/>
127
                        <telerik:RadMenuItem Header="Delete"  Command="{Binding DeleteCommand}"/>
128
                    </telerik:RadContextMenu>
129
                </telerik:RadContextMenu.ContextMenu>
130
                <telerik:RadGridView.Columns>
131
                    <telerik:GridViewToggleRowDetailsColumn />
132
                    <controls:RowIndexColumn Header="#" Width="30" CellStyle="{StaticResource RowNumberStyle}" />
133
                    <telerik:GridViewDataColumn Header="Convert ID "
134
                                                                                        DataMemberBinding="{Binding ConvertID}" Width="1.5*" />
135
                    <telerik:GridViewDataColumn x:Name="commend" Header="Markus " Width="0.5*"  CellStyle="{StaticResource StretchCellStyle}">
136
                        <telerik:GridViewDataColumn.CellTemplate>
137
                            <DataTemplate>
138
                                <telerik:RadButton Content="Click" BorderThickness="0"
139
                                                   Background="Transparent"
140
                                                   Command="{Binding MarkusLinkCommand, Source={StaticResource DataBaseItemsModel}}" CommandParameter="{Binding DataContext, RelativeSource={RelativeSource Self}}"/>
141
                            </DataTemplate>
142
                        </telerik:GridViewDataColumn.CellTemplate>
143
                    </telerik:GridViewDataColumn>
144
                    <telerik:GridViewDataColumn Header="ProjectNO" 
145
                                                                                        DataMemberBinding="{Binding ProjectNumber}" Width="*" />
146
                    <telerik:GridViewDataColumn Header="UniqueKey"
147
                                                                                        DataMemberBinding="{Binding UniqueKey}" Width="*" />
148
                    <telerik:GridViewDataColumn Header="ConvertState"
149
                                                                                        DataMemberBinding="{Binding ConvertState, Mode=TwoWay}" Width="*" />
150
                    <telerik:GridViewDataColumn Header="CurrentPageNo"
151
                                                                                        DataMemberBinding="{Binding CurrentPageNo, Mode=TwoWay}" Width="*" />
152
                    <telerik:GridViewDataColumn Header="TotalPageNo"
153
                                                                                        DataMemberBinding="{Binding TotalPage, Mode=TwoWay}" Width="*"  />
154
                    <telerik:GridViewDynamicHyperlinkColumn Header="원본파일"
155
                                                        NavigateUrlFormatString=" {0}"
156
                                                                                                            NavigateUrlMemberPaths="OriginfilePath"
157
                                                                                                                Width="2*">
158
                        <telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
159
                            <DataTemplate>
160
                                <TextBlock Text="{Binding FileName}"/>
161
                            </DataTemplate>
162
                        </telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
163
                    </telerik:GridViewDynamicHyperlinkColumn>
164
                    <telerik:GridViewDataColumn Header=" ConvertPath"
165
                                                                                        DataMemberBinding="{Binding ConvertPath}" Width="2.5*" />
166
                    <telerik:GridViewDataColumn Header="CreateTime" 
167
                                                                                        DataMemberBinding="{Binding CreateTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
168
                    <telerik:GridViewDataColumn Header="StartTime" 
169
                                                                                        DataMemberBinding="{Binding StartTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
170
                    <telerik:GridViewDataColumn Header="EndTime" 
171
                                                                                        DataMemberBinding="{Binding EndTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
172
                </telerik:RadGridView.Columns>
173
            </telerik:RadGridView>
174
        </telerik:RadExpander>
175
        <telerik:RadExpander Grid.Row="3" ExpandDirection="Down" BorderThickness="0"
176
                  ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" HorizontalAlignment="Stretch"
177
                                         VerticalAlignment="Stretch" 
178
                             telerik:AnimationManager.IsAnimationEnabled="False" IsExpanded ="{Binding ConvertShow, Mode=TwoWay}">
179
            <telerik:RadExpander.Header>
180
                <Grid>
181
                    <Grid.ColumnDefinitions>
182
                        <ColumnDefinition Width="Auto"/>
183
                        <ColumnDefinition Width="Auto"/>
184
                    </Grid.ColumnDefinitions>
185
                    <TextBlock Text="RealConvert Items : "/>
186
                    <TextBlock Text="{Binding RealConvertSource.Count, StringFormat=\{0:d\}}" Grid.Column="1"/>
187
                </Grid>
188
            </telerik:RadExpander.Header>
189
            <telerik:RadGridView Name="dataGrid2" GroupRenderMode="Flat" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
190
                                                         ItemsSource="{Binding RealConvertSource}"
191
                             SelectedItem="{Binding SelectRealConvert, Mode=TwoWay}"
192
                             RowDetailsTemplate="{StaticResource RowDetailsTemplate}"
193
                                                         AutoGenerateColumns="False" CanUserFreezeColumns="False"
194
                             ColumnWidth="*"
195
                             Grid.Row="1"  ScrollViewer.CanContentScroll="False" IsFilteringAllowed="True">
196
                <telerik:RadContextMenu.ContextMenu>
197
                    <telerik:RadContextMenu>
198
                        <telerik:RadMenuItem  Header="Convert"  Command="{Binding ConvertCommand}"/>
199
                        <telerik:RadMenuItem Header="Validation"  Command="{Binding ValidateCommand}"/>
200
                        <telerik:RadMenuItem Header="Delete"  Command="{Binding DeleteCommand}"/>
201
                    </telerik:RadContextMenu>
202
                </telerik:RadContextMenu.ContextMenu>
203
                <telerik:RadGridView.Columns>
204
                    <telerik:GridViewToggleRowDetailsColumn />
205
                    <controls:RowIndexColumn Header="#" Width="30" CellStyle="{StaticResource RowNumberStyle}" />
206

    
207
                    <telerik:GridViewDataColumn Header="Convert ID "
208
                                                                                        DataMemberBinding="{Binding ConvertID}" Width="1.5*" />
209

    
210
                    <telerik:GridViewDataColumn Header="Markus " Width="0.5*" CellStyle="{StaticResource StretchCellStyle}">
211
                        <telerik:GridViewDataColumn.CellTemplate>
212
                            <DataTemplate>
213
                                <telerik:RadButton Content="Click "  BorderThickness="0" Background="Transparent"
214
                                                   Command="{Binding MarkusLinkCommand, Source={StaticResource DataBaseItemsModel}}" CommandParameter="{Binding DataContext, RelativeSource={RelativeSource Self}}"/>
215
                            </DataTemplate>
216
                        </telerik:GridViewDataColumn.CellTemplate>
217
                    </telerik:GridViewDataColumn>
218

    
219
                    <telerik:GridViewDataColumn Header="ProjectNO" 
220
                                                                                        DataMemberBinding="{Binding ProjectNumber}" Width="*" />
221
                    <telerik:GridViewDataColumn Header="UniqueKey"
222
                                                                                        DataMemberBinding="{Binding UniqueKey}" Width="*" />
223
                    <telerik:GridViewDataColumn Header="ConvertState"
224
                                                                                        DataMemberBinding="{Binding ConvertState, Mode=TwoWay}" Width="*" />
225

    
226
                    <telerik:GridViewDataColumn Header="CurrentPageNo"
227
                                                                                        DataMemberBinding="{Binding CurrentPageNo, Mode=TwoWay}" Width="*" />
228
                    <telerik:GridViewDataColumn Header="TotalPageNo"
229
                                                                                        DataMemberBinding="{Binding TotalPage, Mode=TwoWay}" Width="*" />
230
                    <telerik:GridViewDynamicHyperlinkColumn x:Name="navigation" Header="원본파일"
231
                                                        NavigateUrlFormatString="{}{0}"
232
                                                                                                            NavigateUrlMemberPaths="OriginfilePath"
233
                                                                                                                Width="2*">
234
                        <telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
235
                            <DataTemplate>
236
                                <TextBlock Text="{Binding FileName}"/>
237
                            </DataTemplate>
238
                        </telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
239
                    </telerik:GridViewDynamicHyperlinkColumn>
240
                    <telerik:GridViewDataColumn Header=" ConvertPath"
241
                                                                                        DataMemberBinding="{Binding ConvertPath}" Width="2.5*" />
242
                    <telerik:GridViewDataColumn Header="CreateTime"
243
                                                                                        DataMemberBinding="{Binding CreateTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
244
                    <telerik:GridViewDataColumn Header="StartTime"
245
                                                                                        DataMemberBinding="{Binding StartTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
246
                    <telerik:GridViewDataColumn Header="EndTime"
247
                                                                                        DataMemberBinding="{Binding EndTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
248
                </telerik:RadGridView.Columns>
249
            </telerik:RadGridView>
250
        </telerik:RadExpander>
251
        <telerik:RadExpander Grid.Row="4" ExpandDirection="Down" BorderThickness="0"  VerticalAlignment="Stretch" 
252
                  ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto"
253
                             telerik:AnimationManager.IsAnimationEnabled="False"  IsExpanded ="False">
254
            <telerik:RadExpander.Header>
255
                <Grid>
256
                    <Grid.ColumnDefinitions>
257
                        <ColumnDefinition Width="Auto"/>
258
                        <ColumnDefinition Width="Auto"/>
259
                    </Grid.ColumnDefinitions>
260
                    <TextBlock Text="Alive Items : " Grid.RowSpan="2"/>
261
                    <TextBlock Text="{Binding AliveItems.Count, StringFormat=\{0:d\}}" Grid.Column="1" Grid.RowSpan="2"/>
262
                </Grid>
263
            </telerik:RadExpander.Header>
264
            <telerik:RadGridView GroupRenderMode="Flat" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
265
                                                         ItemsSource="{Binding AliveItems}"
266
                             SelectedItem="{Binding SelectAliveConvert, Mode=TwoWay}"
267
                                                         AutoGenerateColumns="False" CanUserFreezeColumns="False" RowDetailsTemplate="{StaticResource RowDetailsTemplate}"
268
                             ColumnWidth="*"  ScrollViewer.CanContentScroll="False" IsFilteringAllowed="True" Grid.Row="1" >
269
                <telerik:RadGridView.Columns>
270
                    <telerik:GridViewToggleRowDetailsColumn />
271
                    <controls:RowIndexColumn Header="#" Width="30" CellStyle="{StaticResource RowNumberStyle}" />
272

    
273
                    <telerik:GridViewDataColumn Header="Convert ID "
274
                                                                                        DataMemberBinding="{Binding ConvertID}" Width="1.5*"  />
275

    
276
                    <telerik:GridViewDataColumn Header="Markus " Width="0.5*" CellStyle="{StaticResource StretchCellStyle}">
277
                        <telerik:GridViewDataColumn.CellTemplate>
278
                            <DataTemplate>
279
                                <telerik:RadButton Content="Click "  BorderThickness="0" Background="Transparent"
280
                                                   Command="{Binding MarkusLinkCommand, Source={StaticResource DataBaseItemsModel}}" CommandParameter="{Binding DataContext, RelativeSource={RelativeSource Self}}"/>
281
                            </DataTemplate>
282
                        </telerik:GridViewDataColumn.CellTemplate>
283
                    </telerik:GridViewDataColumn>
284

    
285
                    <telerik:GridViewDataColumn Header="ProjectNO" 
286
                                                                                        DataMemberBinding="{Binding ProjectNumber}" Width="*" />
287
                    <telerik:GridViewDataColumn Header="UniqueKey"
288
                                                                                        DataMemberBinding="{Binding UniqueKey}" Width="*" />
289
                    <telerik:GridViewDataColumn Header="ConvertState"
290
                                                                                        DataMemberBinding="{Binding ConvertState, Mode=TwoWay}" Width="*" />
291

    
292
                    <telerik:GridViewDataColumn Header="CurrentPageNo"
293
                                                                                        DataMemberBinding="{Binding CurrentPageNo, Mode=TwoWay}" Width="*" />
294
                    <telerik:GridViewDataColumn Header="TotalPageNo"
295
                                                                                        DataMemberBinding="{Binding TotalPage, Mode=TwoWay}" Width="*" />
296
                    <telerik:GridViewDynamicHyperlinkColumn  Header="원본파일"
297
                                                        NavigateUrlFormatString="{}{0}"
298
                                                                                                            NavigateUrlMemberPaths="OriginfilePath"
299
                                                                                                                Width="2*">
300
                        <telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
301
                            <DataTemplate>
302
                                <TextBlock Text="{Binding FileName}"/>
303
                            </DataTemplate>
304
                        </telerik:GridViewDynamicHyperlinkColumn.CellTemplate>
305
                    </telerik:GridViewDynamicHyperlinkColumn>
306
                    <telerik:GridViewDataColumn Header=" ConvertPath"
307
                                                                                        DataMemberBinding="{Binding ConvertPath}" Width="2.5*" />
308
                    <telerik:GridViewDataColumn Header="CreateTime"
309
                                                                                        DataMemberBinding="{Binding CreateTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
310
                    <telerik:GridViewDataColumn Header="StartTime"
311
                                                                                        DataMemberBinding="{Binding StartTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
312
                    <telerik:GridViewDataColumn Header="EndTime"
313
                                                                                        DataMemberBinding="{Binding EndTime, Mode=TwoWay, StringFormat=\{0:yyyy.MM.dd HH:mm:ss\}}" Width="*" />
314
                </telerik:RadGridView.Columns>
315
            </telerik:RadGridView>
316
        </telerik:RadExpander>
317
    </Grid>
318
</UserControl>
클립보드 이미지 추가 (최대 크기: 500 MB)