migratino complete

This commit is contained in:
chi
2025-04-07 00:54:29 +09:00
parent 2b22ca9c51
commit 8ac3600ec1
158 changed files with 39098 additions and 21257 deletions

View File

@@ -55,29 +55,30 @@ namespace FPJ0000.JobReport_
void UpdateUserList()
{
var db = new EEEntities();
//var db = new EEEntities();
cmbUser.Items.Clear();
cmbUser.Items.Add("--전체--");
//일반사용자 목록 가져온다
IQueryable<IGrouping<String, vJobReportForUser>> userlist;
dsJobReport.vJobReportForUserDataTable userlist;
var db = new dsJobReportTableAdapters.vJobReportForUserTableAdapter();
if (tbProcess.SelectedIndex <= 0)
{
//공정구분없이 전체사용자를 가져온다
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).OrderBy(t => t.name).GroupBy(t => t.name);
userlist = db.GetNameList(FCOMMON.info.Login.gcode);//.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).OrderBy(t => t.name).GroupBy(t => t.name);
}
else
{
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).OrderBy(t => t.name).GroupBy(t => t.name);
userlist = db.GetNameListByProcess(FCOMMON.info.Login.gcode, tbProcess.Text);//.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).OrderBy(t => t.name).GroupBy(t => t.name);
}
//if (tbProcess.SelectedIndex != 0) userlist = userlist.Where(t => t.processs == tbProcess.Text); //해당 공정의 인원만 처리한다
foreach (var item in userlist)
foreach (var dr in userlist)
{
var dr = item.First();
//var dr = item.First();
cmbUser.Items.Add(String.Format("[{0}] {1}", dr.id, dr.name));
}
if (tbProcess.SelectedIndex > 0)
@@ -86,174 +87,174 @@ namespace FPJ0000.JobReport_
if (cmbUser.SelectedIndex < 0) cmbUser.SelectedIndex = 0; //기본전체로 선택해준다.
}
void refrehData()
{
//void refrehData()
//{
var db = new EEEntities();
// var db = new EEEntities();
////조회공정
//this.fpSpread1.Sheets[0].Cells[3, 2].Value = tbProcess.Text;
// ////조회공정
// //this.fpSpread1.Sheets[0].Cells[3, 2].Value = tbProcess.Text;
////담당자
//this.fpSpread1.Sheets[0].Cells[3, 3].Value = cmbUser.Text;
// ////담당자
// //this.fpSpread1.Sheets[0].Cells[3, 3].Value = cmbUser.Text;
////시작일:F4
//this.fpSpread1.Sheets[0].Cells[3, 5].Value = dts.Value;
// ////시작일:F4
// //this.fpSpread1.Sheets[0].Cells[3, 5].Value = dts.Value;
////종료일:G4
//this.fpSpread1.Sheets[0].Cells[3, 6].Value = dte.Value;
// ////종료일:G4
// //this.fpSpread1.Sheets[0].Cells[3, 6].Value = dte.Value;
////근문일수,시간
var vSD = dts.Value.ToShortDateString();
var vED = dte.Value.ToShortDateString();
// ////근문일수,시간
// var vSD = dts.Value.ToShortDateString();
// var vED = dte.Value.ToShortDateString();
////휴가일수확인
//var drDays = db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
// ////휴가일수확인
// //var drDays = db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
////근무일수적용
//if (drDays == null || drDays.Count() < 1) this.fpSpread1.Sheets[0].Cells[3, 7].Value = 0;
//else this.fpSpread1.Sheets[0].Cells[3, 7].Value = drDays.Count();
// ////근무일수적용
// //if (drDays == null || drDays.Count() < 1) this.fpSpread1.Sheets[0].Cells[3, 7].Value = 0;
// //else this.fpSpread1.Sheets[0].Cells[3, 7].Value = drDays.Count();
////기준시간 1번시트에 추가 표시 (210215 - 정봉석)
//this.fpSpread1.Sheets[1].Cells["F1"].Value = drDays.Count() * 8;
// ////기준시간 1번시트에 추가 표시 (210215 - 정봉석)
// //this.fpSpread1.Sheets[1].Cells["F1"].Value = drDays.Count() * 8;
ComplexBorderSide left = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide top = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide right = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide bottom = new ComplexBorderSide(Color.Gray, 1);
// ComplexBorderSide left = new ComplexBorderSide(Color.Gray, 1);
// ComplexBorderSide top = new ComplexBorderSide(Color.Gray, 1);
// ComplexBorderSide right = new ComplexBorderSide(Color.Gray, 1);
// ComplexBorderSide bottom = new ComplexBorderSide(Color.Gray, 1);
//사용자목록을 가져온다
List<vJobReportForUser> baseData;
// //사용자목록을 가져온다
// List<vJobReportForUser> baseData;
//사용자로 그룹해서 수량을 세명 , 사용자 숫자가 된다.
//this.fpSpread1.Sheets[0].Cells[3, 9].Value = baseData.GroupBy(t => t.id).Count(); //인원수
// //사용자로 그룹해서 수량을 세명 , 사용자 숫자가 된다.
// //this.fpSpread1.Sheets[0].Cells[3, 9].Value = baseData.GroupBy(t => t.id).Count(); //인원수
var col = 0;
var row = 0;
// var col = 0;
// var row = 0;
//해당 그룹의 기간데이터를 가져온다
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
baseData = db.vJobReportForUser.AsNoTracking()
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else if (tbProcess.SelectedIndex > 0)
{
baseData = db.vJobReportForUser.AsNoTracking()
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else
{
baseData = db.vJobReportForUser.AsNoTracking()
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
// //해당 그룹의 기간데이터를 가져온다
// if (cmbUser.SelectedIndex > 0)
// {
// //사용자번호
// var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
// baseData = db.vJobReportForUser.AsNoTracking()
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
// }
// else if (tbProcess.SelectedIndex > 0)
// {
// baseData = db.vJobReportForUser.AsNoTracking()
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
// }
// else
// {
// baseData = db.vJobReportForUser.AsNoTracking()
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
// }
row = 5 - 1;
// row = 5 - 1;
// this.fpSpread1.Sheets[1].RowCount = baseData.Count + 10;
int no = 1;
this.progressBar1.Value = 0;
this.progressBar1.Maximum = baseData.Count + 1;
// // this.fpSpread1.Sheets[1].RowCount = baseData.Count + 10;
// int no = 1;
// this.progressBar1.Value = 0;
// this.progressBar1.Maximum = baseData.Count + 1;
this.fpSpread1.ActiveSheetIndex = 1;
this.fpSpread1.ActiveSheet.AutoCalculation = false;
foreach (var item in baseData)
{
col = 1;
var dt = DateTime.Parse(item.pdate);
this.fpSpread1.Sheets[1].Cells[row, col++].Value = no++;
// this.fpSpread1.ActiveSheetIndex = 1;
// this.fpSpread1.ActiveSheet.AutoCalculation = false;
// foreach (var item in baseData)
// {
// col = 1;
// var dt = DateTime.Parse(item.pdate);
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = no++;
var datestr = string.Format("{0:00}/{1:00}", dt.Month, dt.Day);
this.fpSpread1.Sheets[1].Cells[row, col++].Value = datestr;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.requestpart;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.package;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.status;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.type;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.process;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.projectName;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.description;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.hrs;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.ot;
col++;
col++;
col++;// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.svalue;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.name;
this.progressBar1.Value += 1;
row += 1;
}
this.progressBar1.Value = 0;// += 1;
this.progressBar1.Maximum = fpSpread1.Sheets[1].RowCount + 1;
for (int r = baseData.Count; r < fpSpread1.Sheets[1].RowCount; r++)
{
col = 1;
// var datestr = string.Format("{0:00}/{1:00}", dt.Month, dt.Day);
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = datestr;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.requestpart;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.package;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.status;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.type;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.process;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.projectName;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.description;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.hrs;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.ot;
// col++;
// col++;
// col++;// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.svalue;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.name;
// this.progressBar1.Value += 1;
// row += 1;
// }
// this.progressBar1.Value = 0;// += 1;
// this.progressBar1.Maximum = fpSpread1.Sheets[1].RowCount + 1;
// for (int r = baseData.Count; r < fpSpread1.Sheets[1].RowCount; r++)
// {
// col = 1;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
col++;
col++;
col++;// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.svalue;
this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
this.progressBar1.Value = r;
row += 1;
}
this.fpSpread1.ActiveSheet.AutoCalculation = true;
//System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("ko-KR", false);
//FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType();
//numberCellType1.NegativeRed = true;
//numberCellType1.NullDisplay = "--";
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// col++;
// col++;
// col++;// this.fpSpread1.Sheets[1].Cells[row, col++].Value = item.svalue;
// this.fpSpread1.Sheets[1].Cells[row, col++].Value = string.Empty;
// this.progressBar1.Value = r;
// row += 1;
// }
// this.fpSpread1.ActiveSheet.AutoCalculation = true;
// //System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("ko-KR", false);
// //FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType();
// //numberCellType1.NegativeRed = true;
// //numberCellType1.NullDisplay = "--";
////합계데이터
//fpSpread1.Sheets[0].Cells[row, 1].Value = "합계";
//fpSpread1.Sheets[0].Cells[row, 1].BackColor = Color.LightGray;
//fpSpread1.Sheets[0].Cells[row, 1].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
//fpSpread1.Sheets[0].Cells[row, 1].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
//fpSpread1.Sheets[0].Cells[row, 1].Border = new ComplexBorder(left, top, right, bottom);
//for (int i = 2; i < 11; i++)
//{
// char basec = 'C';
// char newc = (char)(basec + (i - 2));
// fpSpread1.Sheets[0].Cells[row, i].Formula = "SUM(" + newc.ToString() + "8:" + newc.ToString() + row.ToString() + ")";
// fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.LightGray;
// ////합계데이터
// //fpSpread1.Sheets[0].Cells[row, 1].Value = "합계";
// //fpSpread1.Sheets[0].Cells[row, 1].BackColor = Color.LightGray;
// //fpSpread1.Sheets[0].Cells[row, 1].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
// //fpSpread1.Sheets[0].Cells[row, 1].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
// //fpSpread1.Sheets[0].Cells[row, 1].Border = new ComplexBorder(left, top, right, bottom);
// //for (int i = 2; i < 11; i++)
// //{
// // char basec = 'C';
// // char newc = (char)(basec + (i - 2));
// // fpSpread1.Sheets[0].Cells[row, i].Formula = "SUM(" + newc.ToString() + "8:" + newc.ToString() + row.ToString() + ")";
// // fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.LightGray;
// fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
// fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
// fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
// fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
// // fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
// // fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
// // fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
// // fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
// fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
// fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
// fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
// // fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
// // fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
// // fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
//}
// //}
//this.fpSpread1.Sheets[0].RowCount = row + 1;
// //this.fpSpread1.Sheets[0].RowCount = row + 1;
}
//}
private void button1_Click(object sender, EventArgs e)
{
//refrehData();
@@ -272,21 +273,21 @@ namespace FPJ0000.JobReport_
//자료를 불러온다
var sd = dts.Value.ToShortDateString();// DateTime.Parse(dtSD.Text).ToShortDateString();
var ed = dte.Value.ToShortDateString(); // DateTime.Parse(dtED.Text).ToShortDateString();
var db = new EEEntities();
var db = new dsJobReportTableAdapters.vJobReportForUserTableAdapter();// EEEntities();
var gcode = "EET1P";
if (String.IsNullOrEmpty(FCOMMON.info.Login.gcode) == false)
gcode = FCOMMON.info.Login.gcode;
var rawdata = db.vJobReportForUser.AsNoTracking()
.Where(t => t.gcode == gcode && t.pdate.CompareTo(sd) >= 0 && t.pdate.CompareTo(ed) <= 1)
.OrderBy(t => t.pdate).GroupBy(t => t.pdate).ToList();
var rawdata = db.GetByDate(FCOMMON.info.Login.gcode, sd, ed).OrderBy(t => t.pdate).GroupBy(t => t.pdate);// ..vJobReportForUser.AsNoTracking()
//.Where(t => t.gcode == gcode && t.pdate.CompareTo(sd) >= 0 && t.pdate.CompareTo(ed) <= 1)
//.OrderBy(t => t.pdate).GroupBy(t => t.pdate).ToList();
//ta.Fill(this.dsReport.vJobReportForUser, FCOMMON.info.Login.gcode, sd.ToShortDateString(), ed.ToShortTimeString());
var col = 3;
var sheet = this.fpSpread1.Sheets[0];
sheet.ColumnCount = 3 + rawdata.Count;
sheet.ColumnCount = 3 + rawdata.Count();
foreach (var item in rawdata)
{
sheet.Cells[3, col].Value = item.First().ww;

View File

@@ -111,7 +111,7 @@ namespace FPJ0000.JobReport_
}
void refrehData()
{
var db = new EEEntities();
//var db = new EEEntities();
progressBar1.Value = 0;
progressBar1.Maximum = 10;
@@ -136,7 +136,8 @@ namespace FPJ0000.JobReport_
var vED = dte.Value.ToShortDateString();
//휴가일수확인
var drDays = db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
var taHolidylist = new dsJobReportTableAdapters.HolidayLIstTableAdapter();
var drDays = taHolidylist.GetData(vSD, vED).Where(t => t.IsfreeNull() || t.free == false);// db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
//근무일수적용
if (drDays == null || drDays.Count() < 1) this.fpSpread1.Sheets[0].Cells[3, 6].Value = 0;
@@ -149,21 +150,22 @@ namespace FPJ0000.JobReport_
ComplexBorderSide bottom = new ComplexBorderSide(Color.Gray, 1);
//사용자목록을 가져온다
List<vJobReportForUser> baseData;
var userCount = 0;
var taJobreportuser = new dsJobReportTableAdapters.vJobReportForUserTableAdapter();
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = getUserID();// cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
userCount = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo).GroupBy(t=>t.id).Count();
userCount = 1;// db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo).GroupBy(t=>t.id).Count();
}
else if (tbProcess.SelectedIndex > 0)
{
userCount = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).GroupBy(t => t.id).Count();
userCount = (int)taJobreportuser.GetProcessUserCount(FCOMMON.info.Login.gcode,tbProcess.Text);// db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).GroupBy(t => t.id).Count();
}
else
{
userCount = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).GroupBy(t => t.id).Count();
userCount = (int)taJobreportuser.GetUserCount(FCOMMON.info.Login.gcode);// db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).GroupBy(t => t.id).Count();
}
@@ -175,31 +177,32 @@ namespace FPJ0000.JobReport_
//해당 그룹의 기간데이터를 가져온다
dsJobReport.vJobReportForUserDataTable baseData;
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = getUserID();// cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
baseData = taJobreportuser.GetDataID(FCOMMON.info.Login.gcode, UserNo, vSD, vED); // db.vJobReportForUser
//.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
//.OrderBy(t => t.name)
//.OrderBy(t => t.pdate)
//.ToList();
}
else if (tbProcess.SelectedIndex > 0)
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
baseData = taJobreportuser.GetByProcess(FCOMMON.info.Login.gcode, tbProcess.Text, vSD, vED);// db.vJobReportForUser
//.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
//.OrderBy(t => t.name)
//.OrderBy(t => t.pdate)
//.ToList();
}
else
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
baseData = taJobreportuser.GetByDate(FCOMMON.info.Login.gcode, vSD, vED);// db.vJobReportForUser
//.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
//.OrderBy(t => t.name)
//.OrderBy(t => t.pdate)
//.ToList();
}
col = 0;

View File

@@ -369,10 +369,12 @@ namespace FPJ0000
if (dlg != DialogResult.Yes) return;
var cnt = 0;
var db = new EEEntities();
var db = new dsJobReportTableAdapters.HolidayLIstTableAdapter();// EEEntities();
var taJobReportQuery = new dsJobReportTableAdapters.QueriesTableAdapter();
var taJobReport = new dsPRJTableAdapters.JobReportTableAdapter();
//근무일자 확인
var holilist = db.HolidayLIst.ToList();
var dt = new FPJ0000.dsPRJ.JobReportDataTable();
foreach (dsPRJ.EETGW_JobReport_AutoInputRow dr in this.dsMSSQL.EETGW_JobReport_AutoInput)
{
if (dr.RowState == DataRowState.Deleted || dr.RowState == DataRowState.Detached) continue;
@@ -380,11 +382,11 @@ namespace FPJ0000
//시작일자부텅 오늘까지 데이터를 확인한다.
var sd = DateTime.Parse(dr.pdate);
while(true)
while (true)
{
if (sd > DateTime.Now) break;
//이날짜가 일반 날짜라면 데이터를 기록한다.
var dayinfo = holilist.Where(t => t.pdate == sd.ToShortDateString()).FirstOrDefault();
var dayinfo = db.GetOne(sd.ToShortDateString()).FirstOrDefault();// holilist.Where(t => t.pdate == sd.ToShortDateString()).FirstOrDefault();
if (dayinfo.free == true)
{
sd = sd.AddDays(1);
@@ -393,14 +395,14 @@ namespace FPJ0000
//그냥 생성된자료가 없어야한다
var vPdate = sd.ToShortDateString();
if (db.JobReport.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate == vPdate && t.uid == dr.uid).Any())
if (taJobReportQuery.ExistUserData(FCOMMON.info.Login.gcode, vPdate, dr.uid) > 0)// db.JobReport.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate == vPdate && t.uid == dr.uid).Any())
{
sd = sd.AddDays(1);
continue;
}
//이데이터를 그대로 생성해준다.
var newdr = new JobReport();
var newdr = dt.NewJobReportRow();// new JobReport();
newdr.gcode = FCOMMON.info.Login.gcode;
newdr.wuid = FCOMMON.info.Login.no;
newdr.wdate = DateTime.Now;
@@ -420,22 +422,26 @@ namespace FPJ0000
newdr.status = dr.status;
newdr.tag = dr.tag;
newdr.uid = dr.uid;
db.JobReport.Add(newdr);
cnt += 1;
dt.AddJobReportRow(newdr);// db.JobReport.Add(newdr);
cnt += 1;//
sd = sd.AddDays(1);
}
}
if (cnt > 0)
{
db.SaveChanges();
cnt = taJobReport.Update(dt);
dt.AcceptChanges();
FCOMMON.Util.MsgI($"{cnt} 건의 업무일지가 자동 생성 되었습니다");
}
taJobReport.Dispose();
taJobReportQuery.Dispose();
}
}
}

View File

@@ -1,5 +1,6 @@
using AR;
using arCtl;
using FCM0000;
using FCOMMON;
using System;
using System.Collections.Generic;
@@ -43,7 +44,7 @@ namespace FPJ0000.JobReport_
this.grpkisul.Visible = getKisulInput;
//개발자상태에서만 표시한다
var bDev = System.Diagnostics.Debugger.IsAttached ;
var bDev = System.Diagnostics.Debugger.IsAttached;
tbJobType.Visible = bDev;
tbJobGrp.Visible = bDev;
}
@@ -373,11 +374,11 @@ namespace FPJ0000.JobReport_
if (copyMOde == false && dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Added)
{
//해당 데이터의 메일 양식을 검사해서 데이터를 적용해준다.
var db = new EEEntities();
var dr0 = db.EETGW_DocuForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "J0").FirstOrDefault();
var db = new dsPRJTableAdapters.EETGW_DocuFormTableAdapter();//. EEEntities();
var dr0 = db.GetData(FCOMMON.info.Login.gcode, "J0").FirstOrDefault();//.EETGW_DocuForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "J0").FirstOrDefault();
if (dr0 != null)
{
richTextBoxEx1.Rtf = dr0.body;
if (dr0.IsbodyNull() == false) richTextBoxEx1.Rtf = dr0.body;
}
db.Dispose();
}
@@ -730,13 +731,15 @@ namespace FPJ0000.JobReport_
var dlg = FCOMMON.Util.MsgQ("관리자 메일을 전송할까요?\n업무일지 작성 내용이 전달 됩니다");
if (dlg == DialogResult.Yes)
{
var db = new EEEntities();
var mf = db.MailForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "MA").FirstOrDefault();
var taMData = new dsMailTableAdapters.MailDataTableAdapter();
var taForm = new dsMailTableAdapters.MailFormTableAdapter();// EEEntities();
var mf = taForm.GetData(FCOMMON.info.Login.gcode, "MA").FirstOrDefault();//) .MailForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "MA").FirstOrDefault();
if (mf != null)
{
try
{
var mbody = new MailData();
var dtdata = new FPJ0000.dsMail.MailDataDataTable();
var mbody = dtdata.NewMailDataRow();
mbody.tolist = maildataupdate(mf.tolist);
mbody.bcc = maildataupdate(mf.bcc);
mbody.cc = maildataupdate(mf.cc);
@@ -749,8 +752,8 @@ namespace FPJ0000.JobReport_
mbody.body = maildataupdate(mf.body);
mbody.wuid = FCOMMON.info.Login.no;
mbody.wdate = DateTime.Now;
db.MailData.Add(mbody);
db.SaveChanges();
dtdata.AddMailDataRow(mbody);
taMData.Update(dtdata);
}
catch (Exception ex)
{
@@ -823,10 +826,10 @@ namespace FPJ0000.JobReport_
//해당 데이터의 메일 양식을 검사해서 데이터를 적용해준다.
var formname = tbJobType.Text.Trim() + "|" + cmbState.Text.Trim();
var db = new EEEntities();
var taDocuForm = new dsPRJTableAdapters.EETGW_DocuFormTableAdapter();// EEEntities();
//프로젝트 제목 서포트
var dr0 = db.EETGW_DocuForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "J2" && t.title == formname).FirstOrDefault();
var dr0 = taDocuForm.GetByTitle(FCOMMON.info.Login.gcode, "J2", formname).FirstOrDefault();//.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "J2" && t.title == formname).FirstOrDefault();
if (dr0 != null)
{
var rtx = new RichTextBox();
@@ -839,7 +842,7 @@ namespace FPJ0000.JobReport_
lbTitleTip.Text = "프로젝트가 있다면 해당 프로젝트 명을 입력한 후 Enter 키를 눌러서 연결 해주세요";
}
var dr = db.EETGW_DocuForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == "J1" && t.title == formname).FirstOrDefault();
var dr = taDocuForm.GetByTitle(FCOMMON.info.Login.gcode, "J1", formname).FirstOrDefault();
if (dr != null)
{

View File

@@ -51,7 +51,7 @@ namespace FPJ0000.JobReport_
//자료를 불러온다
var sd = DateTime.Parse(dtSD.Text).ToShortDateString();
var ed = DateTime.Parse(dtED.Text).ToShortDateString();
var db = new EEEntities();
var db = new dsReportTableAdapters.vJobReportForUserTableAdapter();// EEEntities();
var gcode = "EET1P";
if (String.IsNullOrEmpty(FCOMMON.info.Login.gcode) == false)
@@ -59,9 +59,9 @@ namespace FPJ0000.JobReport_
//var ta = new dsReportTableAdapters.vJobReportForUserTableAdapter();
//var rawdata0 = ta.GetData(FCOMMON.info.Login.gcode, sd, ed);
var rawdata = db.vJobReportForUser.AsNoTracking()
.Where(t => t.gcode == gcode && t.pdate.CompareTo(sd) >= 0 && t.pdate.CompareTo(ed) <= 0)
.OrderBy(t => t.pdate).GroupBy(t => t.pdate);
var rawdata = db.GetByDate(FCOMMON.info.Login.gcode, sd, ed).GroupBy(t => t.pdate);//.vJobReportForUser.AsNoTracking()
//.Where(t => t.gcode == gcode && t.pdate.CompareTo(sd) >= 0 && t.pdate.CompareTo(ed) <= 0)
//.OrderBy(t => t.pdate).GroupBy(t => t.pdate);
//ta.Fill(this.dsReport.vJobReportForUser, FCOMMON.info.Login.gcode, sd.ToShortDateString(), ed.ToShortTimeString());
// var rawdata = rawdata0.GroupBy(t => t.pdate);