YJ 5 years ago
parent
commit
61f17d7dd5

+ 65 - 3
Bluecell_ERP/Bluecell_ERP.csproj

@@ -33,8 +33,32 @@
33 33
     <WarningLevel>4</WarningLevel>
34 34
   </PropertyGroup>
35 35
   <ItemGroup>
36
+    <Reference Include="ComponentFactory.Krypton.Design, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
37
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Design.dll</HintPath>
38
+    </Reference>
39
+    <Reference Include="ComponentFactory.Krypton.Docking, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
40
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Docking.dll</HintPath>
41
+    </Reference>
42
+    <Reference Include="ComponentFactory.Krypton.Navigator, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
43
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Navigator.dll</HintPath>
44
+    </Reference>
45
+    <Reference Include="ComponentFactory.Krypton.Ribbon, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
46
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Ribbon.dll</HintPath>
47
+    </Reference>
48
+    <Reference Include="ComponentFactory.Krypton.Toolkit, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
49
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Toolkit.dll</HintPath>
50
+    </Reference>
51
+    <Reference Include="ComponentFactory.Krypton.Workspace, Version=4.4.1.0, Culture=neutral, PublicKeyToken=a87e673e9ecb6e8e, processorArchitecture=MSIL">
52
+      <HintPath>..\packages\KryptonWinFormControls.4.4.1.0\lib\net40\ComponentFactory.Krypton.Workspace.dll</HintPath>
53
+    </Reference>
54
+    <Reference Include="MySql.Data">
55
+      <HintPath>C:\Users\parkyj\Downloads\mysql-connector-net-8.0.18-noinstall\v4.5.2\MySql.Data.dll</HintPath>
56
+    </Reference>
57
+    <Reference Include="PresentationCore" />
58
+    <Reference Include="PresentationFramework" />
36 59
     <Reference Include="System" />
37 60
     <Reference Include="System.Core" />
61
+    <Reference Include="System.Xaml" />
38 62
     <Reference Include="System.Xml.Linq" />
39 63
     <Reference Include="System.Data.DataSetExtensions" />
40 64
     <Reference Include="Microsoft.CSharp" />
@@ -44,16 +68,46 @@
44 68
     <Reference Include="System.Net.Http" />
45 69
     <Reference Include="System.Windows.Forms" />
46 70
     <Reference Include="System.Xml" />
71
+    <Reference Include="UIAutomationProvider" />
72
+    <Reference Include="WindowsBase" />
73
+    <Reference Include="WindowsFormsIntegration" />
47 74
   </ItemGroup>
48 75
   <ItemGroup>
49
-    <Compile Include="Form1.cs">
76
+    <Compile Include="CustomCalendar.cs">
77
+      <SubType>UserControl</SubType>
78
+    </Compile>
79
+    <Compile Include="CustomCalendar.designer.cs">
80
+      <DependentUpon>CustomCalendar.cs</DependentUpon>
81
+    </Compile>
82
+    <Compile Include="Login.cs">
50 83
       <SubType>Form</SubType>
51 84
     </Compile>
52
-    <Compile Include="Form1.Designer.cs">
53
-      <DependentUpon>Form1.cs</DependentUpon>
85
+    <Compile Include="Login.Designer.cs">
86
+      <DependentUpon>Login.cs</DependentUpon>
87
+    </Compile>
88
+    <Compile Include="Menu.cs">
89
+      <SubType>Form</SubType>
90
+    </Compile>
91
+    <Compile Include="Menu.Designer.cs">
92
+      <DependentUpon>Menu.cs</DependentUpon>
54 93
     </Compile>
55 94
     <Compile Include="Program.cs" />
56 95
     <Compile Include="Properties\AssemblyInfo.cs" />
96
+    <Compile Include="Signup_Form.cs">
97
+      <SubType>Form</SubType>
98
+    </Compile>
99
+    <Compile Include="Signup_Form.Designer.cs">
100
+      <DependentUpon>Signup_Form.cs</DependentUpon>
101
+    </Compile>
102
+    <EmbeddedResource Include="CustomCalendar.resx">
103
+      <DependentUpon>CustomCalendar.cs</DependentUpon>
104
+    </EmbeddedResource>
105
+    <EmbeddedResource Include="Login.resx">
106
+      <DependentUpon>Login.cs</DependentUpon>
107
+    </EmbeddedResource>
108
+    <EmbeddedResource Include="Menu.resx">
109
+      <DependentUpon>Menu.cs</DependentUpon>
110
+    </EmbeddedResource>
57 111
     <EmbeddedResource Include="Properties\Resources.resx">
58 112
       <Generator>ResXFileCodeGenerator</Generator>
59 113
       <LastGenOutput>Resources.Designer.cs</LastGenOutput>
@@ -62,7 +116,12 @@
62 116
     <Compile Include="Properties\Resources.Designer.cs">
63 117
       <AutoGen>True</AutoGen>
64 118
       <DependentUpon>Resources.resx</DependentUpon>
119
+      <DesignTime>True</DesignTime>
65 120
     </Compile>
121
+    <EmbeddedResource Include="Signup_Form.resx">
122
+      <DependentUpon>Signup_Form.cs</DependentUpon>
123
+    </EmbeddedResource>
124
+    <None Include="packages.config" />
66 125
     <None Include="Properties\Settings.settings">
67 126
       <Generator>SettingsSingleFileGenerator</Generator>
68 127
       <LastGenOutput>Settings.Designer.cs</LastGenOutput>
@@ -76,5 +135,8 @@
76 135
   <ItemGroup>
77 136
     <None Include="App.config" />
78 137
   </ItemGroup>
138
+  <ItemGroup>
139
+    <None Include="Resources\블루셀 CI 최종안.jpg" />
140
+  </ItemGroup>
79 141
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
80 142
 </Project>

+ 522 - 0
Bluecell_ERP/CustomCalendar.cs

@@ -0,0 +1,522 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.ComponentModel;
4
+using System.Drawing;
5
+using System.Data;
6
+using System.Linq;
7
+using System.Text;
8
+using System.Windows.Forms;
9
+
10
+namespace exCalendar
11
+{
12
+    public partial class CustomCalendar : UserControl
13
+    {
14
+        public ContextMenuStrip MenuStrip
15
+        {
16
+            get
17
+            {
18
+                return likeCal.MenuStrip;
19
+            }
20
+            set
21
+            {
22
+                likeCal.MenuStrip = value;
23
+            }
24
+        }
25
+
26
+        public string UserName
27
+        {
28
+            get
29
+            {
30
+                return likeCal.UserName;
31
+            }
32
+            set
33
+            {
34
+                likeCal.UserName = value;
35
+            }
36
+        }
37
+
38
+        public Int64 UserGrade
39
+        {
40
+            get
41
+            {
42
+                return likeCal.UserGrade;
43
+            }
44
+            set
45
+            {
46
+                likeCal.UserGrade = value;
47
+            }
48
+        }
49
+
50
+        public float dutyFontSize
51
+        {
52
+            get
53
+            {
54
+                return likeCal.dutyFontSize;
55
+            }
56
+            set
57
+            {
58
+                likeCal.dutyFontSize = value;
59
+            }
60
+        }
61
+
62
+        public float schedulerFontSize
63
+        {
64
+            get
65
+            {
66
+                return likeCal.schedulerFontSize;
67
+            }
68
+            set
69
+            {
70
+                likeCal.schedulerFontSize = value;
71
+            }
72
+        }
73
+        
74
+        public delegate void DateTimeEventHandler(DateTime dt);
75
+        public event DateTimeEventHandler _changedDate;
76
+        LikeCal likeCal = new LikeCal();
77
+        public CustomCalendar()
78
+        {
79
+            InitializeComponent();
80
+            likeCal._changeDate += new LikeCal.dtDelegate(LikeCal__changeDate);
81
+            likeCal.Dock = DockStyle.Fill;
82
+            likeCal.SelectDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1));
83
+            
84
+            panel_day.Controls.Add(likeCal);
85
+
86
+            panel_day.BackColor = Color.FromArgb(41, 128, 185);
87
+        }
88
+
89
+        public DateTime SelectedDate
90
+        {
91
+            set 
92
+            {
93
+                likeCal.dtValue = value;
94
+            }
95
+            get
96
+            {
97
+                return likeCal.dtValue;
98
+            }
99
+        }
100
+        
101
+        private void LikeCal__changeDate(DateTime dt)
102
+        {
103
+            label_caption.Text = dt.Year + "년 " + dt.Month + "월";
104
+            if(_changedDate != null) _changedDate(likeCal.dtValue);
105
+        }
106
+        
107
+        private void label_next_Click(object sender, EventArgs e)
108
+        {
109
+            likeCal.nextMonth();
110
+        }
111
+
112
+        private void label_pre_Click(object sender, EventArgs e)
113
+        {
114
+            likeCal.preMonth();
115
+        }
116
+
117
+        private void label_caption_Click(object sender, EventArgs e)
118
+        {
119
+            likeCal.moveToToday();
120
+        }
121
+
122
+        public void SetHoliday(int[] onlyDayDisit, string[] redDayName, DateTime dt)
123
+        {
124
+            likeCal.SetRedDay(onlyDayDisit, redDayName);
125
+            likeCal.SelectDate(dt);
126
+            label_caption.Text = dt.Year + "년 " + dt.Month + "월";
127
+        }
128
+
129
+        public void SetSchedual(int[] onlyDayDisit, string[] redDayName, DateTime dt)
130
+        {
131
+            likeCal.SetScheduleDay(onlyDayDisit, redDayName);
132
+            likeCal.ScheduleDate(dt);
133
+        }
134
+
135
+        public void SetDuty(int[] onlyDayDisit, string[] redDayName, DateTime dt)
136
+        {
137
+            likeCal.SetDutyDay(onlyDayDisit, redDayName);
138
+            likeCal.DutyDate(dt);
139
+        }
140
+
141
+        public void goToToday()
142
+        {
143
+            likeCal.moveToToday();
144
+        }
145
+        public void goToPreDay()
146
+        {
147
+            likeCal.preDay();
148
+        }
149
+        public void goToNextDay()
150
+        {
151
+            likeCal.nextDay();
152
+        }
153
+        public void goToPreWeek()
154
+        {
155
+            likeCal.preWeek();
156
+        }
157
+        public void goToNextWeek()
158
+        {
159
+            likeCal.nextWeek();
160
+        }
161
+        public void goToPreMonth()
162
+        {
163
+            likeCal.preMonth();
164
+        }
165
+        public void goToNextMonth()
166
+        {
167
+            likeCal.nextMonth();
168
+        }
169
+    }
170
+
171
+    class dLabel : Label
172
+    {
173
+        public dLabel()
174
+        {
175
+            this.SetStyle(ControlStyles.DoubleBuffer | ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.ResizeRedraw, true);
176
+            this.UpdateStyles();
177
+        }
178
+    }
179
+
180
+    class LikeCal : TableLayoutPanel
181
+    {
182
+        public ContextMenuStrip MenuStrip { get; set; }
183
+        public delegate void dtDelegate(DateTime dt);
184
+        public event dtDelegate _changeDate;
185
+
186
+        public string UserName { get; set; }
187
+        public Int64 UserGrade { get; set; }
188
+        public float dutyFontSize { get; set; }
189
+        public float schedulerFontSize { get; set; }
190
+
191
+        int Month = DateTime.Now.Month;
192
+        public DateTime dtValue = DateTime.Now;
193
+        public dLabel[] TB = new dLabel[42];
194
+        int[] redDayList = null;
195
+        string[] redDayName = null;
196
+        int[] ScheduleDayList = null;
197
+        string[] ScheduleDayName = null;
198
+        int[] DutyDayList = null;
199
+        string[] DutyDayName = null;
200
+
201
+        public LikeCal()
202
+        {
203
+            DoubleBuffered = true;
204
+            setRowColumns(7, 7);
205
+        }
206
+
207
+        public void SetRedDay(int[] redDayList, string[] redDayName)
208
+        {
209
+            this.redDayList = redDayList;
210
+            this.redDayName = redDayName;
211
+        }
212
+
213
+        public void SetScheduleDay(int[] ScheduleDayList, string[] ScheduleDayName)
214
+        {
215
+            this.ScheduleDayList = ScheduleDayList;
216
+            this.ScheduleDayName = ScheduleDayName;
217
+        }
218
+
219
+        public void SetDutyDay(int[] DutyDayList, string[] DutyDayName)
220
+        {
221
+            this.DutyDayList = DutyDayList;
222
+            this.DutyDayName = DutyDayName;
223
+        }
224
+
225
+        private void likeCal_MouseClick(object sender, MouseEventArgs e)
226
+        {
227
+            if (((Control)sender).Text != null && ((Control)sender).Text != "")
228
+            {
229
+                DateTime dt;
230
+                try
231
+                {
232
+                    dt = new DateTime(dtValue.Year, dtValue.Month, int.Parse(((Control)sender).Text), 0, 0, 0);
233
+                }
234
+                catch 
235
+                {
236
+                    return;
237
+                }
238
+                SelectDate(dt);
239
+                ScheduleDate(dt);
240
+                if (UserName != null)
241
+                    DutyDate(dt);
242
+                if (_changeDate != null) _changeDate(dt);
243
+            }
244
+        }
245
+
246
+        //달력 그리기
247
+        public void setRowColumns(int rows, int columns)
248
+        {
249
+            ColumnCount = columns;
250
+            RowCount = rows;
251
+            for (int i = 0; i < RowCount; i++)
252
+            {
253
+                if( i == 0)
254
+                    RowStyles.Add(new RowStyle(SizeType.Absolute, 40F));
255
+                else
256
+                    RowStyles.Add(new RowStyle(SizeType.Percent, 100F));
257
+            }
258
+                
259
+
260
+            for (int i = 0; i < ColumnCount; i++) 
261
+                ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100F));
262
+
263
+            //int cnt = 0;
264
+            dLabel tb = null;
265
+            for (int i = 0; i < RowCount; i++)
266
+            {
267
+                for (int j = 0; j < ColumnCount; j++)
268
+                {
269
+                    tb = new dLabel();
270
+                    tb.AutoSize = false;
271
+                    if (i == 0)             //첫 줄은 요일이다.
272
+                    {
273
+                        tb.Text = System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat.AbbreviatedDayNames[j][0].ToString() + "요일";
274
+                        //토요일 일요일 타이틀 색 변경
275
+                        if (j == 0 || j == 6)
276
+                            tb.ForeColor = System.Drawing.Color.FromArgb(255, 250, 54, 156);
277
+                        else
278
+                            tb.ForeColor = System.Drawing.Color.White;
279
+
280
+                        tb.BackColor = System.Drawing.Color.FromArgb(255, 148, 214, 240);
281
+                        
282
+                        tb.TextAlign = ContentAlignment.MiddleCenter;
283
+                    }
284
+                    else
285
+                    {
286
+                        tb.ForeColor = System.Drawing.Color.Black;
287
+                        tb.BackColor = System.Drawing.Color.FromArgb(255, 246, 229);
288
+                        tb.MouseClick += new MouseEventHandler(likeCal_MouseClick);
289
+                        tb.TextAlign = System.Drawing.ContentAlignment.TopLeft;
290
+                        tb.MouseHover += new EventHandler(dLabel_MouseOver);
291
+                        TB[j + ((i-1) * 7)] = tb;    
292
+                    }
293
+
294
+                    tb.Font = new System.Drawing.Font("나눔바른고딕", 14, FontStyle.Bold );
295
+                    //tb.BorderStyle = BorderStyle.None;
296
+                    tb.Margin = new Padding(1);
297
+                    tb.Padding = new Padding(0);
298
+                    tb.Dock = DockStyle.Fill;
299
+                    this.BackColor = Color.FromArgb(255, 230, 234, 243);
300
+                    Controls.Add(tb, j, i);
301
+                }
302
+            }
303
+        }
304
+
305
+        private void dLabel_MouseOver(object sender, EventArgs e)
306
+        {
307
+            ToolTip t = new ToolTip();
308
+            t.SetToolTip(((Control)sender), ((Control)sender).Text);            
309
+        }
310
+                
311
+        public void SelectDate(DateTime DT)
312
+        {
313
+            dtValue = DT;
314
+
315
+            ClearDay();
316
+
317
+            DateTime Start = new DateTime(DT.Year, DT.Month, 1);
318
+            int End = DateTime.DaysInMonth(DT.Year, DT.Month);
319
+            int week = (int)Start.DayOfWeek;
320
+
321
+            for (int var = 1; var <= End; var++)
322
+            {   
323
+                int index = var + week -1;
324
+
325
+                TB[index].Cursor = Cursors.Hand;
326
+                TB[index].Text = string.Format("{0:0}", var);
327
+                TB[index].BackColor = Color.White;
328
+
329
+                TB[index].Tag = Start.AddDays(var - 1);
330
+                
331
+                int index1 = 0;
332
+
333
+                if (redDayList != null && (index1 = Array.IndexOf(redDayList, var)) >= 0)
334
+                {
335
+                    TB[index].ForeColor = System.Drawing.Color.FromArgb(255, 250, 54,156);//선택된 날짜가 리스트에 있을 경우
336
+
337
+                    if (redDayName[index1] != null)
338
+                        TB[index].Text += "\n" + redDayName[index1];
339
+                }
340
+                else
341
+                {
342
+                    TB[index].ForeColor = System.Drawing.Color.FromArgb(255, 2, 109, 191);
343
+
344
+                    if (dtValue.Year == DateTime.Now.Year && dtValue.Month == DateTime.Now.Month && TB[index].Text == DateTime.Now.Day.ToString())
345
+                    {
346
+                        TB[index].BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
347
+                    }   
348
+                }
349
+            }
350
+
351
+            foreach (var item in TB)
352
+            {
353
+                if (item.Text != "")
354
+                    item.ContextMenuStrip = MenuStrip;
355
+                else
356
+                {
357
+                    item.ContextMenuStrip = null;
358
+                    item.Tag = null;
359
+                }
360
+            }
361
+        }
362
+
363
+        public void ScheduleDate(DateTime DT)
364
+        {
365
+            dtValue = DT;
366
+            
367
+            DateTime Start = new DateTime(DT.Year, DT.Month, 1);
368
+            int End = DateTime.DaysInMonth(DT.Year, DT.Month);
369
+            int week = (int)Start.DayOfWeek;
370
+
371
+            for (int var = 1; var <= End; var++)
372
+            {
373
+                int index = var + week - 1;
374
+
375
+                if (schedulerFontSize == 0)
376
+                    schedulerFontSize = 14;
377
+
378
+                TB[index].Font = new System.Drawing.Font("나눔바른고딕", schedulerFontSize, FontStyle.Bold);
379
+                TB[index].Cursor = Cursors.Hand;
380
+                TB[index].Text = string.Format("{0:0}", var);
381
+                TB[index].BackColor = Color.White;
382
+
383
+                TB[index].Tag = Start.AddDays(var - 1);
384
+
385
+                int index1 = 0;
386
+
387
+                if (redDayList != null && (index1 = Array.IndexOf(redDayList, var)) >= 0)
388
+                {
389
+                    if (redDayName[index1] != null)
390
+                        TB[index].Text += "\n" + redDayName[index1];
391
+                }
392
+
393
+                if (ScheduleDayList != null && (index1 = Array.IndexOf(ScheduleDayList, var)) >= 0)
394
+                {
395
+                    if (ScheduleDayName[index1] != null)
396
+                        TB[index].Text += "\n" + ScheduleDayName[index1];
397
+                }
398
+            }
399
+
400
+            foreach (var item in TB)
401
+            {
402
+                if (item.Text != "")
403
+                    item.ContextMenuStrip = MenuStrip;
404
+                else
405
+                {
406
+                    item.ContextMenuStrip = null;
407
+                    item.Tag = null;
408
+                }
409
+            }
410
+        }
411
+
412
+        public void DutyDate(DateTime DT)
413
+        {
414
+            dtValue = DT;
415
+
416
+            DateTime Start = new DateTime(DT.Year, DT.Month, 1);
417
+            int End = DateTime.DaysInMonth(DT.Year, DT.Month);
418
+            int week = (int)Start.DayOfWeek;
419
+
420
+            for (int var = 1; var <= End; var++)
421
+            {
422
+                int index = var + week - 1;
423
+
424
+                if (dutyFontSize == 0)
425
+                    dutyFontSize = 14;
426
+
427
+                TB[index].Font = new System.Drawing.Font("나눔바른고딕", dutyFontSize, FontStyle.Bold);
428
+
429
+                TB[index].Cursor = Cursors.Hand;
430
+                TB[index].Text = string.Format("{0:0}", var);
431
+                TB[index].BackColor = Color.White;
432
+
433
+                TB[index].Tag = Start.AddDays(var - 1);
434
+
435
+                int index1 = 0;
436
+
437
+                if (DutyDayList != null && (index1 = Array.IndexOf(DutyDayList, var)) >= 0)
438
+                {
439
+                    if (DutyDayName[index1] != null)
440
+                        TB[index].Text += "\n" + DutyDayName[index1];
441
+                }
442
+            }
443
+
444
+            foreach (var item in TB)
445
+            {
446
+                if (item.Text != "")
447
+                {
448
+                    //본인과 특정 권한자만 메뉴 입력 하기
449
+                    //if (item.Text.Contains(UserName))
450
+                    //    item.ContextMenuStrip = MenuStrip;
451
+                    //else
452
+                    //    if (UserGrade > 2)
453
+                    //        item.ContextMenuStrip = null;
454
+                    //    else
455
+                    //        item.ContextMenuStrip = MenuStrip;
456
+
457
+                    item.ContextMenuStrip = MenuStrip;
458
+                }
459
+                else
460
+                {
461
+                    item.ContextMenuStrip = null;
462
+                    item.Tag = null;
463
+                }
464
+            }
465
+        }
466
+
467
+        public void nextMonth()
468
+        {
469
+            DateTime dt = dtValue.AddMonths(1);
470
+            SelectDate(dt);
471
+            if (_changeDate != null) _changeDate(dt);
472
+        }
473
+        public void preMonth()
474
+        {
475
+            DateTime dt = dtValue.AddMonths(-1);
476
+            SelectDate(dt);
477
+            if (_changeDate != null) _changeDate(dt);
478
+        }
479
+        public void nextWeek()
480
+        {
481
+            DateTime dt = dtValue.AddDays(7);
482
+            SelectDate(dt);
483
+            if (_changeDate != null) _changeDate(dt);
484
+        }
485
+        public void preWeek()
486
+        {
487
+            DateTime dt = dtValue.AddDays(-7);
488
+            SelectDate(dt);
489
+            if (_changeDate != null) _changeDate(dt);
490
+        }
491
+        public void nextDay()
492
+        {
493
+            DateTime dt = dtValue.AddDays(1);
494
+            SelectDate(dt);
495
+            if (_changeDate != null) _changeDate(dt);
496
+        }
497
+        public void preDay()
498
+        {
499
+            DateTime dt = dtValue.AddDays(-1);
500
+            SelectDate(dt);
501
+            if (_changeDate != null) _changeDate(dt);
502
+        }
503
+        public void moveToToday()
504
+        {
505
+            //DateTime dt = DateTime.Now;
506
+            //SelectDate(dt);
507
+            //if (_changeDate != null) _changeDate(dt);
508
+        }
509
+
510
+        public void ClearDay()
511
+        {
512
+            for(int i = 0; i < 42; i++)
513
+            {
514
+                TB[i].BorderStyle = System.Windows.Forms.BorderStyle.None;
515
+                
516
+                TB[i].BackColor = Color.White;   //날짜 없는 날 색 변경
517
+                TB[i].Cursor = Cursors.Default;
518
+                TB[i].Text = string.Empty;
519
+            }
520
+        }
521
+    }
522
+}

+ 91 - 0
Bluecell_ERP/CustomCalendar.designer.cs

@@ -0,0 +1,91 @@
1
+namespace exCalendar
2
+{
3
+    partial class CustomCalendar
4
+    {
5
+        /// <summary> 
6
+        /// 필수 디자이너 변수입니다.
7
+        /// </summary>
8
+        private System.ComponentModel.IContainer components = null;
9
+
10
+        /// <summary> 
11
+        /// 사용 중인 모든 리소스를 정리합니다.
12
+        /// </summary>
13
+        /// <param name="disposing">관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.</param>
14
+        protected override void Dispose(bool disposing)
15
+        {
16
+            if (disposing && (components != null))
17
+            {
18
+                components.Dispose();
19
+            }
20
+            base.Dispose(disposing);
21
+        }
22
+
23
+        #region 구성 요소 디자이너에서 생성한 코드
24
+
25
+        /// <summary> 
26
+        /// 디자이너 지원에 필요한 메서드입니다. 
27
+        /// 이 메서드의 내용을 코드 편집기로 수정하지 마십시오.
28
+        /// </summary>
29
+        private void InitializeComponent()
30
+        {
31
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CustomCalendar));
32
+            this.splitContainer1 = new ComponentFactory.Krypton.Toolkit.KryptonSplitContainer ();
33
+            this.label_caption = new System.Windows.Forms.Label();
34
+            this.panel_day = new System.Windows.Forms.Panel();
35
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
36
+            this.splitContainer1.Panel1.SuspendLayout();
37
+            this.splitContainer1.Panel2.SuspendLayout();
38
+            this.splitContainer1.SuspendLayout();
39
+            this.SuspendLayout();
40
+            // 
41
+            // splitContainer1
42
+            // 
43
+            resources.ApplyResources(this.splitContainer1, "splitContainer1");
44
+            this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
45
+            this.splitContainer1.Name = "splitContainer1";
46
+            // 
47
+            // splitContainer1.Panel1
48
+            // 
49
+            this.splitContainer1.Panel1.Controls.Add(this.label_caption);
50
+            // 
51
+            // splitContainer1.Panel2
52
+            // 
53
+            this.splitContainer1.Panel2.Controls.Add(this.panel_day);
54
+            // 
55
+            // label_caption
56
+            // 
57
+            this.label_caption.BackColor = System.Drawing.Color.White;
58
+            this.label_caption.Cursor = System.Windows.Forms.Cursors.Default;
59
+            resources.ApplyResources(this.label_caption, "label_caption");
60
+            this.label_caption.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(52)))), ((int)(((byte)(152)))), ((int)(((byte)(219)))));
61
+            this.label_caption.Name = "label_caption";
62
+            // 
63
+            // panel_day
64
+            // 
65
+            this.panel_day.BackColor = System.Drawing.Color.White;
66
+            resources.ApplyResources(this.panel_day, "panel_day");
67
+            this.panel_day.Name = "panel_day";
68
+            // 
69
+            // CustomCalendar
70
+            // 
71
+            resources.ApplyResources(this, "$this");
72
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
73
+            this.Controls.Add(this.splitContainer1);
74
+            this.Name = "CustomCalendar";
75
+            this.splitContainer1.Panel1.ResumeLayout(false);
76
+            this.splitContainer1.Panel2.ResumeLayout(false);
77
+            ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
78
+            this.splitContainer1.ResumeLayout(false);
79
+            this.ResumeLayout(false);
80
+
81
+        }
82
+
83
+        #endregion
84
+
85
+        private ComponentFactory.Krypton.Toolkit.KryptonSplitContainer  splitContainer1;
86
+        private System.Windows.Forms.Label label_caption;
87
+        private System.Windows.Forms.Panel panel_day;
88
+
89
+
90
+    }
91
+}

+ 264 - 0
Bluecell_ERP/CustomCalendar.resx

@@ -0,0 +1,264 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<root>
3
+  <!-- 
4
+    Microsoft ResX Schema 
5
+    
6
+    Version 2.0
7
+    
8
+    The primary goals of this format is to allow a simple XML format 
9
+    that is mostly human readable. The generation and parsing of the 
10
+    various data types are done through the TypeConverter classes 
11
+    associated with the data types.
12
+    
13
+    Example:
14
+    
15
+    ... ado.net/XML headers & schema ...
16
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
+    <resheader name="version">2.0</resheader>
18
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
+    </data>
25
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
+        <comment>This is a comment</comment>
28
+    </data>
29
+                
30
+    There are any number of "resheader" rows that contain simple 
31
+    name/value pairs.
32
+    
33
+    Each data row contains a name, and value. The row also contains a 
34
+    type or mimetype. Type corresponds to a .NET class that support 
35
+    text/value conversion through the TypeConverter architecture. 
36
+    Classes that don't support this are serialized and stored with the 
37
+    mimetype set.
38
+    
39
+    The mimetype is used for serialized objects, and tells the 
40
+    ResXResourceReader how to depersist the object. This is currently not 
41
+    extensible. For a given mimetype the value must be set accordingly:
42
+    
43
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
+    that the ResXResourceWriter will generate, however the reader can 
45
+    read any of the formats listed below.
46
+    
47
+    mimetype: application/x-microsoft.net.object.binary.base64
48
+    value   : The object must be serialized with 
49
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50
+            : and then encoded with base64 encoding.
51
+    
52
+    mimetype: application/x-microsoft.net.object.soap.base64
53
+    value   : The object must be serialized with 
54
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
+            : and then encoded with base64 encoding.
56
+
57
+    mimetype: application/x-microsoft.net.object.bytearray.base64
58
+    value   : The object must be serialized into a byte array 
59
+            : using a System.ComponentModel.TypeConverter
60
+            : and then encoded with base64 encoding.
61
+    -->
62
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
64
+    <xsd:element name="root" msdata:IsDataSet="true">
65
+      <xsd:complexType>
66
+        <xsd:choice maxOccurs="unbounded">
67
+          <xsd:element name="metadata">
68
+            <xsd:complexType>
69
+              <xsd:sequence>
70
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
71
+              </xsd:sequence>
72
+              <xsd:attribute name="name" use="required" type="xsd:string" />
73
+              <xsd:attribute name="type" type="xsd:string" />
74
+              <xsd:attribute name="mimetype" type="xsd:string" />
75
+              <xsd:attribute ref="xml:space" />
76
+            </xsd:complexType>
77
+          </xsd:element>
78
+          <xsd:element name="assembly">
79
+            <xsd:complexType>
80
+              <xsd:attribute name="alias" type="xsd:string" />
81
+              <xsd:attribute name="name" type="xsd:string" />
82
+            </xsd:complexType>
83
+          </xsd:element>
84
+          <xsd:element name="data">
85
+            <xsd:complexType>
86
+              <xsd:sequence>
87
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
88
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
89
+              </xsd:sequence>
90
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
91
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
92
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
+              <xsd:attribute ref="xml:space" />
94
+            </xsd:complexType>
95
+          </xsd:element>
96
+          <xsd:element name="resheader">
97
+            <xsd:complexType>
98
+              <xsd:sequence>
99
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
100
+              </xsd:sequence>
101
+              <xsd:attribute name="name" type="xsd:string" use="required" />
102
+            </xsd:complexType>
103
+          </xsd:element>
104
+        </xsd:choice>
105
+      </xsd:complexType>
106
+    </xsd:element>
107
+  </xsd:schema>
108
+  <resheader name="resmimetype">
109
+    <value>text/microsoft-resx</value>
110
+  </resheader>
111
+  <resheader name="version">
112
+    <value>2.0</value>
113
+  </resheader>
114
+  <resheader name="reader">
115
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
+  </resheader>
117
+  <resheader name="writer">
118
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119
+  </resheader>
120
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
121
+  <data name="splitContainer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
122
+    <value>Fill</value>
123
+  </data>
124
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
125
+  <data name="splitContainer1.Location" type="System.Drawing.Point, System.Drawing">
126
+    <value>0, 0</value>
127
+  </data>
128
+  <data name="splitContainer1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
129
+    <value>0, 0, 0, 0</value>
130
+  </data>
131
+  <data name="splitContainer1.Orientation" type="System.Windows.Forms.Orientation, System.Windows.Forms">
132
+    <value>Horizontal</value>
133
+  </data>
134
+  <data name="label_caption.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
135
+    <value>Fill</value>
136
+  </data>
137
+  <data name="label_caption.Font" type="System.Drawing.Font, System.Drawing">
138
+    <value>나눔바른고딕, 27.7499981pt</value>
139
+  </data>
140
+  <data name="label_caption.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
141
+    <value>NoControl</value>
142
+  </data>
143
+  <data name="label_caption.Location" type="System.Drawing.Point, System.Drawing">
144
+    <value>0, 0</value>
145
+  </data>
146
+  <data name="label_caption.Size" type="System.Drawing.Size, System.Drawing">
147
+    <value>378, 57</value>
148
+  </data>
149
+  <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
150
+  <data name="label_caption.TabIndex" type="System.Int32, mscorlib">
151
+    <value>2</value>
152
+  </data>
153
+  <data name="label_caption.Text" xml:space="preserve">
154
+    <value>2013, 10</value>
155
+  </data>
156
+  <data name="label_caption.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
157
+    <value>MiddleCenter</value>
158
+  </data>
159
+  <data name="&gt;&gt;label_caption.Name" xml:space="preserve">
160
+    <value>label_caption</value>
161
+  </data>
162
+  <data name="&gt;&gt;label_caption.Type" xml:space="preserve">
163
+    <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
164
+  </data>
165
+  <data name="&gt;&gt;label_caption.Parent" xml:space="preserve">
166
+    <value>splitContainer1.Panel1</value>
167
+  </data>
168
+  <data name="&gt;&gt;label_caption.ZOrder" xml:space="preserve">
169
+    <value>0</value>
170
+  </data>
171
+  <data name="&gt;&gt;splitContainer1.Panel1.Name" xml:space="preserve">
172
+    <value>splitContainer1.Panel1</value>
173
+  </data>
174
+  <data name="&gt;&gt;splitContainer1.Panel1.Type" xml:space="preserve">
175
+    <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
176
+  </data>
177
+  <data name="&gt;&gt;splitContainer1.Panel1.Parent" xml:space="preserve">
178
+    <value>splitContainer1</value>
179
+  </data>
180
+  <data name="&gt;&gt;splitContainer1.Panel1.ZOrder" xml:space="preserve">
181
+    <value>0</value>
182
+  </data>
183
+  <data name="panel_day.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
184
+    <value>Fill</value>
185
+  </data>
186
+  <data name="panel_day.Font" type="System.Drawing.Font, System.Drawing">
187
+    <value>Arial, 8.25pt</value>
188
+  </data>
189
+  <data name="panel_day.Location" type="System.Drawing.Point, System.Drawing">
190
+    <value>0, 0</value>
191
+  </data>
192
+  <data name="panel_day.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
193
+    <value>0, 0, 0, 0</value>
194
+  </data>
195
+  <data name="panel_day.Size" type="System.Drawing.Size, System.Drawing">
196
+    <value>378, 266</value>
197
+  </data>
198
+  <data name="panel_day.TabIndex" type="System.Int32, mscorlib">
199
+    <value>2</value>
200
+  </data>
201
+  <data name="&gt;&gt;panel_day.Name" xml:space="preserve">
202
+    <value>panel_day</value>
203
+  </data>
204
+  <data name="&gt;&gt;panel_day.Type" xml:space="preserve">
205
+    <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
206
+  </data>
207
+  <data name="&gt;&gt;panel_day.Parent" xml:space="preserve">
208
+    <value>splitContainer1.Panel2</value>
209
+  </data>
210
+  <data name="&gt;&gt;panel_day.ZOrder" xml:space="preserve">
211
+    <value>0</value>
212
+  </data>
213
+  <data name="&gt;&gt;splitContainer1.Panel2.Name" xml:space="preserve">
214
+    <value>splitContainer1.Panel2</value>
215
+  </data>
216
+  <data name="&gt;&gt;splitContainer1.Panel2.Type" xml:space="preserve">
217
+    <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
218
+  </data>
219
+  <data name="&gt;&gt;splitContainer1.Panel2.Parent" xml:space="preserve">
220
+    <value>splitContainer1</value>
221
+  </data>
222
+  <data name="&gt;&gt;splitContainer1.Panel2.ZOrder" xml:space="preserve">
223
+    <value>1</value>
224
+  </data>
225
+  <data name="splitContainer1.Size" type="System.Drawing.Size, System.Drawing">
226
+    <value>378, 324</value>
227
+  </data>
228
+  <data name="splitContainer1.SplitterDistance" type="System.Int32, mscorlib">
229
+    <value>57</value>
230
+  </data>
231
+  <data name="splitContainer1.SplitterWidth" type="System.Int32, mscorlib">
232
+    <value>1</value>
233
+  </data>
234
+  <data name="splitContainer1.TabIndex" type="System.Int32, mscorlib">
235
+    <value>1</value>
236
+  </data>
237
+  <data name="&gt;&gt;splitContainer1.Name" xml:space="preserve">
238
+    <value>splitContainer1</value>
239
+  </data>
240
+  <data name="&gt;&gt;splitContainer1.Type" xml:space="preserve">
241
+    <value>ComponentFactory.Krypton.Toolkit.KryptonSplitContainer , System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
242
+  </data>
243
+  <data name="&gt;&gt;splitContainer1.Parent" xml:space="preserve">
244
+    <value>$this</value>
245
+  </data>
246
+  <data name="&gt;&gt;splitContainer1.ZOrder" xml:space="preserve">
247
+    <value>0</value>
248
+  </data>
249
+  <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
250
+    <value>True</value>
251
+  </metadata>
252
+  <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
253
+    <value>96, 96</value>
254
+  </data>
255
+  <data name="$this.Size" type="System.Drawing.Size, System.Drawing">
256
+    <value>378, 324</value>
257
+  </data>
258
+  <data name="&gt;&gt;$this.Name" xml:space="preserve">
259
+    <value>CustomCalendar</value>
260
+  </data>
261
+  <data name="&gt;&gt;$this.Type" xml:space="preserve">
262
+    <value>System.Windows.Forms.UserControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
263
+  </data>
264
+</root>

+ 0 - 40
Bluecell_ERP/Form1.Designer.cs

@@ -1,40 +0,0 @@
1
-namespace Bluecell_ERP
2
-{
3
-    partial class Form1
4
-    {
5
-        /// <summary>
6
-        /// 필수 디자이너 변수입니다.
7
-        /// </summary>
8
-        private System.ComponentModel.IContainer components = null;
9
-
10
-        /// <summary>
11
-        /// 사용 중인 모든 리소스를 정리합니다.
12
-        /// </summary>
13
-        /// <param name="disposing">관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.</param>
14
-        protected override void Dispose(bool disposing)
15
-        {
16
-            if (disposing && (components != null))
17
-            {
18
-                components.Dispose();
19
-            }
20
-            base.Dispose(disposing);
21
-        }
22
-
23
-        #region Windows Form 디자이너에서 생성한 코드
24
-
25
-        /// <summary>
26
-        /// 디자이너 지원에 필요한 메서드입니다. 
27
-        /// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
28
-        /// </summary>
29
-        private void InitializeComponent()
30
-        {
31
-            this.components = new System.ComponentModel.Container();
32
-            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
33
-            this.ClientSize = new System.Drawing.Size(800, 450);
34
-            this.Text = "Form1";
35
-        }
36
-
37
-        #endregion
38
-    }
39
-}
40
-

+ 148 - 0
Bluecell_ERP/Login.Designer.cs

@@ -0,0 +1,148 @@
1
+namespace Bluecell_ERP
2
+{
3
+    partial class Login
4
+    {
5
+        /// <summary>
6
+        /// 필수 디자이너 변수입니다.
7
+        /// </summary>
8
+        private System.ComponentModel.IContainer components = null;
9
+
10
+        /// <summary>
11
+        /// 사용 중인 모든 리소스를 정리합니다.
12
+        /// </summary>
13
+        /// <param name="disposing">관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.</param>
14
+        protected override void Dispose(bool disposing)
15
+        {
16
+            if (disposing && (components != null))
17
+            {
18
+                components.Dispose();
19
+            }
20
+            base.Dispose(disposing);
21
+        }
22
+
23
+        #region Windows Form 디자이너에서 생성한 코드
24
+
25
+        /// <summary>
26
+        /// 디자이너 지원에 필요한 메서드입니다. 
27
+        /// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
28
+        /// </summary>
29
+        private void InitializeComponent()
30
+        {
31
+            this.panel1 = new System.Windows.Forms.Panel();
32
+            this.button_Signup = new System.Windows.Forms.Button();
33
+            this.button_Login = new System.Windows.Forms.Button();
34
+            this.textBox_ID = new System.Windows.Forms.TextBox();
35
+            this.textBox1 = new System.Windows.Forms.TextBox();
36
+            this.label3 = new System.Windows.Forms.Label();
37
+            this.label2 = new System.Windows.Forms.Label();
38
+            this.pictureBox1 = new System.Windows.Forms.PictureBox();
39
+            this.panel1.SuspendLayout();
40
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
41
+            this.SuspendLayout();
42
+            // 
43
+            // panel1
44
+            // 
45
+            this.panel1.BackColor = System.Drawing.Color.White;
46
+            this.panel1.Controls.Add(this.button_Signup);
47
+            this.panel1.Controls.Add(this.button_Login);
48
+            this.panel1.Controls.Add(this.textBox_ID);
49
+            this.panel1.Controls.Add(this.textBox1);
50
+            this.panel1.Controls.Add(this.label3);
51
+            this.panel1.Controls.Add(this.label2);
52
+            this.panel1.Controls.Add(this.pictureBox1);
53
+            this.panel1.Location = new System.Drawing.Point(-3, -6);
54
+            this.panel1.Name = "panel1";
55
+            this.panel1.Size = new System.Drawing.Size(803, 486);
56
+            this.panel1.TabIndex = 1;
57
+            this.panel1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.panel1_MouseDown);
58
+            // 
59
+            // button_Signup
60
+            // 
61
+            this.button_Signup.Location = new System.Drawing.Point(528, 289);
62
+            this.button_Signup.Name = "button_Signup";
63
+            this.button_Signup.Size = new System.Drawing.Size(77, 66);
64
+            this.button_Signup.TabIndex = 4;
65
+            this.button_Signup.Text = "Sing up";
66
+            this.button_Signup.UseVisualStyleBackColor = true;
67
+            this.button_Signup.Click += new System.EventHandler(this.button_Signup_Click);
68
+            // 
69
+            // button_Login
70
+            // 
71
+            this.button_Login.Location = new System.Drawing.Point(446, 289);
72
+            this.button_Login.Name = "button_Login";
73
+            this.button_Login.Size = new System.Drawing.Size(77, 66);
74
+            this.button_Login.TabIndex = 4;
75
+            this.button_Login.Text = "Login";
76
+            this.button_Login.UseVisualStyleBackColor = true;
77
+            this.button_Login.Click += new System.EventHandler(this.button_Login_Click);
78
+            // 
79
+            // textBox_ID
80
+            // 
81
+            this.textBox_ID.Location = new System.Drawing.Point(272, 296);
82
+            this.textBox_ID.Name = "textBox_ID";
83
+            this.textBox_ID.Size = new System.Drawing.Size(100, 21);
84
+            this.textBox_ID.TabIndex = 3;
85
+            // 
86
+            // textBox1
87
+            // 
88
+            this.textBox1.Location = new System.Drawing.Point(272, 334);
89
+            this.textBox1.Name = "textBox1";
90
+            this.textBox1.Size = new System.Drawing.Size(100, 21);
91
+            this.textBox1.TabIndex = 3;
92
+            // 
93
+            // label3
94
+            // 
95
+            this.label3.AutoSize = true;
96
+            this.label3.Location = new System.Drawing.Point(225, 339);
97
+            this.label3.Name = "label3";
98
+            this.label3.Size = new System.Drawing.Size(23, 12);
99
+            this.label3.TabIndex = 2;
100
+            this.label3.Text = "PW";
101
+            // 
102
+            // label2
103
+            // 
104
+            this.label2.AutoSize = true;
105
+            this.label2.Location = new System.Drawing.Point(227, 301);
106
+            this.label2.Name = "label2";
107
+            this.label2.Size = new System.Drawing.Size(16, 12);
108
+            this.label2.TabIndex = 2;
109
+            this.label2.Text = "ID";
110
+            // 
111
+            // pictureBox1
112
+            // 
113
+            this.pictureBox1.Image = global::Bluecell_ERP.Properties.Resources.블루셀_CI_최종안;
114
+            this.pictureBox1.Location = new System.Drawing.Point(169, 75);
115
+            this.pictureBox1.Name = "pictureBox1";
116
+            this.pictureBox1.Size = new System.Drawing.Size(436, 124);
117
+            this.pictureBox1.TabIndex = 0;
118
+            this.pictureBox1.TabStop = false;
119
+            // 
120
+            // Login
121
+            // 
122
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
123
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
124
+            this.ClientSize = new System.Drawing.Size(800, 480);
125
+            this.Controls.Add(this.panel1);
126
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
127
+            this.Name = "Login";
128
+            this.Text = "Form1";
129
+            this.panel1.ResumeLayout(false);
130
+            this.panel1.PerformLayout();
131
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
132
+            this.ResumeLayout(false);
133
+
134
+        }
135
+
136
+        #endregion
137
+
138
+        private System.Windows.Forms.Panel panel1;
139
+        private System.Windows.Forms.Button button_Login;
140
+        private System.Windows.Forms.TextBox textBox_ID;
141
+        private System.Windows.Forms.TextBox textBox1;
142
+        private System.Windows.Forms.Label label3;
143
+        private System.Windows.Forms.Label label2;
144
+        private System.Windows.Forms.PictureBox pictureBox1;
145
+        private System.Windows.Forms.Button button_Signup;
146
+    }
147
+}
148
+

+ 127 - 0
Bluecell_ERP/Login.cs

@@ -0,0 +1,127 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.ComponentModel;
4
+using System.Data;
5
+using System.Drawing;
6
+using System.Linq;
7
+using System.Text;
8
+using System.Threading.Tasks;
9
+using System.Windows.Forms;
10
+
11
+using MySql.Data; // 필수
12
+using MySql.Data.MySqlClient; // 필수
13
+
14
+namespace Bluecell_ERP
15
+{
16
+    public partial class Login : Form
17
+    {
18
+        string connstr = "Server=bluecell.synology.me;Port=3307;Database=test;Uid=june9152;Pwd=Qkrdudwns1!";
19
+        public Login()
20
+        {
21
+            InitializeComponent();
22
+        }
23
+
24
+        private void button_Login_Click(object sender, EventArgs e)
25
+        {
26
+            
27
+            MySqlConnection conn = new MySqlConnection(connstr);
28
+
29
+            MySqlCommand cmd = conn.CreateCommand();
30
+
31
+            string sql = @"select username from usr WHERE username='"+ textBox_ID.Text + @"'";
32
+            cmd.CommandText = sql;
33
+            try
34
+            {
35
+                conn.Open();
36
+            }
37
+            catch (Exception ex)
38
+            {
39
+                MessageBox.Show(ex.Message);
40
+            }
41
+            MySqlDataReader reader = cmd.ExecuteReader();
42
+            if (reader.Read())
43
+            {
44
+                MessageBox.Show(reader["username"].ToString());
45
+            }
46
+            else
47
+            {
48
+                MessageBox.Show("사용 가능한 UserName 입니다");
49
+            }
50
+#if true
51
+            Menu menu = new Menu();
52
+            menu.Show();
53
+            this.Close();
54
+#endif
55
+        }
56
+        public const int WM_NCLBUTTONDOWN = 0xA1;
57
+        public const int HT_CAPTION = 0x2;
58
+
59
+        [System.Runtime.InteropServices.DllImportAttribute("user32.dll")]
60
+        public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
61
+        [System.Runtime.InteropServices.DllImportAttribute("user32.dll")]
62
+        public static extern bool ReleaseCapture();
63
+        private void panel1_MouseDown(object sender, MouseEventArgs e)
64
+        {
65
+            if (e.Button == MouseButtons.Left)
66
+            {
67
+                ReleaseCapture();
68
+                SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
69
+            }
70
+        }
71
+
72
+        public void MariaDB_SelectTest()
73
+        {
74
+            MySqlConnection conn = new MySqlConnection(connstr);
75
+
76
+            MySqlCommand cmd = conn.CreateCommand();
77
+
78
+            string sql = "Select * from usr where id = 1";
79
+            cmd.CommandText = sql;
80
+            try
81
+            {
82
+                conn.Open();
83
+            }
84
+            catch (Exception ex)
85
+            {
86
+                MessageBox.Show(ex.Message);
87
+            }
88
+            MySqlDataReader reader = cmd.ExecuteReader();
89
+            while (reader.Read())
90
+            {
91
+                MessageBox.Show(reader["username"].ToString() + reader["regtime"].ToString());
92
+            }
93
+        }
94
+
95
+#if false
96
+        public void MariaDB_SelectTest()
97
+        {
98
+            string connStr = string.Format(@"server=192.168.0.35;user=june9152;password=Qkrdudwns1!;database=mysql");
99
+            MySqlConnection conn = new MySqlConnection(connStr);
100
+            try
101
+            {
102
+                conn.Open();
103
+                string sql = "select name from city where id = 2331";
104
+                MySqlCommand cmd = new MySqlCommand(sql, conn);
105
+                MySqlDataReader reader = cmd.ExecuteReader();
106
+                while (reader.Read())
107
+                {
108
+                    MessageBox.Show(reader["Name"].ToString());
109
+                }
110
+                reader.Close();
111
+                conn.Close();
112
+            }
113
+            catch
114
+            {
115
+                conn.Close();
116
+                MessageBox.Show("MySQL 연결 실패");
117
+            }
118
+        }
119
+#endif
120
+        private void button_Signup_Click(object sender, EventArgs e)
121
+        {
122
+            //   MariaDB_SelectTest();
123
+            Signup_Form signup_Form = new Signup_Form();
124
+            signup_Form.ShowDialog();
125
+        }
126
+    }
127
+}

+ 120 - 0
Bluecell_ERP/Login.resx

@@ -0,0 +1,120 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<root>
3
+  <!-- 
4
+    Microsoft ResX Schema 
5
+    
6
+    Version 2.0
7
+    
8
+    The primary goals of this format is to allow a simple XML format 
9
+    that is mostly human readable. The generation and parsing of the 
10
+    various data types are done through the TypeConverter classes 
11
+    associated with the data types.
12
+    
13
+    Example:
14
+    
15
+    ... ado.net/XML headers & schema ...
16
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
+    <resheader name="version">2.0</resheader>
18
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
+    </data>
25
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
+        <comment>This is a comment</comment>
28
+    </data>
29
+                
30
+    There are any number of "resheader" rows that contain simple 
31
+    name/value pairs.
32
+    
33
+    Each data row contains a name, and value. The row also contains a 
34
+    type or mimetype. Type corresponds to a .NET class that support 
35
+    text/value conversion through the TypeConverter architecture. 
36
+    Classes that don't support this are serialized and stored with the 
37
+    mimetype set.
38
+    
39
+    The mimetype is used for serialized objects, and tells the 
40
+    ResXResourceReader how to depersist the object. This is currently not 
41
+    extensible. For a given mimetype the value must be set accordingly:
42
+    
43
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
+    that the ResXResourceWriter will generate, however the reader can 
45
+    read any of the formats listed below.
46
+    
47
+    mimetype: application/x-microsoft.net.object.binary.base64
48
+    value   : The object must be serialized with 
49
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50
+            : and then encoded with base64 encoding.
51
+    
52
+    mimetype: application/x-microsoft.net.object.soap.base64
53
+    value   : The object must be serialized with 
54
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
+            : and then encoded with base64 encoding.
56
+
57
+    mimetype: application/x-microsoft.net.object.bytearray.base64
58
+    value   : The object must be serialized into a byte array 
59
+            : using a System.ComponentModel.TypeConverter
60
+            : and then encoded with base64 encoding.
61
+    -->
62
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
64
+    <xsd:element name="root" msdata:IsDataSet="true">
65
+      <xsd:complexType>
66
+        <xsd:choice maxOccurs="unbounded">
67
+          <xsd:element name="metadata">
68
+            <xsd:complexType>
69
+              <xsd:sequence>
70
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
71
+              </xsd:sequence>
72
+              <xsd:attribute name="name" use="required" type="xsd:string" />
73
+              <xsd:attribute name="type" type="xsd:string" />
74
+              <xsd:attribute name="mimetype" type="xsd:string" />
75
+              <xsd:attribute ref="xml:space" />
76
+            </xsd:complexType>
77
+          </xsd:element>
78
+          <xsd:element name="assembly">
79
+            <xsd:complexType>
80
+              <xsd:attribute name="alias" type="xsd:string" />
81
+              <xsd:attribute name="name" type="xsd:string" />
82
+            </xsd:complexType>
83
+          </xsd:element>
84
+          <xsd:element name="data">
85
+            <xsd:complexType>
86
+              <xsd:sequence>
87
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
88
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
89
+              </xsd:sequence>
90
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
91
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
92
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
+              <xsd:attribute ref="xml:space" />
94
+            </xsd:complexType>
95
+          </xsd:element>
96
+          <xsd:element name="resheader">
97
+            <xsd:complexType>
98
+              <xsd:sequence>
99
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
100
+              </xsd:sequence>
101
+              <xsd:attribute name="name" type="xsd:string" use="required" />
102
+            </xsd:complexType>
103
+          </xsd:element>
104
+        </xsd:choice>
105
+      </xsd:complexType>
106
+    </xsd:element>
107
+  </xsd:schema>
108
+  <resheader name="resmimetype">
109
+    <value>text/microsoft-resx</value>
110
+  </resheader>
111
+  <resheader name="version">
112
+    <value>2.0</value>
113
+  </resheader>
114
+  <resheader name="reader">
115
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
+  </resheader>
117
+  <resheader name="writer">
118
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119
+  </resheader>
120
+</root>

+ 581 - 0
Bluecell_ERP/Menu.Designer.cs

@@ -0,0 +1,581 @@
1
+namespace Bluecell_ERP
2
+{
3
+    partial class Menu
4
+    {
5
+        /// <summary>
6
+        /// Required designer variable.
7
+        /// </summary>
8
+        private System.ComponentModel.IContainer components = null;
9
+
10
+        /// <summary>
11
+        /// Clean up any resources being used.
12
+        /// </summary>
13
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
14
+        protected override void Dispose(bool disposing)
15
+        {
16
+            if (disposing && (components != null))
17
+            {
18
+                components.Dispose();
19
+            }
20
+            base.Dispose(disposing);
21
+        }
22
+
23
+        #region Windows Form Designer generated code
24
+
25
+        /// <summary>
26
+        /// Required method for Designer support - do not modify
27
+        /// the contents of this method with the code editor.
28
+        /// </summary>
29
+        private void InitializeComponent()
30
+        {
31
+            this.menuStrip1 = new System.Windows.Forms.MenuStrip();
32
+            this.기준정보ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
33
+            this.사원코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
34
+            this.부서코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
35
+            this.공정코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
36
+            this.거래처코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
37
+            this.품목코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
38
+            this.걸재경로설저ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
39
+            this.기타코드ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
40
+            this.pARTLISTToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
41
+            this.rUNSHEETToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
42
+            this.영업관리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
43
+            this.클래임입고ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
44
+            this.생산의뢰서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
45
+            this.견적서등록ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
46
+            this.pO등록ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
47
+            this.출하요청서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
48
+            this.매출등록ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
49
+            this.수주현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
50
+            this.매출현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
51
+            this.영업자료검색ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
52
+            this.자재관리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
53
+            this.구매견적서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
54
+            this.구매품의서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
55
+            this.자재준비현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
56
+            this.구매외주발주서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
57
+            this.입고처리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
58
+            this.출고처리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
59
+            this.매입계산서ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
60
+            this.구매발주현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
61
+            this.구매입고현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
62
+            this.자재규격변경ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
63
+            this.재고현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
64
+            this.재고변동현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
65
+            this.재고위치ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
66
+            this.월재고현훵ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
67
+            this.생산관리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
68
+            this.구매견적서ToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
69
+            this.구매품의서ToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
70
+            this.자재준비현황ToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
71
+            this.생산실적등록ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
72
+            this.생산완료확인ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
73
+            this.제품수리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
74
+            this.치공구ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
75
+            this.mToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
76
+            this.부적합관리대장ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
77
+            this.계측기관리대장ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
78
+            this.계측기운용현황ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
79
+            this.검수관리대장ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
80
+            this.일일업무보고ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
81
+            this.제품히스토리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
82
+            this.품질관리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
83
+            this.인트라넷ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
84
+            this.경영관리ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
85
+            this.전자결재ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
86
+            this.시스템ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
87
+            this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
88
+            this.customCalendar1 = new exCalendar.CustomCalendar();
89
+            this.menuStrip1.SuspendLayout();
90
+            this.SuspendLayout();
91
+            // 
92
+            // menuStrip1
93
+            // 
94
+            this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
95
+            this.기준정보ToolStripMenuItem,
96
+            this.영업관리ToolStripMenuItem,
97
+            this.자재관리ToolStripMenuItem,
98
+            this.생산관리ToolStripMenuItem,
99
+            this.품질관리ToolStripMenuItem,
100
+            this.인트라넷ToolStripMenuItem,
101
+            this.경영관리ToolStripMenuItem,
102
+            this.전자결재ToolStripMenuItem,
103
+            this.시스템ToolStripMenuItem});
104
+            this.menuStrip1.Location = new System.Drawing.Point(0, 0);
105
+            this.menuStrip1.Name = "menuStrip1";
106
+            this.menuStrip1.Size = new System.Drawing.Size(1005, 24);
107
+            this.menuStrip1.TabIndex = 0;
108
+            this.menuStrip1.Text = "menuStrip1";
109
+            // 
110
+            // 기준정보ToolStripMenuItem
111
+            // 
112
+            this.기준정보ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
113
+            this.사원코드ToolStripMenuItem,
114
+            this.부서코드ToolStripMenuItem,
115
+            this.공정코드ToolStripMenuItem,
116
+            this.거래처코드ToolStripMenuItem,
117
+            this.품목코드ToolStripMenuItem,
118
+            this.걸재경로설저ToolStripMenuItem,
119
+            this.기타코드ToolStripMenuItem,
120
+            this.pARTLISTToolStripMenuItem,
121
+            this.rUNSHEETToolStripMenuItem});
122
+            this.기준정보ToolStripMenuItem.Name = "기준정보ToolStripMenuItem";
123
+            this.기준정보ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
124
+            this.기준정보ToolStripMenuItem.Text = "기준정보";
125
+            // 
126
+            // 사원코드ToolStripMenuItem
127
+            // 
128
+            this.사원코드ToolStripMenuItem.Name = "사원코드ToolStripMenuItem";
129
+            this.사원코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
130
+            this.사원코드ToolStripMenuItem.Text = "사원코드";
131
+            // 
132
+            // 부서코드ToolStripMenuItem
133
+            // 
134
+            this.부서코드ToolStripMenuItem.Name = "부서코드ToolStripMenuItem";
135
+            this.부서코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
136
+            this.부서코드ToolStripMenuItem.Text = "부서코드";
137
+            // 
138
+            // 공정코드ToolStripMenuItem
139
+            // 
140
+            this.공정코드ToolStripMenuItem.Name = "공정코드ToolStripMenuItem";
141
+            this.공정코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
142
+            this.공정코드ToolStripMenuItem.Text = "공정코드";
143
+            // 
144
+            // 거래처코드ToolStripMenuItem
145
+            // 
146
+            this.거래처코드ToolStripMenuItem.Name = "거래처코드ToolStripMenuItem";
147
+            this.거래처코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
148
+            this.거래처코드ToolStripMenuItem.Text = "거래처코드";
149
+            // 
150
+            // 품목코드ToolStripMenuItem
151
+            // 
152
+            this.품목코드ToolStripMenuItem.Name = "품목코드ToolStripMenuItem";
153
+            this.품목코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
154
+            this.품목코드ToolStripMenuItem.Text = "품목코드";
155
+            // 
156
+            // 걸재경로설저ToolStripMenuItem
157
+            // 
158
+            this.걸재경로설저ToolStripMenuItem.Name = "걸재경로설저ToolStripMenuItem";
159
+            this.걸재경로설저ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
160
+            this.걸재경로설저ToolStripMenuItem.Text = "결재경로설정";
161
+            // 
162
+            // 기타코드ToolStripMenuItem
163
+            // 
164
+            this.기타코드ToolStripMenuItem.Name = "기타코드ToolStripMenuItem";
165
+            this.기타코드ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
166
+            this.기타코드ToolStripMenuItem.Text = "기타코드";
167
+            // 
168
+            // pARTLISTToolStripMenuItem
169
+            // 
170
+            this.pARTLISTToolStripMenuItem.Name = "pARTLISTToolStripMenuItem";
171
+            this.pARTLISTToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
172
+            this.pARTLISTToolStripMenuItem.Text = "PARTLIST";
173
+            // 
174
+            // rUNSHEETToolStripMenuItem
175
+            // 
176
+            this.rUNSHEETToolStripMenuItem.Name = "rUNSHEETToolStripMenuItem";
177
+            this.rUNSHEETToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
178
+            this.rUNSHEETToolStripMenuItem.Text = "RUNSHEET";
179
+            // 
180
+            // 영업관리ToolStripMenuItem
181
+            // 
182
+            this.영업관리ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
183
+            this.클래임입고ToolStripMenuItem,
184
+            this.생산의뢰서ToolStripMenuItem,
185
+            this.견적서등록ToolStripMenuItem,
186
+            this.pO등록ToolStripMenuItem,
187
+            this.출하요청서ToolStripMenuItem,
188
+            this.매출등록ToolStripMenuItem,
189
+            this.수주현황ToolStripMenuItem,
190
+            this.매출현황ToolStripMenuItem,
191
+            this.영업자료검색ToolStripMenuItem});
192
+            this.영업관리ToolStripMenuItem.Name = "영업관리ToolStripMenuItem";
193
+            this.영업관리ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
194
+            this.영업관리ToolStripMenuItem.Text = "영업관리";
195
+            // 
196
+            // 클래임입고ToolStripMenuItem
197
+            // 
198
+            this.클래임입고ToolStripMenuItem.Name = "클래임입고ToolStripMenuItem";
199
+            this.클래임입고ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
200
+            this.클래임입고ToolStripMenuItem.Text = "클래임 입고";
201
+            // 
202
+            // 생산의뢰서ToolStripMenuItem
203
+            // 
204
+            this.생산의뢰서ToolStripMenuItem.Name = "생산의뢰서ToolStripMenuItem";
205
+            this.생산의뢰서ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
206
+            this.생산의뢰서ToolStripMenuItem.Text = "생산의뢰서";
207
+            // 
208
+            // 견적서등록ToolStripMenuItem
209
+            // 
210
+            this.견적서등록ToolStripMenuItem.Name = "견적서등록ToolStripMenuItem";
211
+            this.견적서등록ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
212
+            this.견적서등록ToolStripMenuItem.Text = "견적서등록";
213
+            // 
214
+            // pO등록ToolStripMenuItem
215
+            // 
216
+            this.pO등록ToolStripMenuItem.Name = "pO등록ToolStripMenuItem";
217
+            this.pO등록ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
218
+            this.pO등록ToolStripMenuItem.Text = "PO등록";
219
+            // 
220
+            // 출하요청서ToolStripMenuItem
221
+            // 
222
+            this.출하요청서ToolStripMenuItem.Name = "출하요청서ToolStripMenuItem";
223
+            this.출하요청서ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
224
+            this.출하요청서ToolStripMenuItem.Text = "출하요청서";
225
+            // 
226
+            // 매출등록ToolStripMenuItem
227
+            // 
228
+            this.매출등록ToolStripMenuItem.Name = "매출등록ToolStripMenuItem";
229
+            this.매출등록ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
230
+            this.매출등록ToolStripMenuItem.Text = "매출등록";
231
+            // 
232
+            // 수주현황ToolStripMenuItem
233
+            // 
234
+            this.수주현황ToolStripMenuItem.Name = "수주현황ToolStripMenuItem";
235
+            this.수주현황ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
236
+            this.수주현황ToolStripMenuItem.Text = "수주현황";
237
+            // 
238
+            // 매출현황ToolStripMenuItem
239
+            // 
240
+            this.매출현황ToolStripMenuItem.Name = "매출현황ToolStripMenuItem";
241
+            this.매출현황ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
242
+            this.매출현황ToolStripMenuItem.Text = "매출현황";
243
+            // 
244
+            // 영업자료검색ToolStripMenuItem
245
+            // 
246
+            this.영업자료검색ToolStripMenuItem.Name = "영업자료검색ToolStripMenuItem";
247
+            this.영업자료검색ToolStripMenuItem.Size = new System.Drawing.Size(146, 22);
248
+            this.영업자료검색ToolStripMenuItem.Text = "영업자료검색";
249
+            // 
250
+            // 자재관리ToolStripMenuItem
251
+            // 
252
+            this.자재관리ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
253
+            this.구매견적서ToolStripMenuItem,
254
+            this.구매품의서ToolStripMenuItem,
255
+            this.자재준비현황ToolStripMenuItem,
256
+            this.구매외주발주서ToolStripMenuItem,
257
+            this.입고처리ToolStripMenuItem,
258
+            this.출고처리ToolStripMenuItem,
259
+            this.매입계산서ToolStripMenuItem,
260
+            this.구매발주현황ToolStripMenuItem,
261
+            this.구매입고현황ToolStripMenuItem,
262
+            this.자재규격변경ToolStripMenuItem,
263
+            this.재고현황ToolStripMenuItem,
264
+            this.재고변동현황ToolStripMenuItem,
265
+            this.재고위치ToolStripMenuItem,
266
+            this.월재고현훵ToolStripMenuItem});
267
+            this.자재관리ToolStripMenuItem.Name = "자재관리ToolStripMenuItem";
268
+            this.자재관리ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
269
+            this.자재관리ToolStripMenuItem.Text = "자재관리";
270
+            // 
271
+            // 구매견적서ToolStripMenuItem
272
+            // 
273
+            this.구매견적서ToolStripMenuItem.Name = "구매견적서ToolStripMenuItem";
274
+            this.구매견적서ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
275
+            this.구매견적서ToolStripMenuItem.Text = "구매견적서";
276
+            // 
277
+            // 구매품의서ToolStripMenuItem
278
+            // 
279
+            this.구매품의서ToolStripMenuItem.Name = "구매품의서ToolStripMenuItem";
280
+            this.구매품의서ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
281
+            this.구매품의서ToolStripMenuItem.Text = "구매품의서";
282
+            // 
283
+            // 자재준비현황ToolStripMenuItem
284
+            // 
285
+            this.자재준비현황ToolStripMenuItem.Name = "자재준비현황ToolStripMenuItem";
286
+            this.자재준비현황ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
287
+            this.자재준비현황ToolStripMenuItem.Text = "자재준비현황";
288
+            // 
289
+            // 구매외주발주서ToolStripMenuItem
290
+            // 
291
+            this.구매외주발주서ToolStripMenuItem.Name = "구매외주발주서ToolStripMenuItem";
292
+            this.구매외주발주서ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
293
+            this.구매외주발주서ToolStripMenuItem.Text = "구매,외주 발주서";
294
+            // 
295
+            // 입고처리ToolStripMenuItem
296
+            // 
297
+            this.입고처리ToolStripMenuItem.Name = "입고처리ToolStripMenuItem";
298
+            this.입고처리ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
299
+            this.입고처리ToolStripMenuItem.Text = "입고처리";
300
+            // 
301
+            // 출고처리ToolStripMenuItem
302
+            // 
303
+            this.출고처리ToolStripMenuItem.Name = "출고처리ToolStripMenuItem";
304
+            this.출고처리ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
305
+            this.출고처리ToolStripMenuItem.Text = "출고처리";
306
+            // 
307
+            // 매입계산서ToolStripMenuItem
308
+            // 
309
+            this.매입계산서ToolStripMenuItem.Name = "매입계산서ToolStripMenuItem";
310
+            this.매입계산서ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
311
+            this.매입계산서ToolStripMenuItem.Text = "매입계산서";
312
+            // 
313
+            // 구매발주현황ToolStripMenuItem
314
+            // 
315
+            this.구매발주현황ToolStripMenuItem.Name = "구매발주현황ToolStripMenuItem";
316
+            this.구매발주현황ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
317
+            this.구매발주현황ToolStripMenuItem.Text = "구매발주현황";
318
+            // 
319
+            // 구매입고현황ToolStripMenuItem
320
+            // 
321
+            this.구매입고현황ToolStripMenuItem.Name = "구매입고현황ToolStripMenuItem";
322
+            this.구매입고현황ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
323
+            this.구매입고현황ToolStripMenuItem.Text = "구매입고현황";
324
+            // 
325
+            // 자재규격변경ToolStripMenuItem
326
+            // 
327
+            this.자재규격변경ToolStripMenuItem.Name = "자재규격변경ToolStripMenuItem";
328
+            this.자재규격변경ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
329
+            this.자재규격변경ToolStripMenuItem.Text = "자재규격변경";
330
+            // 
331
+            // 재고현황ToolStripMenuItem
332
+            // 
333
+            this.재고현황ToolStripMenuItem.Name = "재고현황ToolStripMenuItem";
334
+            this.재고현황ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
335
+            this.재고현황ToolStripMenuItem.Text = "재고현황";
336
+            // 
337
+            // 재고변동현황ToolStripMenuItem
338
+            // 
339
+            this.재고변동현황ToolStripMenuItem.Name = "재고변동현황ToolStripMenuItem";
340
+            this.재고변동현황ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
341
+            this.재고변동현황ToolStripMenuItem.Text = "재고변동현황";
342
+            // 
343
+            // 재고위치ToolStripMenuItem
344
+            // 
345
+            this.재고위치ToolStripMenuItem.Name = "재고위치ToolStripMenuItem";
346
+            this.재고위치ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
347
+            this.재고위치ToolStripMenuItem.Text = "재고위치";
348
+            // 
349
+            // 월재고현훵ToolStripMenuItem
350
+            // 
351
+            this.월재고현훵ToolStripMenuItem.Name = "월재고현훵ToolStripMenuItem";
352
+            this.월재고현훵ToolStripMenuItem.Size = new System.Drawing.Size(165, 22);
353
+            this.월재고현훵ToolStripMenuItem.Text = "월 재고현황";
354
+            // 
355
+            // 생산관리ToolStripMenuItem
356
+            // 
357
+            this.생산관리ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
358
+            this.구매견적서ToolStripMenuItem1,
359
+            this.구매품의서ToolStripMenuItem1,
360
+            this.자재준비현황ToolStripMenuItem1,
361
+            this.생산실적등록ToolStripMenuItem,
362
+            this.생산완료확인ToolStripMenuItem,
363
+            this.제품수리ToolStripMenuItem,
364
+            this.치공구ToolStripMenuItem,
365
+            this.mToolStripMenuItem,
366
+            this.부적합관리대장ToolStripMenuItem,
367
+            this.계측기관리대장ToolStripMenuItem,
368
+            this.계측기운용현황ToolStripMenuItem,
369
+            this.검수관리대장ToolStripMenuItem,
370
+            this.일일업무보고ToolStripMenuItem,
371
+            this.제품히스토리ToolStripMenuItem});
372
+            this.생산관리ToolStripMenuItem.Name = "생산관리ToolStripMenuItem";
373
+            this.생산관리ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
374
+            this.생산관리ToolStripMenuItem.Text = "생산관리";
375
+            // 
376
+            // 구매견적서ToolStripMenuItem1
377
+            // 
378
+            this.구매견적서ToolStripMenuItem1.Name = "구매견적서ToolStripMenuItem1";
379
+            this.구매견적서ToolStripMenuItem1.Size = new System.Drawing.Size(196, 22);
380
+            this.구매견적서ToolStripMenuItem1.Text = "생산모니터링";
381
+            // 
382
+            // 구매품의서ToolStripMenuItem1
383
+            // 
384
+            this.구매품의서ToolStripMenuItem1.Name = "구매품의서ToolStripMenuItem1";
385
+            this.구매품의서ToolStripMenuItem1.Size = new System.Drawing.Size(196, 22);
386
+            this.구매품의서ToolStripMenuItem1.Text = "양산계획표";
387
+            // 
388
+            // 자재준비현황ToolStripMenuItem1
389
+            // 
390
+            this.자재준비현황ToolStripMenuItem1.Name = "자재준비현황ToolStripMenuItem1";
391
+            this.자재준비현황ToolStripMenuItem1.Size = new System.Drawing.Size(196, 22);
392
+            this.자재준비현황ToolStripMenuItem1.Text = "자재투입";
393
+            // 
394
+            // 생산실적등록ToolStripMenuItem
395
+            // 
396
+            this.생산실적등록ToolStripMenuItem.Name = "생산실적등록ToolStripMenuItem";
397
+            this.생산실적등록ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
398
+            this.생산실적등록ToolStripMenuItem.Text = "생산실적등록";
399
+            // 
400
+            // 생산완료확인ToolStripMenuItem
401
+            // 
402
+            this.생산완료확인ToolStripMenuItem.Name = "생산완료확인ToolStripMenuItem";
403
+            this.생산완료확인ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
404
+            this.생산완료확인ToolStripMenuItem.Text = "생산완료확인";
405
+            // 
406
+            // 제품수리ToolStripMenuItem
407
+            // 
408
+            this.제품수리ToolStripMenuItem.Name = "제품수리ToolStripMenuItem";
409
+            this.제품수리ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
410
+            this.제품수리ToolStripMenuItem.Text = "제품수리";
411
+            // 
412
+            // 치공구ToolStripMenuItem
413
+            // 
414
+            this.치공구ToolStripMenuItem.Name = "치공구ToolStripMenuItem";
415
+            this.치공구ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
416
+            this.치공구ToolStripMenuItem.Text = "치공구/지그 관리";
417
+            // 
418
+            // mToolStripMenuItem
419
+            // 
420
+            this.mToolStripMenuItem.Name = "mToolStripMenuItem";
421
+            this.mToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
422
+            this.mToolStripMenuItem.Text = "4M 변경신청 관리대장";
423
+            // 
424
+            // 부적합관리대장ToolStripMenuItem
425
+            // 
426
+            this.부적합관리대장ToolStripMenuItem.Name = "부적합관리대장ToolStripMenuItem";
427
+            this.부적합관리대장ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
428
+            this.부적합관리대장ToolStripMenuItem.Text = "부적합 관리대장";
429
+            // 
430
+            // 계측기관리대장ToolStripMenuItem
431
+            // 
432
+            this.계측기관리대장ToolStripMenuItem.Name = "계측기관리대장ToolStripMenuItem";
433
+            this.계측기관리대장ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
434
+            this.계측기관리대장ToolStripMenuItem.Text = "계측기 관리대장";
435
+            // 
436
+            // 계측기운용현황ToolStripMenuItem
437
+            // 
438
+            this.계측기운용현황ToolStripMenuItem.Name = "계측기운용현황ToolStripMenuItem";
439
+            this.계측기운용현황ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
440
+            this.계측기운용현황ToolStripMenuItem.Text = "계측기 운용현황";
441
+            // 
442
+            // 검수관리대장ToolStripMenuItem
443
+            // 
444
+            this.검수관리대장ToolStripMenuItem.Name = "검수관리대장ToolStripMenuItem";
445
+            this.검수관리대장ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
446
+            this.검수관리대장ToolStripMenuItem.Text = "검수관리대장";
447
+            // 
448
+            // 일일업무보고ToolStripMenuItem
449
+            // 
450
+            this.일일업무보고ToolStripMenuItem.Name = "일일업무보고ToolStripMenuItem";
451
+            this.일일업무보고ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
452
+            this.일일업무보고ToolStripMenuItem.Text = "일일업무보고";
453
+            // 
454
+            // 제품히스토리ToolStripMenuItem
455
+            // 
456
+            this.제품히스토리ToolStripMenuItem.Name = "제품히스토리ToolStripMenuItem";
457
+            this.제품히스토리ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
458
+            this.제품히스토리ToolStripMenuItem.Text = "제품 히스토리";
459
+            // 
460
+            // 품질관리ToolStripMenuItem
461
+            // 
462
+            this.품질관리ToolStripMenuItem.Name = "품질관리ToolStripMenuItem";
463
+            this.품질관리ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
464
+            this.품질관리ToolStripMenuItem.Text = "품질관리";
465
+            // 
466
+            // 인트라넷ToolStripMenuItem
467
+            // 
468
+            this.인트라넷ToolStripMenuItem.Name = "인트라넷ToolStripMenuItem";
469
+            this.인트라넷ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
470
+            this.인트라넷ToolStripMenuItem.Text = "인트라넷";
471
+            // 
472
+            // 경영관리ToolStripMenuItem
473
+            // 
474
+            this.경영관리ToolStripMenuItem.Name = "경영관리ToolStripMenuItem";
475
+            this.경영관리ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
476
+            this.경영관리ToolStripMenuItem.Text = "경영관리";
477
+            // 
478
+            // 전자결재ToolStripMenuItem
479
+            // 
480
+            this.전자결재ToolStripMenuItem.Name = "전자결재ToolStripMenuItem";
481
+            this.전자결재ToolStripMenuItem.Size = new System.Drawing.Size(67, 20);
482
+            this.전자결재ToolStripMenuItem.Text = "전자결재";
483
+            // 
484
+            // 시스템ToolStripMenuItem
485
+            // 
486
+            this.시스템ToolStripMenuItem.Name = "시스템ToolStripMenuItem";
487
+            this.시스템ToolStripMenuItem.Size = new System.Drawing.Size(55, 20);
488
+            this.시스템ToolStripMenuItem.Text = "시스템";
489
+            // 
490
+            // customCalendar1
491
+            // 
492
+            this.customCalendar1.dutyFontSize = 0F;
493
+            this.customCalendar1.Location = new System.Drawing.Point(0, 27);
494
+            this.customCalendar1.MenuStrip = null;
495
+            this.customCalendar1.Name = "customCalendar1";
496
+            this.customCalendar1.schedulerFontSize = 0F;
497
+            this.customCalendar1.SelectedDate = new System.DateTime(2020, 1, 1, 0, 0, 0, 0);
498
+            this.customCalendar1.Size = new System.Drawing.Size(1005, 834);
499
+            this.customCalendar1.TabIndex = 1;
500
+            this.customCalendar1.UserGrade = ((long)(0));
501
+            this.customCalendar1.UserName = null;
502
+            // 
503
+            // Menu
504
+            // 
505
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
506
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
507
+            this.ClientSize = new System.Drawing.Size(1005, 864);
508
+            this.Controls.Add(this.customCalendar1);
509
+            this.Controls.Add(this.menuStrip1);
510
+            this.MainMenuStrip = this.menuStrip1;
511
+            this.Name = "Menu";
512
+            this.Text = "Menu";
513
+            this.menuStrip1.ResumeLayout(false);
514
+            this.menuStrip1.PerformLayout();
515
+            this.ResumeLayout(false);
516
+            this.PerformLayout();
517
+
518
+        }
519
+
520
+        #endregion
521
+
522
+        private System.Windows.Forms.MenuStrip menuStrip1;
523
+        private System.Windows.Forms.ToolStripMenuItem 기준정보ToolStripMenuItem;
524
+        private System.Windows.Forms.ToolStripMenuItem 사원코드ToolStripMenuItem;
525
+        private System.Windows.Forms.ToolStripMenuItem 부서코드ToolStripMenuItem;
526
+        private System.Windows.Forms.ToolStripMenuItem 공정코드ToolStripMenuItem;
527
+        private System.Windows.Forms.ToolStripMenuItem 거래처코드ToolStripMenuItem;
528
+        private System.Windows.Forms.ToolStripMenuItem 품목코드ToolStripMenuItem;
529
+        private System.Windows.Forms.ToolStripMenuItem 걸재경로설저ToolStripMenuItem;
530
+        private System.Windows.Forms.ToolStripMenuItem 기타코드ToolStripMenuItem;
531
+        private System.Windows.Forms.ToolStripMenuItem pARTLISTToolStripMenuItem;
532
+        private System.Windows.Forms.ToolStripMenuItem rUNSHEETToolStripMenuItem;
533
+        private System.Windows.Forms.ToolStripMenuItem 영업관리ToolStripMenuItem;
534
+        private System.Windows.Forms.ToolStripMenuItem 클래임입고ToolStripMenuItem;
535
+        private System.Windows.Forms.ToolStripMenuItem 자재관리ToolStripMenuItem;
536
+        private System.Windows.Forms.ToolStripMenuItem 생산관리ToolStripMenuItem;
537
+        private System.Windows.Forms.ToolStripMenuItem 품질관리ToolStripMenuItem;
538
+        private System.Windows.Forms.ToolStripMenuItem 인트라넷ToolStripMenuItem;
539
+        private System.Windows.Forms.ToolStripMenuItem 경영관리ToolStripMenuItem;
540
+        private System.Windows.Forms.ToolStripMenuItem 전자결재ToolStripMenuItem;
541
+        private System.Windows.Forms.ToolStripMenuItem 시스템ToolStripMenuItem;
542
+        private System.Windows.Forms.ToolStripMenuItem 생산의뢰서ToolStripMenuItem;
543
+        private System.Windows.Forms.ToolStripMenuItem 견적서등록ToolStripMenuItem;
544
+        private System.Windows.Forms.ToolStripMenuItem pO등록ToolStripMenuItem;
545
+        private System.Windows.Forms.ToolStripMenuItem 출하요청서ToolStripMenuItem;
546
+        private System.Windows.Forms.ToolStripMenuItem 매출등록ToolStripMenuItem;
547
+        private System.Windows.Forms.ToolStripMenuItem 수주현황ToolStripMenuItem;
548
+        private System.Windows.Forms.ToolStripMenuItem 매출현황ToolStripMenuItem;
549
+        private System.Windows.Forms.ToolStripMenuItem 영업자료검색ToolStripMenuItem;
550
+        private System.Windows.Forms.ToolStripMenuItem 구매견적서ToolStripMenuItem;
551
+        private System.Windows.Forms.ToolStripMenuItem 구매품의서ToolStripMenuItem;
552
+        private System.Windows.Forms.ToolStripMenuItem 자재준비현황ToolStripMenuItem;
553
+        private System.Windows.Forms.ToolStripMenuItem 구매외주발주서ToolStripMenuItem;
554
+        private System.Windows.Forms.ToolStripMenuItem 입고처리ToolStripMenuItem;
555
+        private System.Windows.Forms.ToolStripMenuItem 출고처리ToolStripMenuItem;
556
+        private System.Windows.Forms.ToolStripMenuItem 매입계산서ToolStripMenuItem;
557
+        private System.Windows.Forms.ToolStripMenuItem 구매발주현황ToolStripMenuItem;
558
+        private System.Windows.Forms.ToolStripMenuItem 구매입고현황ToolStripMenuItem;
559
+        private System.Windows.Forms.ToolStripMenuItem 자재규격변경ToolStripMenuItem;
560
+        private System.Windows.Forms.ToolStripMenuItem 재고현황ToolStripMenuItem;
561
+        private System.Windows.Forms.ToolStripMenuItem 재고변동현황ToolStripMenuItem;
562
+        private System.Windows.Forms.ToolStripMenuItem 재고위치ToolStripMenuItem;
563
+        private System.Windows.Forms.ToolStripMenuItem 월재고현훵ToolStripMenuItem;
564
+        private System.Windows.Forms.ToolStripMenuItem 구매견적서ToolStripMenuItem1;
565
+        private System.Windows.Forms.ToolStripMenuItem 구매품의서ToolStripMenuItem1;
566
+        private System.Windows.Forms.ToolStripMenuItem 자재준비현황ToolStripMenuItem1;
567
+        private System.Windows.Forms.ToolStripMenuItem 생산실적등록ToolStripMenuItem;
568
+        private System.Windows.Forms.ToolStripMenuItem 생산완료확인ToolStripMenuItem;
569
+        private System.Windows.Forms.ToolStripMenuItem 제품수리ToolStripMenuItem;
570
+        private System.Windows.Forms.ToolStripMenuItem 치공구ToolStripMenuItem;
571
+        private System.Windows.Forms.ToolStripMenuItem mToolStripMenuItem;
572
+        private System.Windows.Forms.ToolStripMenuItem 부적합관리대장ToolStripMenuItem;
573
+        private System.Windows.Forms.ToolStripMenuItem 계측기관리대장ToolStripMenuItem;
574
+        private System.Windows.Forms.ToolStripMenuItem 계측기운용현황ToolStripMenuItem;
575
+        private System.Windows.Forms.ToolStripMenuItem 검수관리대장ToolStripMenuItem;
576
+        private System.Windows.Forms.ToolStripMenuItem 일일업무보고ToolStripMenuItem;
577
+        private System.Windows.Forms.ToolStripMenuItem 제품히스토리ToolStripMenuItem;
578
+        private System.ComponentModel.BackgroundWorker backgroundWorker1;
579
+        private exCalendar.CustomCalendar customCalendar1;
580
+    }
581
+}

+ 4 - 2
Bluecell_ERP/Form1.cs

@@ -10,11 +10,13 @@ using System.Windows.Forms;
10 10
 
11 11
 namespace Bluecell_ERP
12 12
 {
13
-    public partial class Form1 : Form
13
+    public partial class Menu : Form
14 14
     {
15
-        public Form1()
15
+        public Menu()
16 16
         {
17 17
             InitializeComponent();
18
+            //ChangeMonth(new DateTime(dtpStartDate.Value.Year, dtpStartDate.Value.Month, 1));
19
+            //LoadCalendarData(new DateTime(dtpStartDate.Value.Year, dtpStartDate.Value.Month, 1));
18 20
         }
19 21
     }
20 22
 }

+ 126 - 0
Bluecell_ERP/Menu.resx

@@ -0,0 +1,126 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<root>
3
+  <!-- 
4
+    Microsoft ResX Schema 
5
+    
6
+    Version 2.0
7
+    
8
+    The primary goals of this format is to allow a simple XML format 
9
+    that is mostly human readable. The generation and parsing of the 
10
+    various data types are done through the TypeConverter classes 
11
+    associated with the data types.
12
+    
13
+    Example:
14
+    
15
+    ... ado.net/XML headers & schema ...
16
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
+    <resheader name="version">2.0</resheader>
18
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
+    </data>
25
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
+        <comment>This is a comment</comment>
28
+    </data>
29
+                
30
+    There are any number of "resheader" rows that contain simple 
31
+    name/value pairs.
32
+    
33
+    Each data row contains a name, and value. The row also contains a 
34
+    type or mimetype. Type corresponds to a .NET class that support 
35
+    text/value conversion through the TypeConverter architecture. 
36
+    Classes that don't support this are serialized and stored with the 
37
+    mimetype set.
38
+    
39
+    The mimetype is used for serialized objects, and tells the 
40
+    ResXResourceReader how to depersist the object. This is currently not 
41
+    extensible. For a given mimetype the value must be set accordingly:
42
+    
43
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
+    that the ResXResourceWriter will generate, however the reader can 
45
+    read any of the formats listed below.
46
+    
47
+    mimetype: application/x-microsoft.net.object.binary.base64
48
+    value   : The object must be serialized with 
49
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50
+            : and then encoded with base64 encoding.
51
+    
52
+    mimetype: application/x-microsoft.net.object.soap.base64
53
+    value   : The object must be serialized with 
54
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
+            : and then encoded with base64 encoding.
56
+
57
+    mimetype: application/x-microsoft.net.object.bytearray.base64
58
+    value   : The object must be serialized into a byte array 
59
+            : using a System.ComponentModel.TypeConverter
60
+            : and then encoded with base64 encoding.
61
+    -->
62
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
64
+    <xsd:element name="root" msdata:IsDataSet="true">
65
+      <xsd:complexType>
66
+        <xsd:choice maxOccurs="unbounded">
67
+          <xsd:element name="metadata">
68
+            <xsd:complexType>
69
+              <xsd:sequence>
70
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
71
+              </xsd:sequence>
72
+              <xsd:attribute name="name" use="required" type="xsd:string" />
73
+              <xsd:attribute name="type" type="xsd:string" />
74
+              <xsd:attribute name="mimetype" type="xsd:string" />
75
+              <xsd:attribute ref="xml:space" />
76
+            </xsd:complexType>
77
+          </xsd:element>
78
+          <xsd:element name="assembly">
79
+            <xsd:complexType>
80
+              <xsd:attribute name="alias" type="xsd:string" />
81
+              <xsd:attribute name="name" type="xsd:string" />
82
+            </xsd:complexType>
83
+          </xsd:element>
84
+          <xsd:element name="data">
85
+            <xsd:complexType>
86
+              <xsd:sequence>
87
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
88
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
89
+              </xsd:sequence>
90
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
91
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
92
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
+              <xsd:attribute ref="xml:space" />
94
+            </xsd:complexType>
95
+          </xsd:element>
96
+          <xsd:element name="resheader">
97
+            <xsd:complexType>
98
+              <xsd:sequence>
99
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
100
+              </xsd:sequence>
101
+              <xsd:attribute name="name" type="xsd:string" use="required" />
102
+            </xsd:complexType>
103
+          </xsd:element>
104
+        </xsd:choice>
105
+      </xsd:complexType>
106
+    </xsd:element>
107
+  </xsd:schema>
108
+  <resheader name="resmimetype">
109
+    <value>text/microsoft-resx</value>
110
+  </resheader>
111
+  <resheader name="version">
112
+    <value>2.0</value>
113
+  </resheader>
114
+  <resheader name="reader">
115
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
+  </resheader>
117
+  <resheader name="writer">
118
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119
+  </resheader>
120
+  <metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
121
+    <value>17, 17</value>
122
+  </metadata>
123
+  <metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
124
+    <value>133, 17</value>
125
+  </metadata>
126
+</root>

+ 3 - 1
Bluecell_ERP/Program.cs

@@ -16,7 +16,9 @@ namespace Bluecell_ERP
16 16
         {
17 17
             Application.EnableVisualStyles();
18 18
             Application.SetCompatibleTextRenderingDefault(false);
19
-            Application.Run(new Form1());
19
+            Application.Run(new Login());
20
+            Menu menu = new Menu();
21
+            Application.Run(menu);
20 22
         }
21 23
     }
22 24
 }

+ 30 - 28
Bluecell_ERP/Properties/Resources.Designer.cs

@@ -8,64 +8,66 @@
8 8
 // </auto-generated>
9 9
 //------------------------------------------------------------------------------
10 10
 
11
-namespace Bluecell_ERP.Properties
12
-{
13
-
14
-
11
+namespace Bluecell_ERP.Properties {
12
+    using System;
13
+    
14
+    
15 15
     /// <summary>
16 16
     ///   지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
17 17
     /// </summary>
18 18
     // 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
19 19
     // 클래스에서 자동으로 생성되었습니다.
20
-    // 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여
21
-    // ResGen을 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
22
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
20
+    // 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
21
+    // 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
22
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
23 23
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 24
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25
-    internal class Resources
26
-    {
27
-
25
+    internal class Resources {
26
+        
28 27
         private static global::System.Resources.ResourceManager resourceMan;
29
-
28
+        
30 29
         private static global::System.Globalization.CultureInfo resourceCulture;
31
-
30
+        
32 31
         [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
33
-        internal Resources()
34
-        {
32
+        internal Resources() {
35 33
         }
36
-
34
+        
37 35
         /// <summary>
38 36
         ///   이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
39 37
         /// </summary>
40 38
         [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
41
-        internal static global::System.Resources.ResourceManager ResourceManager
42
-        {
43
-            get
44
-            {
45
-                if ((resourceMan == null))
46
-                {
39
+        internal static global::System.Resources.ResourceManager ResourceManager {
40
+            get {
41
+                if (object.ReferenceEquals(resourceMan, null)) {
47 42
                     global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Bluecell_ERP.Properties.Resources", typeof(Resources).Assembly);
48 43
                     resourceMan = temp;
49 44
                 }
50 45
                 return resourceMan;
51 46
             }
52 47
         }
53
-
48
+        
54 49
         /// <summary>
55 50
         ///   이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을
56 51
         ///   재정의합니다.
57 52
         /// </summary>
58 53
         [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
59
-        internal static global::System.Globalization.CultureInfo Culture
60
-        {
61
-            get
62
-            {
54
+        internal static global::System.Globalization.CultureInfo Culture {
55
+            get {
63 56
                 return resourceCulture;
64 57
             }
65
-            set
66
-            {
58
+            set {
67 59
                 resourceCulture = value;
68 60
             }
69 61
         }
62
+        
63
+        /// <summary>
64
+        ///   System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
65
+        /// </summary>
66
+        internal static System.Drawing.Bitmap 블루셀_CI_최종안 {
67
+            get {
68
+                object obj = ResourceManager.GetObject("블루셀 CI 최종안", resourceCulture);
69
+                return ((System.Drawing.Bitmap)(obj));
70
+            }
71
+        }
70 72
     }
71 73
 }

+ 12 - 5
Bluecell_ERP/Properties/Resources.resx

@@ -46,7 +46,7 @@
46 46
     
47 47
     mimetype: application/x-microsoft.net.object.binary.base64
48 48
     value   : The object must be serialized with 
49
-            : System.Serialization.Formatters.Binary.BinaryFormatter
49
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50 50
             : and then encoded with base64 encoding.
51 51
     
52 52
     mimetype: application/x-microsoft.net.object.soap.base64
@@ -60,6 +60,7 @@
60 60
             : and then encoded with base64 encoding.
61 61
     -->
62 62
   <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
63 64
     <xsd:element name="root" msdata:IsDataSet="true">
64 65
       <xsd:complexType>
65 66
         <xsd:choice maxOccurs="unbounded">
@@ -68,9 +69,10 @@
68 69
               <xsd:sequence>
69 70
                 <xsd:element name="value" type="xsd:string" minOccurs="0" />
70 71
               </xsd:sequence>
71
-              <xsd:attribute name="name" type="xsd:string" />
72
+              <xsd:attribute name="name" use="required" type="xsd:string" />
72 73
               <xsd:attribute name="type" type="xsd:string" />
73 74
               <xsd:attribute name="mimetype" type="xsd:string" />
75
+              <xsd:attribute ref="xml:space" />
74 76
             </xsd:complexType>
75 77
           </xsd:element>
76 78
           <xsd:element name="assembly">
@@ -85,9 +87,10 @@
85 87
                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
86 88
                 <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
87 89
               </xsd:sequence>
88
-              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
90
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
89 91
               <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
90 92
               <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
+              <xsd:attribute ref="xml:space" />
91 94
             </xsd:complexType>
92 95
           </xsd:element>
93 96
           <xsd:element name="resheader">
@@ -109,9 +112,13 @@
109 112
     <value>2.0</value>
110 113
   </resheader>
111 114
   <resheader name="reader">
112
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
115
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
113 116
   </resheader>
114 117
   <resheader name="writer">
115
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
118
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116 119
   </resheader>
120
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
121
+  <data name="블루셀 CI 최종안" type="System.Resources.ResXFileRef, System.Windows.Forms">
122
+    <value>..\Resources\블루셀 CI 최종안.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
123
+  </data>
117 124
 </root>

BIN
Bluecell_ERP/Resources/블루셀 CI 최종안.jpg


+ 154 - 0
Bluecell_ERP/Signup_Form.Designer.cs

@@ -0,0 +1,154 @@
1
+namespace Bluecell_ERP
2
+{
3
+    partial class Signup_Form
4
+    {
5
+        /// <summary>
6
+        /// Required designer variable.
7
+        /// </summary>
8
+        private System.ComponentModel.IContainer components = null;
9
+
10
+        /// <summary>
11
+        /// Clean up any resources being used.
12
+        /// </summary>
13
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
14
+        protected override void Dispose(bool disposing)
15
+        {
16
+            if (disposing && (components != null))
17
+            {
18
+                components.Dispose();
19
+            }
20
+            base.Dispose(disposing);
21
+        }
22
+
23
+        #region Windows Form Designer generated code
24
+
25
+        /// <summary>
26
+        /// Required method for Designer support - do not modify
27
+        /// the contents of this method with the code editor.
28
+        /// </summary>
29
+        private void InitializeComponent()
30
+        {
31
+            this.panel1 = new System.Windows.Forms.Panel();
32
+            this.button_Signup = new System.Windows.Forms.Button();
33
+            this.textBox_SignupID = new System.Windows.Forms.TextBox();
34
+            this.textBox_SignupPW = new System.Windows.Forms.TextBox();
35
+            this.label3 = new System.Windows.Forms.Label();
36
+            this.label2 = new System.Windows.Forms.Label();
37
+            this.label1 = new System.Windows.Forms.Label();
38
+            this.textBox_Signupusername = new System.Windows.Forms.TextBox();
39
+            this.pictureBox1 = new System.Windows.Forms.PictureBox();
40
+            this.panel1.SuspendLayout();
41
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
42
+            this.SuspendLayout();
43
+            // 
44
+            // panel1
45
+            // 
46
+            this.panel1.BackColor = System.Drawing.Color.White;
47
+            this.panel1.Controls.Add(this.button_Signup);
48
+            this.panel1.Controls.Add(this.textBox_SignupID);
49
+            this.panel1.Controls.Add(this.textBox_Signupusername);
50
+            this.panel1.Controls.Add(this.textBox_SignupPW);
51
+            this.panel1.Controls.Add(this.label1);
52
+            this.panel1.Controls.Add(this.label3);
53
+            this.panel1.Controls.Add(this.label2);
54
+            this.panel1.Controls.Add(this.pictureBox1);
55
+            this.panel1.Location = new System.Drawing.Point(-1, -4);
56
+            this.panel1.Name = "panel1";
57
+            this.panel1.Size = new System.Drawing.Size(803, 472);
58
+            this.panel1.TabIndex = 2;
59
+            // 
60
+            // button_Signup
61
+            // 
62
+            this.button_Signup.Location = new System.Drawing.Point(176, 357);
63
+            this.button_Signup.Name = "button_Signup";
64
+            this.button_Signup.Size = new System.Drawing.Size(427, 58);
65
+            this.button_Signup.TabIndex = 4;
66
+            this.button_Signup.Text = "Sing up";
67
+            this.button_Signup.UseVisualStyleBackColor = true;
68
+            this.button_Signup.Click += new System.EventHandler(this.button_Signup_Click);
69
+            // 
70
+            // textBox_SignupID
71
+            // 
72
+            this.textBox_SignupID.Location = new System.Drawing.Point(269, 215);
73
+            this.textBox_SignupID.Name = "textBox_SignupID";
74
+            this.textBox_SignupID.Size = new System.Drawing.Size(100, 21);
75
+            this.textBox_SignupID.TabIndex = 3;
76
+            // 
77
+            // textBox_SignupPW
78
+            // 
79
+            this.textBox_SignupPW.Location = new System.Drawing.Point(269, 253);
80
+            this.textBox_SignupPW.Name = "textBox_SignupPW";
81
+            this.textBox_SignupPW.Size = new System.Drawing.Size(100, 21);
82
+            this.textBox_SignupPW.TabIndex = 3;
83
+            // 
84
+            // label3
85
+            // 
86
+            this.label3.AutoSize = true;
87
+            this.label3.Location = new System.Drawing.Point(194, 256);
88
+            this.label3.Name = "label3";
89
+            this.label3.Size = new System.Drawing.Size(23, 12);
90
+            this.label3.TabIndex = 2;
91
+            this.label3.Text = "PW";
92
+            // 
93
+            // label2
94
+            // 
95
+            this.label2.AutoSize = true;
96
+            this.label2.Location = new System.Drawing.Point(197, 218);
97
+            this.label2.Name = "label2";
98
+            this.label2.Size = new System.Drawing.Size(16, 12);
99
+            this.label2.TabIndex = 2;
100
+            this.label2.Text = "ID";
101
+            // 
102
+            // label1
103
+            // 
104
+            this.label1.AutoSize = true;
105
+            this.label1.Location = new System.Drawing.Point(174, 292);
106
+            this.label1.Name = "label1";
107
+            this.label1.Size = new System.Drawing.Size(63, 12);
108
+            this.label1.TabIndex = 2;
109
+            this.label1.Text = "Username";
110
+            // 
111
+            // textBox_Signupusername
112
+            // 
113
+            this.textBox_Signupusername.Location = new System.Drawing.Point(269, 289);
114
+            this.textBox_Signupusername.Name = "textBox_Signupusername";
115
+            this.textBox_Signupusername.Size = new System.Drawing.Size(100, 21);
116
+            this.textBox_Signupusername.TabIndex = 3;
117
+            // 
118
+            // pictureBox1
119
+            // 
120
+            this.pictureBox1.Image = global::Bluecell_ERP.Properties.Resources.블루셀_CI_최종안;
121
+            this.pictureBox1.Location = new System.Drawing.Point(169, 75);
122
+            this.pictureBox1.Name = "pictureBox1";
123
+            this.pictureBox1.Size = new System.Drawing.Size(436, 124);
124
+            this.pictureBox1.TabIndex = 0;
125
+            this.pictureBox1.TabStop = false;
126
+            // 
127
+            // Signup_Form
128
+            // 
129
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
130
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
131
+            this.ClientSize = new System.Drawing.Size(800, 465);
132
+            this.Controls.Add(this.panel1);
133
+            this.Name = "Signup_Form";
134
+            this.Text = "Signup_Form";
135
+            this.panel1.ResumeLayout(false);
136
+            this.panel1.PerformLayout();
137
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
138
+            this.ResumeLayout(false);
139
+
140
+        }
141
+
142
+        #endregion
143
+
144
+        private System.Windows.Forms.Panel panel1;
145
+        private System.Windows.Forms.Button button_Signup;
146
+        private System.Windows.Forms.TextBox textBox_SignupID;
147
+        private System.Windows.Forms.TextBox textBox_SignupPW;
148
+        private System.Windows.Forms.Label label3;
149
+        private System.Windows.Forms.Label label2;
150
+        private System.Windows.Forms.PictureBox pictureBox1;
151
+        private System.Windows.Forms.TextBox textBox_Signupusername;
152
+        private System.Windows.Forms.Label label1;
153
+    }
154
+}

+ 100 - 0
Bluecell_ERP/Signup_Form.cs

@@ -0,0 +1,100 @@
1
+using MySql.Data.MySqlClient;
2
+using System;
3
+using System.Collections.Generic;
4
+using System.ComponentModel;
5
+using System.Data;
6
+using System.Drawing;
7
+using System.Linq;
8
+using System.Text;
9
+using System.Threading.Tasks;
10
+using System.Windows.Forms;
11
+
12
+namespace Bluecell_ERP
13
+{
14
+    public partial class Signup_Form : Form
15
+    {
16
+        public Signup_Form()
17
+        {
18
+            InitializeComponent();
19
+        }
20
+        string connstr = "Server=bluecell.synology.me;Port=3307;Database=test;Uid=june9152;Pwd=Qkrdudwns1!";
21
+        private void button_Signup_Click(object sender, EventArgs e)
22
+        {
23
+
24
+            MySqlConnection conn = new MySqlConnection(connstr);
25
+
26
+            MySqlCommand cmd = conn.CreateCommand();
27
+
28
+            string sql = @"select username from usr WHERE username='" + textBox_SignupID.Text + @"'";
29
+            cmd.CommandText = sql;
30
+            try
31
+            {
32
+                conn.Open();
33
+            }
34
+            catch (Exception ex)
35
+            {
36
+                MessageBox.Show(ex.Message);
37
+            }
38
+           
39
+
40
+            MySqlDataReader reader = cmd.ExecuteReader();
41
+            if (reader.Read())
42
+            {
43
+                MessageBox.Show("이미 존재하는 ID 입니다.");
44
+                return;
45
+            }
46
+            else
47
+            {
48
+                conn.Close();
49
+                sql = @"INSERT INTO usr(username, pw)VALUES('" + textBox_SignupID.Text + @"'," + @"'" + textBox_SignupPW.Text + @"');";
50
+                cmd.CommandText = sql;
51
+                try
52
+                {
53
+                    conn.Open();
54
+                }
55
+                catch (Exception ex)
56
+                {
57
+                    MessageBox.Show(ex.Message);
58
+                }
59
+                reader = cmd.ExecuteReader();
60
+           /*     if (reader.Read())
61
+                {
62
+                    MessageBox.Show("이미 존재하는 ID 입니다.");
63
+                    return;
64
+                }
65
+                else*/
66
+                {
67
+               //     MessageBox.Show("사용 가능한 ID 입니다");
68
+                    conn.Close();
69
+                    sql = @"select * from (select ifnull(max(id) + 1,0) from usr) as no";
70
+                    cmd.CommandText = sql;
71
+                    try
72
+                    {
73
+                        conn.Open();
74
+                    }
75
+                    catch (Exception ex)
76
+                    {
77
+                        MessageBox.Show(ex.Message);
78
+                    }
79
+                    reader = cmd.ExecuteReader();
80
+                    if (reader.Read())
81
+                    {
82
+                        MessageBox.Show("이미 존재하는 ID 입니다.");
83
+                        return;
84
+                    }
85
+                    else
86
+                    {
87
+                        //MessageBox.Show("사용 가능한 ID 입니다");
88
+                        return;
89
+                    }
90
+
91
+                }
92
+            }
93
+#if false
94
+            Menu menu = new Menu();
95
+            menu.Show();
96
+            this.Close();
97
+#endif
98
+        }
99
+    }
100
+}

+ 120 - 0
Bluecell_ERP/Signup_Form.resx

@@ -0,0 +1,120 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<root>
3
+  <!-- 
4
+    Microsoft ResX Schema 
5
+    
6
+    Version 2.0
7
+    
8
+    The primary goals of this format is to allow a simple XML format 
9
+    that is mostly human readable. The generation and parsing of the 
10
+    various data types are done through the TypeConverter classes 
11
+    associated with the data types.
12
+    
13
+    Example:
14
+    
15
+    ... ado.net/XML headers & schema ...
16
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
+    <resheader name="version">2.0</resheader>
18
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
+    </data>
25
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
+        <comment>This is a comment</comment>
28
+    </data>
29
+                
30
+    There are any number of "resheader" rows that contain simple 
31
+    name/value pairs.
32
+    
33
+    Each data row contains a name, and value. The row also contains a 
34
+    type or mimetype. Type corresponds to a .NET class that support 
35
+    text/value conversion through the TypeConverter architecture. 
36
+    Classes that don't support this are serialized and stored with the 
37
+    mimetype set.
38
+    
39
+    The mimetype is used for serialized objects, and tells the 
40
+    ResXResourceReader how to depersist the object. This is currently not 
41
+    extensible. For a given mimetype the value must be set accordingly:
42
+    
43
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
+    that the ResXResourceWriter will generate, however the reader can 
45
+    read any of the formats listed below.
46
+    
47
+    mimetype: application/x-microsoft.net.object.binary.base64
48
+    value   : The object must be serialized with 
49
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50
+            : and then encoded with base64 encoding.
51
+    
52
+    mimetype: application/x-microsoft.net.object.soap.base64
53
+    value   : The object must be serialized with 
54
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
+            : and then encoded with base64 encoding.
56
+
57
+    mimetype: application/x-microsoft.net.object.bytearray.base64
58
+    value   : The object must be serialized into a byte array 
59
+            : using a System.ComponentModel.TypeConverter
60
+            : and then encoded with base64 encoding.
61
+    -->
62
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
64
+    <xsd:element name="root" msdata:IsDataSet="true">
65
+      <xsd:complexType>
66
+        <xsd:choice maxOccurs="unbounded">
67
+          <xsd:element name="metadata">
68
+            <xsd:complexType>
69
+              <xsd:sequence>
70
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
71
+              </xsd:sequence>
72
+              <xsd:attribute name="name" use="required" type="xsd:string" />
73
+              <xsd:attribute name="type" type="xsd:string" />
74
+              <xsd:attribute name="mimetype" type="xsd:string" />
75
+              <xsd:attribute ref="xml:space" />
76
+            </xsd:complexType>
77
+          </xsd:element>
78
+          <xsd:element name="assembly">
79
+            <xsd:complexType>
80
+              <xsd:attribute name="alias" type="xsd:string" />
81
+              <xsd:attribute name="name" type="xsd:string" />
82
+            </xsd:complexType>
83
+          </xsd:element>
84
+          <xsd:element name="data">
85
+            <xsd:complexType>
86
+              <xsd:sequence>
87
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
88
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
89
+              </xsd:sequence>
90
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
91
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
92
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
+              <xsd:attribute ref="xml:space" />
94
+            </xsd:complexType>
95
+          </xsd:element>
96
+          <xsd:element name="resheader">
97
+            <xsd:complexType>
98
+              <xsd:sequence>
99
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
100
+              </xsd:sequence>
101
+              <xsd:attribute name="name" type="xsd:string" use="required" />
102
+            </xsd:complexType>
103
+          </xsd:element>
104
+        </xsd:choice>
105
+      </xsd:complexType>
106
+    </xsd:element>
107
+  </xsd:schema>
108
+  <resheader name="resmimetype">
109
+    <value>text/microsoft-resx</value>
110
+  </resheader>
111
+  <resheader name="version">
112
+    <value>2.0</value>
113
+  </resheader>
114
+  <resheader name="reader">
115
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
+  </resheader>
117
+  <resheader name="writer">
118
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119
+  </resheader>
120
+</root>

+ 4 - 0
Bluecell_ERP/packages.config

@@ -0,0 +1,4 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<packages>
3
+  <package id="KryptonWinFormControls" version="4.4.1.0" targetFramework="net472" />
4
+</packages>