This commit is contained in:
chi
2021-02-16 08:31:01 +09:00
parent 30b06c2d35
commit 1c52445f76
23 changed files with 985 additions and 378 deletions

View File

@@ -39,14 +39,33 @@ namespace FPJ0000
this.cmbUser.Items.Add("-- 전체 --");
var taUserList = new dsReportTableAdapters.ProcessUserListTableAdapter();
var processStr = "%";
if (cmbProcess.SelectedIndex > 0) processStr = cmbProcess.Text;
var dtUserList = taUserList.GetData(processStr, FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessUserListRow dr in dtUserList)
var prclist = this.tbProcess.Tag as List<string>;
if (prclist.Count < 1)
{
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
var processStr = "%";
var dtUserList = taUserList.GetData(processStr, FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessUserListRow dr in dtUserList)
{
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
}
}
else
{
foreach (var prc in prclist)
{
var processStr = prc;// cmbProcess.Text;
var dtUserList = taUserList.GetData(processStr, FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessUserListRow dr in dtUserList)
{
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
}
}
}
}
private void __Load(object sender, EventArgs e)
@@ -55,19 +74,20 @@ namespace FPJ0000
var sdate = DateTime.Parse(dtSD.Text);
this.dtED.Text = sdate.AddMonths(1).AddDays(-1).ToShortDateString();
//공정목록
var taProc = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcList = taProc.GetData(FCOMMON.info.Login.gcode);
cmbProcess.Items.Clear();
cmbProcess.Items.Add("--전체--");
foreach (dsReport.ProcessListRow dr in dtProcList)
{
cmbProcess.Items.Add(dr.processs);
}
cmbProcess.Text = FCOMMON.info.Login.process;
if (cmbProcess.SelectedIndex < 0) cmbProcess.SelectedIndex = 0; //공정이 없는 사람은 전체보기로 함
//cmbProcess.Items.Clear();
//cmbProcess.Items.Add("--전체--");
//foreach (dsReport.ProcessListRow dr in dtProcList)
//{
// cmbProcess.Items.Add(dr.processs);
//}
//cmbProcess.Text = FCOMMON.info.Login.process;
//if (cmbProcess.SelectedIndex < 0) cmbProcess.SelectedIndex = 0; //공정이 없는 사람은 전체보기로 함
tbProcess.Text = FCOMMON.info.Login.process;
tbProcess.Tag = new List<string>(new string[] { FCOMMON.info.Login.process });
//담당자목록 - 사용자목록으로 처리한다.
@@ -208,15 +228,55 @@ namespace FPJ0000
FCOMMON.Util.MsgE("담당자 번호를 확인할 수 없습니다.(문의 T.8567)");
return;
}
string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1);
request = request.Substring(0, request.Length - 1);
if (cmbUser.SelectedIndex == 0) request = "%"; //전체검색 201028 - chi(임현대)
if (tagonly == false)
this.ta.Fill(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request, FCOMMON.info.Login.gcode);
//사용자 목록다중선택으로 인해 처리
var sql = "SELECT *, dbo.getUserName(uid) AS username, dbo.getWorkWeek(pdate) AS ww";
sql += " FROM JobReport";
sql += " WHERE(pdate BETWEEN @sd AND @ed) AND(gcode = @gcode)";
if (request != "%")
{
//사용자가 지정되어있다
sql += $" AND uid = '{request}'";
}
else
this.ta.FillByTagOnly(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request, FCOMMON.info.Login.gcode);
{
//전체사용자가 지정되어있다. 해당하는 사용자 목록에서만 취한다.
var userlist = new List<string>();
for (int i = 1; i < cmbUser.Items.Count; i++) //0번요소는 전체이다
{
var userinfo = cmbUser.Items[i].ToString();
var userno = userinfo.Substring(userinfo.LastIndexOf('(') + 1);
userno = userno.Substring(0, userno.Length - 1);
userlist.Add(userno);
}
sql += " and uid in ('" + string.Join("','", userlist) + "')";
}
if (tagonly) sql += " and isnull(tag,'') <> ''";
sql += " ORDER BY pdate DESC";
var cmd = new System.Data.SqlClient.SqlCommand(sql, ta.Connection);
cmd.Parameters.Add("sd", SqlDbType.VarChar).Value = dtSD.Text;
cmd.Parameters.Add("ed", SqlDbType.VarChar).Value = dtED.Text;
cmd.Parameters.Add("gcode", SqlDbType.VarChar).Value = FCOMMON.info.Login.gcode;
var da = new System.Data.SqlClient.SqlDataAdapter(cmd);
dsMSSQL.JobReport.Clear();
da.Fill(this.dsMSSQL.JobReport);
dsMSSQL.JobReport.AcceptChanges();
//if (tagonly == false)
// this.ta.Fill(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request, FCOMMON.info.Login.gcode);
//else
// this.ta.FillByTagOnly(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request, FCOMMON.info.Login.gcode);
RefreshTime();
FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize);
@@ -554,9 +614,9 @@ namespace FPJ0000
private void toolStripButton1_Click(object sender, EventArgs e)
{
string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1);
request = request.Substring(0, request.Length - 1);
string name = cmbUser.Text.Substring(0, cmbUser.Text.IndexOf('('));
//string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1);
//request = request.Substring(0, request.Length - 1);
//string name = cmbUser.Text.Substring(0, cmbUser.Text.IndexOf('('));
var f = new JobReport.fJobChartMenu();
f.ShowDialog();
}
@@ -588,5 +648,18 @@ namespace FPJ0000
if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
dtED.Text = f.dtPick.SelectionStart.ToShortDateString();
}
private void toolStripButton4_Click(object sender, EventArgs e)
{
var oldlist = (List<string>)tbProcess.Tag;
var f = new JobReport.fSelectProcess(oldlist.ToArray());
if (f.ShowDialog() == DialogResult.OK)
{
tbProcess.Tag = f.values;
tbProcess.Text = string.Join(",", f.values);
UpdateUserList();
}
}
}
}