1) admin/Attendance.aspx.cs
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Admin_Default : System.Web.UI.Page
{
MainClass dut = new MainClass();
DataAccessLayer dal = new DataAccessLayer();
public string srno = "P-1";
public string TimeSpend = "0";
public string ComingTime = "";
public string GoingTime = "";
public string Outside = string.Empty;
public string DoneReminders = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
download_XL.Visible = true;
if (!IsPostBack)
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
bindDoneReminders();
BinddropdownList();
GetoutsideEmp();
}
}
private void BinddropdownList()
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds1 = dal.getDataSet("ManageLogin", col1, val1);
if (ds1.Tables[0].Rows.Count > 0)
{
ddlusers.DataSource = ds1.Tables[0];
ddlusers.DataTextField = "name";
ddlusers.DataValueField = "srno";
ddlusers.DataBind();
}
ddlusers.Items.Insert(0, new ListItem("All", "0"));
}
private void bindDoneReminders()
{
try
{
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
DataSet tableCollection = new DataSet();
tableCollection.Clear();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string tableName = ds.Tables[0].Rows[j]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[j]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[j]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
DataRow _dr = table.NewRow();
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()));
string comingMessage;
string goingMessage;
int isMeetingGoodMorning;
string Company_Time = "0";
DateTime Coming_Time;
DateTime Going_Time;
string comingtime1 = comingtimess(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), out comingMessage, out isMeetingGoodMorning,out Coming_Time);
string goingtime1 = goingtimess(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), out goingMessage,out Going_Time);
if (Going_Time.ToString() == Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = Going_Time.Subtract(Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1;
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M " + comingMessage;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage;
}
strDoneReminders += "<td>" + comingMessage + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select2" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (goingtime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + goingtime1 + "</td>";
_dr["Going Time"] = goingtime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M " + goingMessage;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = "M " + goingMessage;
}
strDoneReminders += "<td>" + goingMessage + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
tableCollection.Tables.Add(table);
}
Session["table"] = tableCollection;
DoneReminders += strDoneReminders;
}
}
}
catch (Exception ex)
{
}
}
private string BindSpendTime(int User_Id)
{
double TotalTime = 0;
TimeSpend = "0";
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select1"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
}).ToList();
foreach (var item in listdt1)
{
if (item.Timing.ToString("MM/dd/yyyy").Equals(DateTime.Now.ToString("MM/dd/yyyy")))
{
TotalTime = TotalTime + double.Parse(item.Spend_time);
}
}
TimeSpend = (TotalTime / 60).ToString("N0");
}
return TimeSpend;
}
private string BindSpendTime(int User_Id, DateTime date)
{
double TotalTime = 0;
TimeSpend = "0";
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select1"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
}).ToList();
foreach (var item in listdt1)
{
if (item.Timing.ToString("MM/dd/yyyy").Equals(date.ToString("MM/dd/yyyy")))
{
TotalTime = TotalTime + double.Parse(item.Spend_time);
}
}
TimeSpend = (TotalTime / 60).ToString("N0");
}
return TimeSpend;
}
private string comingtimess(int User_Id, out string comingMessage, out int isMeetingGoodMorning,out DateTime Coming_Time)
{
ComingTime = "";
comingMessage = "";
isMeetingGoodMorning = 0;
Coming_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Coming_Message = dr["Coming_Message"].ToString(),
isMeetingGoodMorning = Convert.ToInt32(dr["isMeetingGoodMorning"])
}).ToList();
var LastUpdateDate = (from c in listdt1 select c).FirstOrDefault();
ComingTime = LastUpdateDate.Coming_Time.ToString("hh:mm tt");
Coming_Time = LastUpdateDate.Coming_Time;
comingMessage = LastUpdateDate.Coming_Message;
isMeetingGoodMorning = LastUpdateDate.isMeetingGoodMorning;
}
return ComingTime;
}
private string comingtime(int User_Id, DateTime date, out string comingMessage, out int isMeetingGoodMorning)
{
ComingTime = "";
comingMessage = "";
isMeetingGoodMorning = 0;
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@ByDate", date));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select3"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Coming_Message = dr["Coming_Message"].ToString(),
isMeetingGoodMorning = Convert.ToInt32(dr["isMeetingGoodMorning"])
}).ToList();
var LastUpdateDate = (from c in listdt1 select c).FirstOrDefault();
ComingTime = LastUpdateDate.Coming_Time.ToString();
comingMessage = LastUpdateDate.Coming_Message;
isMeetingGoodMorning = LastUpdateDate.isMeetingGoodMorning;
}
return ComingTime;
}
private string goingtime(int User_Id, DateTime date, out string goingMessage)
{
GoingTime = "";
goingMessage = "";
//Going_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@ByDate", date));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select3"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Going_Message = dr["Going_Message"].ToString(),
}).ToList();
//var dd = (from c in listdt1 select c).FirstOrDefault();
//Going_Time = dd.Going_Time;
var LastUpdateDate = (from c in listdt1 where c.Status == "Go" select c).FirstOrDefault();
if (LastUpdateDate != null)
{
GoingTime = LastUpdateDate.Going_Time.ToString("hh:mm tt");
goingMessage = LastUpdateDate.Going_Message;
}
}
return GoingTime;
}
private string goingtimess(int User_Id, out string goingMessage,out DateTime Going_Time)
{
GoingTime = "";
goingMessage = "";
Going_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Going_Message = dr["Going_Message"].ToString()
}).ToList();
var dd = (from c in listdt1 select c).FirstOrDefault();
Going_Time = dd.Going_Time;
var LastUpdateDate = (from c in listdt1 where c.Status == "Go" select c).FirstOrDefault();
if (LastUpdateDate != null)
{
GoingTime = LastUpdateDate.Going_Time.ToString("hh:mm tt");
goingMessage = LastUpdateDate.Going_Message;
}
}
return GoingTime;
}
class MyModelClass
{
public int Id { get; set; }
public int User_Id { get; set; }
public DateTime Timing { get; set; }
public string Status { get; set; }
public string Company_Purpose { get; set; }
public string Spend_time { get; set; }
public DateTime Coming_Time { get; set; }
public DateTime Going_Time { get; set; }
public string Coming_Message { get; set; }
public string Going_Message { get; set; }
public int isMeetingGoodMorning { get; set; }
}
protected void ddlusers_SelectedIndexChanged(object sender, EventArgs e)
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
int User_Id = int.Parse(ddlusers.SelectedValue);
txt_from.Text = "";
txt_to.Text = "";
if (User_Id > 0)
{
bindDoneReminders(User_Id);
//download_XL.Visible = true;
}
else
{
bindDoneReminders();
// download_XL.Visible = false;
}
}
protected void download_XL_Click(object sender, EventArgs e)
{
DataSet dataset = Session["table"] as DataSet;
ClosedXML.Excel.XLWorkbook wbook = new ClosedXML.Excel.XLWorkbook();
for (int i = 0; i < dataset.Tables.Count; i++)
{
wbook.Worksheets.Add(dataset.Tables[i], dataset.Tables[i].TableName);
}
// Prepare the response
HttpResponse httpResponse = Response;
httpResponse.Clear();
httpResponse.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
//Provide you file name here
httpResponse.AddHeader("content-disposition", "attachment;filename=\"" + "Attendance" + ".xlsx\"");
// Flush the workbook to the Response.OutputStream
using (MemoryStream memoryStream = new MemoryStream())
{
wbook.SaveAs(memoryStream);
memoryStream.WriteTo(httpResponse.OutputStream);
memoryStream.Close();
}
httpResponse.End();
}
private void bindDoneReminders(int User_Id)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { User_Id, "select9" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
string tableName = ds.Tables[0].Rows[0]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[0]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[0]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select6"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time1"].ToString()),
Coming_Time = Convert.ToDateTime(dr["Coming_Time1"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).OrderByDescending(c => c.Timing).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
foreach (var item in list1)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString() == item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", User_Id, "select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M "+goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
else
{
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", User_Id, "select1" };
DataSet ds2 = dal.getDataSet("ManageAttendance", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()));
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out goingMessage1);
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] ="M "+ goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
}
}
catch (Exception ex)
{
}
}
private void bindDoneReminders(int User_Id, DateTime StartDate, DateTime EndDate)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { User_Id, "select9" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
string tableName = ds.Tables[0].Rows[0]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[0]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[0]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@StartDate", StartDate));
list.Add(new SqlParameter("@EndDate", EndDate));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select7"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time1"].ToString()),
Coming_Time = Convert.ToDateTime(dr["Coming_Time1"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).OrderByDescending(c => c.Timing).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
foreach (var item in list1)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy"); ;
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString()== item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + " (" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M"+comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M"+goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
else
{
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string[] col2 = { "@Id", "@User_Id", "@StartDate", "@EndDate", "@Actiontype" };
object[] val2 = { "0", User_Id, StartDate, EndDate, "Select5" };
DataSet ds2 = dal.getDataSet("ManageAttendance", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()));
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out goingMessage1);
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] ="M "+ goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
}
}
catch (Exception ex)
{
}
}
private void bindDoneReminders(DateTime StartDate)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
DataSet tableCollection = new DataSet();
tableCollection.Clear();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@StartDate", StartDate));
list.Add(new SqlParameter("@Actiontype", "select8"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string tableName = ds.Tables[0].Rows[j]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[j]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[j]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
foreach (var item in list1)
{
DataRow _dr = table.NewRow();
string comingMessage1;
string goingMessage1;
int isMeetingGoodMorning;
string Company_Time = "0";
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy"); ;
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString() == item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M " + comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M " + goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
//For Going Message display, if any end
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
tableCollection.Tables.Add(table);
}
}
Session["table"] = tableCollection;
DoneReminders += strDoneReminders;
}
}
}
}
catch (Exception ex)
{
}
}
protected void btnsubmit_Click(object sender, EventArgs e)
{
try
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
int User_Id = int.Parse(ddlusers.SelectedValue);
if (User_Id > 0)
{
//download_XL.Visible = true;
bindDoneReminders(User_Id, DateTime.Parse(txt_from.Text), DateTime.Parse(txt_to.Text));
}
else
{//In case of All
//download_XL.Visible = false;
bindDoneReminders(DateTime.Parse(txt_from.Text));
}
}
catch (Exception ex)
{
throw;
}
}
private void GetoutsideEmp()
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int k = 0; k < ds.Tables[0].Rows.Count; k++)
{
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", int.Parse(ds.Tables[0].Rows[k]["srno"].ToString())));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
}).LastOrDefault();
if (listdt1 != null)
{
if (listdt1.Status == "Out")
{
strDoneReminders += "<tr><th style='text-align: left;'>" + ds.Tables[0].Rows[k]["name"] + "</th><th align='right'>Out Side :</th><th>" + listdt1.Timing.ToString("h:mm tt") + "</th>";
}
}
}
}
Outside += strDoneReminders;
}
}
}
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Admin_Default : System.Web.UI.Page
{
MainClass dut = new MainClass();
DataAccessLayer dal = new DataAccessLayer();
public string srno = "P-1";
public string TimeSpend = "0";
public string ComingTime = "";
public string GoingTime = "";
public string Outside = string.Empty;
public string DoneReminders = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
download_XL.Visible = true;
if (!IsPostBack)
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
bindDoneReminders();
BinddropdownList();
GetoutsideEmp();
}
}
private void BinddropdownList()
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds1 = dal.getDataSet("ManageLogin", col1, val1);
if (ds1.Tables[0].Rows.Count > 0)
{
ddlusers.DataSource = ds1.Tables[0];
ddlusers.DataTextField = "name";
ddlusers.DataValueField = "srno";
ddlusers.DataBind();
}
ddlusers.Items.Insert(0, new ListItem("All", "0"));
}
private void bindDoneReminders()
{
try
{
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
DataSet tableCollection = new DataSet();
tableCollection.Clear();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string tableName = ds.Tables[0].Rows[j]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[j]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[j]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
DataRow _dr = table.NewRow();
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()));
string comingMessage;
string goingMessage;
int isMeetingGoodMorning;
string Company_Time = "0";
DateTime Coming_Time;
DateTime Going_Time;
string comingtime1 = comingtimess(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), out comingMessage, out isMeetingGoodMorning,out Coming_Time);
string goingtime1 = goingtimess(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), out goingMessage,out Going_Time);
if (Going_Time.ToString() == Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = Going_Time.Subtract(Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1;
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M " + comingMessage;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage;
}
strDoneReminders += "<td>" + comingMessage + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select2" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (goingtime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + goingtime1 + "</td>";
_dr["Going Time"] = goingtime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M " + goingMessage;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = "M " + goingMessage;
}
strDoneReminders += "<td>" + goingMessage + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
tableCollection.Tables.Add(table);
}
Session["table"] = tableCollection;
DoneReminders += strDoneReminders;
}
}
}
catch (Exception ex)
{
}
}
private string BindSpendTime(int User_Id)
{
double TotalTime = 0;
TimeSpend = "0";
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select1"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
}).ToList();
foreach (var item in listdt1)
{
if (item.Timing.ToString("MM/dd/yyyy").Equals(DateTime.Now.ToString("MM/dd/yyyy")))
{
TotalTime = TotalTime + double.Parse(item.Spend_time);
}
}
TimeSpend = (TotalTime / 60).ToString("N0");
}
return TimeSpend;
}
private string BindSpendTime(int User_Id, DateTime date)
{
double TotalTime = 0;
TimeSpend = "0";
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select1"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
}).ToList();
foreach (var item in listdt1)
{
if (item.Timing.ToString("MM/dd/yyyy").Equals(date.ToString("MM/dd/yyyy")))
{
TotalTime = TotalTime + double.Parse(item.Spend_time);
}
}
TimeSpend = (TotalTime / 60).ToString("N0");
}
return TimeSpend;
}
private string comingtimess(int User_Id, out string comingMessage, out int isMeetingGoodMorning,out DateTime Coming_Time)
{
ComingTime = "";
comingMessage = "";
isMeetingGoodMorning = 0;
Coming_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Coming_Message = dr["Coming_Message"].ToString(),
isMeetingGoodMorning = Convert.ToInt32(dr["isMeetingGoodMorning"])
}).ToList();
var LastUpdateDate = (from c in listdt1 select c).FirstOrDefault();
ComingTime = LastUpdateDate.Coming_Time.ToString("hh:mm tt");
Coming_Time = LastUpdateDate.Coming_Time;
comingMessage = LastUpdateDate.Coming_Message;
isMeetingGoodMorning = LastUpdateDate.isMeetingGoodMorning;
}
return ComingTime;
}
private string comingtime(int User_Id, DateTime date, out string comingMessage, out int isMeetingGoodMorning)
{
ComingTime = "";
comingMessage = "";
isMeetingGoodMorning = 0;
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@ByDate", date));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select3"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Coming_Message = dr["Coming_Message"].ToString(),
isMeetingGoodMorning = Convert.ToInt32(dr["isMeetingGoodMorning"])
}).ToList();
var LastUpdateDate = (from c in listdt1 select c).FirstOrDefault();
ComingTime = LastUpdateDate.Coming_Time.ToString();
comingMessage = LastUpdateDate.Coming_Message;
isMeetingGoodMorning = LastUpdateDate.isMeetingGoodMorning;
}
return ComingTime;
}
private string goingtime(int User_Id, DateTime date, out string goingMessage)
{
GoingTime = "";
goingMessage = "";
//Going_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@ByDate", date));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select3"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Going_Message = dr["Going_Message"].ToString(),
}).ToList();
//var dd = (from c in listdt1 select c).FirstOrDefault();
//Going_Time = dd.Going_Time;
var LastUpdateDate = (from c in listdt1 where c.Status == "Go" select c).FirstOrDefault();
if (LastUpdateDate != null)
{
GoingTime = LastUpdateDate.Going_Time.ToString("hh:mm tt");
goingMessage = LastUpdateDate.Going_Message;
}
}
return GoingTime;
}
private string goingtimess(int User_Id, out string goingMessage,out DateTime Going_Time)
{
GoingTime = "";
goingMessage = "";
Going_Time = new DateTime();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Coming_Time = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time"].ToString()),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Going_Message = dr["Going_Message"].ToString()
}).ToList();
var dd = (from c in listdt1 select c).FirstOrDefault();
Going_Time = dd.Going_Time;
var LastUpdateDate = (from c in listdt1 where c.Status == "Go" select c).FirstOrDefault();
if (LastUpdateDate != null)
{
GoingTime = LastUpdateDate.Going_Time.ToString("hh:mm tt");
goingMessage = LastUpdateDate.Going_Message;
}
}
return GoingTime;
}
class MyModelClass
{
public int Id { get; set; }
public int User_Id { get; set; }
public DateTime Timing { get; set; }
public string Status { get; set; }
public string Company_Purpose { get; set; }
public string Spend_time { get; set; }
public DateTime Coming_Time { get; set; }
public DateTime Going_Time { get; set; }
public string Coming_Message { get; set; }
public string Going_Message { get; set; }
public int isMeetingGoodMorning { get; set; }
}
protected void ddlusers_SelectedIndexChanged(object sender, EventArgs e)
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
int User_Id = int.Parse(ddlusers.SelectedValue);
txt_from.Text = "";
txt_to.Text = "";
if (User_Id > 0)
{
bindDoneReminders(User_Id);
//download_XL.Visible = true;
}
else
{
bindDoneReminders();
// download_XL.Visible = false;
}
}
protected void download_XL_Click(object sender, EventArgs e)
{
DataSet dataset = Session["table"] as DataSet;
ClosedXML.Excel.XLWorkbook wbook = new ClosedXML.Excel.XLWorkbook();
for (int i = 0; i < dataset.Tables.Count; i++)
{
wbook.Worksheets.Add(dataset.Tables[i], dataset.Tables[i].TableName);
}
// Prepare the response
HttpResponse httpResponse = Response;
httpResponse.Clear();
httpResponse.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
//Provide you file name here
httpResponse.AddHeader("content-disposition", "attachment;filename=\"" + "Attendance" + ".xlsx\"");
// Flush the workbook to the Response.OutputStream
using (MemoryStream memoryStream = new MemoryStream())
{
wbook.SaveAs(memoryStream);
memoryStream.WriteTo(httpResponse.OutputStream);
memoryStream.Close();
}
httpResponse.End();
}
private void bindDoneReminders(int User_Id)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { User_Id, "select9" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
string tableName = ds.Tables[0].Rows[0]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[0]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[0]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select6"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time1"].ToString()),
Coming_Time = Convert.ToDateTime(dr["Coming_Time1"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).OrderByDescending(c => c.Timing).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
foreach (var item in list1)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString() == item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", User_Id, "select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M "+goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
else
{
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", User_Id, "select1" };
DataSet ds2 = dal.getDataSet("ManageAttendance", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()));
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out goingMessage1);
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] ="M "+ goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
}
}
catch (Exception ex)
{
}
}
private void bindDoneReminders(int User_Id, DateTime StartDate, DateTime EndDate)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { User_Id, "select9" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
string tableName = ds.Tables[0].Rows[0]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[0]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[0]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@StartDate", StartDate));
list.Add(new SqlParameter("@EndDate", EndDate));
list.Add(new SqlParameter("@User_Id", User_Id));
list.Add(new SqlParameter("@Actiontype", "select7"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
Going_Time = Convert.ToDateTime(dr["Going_Time1"].ToString()),
Coming_Time = Convert.ToDateTime(dr["Coming_Time1"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).OrderByDescending(c => c.Timing).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
foreach (var item in list1)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy"); ;
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString()== item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + " (" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M"+comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M"+goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
else
{
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string[] col2 = { "@Id", "@User_Id", "@StartDate", "@EndDate", "@Actiontype" };
object[] val2 = { "0", User_Id, StartDate, EndDate, "Select5" };
DataSet ds2 = dal.getDataSet("ManageAttendance", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()));
string comingMessage1;
string goingMessage1;
string Company_Time = "0";
int isMeetingGoodMorning;
DataRow _dr = table.NewRow();
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy");
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), DateTime.Parse(ds2.Tables[0].Rows[k]["Coming_Time"].ToString()), out goingMessage1);
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] ="M "+ comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] ="M "+ goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
//For Going Message display, if any end
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
}
}
DoneReminders += strDoneReminders;
if (table.Rows.Count > 0)
{
download_XL.Visible = true;
}
else
{
download_XL.Visible = false;
}
DataSet tableCollection = new DataSet();
tableCollection.Clear();
tableCollection.Tables.Add(table);
Session["table"] = tableCollection;
}
}
}
}
catch (Exception ex)
{
}
}
private void bindDoneReminders(DateTime StartDate)
{
try
{
DoneReminders = "";
if (Session["admin_srno"] != null)
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
DataSet tableCollection = new DataSet();
tableCollection.Clear();
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@StartDate", StartDate));
list.Add(new SqlParameter("@Actiontype", "select8"));
DataTable dt = dal.getdataTable("ManageAttendance", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Coming_Time"].ToString()),
}).ToList();
var list1 = listdt1.GroupBy(n => new { n.Timing }).Select(g => g.FirstOrDefault()).ToList();
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
string tableName = ds.Tables[0].Rows[j]["name"].ToString().Length > 30 ? ds.Tables[0].Rows[j]["name"].ToString().Substring(0, 30) : ds.Tables[0].Rows[j]["name"].ToString();
DataTable table = new DataTable(tableName);
table.Clear();
table.Columns.Add("Coming Time", typeof(string));
table.Columns.Add("Coming Message", typeof(string));
table.Columns.Add("Going Time", typeof(string));
table.Columns.Add("Going Message", typeof(string));
table.Columns.Add("Total Company Time", typeof(string));
table.Columns.Add("Total Time Spend", typeof(string));
foreach (var item in list1)
{
DataRow _dr = table.NewRow();
string comingMessage1;
string goingMessage1;
int isMeetingGoodMorning;
string Company_Time = "0";
string Time = BindSpendTime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing);
string comingtime1 = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("hh:mm tt");
string Date = comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning) == "" ? "" : DateTime.Parse(comingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out comingMessage1, out isMeetingGoodMorning)).ToString("dddd, dd MMMM yyyy"); ;
string GoingTime1 = goingtime(int.Parse(ds.Tables[0].Rows[j]["srno"].ToString()), item.Timing, out goingMessage1);
if (item.Going_Time.ToString() == item.Coming_Time.ToString())
{
Company_Time = "User not say good night";
}
else
{
double double_minutes = item.Going_Time.Subtract(item.Coming_Time).TotalMinutes;
if (double_minutes > 60)
{
double Hours = double_minutes / 60;
double Min = double_minutes % 60;
Company_Time = Hours.ToString().Split('.').ElementAt(0) + " Hours " + Min.ToString("N0") + " Mins";
}
else
{
Company_Time = double_minutes.ToString("N0") + " Mins";
}
}
strDoneReminders += "<table class='table table-bordered cart_summary'> <thead><tr>";
strDoneReminders += " <th style='text-align: left;'>" + ds.Tables[0].Rows[j]["name"].ToString() + "</th>";
strDoneReminders += "<th align='right'>Coming Time :</th><th>" + comingtime1 + "(" + Date + ")</th></tr> </thead>";
strDoneReminders += "<tbody>";
_dr["Coming Time"] = comingtime1 + "(" + Date + ")";
//For Coming Message display, if any start
if (!String.IsNullOrEmpty(comingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Morning Message</td>";
_dr["Coming Message"] = "M " + comingMessage1;
}
else
{
strDoneReminders += "<td>Coming Message</td>";
_dr["Coming Message"] = comingMessage1;
}
strDoneReminders += "<td>" + comingMessage1 + "</td></tr>";
}
//For Coming Message display, if any end
string[] col2 = { "@Id", "@User_Id", "@Actiontype" };
object[] val2 = { "0", ds.Tables[0].Rows[j]["srno"], "Select1" };
DataSet ds2 = dal.getDataSet("TimeCalculator", col2, val2);
for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
{
if (item.Timing.ToString("MM/dd/yyyy") == DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("MM/dd/yyyy"))
{
strDoneReminders += "<tr><td> </td>";
string status = "";
string CmpPor = "";
status = ds2.Tables[0].Rows[k]["Status"].ToString();
if (status == "In")
{
CmpPor = ds2.Tables[0].Rows[k - 1]["Company_Purpose"].ToString();
if (CmpPor != "")
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " (" + (double.Parse(ds2.Tables[0].Rows[k]["Company_Purpose_S_Time"].ToString()) / 60).ToString("N0") + " Mins Company purpose) </td>";
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
}
else
{
strDoneReminders += "<td>" + ds2.Tables[0].Rows[k]["Status"] + " " + ds2.Tables[0].Rows[k]["Company_Purpose"] + " " + "</td>";
}
strDoneReminders += "<td>" + DateTime.Parse(ds2.Tables[0].Rows[k]["Timing"].ToString()).ToString("h:mm tt") + "</td>";
}
}
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Total time spend</strong></td>";
strDoneReminders += "<td>" + Time + " mins</td>";
if (GoingTime1 != "")
{
strDoneReminders += "<tr><td> </td>";
strDoneReminders += "<td><strong> Going Time</strong></td>";
strDoneReminders += "<td>" + GoingTime1 + "</td>";
_dr["Going Time"] = GoingTime1;
}
//For Going Message display, if any start
if (!String.IsNullOrEmpty(goingMessage1))
{
strDoneReminders += "<tr><td> </td>";
if (isMeetingGoodMorning == 1)
{
strDoneReminders += "<td>Meeting Good Night Message</td>";
_dr["Going Message"] = "M " + goingMessage1;
}
else
{
strDoneReminders += "<td>Going Message</td>";
_dr["Going Message"] = goingMessage1;
}
strDoneReminders += "<td>" + goingMessage1 + "</td></tr>";
}
//For Going Message display, if any end
_dr["Total Company Time"] = Company_Time;
_dr["Total Time Spend"] = Time;
strDoneReminders += "</tbody>";
strDoneReminders += "</table>";
table.Rows.Add(_dr);
tableCollection.Tables.Add(table);
}
}
Session["table"] = tableCollection;
DoneReminders += strDoneReminders;
}
}
}
}
catch (Exception ex)
{
}
}
protected void btnsubmit_Click(object sender, EventArgs e)
{
try
{
if (Session["admin_srno"] == null)
Response.Redirect("~/Pr-Admin-Log");
int User_Id = int.Parse(ddlusers.SelectedValue);
if (User_Id > 0)
{
//download_XL.Visible = true;
bindDoneReminders(User_Id, DateTime.Parse(txt_from.Text), DateTime.Parse(txt_to.Text));
}
else
{//In case of All
//download_XL.Visible = false;
bindDoneReminders(DateTime.Parse(txt_from.Text));
}
}
catch (Exception ex)
{
throw;
}
}
private void GetoutsideEmp()
{
string[] col1 = { "@srno", "@Actiontype" };
object[] val1 = { "0", "select8" };
DataSet ds = dal.getDataSet("ManageLogin", col1, val1);
if (ds.Tables[0].Rows.Count > 0)
{
string strDoneReminders = string.Empty;
for (int k = 0; k < ds.Tables[0].Rows.Count; k++)
{
var list = new List<SqlParameter>();
list.Add(new SqlParameter("@Id", "0"));
list.Add(new SqlParameter("@User_Id", int.Parse(ds.Tables[0].Rows[k]["srno"].ToString())));
list.Add(new SqlParameter("@Actiontype", "Select2"));
DataTable dt = dal.getdataTable("TimeCalculator", list.ToArray());
if (dt.Rows.Count > 0)
{
var listdt1 = (from DataRow dr in dt.Rows
select new MyModelClass()
{
Id = Convert.ToInt32(dr["Id"]),
Company_Purpose = dr["Company_Purpose"].ToString(),
Spend_time = dr["Spend_time"].ToString(),
User_Id = Convert.ToInt32(dr["User_Id"]),
Status = dr["Status"].ToString(),
Timing = Convert.ToDateTime(dr["Timing"].ToString()),
}).LastOrDefault();
if (listdt1 != null)
{
if (listdt1.Status == "Out")
{
strDoneReminders += "<tr><th style='text-align: left;'>" + ds.Tables[0].Rows[k]["name"] + "</th><th align='right'>Out Side :</th><th>" + listdt1.Timing.ToString("h:mm tt") + "</th>";
}
}
}
}
Outside += strDoneReminders;
}
}
}
Comments
Post a Comment