개정판 c95d3bca
issue #0000
그리드 수정
excel export 수정
데이터 포멧 변경
excel 템플릿 등록
Change-Id: I5949aa4497f4f1337238238bec91578d99fe8f9c
ID2.Manager/ID2.Manager.Common/Informations.cs | ||
---|---|---|
26 | 26 |
} |
27 | 27 |
|
28 | 28 |
public UserInfo ActiveUser { get; set; } |
29 |
|
|
30 |
private readonly List<string> _JobLevel = new List<string>() { "1", "2", "3", "4", "5" }; |
|
31 |
public List<string> JobLevel |
|
32 |
{ |
|
33 |
get { return _JobLevel; } |
|
34 |
} |
|
35 |
|
|
36 |
private readonly List<string> _IsYesNo = new List<string>() { "Yes", "No" }; |
|
37 |
public List<string> IsYesNo |
|
38 |
{ |
|
39 |
get { return _IsYesNo; } |
|
40 |
} |
|
41 |
|
|
42 |
private readonly List<string> _ClientStatus = new List<string>() { "검토중", "회신완료" }; |
|
43 |
public List<string> ClientStatus |
|
44 |
{ |
|
45 |
get { return _ClientStatus; } |
|
46 |
} |
|
47 |
|
|
48 |
private readonly List<string> _ValidationResult = new List<string>() { "O", "X" }; |
|
49 |
public List<string> ValidationResult |
|
50 |
{ |
|
51 |
get { return _ValidationResult; } |
|
52 |
} |
|
53 |
|
|
54 |
private readonly List<string> _JobStatus = new List<string>() { "시작전", "진행중", "완료", "기타" }; |
|
55 |
public List<string> JobStatus |
|
56 |
{ |
|
57 |
get { return _JobStatus; } |
|
58 |
} |
|
29 | 59 |
} |
30 | 60 |
} |
ID2.Manager/ID2.Manager.Data/Models/Documents.cs | ||
---|---|---|
32 | 32 |
[DataMember] |
33 | 33 |
public string JobLevel { get; set; } |
34 | 34 |
[DataMember] |
35 |
public bool Typical { get; set; }
|
|
35 |
public string IsTypical { get; set; }
|
|
36 | 36 |
[DataMember] |
37 | 37 |
public string PersonInCharge { get; set; } |
38 | 38 |
[DataMember] |
... | ... | |
44 | 44 |
[DataMember] |
45 | 45 |
public DateTime DeletedDate { get; set; } |
46 | 46 |
[DataMember] |
47 |
public bool ToIsDiscussion { get; set; }
|
|
47 |
public string ToIsDiscussion { get; set; }
|
|
48 | 48 |
[DataMember] |
49 | 49 |
public string ToRemarks { get; set; } |
50 | 50 |
[DataMember] |
... | ... | |
54 | 54 |
[DataMember] |
55 | 55 |
public string ToCapturePath { get; set; } |
56 | 56 |
[DataMember] |
57 |
public bool ToIsMarkup { get; set; }
|
|
57 |
public string ToIsMarkup { get; set; }
|
|
58 | 58 |
[DataMember] |
59 | 59 |
public string FrReviewStatus { get; set; } |
60 | 60 |
[DataMember] |
... | ... | |
66 | 66 |
[DataMember] |
67 | 67 |
public string FrCapturePath { get; set; } |
68 | 68 |
[DataMember] |
69 |
public bool FrIsMarkup { get; set; }
|
|
69 |
public string FrIsMarkup { get; set; }
|
|
70 | 70 |
[DataMember] |
71 |
public bool IsID2Work { get; set; }
|
|
71 |
public string IsID2Work { get; set; }
|
|
72 | 72 |
[DataMember] |
73 | 73 |
public string ID2Connection { get; set; } |
74 | 74 |
[DataMember] |
... | ... | |
108 | 108 |
[DataMember] |
109 | 109 |
public string ClientRemarks { get; set; } |
110 | 110 |
[DataMember] |
111 |
public bool DTIsGateWay { get; set; }
|
|
111 |
public string DTIsGateWay { get; set; }
|
|
112 | 112 |
[DataMember] |
113 |
public bool DTIsImport { get; set; }
|
|
113 |
public string DTIsImport { get; set; }
|
|
114 | 114 |
[DataMember] |
115 |
public bool DTIsRegSystem { get; set; }
|
|
115 |
public string DTIsRegSystem { get; set; }
|
|
116 | 116 |
[DataMember] |
117 | 117 |
public string DTRemarks { get; set; } |
118 | 118 |
} |
ID2.Manager/ID2.Manager/ID2.Manager.csproj | ||
---|---|---|
67 | 67 |
</Compile> |
68 | 68 |
<Compile Include="Program.cs" /> |
69 | 69 |
<Compile Include="Properties\AssemblyInfo.cs" /> |
70 |
<Compile Include="Settings.cs" /> |
|
70 | 71 |
<EmbeddedResource Include="Forms\Login.resx"> |
71 | 72 |
<DependentUpon>Login.cs</DependentUpon> |
72 | 73 |
</EmbeddedResource> |
... | ... | |
93 | 94 |
<DependentUpon>Settings.settings</DependentUpon> |
94 | 95 |
<DesignTimeSharedInput>True</DesignTimeSharedInput> |
95 | 96 |
</Compile> |
97 |
<None Include="Template\Samsung Elec Task Management.xlsx"> |
|
98 |
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
|
99 |
</None> |
|
96 | 100 |
</ItemGroup> |
97 | 101 |
<ItemGroup> |
98 | 102 |
<None Include="App.config" /> |
... | ... | |
155 | 159 |
<ItemGroup> |
156 | 160 |
<None Include="Resources\ImportFromExcel.png" /> |
157 | 161 |
</ItemGroup> |
162 |
<ItemGroup> |
|
163 |
<None Include="Resources\pdf20.png" /> |
|
164 |
</ItemGroup> |
|
165 |
<ItemGroup> |
|
166 |
<None Include="Resources\pdf18.png" /> |
|
167 |
</ItemGroup> |
|
168 |
<ItemGroup> |
|
169 |
<None Include="Resources\link18_green.png" /> |
|
170 |
</ItemGroup> |
|
171 |
<ItemGroup> |
|
172 |
<None Include="Resources\cad18.png" /> |
|
173 |
</ItemGroup> |
|
174 |
<ItemGroup> |
|
175 |
<None Include="Resources\link18_blue.png" /> |
|
176 |
</ItemGroup> |
|
177 |
<ItemGroup> |
|
178 |
<None Include="Resources\link18_yellow.png" /> |
|
179 |
</ItemGroup> |
|
180 |
<ItemGroup> |
|
181 |
<None Include="Resources\files18.png" /> |
|
182 |
</ItemGroup> |
|
183 |
<ItemGroup> |
|
184 |
<None Include="Resources\link18_purple.png" /> |
|
185 |
</ItemGroup> |
|
158 | 186 |
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
159 | 187 |
</Project> |
ID2.Manager/ID2.Manager/Main.Designer.cs | ||
---|---|---|
29 | 29 |
/// </summary> |
30 | 30 |
private void InitializeComponent() |
31 | 31 |
{ |
32 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn1 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
33 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn2 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
34 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn3 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
35 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn4 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
32 | 36 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn1 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
33 | 37 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn2 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
38 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn3 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
34 | 39 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn1 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
35 | 40 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn2 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
36 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn3 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
37 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn3 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
38 | 41 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn4 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
42 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn3 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
39 | 43 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn5 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
40 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn1 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
44 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn6 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
45 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn5 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
41 | 46 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn4 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
42 | 47 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn5 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
43 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn6 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
44 | 48 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn7 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
45 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn2 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
49 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn8 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
50 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn6 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
46 | 51 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn6 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
47 | 52 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn7 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
48 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn3 = new Telerik.WinControls.UI.GridViewCommandColumn();
|
|
53 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn7 = new Telerik.WinControls.UI.GridViewCommandColumn();
|
|
49 | 54 |
Telerik.WinControls.UI.GridViewDateTimeColumn gridViewDateTimeColumn1 = new Telerik.WinControls.UI.GridViewDateTimeColumn(); |
50 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn8 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
51 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn8 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
52 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn9 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
53 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn4 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
54 | 55 |
Telerik.WinControls.UI.GridViewDateTimeColumn gridViewDateTimeColumn2 = new Telerik.WinControls.UI.GridViewDateTimeColumn(); |
56 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn9 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
57 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn8 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
58 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn10 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
59 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn8 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
55 | 60 |
Telerik.WinControls.UI.GridViewDateTimeColumn gridViewDateTimeColumn3 = new Telerik.WinControls.UI.GridViewDateTimeColumn(); |
61 |
Telerik.WinControls.UI.GridViewDateTimeColumn gridViewDateTimeColumn4 = new Telerik.WinControls.UI.GridViewDateTimeColumn(); |
|
56 | 62 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn9 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
57 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn10 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
58 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn5 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
59 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn6 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
60 | 63 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn11 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
61 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn10 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
64 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn9 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
65 |
Telerik.WinControls.UI.GridViewCommandColumn gridViewCommandColumn10 = new Telerik.WinControls.UI.GridViewCommandColumn(); |
|
62 | 66 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn12 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
67 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn10 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
63 | 68 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn13 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
64 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn11 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
65 | 69 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn14 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
70 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn11 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
|
71 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn15 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); |
|
66 | 72 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn12 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
67 | 73 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn13 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
68 | 74 |
Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn14 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); |
69 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn15 = new Telerik.WinControls.UI.GridViewTextBoxColumn();
|
|
75 |
Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn16 = new Telerik.WinControls.UI.GridViewTextBoxColumn();
|
|
70 | 76 |
Telerik.WinControls.UI.TableViewDefinition tableViewDefinition1 = new Telerik.WinControls.UI.TableViewDefinition(); |
71 | 77 |
this.ID2ManagerRadRibbonBar = new Telerik.WinControls.UI.RadRibbonBar(); |
72 | 78 |
this.ribbonTabProjMgt = new Telerik.WinControls.UI.RibbonTab(); |
79 |
this.radRibbonBarGroup1 = new Telerik.WinControls.UI.RadRibbonBarGroup(); |
|
80 |
this.radButtonElementExcelImport = new Telerik.WinControls.UI.RadButtonElement(); |
|
81 |
this.radButtonElementExcelExport = new Telerik.WinControls.UI.RadButtonElement(); |
|
73 | 82 |
this.radSplitContainerWrap = new Telerik.WinControls.UI.RadSplitContainer(); |
74 | 83 |
this.splitPanelLeft = new Telerik.WinControls.UI.SplitPanel(); |
75 | 84 |
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); |
76 | 85 |
this.radGridViewDocuments = new Telerik.WinControls.UI.RadGridView(); |
77 | 86 |
this.splitPanelRight = new Telerik.WinControls.UI.SplitPanel(); |
78 | 87 |
this.radButtonElementImportPCWBS = new Telerik.WinControls.UI.RadButtonElement(); |
79 |
this.radRibbonBarGroup1 = new Telerik.WinControls.UI.RadRibbonBarGroup(); |
|
80 |
this.radButtonElementExcelImport = new Telerik.WinControls.UI.RadButtonElement(); |
|
81 |
this.radButtonElementExcelExport = new Telerik.WinControls.UI.RadButtonElement(); |
|
82 | 88 |
((System.ComponentModel.ISupportInitialize)(this.ID2ManagerRadRibbonBar)).BeginInit(); |
83 | 89 |
((System.ComponentModel.ISupportInitialize)(this.radSplitContainerWrap)).BeginInit(); |
84 | 90 |
this.radSplitContainerWrap.SuspendLayout(); |
... | ... | |
111 | 117 |
this.ribbonTabProjMgt.Text = "Project Manager"; |
112 | 118 |
this.ribbonTabProjMgt.UseMnemonic = false; |
113 | 119 |
// |
120 |
// radRibbonBarGroup1 |
|
121 |
// |
|
122 |
this.radRibbonBarGroup1.Items.AddRange(new Telerik.WinControls.RadItem[] { |
|
123 |
this.radButtonElementExcelImport, |
|
124 |
this.radButtonElementExcelExport}); |
|
125 |
this.radRibbonBarGroup1.Name = "radRibbonBarGroup1"; |
|
126 |
this.radRibbonBarGroup1.Text = "Excel"; |
|
127 |
// |
|
128 |
// radButtonElementExcelImport |
|
129 |
// |
|
130 |
this.radButtonElementExcelImport.Image = global::ID2.Manager.Properties.Resources.Import; |
|
131 |
this.radButtonElementExcelImport.Name = "radButtonElementExcelImport"; |
|
132 |
this.radButtonElementExcelImport.Text = "Import"; |
|
133 |
this.radButtonElementExcelImport.TextAlignment = System.Drawing.ContentAlignment.BottomCenter; |
|
134 |
this.radButtonElementExcelImport.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
135 |
// |
|
136 |
// radButtonElementExcelExport |
|
137 |
// |
|
138 |
this.radButtonElementExcelExport.Image = global::ID2.Manager.Properties.Resources.Export; |
|
139 |
this.radButtonElementExcelExport.Name = "radButtonElementExcelExport"; |
|
140 |
this.radButtonElementExcelExport.Text = "Export"; |
|
141 |
this.radButtonElementExcelExport.TextAlignment = System.Drawing.ContentAlignment.BottomCenter; |
|
142 |
this.radButtonElementExcelExport.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
143 |
// |
|
114 | 144 |
// radSplitContainerWrap |
115 | 145 |
// |
116 | 146 |
this.radSplitContainerWrap.Controls.Add(this.splitPanelLeft); |
... | ... | |
167 | 197 |
// |
168 | 198 |
// |
169 | 199 |
// |
200 |
this.radGridViewDocuments.MasterTemplate.AllowColumnHeaderContextMenu = false; |
|
201 |
this.radGridViewDocuments.MasterTemplate.AllowDeleteRow = false; |
|
170 | 202 |
this.radGridViewDocuments.MasterTemplate.AllowSearchRow = true; |
171 | 203 |
this.radGridViewDocuments.MasterTemplate.AutoGenerateColumns = false; |
172 |
gridViewTextBoxColumn1.FieldName = "DocumentNo"; |
|
173 |
gridViewTextBoxColumn1.HeaderText = "이름"; |
|
174 |
gridViewTextBoxColumn1.Name = "DocumentNo"; |
|
175 |
gridViewTextBoxColumn1.Width = 44; |
|
176 |
gridViewTextBoxColumn2.FieldName = "PersonInCharge"; |
|
177 |
gridViewTextBoxColumn2.HeaderText = "담당자"; |
|
178 |
gridViewTextBoxColumn2.Name = "PersonInCharge"; |
|
179 |
gridViewTextBoxColumn2.Width = 55; |
|
204 |
this.radGridViewDocuments.MasterTemplate.ChildViewTabsPosition = Telerik.WinControls.UI.TabPositions.Left; |
|
205 |
gridViewCommandColumn1.HeaderText = "AutoCAD"; |
|
206 |
gridViewCommandColumn1.Name = "AutoCADLink"; |
|
207 |
gridViewCommandColumn1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
208 |
gridViewCommandColumn1.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
209 |
gridViewCommandColumn1.Width = 70; |
|
210 |
gridViewCommandColumn2.HeaderText = "PDF"; |
|
211 |
gridViewCommandColumn2.ImageLayout = System.Windows.Forms.ImageLayout.Center; |
|
212 |
gridViewCommandColumn2.MaxWidth = 50; |
|
213 |
gridViewCommandColumn2.MinWidth = 18; |
|
214 |
gridViewCommandColumn2.Name = "PDFLink"; |
|
215 |
gridViewCommandColumn2.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
216 |
gridViewCommandColumn2.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
217 |
gridViewCommandColumn3.HeaderText = "Markus"; |
|
218 |
gridViewCommandColumn3.Name = "MarkupLink"; |
|
219 |
gridViewCommandColumn3.Width = 70; |
|
220 |
gridViewCommandColumn4.HeaderText = "AVEVA"; |
|
221 |
gridViewCommandColumn4.Name = "AVEVALink"; |
|
222 |
gridViewCommandColumn4.Width = 70; |
|
223 |
gridViewTextBoxColumn1.FieldName = "Place"; |
|
224 |
gridViewTextBoxColumn1.HeaderText = "위치"; |
|
225 |
gridViewTextBoxColumn1.Multiline = true; |
|
226 |
gridViewTextBoxColumn1.Name = "Place"; |
|
227 |
gridViewTextBoxColumn1.Width = 150; |
|
228 |
gridViewTextBoxColumn2.FieldName = "DocumentNo"; |
|
229 |
gridViewTextBoxColumn2.HeaderText = "이름"; |
|
230 |
gridViewTextBoxColumn2.Name = "DocumentNo"; |
|
231 |
gridViewTextBoxColumn2.Width = 150; |
|
232 |
gridViewTextBoxColumn3.FieldName = "PersonInCharge"; |
|
233 |
gridViewTextBoxColumn3.HeaderText = "담당자"; |
|
234 |
gridViewTextBoxColumn3.Name = "PersonInCharge"; |
|
235 |
gridViewTextBoxColumn3.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
236 |
gridViewTextBoxColumn3.Width = 70; |
|
180 | 237 |
gridViewComboBoxColumn1.FieldName = "JobLevel"; |
181 | 238 |
gridViewComboBoxColumn1.HeaderText = "난이도"; |
182 | 239 |
gridViewComboBoxColumn1.Name = "JobLevel"; |
183 |
gridViewComboBoxColumn1.Width = 55; |
|
184 |
gridViewComboBoxColumn2.FieldName = "Typical"; |
|
240 |
gridViewComboBoxColumn1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
241 |
gridViewComboBoxColumn1.Width = 60; |
|
242 |
gridViewComboBoxColumn2.FieldName = "IsTypical"; |
|
185 | 243 |
gridViewComboBoxColumn2.HeaderText = "Typical"; |
186 |
gridViewComboBoxColumn2.Name = "Typical"; |
|
187 |
gridViewComboBoxColumn2.Width = 56; |
|
188 |
gridViewTextBoxColumn3.FieldName = "RevisonNo"; |
|
189 |
gridViewTextBoxColumn3.HeaderText = "Rev."; |
|
190 |
gridViewTextBoxColumn3.Name = "RevisonNo"; |
|
191 |
gridViewTextBoxColumn3.Width = 42; |
|
244 |
gridViewComboBoxColumn2.Name = "IsTypical"; |
|
245 |
gridViewComboBoxColumn2.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
246 |
gridViewComboBoxColumn2.Width = 60; |
|
247 |
gridViewTextBoxColumn4.FieldName = "RevisonNo"; |
|
248 |
gridViewTextBoxColumn4.HeaderText = "Rev."; |
|
249 |
gridViewTextBoxColumn4.Name = "RevisonNo"; |
|
250 |
gridViewTextBoxColumn4.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
192 | 251 |
gridViewComboBoxColumn3.FieldName = "ToIsDiscussion"; |
193 | 252 |
gridViewComboBoxColumn3.HeaderText = "협의사항"; |
194 | 253 |
gridViewComboBoxColumn3.Name = "ToIsDiscussion"; |
195 |
gridViewComboBoxColumn3.Width = 66; |
|
196 |
gridViewTextBoxColumn4.FieldName = "ToRemarks"; |
|
197 |
gridViewTextBoxColumn4.HeaderText = "도프텍 Brief"; |
|
198 |
gridViewTextBoxColumn4.Multiline = true; |
|
199 |
gridViewTextBoxColumn4.Name = "ToRemarks"; |
|
200 |
gridViewTextBoxColumn4.Width = 81; |
|
201 |
gridViewTextBoxColumn5.FieldName = "ToModifier"; |
|
202 |
gridViewTextBoxColumn5.HeaderText = "도프텍 작성자"; |
|
203 |
gridViewTextBoxColumn5.Name = "ToModifier"; |
|
204 |
gridViewTextBoxColumn5.Width = 92; |
|
205 |
gridViewCommandColumn1.FieldName = "ToCapturePath"; |
|
206 |
gridViewCommandColumn1.HeaderText = "도프텍 캡쳐"; |
|
207 |
gridViewCommandColumn1.Name = "ToCapturePath"; |
|
208 |
gridViewCommandColumn1.Width = 81; |
|
254 |
gridViewComboBoxColumn3.Width = 80; |
|
255 |
gridViewTextBoxColumn5.FieldName = "ToRemarks"; |
|
256 |
gridViewTextBoxColumn5.HeaderText = "Brief"; |
|
257 |
gridViewTextBoxColumn5.Multiline = true; |
|
258 |
gridViewTextBoxColumn5.Name = "ToRemarks"; |
|
259 |
gridViewTextBoxColumn5.Width = 150; |
|
260 |
gridViewTextBoxColumn6.FieldName = "ToModifier"; |
|
261 |
gridViewTextBoxColumn6.HeaderText = "작성자"; |
|
262 |
gridViewTextBoxColumn6.Name = "ToModifier"; |
|
263 |
gridViewTextBoxColumn6.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
264 |
gridViewTextBoxColumn6.Width = 70; |
|
265 |
gridViewCommandColumn5.FieldName = "ToCapturePath"; |
|
266 |
gridViewCommandColumn5.HeaderText = "캡쳐"; |
|
267 |
gridViewCommandColumn5.Name = "ToCapturePath"; |
|
268 |
gridViewCommandColumn5.Width = 70; |
|
209 | 269 |
gridViewComboBoxColumn4.FieldName = "ToIsMarkup"; |
210 |
gridViewComboBoxColumn4.HeaderText = "도프텍 마크업여부";
|
|
270 |
gridViewComboBoxColumn4.HeaderText = "마크업여부"; |
|
211 | 271 |
gridViewComboBoxColumn4.Name = "ToIsMarkup"; |
212 |
gridViewComboBoxColumn4.Width = 115; |
|
272 |
gridViewComboBoxColumn4.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
273 |
gridViewComboBoxColumn4.Width = 80; |
|
213 | 274 |
gridViewComboBoxColumn5.FieldName = "FrReviewStatus"; |
214 |
gridViewComboBoxColumn5.HeaderText = "삼성 의견 Status";
|
|
275 |
gridViewComboBoxColumn5.HeaderText = "의견Status";
|
|
215 | 276 |
gridViewComboBoxColumn5.Name = "FrReviewStatus"; |
216 |
gridViewComboBoxColumn5.Width = 103; |
|
217 |
gridViewTextBoxColumn6.FieldName = "FrRemarks"; |
|
218 |
gridViewTextBoxColumn6.HeaderText = "삼성 Brief"; |
|
219 |
gridViewTextBoxColumn6.Name = "FrRemarks"; |
|
220 |
gridViewTextBoxColumn6.Width = 70; |
|
221 |
gridViewTextBoxColumn7.FieldName = "FrModifier"; |
|
222 |
gridViewTextBoxColumn7.HeaderText = "삼성 검토자"; |
|
223 |
gridViewTextBoxColumn7.Name = "FrModifier"; |
|
224 |
gridViewTextBoxColumn7.Width = 81; |
|
225 |
gridViewCommandColumn2.FieldName = "FrCapturePath"; |
|
226 |
gridViewCommandColumn2.HeaderText = "삼성 캡쳐"; |
|
227 |
gridViewCommandColumn2.Name = "FrCapturePath"; |
|
228 |
gridViewCommandColumn2.Width = 70; |
|
277 |
gridViewComboBoxColumn5.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
278 |
gridViewComboBoxColumn5.Width = 80; |
|
279 |
gridViewTextBoxColumn7.FieldName = "FrRemarks"; |
|
280 |
gridViewTextBoxColumn7.HeaderText = "Brief"; |
|
281 |
gridViewTextBoxColumn7.Name = "FrRemarks"; |
|
282 |
gridViewTextBoxColumn7.Width = 150; |
|
283 |
gridViewTextBoxColumn8.FieldName = "FrModifier"; |
|
284 |
gridViewTextBoxColumn8.HeaderText = "검토자"; |
|
285 |
gridViewTextBoxColumn8.Name = "FrModifier"; |
|
286 |
gridViewTextBoxColumn8.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
287 |
gridViewTextBoxColumn8.Width = 70; |
|
288 |
gridViewCommandColumn6.FieldName = "FrCapturePath"; |
|
289 |
gridViewCommandColumn6.HeaderText = "캡쳐"; |
|
290 |
gridViewCommandColumn6.Name = "FrCapturePath"; |
|
291 |
gridViewCommandColumn6.Width = 70; |
|
229 | 292 |
gridViewComboBoxColumn6.FieldName = "FrIsMarkup"; |
230 |
gridViewComboBoxColumn6.HeaderText = "삼성 마크업여부";
|
|
293 |
gridViewComboBoxColumn6.HeaderText = "마크업여부"; |
|
231 | 294 |
gridViewComboBoxColumn6.Name = "FrIsMarkup"; |
232 |
gridViewComboBoxColumn6.Width = 104; |
|
295 |
gridViewComboBoxColumn6.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
296 |
gridViewComboBoxColumn6.Width = 80; |
|
233 | 297 |
gridViewComboBoxColumn7.FieldName = "IsID2Work"; |
234 | 298 |
gridViewComboBoxColumn7.HeaderText = "ID2 작업가능"; |
235 | 299 |
gridViewComboBoxColumn7.Name = "IsID2Work"; |
236 |
gridViewComboBoxColumn7.Width = 87; |
|
237 |
gridViewCommandColumn3.FieldName = "ID2Connection"; |
|
238 |
gridViewCommandColumn3.HeaderText = "ID2 연결"; |
|
239 |
gridViewCommandColumn3.Name = "ID2Connection"; |
|
300 |
gridViewComboBoxColumn7.Width = 90; |
|
301 |
gridViewCommandColumn7.FieldName = "ID2Connection"; |
|
302 |
gridViewCommandColumn7.HeaderText = "연결"; |
|
303 |
gridViewCommandColumn7.Name = "ID2Connection"; |
|
304 |
gridViewCommandColumn7.Width = 70; |
|
240 | 305 |
gridViewDateTimeColumn1.FieldName = "ID2StartDate"; |
241 | 306 |
gridViewDateTimeColumn1.Format = System.Windows.Forms.DateTimePickerFormat.Custom; |
242 | 307 |
gridViewDateTimeColumn1.FormatString = "{0: yyyy/MM/dd hh:mm:ss}"; |
243 |
gridViewDateTimeColumn1.HeaderText = "ID2 시작일";
|
|
308 |
gridViewDateTimeColumn1.HeaderText = "시작일"; |
|
244 | 309 |
gridViewDateTimeColumn1.Name = "ID2StartDate"; |
245 |
gridViewTextBoxColumn8.FieldName = "ID2JobTime"; |
|
246 |
gridViewTextBoxColumn8.HeaderText = "ID2 작업시간"; |
|
247 |
gridViewTextBoxColumn8.Name = "ID2JobTime"; |
|
310 |
gridViewDateTimeColumn1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
311 |
gridViewDateTimeColumn1.Width = 80; |
|
312 |
gridViewDateTimeColumn2.FieldName = "ID2EndDate"; |
|
313 |
gridViewDateTimeColumn2.Format = System.Windows.Forms.DateTimePickerFormat.Custom; |
|
314 |
gridViewDateTimeColumn2.FormatString = "{0: yyyy/MM/dd hh:mm:ss}"; |
|
315 |
gridViewDateTimeColumn2.HeaderText = "완료일"; |
|
316 |
gridViewDateTimeColumn2.Name = "ID2EndDate"; |
|
317 |
gridViewDateTimeColumn2.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
318 |
gridViewDateTimeColumn2.Width = 80; |
|
319 |
gridViewTextBoxColumn9.FieldName = "ID2JobTime"; |
|
320 |
gridViewTextBoxColumn9.HeaderText = "작업시간"; |
|
321 |
gridViewTextBoxColumn9.Name = "ID2JobTime"; |
|
322 |
gridViewTextBoxColumn9.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
323 |
gridViewTextBoxColumn9.Width = 80; |
|
248 | 324 |
gridViewComboBoxColumn8.FieldName = "ID2Status"; |
249 |
gridViewComboBoxColumn8.HeaderText = "ID2 Status";
|
|
325 |
gridViewComboBoxColumn8.HeaderText = "Status"; |
|
250 | 326 |
gridViewComboBoxColumn8.Name = "ID2Status"; |
251 |
gridViewTextBoxColumn9.FieldName = "ID2Issues"; |
|
252 |
gridViewTextBoxColumn9.HeaderText = "ID2 이슈사항"; |
|
253 |
gridViewTextBoxColumn9.Name = "ID2Issues"; |
|
254 |
gridViewCommandColumn4.FieldName = "AVEVAConnection"; |
|
255 |
gridViewCommandColumn4.HeaderText = "AVEVA 연"; |
|
256 |
gridViewCommandColumn4.Name = "AVEVAConnection"; |
|
257 |
gridViewDateTimeColumn2.FieldName = "AVEVAConvertDate"; |
|
258 |
gridViewDateTimeColumn2.Format = System.Windows.Forms.DateTimePickerFormat.Custom; |
|
259 |
gridViewDateTimeColumn2.FormatString = "{0: yyyy/MM/dd}"; |
|
260 |
gridViewDateTimeColumn2.HeaderText = "AVEVA 변환일"; |
|
261 |
gridViewDateTimeColumn2.Name = "AVEVAConvertDate"; |
|
262 |
gridViewDateTimeColumn3.FieldName = "AVEVAReviewDate"; |
|
327 |
gridViewComboBoxColumn8.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
328 |
gridViewComboBoxColumn8.Width = 70; |
|
329 |
gridViewTextBoxColumn10.FieldName = "ID2Issues"; |
|
330 |
gridViewTextBoxColumn10.HeaderText = "이슈사항"; |
|
331 |
gridViewTextBoxColumn10.Name = "ID2Issues"; |
|
332 |
gridViewTextBoxColumn10.Width = 150; |
|
333 |
gridViewCommandColumn8.FieldName = "AVEVAConnection"; |
|
334 |
gridViewCommandColumn8.HeaderText = "연결"; |
|
335 |
gridViewCommandColumn8.Name = "AVEVAConnection"; |
|
336 |
gridViewCommandColumn8.Width = 70; |
|
337 |
gridViewDateTimeColumn3.FieldName = "AVEVAConvertDate"; |
|
263 | 338 |
gridViewDateTimeColumn3.Format = System.Windows.Forms.DateTimePickerFormat.Custom; |
264 | 339 |
gridViewDateTimeColumn3.FormatString = "{0: yyyy/MM/dd}"; |
265 |
gridViewDateTimeColumn3.HeaderText = "AVEVA 검토일"; |
|
266 |
gridViewDateTimeColumn3.Name = "AVEVAReviewDate"; |
|
340 |
gridViewDateTimeColumn3.HeaderText = "변환일"; |
|
341 |
gridViewDateTimeColumn3.Name = "AVEVAConvertDate"; |
|
342 |
gridViewDateTimeColumn3.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
343 |
gridViewDateTimeColumn3.Width = 70; |
|
344 |
gridViewDateTimeColumn4.FieldName = "AVEVAReviewDate"; |
|
345 |
gridViewDateTimeColumn4.Format = System.Windows.Forms.DateTimePickerFormat.Custom; |
|
346 |
gridViewDateTimeColumn4.FormatString = "{0: yyyy/MM/dd}"; |
|
347 |
gridViewDateTimeColumn4.HeaderText = "검토일"; |
|
348 |
gridViewDateTimeColumn4.Name = "AVEVAReviewDate"; |
|
349 |
gridViewDateTimeColumn4.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
350 |
gridViewDateTimeColumn4.Width = 70; |
|
267 | 351 |
gridViewComboBoxColumn9.FieldName = "AVEVAStatus"; |
268 |
gridViewComboBoxColumn9.HeaderText = "AVEVA Status";
|
|
352 |
gridViewComboBoxColumn9.HeaderText = "Status"; |
|
269 | 353 |
gridViewComboBoxColumn9.Name = "AVEVAStatus"; |
270 |
gridViewTextBoxColumn10.FieldName = "AVEVAIssues"; |
|
271 |
gridViewTextBoxColumn10.HeaderText = "AVEVA 이슈사항"; |
|
272 |
gridViewTextBoxColumn10.Name = "AVEVAIssues"; |
|
273 |
gridViewCommandColumn5.FieldName = "ReviewFileName"; |
|
274 |
gridViewCommandColumn5.HeaderText = "Validation PDF"; |
|
275 |
gridViewCommandColumn5.Name = "ReviewFileName"; |
|
276 |
gridViewCommandColumn6.HeaderText = "Validation 시스템"; |
|
277 |
gridViewCommandColumn6.Name = "columnSystem"; |
|
278 |
gridViewTextBoxColumn11.FieldName = "ProdReviewer"; |
|
279 |
gridViewTextBoxColumn11.HeaderText = "Validation 도프텍 검토"; |
|
280 |
gridViewTextBoxColumn11.Name = "ProdReviewer"; |
|
354 |
gridViewComboBoxColumn9.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
355 |
gridViewComboBoxColumn9.Width = 70; |
|
356 |
gridViewTextBoxColumn11.FieldName = "AVEVAIssues"; |
|
357 |
gridViewTextBoxColumn11.HeaderText = "이슈사항"; |
|
358 |
gridViewTextBoxColumn11.Name = "AVEVAIssues"; |
|
359 |
gridViewTextBoxColumn11.Width = 150; |
|
360 |
gridViewCommandColumn9.FieldName = "ReviewFileName"; |
|
361 |
gridViewCommandColumn9.HeaderText = "PDF"; |
|
362 |
gridViewCommandColumn9.Name = "ReviewFileName"; |
|
363 |
gridViewCommandColumn9.Width = 70; |
|
364 |
gridViewCommandColumn10.HeaderText = "시스템"; |
|
365 |
gridViewCommandColumn10.Name = "SystemLink"; |
|
366 |
gridViewCommandColumn10.Width = 70; |
|
367 |
gridViewTextBoxColumn12.FieldName = "ProdReviewer"; |
|
368 |
gridViewTextBoxColumn12.HeaderText = "검토자"; |
|
369 |
gridViewTextBoxColumn12.Name = "ProdReviewer"; |
|
370 |
gridViewTextBoxColumn12.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
371 |
gridViewTextBoxColumn12.Width = 70; |
|
281 | 372 |
gridViewComboBoxColumn10.FieldName = "ProdIsResult"; |
282 |
gridViewComboBoxColumn10.HeaderText = "Validation 도프텍 결과";
|
|
373 |
gridViewComboBoxColumn10.HeaderText = "결과"; |
|
283 | 374 |
gridViewComboBoxColumn10.Name = "ProdIsResult"; |
284 |
gridViewTextBoxColumn12.FieldName = "ProdRemarks"; |
|
285 |
gridViewTextBoxColumn12.HeaderText = "Validation 도프텍 비고"; |
|
286 |
gridViewTextBoxColumn12.Name = "ProdRemarks"; |
|
287 |
gridViewTextBoxColumn13.FieldName = "ClientReviewer"; |
|
288 |
gridViewTextBoxColumn13.HeaderText = "Validation 삼성 검토자"; |
|
289 |
gridViewTextBoxColumn13.Name = "ClientReviewer"; |
|
375 |
gridViewComboBoxColumn10.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
376 |
gridViewComboBoxColumn10.Width = 70; |
|
377 |
gridViewTextBoxColumn13.FieldName = "ProdRemarks"; |
|
378 |
gridViewTextBoxColumn13.HeaderText = "비고"; |
|
379 |
gridViewTextBoxColumn13.Name = "ProdRemarks"; |
|
380 |
gridViewTextBoxColumn13.Width = 150; |
|
381 |
gridViewTextBoxColumn14.FieldName = "ClientReviewer"; |
|
382 |
gridViewTextBoxColumn14.HeaderText = "검토자"; |
|
383 |
gridViewTextBoxColumn14.Name = "ClientReviewer"; |
|
384 |
gridViewTextBoxColumn14.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
385 |
gridViewTextBoxColumn14.Width = 70; |
|
290 | 386 |
gridViewComboBoxColumn11.FieldName = "ClientIsResult"; |
291 |
gridViewComboBoxColumn11.HeaderText = "Validation 삼성 결";
|
|
387 |
gridViewComboBoxColumn11.HeaderText = "결과";
|
|
292 | 388 |
gridViewComboBoxColumn11.Name = "ClientIsResult"; |
293 |
gridViewTextBoxColumn14.FieldName = "ClientRemarks"; |
|
294 |
gridViewTextBoxColumn14.HeaderText = "Validation 삼성 비고"; |
|
295 |
gridViewTextBoxColumn14.Name = "ClientRemarks"; |
|
389 |
gridViewComboBoxColumn11.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
390 |
gridViewComboBoxColumn11.Width = 70; |
|
391 |
gridViewTextBoxColumn15.FieldName = "ClientRemarks"; |
|
392 |
gridViewTextBoxColumn15.HeaderText = "비고"; |
|
393 |
gridViewTextBoxColumn15.Name = "ClientRemarks"; |
|
394 |
gridViewTextBoxColumn15.Width = 150; |
|
296 | 395 |
gridViewComboBoxColumn12.FieldName = "DTIsGateWay"; |
297 |
gridViewComboBoxColumn12.HeaderText = "DIgital Twin GateWay";
|
|
396 |
gridViewComboBoxColumn12.HeaderText = "GateWay"; |
|
298 | 397 |
gridViewComboBoxColumn12.Name = "DTIsGateWay"; |
398 |
gridViewComboBoxColumn12.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
399 |
gridViewComboBoxColumn12.Width = 80; |
|
299 | 400 |
gridViewComboBoxColumn13.FieldName = "DTIsImport"; |
300 |
gridViewComboBoxColumn13.HeaderText = "DIgital Twin Import 성공여부";
|
|
401 |
gridViewComboBoxColumn13.HeaderText = "Import 성공여부"; |
|
301 | 402 |
gridViewComboBoxColumn13.Name = "DTIsImport"; |
403 |
gridViewComboBoxColumn13.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
404 |
gridViewComboBoxColumn13.Width = 80; |
|
302 | 405 |
gridViewComboBoxColumn14.FieldName = "DTIsRegSystem"; |
303 |
gridViewComboBoxColumn14.HeaderText = "DIgital Twin 시스템등록";
|
|
406 |
gridViewComboBoxColumn14.HeaderText = "시스템등록"; |
|
304 | 407 |
gridViewComboBoxColumn14.Name = "DTIsRegSystem"; |
305 |
gridViewTextBoxColumn15.FieldName = "DTRemarks"; |
|
306 |
gridViewTextBoxColumn15.HeaderText = "DIgital Twin 비고"; |
|
307 |
gridViewTextBoxColumn15.Name = "DTRemarks"; |
|
408 |
gridViewComboBoxColumn14.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; |
|
409 |
gridViewComboBoxColumn14.Width = 80; |
|
410 |
gridViewTextBoxColumn16.FieldName = "DTRemarks"; |
|
411 |
gridViewTextBoxColumn16.HeaderText = "비고"; |
|
412 |
gridViewTextBoxColumn16.Name = "DTRemarks"; |
|
413 |
gridViewTextBoxColumn16.Width = 150; |
|
308 | 414 |
this.radGridViewDocuments.MasterTemplate.Columns.AddRange(new Telerik.WinControls.UI.GridViewDataColumn[] { |
415 |
gridViewCommandColumn1, |
|
416 |
gridViewCommandColumn2, |
|
417 |
gridViewCommandColumn3, |
|
418 |
gridViewCommandColumn4, |
|
309 | 419 |
gridViewTextBoxColumn1, |
310 | 420 |
gridViewTextBoxColumn2, |
421 |
gridViewTextBoxColumn3, |
|
311 | 422 |
gridViewComboBoxColumn1, |
312 | 423 |
gridViewComboBoxColumn2, |
313 |
gridViewTextBoxColumn3, |
|
314 |
gridViewComboBoxColumn3, |
|
315 | 424 |
gridViewTextBoxColumn4, |
425 |
gridViewComboBoxColumn3, |
|
316 | 426 |
gridViewTextBoxColumn5, |
317 |
gridViewCommandColumn1, |
|
427 |
gridViewTextBoxColumn6, |
|
428 |
gridViewCommandColumn5, |
|
318 | 429 |
gridViewComboBoxColumn4, |
319 | 430 |
gridViewComboBoxColumn5, |
320 |
gridViewTextBoxColumn6, |
|
321 | 431 |
gridViewTextBoxColumn7, |
322 |
gridViewCommandColumn2, |
|
432 |
gridViewTextBoxColumn8, |
|
433 |
gridViewCommandColumn6, |
|
323 | 434 |
gridViewComboBoxColumn6, |
324 | 435 |
gridViewComboBoxColumn7, |
325 |
gridViewCommandColumn3,
|
|
436 |
gridViewCommandColumn7,
|
|
326 | 437 |
gridViewDateTimeColumn1, |
327 |
gridViewTextBoxColumn8, |
|
328 |
gridViewComboBoxColumn8, |
|
329 |
gridViewTextBoxColumn9, |
|
330 |
gridViewCommandColumn4, |
|
331 | 438 |
gridViewDateTimeColumn2, |
439 |
gridViewTextBoxColumn9, |
|
440 |
gridViewComboBoxColumn8, |
|
441 |
gridViewTextBoxColumn10, |
|
442 |
gridViewCommandColumn8, |
|
332 | 443 |
gridViewDateTimeColumn3, |
444 |
gridViewDateTimeColumn4, |
|
333 | 445 |
gridViewComboBoxColumn9, |
334 |
gridViewTextBoxColumn10, |
|
335 |
gridViewCommandColumn5, |
|
336 |
gridViewCommandColumn6, |
|
337 | 446 |
gridViewTextBoxColumn11, |
338 |
gridViewComboBoxColumn10, |
|
447 |
gridViewCommandColumn9, |
|
448 |
gridViewCommandColumn10, |
|
339 | 449 |
gridViewTextBoxColumn12, |
450 |
gridViewComboBoxColumn10, |
|
340 | 451 |
gridViewTextBoxColumn13, |
341 |
gridViewComboBoxColumn11, |
|
342 | 452 |
gridViewTextBoxColumn14, |
453 |
gridViewComboBoxColumn11, |
|
454 |
gridViewTextBoxColumn15, |
|
343 | 455 |
gridViewComboBoxColumn12, |
344 | 456 |
gridViewComboBoxColumn13, |
345 | 457 |
gridViewComboBoxColumn14, |
346 |
gridViewTextBoxColumn15});
|
|
458 |
gridViewTextBoxColumn16});
|
|
347 | 459 |
this.radGridViewDocuments.MasterTemplate.EnableAlternatingRowColor = true; |
348 | 460 |
this.radGridViewDocuments.MasterTemplate.EnableFiltering = true; |
349 | 461 |
this.radGridViewDocuments.MasterTemplate.ShowFilteringRow = false; |
... | ... | |
377 | 489 |
this.radButtonElementImportPCWBS.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
378 | 490 |
this.radButtonElementImportPCWBS.UseCompatibleTextRendering = false; |
379 | 491 |
// |
380 |
// radRibbonBarGroup1 |
|
381 |
// |
|
382 |
this.radRibbonBarGroup1.Items.AddRange(new Telerik.WinControls.RadItem[] { |
|
383 |
this.radButtonElementExcelImport, |
|
384 |
this.radButtonElementExcelExport}); |
|
385 |
this.radRibbonBarGroup1.Name = "radRibbonBarGroup1"; |
|
386 |
this.radRibbonBarGroup1.Text = "Excel"; |
|
387 |
// |
|
388 |
// radButtonElementExcelImport |
|
389 |
// |
|
390 |
this.radButtonElementExcelImport.Image = global::ID2.Manager.Properties.Resources.Import; |
|
391 |
this.radButtonElementExcelImport.Name = "radButtonElementExcelImport"; |
|
392 |
this.radButtonElementExcelImport.Text = "Import"; |
|
393 |
this.radButtonElementExcelImport.TextAlignment = System.Drawing.ContentAlignment.BottomCenter; |
|
394 |
this.radButtonElementExcelImport.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
395 |
// |
|
396 |
// radButtonElementExcelExport |
|
397 |
// |
|
398 |
this.radButtonElementExcelExport.Image = global::ID2.Manager.Properties.Resources.Export; |
|
399 |
this.radButtonElementExcelExport.Name = "radButtonElementExcelExport"; |
|
400 |
this.radButtonElementExcelExport.Text = "Export"; |
|
401 |
this.radButtonElementExcelExport.TextAlignment = System.Drawing.ContentAlignment.BottomCenter; |
|
402 |
this.radButtonElementExcelExport.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText; |
|
403 |
// |
|
404 | 492 |
// Main |
405 | 493 |
// |
406 | 494 |
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); |
ID2.Manager/ID2.Manager/Main.cs | ||
---|---|---|
8 | 8 |
using System.Threading.Tasks; |
9 | 9 |
using System.Windows.Forms; |
10 | 10 |
|
11 |
using System.IO; |
|
12 |
|
|
11 | 13 |
using ID2.Manager.Common; |
12 | 14 |
using ID2.Manager.Data.Models; |
13 | 15 |
using ID2.Manager.Controller.Controllers; |
... | ... | |
20 | 22 |
{ |
21 | 23 |
public partial class Main : RadRibbonForm |
22 | 24 |
{ |
25 |
readonly Informations informations = Informations.Instance; |
|
26 |
|
|
23 | 27 |
public Main() |
24 | 28 |
{ |
25 | 29 |
InitializeComponent(); |
26 | 30 |
|
27 |
//this.InitColumnGroupsViewDefinition(this.radGridViewDocuments);
|
|
31 |
SpreadsheetInfo.SetLicense(Properties.Settings.Default.GemBoxLicense);
|
|
28 | 32 |
|
29 | 33 |
this.Load += Main_Load; |
30 | 34 |
this.radButtonElementExcelImport.Click += RadButtonElementExcelImport_Click; |
31 | 35 |
this.radButtonElementExcelExport.Click += RadButtonElementExcelExport_Click; |
36 |
this.radGridViewDocuments.ViewCellFormatting += RadGridViewDocuments_ViewCellFormatting; |
|
37 |
this.radGridViewDocuments.CellBeginEdit += RadGridViewDocuments_CellBeginEdit; |
|
38 |
this.radGridViewDocuments.CommandCellClick += RadGridViewDocuments_CommandCellClick; |
|
39 |
|
|
40 |
this.InitColumnGroupsViewDefinition(this.radGridViewDocuments); |
|
41 |
} |
|
42 |
|
|
43 |
private void RadGridViewDocuments_CommandCellClick(object sender, GridViewCellEventArgs e) |
|
44 |
{ |
|
45 |
switch (e.Column.Name) |
|
46 |
{ |
|
47 |
case "AutoCADLink": |
|
48 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
49 |
break; |
|
50 |
case "PDFLink": |
|
51 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
52 |
break; |
|
53 |
case "MarkupLink": |
|
54 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
55 |
break; |
|
56 |
case "AVEVALink": |
|
57 |
case "AVEVAConnection": |
|
58 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
59 |
break; |
|
60 |
case "ReviewFileName"://일단주석 |
|
61 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
62 |
break; |
|
63 |
case "SystemLink": |
|
64 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
65 |
break; |
|
66 |
case "ToCapturePath": |
|
67 |
case "FrCapturePath": |
|
68 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
69 |
break; |
|
70 |
case "ID2Connection": |
|
71 |
MessageBox.Show($"{e.Column.Name} 실행"); |
|
72 |
break; |
|
73 |
} |
|
32 | 74 |
} |
33 | 75 |
|
76 |
private void RadGridViewDocuments_CellBeginEdit(object sender, GridViewCellCancelEventArgs e) |
|
77 |
{ |
|
78 |
if (e.ActiveEditor is RadDropDownListEditor) |
|
79 |
{ |
|
80 |
switch (e.Column.Name) |
|
81 |
{ |
|
82 |
case "JobLevel": |
|
83 |
GridViewComboBoxColumn ColJobLevel = this.radGridViewDocuments.Columns[e.Column.Name] as GridViewComboBoxColumn; |
|
84 |
ColJobLevel.DataSource = informations.JobLevel; |
|
85 |
break; |
|
86 |
case "IsTypical": |
|
87 |
case "ToIsDiscussion": |
|
88 |
case "ToIsMarkup": |
|
89 |
case "FrIsMarkup": |
|
90 |
case "IsID2Work": |
|
91 |
case "DTIsGateWay": |
|
92 |
case "DTIsImport": |
|
93 |
case "DTIsRegSystem": |
|
94 |
GridViewComboBoxColumn ColYesNo = this.radGridViewDocuments.Columns[e.Column.Name] as GridViewComboBoxColumn; |
|
95 |
ColYesNo.DataSource = (new string[] { string.Empty }).Union<string>(informations.IsYesNo); |
|
96 |
break; |
|
97 |
case "ID2Status": |
|
98 |
case "AVEVAStatus": |
|
99 |
GridViewComboBoxColumn ColJobStatus = this.radGridViewDocuments.Columns[e.Column.Name] as GridViewComboBoxColumn; |
|
100 |
ColJobStatus.DataSource = (new string[] { string.Empty }).Union<string>(informations.JobStatus); |
|
101 |
break; |
|
102 |
case "FrReviewStatus"://삼성의견status |
|
103 |
GridViewComboBoxColumn ColClientStatus = this.radGridViewDocuments.Columns[e.Column.Name] as GridViewComboBoxColumn; |
|
104 |
ColClientStatus.DataSource = (new string[] { string.Empty }).Union<string>(informations.ClientStatus); |
|
105 |
break; |
|
106 |
case "ProdIsResult": |
|
107 |
case "ClientIsResult": |
|
108 |
//GridViewComboBoxColumn ColResult = this.radGridViewDocuments.Columns[e.Column.Name] as GridViewComboBoxColumn; |
|
109 |
//ColResult.DataSource = informations.ValidationResult; |
|
110 |
break; |
|
111 |
} |
|
112 |
} |
|
113 |
} |
|
114 |
|
|
115 |
private void RadGridViewDocuments_ViewCellFormatting(object sender, CellFormattingEventArgs e) |
|
116 |
{ |
|
117 |
RadButtonElement GetBtnElement(RadElement elem, string colName) |
|
118 |
{ |
|
119 |
RadButtonElement btnElem = null; |
|
120 |
Bitmap bitmap = null; ; |
|
121 |
|
|
122 |
switch (colName) |
|
123 |
{ |
|
124 |
case "AutoCADLink": |
|
125 |
bitmap = new Bitmap(Properties.Resources.cad18); |
|
126 |
break; |
|
127 |
case "PDFLink": |
|
128 |
bitmap = new Bitmap(Properties.Resources.pdf18); |
|
129 |
break; |
|
130 |
case "MarkupLink": |
|
131 |
bitmap = new Bitmap(Properties.Resources.link18_green); |
|
132 |
break; |
|
133 |
case "AVEVALink": |
|
134 |
case "AVEVAConnection": |
|
135 |
bitmap = new Bitmap(Properties.Resources.link18_blue); |
|
136 |
break; |
|
137 |
case "ReviewFileName"://일단주석 |
|
138 |
bitmap = new Bitmap(Properties.Resources.pdf18); |
|
139 |
break; |
|
140 |
case "SystemLink": |
|
141 |
bitmap = new Bitmap(Properties.Resources.link18_yellow); |
|
142 |
break; |
|
143 |
case "ToCapturePath": |
|
144 |
case "FrCapturePath": |
|
145 |
bitmap = new Bitmap(Properties.Resources.files18); |
|
146 |
break; |
|
147 |
case "ID2Connection": |
|
148 |
bitmap = new Bitmap(Properties.Resources.link18_purple); |
|
149 |
break; |
|
150 |
} |
|
151 |
|
|
152 |
switch (colName) |
|
153 |
{ |
|
154 |
case "AutoCADLink": |
|
155 |
case "PDFLink": |
|
156 |
case "MarkupLink": |
|
157 |
case "AVEVALink": |
|
158 |
case "AVEVAConnection": |
|
159 |
case "ReviewFileName"://일단주석 |
|
160 |
case "SystemLink": |
|
161 |
case "ToCapturePath": |
|
162 |
case "FrCapturePath": |
|
163 |
case "ID2Connection": |
|
164 |
btnElem = (RadButtonElement)elem; |
|
165 |
btnElem.Margin = new Padding(0); |
|
166 |
btnElem.Padding = new Padding(0); |
|
167 |
btnElem.BorderElement.Opacity = 0; |
|
168 |
btnElem.Alignment = ContentAlignment.MiddleCenter; |
|
169 |
btnElem.DisplayStyle = DisplayStyle.Image; |
|
170 |
btnElem.Image = bitmap; |
|
171 |
btnElem.ImageAlignment = ContentAlignment.MiddleCenter; |
|
172 |
btnElem.MaxSize = bitmap.Size; |
|
173 |
break; |
|
174 |
} |
|
175 |
|
|
176 |
return btnElem; |
|
177 |
} |
|
178 |
|
|
179 |
if (e.CellElement is GridRowHeaderCellElement) |
|
180 |
{ |
|
181 |
e.CellElement.Text = (e.CellElement.RowIndex + 1).ToString(); |
|
182 |
} |
|
183 |
else |
|
184 |
{ |
|
185 |
var result = e.Row.DataBoundItem as Documents; |
|
186 |
if (result != null) |
|
187 |
{ |
|
188 |
switch (e.CellElement.ColumnInfo.Name) |
|
189 |
{ |
|
190 |
case "AutoCADLink": |
|
191 |
case "PDFLink": |
|
192 |
case "MarkupLink": |
|
193 |
case "AVEVALink": |
|
194 |
case "AVEVAConnection": |
|
195 |
case "ReviewFileName"://일단주석 |
|
196 |
case "SystemLink": |
|
197 |
case "ToCapturePath": |
|
198 |
case "FrCapturePath": |
|
199 |
case "ID2Connection": |
|
200 |
GetBtnElement(e.CellElement.Children[0], e.CellElement.ColumnInfo.Name); |
|
201 |
break; |
|
202 |
} |
|
203 |
} |
|
204 |
} |
|
205 |
} |
|
206 |
|
|
207 |
#region Excel |
|
34 | 208 |
private void RadButtonElementExcelImport_Click(object sender, EventArgs e) |
35 | 209 |
{ |
36 | 210 |
RadMessageBox.Show("개발중...", "Information", MessageBoxButtons.OK, RadMessageIcon.Info); |
... | ... | |
103 | 277 |
|
104 | 278 |
private void RadButtonElementExcelExport_Click(object sender, EventArgs e) |
105 | 279 |
{ |
106 |
RadMessageBox.Show("개발중...", "Information", MessageBoxButtons.OK, RadMessageIcon.Info); |
|
107 |
return; |
|
108 |
|
|
109 |
string sPrefixName = string.Empty;// informations.ActiveProject.Name; |
|
280 |
string sPrefixName = "Samsung Elec Task Management"; |
|
110 | 281 |
string extension = ".xlsx"; |
111 | 282 |
|
112 | 283 |
using (SaveFileDialog sfd = new SaveFileDialog() |
113 | 284 |
{ |
114 |
FileName = $"{sPrefixName}_ID2Manager_{DateTime.Now:yyyyMMdd}{extension}",
|
|
285 |
FileName = $"{sPrefixName}_{DateTime.Now:yyyyMMddhhmmss}{extension}",
|
|
115 | 286 |
Filter = "Excel|*.xlsx", |
116 | 287 |
Title = "Save an Excel File", |
117 | 288 |
CheckFileExists = false, |
... | ... | |
121 | 292 |
{ |
122 | 293 |
if (sfd.ShowDialog() == DialogResult.OK) |
123 | 294 |
{ |
124 |
//exFile.Save(sfd.FileName); |
|
125 |
RadMessageBox.Show("Exporting 'ID2 Document List' is complete", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Info); |
|
295 |
string fileName = $"{sPrefixName}{extension}"; |
|
296 |
string templateFolder = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "Template"); |
|
297 |
string templateFilePath = Path.Combine(templateFolder, fileName); |
|
298 |
if (!File.Exists(templateFilePath)) |
|
299 |
{ |
|
300 |
RadMessageBox.Show(this, $"There is no {fileName} in {templateFolder}", "Error", MessageBoxButtons.OK, RadMessageIcon.Error); |
|
301 |
return; |
|
302 |
} |
|
303 |
|
|
304 |
if (this.radGridViewDocuments.Rows.Count > 0) |
|
305 |
{ |
|
306 |
var templateExcelFile = ExcelFile.Load(templateFilePath); |
|
307 |
var templateWorksheets = templateExcelFile.Worksheets; |
|
308 |
var templateWorksheet = templateWorksheets[0]; |
|
309 |
|
|
310 |
int rowIndex = 9; |
|
311 |
//int colIndex = 1; |
|
312 |
|
|
313 |
foreach (var row in this.radGridViewDocuments.Rows) |
|
314 |
{ |
|
315 |
var doc = row.DataBoundItem as Documents; |
|
316 |
|
|
317 |
templateWorksheet.Cells[rowIndex, 0].Value = doc.Seq; |
|
318 |
//templateWorksheet.Cells[rowIndex, 1].Value = doc.DocumentNo; |
|
319 |
//templateWorksheet.Cells[rowIndex, 2].Value = doc.DocumentNo; |
|
320 |
//templateWorksheet.Cells[rowIndex, 3].Value = doc.DocumentNo; |
|
321 |
//templateWorksheet.Cells[rowIndex, 4].Value = doc.DocumentNo; |
|
322 |
templateWorksheet.Cells[rowIndex, 5].Value = doc.Place; |
|
323 |
templateWorksheet.Cells[rowIndex, 6].Value = doc.DocumentNo; |
|
324 |
templateWorksheet.Cells[rowIndex, 7].Value = doc.PersonInCharge; |
|
325 |
templateWorksheet.Cells[rowIndex, 8].Value = doc.JobLevel; |
|
326 |
templateWorksheet.Cells[rowIndex, 9].Value = doc.IsTypical; |
|
327 |
templateWorksheet.Cells[rowIndex, 10].Value = doc.RevisonNo; |
|
328 |
templateWorksheet.Cells[rowIndex, 11].Value = doc.ToIsDiscussion; |
|
329 |
templateWorksheet.Cells[rowIndex, 12].Value = doc.ToRemarks; |
|
330 |
templateWorksheet.Cells[rowIndex, 13].Value = doc.ToCreator; |
|
331 |
templateWorksheet.Cells[rowIndex, 14].Value = doc.ToCapturePath; |
|
332 |
templateWorksheet.Cells[rowIndex, 15].Value = doc.ToIsMarkup; |
|
333 |
templateWorksheet.Cells[rowIndex, 16].Value = doc.FrReviewStatus; |
|
334 |
templateWorksheet.Cells[rowIndex, 17].Value = doc.FrRemarks; |
|
335 |
templateWorksheet.Cells[rowIndex, 18].Value = doc.FrCreator; |
|
336 |
templateWorksheet.Cells[rowIndex, 19].Value = doc.FrCapturePath; |
|
337 |
templateWorksheet.Cells[rowIndex, 20].Value = doc.FrIsMarkup; |
|
338 |
templateWorksheet.Cells[rowIndex, 21].Value = doc.IsID2Work; |
|
339 |
templateWorksheet.Cells[rowIndex, 22].Value = doc.ID2Connection; |
|
340 |
templateWorksheet.Cells[rowIndex, 23].Value = doc.ID2StartDate; |
|
341 |
templateWorksheet.Cells[rowIndex, 24].Value = doc.ID2EndDate; |
|
342 |
templateWorksheet.Cells[rowIndex, 25].Value = doc.ID2JobTime; |
|
343 |
templateWorksheet.Cells[rowIndex, 26].Value = doc.ID2Status; |
|
344 |
templateWorksheet.Cells[rowIndex, 27].Value = doc.ID2Issues; |
|
345 |
templateWorksheet.Cells[rowIndex, 28].Value = doc.AVEVAConnection; |
|
346 |
templateWorksheet.Cells[rowIndex, 29].Value = doc.AVEVAConvertDate; |
|
347 |
templateWorksheet.Cells[rowIndex, 30].Value = doc.AVEVAReviewDate; |
|
348 |
templateWorksheet.Cells[rowIndex, 31].Value = doc.AVEVAStatus; |
|
349 |
templateWorksheet.Cells[rowIndex, 32].Value = doc.AVEVAIssues; |
|
350 |
//templateWorksheet.Cells[rowIndex, 33].Value = doc.DocumentNo; |
|
351 |
//templateWorksheet.Cells[rowIndex, 34].Value = doc.DocumentNo; |
|
352 |
templateWorksheet.Cells[rowIndex, 35].Value = doc.ProdReviewer; |
|
353 |
templateWorksheet.Cells[rowIndex, 36].Value = doc.ProdIsResult; |
|
354 |
templateWorksheet.Cells[rowIndex, 37].Value = doc.ProdRemarks; |
|
355 |
templateWorksheet.Cells[rowIndex, 38].Value = doc.ClientReviewer; |
|
356 |
templateWorksheet.Cells[rowIndex, 39].Value = doc.ClientIsResult ; |
|
357 |
templateWorksheet.Cells[rowIndex, 40].Value = doc.ClientRemarks; |
|
358 |
templateWorksheet.Cells[rowIndex, 41].Value = doc.DTIsGateWay; |
|
359 |
templateWorksheet.Cells[rowIndex, 42].Value = doc.DTIsImport; |
|
360 |
templateWorksheet.Cells[rowIndex, 43].Value = doc.DTIsRegSystem; |
|
361 |
templateWorksheet.Cells[rowIndex, 44].Value = doc.DTRemarks; |
|
362 |
rowIndex++; |
|
363 |
} |
|
364 |
|
|
365 |
templateExcelFile.Save(sfd.FileName); |
|
366 |
RadMessageBox.Show("Exporting 'ID2 Document List' is complete", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Info); |
|
367 |
} |
|
126 | 368 |
} |
127 | 369 |
} |
128 | 370 |
} |
371 |
#endregion |
|
129 | 372 |
|
130 | 373 |
private void Main_Load(object sender, EventArgs e) |
131 | 374 |
{ |
132 |
IEnumerable<Documents> docList = new DocumentController().GetAllDocuments(); |
|
375 |
this.GetDocList(); |
|
376 |
} |
|
133 | 377 |
|
378 |
public void GetDocList() |
|
379 |
{ |
|
380 |
IEnumerable<Documents> docList = new DocumentController().GetAllDocuments(); |
|
134 | 381 |
this.radGridViewDocuments.DataSource = docList; |
135 |
} |
|
382 |
|
|
383 |
BeginInvoke(new Action(() => |
|
384 |
{ |
|
385 |
this.radGridViewDocuments.DataSource = null; |
|
386 |
this.radGridViewDocuments.DataSource = docList; |
|
387 |
})); |
|
388 |
} |
|
136 | 389 |
|
137 | 390 |
#region ColumnGroup |
138 | 391 |
private void InitColumnGroupsViewDefinition(RadGridView gridView) |
139 | 392 |
{ |
140 | 393 |
ColumnGroupsViewDefinition columnGroupsView = new ColumnGroupsViewDefinition(); |
141 | 394 |
|
142 |
GridViewColumnGroupRow documentColumnList = this.GetGridViewColumnGroupRow(new List<string> |
|
143 |
{ |
|
144 |
"Seq", |
|
145 |
"UID", |
|
146 |
"DocumentNo", |
|
147 |
"PhysicalPath", |
|
148 |
"VirtualPath", |
|
149 |
"JobLevel", |
|
150 |
"Role", |
|
151 |
"Typical", |
|
152 |
"PersonInCharge", |
|
153 |
"Created" |
|
154 |
}); |
|
155 |
|
|
156 |
GridViewColumnGroup gridViewColumnGroupDocument = this.GetGridViewColumnGroup("도면", "도면", true, documentColumnList); |
|
157 |
columnGroupsView.ColumnGroups.Add(gridViewColumnGroupDocument); |
|
395 |
List<string> docLinkColNames = new List<string>() { "AutoCADLink", "PDFLink", "MarkupLink", "AVEVALink" }; |
|
396 |
List<string> docInfoColNames = new List<string>() { "Place", "DocumentNo", "PersonInCharge", "JobLevel", "IsTypical", "RevisonNo" }; |
|
397 |
List<string> rvToColNames = new List<string>() { "ToIsDiscussion", "ToRemarks", "ToModifier", "ToCapturePath", "ToIsMarkup" }; |
|
398 |
List<string> rvFrColNames = new List<string>() { "FrReviewStatus", "FrRemarks", "FrModifier", "FrCapturePath", "FrIsMarkup" }; |
|
399 |
List<string> rvEtcColNames = new List<string>() { "IsID2Work" }; |
|
400 |
List<string> wkID2ColNames = new List<string>() { "ID2Connection", "ID2StartDate", "ID2EndDate", "ID2JobTime", "ID2Status", "ID2Issues" }; |
|
401 |
List<string> wkAVEVAColNames = new List<string>() { "AVEVAConnection", "AVEVAConvertDate", "AVEVAReviewDate", "AVEVAStatus", "AVEVAIssues" }; |
|
402 |
List<string> valLinkColNames = new List<string>() { "ReviewFileName", "SystemLink" }; |
|
403 |
List<string> valProdColNames = new List<string>() { "ProdReviewer", "ProdIsResult", "ProdRemarks" }; |
|
404 |
List<string> valCntColNames = new List<string>() { "ClientReviewer", "ClientIsResult", "ClientRemarks" }; |
|
405 |
List<string> dtColNames = new List<string>() { "DTIsGateWay", "DTIsImport", "DTIsRegSystem", "DTRemarks" }; |
|
406 |
|
|
407 |
|
|
408 |
//도면 |
|
409 |
GridViewColumnGroup docColGrp = new GridViewColumnGroup("도면"); |
|
410 |
GridViewColumnGroup docLinkColGrp = new GridViewColumnGroup("파일링크"); |
|
411 |
GridViewColumnGroup docInfoColGrp = new GridViewColumnGroup("도면정보"); |
|
412 |
|
|
413 |
GridViewColumnGroupRow docLinkColGrpRow = new GridViewColumnGroupRow(); |
|
414 |
docLinkColGrpRow.ColumnNames.AddRange(docLinkColNames); |
|
415 |
|
|
416 |
GridViewColumnGroupRow docInfoColGrpRow = new GridViewColumnGroupRow(); |
|
417 |
docInfoColGrpRow.ColumnNames.AddRange(docInfoColNames); |
|
418 |
|
|
419 |
docLinkColGrp.Rows.Add(docLinkColGrpRow); |
|
420 |
docColGrp.Groups.Add(docLinkColGrp); |
|
421 |
docInfoColGrp.Rows.Add(docInfoColGrpRow); |
|
422 |
docColGrp.Groups.Add(docInfoColGrp); |
|
423 |
|
|
424 |
//검토 |
|
425 |
GridViewColumnGroup rvColGrp = new GridViewColumnGroup("검토"); |
|
426 |
GridViewColumnGroup rvToColGrp = new GridViewColumnGroup("도프텍"); |
|
427 |
GridViewColumnGroup rvFrColGrp = new GridViewColumnGroup("삼성"); |
|
428 |
GridViewColumnGroup rvEtcColGrp = new GridViewColumnGroup("기타"); |
|
429 |
|
|
430 |
GridViewColumnGroupRow rvToColGrpRow = new GridViewColumnGroupRow(); |
|
431 |
rvToColGrpRow.ColumnNames.AddRange(rvToColNames); |
|
432 |
|
|
433 |
GridViewColumnGroupRow rvFrColGrpRow = new GridViewColumnGroupRow(); |
|
434 |
rvFrColGrpRow.ColumnNames.AddRange(rvFrColNames); |
|
435 |
|
|
436 |
GridViewColumnGroupRow rvEtcColGrpRow = new GridViewColumnGroupRow(); |
|
437 |
rvEtcColGrpRow.ColumnNames.AddRange(rvEtcColNames); |
|
438 |
|
|
439 |
rvToColGrp.Rows.Add(rvToColGrpRow); |
|
440 |
rvFrColGrp.Rows.Add(rvFrColGrpRow); |
|
441 |
rvEtcColGrp.Rows.Add(rvEtcColGrpRow); |
|
442 |
|
|
443 |
|
|
444 |
rvColGrp.Groups.Add(rvToColGrp); |
|
445 |
rvColGrp.Groups.Add(rvFrColGrp); |
|
446 |
rvColGrp.Groups.Add(rvEtcColGrp); |
|
447 |
|
|
448 |
|
|
449 |
//작업 |
|
450 |
GridViewColumnGroup wkColGrp = new GridViewColumnGroup("작업"); |
|
451 |
GridViewColumnGroup wkID2ColGrp = new GridViewColumnGroup("ID2"); |
|
452 |
GridViewColumnGroup wkAVEVAColGrp = new GridViewColumnGroup("AVEVA"); |
|
453 |
|
|
454 |
GridViewColumnGroupRow wkID2ColGrpRow = new GridViewColumnGroupRow(); |
|
455 |
wkID2ColGrpRow.ColumnNames.AddRange(wkID2ColNames); |
|
456 |
|
|
457 |
GridViewColumnGroupRow wkAVEVAColGrpRow = new GridViewColumnGroupRow(); |
|
458 |
wkAVEVAColGrpRow.ColumnNames.AddRange(wkAVEVAColNames); |
|
459 |
|
|
460 |
wkID2ColGrp.Rows.Add(wkID2ColGrpRow); |
|
461 |
wkAVEVAColGrp.Rows.Add(wkAVEVAColGrpRow); |
|
462 |
|
|
463 |
wkColGrp.Groups.Add(wkID2ColGrp); |
|
464 |
wkColGrp.Groups.Add(wkAVEVAColGrp); |
|
465 |
|
|
466 |
|
|
467 |
//Validation |
|
468 |
GridViewColumnGroup valColGrp = new GridViewColumnGroup("Validation"); |
|
469 |
GridViewColumnGroup valLinkColGrp = new GridViewColumnGroup("파일링크"); |
|
470 |
GridViewColumnGroup valProdColGrp = new GridViewColumnGroup("도프텍"); |
|
471 |
GridViewColumnGroup valCntColGrp = new GridViewColumnGroup("삼성전자"); |
|
472 |
|
|
473 |
GridViewColumnGroupRow valLinkColGrpRow = new GridViewColumnGroupRow(); |
|
474 |
valLinkColGrpRow.ColumnNames.AddRange(valLinkColNames); |
|
475 |
|
|
476 |
GridViewColumnGroupRow valProdColGrpRow = new GridViewColumnGroupRow(); |
|
477 |
valProdColGrpRow.ColumnNames.AddRange(valProdColNames); |
|
478 |
|
|
479 |
GridViewColumnGroupRow valCntColGrpRow = new GridViewColumnGroupRow(); |
|
480 |
valCntColGrpRow.ColumnNames.AddRange(valCntColNames); |
|
481 |
|
|
482 |
valLinkColGrp.Rows.Add(valLinkColGrpRow); |
|
483 |
valProdColGrp.Rows.Add(valProdColGrpRow); |
|
484 |
valCntColGrp.Rows.Add(valCntColGrpRow); |
|
485 |
|
|
486 |
valColGrp.Groups.Add(valLinkColGrp); |
|
487 |
valColGrp.Groups.Add(valProdColGrp); |
|
488 |
valColGrp.Groups.Add(valCntColGrp); |
|
489 |
|
|
490 |
//AVEVA Net |
|
491 |
GridViewColumnGroup dtColGrp = new GridViewColumnGroup("AVEVA Net\n(Digital Twin)"); |
|
492 |
|
|
493 |
GridViewColumnGroupRow dtColGrpRow = new GridViewColumnGroupRow(); |
|
494 |
dtColGrpRow.ColumnNames.AddRange(dtColNames); |
|
495 |
|
|
496 |
dtColGrp.Rows.Add(dtColGrpRow); |
|
497 |
|
|
498 |
//Group 추가 |
|
499 |
columnGroupsView.ColumnGroups.Add(docColGrp); |
|
500 |
columnGroupsView.ColumnGroups.Add(rvColGrp); |
|
501 |
columnGroupsView.ColumnGroups.Add(wkColGrp); |
|
502 |
columnGroupsView.ColumnGroups.Add(valColGrp); |
|
503 |
columnGroupsView.ColumnGroups.Add(dtColGrp); |
|
504 |
|
|
158 | 505 |
gridView.MasterTemplate.ViewDefinition = columnGroupsView; |
159 | 506 |
} |
160 | 507 |
|
ID2.Manager/ID2.Manager/Properties/Resources.Designer.cs | ||
---|---|---|
63 | 63 |
/// <summary> |
64 | 64 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
65 | 65 |
/// </summary> |
66 |
internal static System.Drawing.Bitmap cad18 { |
|
67 |
get { |
|
68 |
object obj = ResourceManager.GetObject("cad18", resourceCulture); |
|
69 |
return ((System.Drawing.Bitmap)(obj)); |
|
70 |
} |
|
71 |
} |
|
72 |
|
|
73 |
/// <summary> |
|
74 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
75 |
/// </summary> |
|
66 | 76 |
internal static System.Drawing.Bitmap Excel { |
67 | 77 |
get { |
68 | 78 |
object obj = ResourceManager.GetObject("Excel", resourceCulture); |
... | ... | |
83 | 93 |
/// <summary> |
84 | 94 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
85 | 95 |
/// </summary> |
96 |
internal static System.Drawing.Bitmap files18 { |
|
97 |
get { |
|
98 |
object obj = ResourceManager.GetObject("files18", resourceCulture); |
|
99 |
return ((System.Drawing.Bitmap)(obj)); |
|
100 |
} |
|
101 |
} |
|
102 |
|
|
103 |
/// <summary> |
|
104 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
105 |
/// </summary> |
|
86 | 106 |
internal static System.Drawing.Bitmap Import { |
87 | 107 |
get { |
88 | 108 |
object obj = ResourceManager.GetObject("Import", resourceCulture); |
89 | 109 |
return ((System.Drawing.Bitmap)(obj)); |
90 | 110 |
} |
91 | 111 |
} |
112 |
|
|
113 |
/// <summary> |
|
114 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
115 |
/// </summary> |
|
116 |
internal static System.Drawing.Bitmap link18_blue { |
|
117 |
get { |
|
118 |
object obj = ResourceManager.GetObject("link18_blue", resourceCulture); |
|
119 |
return ((System.Drawing.Bitmap)(obj)); |
|
120 |
} |
|
121 |
} |
|
122 |
|
|
123 |
/// <summary> |
|
124 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
125 |
/// </summary> |
|
126 |
internal static System.Drawing.Bitmap link18_green { |
|
127 |
get { |
|
128 |
object obj = ResourceManager.GetObject("link18_green", resourceCulture); |
|
129 |
return ((System.Drawing.Bitmap)(obj)); |
|
130 |
} |
|
131 |
} |
|
132 |
|
|
133 |
/// <summary> |
|
134 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
135 |
/// </summary> |
|
136 |
internal static System.Drawing.Bitmap link18_purple { |
|
137 |
get { |
|
138 |
object obj = ResourceManager.GetObject("link18_purple", resourceCulture); |
|
139 |
return ((System.Drawing.Bitmap)(obj)); |
|
140 |
} |
|
141 |
} |
|
142 |
|
|
143 |
/// <summary> |
|
144 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
145 |
/// </summary> |
|
146 |
internal static System.Drawing.Bitmap link18_yellow { |
|
147 |
get { |
|
148 |
object obj = ResourceManager.GetObject("link18_yellow", resourceCulture); |
|
149 |
return ((System.Drawing.Bitmap)(obj)); |
|
150 |
} |
|
151 |
} |
|
152 |
|
|
153 |
/// <summary> |
|
154 |
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. |
|
155 |
/// </summary> |
|
156 |
internal static System.Drawing.Bitmap pdf18 { |
|
157 |
get { |
|
158 |
object obj = ResourceManager.GetObject("pdf18", resourceCulture); |
|
159 |
return ((System.Drawing.Bitmap)(obj)); |
|
160 |
} |
|
161 |
} |
|
92 | 162 |
} |
93 | 163 |
} |
ID2.Manager/ID2.Manager/Properties/Resources.resx | ||
---|---|---|
118 | 118 |
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
119 | 119 |
</resheader> |
120 | 120 |
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> |
121 |
<data name="cad18" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
122 |
<value>..\Resources\cad18.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
123 |
</data> |
|
121 | 124 |
<data name="Excel" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
122 | 125 |
<value>..\Resources\Excel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
123 | 126 |
</data> |
124 | 127 |
<data name="Export" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
125 | 128 |
<value>..\Resources\Export.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
126 | 129 |
</data> |
130 |
<data name="files18" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
131 |
<value>..\Resources\files18.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
132 |
</data> |
|
127 | 133 |
<data name="Import" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
128 | 134 |
<value>..\Resources\ImportFromExcel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
129 | 135 |
</data> |
136 |
<data name="link18_blue" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
137 |
<value>..\Resources\link18_blue.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
138 |
</data> |
|
139 |
<data name="link18_green" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
140 |
<value>..\Resources\link18_green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
141 |
</data> |
|
142 |
<data name="link18_purple" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
143 |
<value>..\Resources\link18_purple.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
144 |
</data> |
|
145 |
<data name="link18_yellow" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
146 |
<value>..\Resources\link18_yellow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
147 |
</data> |
|
148 |
<data name="pdf18" type="System.Resources.ResXFileRef, System.Windows.Forms"> |
|
149 |
<value>..\Resources\pdf18.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> |
|
150 |
</data> |
|
130 | 151 |
</root> |
ID2.Manager/ID2.Manager/Properties/Settings.Designer.cs | ||
---|---|---|
1 | 1 |
//------------------------------------------------------------------------------ |
2 | 2 |
// <auto-generated> |
3 |
// This code was generated by a tool.
|
|
4 |
// Runtime Version:4.0.30319.42000
|
|
3 |
// 이 코드는 도구를 사용하여 생성되었습니다.
|
|
4 |
// 런타임 버전:4.0.30319.42000
|
|
5 | 5 |
// |
6 |
// Changes to this file may cause incorrect behavior and will be lost if
|
|
7 |
// the code is regenerated.
|
|
6 |
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
|
7 |
// 이러한 변경 내용이 손실됩니다.
|
|
8 | 8 |
// </auto-generated> |
9 | 9 |
//------------------------------------------------------------------------------ |
10 | 10 |
|
11 |
|
|
12 |
namespace ID2.Manager.Properties |
|
13 |
{ |
|
11 |
namespace ID2.Manager.Properties { |
|
12 |
|
|
13 |
|
|
14 | 14 |
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
15 |
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] |
|
16 |
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase |
|
17 |
{ |
|
18 |
|
|
15 |
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] |
|
16 |
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { |
|
17 |
|
|
19 | 18 |
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); |
20 |
|
|
21 |
public static Settings Default |
|
22 |
{ |
|
23 |
get |
|
24 |
{ |
|
19 |
|
|
20 |
public static Settings Default { |
|
21 |
get { |
|
25 | 22 |
return defaultInstance; |
26 | 23 |
} |
27 | 24 |
} |
25 |
|
|
26 |
[global::System.Configuration.UserScopedSettingAttribute()] |
|
27 |
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] |
|
28 |
[global::System.Configuration.DefaultSettingValueAttribute("SN-2021May25-IPYYaC5T2J/LIzFImndeajkkMS/Fn1fLWGfjRRxTNu/uan2hm9KrTK/v9hdsQfLCOuUe" + |
|
29 |
"MZXrEHCPsmS7Pnp4YGIGsOw==A")] |
|
30 |
public string GemBoxLicense { |
|
31 |
get { |
|
32 |
return ((string)(this["GemBoxLicense"])); |
|
33 |
} |
|
34 |
set { |
|
35 |
this["GemBoxLicense"] = value; |
|
36 |
} |
|
37 |
} |
|
28 | 38 |
} |
29 | 39 |
} |
ID2.Manager/ID2.Manager/Properties/Settings.settings | ||
---|---|---|
1 | 1 |
<?xml version='1.0' encoding='utf-8'?> |
2 |
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> |
|
3 |
<Profiles> |
|
4 |
<Profile Name="(Default)" /> |
|
5 |
</Profiles> |
|
6 |
<Settings /> |
|
7 |
</SettingsFile> |
|
2 |
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="ID2.Manager.Properties" GeneratedClassName="Settings"> |
|
3 |
<Profiles /> |
|
4 |
<Settings> |
|
5 |
<Setting Name="GemBoxLicense" Type="System.String" Scope="User"> |
|
6 |
<Value Profile="(Default)">SN-2021May25-IPYYaC5T2J/LIzFImndeajkkMS/Fn1fLWGfjRRxTNu/uan2hm9KrTK/v9hdsQfLCOuUeMZXrEHCPsmS7Pnp4YGIGsOw==A</Value> |
|
7 |
</Setting> |
|
8 |
</Settings> |
|
9 |
</SettingsFile> |
ID2.Manager/ID2.Manager/Settings.cs | ||
---|---|---|
1 |
namespace ID2.Manager.Properties { |
|
2 |
|
|
3 |
|
|
4 |
// 이 클래스를 사용하여 설정 클래스에 대한 특정 이벤트를 처리할 수 있습니다. |
|
5 |
// SettingChanging 이벤트는 설정 값이 변경되기 전에 발생합니다. |
|
6 |
// PropertyChanged 이벤트는 설정 값이 변경된 후에 발생합니다. |
|
7 |
// SettingsLoaded 이벤트는 설정 값이 로드된 후에 발생합니다. |
|
8 |
// SettingsSaving 이벤트는 설정 값이 저장되기 전에 발생합니다. |
|
9 |
internal sealed partial class Settings { |
|
10 |
|
|
11 |
public Settings() { |
|
12 |
// // 설정을 저장 및 변경하기 위한 이벤트 처리기를 추가하려면 아래 줄에서 주석 처리를 제거하세요. |
|
13 |
// |
|
14 |
// this.SettingChanging += this.SettingChangingEventHandler; |
|
15 |
// |
|
16 |
// this.SettingsSaving += this.SettingsSavingEventHandler; |
|
17 |
// |
|
18 |
} |
|
19 |
|
|
20 |
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) { |
|
21 |
// SettingChangingEvent 이벤트를 처리하는 코드를 여기에 추가하세요. |
|
22 |
} |
|
23 |
|
|
24 |
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) { |
|
25 |
// SettingsSaving 이벤트를 처리하는 코드를 여기에 추가하세요. |
|
26 |
} |
|
27 |
} |
|
28 |
} |
내보내기 Unified diff