diff --git a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/ListCertificate.cs b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/ListCertificate.cs index ceaa0f0..468d5f7 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/ListCertificate.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/ListCertificate.cs @@ -94,7 +94,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl string issueNumber = dataGridView_List.SelectedRows[0].Cells[0].Value.ToString(); CertificateData certificateData = Database.GetCertificate(issueNumber); - var print = new PrintCertificate(new List() { certificateData }); + var print = new PrintCertificate(new List() { certificateData }, Global.GlobalSettings.GarageName); diff --git a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.Designer.cs b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.Designer.cs index db63ad2..2b8150c 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.Designer.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.Designer.cs @@ -28,12 +28,13 @@ /// private void InitializeComponent() { - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); this.groupBox1 = new System.Windows.Forms.GroupBox(); this.metroRadioButton_EndUser = new MetroFramework.Controls.MetroRadioButton(); this.metroRadioButton_UseUser = new MetroFramework.Controls.MetroRadioButton(); this.metroRadioButton_InspectionAll = new MetroFramework.Controls.MetroRadioButton(); this.metroPanel1 = new MetroFramework.Controls.MetroPanel(); + this.metroButton1 = new MetroFramework.Controls.MetroButton(); this.metroButton_Certificate = new MetroFramework.Controls.MetroButton(); this.metroButton_ExportExcel = new MetroFramework.Controls.MetroButton(); this.metroButton_Refund = new MetroFramework.Controls.MetroButton(); @@ -46,7 +47,6 @@ this.metroComboBox_SearchType = new MetroFramework.Controls.MetroComboBox(); this.dataGridView_List = new System.Windows.Forms.DataGridView(); this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog(); - this.metroButton1 = new MetroFramework.Controls.MetroButton(); this.groupBox1.SuspendLayout(); this.metroPanel1.SuspendLayout(); this.groupBox2.SuspendLayout(); @@ -121,6 +121,17 @@ this.metroPanel1.VerticalScrollbarHighlightOnWheel = false; this.metroPanel1.VerticalScrollbarSize = 10; // + // metroButton1 + // + this.metroButton1.Anchor = System.Windows.Forms.AnchorStyles.Right; + this.metroButton1.FontSize = MetroFramework.MetroButtonSize.Tall; + this.metroButton1.Location = new System.Drawing.Point(626, 256); + this.metroButton1.Name = "metroButton1"; + this.metroButton1.Size = new System.Drawing.Size(121, 40); + this.metroButton1.TabIndex = 11; + this.metroButton1.Text = "수정"; + this.metroButton1.UseSelectable = true; + // // metroButton_Certificate // this.metroButton_Certificate.Anchor = System.Windows.Forms.AnchorStyles.Right; @@ -266,15 +277,15 @@ | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.dataGridView_List.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; - this.dataGridView_List.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.AllCells; - dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; - dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle2.Font = new System.Drawing.Font("굴림", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); - dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.dataGridView_List.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dataGridView_List.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells; + dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; + dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle1.Font = new System.Drawing.Font("굴림", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridView_List.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1; this.dataGridView_List.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dataGridView_List.Location = new System.Drawing.Point(20, 120); this.dataGridView_List.MultiSelect = false; @@ -285,17 +296,6 @@ this.dataGridView_List.Size = new System.Drawing.Size(600, 330); this.dataGridView_List.TabIndex = 6; // - // metroButton1 - // - this.metroButton1.Anchor = System.Windows.Forms.AnchorStyles.Right; - this.metroButton1.FontSize = MetroFramework.MetroButtonSize.Tall; - this.metroButton1.Location = new System.Drawing.Point(626, 256); - this.metroButton1.Name = "metroButton1"; - this.metroButton1.Size = new System.Drawing.Size(121, 40); - this.metroButton1.TabIndex = 11; - this.metroButton1.Text = "수정"; - this.metroButton1.UseSelectable = true; - // // UserList // this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); diff --git a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.cs b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.cs index 379f01d..64555ab 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/CustomUserControl/UserList.cs @@ -5,6 +5,7 @@ using System.Collections.Generic; using System.Data; using System.Drawing.Printing; using System.Linq; +using System.Text; using System.Windows.Forms; namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl @@ -21,15 +22,15 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl metroComboBox_SearchType.SelectedIndex = 0; } - private List UserType() + private List UserType() { var userList = Database.GetUserList(); - List nowUserList; + List nowUserList; if (metroRadioButton_UseUser.Checked) - nowUserList = userList.Where(x => x.DateEnd >= DateTime.Now && !x.RefundCheck).ToList(); + nowUserList = userList.Where(x => x.DateEnd >= DateTime.Now && !x.RefundStatus).ToList(); else if (metroRadioButton_EndUser.Checked) - nowUserList = userList.Where(x => x.DateEnd <= DateTime.Now || x.RefundCheck).ToList(); + nowUserList = userList.Where(x => x.DateEnd <= DateTime.Now || x.RefundStatus).ToList(); else nowUserList = userList; @@ -63,34 +64,52 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl } var dataTable = new DataTable(); - dataTable.Columns.Add("No"); - dataTable.Columns.Add("차량번호(화물)"); - dataTable.Columns.Add("차량번호(승용)"); + dataTable.Columns.Add("허가번호"); + dataTable.Columns.Add("허가일자"); + dataTable.Columns.Add("접수번호"); + dataTable.Columns.Add("접수일자"); dataTable.Columns.Add("이름"); + dataTable.Columns.Add("생년월일"); dataTable.Columns.Add("연락처"); dataTable.Columns.Add("주소"); - dataTable.Columns.Add("당첨처리일"); + dataTable.Columns.Add("주차구역"); + dataTable.Columns.Add("차량번호(화물)"); + dataTable.Columns.Add("차종(화물)"); + dataTable.Columns.Add("차량번호(승용)"); + dataTable.Columns.Add("차종(승용)"); dataTable.Columns.Add("이용시작일"); dataTable.Columns.Add("이용종료일"); - dataTable.Columns.Add("연장여부"); - dataTable.Columns.Add("환불령부"); - + dataTable.Columns.Add("변경사항"); for (var i = 0; i < nowUserList.Count; i++) + { + StringBuilder history = new StringBuilder(); + for (int j = 0; j < nowUserList[i].HistoryInformations.Count; j++) + { + history.Append(nowUserList[i].HistoryInformations[j].HistoryDate.DateTimeDatabase()); + history.Append(" "); + history.AppendLine(nowUserList[i].HistoryInformations[j].HistoryCode == EHistoryCode.Extension ? "연장" : "환불"); + } dataTable.Rows .Add( nowUserList[i].No, - nowUserList[i].CargoVehicleNumber, - nowUserList[i].PassengerVehicleNumber, + nowUserList[i].DateOfApplicant, + nowUserList[i].ApplicantNo, + nowUserList[i].ApplicantDate, nowUserList[i].Name, + nowUserList[i].PersonalNumber, nowUserList[i].Phone, nowUserList[i].Address, - nowUserList[i].DateOfApplicant, + nowUserList[i].Area, + nowUserList[i].CargoVehicleNumber, + nowUserList[i].CargoVehicleName, + nowUserList[i].PassengerVehicleNumber, + nowUserList[i].PassengerVehicleName, nowUserList[i].DateStart, nowUserList[i].DateEnd, - nowUserList[i].Extended ? "Y" : "N", - nowUserList[i].RefundCheck ? "Y" : "N" - ); + history + ); + } dataGridView_List.DataSource = dataTable; dataGridView_List.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; dataGridView_List.Columns[0].MinimumWidth = 20; @@ -100,6 +119,9 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl dataGridView_List.Columns[1].FillWeight = 100; dataGridView_List.Columns[2].MinimumWidth = 60; dataGridView_List.Columns[2].FillWeight = 60; + dataGridView_List.Columns[15].DefaultCellStyle.WrapMode = + DataGridViewTriState.True; + } private void metroButton_Search_Click(object sender, EventArgs e) @@ -164,7 +186,6 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl private void metroButton_Certificate_Click(object sender, EventArgs e) { - // TODO: 증명서 인쇄 데이터 DateTime nowDateTime = DateTime.Now; var count = dataGridView_List.SelectedRows.Count; if (count == 0) @@ -172,8 +193,6 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl MetroMessageBox.Show(this, "선택된 이용자가 없습니다.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } - - var result = MetroMessageBox.Show(this, "발급 하시겠습니까?", "증명서 발급", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) return; @@ -181,45 +200,49 @@ namespace HSUCO_Cargo_Garage_Operation_Program.CustomUserControl // 사용자 정보 가져와야함 int code = int.Parse(dataGridView_List.SelectedRows[0].Cells[0].Value.ToString()); - CertificateData certificateData = new CertificateData(); - certificateData.CargoVehicleNumber = - dataGridView_List.SelectedRows[0].Cells[1].Value.ToString(); - //certificateData.PassengerVehicleNumber = dataGridView_List.SelectedRows[0].Cells[2].Value.ToString(); - - certificateData.Name = dataGridView_List.SelectedRows[0].Cells[3].Value.ToString(); - certificateData.StartDate = - DateTime.Parse(dataGridView_List.SelectedRows[0].Cells[7].Value.ToString()); - certificateData.EndDate = DateTime.Parse(dataGridView_List.SelectedRows[0].Cells[8].Value.ToString()); - certificateData.IssueDate = nowDateTime; - + CertificateInformation certificateInformation = new CertificateInformation(); + + certificateInformation.Name = dataGridView_List.SelectedRows[0].Cells[4].Value.ToString(); + certificateInformation.PersonalNumber = dataGridView_List.SelectedRows[0].Cells[5].Value.ToString(); + certificateInformation.Address = dataGridView_List.SelectedRows[0].Cells[7].Value.ToString(); + certificateInformation.CargoVehicleNumber = dataGridView_List.SelectedRows[0].Cells[10].Value.ToString(); + //certificateInformation.Amount = dataGridView_List.SelectedRows[0].Cells[7].Value.ToString(); + certificateInformation.Area = dataGridView_List.SelectedRows[0].Cells[8].Value.ToString(); + + certificateInformation.StartDate = + DateTime.Parse(dataGridView_List.SelectedRows[0].Cells[14].Value.ToString()); + certificateInformation.EndDate = DateTime.Parse(dataGridView_List.SelectedRows[0].Cells[15].Value.ToString()); + certificateInformation.IssueDate = nowDateTime; + + int lastNo = Database.GetLastCertificate(nowDateTime.Year); lastNo++; - certificateData.IssueNumber = nowDateTime.Year.ToString() + "-" + lastNo.ToString("D4"); + certificateInformation.IssueNumber = nowDateTime.Year.ToString() + "-" + lastNo.ToString(); - Certificate certificate = new Certificate(); - certificate.No = int.Parse(dataGridView_List.SelectedRows[0].Cells[0].Value.ToString()); - certificate.IssueNumber = certificateData.IssueNumber; - certificate.IssueDate = certificateData.IssueDate; - certificate.StartDate = certificateData.StartDate; - certificate.EndDate = certificateData.EndDate; - bool dbResult = Database.SetCertificate(certificate); + SetCertificateInformation setCertificateInformation = new SetCertificateInformation(); + setCertificateInformation.No = dataGridView_List.SelectedRows[0].Cells[0].Value.ToString(); + setCertificateInformation.UserNo = dataGridView_List.SelectedRows[0].Cells[0].Value.ToString(); + setCertificateInformation.IssueDate = certificateInformation.IssueDate; + setCertificateInformation.StartDate = certificateInformation.StartDate; + setCertificateInformation.EndDate = certificateInformation.EndDate; + //bool dbResult = Database.SetCertificate(setCertificateInformation); // 요금 상계 - SetProceedsInfo setProceedsInfo = new SetProceedsInfo(); - setProceedsInfo.No = certificate.No; - setProceedsInfo.Date = nowDateTime; - setProceedsInfo.Type = ProceedsType.Certificate; + //SetProceedsInfo setProceedsInfo = new SetProceedsInfo(); + //setProceedsInfo.No = certificate.No; + //setProceedsInfo.Date = nowDateTime; + //setProceedsInfo.Type = ProceedsType.Certificate; // 요금 상계 부분 // setProceedsInfo.Amount = Global.GlobalSettings.CertificateFee; - dbResult = Database.SetProceeds(setProceedsInfo); + //dbResult = Database.SetProceeds(setProceedsInfo); - var print = new PrintCertificate(new List() { certificateData }); + var print = new PrintCertificate(new List() { certificateInformation }, Global.GlobalSettings.GarageName); var printDocument = new PrintDocument(); printDocument.DocumentName = "차고지 이용 증명서"; diff --git a/HSUCO_Cargo_Garage_Operation_Program/DataModel.cs b/HSUCO_Cargo_Garage_Operation_Program/DataModel.cs index c285f5b..81d6f34 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/DataModel.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/DataModel.cs @@ -1,10 +1,11 @@ using System; +using System.Collections.Generic; namespace HSUCO_Cargo_Garage_Operation_Program { public struct ApplicantInformation { - public string No { get; set; } + public string No { get; set; } // 고유번호 public bool ApplicantType { get; set; } public string CargoVehicleNumber { get; set; } public string CargoVehicleName { get; set; } @@ -17,29 +18,44 @@ namespace HSUCO_Cargo_Garage_Operation_Program public string Address { get; set; } public DateTime DateOfApplication { get; set; } } + public struct ResultApplicantInsertInformation { public bool Result { get; set; } public string No { get; set; } public int WaitingOrder { get; set; } } - public struct User + + + public struct UserInformation { - public int No; - public string CargoVehicleNumber { get; set; } - public string CargoVehicleName { get; set; } - public string PassengerVehicleNumber { get; set; } - public string PassengerVehicleName { get; set; } - public EVehicleType VehicleType { get; set; } - public string Name { get; set; } - public string PersonalNumber { get; set; } - public string Phone { get; set; } - public string Address { get; set; } - public DateTime DateOfApplicant { get; set; } - public DateTime DateStart { get; set; } - public DateTime DateEnd { get; set; } - public bool Extended { get; set; } - public bool RefundCheck { get; set; } + public string No { get; set; } // 고유번호 + public string Area { get; set; } // 주차구역 + public string ApplicantNo { get; set; } // 접수시번호 + public DateTime ApplicantDate { get; set; } // 접수일자 + public string CargoVehicleNumber { get; set; } // 화물차량번호 + public string CargoVehicleName { get; set; } // 화물차종 + public string PassengerVehicleNumber { get; set; } // 승용차량번호 + public string PassengerVehicleName { get; set; } // 승용차종 + public EVehicleType VehicleType { get; set; } // 차종 구분 4.5톤 이상 미만 + public string Name { get; set; } // 성명 + public string PersonalNumber { get; set; } //생년월일 혹은 법인번호 + public string Phone { get; set; } // 연락처 + public string Address { get; set; } // 주소 + public DateTime DateOfApplicant { get; set; } // 당첨일 + public DateTime DateStart { get; set; } // 시작일 + public DateTime DateEnd { get; set; } // 종료일 + public bool ExtensionStatus { get; set; } // 연장여부 + public DateTime ExtensionStart { get; set; } // 연장시 시작일 + public bool RefundStatus { get; set; } // 환불여부 + public List HistoryInformations { get; set; } // 과거내역정보 + } + + public struct HistoryInformation + { + public EHistoryCode HistoryCode { get; set; } + public DateTime HistoryDate { get; set; } + public int HistoryAmount { get; set; } } public struct Extended @@ -60,38 +76,39 @@ namespace HSUCO_Cargo_Garage_Operation_Program public struct SetProceedsInfo { - public int No { get; set; } + public string No { get; set; } public ProceedsType Type { get; set; } public int Amount { get; set; } public DateTime Date { get; set; } } - public struct Certificate + + public struct SetCertificateInformation { - public int No { get; set; } + public string No { get; set; } + public string UserNo { get; set; } public string IssueNumber { get; set; } public DateTime IssueDate { get; set; } public DateTime StartDate { get; set; } public DateTime EndDate { get; set; } + public int Amount { get; set; } } - - public struct CertificateData + public struct CertificateInformation // 인쇄용 { public string Name { get; set; } public string PersonalNumber { get; set; } public string Address { get; set; } public string CargoVehicleNumber { get; set; } public string Amount { get; set; } - public string AreaSize { get; set; } - + public string Area { get; set; } public string IssueNumber { get; set; } public DateTime IssueDate { get; set; } public DateTime StartDate { get; set; } public DateTime EndDate { get; set; } - } + /// - /// 인쇄용 + /// 인쇄용 /// public struct PrintFilingReceiptInformation { @@ -104,7 +121,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program public string PassengerVehicleNumber { get; set; } public int WaitingOrder { get; set; } } - + public struct Settings { public string GarageName { get; set; } @@ -129,4 +146,18 @@ namespace HSUCO_Cargo_Garage_Operation_Program Large, Oversized } + + public enum EGetLastNumber + { + ApplicantListLots, + ApplicantListWait, + UserList, + LedgerCertificate, + } + + public enum EHistoryCode + { + Extension, + Refund + } } \ No newline at end of file diff --git a/HSUCO_Cargo_Garage_Operation_Program/Database.cs b/HSUCO_Cargo_Garage_Operation_Program/Database.cs index e1777ee..4e8c926 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/Database.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/Database.cs @@ -1,8 +1,10 @@ -using System; +using HSUCO_Cargo_Garage_Operation_Program.CustomUserControl; +using System; using System.Collections.Generic; using System.Data.SQLite; +using System.Globalization; using System.IO; -using System.Windows.Controls; +using System.Windows.Forms; namespace HSUCO_Cargo_Garage_Operation_Program { @@ -28,8 +30,8 @@ namespace HSUCO_Cargo_Garage_Operation_Program var createKeyTable = @" CREATE TABLE ""ApplicantList"" ( - ""ApplicantType"" INTEGER NOT NULL, ""No"" TEXT NOT NULL, + ""ApplicantType"" INTEGER NOT NULL, ""CargoVehicleNumber"" TEXT NOT NULL, ""CargoVehicleName"" TEXT NOT NULL, ""PassengerVehicleNumber"" TEXT NOT NULL, @@ -43,7 +45,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program PRIMARY KEY(""No"") ); - CREATE TABLE ""DeleteList"" ( + CREATE TABLE ""ApplicantListDelete"" ( ""No"" TEXT NOT NULL, ""ApplicantType"" INTEGER NOT NULL, ""CargoVehicleNumber"" TEXT NOT NULL, @@ -62,55 +64,61 @@ namespace HSUCO_Cargo_Garage_Operation_Program PRIMARY KEY(""No"") ); - CREATE TABLE ""LedgerCertificate"" ( - ""No"" INTEGER NOT NULL, - ""IssueNumber"" TEXT NOT NULL, - ""IssueDate"" TEXT NOT NULL, - ""StartDate"" TEXT NOT NULL, - ""EndDate"" TEXT NOT NULL + CREATE TABLE ""LedgerCertificate"" ( + ""No"" TEXT NOT NULL UNIQUE, + ""UserNo"" TEXT NOT NULL, + ""IssueDate"" TEXT NOT NULL, + ""StartDate"" TEXT NOT NULL, + ""EndDate"" TEXT NOT NULL, + ""Amount"" INTEGER NOT NULL, + FOREIGN KEY(""UserNo"") REFERENCES ""UserList"", PRIMARY KEY(""No"") - ); + ); - CREATE TABLE ""LedgerProceeds"" ( - ""No"" INTEGER, - ""Type"" INTEGER, - ""Amount"" INTEGER, - ""Date"" TEXT - ); + CREATE TABLE ""LedgerProceeds"" ( + ""UserNo"" TEXT NOT NULL, + ""Type"" INTEGER NOT NULL, + ""Amount"" INTEGER NOT NULL, + ""Date"" TEXT NOT NULL, + FOREIGN KEY(""UserNo"") REFERENCES ""UserList""(""No"") + ); - CREATE TABLE ""RefundList"" ( - ""No"" INTEGER NOT NULL UNIQUE, - ""UserNo"" INTEGER NOT NULL, - ""RefundDate"" TEXT NOT NULL, - ""RefundAmount"" INTEGER NOT NULL - ); + CREATE TABLE ""Settings"" ( + ""SettingName"" TEXT NOT NULL, + ""SettingValue"" TEXT NOT NULL, + ""SettingDate"" TEXT NOT NULL + ); - CREATE TABLE ""Settings"" ( - ""SettingName"" TEXT NOT NULL, - ""SettingValue"" TEXT NOT NULL, - ""SettingDate"" TEXT NOT NULL - ); + CREATE TABLE ""UserList"" ( + ""No"" TEXT NOT NULL UNIQUE, + ""Area"" TEXT NOT NULL, + ""ApplicantNo"" TEXT NOT NULL, + ""ApplicantDate"" TEXT NOT NULL, + ""CargoVehicleNumber"" TEXT NOT NULL, + ""CargoVehicleName"" TEXT NOT NULL, + ""PassengerVehicleNumber"" TEXT NOT NULL, + ""PassengerVehicleName"" TEXT NOT NULL, + ""VehicleType"" INTEGER NOT NULL, + ""Name"" TEXT NOT NULL, + ""PersonalNumber"" TEXT NOT NULL, + ""Phone"" TEXT NOT NULL, + ""Address"" TEXT NOT NULL, + ""DateOfApplicant"" TEXT NOT NULL, + ""DateStart"" TEXT NOT NULL, + ""DateEnd"" TEXT NOT NULL, + ""ExtensionStatus"" INTEGER NOT NULL, + ""ExtensionStart"" TEXT, + ""RefundStatus"" INTEGER NOT NULL, + PRIMARY KEY(""No"") + ); - CREATE TABLE ""UserList"" ( - ""No"" INTEGER NOT NULL UNIQUE, - ""Area"" TEXT, - ""CargoVehicleNumber"" TEXT NOT NULL, - ""CargoVehicleName"" TEXT NOT NULL, - ""PassengerVehicleNumber"" TEXT NOT NULL, - ""PassengerVehicleName"" TEXT NOT NULL, - ""VehicleType"" INTEGER NOT NULL, - ""Name"" TEXT NOT NULL, - ""PersonalNumber"" TEXT NOT NULL, - ""Phone"" TEXT NOT NULL, - ""Address"" TEXT NOT NULL, - ""DateOfApplicant"" TEXT NOT NULL, - ""DateStart"" TEXT NOT NULL, - ""DateEnd"" TEXT NOT NULL, - ""Extended"" INTEGER NOT NULL, - ""ExtendedStart"" TEXT, - ""RefundCheck"" INTEGER NOT NULL, - PRIMARY KEY(""No"" AUTOINCREMENT) - );"; + CREATE TABLE ""UserListHistory"" ( + ""UserNo"" TEXT NOT NULL, + ""HistoryCode"" INTEGER NOT NULL, + ""HistoryDate"" TEXT NOT NULL, + ""HistoryAmount"" INTEGER NOT NULL, + FOREIGN KEY(""UserNo"") REFERENCES ""UserList""(""No"") + );"; using (var command = _sqLiteConnection.CreateCommand()) { @@ -179,13 +187,12 @@ namespace HSUCO_Cargo_Garage_Operation_Program public static ResultApplicantInsertInformation SetApplicant(ApplicantInformation applicant) { - string year = DateTime.Now.Year.ToString(); string suffix = applicant.ApplicantType ? Global.SuffixApplicantLot : Global.SuffixApplicantWait; int lastNo = GetLastApplicant(year, suffix); lastNo++; string no = $"{year}-{suffix}{lastNo.ToString("D4")}"; - int waitOrder = 0; + int waitOrder = 0; string query; if (!applicant.ApplicantType) { @@ -207,7 +214,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program } query = $"INSERT INTO ApplicantList VALUES('{applicant.ApplicantType.BoolToInt()}','{no}','{applicant.CargoVehicleNumber}','{applicant.CargoVehicleName}','{applicant.PassengerVehicleNumber}','{applicant.PassengerVehicleName}','{applicant.VehicleType}','{applicant.Name}','{applicant.PersonalNumber}','{applicant.Phone}','{applicant.Address}','{applicant.DateOfApplication.DateTimeDatabase()}') "; - + int insertResult; using (var command = _sqLiteConnection.CreateCommand()) { @@ -216,7 +223,6 @@ namespace HSUCO_Cargo_Garage_Operation_Program } if (insertResult > 0) { - return new ResultApplicantInsertInformation { Result = true, No = no, WaitingOrder = waitOrder }; } else @@ -251,7 +257,6 @@ namespace HSUCO_Cargo_Garage_Operation_Program applicant.Phone = reader["Phone"].ToString(); applicant.Address = reader["Address"].ToString(); applicant.DateOfApplication = DateTime.Parse(reader["DateOfApplicant"].ToString()); - applicants.Add(applicant); } } @@ -287,7 +292,6 @@ namespace HSUCO_Cargo_Garage_Operation_Program applicant.Address = reader["Address"].ToString(); applicant.DateOfApplication = DateTime.Parse(reader["DateOfApplicant"].ToString()); - applicants.Add(applicant); } } @@ -296,10 +300,10 @@ namespace HSUCO_Cargo_Garage_Operation_Program return applicants; } - public static List GetUserList() + public static List GetUserList() { - var userList = new List(); - const string query = "SELECT * From UserList"; + var users = new List(); + string query = "SELECT * From UserList"; using (var command = _sqLiteConnection.CreateCommand()) { @@ -309,30 +313,56 @@ namespace HSUCO_Cargo_Garage_Operation_Program { while (reader.Read()) { - var user = new User - { - No = int.Parse(reader["No"].ToString()), - CargoVehicleNumber = reader["CargoVehicleNumber"].ToString(), - PassengerVehicleNumber = reader["PassengerVehicleNumber"].ToString(), - Name = reader["Name"].ToString(), - Phone = reader["Phone"].ToString(), - Address = reader["Address"].ToString(), - DateOfApplicant = DateTime.Parse(reader["DateOfApplicant"].ToString()), - DateStart = DateTime.Parse(reader["DateStart"].ToString()), - DateEnd = DateTime.Parse(reader["DateEnd"].ToString()), - Extended = reader["Extended"].ToString() == "1", - RefundCheck = reader["RefundCheck"].ToString() == "1" - }; + var user = new UserInformation(); - userList.Add(user); + user.No = (reader["No"].ToString()); + user.Area = reader["Area"].ToString(); + user.ApplicantNo = reader["ApplicantNo"].ToString(); + user.ApplicantDate = DateTime.Parse(reader["ApplicantDate"].ToString(), new CultureInfo("ko-KR")); + user.CargoVehicleNumber = reader["CargoVehicleNumber"].ToString(); + user.CargoVehicleName = reader["CargoVehicleName"].ToString(); + user.PassengerVehicleNumber = reader["PassengerVehicleNumber"].ToString(); + user.PassengerVehicleName = reader["PassengerVehicleName"].ToString(); + user.Name = reader["Name"].ToString(); + user.PersonalNumber = reader["PersonalNumber"].ToString(); + user.Phone = reader["Phone"].ToString(); + user.Address = reader["Address"].ToString(); + user.DateOfApplicant = DateTime.Parse(reader["DateOfApplicant"].ToString(), new CultureInfo("ko-KR")); + user.DateStart = DateTime.Parse(reader["DateStart"].ToString(), new CultureInfo("ko-KR")); + user.DateEnd = DateTime.Parse(reader["DateEnd"].ToString(), new CultureInfo("ko-KR")); + user.ExtensionStatus = reader["ExtensionStatus"].ToString() == "1"; + user.ExtensionStart = reader["ExtensionStatus"].ToString() == "1" ? DateTime.Parse(reader["ExtensionStart"].ToString(), new CultureInfo("ko-KR")) : DateTime.MinValue; + user.RefundStatus = reader["RefundStatus"].ToString() == "1"; + user.HistoryInformations = new List(); + + users.Add(user); } } } - - return userList; + for (int i = 0; i < users.Count; i++) + { + query = $"SELECT * From UserListHistory Where UserNo='{users[i].No}' Order By HistoryCode,HistoryDate ASC"; + using (var command = _sqLiteConnection.CreateCommand()) + { + command.CommandText = query; + using (var reader = command.ExecuteReader()) + { + while (reader.Read()) + { + HistoryInformation historyInformation = new HistoryInformation + { + HistoryCode = (EHistoryCode)int.Parse(reader["HistoryCode"].ToString()), + HistoryDate = DateTime.Parse(reader["HistoryDate"].ToString(), new CultureInfo("ko-KR")), + HistoryAmount = int.Parse(reader["HistoryAmount"].ToString()) + }; + users[i].HistoryInformations.Add(historyInformation); + } + } + } + } + return users; } - public static void UpdateExtended(List extendeds) { for (var i = 0; i < extendeds.Count; i++) @@ -390,7 +420,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program for (var i = 0; i < applicants.Count; i++) { var query = - $"INSERT INTO UserList (CargoVehicleNumber,PassengerVehicleNumber,Name,Phone,Address,DateOfApplicant,DateStart,DateEnd,Extended,RefundCheck) VALUES('{applicants[i].CargoVehicleNumber}','{applicants[i].PassengerVehicleNumber}','{applicants[i].Name}','{applicants[i].Phone}','{applicants[i].Address}','{applicants[i].DateOfApplication.DateTimeDatabase()}','{start.StartDateTime()}','{end.EndDateTime()}','0','0') "; + $"INSERT INTO UserList VALUES('{applicants[i].CargoVehicleNumber}','{applicants[i].PassengerVehicleNumber}','{applicants[i].Name}','{applicants[i].Phone}','{applicants[i].Address}','{applicants[i].DateOfApplication.DateTimeDatabase()}','{start.StartDateTime()}','{end.EndDateTime()}','0','0') "; using (var insertCommand = _sqLiteConnection.CreateCommand()) { insertCommand.CommandText = query; @@ -473,9 +503,15 @@ namespace HSUCO_Cargo_Garage_Operation_Program return proceedsDatas; } - public static List GetLedgerCertificate(DateTime startDateTime, DateTime endDateTime) + /// + /// 증명서 발급 대장 조회용 + /// + /// + /// + /// + public static List GetLedgerCertificate(DateTime startDateTime, DateTime endDateTime) { - var certificateDatas = new List(); + var certificateDatas = new List(); var query = $"SELECT UserList.Name, UserList.PersonalNumber, UserList.Address, UserList.CargoVehicleNumber, LedgerCertificate.IssueNumber, LedgerCertificate.IssueDate, LedgerCertificate.StartDate, LedgerCertificate.EndDate From LedgerCertificate INNER JOIN UserList ON LedgerCertificate.No = UserList.No Where LedgerCertificate.IssueDate >='{startDateTime.StartDateTime()}' And LedgerCertificate.IssueDate <='{endDateTime.EndDateTime()}'"; @@ -487,7 +523,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program { while (reader.Read()) { - var certificateData = new CertificateData(); + var certificateData = new CertificateInformation(); certificateData.Name = reader["Name"].ToString(); certificateData.PersonalNumber = reader["PersonalNumber"].ToString(); certificateData.Address = reader["Address"].ToString(); @@ -504,10 +540,14 @@ namespace HSUCO_Cargo_Garage_Operation_Program return certificateDatas; } - - public static CertificateData GetCertificate(string issueNumber) + /// + /// 발급 번호로 발급데이터 조회 + /// + /// + /// + public static CertificateInformation GetCertificate(string issueNumber) { - var certificateData = new CertificateData(); + CertificateInformation certificateInformation = new CertificateInformation(); var query = $"SELECT UserList.CargoVehicleNumber, UserList.PassengerVehicleNumber, UserList.Name, LedgerCertificate.IssueNumber, LedgerCertificate.IssueDate, LedgerCertificate.StartDate, LedgerCertificate.EndDate From LedgerCertificate INNER JOIN UserList ON LedgerCertificate.No = UserList.No Where IssueNumber='{issueNumber}'"; using (var command = _sqLiteConnection.CreateCommand()) { @@ -517,45 +557,62 @@ namespace HSUCO_Cargo_Garage_Operation_Program { while (reader.Read()) { - certificateData.CargoVehicleNumber = reader["CargoVehicleNumber"].ToString(); + certificateInformation.CargoVehicleNumber = reader["CargoVehicleNumber"].ToString(); //certificateData.PassengerVehicleNumber = reader["PassengerVehicleNumber"].ToString(); - certificateData.Name = reader["Name"].ToString(); - certificateData.IssueNumber = reader["IssueNumber"].ToString(); - certificateData.IssueDate = DateTime.Parse(reader["IssueDate"].ToString()); - certificateData.StartDate = DateTime.Parse(reader["StartDate"].ToString()); - certificateData.EndDate = DateTime.Parse(reader["EndDate"].ToString()); + certificateInformation.Name = reader["Name"].ToString(); + certificateInformation.IssueNumber = reader["IssueNumber"].ToString(); + certificateInformation.IssueDate = DateTime.Parse(reader["IssueDate"].ToString()); + certificateInformation.StartDate = DateTime.Parse(reader["StartDate"].ToString()); + certificateInformation.EndDate = DateTime.Parse(reader["EndDate"].ToString()); } } } - return certificateData; - + return certificateInformation; } - public static int GetLastApplicant(string year, string suffix) - { - var query = $"SELECT No From ApplicantList Where No Like '{year}-{suffix}%' Order By No DESC LIMIT 1"; - int lastNo = 0; - using (var command = _sqLiteConnection.CreateCommand()) - { - command.CommandText = query; - using (var reader = command.ExecuteReader()) - { - while (reader.Read()) - { - var no = reader[0].ToString(); - no = no.Substring(7, no.Length - 7); - lastNo = int.Parse(no); - } - } - } - return lastNo; + public static int GetLastApplicantLots(int year) + { + return GetLastNo(EGetLastNumber.ApplicantListLots, year); + } + public static int GetLastApplicantWait(int year) + { + return GetLastNo(EGetLastNumber.ApplicantListWait, year); } public static int GetLastCertificate(int year) { - var certificateDatas = new List(); - var query = - $"SELECT IssueNumber FROM LedgerCertificate Where IssueNumber Like '{year}%' Order By IssueNumber DESC LIMIT 1"; + return GetLastNo(EGetLastNumber.LedgerCertificate, year); + } + + public static int GetLastUser(int year) + { + return GetLastNo(EGetLastNumber.UserList, year); + } + public static int GetLastNo(EGetLastNumber eGetLastNumber, int year) + { + string tableName = string.Empty; + string suffix = string.Empty; + switch (eGetLastNumber) + { + case EGetLastNumber.ApplicantListLots: + tableName = "ApplicantList"; + suffix = "L"; + break; + case EGetLastNumber.ApplicantListWait: + tableName = "ApplicantList"; + suffix = "W"; + break; + case EGetLastNumber.UserList: + tableName = "UserList"; + suffix = "U"; + break; + case EGetLastNumber.LedgerCertificate: + tableName = "LedgerCertificate"; + suffix = "C"; + break; + + } + var query = $"SELECT No FROM {tableName} Where IssueNumber Like '{year}-{suffix}%' Order By No DESC LIMIT 1"; var lastNo = 0; using (var command = _sqLiteConnection.CreateCommand()) { @@ -566,15 +623,13 @@ namespace HSUCO_Cargo_Garage_Operation_Program while (reader.Read()) { var issueNumber = reader["IssueNumber"].ToString(); - issueNumber = issueNumber.Substring(5, issueNumber.Length - 5); + issueNumber = issueNumber.Substring(6, issueNumber.Length - 6); lastNo = int.Parse(issueNumber); } } } - return lastNo; } - public static bool SetCertificate(Certificate certificate) { var query = @@ -623,6 +678,7 @@ namespace HSUCO_Cargo_Garage_Operation_Program case "GarageName": settings.GarageName = value; break; + case "CargoLargeMaxCount": int.TryParse(value, out intValue); settings.CargoLargeMaxCount = intValue; diff --git a/HSUCO_Cargo_Garage_Operation_Program/Master.Designer.cs b/HSUCO_Cargo_Garage_Operation_Program/Master.Designer.cs index 373525d..dc75db9 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/Master.Designer.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/Master.Designer.cs @@ -33,19 +33,21 @@ this.tabPage1 = new System.Windows.Forms.TabPage(); this.metroTabControl_Applicant = new MetroFramework.Controls.MetroTabControl(); this.tabPage5 = new System.Windows.Forms.TabPage(); - this.applicant1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ApplicantControl(); this.tabPage6 = new System.Windows.Forms.TabPage(); - this.applicantList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ApplicantList(); this.tabPage7 = new System.Windows.Forms.TabPage(); - this.waitingList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.WaitingList(); this.tabPage8 = new System.Windows.Forms.TabPage(); - this.userList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.UserList(); this.tabPage9 = new System.Windows.Forms.TabPage(); this.tabPage10 = new System.Windows.Forms.TabPage(); this.tabPage2 = new System.Windows.Forms.TabPage(); - this.settings1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.SettingControl(); + this.Main = new System.Windows.Forms.TabPage(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.applicant1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ApplicantControl(); + this.applicantList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ApplicantList(); + this.waitingList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.WaitingList(); + this.userList1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.UserList(); this.listProceeds = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ListProceeds(); this.listCertificate1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.ListCertificate(); + this.settings1 = new HSUCO_Cargo_Garage_Operation_Program.CustomUserControl.SettingControl(); this.metroTabControl_Main.SuspendLayout(); this.tabPage1.SuspendLayout(); this.metroTabControl_Applicant.SuspendLayout(); @@ -56,10 +58,13 @@ this.tabPage9.SuspendLayout(); this.tabPage10.SuspendLayout(); this.tabPage2.SuspendLayout(); + this.Main.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.SuspendLayout(); // // metroTabControl_Main // + this.metroTabControl_Main.Controls.Add(this.Main); this.metroTabControl_Main.Controls.Add(this.tabPage1); this.metroTabControl_Main.Controls.Add(this.tabPage2); this.metroTabControl_Main.Dock = System.Windows.Forms.DockStyle.Fill; @@ -105,16 +110,6 @@ this.tabPage5.TabIndex = 0; this.tabPage5.Text = "신규 접수"; // - // applicant1 - // - this.applicant1.BackColor = System.Drawing.Color.White; - this.applicant1.Dock = System.Windows.Forms.DockStyle.Fill; - this.applicant1.Location = new System.Drawing.Point(0, 0); - this.applicant1.Margin = new System.Windows.Forms.Padding(0); - this.applicant1.Name = "applicant1"; - this.applicant1.Size = new System.Drawing.Size(968, 604); - this.applicant1.TabIndex = 1; - // // tabPage6 // this.tabPage6.Controls.Add(this.applicantList1); @@ -124,14 +119,6 @@ this.tabPage6.TabIndex = 1; this.tabPage6.Text = "신청자 리스트"; // - // applicantList1 - // - this.applicantList1.Dock = System.Windows.Forms.DockStyle.Fill; - this.applicantList1.Location = new System.Drawing.Point(0, 0); - this.applicantList1.Name = "applicantList1"; - this.applicantList1.Size = new System.Drawing.Size(968, 604); - this.applicantList1.TabIndex = 0; - // // tabPage7 // this.tabPage7.Controls.Add(this.waitingList1); @@ -141,14 +128,6 @@ this.tabPage7.TabIndex = 2; this.tabPage7.Text = "대기자 리스트"; // - // waitingList1 - // - this.waitingList1.Dock = System.Windows.Forms.DockStyle.Fill; - this.waitingList1.Location = new System.Drawing.Point(0, 0); - this.waitingList1.Name = "waitingList1"; - this.waitingList1.Size = new System.Drawing.Size(968, 604); - this.waitingList1.TabIndex = 0; - // // tabPage8 // this.tabPage8.Controls.Add(this.userList1); @@ -158,14 +137,6 @@ this.tabPage8.TabIndex = 3; this.tabPage8.Text = "이용자 리스트"; // - // userList1 - // - this.userList1.Dock = System.Windows.Forms.DockStyle.Fill; - this.userList1.Location = new System.Drawing.Point(0, 0); - this.userList1.Name = "userList1"; - this.userList1.Size = new System.Drawing.Size(968, 604); - this.userList1.TabIndex = 0; - // // tabPage9 // this.tabPage9.Controls.Add(this.listProceeds); @@ -193,17 +164,65 @@ this.tabPage2.TabIndex = 1; this.tabPage2.Text = "설정"; // - // settings1 + // Main // - this.settings1.BackColor = System.Drawing.Color.White; - this.settings1.Dock = System.Windows.Forms.DockStyle.Fill; - this.settings1.Location = new System.Drawing.Point(0, 0); - this.settings1.Name = "settings1"; - this.settings1.Size = new System.Drawing.Size(976, 646); - this.settings1.TabIndex = 0; + this.Main.BackColor = System.Drawing.Color.White; + this.Main.Controls.Add(this.pictureBox1); + this.Main.Location = new System.Drawing.Point(4, 38); + this.Main.Name = "Main"; + this.Main.Size = new System.Drawing.Size(976, 646); + this.Main.TabIndex = 2; + this.Main.Text = "메인"; + // + // pictureBox1 + // + this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill; + this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image"))); + this.pictureBox1.InitialImage = null; + this.pictureBox1.Location = new System.Drawing.Point(0, 0); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(976, 646); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pictureBox1.TabIndex = 0; + this.pictureBox1.TabStop = false; + // + // applicant1 + // + this.applicant1.BackColor = System.Drawing.Color.White; + this.applicant1.Dock = System.Windows.Forms.DockStyle.Fill; + this.applicant1.Location = new System.Drawing.Point(0, 0); + this.applicant1.Margin = new System.Windows.Forms.Padding(0); + this.applicant1.Name = "applicant1"; + this.applicant1.Size = new System.Drawing.Size(968, 604); + this.applicant1.TabIndex = 1; + // + // applicantList1 + // + this.applicantList1.Dock = System.Windows.Forms.DockStyle.Fill; + this.applicantList1.Location = new System.Drawing.Point(0, 0); + this.applicantList1.Name = "applicantList1"; + this.applicantList1.Size = new System.Drawing.Size(968, 604); + this.applicantList1.TabIndex = 0; + // + // waitingList1 + // + this.waitingList1.Dock = System.Windows.Forms.DockStyle.Fill; + this.waitingList1.Location = new System.Drawing.Point(0, 0); + this.waitingList1.Name = "waitingList1"; + this.waitingList1.Size = new System.Drawing.Size(968, 604); + this.waitingList1.TabIndex = 0; + // + // userList1 + // + this.userList1.Dock = System.Windows.Forms.DockStyle.Fill; + this.userList1.Location = new System.Drawing.Point(0, 0); + this.userList1.Name = "userList1"; + this.userList1.Size = new System.Drawing.Size(968, 604); + this.userList1.TabIndex = 0; // // listProceeds // + this.listProceeds.BackColor = System.Drawing.Color.White; this.listProceeds.Dock = System.Windows.Forms.DockStyle.Fill; this.listProceeds.Location = new System.Drawing.Point(0, 0); this.listProceeds.Name = "listProceeds"; @@ -212,12 +231,22 @@ // // listCertificate1 // + this.listCertificate1.BackColor = System.Drawing.Color.White; this.listCertificate1.Dock = System.Windows.Forms.DockStyle.Fill; this.listCertificate1.Location = new System.Drawing.Point(0, 0); this.listCertificate1.Name = "listCertificate1"; this.listCertificate1.Size = new System.Drawing.Size(968, 604); this.listCertificate1.TabIndex = 0; // + // settings1 + // + this.settings1.BackColor = System.Drawing.Color.White; + this.settings1.Dock = System.Windows.Forms.DockStyle.Fill; + this.settings1.Location = new System.Drawing.Point(0, 0); + this.settings1.Name = "settings1"; + this.settings1.Size = new System.Drawing.Size(976, 646); + this.settings1.TabIndex = 0; + // // Master // this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); @@ -238,6 +267,8 @@ this.tabPage9.ResumeLayout(false); this.tabPage10.ResumeLayout(false); this.tabPage2.ResumeLayout(false); + this.Main.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); this.ResumeLayout(false); } @@ -261,6 +292,8 @@ private CustomUserControl.SettingControl settings1; private CustomUserControl.ListProceeds listProceeds; private CustomUserControl.ListCertificate listCertificate1; + private System.Windows.Forms.TabPage Main; + private System.Windows.Forms.PictureBox pictureBox1; } } diff --git a/HSUCO_Cargo_Garage_Operation_Program/Master.resx b/HSUCO_Cargo_Garage_Operation_Program/Master.resx index 8f44dd7..c0152c7 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/Master.resx +++ b/HSUCO_Cargo_Garage_Operation_Program/Master.resx @@ -118,6 +118,295 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 diff --git a/HSUCO_Cargo_Garage_Operation_Program/PrintCertificate.cs b/HSUCO_Cargo_Garage_Operation_Program/PrintCertificate.cs index 3056735..4ec8d81 100644 --- a/HSUCO_Cargo_Garage_Operation_Program/PrintCertificate.cs +++ b/HSUCO_Cargo_Garage_Operation_Program/PrintCertificate.cs @@ -2,18 +2,21 @@ using System.Collections.Generic; using System.Drawing; using System.Drawing.Printing; +using System.Web; using Font = System.Drawing.Font; namespace HSUCO_Cargo_Garage_Operation_Program { internal class PrintCertificate { - private readonly List _certificateDatas; + private readonly List _certificateInformation; + private readonly string _garageName; private int _count; public PrintDocument printDocument; - public PrintCertificate(List certificateDatas) + public PrintCertificate(List certificateDatas, string garageName ) { _certificateDatas = certificateDatas; + _garageName = garageName; _count = 0; printDocument = new PrintDocument(); printDocument.DocumentName = "차고지 이용 증명서"; @@ -34,15 +37,15 @@ namespace HSUCO_Cargo_Garage_Operation_Program e.Graphics.DrawString($"■ 성  명 : {_certificateDatas[_count].Name}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 250); - e.Graphics.DrawString($"■ 생년월일 : {string.Empty}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 300); - e.Graphics.DrawString($"■ 주  소 : {string.Empty}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 350); + e.Graphics.DrawString($"■ 생년월일 : {_certificateDatas[_count].PersonalNumber}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 300); + e.Graphics.DrawString($"■ 주  소 : {_certificateDatas[_count].Address}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 350); e.Graphics.DrawString($"■ 차량번호 : {_certificateDatas[_count].CargoVehicleNumber}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 400); - e.Graphics.DrawString($"■ 이용요금 : {string.Empty}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 450); - e.Graphics.DrawString($"■ 이용면적 : {string.Empty}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 500); + e.Graphics.DrawString($"■ 이용요금 : {_certificateDatas[_count].Amount}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 450); + e.Graphics.DrawString($"■ 이용면적 : {_certificateDatas[_count].AreaSize}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 500); e.Graphics.DrawString($"■ 이용기한 : {_certificateDatas[_count].StartDate.ToString("yyyy-MM-dd")} ~ {_certificateDatas[_count].EndDate.ToString("yyyy-MM-dd")}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 550); - e.Graphics.DrawString($"■ 차 고 지 : {string.Empty}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 600); + e.Graphics.DrawString($"■ 차 고 지 : {_garageName}", new Font("맑은 고딕", 12), Brushes.Black, e.MarginBounds.Left + 50, e.MarginBounds.Top + 600); - CenterTextWriter($"위 차량에 대하여 {string.Empty} 화물자동차 공영차고지 이용을 증명합니다.", new Font("맑은 고딕", 12, FontStyle.Bold), e.Graphics, totalWidth, e.MarginBounds.Top + 700); + CenterTextWriter($"위 차량에 대하여 {_garageName} 화물자동차 공영차고지 이용을 증명합니다.", new Font("맑은 고딕", 12, FontStyle.Bold), e.Graphics, totalWidth, e.MarginBounds.Top + 700); CenterTextWriter($"{_certificateDatas[_count].IssueDate.ToString("yyyy년 MM월 dd일")}", new Font("맑은 고딕", 15), e.Graphics, totalWidth, e.MarginBounds.Top + 800); CenterTextWriter("화성도시공사 사장", new Font("맑은 고딕", 20, FontStyle.Bold), e.Graphics, totalWidth, e.MarginBounds.Top + 900); _count++;