Exemplo n.º 1
0
        private void AddEmpSch(DataTable dt)
        {
            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            emb = new EmpBusi(strcons);
            emb.SchedEmpDailyBatch(dt);
        }
Exemplo n.º 2
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            if (Session["Login"] != null)
            {
                string    strid   = Request.QueryString["id"];
                Hashtable htapp   = (Hashtable)Application["appconf"];
                string    strcons = (string)htapp["cons"];
                esins = new EmpBusi(strcons);

                if (!this.IsPostBack)
                {
                    strInDate = DateTime.Now.ToShortDateString();
                    this.FillDropDownList("tbCommCode", ddlDegree, "vcCommSign ='DE'");
                    this.FillDropDownList("tbCommCode", ddlDept, "vcCommSign ='MD'");
                    this.FillDropDownList("tbCommCode", ddlOfficer, "vcCommSign ='OF'");
                    this.ddlSex.Items.Add("男");
                    this.ddlSex.Items.Add("女");
                    this.ddlFlag.Items.Add(new ListItem("在职", "0"));
                    this.ddlFlag.Items.Add(new ListItem("离职", "1"));

                    if (strid == "" || strid == null)
                    {
                        this.SetErrorMsgPageBydir("参数错误,无法调整员工属性!");
                    }
                    else
                    {
                        Session.Remove("esold");
                        CMSMStruct.EmployeeStruct es1 = esins.GetEmpInfo(strid);
                        txtCardID.Text  = es1.strCardID;
                        txtEmpName.Text = es1.strEmpName;
                        txtEmpNbr.Text  = es1.strEmpNbr;
                        ddlSex.Items.FindByText(es1.strSex).Selected = true;
                        txtLinkPhone.Text = es1.strLinkPhone;
                        ddlDegree.Items.FindByValue(es1.strDegree).Selected = true;
                        strInDate = es1.strInDate;
                        ddlDept.Items.FindByValue(es1.strDeptID).Selected     = true;
                        ddlFlag.Items.FindByValue(es1.strFlag).Selected       = true;
                        ddlOfficer.Items.FindByValue(es1.strOfficer).Selected = true;
                        txtAddress.Text         = es1.strAddress;
                        txtComments.Text        = es1.strComments;
                        this.txtCardID.ReadOnly = true;
                        lbltitle.Text           = "员工信息调整";
                        Session["esold"]        = es1;
                    }
                }
                else
                {
                    strInDate = Request.Form["txtInDate"].ToString();
                }
            }
            else
            {
                Response.Redirect("../Exit.aspx");
            }
        }
Exemplo n.º 3
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            string strDept = Request.QueryString["dept"].ToString();
            string strDate = Request.QueryString["date"].ToString();

            string[] SchDatelist = strDate.Split('-');
            if (SchDatelist.Length != 3)
            {
                this.SetErrorMsgPageBydir("时间格式不正确!");
                return;
            }
            strDate = SchDatelist[0] + SchDatelist[1] + SchDatelist[2];
            string strDateFormat = SchDatelist[0] + "年" + SchDatelist[1] + "月" + SchDatelist[2] + "日";

            if (strDept == "" || strDate == "")
            {
                this.SetErrorMsgPageBydir("查询出错!");
                return;
            }
            else
            {
                Hashtable htapp        = (Hashtable)Application["appconf"];
                string    strcons      = (string)htapp["cons"];
                EmpBusi   ebu          = new EmpBusi(strcons);
                ArrayList alDeptSchAll = ebu.GetDeptSchDetail(strDept, strDate);
                if (alDeptSchAll == null || alDeptSchAll.Count <= 0)
                {
                    this.SetErrorMsgPageBydir("查询出错!");
                    return;
                }
                else
                {
                    Response.Write("<table align='center' border='0' width='90%' cellSpacing='10' cellPadding='10'><tr><td style='FONT-WEIGHT: bold; FONT-SIZE: 15pt; COLOR: #330033' align='center'>排班明细表</td></tr></table>");
                    Response.Write("<table align='center' border='0' width='90%' cellSpacing='5' cellPadding='5'><tr><td>门店:" + strDept + "</td><td>日期:" + strDateFormat + "</td></tr></table>");
                    Response.Write("<table align='center' border='1' width='90%' cellSpacing='1' cellPadding='1' bordercolor='#ffccff' style='FONT-SIZE: 10pt'><tr style='COLOR: #0033ff'><td>职务类型</td><td>班次</td><td>人员列表</td><td>上班时间</td><td>下班时间</td></tr>");
                    foreach (CMSMStruct.DeptSchStruct deptstmp in alDeptSchAll)
                    {
                        if (deptstmp.strEmpNameGroup == "未安排")
                        {
                            Response.Write("<tr><td>" + deptstmp.strEmpOF + "</td><td>" + deptstmp.strClass + "</td><td style='COLOR: #cc0000'>" + deptstmp.strEmpNameGroup + "</td><td>" + deptstmp.strCheckIn + "</td><td>" + deptstmp.strCheckOut + "</td><td></tr>");
                        }
                        else
                        {
                            Response.Write("<tr><td>" + deptstmp.strEmpOF + "</td><td>" + deptstmp.strClass + "</td><td>" + deptstmp.strEmpNameGroup + "</td><td>" + deptstmp.strCheckIn + "</td><td>" + deptstmp.strCheckOut + "</td><td></tr>");
                        }
                    }
                    Response.Write("</table>");
                }

                return;
            }
        }
Exemplo n.º 4
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            if (!IsPostBack)
            {
                string strSchID   = "";
                string strEmpName = "";
                string strClass   = "";
                if (Request.QueryString.HasKeys())
                {
                    strSchID   = Request.QueryString["date"];
                    strEmpName = Request.QueryString["emp"];
                    strClass   = Request.QueryString["class"];
                }
                else
                {
                    this.SetErrorMsgPageBydir("²ÎÊýÎÞЧ£¬É¾³ýʧ°Ü£¬ÇëÖØÊÔ£¡");
                    return;
                }

                if (strSchID == "" || strEmpName == "" || strClass == "")
                {
                    this.SetErrorMsgPageBydir("²ÎÊýÎÞЧ£¬É¾³ýʧ°Ü£¬ÇëÖØÊÔ£¡");
                    return;
                }
                else
                {
                    Hashtable htapp   = (Hashtable)Application["appconf"];
                    string    strcons = (string)htapp["cons"];
                    ebu = new EmpBusi(strcons);

                    if (ebu.SchedEmpDailyEveryDel(strSchID, strEmpName, strClass))
                    {
                        this.SetSuccMsgPageBydir("ɾ³ýÔ±¹¤ÅÅ°à³É¹¦£¡", "Employ/wfmWorkDailyEvery.aspx");
                        return;
                    }
                    else
                    {
                        this.SetErrorMsgPageBydirHistory("ɾ³ýÔ±¹¤ÅÅ°àʧ°Ü£¡");
                        return;
                    }
                }
            }
        }
Exemplo n.º 5
0
        protected void btquery_Click(object sender, System.EventArgs e)
        {
            Session.Remove("Schcond");
            this.ltbAllEmp.Items.Clear();
            this.ltbSchedEmp.Items.Clear();
            string[] SchDatelist = strSchDate.Split('-');
            if (SchDatelist.Length != 3)
            {
                this.SetErrorMsgPageBydir("时间格式不正确!");
                return;
            }
            string strSchID = SchDatelist[0];

            if (int.Parse(SchDatelist[1]) < 10)
            {
                strSchID += "0" + SchDatelist[1];
            }
            else
            {
                strSchID += SchDatelist[1];
            }
            if (int.Parse(SchDatelist[2]) < 10)
            {
                strSchID += "0" + SchDatelist[2];
            }
            else
            {
                strSchID += SchDatelist[2];
            }
            DateTime datetimesch = new DateTime(int.Parse(SchDatelist[0]), int.Parse(SchDatelist[1]), int.Parse(SchDatelist[2]));

            if (datetimesch.CompareTo(DateTime.Today) < 0)
            {
                this.SetErrorMsgPageBydir("不能对以前的排班计划进行修改!");
                return;
            }

            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);

            string strDeptID = ddlDept.SelectedValue;

            if (strDeptID != "")
            {
                DataTable dtMana = ebu.GetEmpManager(strDeptID);
                strManager = "";
                for (int i = 0; i < dtMana.Rows.Count; i++)
                {
                    strManager += dtMana.Rows[i]["vcEmpName"].ToString() + ",";
                }
                if (strManager != "")
                {
                    strManager = strManager.Substring(0, strManager.Length - 1);
                }
                this.lblManager.Text = strManager;
            }
            else
            {
                this.SetErrorMsgPageBydir("门店信息错误,请重新刷新页面再操作!");
                return;
            }
            if (strManager == "")
            {
                this.SetErrorMsgPageBydir("没有找到店长信息!");
                return;
            }

            string strOfficer   = ddlOfficer.SelectedItem.Text;
            string strOfficerID = ddlOfficer.SelectedValue;
            string strClass     = ddlClass.SelectedItem.Text;
            string strDeptName  = ddlDept.SelectedItem.Text;

            if (strDeptID == "" || strDeptName == "" || strClass == "" || strSchDate == "")
            {
                this.SetErrorMsgPageBydir("请选择要排班的参数信息!");
                return;
            }

            Hashtable htPara = new Hashtable();

            htPara.Add("strDeptID", strDeptID);
            htPara.Add("strDeptName", strDeptName);
            htPara.Add("strOfficer", strOfficer);
            htPara.Add("strOfficerID", strOfficerID);
            htPara.Add("strClass", strClass);
            htPara.Add("strSchID", strSchID);
            htPara.Add("strManager", strManager);
            Session["Schcond"] = htPara;
            DataSet dsout = ebu.GetEmpSchList(htPara);

            if (dsout == null || dsout.Tables["tbEmployee"] == null || dsout.Tables["tbEmpSchLog"] == null)
            {
                this.SetErrorMsgPageBydir("查询当前排班情况出错!");
                return;
            }
            else
            {
                this.lblSchedTitle.Text = strSchDate + "的" + strClass + "有如下员工上班";
                for (int i = 0; i < dsout.Tables["tbEmpSchLog"].Rows.Count; i++)
                {
                    this.ltbSchedEmp.Items.Add(dsout.Tables["tbEmpSchLog"].Rows[i]["vcEmpName"].ToString());
                }

                for (int k = 0; k < dsout.Tables["tbEmployee"].Rows.Count; k++)
                {
                    if (dsout.Tables["tbEmpSchLog"].Rows.Count > 0)
                    {
                        bool flag = false;
                        for (int j = 0; j < dsout.Tables["tbEmpSchLog"].Rows.Count; j++)
                        {
                            if (dsout.Tables["tbEmployee"].Rows[k]["vcEmpName"].ToString() == dsout.Tables["tbEmpSchLog"].Rows[j]["vcEmpName"].ToString())
                            {
                                flag = true;
                                break;
                            }
                        }
                        if (!flag)
                        {
                            this.ltbAllEmp.Items.Add(dsout.Tables["tbEmployee"].Rows[k]["vcEmpName"].ToString());
                        }
                    }
                    else
                    {
                        this.ltbAllEmp.Items.Add(dsout.Tables["tbEmployee"].Rows[k]["vcEmpName"].ToString());
                    }
                }
            }

            this.btquery.Enabled    = false;
            this.ddlClass.Enabled   = false;
            this.ddlOfficer.Enabled = false;
            this.ddlDept.Enabled    = false;
        }
Exemplo n.º 6
0
        protected void btOk_Click(object sender, System.EventArgs e)
        {
            string[] SchDatelist = strSchDate.Split('-');
            if (SchDatelist.Length != 3)
            {
                this.SetErrorMsgPageBydir("时间格式不正确!");
                return;
            }
            string strSchID = SchDatelist[0];

            if (int.Parse(SchDatelist[1]) < 10)
            {
                strSchID += "0" + SchDatelist[1];
            }
            else
            {
                strSchID += SchDatelist[1];
            }
            if (int.Parse(SchDatelist[2]) < 10)
            {
                strSchID += "0" + SchDatelist[2];
            }
            else
            {
                strSchID += SchDatelist[2];
            }
            string    strDeptID    = ddlDept.SelectedValue;
            string    strClass     = ddlClass.SelectedItem.Text;
            string    strClassID   = ddlClass.SelectedValue;
            string    strDeptName  = ddlDept.SelectedItem.Text;
            string    strManager   = this.lblManager.Text;
            string    strOfficer   = ddlOfficer.SelectedItem.Text;
            string    strOfficerID = ddlOfficer.SelectedValue;
            Hashtable htpara       = (Hashtable)Session["Schcond"];

            if (htpara == null)
            {
                this.SetErrorMsgPageBydir("请先查询,再进行排班!");
                return;
            }
            if (strDeptID != htpara["strDeptID"].ToString() || strClass != htpara["strClass"].ToString() || strManager != htpara["strManager"].ToString() || strOfficer != htpara["strOfficer"].ToString() || strSchID != htpara["strSchID"].ToString())
            {
                this.SetErrorMsgPageBydir("排班计划参数与之前选定的不一致,请重新查询刷新再排班!");
                return;
            }

            ArrayList alSched = new ArrayList();

            for (int i = 0; i < ltbSchedEmp.Items.Count; i++)
            {
                alSched.Add(ltbSchedEmp.Items[i].Text);
            }
            Hashtable htIOT           = (Hashtable)Application["IOTime"];
            ArrayList altime          = (ArrayList)htIOT[strOfficerID];
            string    strCheckInDate  = "";
            string    strCheckOutDate = "";

            for (int j = 0; j < altime.Count; j++)
            {
                CMSMStruct.SignIOTimeStruct siottmp = (CMSMStruct.SignIOTimeStruct)altime[j];
                if ((strOfficerID + strClassID) == siottmp.strSIOTID)
                {
                    strCheckInDate  = strSchDate + " " + siottmp.strInTime + ":00";
                    strCheckOutDate = strSchDate + " " + siottmp.strOutTime + ":00";
                }
            }
            if (strCheckInDate == "" || strCheckOutDate == "")
            {
                this.SetErrorMsgPageBydir("获取上下班时间参数错误,请检查参数!");
                return;
            }
            htpara.Add("strCheckInDate", strCheckInDate);
            htpara.Add("strCheckOutDate", strCheckOutDate);

            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);
            if (ebu.SchedEmpDaily(htpara, alSched))
            {
                Session.Remove("Schcond");
                this.ltbAllEmp.Items.Clear();
                this.ltbSchedEmp.Items.Clear();
                this.btquery.Enabled    = true;
                this.ddlClass.Enabled   = true;
                this.ddlOfficer.Enabled = true;
                this.ddlDept.Enabled    = true;
                this.lblManager.Text    = "--";
                this.SetSuccMsgPageBydir("排班计划保存成功!", "Employ/wfmWorkDaily.aspx?dept=" + strDeptID);
            }
            else
            {
                this.SetErrorMsgPageBydir("排班计划保存失败!");
            }
        }
Exemplo n.º 7
0
        private void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            if (Session["Login"] != null)
            {
//				CMSMStruct.LoginStruct ls1=(CMSMStruct.LoginStruct)Session["Login"];
//				if(ls1.strLimit=="CL003"||ls1.strLimit=="CL004")
//				{
//					this.SetErrorMsgPageBydir("对不起,你没有权限使用此功能!");
//					return;
//				}
                if (!IsPostBack)
                {
                    if (Request.QueryString.HasKeys())
                    {
                        this.lblDeptID.Text   = Request.QueryString["deptid"];
                        this.txtDept.Text     = Request.QueryString["deptname"];
                        this.txtSchDate.Text  = Request.QueryString["date"];
                        this.txtDept.ReadOnly = true;
                        txtSchDate.ReadOnly   = true;
                    }
                    this.FillDropDownList("tbCommCode", ddlClass, "vcCommSign ='EC'");
                    for (int j = 0; j <= 23; j++)
                    {
                        if (j < 10)
                        {
                            this.ddlInHour.Items.Add("0" + j.ToString());
                            this.ddlOutHour.Items.Add("0" + j.ToString());
                        }
                        else
                        {
                            this.ddlInHour.Items.Add(j.ToString());
                            this.ddlOutHour.Items.Add(j.ToString());
                        }
                    }
                    this.ddlInMinute.Items.Add("00");
                    this.ddlInMinute.Items.Add("15");
                    this.ddlInMinute.Items.Add("30");
                    this.ddlInMinute.Items.Add("45");

                    this.ddlOutMinute.Items.Add("00");
                    this.ddlOutMinute.Items.Add("15");
                    this.ddlOutMinute.Items.Add("30");
                    this.ddlOutMinute.Items.Add("45");

                    Hashtable htapp   = (Hashtable)Application["appconf"];
                    string    strcons = (string)htapp["cons"];
                    ebu = new EmpBusi(strcons);

                    DataTable dtout = ebu.GetAllEmpName(this.lblDeptID.Text.Trim(), this.txtSchDate.Text.Trim());
                    for (int i = 0; i < dtout.Rows.Count; i++)
                    {
                        this.ltbEmp.Items.Add(dtout.Rows[i]["vcEmpName"].ToString());
                    }
                }
            }
            else
            {
                Response.Redirect("../Exit.aspx");
            }
        }
Exemplo n.º 8
0
        private void btadd_Click(object sender, System.EventArgs e)
        {
            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);

            string strManager = "";

            if (this.lblDeptID.Text.Trim() != "")
            {
                DataTable dtMana = ebu.GetEmpManager(this.lblDeptID.Text.Trim());
                for (int i = 0; i < dtMana.Rows.Count; i++)
                {
                    strManager += dtMana.Rows[i]["vcEmpName"].ToString() + ",";
                }
                if (strManager != "")
                {
                    strManager = strManager.Substring(0, strManager.Length - 1);
                }
            }
            else
            {
                this.SetErrorMsgPageBydirHistory("门店信息错误!");
                return;
            }

            double strInHour      = double.Parse(ddlInHour.SelectedItem.Text);
            double strInMinute    = double.Parse(ddlInMinute.SelectedItem.Text);
            double strOutHour     = double.Parse(ddlOutHour.SelectedItem.Text);
            double strOutMinute   = double.Parse(ddlOutMinute.SelectedItem.Text);
            double dateHourLong   = 0;
            double dateMinuteLong = 0;

            if (chcSecDay.Checked)
            {
                if (this.ddlClass.SelectedValue != "5")
                {
                    dateHourLong = (24 - strInHour) + strOutHour;
                    if (strInMinute == strOutMinute)
                    {
                        dateMinuteLong = 0;
                    }
                    else if (strInMinute < strOutMinute)
                    {
                        dateMinuteLong = Math.Round(((strOutMinute - strInMinute) / 60), 2);
                    }
                    else
                    {
                        dateMinuteLong = Math.Round((strInMinute - strOutMinute) / 60, 2);
                    }
                    if ((dateHourLong + dateMinuteLong) <= 2.5)
                    {
                        this.SetErrorMsgPageBydirHistory("每班次的上班时间不能小于等于2.5小时!");
                        return;
                    }
                }
            }
            else
            {
                if (this.ddlClass.SelectedValue != "5")
                {
                    if (strInHour > strOutHour)
                    {
                        this.SetErrorMsgPageBydirHistory("上班时间不能大于下班时间!");
                        return;
                    }
                    dateHourLong = strOutHour - strInHour;
                    if (strInMinute == strOutMinute)
                    {
                        dateMinuteLong = 0;
                    }
                    else if (strInMinute < strOutMinute)
                    {
                        dateMinuteLong = Math.Round((strOutMinute - strInMinute) / 60, 2);
                    }
                    else
                    {
                        dateMinuteLong = Math.Round((strInMinute - strOutMinute) / 60, 2);
                    }
                    if ((dateHourLong + dateMinuteLong) <= 2.5)
                    {
                        this.SetErrorMsgPageBydirHistory("每班次的上班时间不能小于等于2.5小时!");
                        return;
                    }
                }
            }

            ArrayList alsuc  = new ArrayList();
            ArrayList alfail = new ArrayList();

            for (int k = 0; k < this.ltbSelect.Items.Count; k++)
            {
                CMSMStruct.EmpSchLogStruct empschlog = new CMSMStruct.EmpSchLogStruct();
                empschlog.strManager  = strManager;
                empschlog.strSchID    = this.txtSchDate.Text.Trim();
                empschlog.strEmpName  = this.ltbSelect.Items[k].Text.Trim();
                empschlog.strDeptName = this.txtDept.Text.Trim();
                empschlog.strClass    = this.ddlClass.SelectedItem.Text;

                CMSMStruct.EmployeeStruct emp1 = ebu.GetEmpInfoByName(empschlog.strEmpName);
                if (emp1.strCardID == "" || emp1.strCardID == null)
                {
                    alfail.Add(empschlog.strEmpName + "  失败原因:获取卡号出错,请检查员工姓名是否正确!");
                    continue;
                }
                else
                {
                    empschlog.strCardID = emp1.strCardID;
                    empschlog.strEmpOF  = emp1.strOfficer;
                }

                if (ebu.IsEmpSchAllDayWork(empschlog.strSchID, empschlog.strCardID, empschlog.strClass))
                {
                    alfail.Add(empschlog.strEmpName + "  失败原因:排班表中不可即有全日班或休息,又有其它班次!");
                    continue;
                }

                if (ebu.IsEmpSchDupClass(empschlog.strSchID, empschlog.strCardID, empschlog.strClass))
                {
                    alfail.Add(empschlog.strEmpName + "  失败原因:排班表中已经存在" + empschlog.strClass + "信息!");
                    continue;
                }

                empschlog.strSchID = this.txtSchDate.Text.Trim();
                if (empschlog.strClass != "休息")
                {
                    string strDate = empschlog.strSchID.Substring(0, 4) + "-" + empschlog.strSchID.Substring(4, 2) + "-" + empschlog.strSchID.Substring(6, 2);
                    empschlog.strCheckIn = strDate + " " + strInHour.ToString() + ":" + strInMinute.ToString() + ":00";
                    if (chcSecDay.Checked)
                    {
                        DateTime dtdate    = new DateTime(int.Parse(empschlog.strSchID.Substring(0, 4)), int.Parse(empschlog.strSchID.Substring(4, 2)), int.Parse(empschlog.strSchID.Substring(6, 2)));
                        DateTime dtnewdate = dtdate.AddDays(1);
                        empschlog.strCheckOut = dtnewdate.ToShortDateString() + " " + strOutHour.ToString() + ":" + strOutMinute.ToString() + ":00";
                    }
                    else
                    {
                        empschlog.strCheckOut = strDate + " " + strOutHour.ToString() + ":" + strOutMinute.ToString() + ":00";
                    }
                }
                if (empschlog.strClass != "休息" && empschlog.strClass != "全日班")
                {
                    if (ebu.IsErrorTimespanWithTwoClass(empschlog))
                    {
                        alfail.Add(empschlog.strEmpName + "  失败原因:两相邻班次之间的时间间隔不得小于2.5小时!");
                        continue;
                    }
                }

                if (ebu.SchedEmpDailyEvery(empschlog))
                {
                    alsuc.Add(empschlog.strEmpName);
                }
            }

            string strinfo = "--------成功员工列表--------<br>";

            for (int m = 0; m < alsuc.Count; m++)
            {
                strinfo += alsuc[m].ToString() + "<br>";
            }
            strinfo += "--------失败员工列表--------<br>";
            for (int n = 0; n < alfail.Count; n++)
            {
                strinfo += alfail[n].ToString() + "<br>";
            }
            this.SetSuccMsgPageBydir("添加员工排班表完成,如果有失败请检查是否该员工已经有该班次的排班信息了!<br>" + strinfo, "Employ/wfmWorkDailyEvery.aspx");
        }
Exemplo n.º 9
0
        protected void btQuery_Click(object sender, System.EventArgs e)
        {
            Session.Remove("QUERY");
            Session.Remove("toExcel");

            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);

            Hashtable htPara    = new Hashtable();
            string    strCardID = txtCardID.Text.Trim();

            htPara.Add("strCardID", strCardID);
            string strEmpName = txtEmpName.Text.Trim();

            htPara.Add("strEmpName", strEmpName);
            htPara.Add("strstate", ddlstate.SelectedValue);
            string strDeptID = ddlDept.SelectedValue;

            if (strDeptID == "全部")
            {
                strDeptID = "";
            }
            htPara.Add("strDeptID", strDeptID);

            try
            {
                DataTable dtout = ebu.GetEmployees(htPara);
                if (dtout == null)
                {
                    this.SetErrorMsgPageBydir("查询出错,请重试!");
                    btnExcel.Enabled = false;
                    return;
                }
                else
                {
                    this.TableConvert(dtout, "在职情况", "tbCommCode", "vcCommSign='ES'");
                    this.TableConvert(dtout, "学历", "tbCommCode", "vcCommSign='DE'");
                    this.TableConvert(dtout, "当前所属门店", "tbCommCode", "vcCommSign='MD'");
                    this.TableConvert(dtout, "职务", "tbCommCode", "vcCommSign='OF'");
                    dtout.TableName = "员工资料清单";
                    DataTable dtexcel = dtout.Copy();
                    Session["QUERY"] = dtout;
                    for (int i = 0; i < dtexcel.Rows.Count; i++)
                    {
                        dtexcel.Rows[i][0] = "'" + dtexcel.Rows[i][0].ToString();
                        dtexcel.Rows[i][3] = "'" + dtexcel.Rows[i][3].ToString();
                        dtexcel.Rows[i][6] = "'" + dtexcel.Rows[i][6].ToString();
                    }
                    dtexcel.Columns.Remove("操作");
                    Session["toExcel"] = dtexcel;

                    if (dtout.Rows.Count <= 0)
                    {
                        btnExcel.Enabled = false;
                    }
                    else
                    {
                        btnExcel.Enabled = true;
                    }
                }

                UcPageView1.MyDataGrid.PageSize = 30;
                DataView dvOut = new DataView(dtout);
                this.UcPageView1.MyDataSource = dvOut;
                this.UcPageView1.BindGrid();
            }
            catch (Exception er)
            {
                this.clog.WriteLine(er);
                this.SetErrorMsgPageBydir("查询错误,请重试!");
                return;
            }
        }
Exemplo n.º 10
0
        private DataSet CheckEmpSch(DataSet ds)
        {
            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            emb = new EmpBusi(strcons);
            DataTable dtEmp       = emb.GetEmployInfo();
            Hashtable htEmpCardID = new Hashtable();

            foreach (DataRow dr in dtEmp.Rows)
            {
                CMSMStruct.EmployeeStruct emp1 = new CommCenter.CMSMStruct.EmployeeStruct();
                emp1.strCardID  = dr["vcCardID"].ToString();
                emp1.strEmpName = dr["vcEmpName"].ToString();
                emp1.strOfficer = dr["vcOfficer"].ToString();
                emp1.strDeptID  = dr["vcDeptName"].ToString();
                htEmpCardID.Add(emp1.strCardID, emp1);
            }

            DataTable dtDeptManager = emb.GetDeptManagerList();
            Hashtable htManager     = new Hashtable();
            string    strManaDeptID = "";
            string    strManager    = "";

            if (dtDeptManager != null && dtDeptManager.Rows.Count > 0)
            {
                strManaDeptID = dtDeptManager.Rows[0]["vcDeptID"].ToString();
            }
            for (int i = 0; i < dtDeptManager.Rows.Count; i++)
            {
                if (strManaDeptID == dtDeptManager.Rows[i]["vcDeptID"].ToString())
                {
                    strManager += dtDeptManager.Rows[i]["vcEmpName"].ToString() + ",";
                }
                else
                {
                    if (strManager != "")
                    {
                        strManager = strManager.Substring(0, strManager.Length - 1);
                    }
                    htManager.Add(strManaDeptID, strManager);
                    strManaDeptID = dtDeptManager.Rows[i]["vcDeptID"].ToString();
                    strManager    = dtDeptManager.Rows[i]["vcEmpName"].ToString() + ",";
                }
                if (i == dtDeptManager.Rows.Count - 1)
                {
                    if (strManager != "")
                    {
                        strManager = strManager.Substring(0, strManager.Length - 1);
                    }
                    htManager.Add(strManaDeptID, strManager);
                }
            }

            int       iError = 0;
            DataTable dt     = ds.Tables[0];

            dt.Columns.Add("校验错误");
            dt.Columns.Add("vcSchID");
            dt.Columns.Add("vcDeptName");
            dt.Columns.Add("vcManager");
            dt.Columns.Add("vcCardID");
            dt.Columns.Add("vcEmpName");
            dt.Columns.Add("vcEmpOF");
            dt.Columns.Add("vcClass");
            dt.Columns.Add("dtCheckIn");
            dt.Columns.Add("dtCheckOut");
            foreach (DataRow dr in dt.Rows)
            {
                string strSchID = dr["排班日期"].ToString().Trim();
                if (strSchID.Length != 8)
                {
                    dr["校验错误"] += strSchID + ":排班日期应为8位日期;";
                    iError     += 1;
                }
                else
                {
                    DateTime dtsch = new DateTime(int.Parse(strSchID.Substring(0, 4)), int.Parse(strSchID.Substring(4, 2)), int.Parse(strSchID.Substring(6, 2)));
                    if (dtsch.CompareTo(DateTime.Today) < 0)
                    {
                        dr["校验错误"] += strSchID + ":不能排今天以前的班;";
                        iError     += 1;
                    }
                    else
                    {
                        dr["vcSchID"] = strSchID;
                    }
                }

                string    strDeptName  = dr["门店"].ToString().Trim();
                string    strDeptOldID = "";
                bool      isdeptexist  = false;
                DataTable dtDept       = (DataTable)Application["AllMD"];
                foreach (DataRow dr1 in dtDept.Rows)
                {
                    if (dr1["vcCommName"].ToString() == strDeptName)
                    {
                        isdeptexist  = true;
                        strDeptOldID = dr1["vcCommCode"].ToString();
                        break;
                    }
                }
                if (!isdeptexist)
                {
                    dr["校验错误"] += strDeptName + ":门店不存在;";
                    iError     += 1;
                }
                else
                {
                    dr["vcDeptName"] = strDeptName;
                }

                if (dr["vcDeptName"].ToString() != "" && strDeptOldID != "")
                {
                    if (htManager.ContainsKey(strDeptOldID))
                    {
                        dr["vcManager"] = htManager[strDeptOldID].ToString();
                    }
                }

                string strCardID  = dr["员工卡号"].ToString();
                string strEmpName = dr["员工姓名"].ToString();
                string strOfficer = dr["职务"].ToString();
                if (!htEmpCardID.ContainsKey(strCardID))
                {
                    dr["校验错误"] += strCardID + ":卡号不正确,员工不存在;";
                    iError     += 1;
                }
                else
                {
                    dr["vcCardID"] = strCardID;
                    CMSMStruct.EmployeeStruct emptmp2 = (CMSMStruct.EmployeeStruct)htEmpCardID[strCardID];
                    if (emptmp2.strEmpName != strEmpName)
                    {
                        dr["校验错误"] += strEmpName + ":员工姓名不正确;";
                        iError     += 1;
                    }
                    else
                    {
                        dr["vcEmpName"] = strEmpName;
                    }
                    if (emptmp2.strOfficer != strOfficer)
                    {
                        dr["校验错误"] += strOfficer + ":职务不正确;";
                        iError     += 1;
                    }
                    else
                    {
                        dr["vcEmpOF"] = strOfficer;
                    }
                    if (emptmp2.strDeptID != strDeptName)
                    {
                        dr["校验错误"] += strDeptName + ":员工所属部门不正确;";
                        iError     += 1;
                    }
                }

                string strClass = dr["班次"].ToString();
                if (emb.IsEmpSchExist(strSchID, strDeptName, strCardID, strClass))
                {
                    dr["校验错误"] += "系统中已有该员工的本条排班信息;";
                    iError     += 1;
                }
                else
                {
                    dr["vcClass"] = strClass;
                }

                string InHour      = dr["上班-小时"].ToString().Trim();
                string InMin       = dr["上班-分钟"].ToString().Trim();
                string OutHour     = dr["下班-小时"].ToString().Trim();
                string OutMin      = dr["下班-分钟"].ToString().Trim();
                string nextoutflag = dr["次日下班"].ToString().Trim();
                if (!(this.JudgeIsNum(InHour) && this.JudgeIsNum(InMin) && this.JudgeIsNum(OutHour) && this.JudgeIsNum(OutMin)))
                {
                    dr["校验错误"] += "上下班的小时数或分钟数中有非数字字符;";
                    iError     += 1;
                }
                else
                {
                    if (!(this.JudgeIs24Hour(InHour) && this.JudgeIs60Minute(InMin) && this.JudgeIs24Hour(OutHour) && this.JudgeIs60Minute(OutMin)))
                    {
                        dr["校验错误"] += "上下班的小时数或分钟数有误;";
                        iError     += 1;
                    }
                    else
                    {
                        if (dr["vcSchID"].ToString() != "")
                        {
                            DateTime dtIn  = new DateTime(int.Parse(dr["vcSchID"].ToString().Substring(0, 4)), int.Parse(dr["vcSchID"].ToString().Substring(4, 2)), int.Parse(dr["vcSchID"].ToString().Substring(6, 2)), int.Parse(InHour), int.Parse(InMin), 0);
                            DateTime dtOut = DateTime.Now;
                            if (nextoutflag == "是")
                            {
                                dtOut = new DateTime(dtIn.AddDays(1).Year, dtIn.AddDays(1).Month, dtIn.AddDays(1).Day, int.Parse(OutHour), int.Parse(OutMin), 0);
                            }
                            else
                            {
                                dtOut = new DateTime(int.Parse(dr["vcSchID"].ToString().Substring(0, 4)), int.Parse(dr["vcSchID"].ToString().Substring(4, 2)), int.Parse(dr["vcSchID"].ToString().Substring(6, 2)), int.Parse(OutHour), int.Parse(OutMin), 0);
                            }
                            if (dtIn.CompareTo(dtOut) > 0)
                            {
                                dr["校验错误"] += "上班时间不能大于下班时间;";
                                iError     += 1;
                            }
                            TimeSpan tsIn     = new TimeSpan(dtIn.Ticks);
                            TimeSpan tsOut    = new TimeSpan(dtOut.Ticks);
                            TimeSpan ts       = tsIn.Subtract(tsOut).Duration();
                            double   diffdate = Math.Round(double.Parse(ts.Hours.ToString()) + double.Parse(ts.Minutes.ToString()) / 60, 2);
                            if (diffdate < 8.5)
                            {
                                dr["校验错误"] += "每班次的上班时间应大于8小时30分钟;";
                                iError     += 1;
                            }

                            dr["dtCheckIn"]  = dtIn;
                            dr["dtCheckOut"] = dtOut;
                        }
                    }
                }
            }
            this.txtError.Text = iError.ToString();
            return(ds);
        }
Exemplo n.º 11
0
        protected void btquery_Click(object sender, System.EventArgs e)
        {
            Session.Remove("QUERY");
            string[] SchDatelist = strSchDate.Split('-');
            if (SchDatelist.Length != 3)
            {
                this.SetErrorMsgPageBydir("时间格式不正确!");
                return;
            }
            string strSchID = SchDatelist[0];

            if (int.Parse(SchDatelist[1]) < 10)
            {
                strSchID += "0" + SchDatelist[1];
            }
            else
            {
                strSchID += SchDatelist[1];
            }
            if (int.Parse(SchDatelist[2]) < 10)
            {
                strSchID += "0" + SchDatelist[2];
            }
            else
            {
                strSchID += SchDatelist[2];
            }
            DateTime datetimesch = new DateTime(int.Parse(SchDatelist[0]), int.Parse(SchDatelist[1]), int.Parse(SchDatelist[2]));

            if (datetimesch.CompareTo(DateTime.Today) < 0)
            {
                this.SetErrorMsgPageBydir("不能对以前的排班计划进行修改!");
                return;
            }

            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);

            if (strSchDate == "")
            {
                this.SetErrorMsgPageBydir("请选择排班日期!");
                return;
            }

            try
            {
                string    strDeptName = ddlDept.SelectedItem.Text;
                string    strDeptID   = ddlDept.SelectedValue;
                DataTable dtout       = ebu.GetEveryEmpSchLog(strSchID, strDeptID, strDeptName);
                if (dtout == null)
                {
                    this.SetErrorMsgPageBydir("查询排班情况出错!");
                    return;
                }
                else
                {
                    dtout.TableName  = "排班情况";
                    Session["QUERY"] = dtout;
                    UcPageView1.MyDataGrid.PageSize = 30;
                    DataView dvOut = new DataView(dtout);
                    this.UcPageView1.MyDataSource = dvOut;
                    this.UcPageView1.BindGrid();
                }
            }
            catch (Exception er)
            {
                this.clog.WriteLine(er);
                this.SetErrorMsgPageBydir("查询错误,请重试!");
                return;
            }
        }
Exemplo n.º 12
0
        private void btquery_Click(object sender, System.EventArgs e)
        {
            Session.Remove("QUERY");
            string[] SchDatelist = strSchDate.Split('-');
            if (SchDatelist.Length != 3)
            {
                this.SetErrorMsgPageBydir("时间格式不正确!");
                return;
            }
            string strSchID = SchDatelist[0];

            if (int.Parse(SchDatelist[1]) < 10)
            {
                strSchID += "0" + SchDatelist[1];
            }
            else
            {
                strSchID += SchDatelist[1];
            }
            if (int.Parse(SchDatelist[2]) < 10)
            {
                strSchID += "0" + SchDatelist[2];
            }
            else
            {
                strSchID += SchDatelist[2];
            }

            Hashtable htapp   = (Hashtable)Application["appconf"];
            string    strcons = (string)htapp["cons"];

            ebu = new EmpBusi(strcons);

            if (strSchDate == "")
            {
                this.SetErrorMsgPageBydir("请选择要查询排班的日期!");
                return;
            }

            try
            {
                DataTable dtout = ebu.GetEmpSchLog(strSchID);
                if (dtout == null || dtout.Rows.Count <= 0)
                {
                    this.SetErrorMsgPageBydir("查询排班表出错!");
                    return;
                }
                else
                {
                    dtout.TableName  = "排班情况";
                    Session["QUERY"] = dtout;
                    UcPageView1.MyDataGrid.PageSize = 30;
                    DataView dvOut = new DataView(dtout);
                    this.UcPageView1.MyDataSource = dvOut;
                    this.UcPageView1.BindGrid();
                }
            }
            catch (Exception er)
            {
                this.clog.WriteLine(er);
                this.SetErrorMsgPageBydir("查询错误,请重试!");
                return;
            }
        }