public UserListForm(User user, DataTable users, Database db) { InitializeComponent(); this.user = user; this.db = db; this.dataGridViewList.DataSource = users; }
public ProfileForm(User user) { InitializeComponent(); this.User = user; this.textBoxName.Text = this.User.Name; this.textBoxMail.Text = Utility.ToString(this.User.Mail); this.checkBoxIsDormitory.Checked = this.User.IsDormitory; this.panelDormitory.Enabled = this.User.IsDormitory; this.textBoxRoomNo.Text = Utility.ToString(this.User.RoomNo); this.textBoxPhoneNumber.Text = Utility.ToString(this.User.PhoneNumber); }
private void ShowUserProfile() { if (this.user == null) { return; } using (var form = new ProfileForm(this.user)) { var result = this.ShowMultiThreadDialog(form); if (result == DialogResult.OK) { this.user = form.User; this.db.UpdateUser(this.user); } } }
private void CardSet(string uid) { if (InvokeRequired) { this.cardSetAsync = this.BeginInvoke((MethodInvoker)delegate() { this.CardSet(uid); }); return; } // ユーザーが登録されているか調べる this.user = this.db.GetUser(uid); this.UpdateGUI(uid); this.ShowMainForm(); // 関連付けを行う if (this.associationUid != null && this.user != null) { // 関連付けの確認を行う using (var form = new AssociationCheckForm(this.user.Money, this.user.Name)) { this.ShowMultiThreadDialog(form); if (form.DialogResult == DialogResult.Yes) { if (this.db.AssociationAdd(this.user.Uid, this.associationUid)) { MessageBox.Show("関連付けに成功しました。"); this.user = this.db.GetUser(this.associationUid); this.UpdateGUI(); } else { MessageBox.Show("関連付けに失敗しました。"); } } } // 関連付けに保持している情報を開放 this.associationUid = null; } if (this.user == null) { this.associationUid = null; var register = new RegisterForm(this.db, uid); // this.modalDialog = register; var dialog_result = this.ShowMultiThreadDialog(register); if (dialog_result != DialogResult.OK) { return; } // ユーザー登録 if (this.db.AddUser(uid, register.UserName, register.Mail)) { // 登録完了メールを送信 ThreadPool.QueueUserWorkItem((WaitCallback)delegate(object o) { Mail.RegisterComplete(register.Mail, register.UserName); }); } // ユーザー登録失敗 else { MessageBox.Show("ユーザーの登録に失敗しました。"); return; } this.user = this.db.GetUser(uid); this.UpdateGUI(); } }
public bool UpdateUser(User user) { var result = false; lock (lockDb) { using (var conn = this.GetConnection()) { conn.Open(); // name, money, admin, mail, dormitory, phone_number, room int count = this.Update(conn, "UPDATE user " + "SET mail = ?, dormitory = ?, phone_number = ?, room = ? " + "WHERE uid = '" + user.Uid + "';", user.Mail, user.IsDormitory ? 1 : 0, user.PhoneNumber, user.RoomNo ); this.CashUserList(); if (count == 1) { if (this.AddLog(conn, user.Uid, "UpdateUser", user.Name)) { result = true; } } conn.Close(); } } return result; }
public User GetUser(string uid) { string realUid = uid; User user = null; // 関連付けが存在するか調べる lock (lockInMemoryDb) { using ( var reader = this.Select(this.inMemoryDb, "SELECT parent_uid " + "FROM bind " + "WHERE child_uid = '" + uid + "';" ) ) { if (reader.Read()) { uid = reader["parent_uid"].ToString(); } } using ( var reader = this.Select(this.inMemoryDb, "SELECT name, money, admin, mail, dormitory, phone_number, room " + "FROM user " + "WHERE uid = '" + uid + "';" ) ) { if (reader.Read()) { user = new User( uid, realUid, reader["name"].ToString(), reader["money"].ToString(), reader["admin"].ToString(), reader["mail"].ToString(), reader["dormitory"].ToString(), reader["phone_number"].ToString(), reader["room"].ToString() ); } } } // ログを追加 if (user != null) { this.AddLogAsync(uid, "GetUser", user.Name + "," + user.Money); } // ユーザーが存在しない場合 else { this.AddLogAsync(uid, "GetUser", ",0"); } return user; }