private void loadAttachment() { if (Owner.Name == "shop_selling") { owner_name = Owner.Name; } else { owner_name = Owner.Owner.Name; } //GF.showLoading(this); this.DGV.Rows.Clear(); if (DGV.Columns.Count == 0) { this.DGV.Columns.Add("attachment_name", "ATTACHMENT NAME"); this.DGV.Columns.Add("file_name", "FILE NAME"); this.DGV.Columns.Add("attachment_id", "ATTACHMENT ID"); } String queryString = "SELECT ROW_NUMBER() OVER (ORDER BY attachment_name) as RowNum, attachment_id, attachment_name, file_name FROM ATTACHMENT WHERE owner_id = " + this.id.ToString() + " AND owner_form = '" + owner_name + "'"; Dictionary <string, string> Params = new Dictionary <string, string>(); /*Params.Add("@id", this.id.ToString()); * Params.Add("@owner_form", owner_name);*/ using (DataTable myDT = DB.getS(queryString, Params, "GET ATTACHMENT")) { int rowNum = 0; foreach (DataRow myRow in myDT.Rows) { this.DGV.Rows.Add( myRow["attachment_name"], myRow["file_name"], myRow["attachment_id"] ); this.DGV[0, rowNum].Style.Alignment = DataGridViewContentAlignment.MiddleLeft; this.DGV[1, rowNum].Style.Alignment = DataGridViewContentAlignment.MiddleLeft; rowNum++; } } this.DGV.Columns["attachment_id"].Visible = false; GF.updateRowNum(DGV); this.DGV.ClearSelection(); if (viewOnly) { file_path.Enabled = false; attachment_name.Enabled = false; GF.disableButton(add_btn); GF.disableButton(delete_btn); } GF.closeLoading(); }
// DELEGATE PART :: END public void loadGridData() { GF.showLoading(this); this.btn_dgv.DGV.Visible = false; this.btn_dgv.DGV.Rows.Clear(); if (btn_dgv.DGV.Columns.Count == 0) { this.btn_dgv.DGV.Columns.Add("card_type_name", "CARD NAME"); this.btn_dgv.DGV.Columns.Add("owner_name", "OWNER NAME"); this.btn_dgv.DGV.Columns.Add("code", "CODE"); this.btn_dgv.DGV.Columns.Add("detail", "DETAIL"); this.btn_dgv.DGV.Columns.Add("issue_datetime", "ISSUED DATETIME"); this.btn_dgv.DGV.Columns.Add("status", "STATUS"); this.btn_dgv.DGV.Columns.Add("issue_by", "ISSUED BY"); this.btn_dgv.DGV.Columns.Add("card_type", "card_type"); this.btn_dgv.DGV.Columns.Add("card_id", "card_id"); this.btn_dgv.DGV.Columns["card_type"].Visible = false; this.btn_dgv.DGV.Columns["card_id"].Visible = false; this.btn_dgv.DGV.Columns["status"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; } // GET TOTAL PAGE Dictionary <string, string> Params = new Dictionary <string, string>(); String queryString = @" SELECT A.*, ISNULL(B.FULLNAME, 'S.A.') ISSUE_BY_NAME FROM ( (SELECT B.MEMBERCARD_TYPE_NAME CARD_TYPE_NAME, A.CARD_NO, Convert(NVARCHAR(MAX),A.PRICE) PRICE, A.ISSUE_DATE, CONVERT(NVARCHAR(MAX), A.ISSUE_DATE, 103) + ' ' + CONVERT(NVARCHAR(MAX), A.ISSUE_DATE, 108) ISSUE_DATETIME, A.ISSUE_BY, A.MEMBERCARD_TYPE_ID CARD_TYPE, A.MEMBERCARD_ID CARD_ID, C.CUSTOMER_NAME + '-' + C.TEL OWNER_NAME, NULL SPA_PROGRAM, A.IS_USE FROM MEMBERCARD A INNER JOIN MEMBERCARD_TYPE B ON A.MEMBERCARD_TYPE_ID = B.MEMBERCARD_TYPE_ID INNER JOIN CUSTOMER C ON A.CUSTOMER_ID = C.CUSTOMER_ID WHERE B.IS_USE = 1) UNION ALL (SELECT CASE A.SPA_PROGRAM_ID WHEN -1 THEN 'MONEY ' ELSE 'SPA MENU ' END + 'GIFT CERTIFICATE' CARD_TYPE_NAME, A.CARD_NO, Convert(NVARCHAR(MAX),A.PRICE) PRICE, A.ISSUE_DATE, CONVERT(NVARCHAR(MAX), A.ISSUE_DATE, 103) + ' ' + CONVERT(NVARCHAR(MAX), A.ISSUE_DATE, 108) ISSUE_DATETIME, A.ISSUE_BY, 50 CARD_TYPE, A.GIFT_CERTIFICATE_ID CARD_ID, B.CUSTOMER_NAME + '-' + B.TEL OWNER_NAME, C.PROGRAM_NAME SPA_PROGRAM, A.IS_USE FROM GIFT_CERTIFICATE A LEFT OUTER JOIN CUSTOMER B ON A.CUSTOMER_ID = B.CUSTOMER_ID LEFT OUTER JOIN SPA_PROGRAM C ON A.SPA_PROGRAM_ID = C.SPA_PROGRAM_ID ) UNION ALL (SELECT 'GIFT VOUCHER' CARD_TYPE_NAME, A.CARD_NO, '-' PRICE, A.ISSUE_DATETIME ISSUE_DATE, CONVERT(NVARCHAR(MAX), A.ISSUE_DATETIME, 103) + ' ' + CONVERT(NVARCHAR(MAX), A.ISSUE_DATETIME, 108) ISSUE_DATETIME, A.ISSUE_BY, 99 CARD_TYPE, A.GIFT_VOUCHER_ID, A.ISSUE_FOR OWNER_NAME, B.PROGRAM_NAME SPA_PROGRAM, A.IS_USE FROM GIFT_VOUCHER A INNER JOIN SPA_PROGRAM B ON A.SPA_PROGRAM_ID = B.SPA_PROGRAM_ID ) ) A LEFT OUTER JOIN EMPLOYEE B ON A.ISSUE_BY = B.EMP_ID WHERE 1=1"; if (((ComboItem)card_type.SelectedItem).Key != -1) { queryString += " AND A.CARD_TYPE = " + ((ComboItem)card_type.SelectedItem).Key.ToString(); //Params.Add("@card_type", ((ComboItem)card_type.SelectedItem).Key.ToString()); } if (!GF.emptyDate(issue_date.Text.Trim())) { queryString += " AND CONVERT(DATE, ISSUE_DATE) = CONVERT(DATE, '" + issue_date.Text + "', 103)"; //Params.Add("@issue_date", issue_date.Text); } GF.getTotalPage(btn_dgv, "SELECT COUNT(*) AS TOTAL FROM (" + queryString + ") AS TOTAL_ROW", Params); queryString = DB.insertRowNum("A.ISSUE_DATE DESC", queryString); GF.doDebug(">>>> " + queryString); DataTable myDT; using (myDT = DB.getS(queryString, Params, "GET ALL ISSUED CARDS")) { for (int rowNum = 0; rowNum < myDT.Rows.Count; rowNum++) { DataRow myRow = myDT.Rows[rowNum]; String detail = ""; if (myRow["SPA_PROGRAM"].ToString() != "") { detail = myRow["SPA_PROGRAM"].ToString(); } else { detail = GF.formatNumber(Convert.ToInt32(myRow["PRICE"].ToString())); } this.btn_dgv.DGV.Rows.Add( myRow["CARD_TYPE_NAME"].ToString(), myRow["OWNER_NAME"].ToString(), myRow["CARD_NO"].ToString(), detail, myRow["ISSUE_DATETIME"].ToString(), (myRow["IS_USE"].ToString() == "1" ? "ACTIVE": "INACTIVE"), myRow["ISSUE_BY_NAME"].ToString(), myRow["CARD_TYPE"].ToString(), myRow["CARD_ID"].ToString() ); btn_dgv.DGV.Rows[rowNum].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft; if (myRow["IS_USE"].ToString() == "1") { btn_dgv.DGV.Rows[rowNum].Cells["status"].Style.ForeColor = Color.Green; } else { btn_dgv.DGV.Rows[rowNum].Cells["status"].Style.ForeColor = Color.Red; } this.btn_dgv.DGV.ClearSelection(); } } GF.updateRowNum(btn_dgv.DGV, true); this.btn_dgv.DGV.Refresh(); this.btn_dgv.DGV.Visible = true; GF.closeLoading(); }
protected override void OnKeyDown(KeyEventArgs e) { if (Text.Trim() != "") { if (e.KeyCode == Keys.Return) { if (!ModeList.Contains(Mode)) { MessageBox.Show("THE AUTOCOMPLETE IS UNDER CONSTRUCTION !!", "ERROR"); return; } if (Mode == "") { return; } String tmpQuery = queryString; currentID = -1; GF.showLoading(parentForm); Dictionary <string, string> Params; if (Mode == "CUSTOMER") { if (Text.Trim().Substring(0, 1) == "7") { Text = "8" + Text.Trim().Substring(1); } tmpQuery += "AND (CUSTOMER_NAME LIKE N'%' + @text + '%' OR RUS_NAME LIKE N'%' + @text + '%' OR TEL LIKE @text + '%')"; Params = new Dictionary <string, string>(); Params.Add("@text", Text); using (DT = DB.getS(tmpQuery, Params, "GET CUSTOMER NAME", false)) { if (DT.Rows.Count == 0) { GF.closeLoading(); MessageBox.Show("... NO RESULT ..."); } else if (DT.Rows.Count == 1) { DataRow row = DT.Rows[0]; SetText(Convert.ToInt32(row["CUSTOMER_ID"].ToString()), row["CUSTOMER_NAME"].ToString() + " - " + (row["GENDER"].ToString() == "1" ? "MALE" : "FEMALE") + " - " + row["TEL"].ToString()); GF.closeLoading(); } else { preventTextChanged = true; using (name_list searchResult = new name_list()) { searchResult.Load += (ss, ee) => { searchResult.Size = searchResult.resultTable.Size; }; if (searchResult.resultTable.Rows.Count > 0) { searchResult.resultTable.Rows.Clear(); } if (searchResult.resultTable.Columns.Count == 0) { searchResult.resultTable.Columns.Add("name", "NAME"); searchResult.resultTable.Columns.Add("rus_name", "RUS NAME"); searchResult.resultTable.Columns.Add("gender", "GENDER"); searchResult.resultTable.Columns.Add("tel", "TEL"); searchResult.resultTable.Columns.Add("note", "NOTE"); searchResult.resultTable.Columns.Add("customer_id", "customer_id"); searchResult.resultTable.Columns["note"].Visible = false; searchResult.resultTable.Columns["customer_id"].Visible = false; } foreach (DataRow row in DT.Rows) { searchResult.resultTable.Rows.Add(row["CUSTOMER_NAME"].ToString(), row["RUS_NAME"].ToString(), (row["GENDER"].ToString() == "1" ? "MALE" : "FEMALE"), row["TEL"].ToString(), row["NOTE"].ToString(), row["CUSTOMER_ID"].ToString()); } GF.updateRowNum(searchResult.resultTable); foreach (DataGridViewColumn column in searchResult.resultTable.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } GF.closeLoading(); searchResult.Owner = parentForm; searchResult.Mode = this.Mode; searchResult.ShowDialog(); searchResult.BringToFront(); } preventTextChanged = false; } } } if (Mode == "EMPLOYEE") { tmpQuery += "AND (FULLNAME LIKE '%' + @text + '%' OR CODE LIKE @text + '%')"; Params = new Dictionary <string, string>(); Params.Add("@text", Text); using (DT = DB.getS(tmpQuery, Params, "GET EMPLOYEE NAME", false)) { if (DT.Rows.Count == 0) { GF.closeLoading(); MessageBox.Show("... NO RESULT ..."); } else if (DT.Rows.Count == 1) { DataRow row = DT.Rows[0]; SetText(Convert.ToInt32(row["EMP_ID"].ToString()), row["CODE"].ToString() + " - " + row["FULLNAME"].ToString()); GF.closeLoading(); } else { preventTextChanged = true; using (name_list searchResult = new name_list()) { searchResult.Load += (ss, ee) => { searchResult.Size = searchResult.resultTable.Size; }; if (searchResult.resultTable.Rows.Count > 0) { searchResult.resultTable.Rows.Clear(); } if (searchResult.resultTable.Columns.Count == 0) { searchResult.resultTable.Columns.Add("fullname", "NAME"); searchResult.resultTable.Columns.Add("code", "CODE"); searchResult.resultTable.Columns.Add("emp_id", "emp_id"); searchResult.resultTable.Columns["emp_id"].Visible = false; } foreach (DataRow row in DT.Rows) { searchResult.resultTable.Rows.Add(row["FULLNAME"].ToString(), row["CODE"].ToString(), row["EMP_ID"].ToString()); } GF.updateRowNum(searchResult.resultTable); foreach (DataGridViewColumn column in searchResult.resultTable.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } GF.closeLoading(); searchResult.Owner = parentForm; searchResult.Mode = this.Mode; searchResult.ShowDialog(); } preventTextChanged = false; } } } if (Mode == "DEBTOR") { tmpQuery += "AND (A.NAME LIKE '%' + @text + '%' OR A.TEL LIKE '%' + @text + '%')"; Params = new Dictionary <string, string>(); Params.Add("@text", Text); using (DT = DB.getS(tmpQuery, Params, "GET DEBTOR NAME", false)) { if (DT.Rows.Count == 0) { GF.closeLoading(); MessageBox.Show("... NO RESULT ..."); } else if (DT.Rows.Count == 1) { DataRow row = DT.Rows[0]; SetText(Convert.ToInt32(row["DEBTOR_ID"].ToString()), "[" + row["DEBTOR_TYPE_NAME"].ToString() + "] " + row["NAME"].ToString() + " " + row["TEL"].ToString()); GF.closeLoading(); } else { preventTextChanged = true; using (name_list searchResult = new name_list()) { searchResult.Load += (ss, ee) => { searchResult.Size = searchResult.resultTable.Size; }; if (searchResult.resultTable.Rows.Count > 0) { searchResult.resultTable.Rows.Clear(); } if (searchResult.resultTable.Columns.Count == 0) { searchResult.resultTable.Columns.Add("debtor_name", "NAME"); searchResult.resultTable.Columns.Add("tel", "TEL NO."); searchResult.resultTable.Columns.Add("debtor_type_name", "TYPE"); searchResult.resultTable.Columns.Add("debtor_id", "debtor_id"); searchResult.resultTable.Columns["debtor_id"].Visible = false; } foreach (DataRow row in DT.Rows) { searchResult.resultTable.Rows.Add(row["NAME"].ToString(), row["TEL"].ToString(), row["DEBTOR_TYPE_NAME"].ToString(), row["DEBTOR_ID"].ToString()); } GF.updateRowNum(searchResult.resultTable); foreach (DataGridViewColumn column in searchResult.resultTable.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } GF.closeLoading(); searchResult.Owner = parentForm; searchResult.Mode = this.Mode; searchResult.ShowDialog(); } preventTextChanged = false; } } } if (Mode == "AGENT") { tmpQuery += "AND (A.AGENT_NAME LIKE '%' + @text + '%' OR A.TEL LIKE '%' + @text + '%')"; Params = new Dictionary <string, string>(); Params.Add("@text", Text); using (DT = DB.getS(tmpQuery, Params, "GET AGENT NAME", false)) { if (DT.Rows.Count == 0) { GF.closeLoading(); MessageBox.Show("... NO RESULT ..."); } else if (DT.Rows.Count == 1) { DataRow row = DT.Rows[0]; SetText(Convert.ToInt32(row["AGENT_ID"].ToString()), row["AGENT_NAME"].ToString() + " - " + row["TEL"].ToString()); GF.closeLoading(); } else { preventTextChanged = true; using (name_list searchResult = new name_list()) { searchResult.Load += (ss, ee) => { searchResult.Size = searchResult.resultTable.Size; }; if (searchResult.resultTable.Rows.Count > 0) { searchResult.resultTable.Rows.Clear(); } if (searchResult.resultTable.Columns.Count == 0) { searchResult.resultTable.Columns.Add("agent_name", "NAME"); searchResult.resultTable.Columns.Add("tel", "TEL NO."); searchResult.resultTable.Columns.Add("agent_type_name", "TYPE"); searchResult.resultTable.Columns.Add("agent_id", "agent_id"); searchResult.resultTable.Columns["agent_id"].Visible = false; } foreach (DataRow row in DT.Rows) { searchResult.resultTable.Rows.Add(row["AGENT_NAME"].ToString(), row["TEL"].ToString(), (row["AGENT_TYPE"].ToString() == "0" ? "COMPANY" : "PERSON"), row["AGENT_ID"].ToString()); } GF.updateRowNum(searchResult.resultTable); foreach (DataGridViewColumn column in searchResult.resultTable.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } GF.closeLoading(); searchResult.Owner = parentForm; searchResult.Mode = this.Mode; searchResult.ShowDialog(); } preventTextChanged = false; } } } if (Mode == "ITEM_TYPE") { tmpQuery += "AND A.ITEM_TYPE_NAME LIKE '%' + @text + '%'"; Params = new Dictionary <string, string>(); Params.Add("@text", Text); using (DT = DB.getS(tmpQuery, Params, "GET ITEM_TYPE_NAME", false)) { if (DT.Rows.Count == 0) { GF.closeLoading(); MessageBox.Show("... NO RESULT ..."); } else if (DT.Rows.Count == 1) { DataRow row = DT.Rows[0]; SetText(Convert.ToInt32(row["ITEM_TYPE_ID"].ToString()), row["ITEM_TYPE_NAME"].ToString()); GF.closeLoading(); } else { preventTextChanged = true; using (name_list searchResult = new name_list()) { searchResult.Load += (ss, ee) => { searchResult.Size = searchResult.resultTable.Size; }; if (searchResult.resultTable.Rows.Count > 0) { searchResult.resultTable.Rows.Clear(); } if (searchResult.resultTable.Columns.Count == 0) { searchResult.resultTable.Columns.Add("item_type_name", "ITEM TYPE NAME"); searchResult.resultTable.Columns.Add("item_type_id", "item_type_id"); searchResult.resultTable.Columns["item_type_id"].Visible = false; } foreach (DataRow row in DT.Rows) { searchResult.resultTable.Rows.Add(row["ITEM_TYPE_NAME"].ToString(), row["ITEM_TYPE_ID"].ToString()); } GF.updateRowNum(searchResult.resultTable); foreach (DataGridViewColumn column in searchResult.resultTable.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } GF.closeLoading(); searchResult.Owner = parentForm; searchResult.Mode = this.Mode; searchResult.ShowDialog(); } preventTextChanged = false; } } } parentForm.Activate(); parentForm.BringToFront(); } } base.OnKeyDown(e); }