From 6e88e7bdb42cb5459764e50fddaa2fb0d577d659 Mon Sep 17 00:00:00 2001 From: chi Date: Fri, 24 Nov 2023 08:38:21 +0900 Subject: [PATCH] .. --- Project/Properties/AssemblyInfo.cs | 4 +- Sub/AmkorRestfulService | 2 +- .../Holiday/rHolidaySummary.Designer.cs | 29 +- SubProject/FBS0000/Holiday/rHolidaySummary.cs | 74 +- .../FBS0000/Holiday/rHolidaySummary.rdlc | 791 +++++++++-- .../FBS0000/Holiday/rHolidaySummary.resx | 9 +- SubProject/FBS0000/dsReport.Designer.cs | 884 ++++++++++++ SubProject/FBS0000/dsReport.xsd | 97 +- .../FEQ0000/PurchaseEB/fPurchaseEB_Add.cs | 2 +- SubProject/FEQ0000/dsPurchase.Designer.cs | 1229 +++++++++++------ SubProject/FEQ0000/dsPurchase.xsd | 92 +- 11 files changed, 2579 insertions(+), 634 deletions(-) diff --git a/Project/Properties/AssemblyInfo.cs b/Project/Properties/AssemblyInfo.cs index f90a216..8d025b5 100644 --- a/Project/Properties/AssemblyInfo.cs +++ b/Project/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호가 자동으로 // 지정되도록 할 수 있습니다. // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("23.11.21.2000")] -[assembly: AssemblyFileVersion("23.11.21.2000")] +[assembly: AssemblyVersion("23.11.23.1006")] +[assembly: AssemblyFileVersion("23.11.23.1006")] diff --git a/Sub/AmkorRestfulService b/Sub/AmkorRestfulService index 88ae6e3..69b33b6 160000 --- a/Sub/AmkorRestfulService +++ b/Sub/AmkorRestfulService @@ -1 +1 @@ -Subproject commit 88ae6e3250e3f45d483e77ab268d6b22a16b44c2 +Subproject commit 69b33b6e3c193f2ab6c3abf4bfede691a77509cb diff --git a/SubProject/FBS0000/Holiday/rHolidaySummary.Designer.cs b/SubProject/FBS0000/Holiday/rHolidaySummary.Designer.cs index c37e66e..6f1e98e 100644 --- a/SubProject/FBS0000/Holiday/rHolidaySummary.Designer.cs +++ b/SubProject/FBS0000/Holiday/rHolidaySummary.Designer.cs @@ -31,7 +31,6 @@ this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(rHolidaySummary)); Microsoft.Reporting.WinForms.ReportDataSource reportDataSource1 = new Microsoft.Reporting.WinForms.ReportDataSource(); - this.dsReport = new FBS0000.dsReport(); this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.toolStripButton8 = new System.Windows.Forms.ToolStripButton(); this.lbStt = new System.Windows.Forms.ToolStripLabel(); @@ -41,17 +40,15 @@ this.btSearch = new System.Windows.Forms.ToolStripButton(); this.reportViewer1 = new Microsoft.Reporting.WinForms.ReportViewer(); this.bs = new System.Windows.Forms.BindingSource(this.components); + this.dsReport = new FBS0000.dsReport(); + this.bs2 = new System.Windows.Forms.BindingSource(this.components); this.ta = new FBS0000.dsReportTableAdapters.holydataTableAdapter(); - ((System.ComponentModel.ISupportInitialize)(this.dsReport)).BeginInit(); this.toolStrip1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dsReport)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.bs2)).BeginInit(); this.SuspendLayout(); // - // dsReport - // - this.dsReport.DataSetName = "dsReport"; - this.dsReport.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema; - // // toolStrip1 // this.toolStrip1.ImageScalingSize = new System.Drawing.Size(30, 30); @@ -125,8 +122,8 @@ // reportViewer1 // this.reportViewer1.Dock = System.Windows.Forms.DockStyle.Fill; - reportDataSource1.Name = "DataSet1"; - reportDataSource1.Value = this.bs; + reportDataSource1.Name = "DataSet2"; + reportDataSource1.Value = this.bs2; this.reportViewer1.LocalReport.DataSources.Add(reportDataSource1); this.reportViewer1.LocalReport.ReportEmbeddedResource = "FBS0000.Holiday.rHolidaySummary.rdlc"; this.reportViewer1.Location = new System.Drawing.Point(0, 37); @@ -141,6 +138,16 @@ this.bs.DataMember = "holydata"; this.bs.DataSource = this.dsReport; // + // dsReport + // + this.dsReport.DataSetName = "dsReport"; + this.dsReport.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema; + // + // bs2 + // + this.bs2.DataMember = "holydatasum"; + this.bs2.DataSource = this.dsReport; + // // ta // this.ta.ClearBeforeFill = true; @@ -156,10 +163,11 @@ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "휴가이력 현황"; this.Load += new System.EventHandler(this.rJobReport_Load); - ((System.ComponentModel.ISupportInitialize)(this.dsReport)).EndInit(); this.toolStrip1.ResumeLayout(false); this.toolStrip1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dsReport)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.bs2)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -177,5 +185,6 @@ private Microsoft.Reporting.WinForms.ReportViewer reportViewer1; private System.Windows.Forms.BindingSource bs; private dsReportTableAdapters.holydataTableAdapter ta; + private System.Windows.Forms.BindingSource bs2; } } \ No newline at end of file diff --git a/SubProject/FBS0000/Holiday/rHolidaySummary.cs b/SubProject/FBS0000/Holiday/rHolidaySummary.cs index 2362c6d..4987fa2 100644 --- a/SubProject/FBS0000/Holiday/rHolidaySummary.cs +++ b/SubProject/FBS0000/Holiday/rHolidaySummary.cs @@ -1,4 +1,6 @@ -using System; +using FarPoint.Excel; +using FarPoint.Win.Spread.CellType.BarCode; +using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; @@ -41,9 +43,67 @@ namespace FBS0000 void refrehData() { - var dt = DateTime.Parse(this.tbMon.Text); + var dt = DateTime.Parse(this.tbMon.Text); ta.Fill(this.dsReport.holydata, FCOMMON.info.Login.gcode, dt.Year.ToString("0000") + "-01-01", dt.ToShortDateString()); + //데이터를 재 집계한다. + this.dsReport.holydatasum.Clear(); + var grp_user = dsReport.holydata.GroupBy(t => t.uid); + foreach (var grp in grp_user) + { + //cate group + var first_user = grp.First(); + var grp_cate = grp.GroupBy(t => t.cate); + foreach (var cate in grp_cate) + { + var newdr = this.dsReport.holydatasum.NewholydatasumRow(); + var catename = cate.Key; + newdr.uid = grp.Key; + newdr.uname = first_user.name; + newdr.process = first_user.Process; + newdr.cate = cate.Key; + if (catename.StartsWith("대체")) + { + newdr.dr = cate.Sum(t => t.DrTime); + newdr.cr = cate.Sum(t => t.CrTime); + newdr.jan = newdr.dr - newdr.cr; + //newdr.add = 0; + if (newdr.dr != 0) newdr.rate = (newdr.cr / newdr.dr)*100f; + else newdr.rate = 0; + } + else if (catename.StartsWith("외출")) + { + //newdr.dr = 0; + //newdr.cr = 0; + //newdr.jan = 0; + //newdr.add = 0; + //newdr.rate = 0; + } + else + { + newdr.dr = cate.Sum(t => t.DrDay); + newdr.cr = cate.Sum(t => t.CrDay); + newdr.jan = newdr.dr - newdr.cr; + if (newdr.jan < 0) //초과사용자는 0으로 처리 + { + newdr.add = newdr.jan; + newdr.cr = newdr.dr; + newdr.jan = 0; + } + if (newdr.dr != 0) newdr.rate = (newdr.cr / newdr.dr) * 100f; + else newdr.rate = 0; + newdr.drday = newdr.dr; + newdr.crday = newdr.cr; + newdr.janday = newdr.jan; + newdr.rateday = newdr.rate; + newdr.addday = newdr.add; + } + + this.dsReport.holydatasum.AddholydatasumRow(newdr); + } + } + this.dsReport.holydatasum.AcceptChanges(); + //this.reportViewer1.LocalReport.ReportPath = "JobReport_\\rK5Dailyform.rdlc"; this.reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.Normal); @@ -148,17 +208,17 @@ namespace FBS0000 private void btRefresh_Click(object sender, EventArgs e) { - + } private void tbProcess_SelectedIndexChanged(object sender, EventArgs e) { - + } private void button1_Click(object sender, EventArgs e) { - + } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) @@ -168,12 +228,12 @@ namespace FBS0000 private void toolStripComboBox1_SelectedIndexChanged(object sender, EventArgs e) { - // if (tbProcess.SelectedIndex >= 0) refrehData(); + // if (tbProcess.SelectedIndex >= 0) refrehData(); } private void toolStripButton6_Click(object sender, EventArgs e) { - // dataGridView1.ExportData(string.Empty); + // dataGridView1.ExportData(string.Empty); } private void btSearch_Click(object sender, EventArgs e) diff --git a/SubProject/FBS0000/Holiday/rHolidaySummary.rdlc b/SubProject/FBS0000/Holiday/rHolidaySummary.rdlc index fdfaa99..4317544 100644 --- a/SubProject/FBS0000/Holiday/rHolidaySummary.rdlc +++ b/SubProject/FBS0000/Holiday/rHolidaySummary.rdlc @@ -2,13 +2,13 @@ - + - + true @@ -61,7 +61,7 @@ - + true @@ -114,7 +114,7 @@ - + true @@ -174,14 +174,14 @@ - + true true - + process + + + + + + Textbox29 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + =iif(fields!cate.Value = "대체", "Plum",iif(fields!cate.Value = "이월", "LightSteelBlue","White")) + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + true + + + + + =Sum(Fields!rate.Value) + + + + + + addday + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Sum(Fields!rateday.Value) + + + + + + Textbox30 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + LightGrey + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + true + + + + + = iif(sum(Fields!drday.Value) = 0 , 0 , (sum(Fields!crday.Value) / sum(Fields!drday.Value)) * 100) + + + + + + addday1 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + LightGrey + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + = iif(sum(Fields!drday.Value) = 0 , 0 , (sum(Fields!crday.Value) / sum(Fields!drday.Value)) * 100) + + + + + + Textbox31 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + true + + + + + = iif(sum(Fields!drday.Value) = 0 , 0 , (sum(Fields!crday.Value) / sum(Fields!drday.Value)) * 100) + + + + + + addday2 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + = iif(sum(Fields!drday.Value) = 0 , 0 , (sum(Fields!crday.Value) / sum(Fields!drday.Value)) * 100) - true @@ -1784,7 +2152,8 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 0.6cm - + + true true @@ -1840,27 +2209,28 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi - + =Fields!cate.Value - = iif( Fields!cate.Value = "대체", "Z", iif(fields!cate.Value = "이월", "A" ,"B" & Fields!cate.Value)) + =iif(Fields!cate.Value = "대체", "Z", iif(Fields!cate.Value = "이월", "A", "B" & Fields!cate.Value)) 0.6cm - + true + true true - = Fields!cate.Value & iif(Fields!cate.Value = "대체" , "(시간)" , iif(Fields!cate.Value ="외출", "(건)", "(일)")) + =Fields!cate.Value & iif(Fields!cate.Value = "대체", "(시간)", iif(Fields!cate.Value = "외출", "(건)", "(일)")) + + + + + + Textbox27 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + + true + true true @@ -2166,7 +2601,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 1.2cm - + true @@ -2226,7 +2661,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 0.6cm - + true true @@ -2290,7 +2725,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 0.6cm - + true true @@ -2351,7 +2786,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 0.6cm - + true true @@ -2412,7 +2847,68 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 0.6cm - + + true + true + + + + + 초과 + + + + + + + Textbox106 + + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + + #181818 + + 1pt + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + true true @@ -2476,27 +2972,27 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi - + - =Fields!Process.Value + =Fields!process.Value - =Fields!Process.Value + =Fields!process.Value 2.5cm - + true true - =Fields!Process.Value + =Fields!process.Value @@ -2544,28 +3040,28 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi - + - =Fields!name.Value + =Fields!uname.Value =Fields!uid.Value - =Fields!name.Value + =Fields!uname.Value 2.23543cm - + true true - =Fields!name.Value + =Fields!uname.Value @@ -2616,7 +3112,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 2.31479cm - + true true @@ -2679,7 +3175,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 4.55022cm - + true true @@ -2741,7 +3237,7 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi 7.05022cm - + true true @@ -2804,20 +3300,51 @@ iif(sum(Fields!DrDay.Value) >0, Math.Round( (sum(fields!CrDay.Value) / sum(Fi true true true - DataSet1 + DataSet2 3.81167cm - 19.05022cm + 21.53668cm + + true + true + + + + + *초과 발생시 잔여 값은 0이되며, 사용률은 100% 로 변경 됩니다 + + + + + + 2pt + 2pt + 2pt + 2pt + + - 1.50066in + 1.75077in