출근부 사용자 목록 수정

This commit is contained in:
chi
2022-02-15 09:32:39 +09:00
parent fdda87b48b
commit 6226bc2953
13 changed files with 131 additions and 47 deletions

View File

@@ -90,19 +90,29 @@ namespace FBS0000
//해당 기간내의 사용
//var taUser = new dsMSSQLTableAdapters.EETGW_WorkTableUserTableAdapter();
var dtUser = JobReport.OrderBy(t => t.userProcess + t.name).GroupBy(t => t.id);// taUser.GetData(FCOMMON.info.Login.gcode, tbGrp.Text);
//var dtUser = JobReport.OrderBy(t => t.userProcess + t.name).GroupBy(t => t.id);// taUser.GetData(FCOMMON.info.Login.gcode, tbGrp.Text);
var dtUser = FCOMMON.DBM.getUserTable(); //업무일지 미사용자로인해서 사용자 목록은 이것을 사용한다 220215
var users = new List<userinfo>();
var seq = 0;
foreach (var item in dtUser)
foreach (System.Data.DataRow dr in dtUser.Rows)
{
var dr = item.First();
if (string.IsNullOrEmpty(dr.indate) == false)
{
//입사일자를 체크해서. 이 날짜가 입사일 이전이면 넘어간다
}
//var dr = item.First();
//if (string.IsNullOrEmpty(dr.indate) == false)
//{
// //입사일자를 체크해서. 이 날짜가 입사일 이전이면 넘어간다
//}
users.Add(new userinfo { grade = dr.grade, name = dr.name, empno = dr.id, seq = dr.userProcess, indate = dr.indate, outdate = dr.outdate });
users.Add(new userinfo
{
grade = dr["grade"].ToString(),
name = dr["name"].ToString(),
empno = dr["id"].ToString(),
seq = dr["process"].ToString(),
indate = dr["indate"].ToString(),
outdate = dr["outdate"].ToString()
});
seq += 1;
}
@@ -242,7 +252,7 @@ namespace FBS0000
var accday = 1;
while (accday <= timedays)
{
var remaintime = dr.CrTime - ((accday-1) * 8f);
var remaintime = dr.CrTime - ((accday - 1) * 8f);
var columnindex = c + curday;
var columnDate = (DateTime)this.fpSpread1_Sheet1.Columns[columnindex].Tag;
@@ -270,10 +280,21 @@ namespace FBS0000
}
else
{
var JRUser = JobReport.Where(t => t.id == item.empno && t.pdate == curDate.ToShortDateString());
var sum_hrs = JRUser.Sum(t => t.hrs);
var sum_ot = JRUser.Sum(t => t.ot);
var sum_ot2 = JRUser.Sum(t => t.ot2);
var pdate = curDate.ToShortDateString();
if (pdate == "2022-02-07" && item.empno == "66630")
{
}
var JRUser = JobReport.Where(t => t.id == item.empno && t.pdate == pdate);
var sum_hrs = 00.0;
var sum_ot = 00.0;//JRUser.Sum(t => t.ot);
var sum_ot2 = 00.0; //JRUser.Sum(t => t.ot2);
if (JRUser.Any())
{
sum_hrs = JRUser.Sum(t => t.hrs);
sum_ot = JRUser.Sum(t => t.ot);
sum_ot2 = JRUser.Sum(t => t.ot2);
}
if (bholy) //주말이다
{
@@ -291,7 +312,7 @@ namespace FBS0000
else
{
//평일인데 근무시간이 있다
if (sum_hrs > 0)
if (sum_hrs > 0 || sum_ot > 0)
{
if (sum_ot > 0 || sum_ot2 > 0)
{
@@ -310,7 +331,18 @@ namespace FBS0000
var celltag = fpSpread1_Sheet1.Cells[rowindex, c].Tag;
if (celltag == null) //다른곳에서 지정했다면 처리하지 않는다.
{
fpSpread1_Sheet1.Cells[rowindex, c].Value = string.Empty;
if (DateTime.Now.ToShortDateString().CompareTo(pdate) > 0)
{
fpSpread1_Sheet1.Cells[rowindex, c].Value = "--";
fpSpread1_Sheet1.Cells[rowindex, c].ForeColor = Color.Red;
}
else
{
fpSpread1_Sheet1.Cells[rowindex, c].Value = string.Empty;
fpSpread1_Sheet1.Cells[rowindex, c].ForeColor = Color.Black;
}
fpSpread1_Sheet1.Cells[rowindex, c].BackColor = Color.White;
//fpSpread1_Sheet1.Cells[rowindex, c].Note = string.Empty;
}

View File

@@ -427,6 +427,12 @@ namespace FCOMMON
return getTwoColumnList("vGroupUser", "id", "name", where, "name");
}
/// <summary>
/// id,name,dispname,dept,email,level,tel,process,grade
/// </summary>
/// <param name="baseLevel"></param>
/// <returns></returns>
public static System.Data.DataTable getUserTable(int baseLevel = 1)
{
var cn = getCn();
@@ -435,7 +441,7 @@ namespace FCOMMON
var retval = new sItemInfo();
retval.idx = -1;
string sql = "select [id],[name],([name] +'(' +[id] +')') as dispName,[dept],[email],[level],[tel],isnull(processs,'') as process " +
string sql = "select [id],[name],([name] +'(' +[id] +')') as dispName,isnull([dept],'') as dept,isnull(grade,'') as grade,[email],[level],[tel],isnull(processs,'') as process,isnull(indate,'') as indate, isnull(outdate,'') as outdate " +
" from vGroupUser " +
" where gcode='" + FCOMMON.info.Login.gcode + "' and [id] <> 'dev' and isnull(outdate,'') = '' and useUserState = 1 order by [name]";
var cmd = new SqlCommand(sql, cn);

View File

@@ -55,7 +55,7 @@ namespace FPJ0000
btSave.Visible = false;// curLevel >= 5;
btEdit.Text = curLevel >= 5 ? "승인(&E)" : "편집(&E)";
// binit = true;
// binit = true;
refreshData();
}
@@ -112,16 +112,16 @@ namespace FPJ0000
var ed = dtED.Text.Trim();
ta.Fill(this.dSKuntae.EETGW_HolydayRequest, FCOMMON.info.Login.gcode, sd, ed);
var sum_day = dSKuntae.EETGW_HolydayRequest.AsEnumerable().Where(t=>t.conf == 1).Sum(t => t.HolyDays);
var sum_day = dSKuntae.EETGW_HolydayRequest.AsEnumerable().Where(t => t.conf == 1).Sum(t => t.HolyDays);
var sum_time = dSKuntae.EETGW_HolydayRequest.AsEnumerable().Where(t => t.conf == 1).Sum(t => t.HolyTimes);
var sum_day2 = dSKuntae.EETGW_HolydayRequest.AsEnumerable().Where(t => t.conf == 0).Sum(t => t.HolyDays);
var sum_time2 = dSKuntae.EETGW_HolydayRequest.AsEnumerable().Where(t => t.conf == 0).Sum(t => t.HolyTimes);
sbday.Text = $"합계(일) = 승인:{sum_day}/미승인:{sum_day2}";
sbday.ForeColor = sum_day2 == 0 ? Color.Black : Color.Red;
sbday.ForeColor = sum_day2 == 0 ? Color.Black : Color.Red;
sbtime.Text = $"합계(시간) = 승인:{sum_time}/미승인:{sum_time2}";
sbtime.ForeColor = sum_time2 == 0 ? Color.Black : Color.Red;
sbtime.ForeColor = sum_time2 == 0 ? Color.Black : Color.Red;
////색상처리
//dv1.SuspendLayout();
//foreach(DataGridViewRow dr in this.dv1.Rows)
@@ -198,7 +198,7 @@ namespace FPJ0000
else
{
search = search.Replace("'", "''");
var collist = new string[] { "requestpart", "package", "projectname", "process", "[type]", "description", "tag" };
var collist = new string[] {"name", "Response", "HolyReason","remark" };
string filter = ""; // "itemna like ? or package like ? or projectname like ? or process like ? or [type] like ? or description like ?";
foreach (var col in collist)
{

View File

@@ -189,13 +189,17 @@ namespace FPJ0000.OtConfirm
}
//동일날짜에 등록된 자료가있다면 오류로 처리한다.
var db = new EEEntities();
string chkdt = tbSD.Value.ToShortDateString();
var existdb = db.EETGW_HolydayRequest.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.uid == uid.ToString() && t.sdate == chkdt).Any();
if(existdb)
if (dr.RowState == DataRowState.Detached)
{
FCOMMON.Util.MsgE("동일 날짜에 등록된 자료가 있습니다");
return ;
var db = new EEEntities();
string chkdt = tbSD.Value.ToShortDateString();
var existdb = db.EETGW_HolydayRequest.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.uid == uid.ToString() && t.sdate == chkdt).Any();
if (existdb)
{
FCOMMON.Util.MsgE("동일 날짜에 등록된 자료가 있습니다");
return;
}
}