-
Notifications
You must be signed in to change notification settings - Fork 0
/
Form6.cs
162 lines (136 loc) · 6.07 KB
/
Form6.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace RegisterParcelsFromPC
{
public partial class Form6 : Form
{
public string connStr = @"Server=.\SQLEXPRESS;Initial Catalog=parcels;UID=sa;PWD=kumano";
public Form6()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
string filepath;
OpenFileDialog ofDialog = new OpenFileDialog();
// デフォルトのフォルダを指定する
ofDialog.InitialDirectory = @"C:";
//ダイアログのタイトルを指定する
ofDialog.Title = "ダイアログのタイトル";
ofDialog.Filter = "csv文書|*.csv";
//ダイアログを表示する
if (ofDialog.ShowDialog() == DialogResult.OK)
{
Console.WriteLine(ofDialog.FileName);
filepath = ofDialog.FileName;
List<string[]> new_ryosei_list = new List<string[]>();
bool flagOK = true;
try
{
//読み込むtxtファイルのパスを指定して開く
using (StreamReader sr = new StreamReader(filepath, Encoding.GetEncoding("UTF-8")))
{
//ブロック,部屋番号(部屋名),名前(姓・漢字),名前(名・漢字),名前(姓・かな),名前(名・かな),名前(氏名・アルファベット)
//3,A303,前田,敏貴,まえだ,としき,Toshiki Maeda
//末尾まで繰り返す
int i = 0;//ヘッダは読み飛ばす
while (!sr.EndOfStream)
{
//1行づつ読み取る。
string line = sr.ReadLine();
if (i == 0)
{
i = 1;
continue;
}
string[] temp = line.Split(',');
temp[2] += " " + temp[3];
temp[4] += " " + temp[5];
if (temp[4] == " " || temp[1] == "" || temp[0] == "")
{
//かなの名前がない場合、ブロック番号、部屋名が無い場合
flagOK = false;
}
if (temp[2] == " " && temp[6] == "")
{
flagOK = false;
}
new_ryosei_list.Add(temp);
}
}
}
//System.IO.FileNotFoundExceptionを省略して
catch (FileNotFoundException ea)
{
Console.WriteLine(ea.Message);
NLogService.PrintInfoLog("例外_Form6_FileNotFoundException");
NLogService.PrintInfoLog(ea.ToString());
}
//System.Exceptionを省略して
catch (Exception ea)
{
//textBox1.Text += "読み込みたいファイルが開かれています";
Console.WriteLine(ea.Message);
NLogService.PrintInfoLog("例外_Form6_Exception");
NLogService.PrintInfoLog(ea.ToString());
}
if (flagOK)
{
MakeSQLCommand make = new MakeSQLCommand();
string insert_str = make.Register_new_ryosei_atonetime(new_ryosei_list);
Operation ope = new Operation(connStr);
ope.execute_sql(insert_str);
}
else
{
MessageBox.Show("csvファイルのデータに欠損があります", "boxTitle", MessageBoxButtons.OK);
}
}
else
{
MessageBox.Show("キャンセルされました", "boxTitle", MessageBoxButtons.OK);
}
// オブジェクトを破棄する
ofDialog.Dispose();
}
catch (Exception ee)
{
NLogService.PrintInfoLog("例外_Form6");
NLogService.PrintInfoLog(ee.ToString());
}
}
private void button2_Click(object sender, EventArgs e)
{
MakeSQLCommand make = new MakeSQLCommand();
string insert_str = make.toSelect_distinct_ryosei();
Operation ope = new Operation(connStr);
int a = int.Parse(ope.select_one_xx(insert_str, "diff"));//ryosei_name_kanaでdistinct
if (a > 0)
{
MessageBox.Show("寮生の氏名(かな)が重複しています(計" + a.ToString() + "件\r\n修正してください)", "boxTitle", MessageBoxButtons.OK);
}
else
{
MessageBox.Show("寮生の氏名は重複していません", "boxTitle", MessageBoxButtons.OK);
}
}
private void label3_Click(object sender, EventArgs e)
{
}
private void Form6_Load(object sender, EventArgs e)
{
}
private void button3_Click(object sender, EventArgs e)
{
MakeSQLCommand make = new MakeSQLCommand();
string insert_str = make.set_Ryosei_shaingstatus_20();
Operation ope = new Operation(connStr);
ope.execute_sql(insert_str);
}
}
}