コード例 #1
0
        private void GetEmployeeInfo(RailExam.Model.Employee obj)
        {
            txtEmployeeNameEdit.Text = obj.EmployeeName;
            txtWorkNoEdit.Text = obj.WorkNo;
			if(obj.WorkNo == null)
			{
				ViewState["OldWorkNo"] = "";
			}
			else
			{
				ViewState["OldWorkNo"] = obj.WorkNo;
			}
            txtAddress.Text = obj.Address;
            dateBeginDate.DateValue = obj.BeginDate.ToString("yyyy-MM-dd");
            dateBirthday.DateValue = obj.Birthday.ToString("yyyy-MM-dd");
            txtFolk.Text = obj.Folk;
            ddlSex.SelectedValue = obj.Sex;
            txtNativePlace.Text = obj.NativePlace;
            rblWedding.SelectedValue = obj.Wedding.ToString();
            txtWorkPhoneEdit.Text = obj.WorkPhone;
            txtHomePhone.Text = obj.HomePhone;
            txtPostCode.Text = obj.PostCode;
            chDimission.Checked = !obj.IsOnPost;
            ddlTech.SelectedValue = obj.TechnicianTypeID.ToString();
            ddlIsGroup.SelectedValue = obj.IsGroupLeader.ToString();
            txtPostNo.Text = obj.PostNo;
            
            if(obj.EmployeeID != 0)
            {
                txtPostNameEdit.Text = obj.PostName;
                hfPostID.Value = obj.PostID.ToString();
                txtOrgNameEdit.Text = obj.OrgName;
                hfOrgID.Value = obj.OrgID.ToString();
            }
        }
コード例 #2
0
        protected void FillHeading(string strId)
        {
            ExamResultBLL examResultBLL = new ExamResultBLL();
            PaperBLL      kBLL          = new PaperBLL();

            RailExam.Model.ExamResult examResult = examResultBLL.GetExamResultByOrgID(Convert.ToInt32(strId), Convert.ToInt32(ViewState["OrgID"].ToString()));
            RailExam.Model.Paper      paper      = null;
            EmployeeBLL ebLL = new EmployeeBLL();

            RailExam.Model.Employee Employee = ebLL.GetEmployee(examResult.ExamineeId);

            string strOrgName     = Employee.OrgName;
            string strStationName = "";
            string strOrgName1    = "";
            int    n = strOrgName.IndexOf("-");

            if (n != -1)
            {
                strStationName = strOrgName.Substring(0, n);
                strOrgName1    = strOrgName.Substring(n + 1);
            }
            else
            {
                strStationName = strOrgName;
                strOrgName1    = "";
            }

            lblOrg.Text      = strStationName;
            lblWorkShop.Text = strOrgName1;
            lblPost.Text     = Employee.PostName;
            lblName.Text     = Employee.EmployeeName;
            lblTime.Text     = examResult.BeginDateTime.ToString("yyyy-MM-dd HH:mm");
            lblScore.Text    = examResult.Score.ToString();

            if (examResult != null)
            {
                paper = kBLL.GetPaper(examResult.PaperId);
            }


            PaperItemBLL paperItemBLL = new PaperItemBLL();
            IList <RailExam.Model.PaperItem> paperItems = paperItemBLL.GetItemsByPaperId(paper.PaperId);
            int nItemCount = paperItems.Count;

            decimal nTotalScore = 0;

            for (int i = 0; i < paperItems.Count; i++)
            {
                nTotalScore += paperItems[i].Score;
            }


            if (paper != null)
            {
                lblTitle.Text      = paper.PaperName;
                lblTitleRight.Text = "总共 " + nItemCount + " 题,共 " + nTotalScore + " 分";
            }
        }
コード例 #3
0
        protected void btnSaveAdd_Click(object sender, EventArgs e)
        {
			EmployeeBLL objBll = new EmployeeBLL();
			if (hfType.Value != "Edit")
			{
				if (objBll.GetEmployeeByWorkNo(txtWorkNoEdit.Text.Trim()) > 0)
				{
					SessionSet.PageMessage = "该员工编码已经存在!";
					return;
				}
			}
			else
			{
				if (ViewState["OldWorkNo"].ToString() != txtWorkNoEdit.Text.Trim())
				{
					if (objBll.GetEmployeeByWorkNo(txtWorkNoEdit.Text.Trim()) > 0)
					{
						SessionSet.PageMessage = "该员工编码已经存在!";
						return;
					}
				}
			}
            SaveEmployeeInfo();
            if (hfType.Value != "Edit")
            {
                Response.Write("<script>window.opener.frames['ifEmployeeInfo'].form1.Refresh.value='true';window.opener.frames['ifEmployeeInfo'].form1.submit();</script>");
            }
            else
            {
                Response.Write("<script>window.opener.form1.Refresh.value='true';window.opener.form1.submit();</script>");
            }
            RailExam.Model.Employee obj = new RailExam.Model.Employee();
            GetEmployeeInfo(obj);
            ddlRoleNameEdit.SelectedValue = "0";
            if(hfType.Value =="Insert")
            {
               if(txtPostNameEdit.Text == string.Empty)
               {
                   PostBLL objPostBll = new PostBLL();
                   txtPostNameEdit.Text = objPostBll.GetPost(Convert.ToInt32(hfPostID.Value)).PostName;
               }
               
                if(txtOrgNameEdit.Text == string.Empty)
               {
                   OrganizationBLL objOrgBll = new OrganizationBLL();
                   txtOrgNameEdit.Text = objOrgBll.GetOrganization(Convert.ToInt32(hfOrgID.Value)).ShortName;
               }
            }
            dateBirthday.DateValue = DateTime.Today.ToString("yyyy-MM-dd");
            dateBeginDate.DateValue = DateTime.Today.ToString("yyyy-MM-dd");
            hfType.Value = "Insert";
        }
コード例 #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (PrjPub.CurrentLoginUser == null)
            {
                Response.Redirect("/RailExamBao/Common/Error.aspx?error=Session过期请重新登录本系统!");
                return;
            }

            hfNowEmployeeID.Value = PrjPub.CurrentLoginUser.EmployeeID.ToString();

            if (!string.IsNullOrEmpty(hfEmployeeID.Value))
            {
                EmployeeBLL objEmployeeBll = new EmployeeBLL();
                string[]    strID          = hfEmployeeID.Value.Split(',');

                string strName = string.Empty;
                for (int i = 0; i < strID.Length; i++)
                {
                    RailExam.Model.Employee objEmployee = objEmployeeBll.GetEmployee(Convert.ToInt32(strID[i]));
                    if (strName == string.Empty)
                    {
                        strName = objEmployee.EmployeeName;
                    }
                    else
                    {
                        strName = strName + "," + objEmployee.EmployeeName;
                    }
                }

                txtEmployee.Text = strName;
            }

            if (!IsPostBack)
            {
                ddlOrg.Items.Clear();
                OrganizationBLL organizationBLL = new OrganizationBLL();

                IList <RailExam.Model.Organization> organizationList = organizationBLL.GetOrganizationsByLevel(2);
                foreach (RailExam.Model.Organization organization in organizationList)
                {
                    if (organization.OrganizationId != 1 && organization.OrganizationId != PrjPub.CurrentLoginUser.StationOrgID)
                    {
                        ListItem item = new ListItem();
                        item.Value = organization.OrganizationId.ToString();
                        item.Text  = organization.ShortName;
                        ddlOrg.Items.Add(item);
                    }
                }
            }
        }
コード例 #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (PrjPub.CurrentLoginUser == null)
                {
                    Response.Redirect("/RailExamBao/Common/Error.aspx?error=Session过期请重新登录本系统!");
                    return;
                }
                hfType.Value = Request.QueryString.Get("mode").ToString();
                if(PrjPub.CurrentLoginUser.SuitRange == 1 && PrjPub.CurrentLoginUser.IsAdmin && PrjPub.CurrentLoginUser.UseType == 0)
                {
                    hfSuitRange.Value = "1";
                }
                else
                {
                    hfSuitRange.Value = "0";
                }
                EmployeeBLL objEmployeeBll = new EmployeeBLL();
                switch (hfType.Value)
                {
                    case "Edit":
                        btnSave.Visible = true;
                        btnSaveNew.Visible = true;
                        btnClose.Visible = true;
                        string strEmployeeID = Request.QueryString.Get("id");
                        RailExam.Model.Employee obj = objEmployeeBll.GetEmployee(Convert.ToInt32(strEmployeeID));
                        GetEmployeeInfo(obj);
                        GetRoleInfo(obj.EmployeeID);
                        if (Request.QueryString.Get("type") == "Org" && SessionSet.OrganizationID !=1)
                        {
                            img1.Visible = false;
                        }

                        if(!PrjPub.CurrentLoginUser.IsAdmin)
                        {
                            ddlRoleNameEdit.Enabled = false;
                        }
                        break;

                    case "Insert":
                        btnSave.Visible = true;
                        btnSaveNew.Visible = true;
                        btnClose.Visible = true;
                        string strOrgID = Request.QueryString.Get("OrgID");
                        if(strOrgID != null && strOrgID != string.Empty)
                        {
                            OrganizationBLL objBll = new OrganizationBLL();
                            if (SessionSet.OrganizationID != 1)
                            {
                                img1.Visible = false;
                            }
                            txtOrgNameEdit.Text = objBll.GetOrganization(Convert.ToInt32(strOrgID)).ShortName;
                            hfOrgID.Value = strOrgID;
                        }

                        string strPostID = Request.QueryString.Get("Post");
                        if(strPostID != null && strPostID != string.Empty)
                        {
                            if(SessionSet.OrganizationID !=1)
                            {
                                img1.Visible = false;
                                hfOrgID.Value = SessionSet.OrganizationID.ToString();
                                txtOrgNameEdit.Text = SessionSet.OrganizationName;
                            }
                            PostBLL objBll = new PostBLL();
                            //img2.Visible = false;
                            txtPostNameEdit.Text = objBll.GetPost(Convert.ToInt32(strPostID)).PostName;
                            hfPostID.Value = strPostID;
                        }

                        dateBirthday.DateValue = DateTime.Today.ToString("yyyy-MM-dd");
                        dateBeginDate.DateValue = DateTime.Today.ToString("yyyy-MM-dd");

                        if (!PrjPub.CurrentLoginUser.IsAdmin)
                        {
                            ddlRoleNameEdit.Enabled = false;
                        }
                        break;

                    case "ReadOnly":
                        btnSave.Visible = false;
                        btnSaveNew.Visible = false;
                        btnClose.Visible = true;
                        RailExam.Model.Employee objEmployee = objEmployeeBll.GetEmployee(Convert.ToInt32(Request.QueryString.Get("id")));
                        GetEmployeeInfo(objEmployee);
                        GetRoleInfo(objEmployee.EmployeeID);
                        break;
                }
            }
        }
コード例 #6
0
        private void SaveEmployeeInfo()
        {
            EmployeeBLL objBll =new EmployeeBLL();
            RailExam.Model.Employee obj = new RailExam.Model.Employee();
            obj.EmployeeName = txtEmployeeNameEdit.Text;
            obj.WorkNo = txtWorkNoEdit.Text;
            obj.Address = txtAddress.Text;
            obj.BeginDate = DateTime.Parse(dateBeginDate.DateValue.ToString());
            obj.Birthday = DateTime.Parse(dateBirthday.DateValue.ToString());
            obj.Folk = txtFolk.Text;
            obj.PostID = Convert.ToInt32(hfPostID.Value);
            obj.OrgID = Convert.ToInt32(hfOrgID.Value);
            obj.Sex = ddlSex.SelectedValue;
            obj.NativePlace = txtNativePlace.Text;
            obj.Wedding = Convert.ToInt32(rblWedding.SelectedValue);
            obj.WorkPhone = txtWorkPhoneEdit.Text;
            obj.HomePhone = txtHomePhone.Text;
            obj.MobilePhone = txtMobilePhone.Text;
            obj.PostCode = txtPostCode.Text;
            obj.IsOnPost = !chDimission.Checked;
            obj.Memo = txtMemoEdit.Text;
            obj.IsGroupLeader = Convert.ToInt32(ddlIsGroup.SelectedValue);
            obj.TechnicianTypeID = Convert.ToInt32(ddlTech.SelectedValue);
            obj.PostNo = txtPostNo.Text;
            obj.PinYinCode = Pub.GetChineseSpell(obj.EmployeeName);

           SystemUserBLL objSystemBll = new SystemUserBLL();
            if (hfType.Value == "Edit")
            {
                obj.EmployeeID = Convert.ToInt32(Request.QueryString.Get("id"));
                objBll.UpdateEmployee(obj);

                RailExam.Model.SystemUser objSystem = objSystemBll.GetUserByEmployeeID(obj.EmployeeID);
                if(objSystem != null)
                {
                    objSystem.RoleID = Convert.ToInt32(ddlRoleNameEdit.SelectedValue);
                    objSystem.UserID = obj.WorkNo;
                    objSystemBll.UpdateUser(objSystem);
                }
                else
                {
                    objSystem = new SystemUser();
                    objSystem.EmployeeID = obj.EmployeeID;
                    objSystem.Memo = "";
                    objSystem.Password = "******";
                    objSystem.RoleID = Convert.ToInt32(ddlRoleNameEdit.SelectedValue);
                    objSystem.UserID = obj.WorkNo;
                    objSystemBll.AddUser(objSystem);
                }
            }
            else
            {
            	obj.LoginTime = 0;
            	obj.LoginCount = 0;
                int id = objBll.AddEmployee(obj);
                RailExam.Model.SystemUser objSystem = new SystemUser();
                objSystem.EmployeeID = id;
                objSystem.Memo = "";
                objSystem.Password = "******";
                objSystem.RoleID = Convert.ToInt32(ddlRoleNameEdit.SelectedValue);
                objSystem.UserID = obj.WorkNo;
                objSystemBll.AddUser(objSystem);
            }
        }
コード例 #7
0
        protected void btnImport_Click(object sender, EventArgs e)
        {
            if (File1.FileName == "")
            {
                SessionSet.PageMessage = "请浏览选择Excel文件!";
                return;
            }
            string strFileName = Path.GetFileName(File1.PostedFile.FileName);
            string strPath     = Server.MapPath("/RailExamBao/Excel/" + strFileName);

            if (File.Exists(strPath))
            {
                File.Delete(strPath);
            }

            ((HttpPostedFile)File1.PostedFile).SaveAs(strPath);

            string strSql;

            string strODConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strPath + "; Extended Properties=Excel 8.0;";

            strSql = "select 顺号,站段名称,车间,班组,姓名,系统,工种,职名,性别,工作证号,是否班组长,技能等级 from [Sheet1$]";
            OleDbConnection ODcon = new OleDbConnection(strODConn);
            DataSet         ds    = new DataSet();

            try
            {
                ODcon.Open();
                OleDbCommand     OCom = new OleDbCommand(strSql, ODcon);
                OleDbDataAdapter ODA  = new OleDbDataAdapter(OCom);
                ODA.Fill(ds);
            }
            catch
            {
                SessionSet.PageMessage = "请核对Excel文件的格式!";
                return;
            }
            finally
            {
                ODcon.Close();
            }

            IList <RailExam.Model.Employee> objEmployeeList = new List <RailExam.Model.Employee>();

            try
            {
                DataTable  dt     = new DataTable();
                DataColumn dcnew1 = dt.Columns.Add("ExcelNo");
                DataColumn dcnew2 = dt.Columns.Add("WorkNo");
                DataColumn dcnew3 = dt.Columns.Add("EmployeeName");
                DataColumn dcnew4 = dt.Columns.Add("Sex");
                DataColumn dcnew5 = dt.Columns.Add("OrgPath");
                DataColumn dcnew6 = dt.Columns.Add("PostPath");
                DataColumn dcnew7 = dt.Columns.Add("IsGroup");
                DataColumn dcnew8 = dt.Columns.Add("Tech");

                OrganizationBLL objOrgBll    = new OrganizationBLL();
                PostBLL         objPostBll   = new PostBLL();
                EmployeeBLL     objBll       = new EmployeeBLL();
                SystemUserBLL   objSystemBll = new SystemUserBLL();

                if (ds.Tables[0].Rows.Count == 0)
                {
                    SessionSet.PageMessage = "Excel中没有任何记录,请核对!";
                    return;
                }

                if (ds.Tables[0].Rows[0]["站段名称"].ToString() != txtOrg.Text.Substring(txtOrg.Text.IndexOf('/') + 1))
                {
                    SessionSet.PageMessage = "站段选择错误,请核对!";
                    return;
                }

                //objBll.DeleteEmployeeByOrgID(Convert.ToInt32(hfOrg.Value));

                Hashtable htOrg  = GetOrgHash(Convert.ToInt32(hfOrg.Value));
                Hashtable htPost = GetPostHash();

                DataColumn dc1 = ds.Tables[0].Columns.Add("OrgPath");
                DataColumn dc2 = ds.Tables[0].Columns.Add("PostPath");
                DataColumn dc3 = ds.Tables[0].Columns.Add("OrgID");
                DataColumn dc4 = ds.Tables[0].Columns.Add("PostID");
                DataColumn dc5 = ds.Tables[0].Columns.Add("IsGroup");
                DataColumn dc6 = ds.Tables[0].Columns.Add("TechID");
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    if (dr["班组"].ToString() != "")
                    {
                        dr["OrgPath"] = dr["站段名称"].ToString().Trim() + "-" + dr["车间"].ToString().Trim() + "-" + dr["班组"].ToString().Trim();
                    }
                    else
                    {
                        dr["OrgPath"] = dr["站段名称"].ToString().Trim() + "-" + dr["车间"].ToString().Trim();
                    }
                    dr["PostPath"] = dr["系统"].ToString().Trim() + "-" + dr["工种"].ToString().Trim() + "-" + dr["职名"].ToString().Trim();

                    //dr["OrgID"] = objOrgBll.GetOrgIDByOrgNamePath(dr["OrgPath"].ToString()).ToString();
                    //dr["PostID"] = objPostBll.GetPostIDByPostNamePath(dr["PostPath"].ToString()).ToString();

                    if (dr["是否班组长"].ToString() == "是")
                    {
                        dr["IsGroup"] = "1";
                    }
                    else
                    {
                        dr["IsGroup"] = "0";
                    }

                    if (dr["技能等级"].ToString() == "高级技师")
                    {
                        dr["TechID"] = "3";
                    }
                    else if (dr["技能等级"].ToString() == "技师")
                    {
                        dr["TechID"] = "2";
                    }
                    else
                    {
                        dr["TechID"] = "1";
                    }

                    if (!htOrg.ContainsKey(dr["OrgPath"].ToString()) || !htPost.ContainsKey(dr["PostPath"].ToString()) || dr["工作证号"].ToString() == "")
                    {
                        DataRow drnew = dt.NewRow();
                        drnew["ExcelNo"]      = dr["顺号"].ToString();
                        drnew["WorkNo"]       = dr["工作证号"].ToString();
                        drnew["EmployeeName"] = dr["姓名"].ToString();
                        drnew["Sex"]          = dr["性别"].ToString();
                        drnew["OrgPath"]      = dr["OrgPath"].ToString();
                        drnew["PostPath"]     = dr["PostPath"].ToString();
                        drnew["IsGroup"]      = dr["是否班组长"].ToString();
                        drnew["Tech"]         = dr["技能等级"].ToString();
                        dt.Rows.Add(drnew);
                    }
                    else
                    {
                        dr["OrgID"]  = htOrg[dr["OrgPath"].ToString()].ToString();
                        dr["PostID"] = htPost[dr["PostPath"].ToString()].ToString();
                        RailExam.Model.Employee obj = new RailExam.Model.Employee();
                        obj.EmployeeName     = dr["姓名"].ToString().Trim();
                        obj.OrgID            = Convert.ToInt32(dr["OrgID"].ToString());
                        obj.PostID           = Convert.ToInt32(dr["PostID"].ToString());
                        obj.Sex              = dr["性别"].ToString().Trim();
                        obj.WorkNo           = dr["工作证号"].ToString().Trim();
                        obj.IsGroupLeader    = Convert.ToInt32(dr["IsGroup"].ToString());
                        obj.TechnicianTypeID = Convert.ToInt32(dr["TechID"].ToString());
                        obj.PinYinCode       = Pub.GetChineseSpell(obj.EmployeeName);
                        obj.IsOnPost         = true;
                        objEmployeeList.Add(obj);
                    }
                }

                Grid1.DataSource = dt;
                Grid1.DataBind();

                lbltitle.Visible = true;
                Grid1.Visible    = true;
                btnExcel.Visible = false;

                objBll.AddEmployeeImport(objEmployeeList);
            }
            catch
            {
                SessionSet.PageMessage = "导入失败!";
                return;
            }
        }
コード例 #8
0
        protected void btnModify_Click(object sender, EventArgs e)
        {
            //不符合数据的数据源
            DataTable  dt     = new DataTable();
            DataColumn dcnew1 = dt.Columns.Add("ExcelNo");
            DataColumn dcnew2 = dt.Columns.Add("WorkNo");
            DataColumn dcnew3 = dt.Columns.Add("EmployeeName");
            DataColumn dcnew4 = dt.Columns.Add("Sex");
            DataColumn dcnew5 = dt.Columns.Add("OrgPath");
            DataColumn dcnew6 = dt.Columns.Add("PostPath");
            DataColumn dcnew7 = dt.Columns.Add("IsGroup");
            DataColumn dcnew8 = dt.Columns.Add("Tech");
            DataColumn dcnew9 = dt.Columns.Add("ErrorReason");

            Hashtable htOrg  = GetOrgHash(0);
            Hashtable htPost = GetPostHash();


            #region 读取Excel文件
            if (File1.FileName == "")
            {
                SessionSet.PageMessage = "请浏览选择Excel文件!";
                return;
            }
            string strFileName = Path.GetFileName(File1.PostedFile.FileName);
            string strPath     = Server.MapPath("/RailExamBao/Excel/" + strFileName);

            if (File.Exists(strPath))
            {
                File.Delete(strPath);
            }

            ((HttpPostedFile)File1.PostedFile).SaveAs(strPath);

            string strSql;

            string strODConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strPath + "; Extended Properties=Excel 8.0;";
            strSql = "select 序号,员工编码,工作证号,性别,姓名,单位,工作岗位,员工编码,是否离职 from [Sheet1$]";
            OleDbConnection ODcon = new OleDbConnection(strODConn);
            DataSet         ds    = new DataSet();
            try
            {
                ODcon.Open();
                OleDbCommand     OCom = new OleDbCommand(strSql, ODcon);
                OleDbDataAdapter ODA  = new OleDbDataAdapter(OCom);
                ODA.Fill(ds);
            }
            catch
            {
                SessionSet.PageMessage = "请核对Excel文件的格式!";
                return;
            }
            finally
            {
                ODcon.Close();
            }
            #endregion

            #region 检验数据合理性
            try
            {
                if (ds.Tables[0].Rows.Count == 0)
                {
                    SessionSet.PageMessage = "Excel中没有任何记录,请核对!";
                    return;
                }

                DataColumn dc1 = ds.Tables[0].Columns.Add("OrgID");
                DataColumn dc2 = ds.Tables[0].Columns.Add("PostID");
                DataColumn dc3 = ds.Tables[0].Columns.Add("Dimission");

                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    if (dr["是否离职"].ToString() == "是")
                    {
                        dr["Dimission"] = "1";
                    }
                    else
                    {
                        dr["Dimission"] = "0";
                    }

                    if (!htOrg.ContainsKey(dr["单位"].ToString()))
                    {
                        DataRow drnew = dt.NewRow();
                        drnew["ExcelNo"]      = dr["序号"].ToString();
                        drnew["WorkNo"]       = dr["员工编码"].ToString();
                        drnew["EmployeeName"] = dr["姓名"].ToString();
                        drnew["Sex"]          = dr["性别"].ToString();
                        drnew["OrgPath"]      = dr["单位"].ToString();
                        drnew["PostPath"]     = dr["工作岗位"].ToString();
                        drnew["IsGroup"]      = "";
                        drnew["Tech"]         = "";
                        drnew["ErrorReason"]  = "组织机构(单位)在系统中不存在";
                        dt.Rows.Add(drnew);
                    }

                    if (!htPost.ContainsKey(dr["工作岗位"].ToString()))
                    {
                        DataRow drnew = dt.NewRow();
                        drnew["ExcelNo"]      = dr["序号"].ToString();
                        drnew["WorkNo"]       = dr["员工编码"].ToString();
                        drnew["EmployeeName"] = dr["姓名"].ToString();
                        drnew["Sex"]          = dr["性别"].ToString();
                        drnew["OrgPath"]      = dr["单位"].ToString();
                        drnew["PostPath"]     = dr["工作岗位"].ToString();
                        drnew["IsGroup"]      = "";
                        drnew["Tech"]         = "";
                        drnew["ErrorReason"]  = "工作岗位在系统中不存在";
                        dt.Rows.Add(drnew);
                    }

                    if (dr["员工编码"].ToString() == "")
                    {
                        DataRow drnew = dt.NewRow();
                        drnew["ExcelNo"]      = dr["序号"].ToString();
                        drnew["WorkNo"]       = dr["员工编码"].ToString();
                        drnew["EmployeeName"] = dr["姓名"].ToString();
                        drnew["Sex"]          = dr["性别"].ToString();
                        drnew["OrgPath"]      = dr["单位"].ToString();
                        drnew["PostPath"]     = dr["工作岗位"].ToString();
                        drnew["IsGroup"]      = "";
                        drnew["Tech"]         = "";
                        drnew["ErrorReason"]  = "员工编码不能为空";
                        dt.Rows.Add(drnew);
                    }
                }
            }
            catch
            {
                SessionSet.PageMessage = "请检查单位和工作岗位是否设置正确!";
                return;
            }
            #endregion

            #region 检验Excel中员工编码
            string str    = "";
            string strLen = "";

            Hashtable htWorkNo = new Hashtable();

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                if (htWorkNo.ContainsKey(dr["员工编码"].ToString().Trim()))
                {
                    if (str == "")
                    {
                        str += dr["员工编码"].ToString();
                    }
                    else
                    {
                        str += "," + dr["员工编码"].ToString();
                    }

                    DataRow drnew = dt.NewRow();
                    drnew["ExcelNo"]      = dr["序号"].ToString();
                    drnew["WorkNo"]       = dr["员工编码"].ToString();
                    drnew["EmployeeName"] = dr["姓名"].ToString();
                    drnew["Sex"]          = dr["性别"].ToString();
                    drnew["OrgPath"]      = dr["单位"].ToString();
                    drnew["PostPath"]     = dr["工作岗位"].ToString();
                    drnew["IsGroup"]      = "";
                    drnew["Tech"]         = "";
                    drnew["ErrorReason"]  = "员工编码在Excel中重复";
                    dt.Rows.Add(drnew);
                }
                else
                {
                    if (dr["员工编码"].ToString() != "")
                    {
                        htWorkNo[dr["员工编码"].ToString()] = dr["员工编码"].ToString();
                    }
                }

                if (dr["员工编码"].ToString().Trim().Length > 10)
                {
                    if (strLen == "")
                    {
                        strLen += dr["员工编码"].ToString();
                    }
                    else
                    {
                        strLen += "," + dr["员工编码"].ToString();
                    }

                    DataRow drnew = dt.NewRow();
                    drnew["ExcelNo"]      = dr["序号"].ToString();
                    drnew["WorkNo"]       = dr["员工编码"].ToString();
                    drnew["EmployeeName"] = dr["姓名"].ToString();
                    drnew["Sex"]          = dr["性别"].ToString();
                    drnew["OrgPath"]      = dr["单位"].ToString();
                    drnew["PostPath"]     = dr["工作岗位"].ToString();
                    drnew["IsGroup"]      = "";
                    drnew["Tech"]         = "";
                    drnew["ErrorReason"]  = "员工编码不能大于10位";
                    dt.Rows.Add(drnew);
                }
            }

            #endregion

            #region 检验全局员工编码
            str = "";
            EmployeeBLL objBll = new EmployeeBLL();
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                if (dr["员工编码"].ToString().Trim() != null)
                {
                    int count = objBll.GetEmployeeByWorkNo(dr["员工编码"].ToString());
                    if (count > 0)
                    {
                        if (str == "")
                        {
                            str += dr["员工编码"].ToString();
                        }
                        else
                        {
                            str += "," + dr["员工编码"].ToString();
                        }

                        DataRow drnew = dt.NewRow();
                        drnew["ExcelNo"]      = dr["序号"].ToString();
                        drnew["WorkNo"]       = dr["员工编码"].ToString();
                        drnew["EmployeeName"] = dr["姓名"].ToString();
                        drnew["Sex"]          = dr["性别"].ToString();
                        drnew["OrgPath"]      = dr["单位"].ToString();
                        drnew["PostPath"]     = dr["工作岗位"].ToString();
                        drnew["IsGroup"]      = "";
                        drnew["Tech"]         = "";
                        drnew["ErrorReason"]  = "员工编码在系统中重复";
                        dt.Rows.Add(drnew);
                    }
                }
            }

            lbltitle.Text    = "不符合要求的数据!";
            lbltitle.Visible = true;
            Grid1.Visible    = true;

            //if (str != "")
            //{
            //    SessionSet.PageMessage = "有重复的工作证号:" + str;
            //    return;
            //}
            #endregion

            int n = 0;
            foreach (DataRow dr in dt.Rows)
            {
                if (dr["ExcelNo"].ToString() != "" || dr["WorkNo"].ToString() != "" || dr["OrgPath"].ToString() != "" || dr["PostPath"].ToString() != "")
                {
                    n = n + 1;
                }
            }

            if (n > 0)
            {
                Grid1.DataSource = dt;
                Grid1.DataBind();

                lbltitle.Text          = "不符合要求的数据";
                lbltitle.Visible       = true;
                Grid1.Visible          = true;
                SessionSet.PageMessage = "请核对Excel数据后,再重新导入!";
                return;
            }
            else
            {
                lbltitle.Text = "";
            }

            #region 导入数据
            //try
            //{
            IList <RailExam.Model.Employee> objEmployeeUpdateList = new List <RailExam.Model.Employee>();
            IList <RailExam.Model.Employee> objEmployeeAddList    = new List <RailExam.Model.Employee>();
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                if (dr["员工编码"].ToString() != "")
                {
                    dr["OrgID"]  = htOrg[dr["单位"].ToString().Trim()].ToString();
                    dr["PostID"] = htPost[dr["工作岗位"].ToString().Trim()].ToString();
                    RailExam.Model.Employee obj = new RailExam.Model.Employee();
                    obj.EmployeeID   = Convert.ToInt32(dr["员工编码"].ToString());
                    obj.EmployeeName = dr["姓名"].ToString().Trim();
                    obj.OrgID        = Convert.ToInt32(dr["OrgID"].ToString());
                    obj.PostID       = Convert.ToInt32(dr["PostID"].ToString());
                    obj.Sex          = dr["性别"].ToString().Trim();
                    obj.WorkNo       = dr["员工编码"].ToString().Trim();
                    obj.PostNo       = dr["工作证号"].ToString();
                    obj.PinYinCode   = Pub.GetChineseSpell(obj.EmployeeName);
                    if (dr["Dimission"].ToString() == "1")
                    {
                        obj.IsOnPost = false;
                    }
                    else
                    {
                        obj.IsOnPost = true;
                    }
                    objEmployeeUpdateList.Add(obj);
                }
                else
                {
                    dr["OrgID"]  = htOrg[dr["单位"].ToString().Trim()].ToString();
                    dr["PostID"] = htPost[dr["工作岗位"].ToString().Trim()].ToString();
                    RailExam.Model.Employee obj = new RailExam.Model.Employee();
                    obj.EmployeeName     = dr["姓名"].ToString().Trim();
                    obj.OrgID            = Convert.ToInt32(dr["OrgID"].ToString());
                    obj.PostID           = Convert.ToInt32(dr["PostID"].ToString());
                    obj.Sex              = dr["性别"].ToString().Trim();
                    obj.WorkNo           = dr["员工编码"].ToString().Trim();
                    obj.PostNo           = dr["工作证号"].ToString();
                    obj.PinYinCode       = Pub.GetChineseSpell(obj.EmployeeName);
                    obj.IsOnPost         = true;
                    obj.TechnicianTypeID = 1;
                    obj.IsGroupLeader    = 0;
                    objEmployeeAddList.Add(obj);
                }
            }
            objBll.UpdateEmployee(objEmployeeUpdateList, objEmployeeAddList);

            SessionSet.PageMessage = "导入成功!";
            dt.Clear();
            Grid1.DataSource = dt;
            Grid1.DataBind();
            //}
            //catch(Exception ex)
            //{
            //    SessionSet.PageMessage = "导入失败:" + ex.Message;
            //    return;
            //}
            #endregion
        }
コード例 #9
0
        private string GetExamOutString(string strId, string orgid)
        {
            ExamResultBLL examResultBLL = new ExamResultBLL();
            PaperBLL      kBLL          = new PaperBLL();

            RailExam.Model.ExamResult examResult = new RailExam.Model.ExamResult();
            if (ViewState["NowOrgID"].ToString() == orgid)
            {
                examResult = examResultBLL.GetExamResult(Convert.ToInt32(strId));
            }
            else
            {
                examResult = examResultBLL.GetExamResultByOrgID(Convert.ToInt32(strId), Convert.ToInt32(orgid));
            }
            RailExam.Model.Paper paper = null;
            EmployeeBLL          ebLL  = new EmployeeBLL();

            RailExam.Model.Employee Employee = ebLL.GetEmployee(examResult.ExamineeId);
            paper = kBLL.GetPaper(examResult.PaperId);

            PaperItemBLL paperItemBLL = new PaperItemBLL();
            IList <RailExam.Model.PaperItem> paperItems = paperItemBLL.GetItemsByPaperId(paper.PaperId);
            int nItemCount = paperItems.Count;

            decimal nTotalScore = 0;

            for (int i = 0; i < paperItems.Count; i++)
            {
                nTotalScore += paperItems[i].Score;
            }



            string strOrgName     = Employee.OrgName;
            string strStationName = "";
            string strOrgName1    = "";
            int    n = strOrgName.IndexOf("-");

            if (n != -1)
            {
                strStationName = strOrgName.Substring(0, n);
                strOrgName1    = strOrgName.Substring(n + 1);
            }
            else
            {
                strStationName = strOrgName;
                strOrgName1    = "";
            }

            string str = "<div style='text-align:center;font-size:18pt;'>" + PrjPub.GetRailName() + "考试试卷</div>";

            str += "<div style='text-align:left;font-size:10.5pt;'>考试名称:" + paper.PaperName + " </div>";
            str += "<div style='text-align:right;font-size:10.5pt;'>总共" + nItemCount + "题,共 " + nTotalScore + "分</div>";
            str += "<div style='text-align:center;'><table width='100%' border='1' cellpadding='0' cellspacing='0' >";
            str += "<tr><td  width='7%' style='font-size:10.5pt' >单位:</td>";
            str += "<td  width='26%' style='font-size:10.5pt' align='left' >" + strStationName + "</td>";
            str += "<td  width='7%' style='font-size:10.5pt' >车间:</td>";
            str += "<td  width='27%' style='font-size:10.5pt' align='left' >" + strOrgName1 + "</td>";
            str += "<td  width='7%' style='font-size:10.5pt' >职名:</td>";
            str += "<td  width='26%' style='font-size:10.5pt' align='left' >" + Employee.PostName + "</td></tr>";
            str += "<tr><td  width='7%' style='font-size:10.5pt' >姓名:</td>";
            str += "<td  width='26%' style='font-size:10.5pt' align='left' >" + Employee.EmployeeName + "</td>";
            str += "<td  width='7%' style='font-size:10.5pt' >时间:</td>";
            str += "<td  width='27%' style='font-size:10.5pt' align='left' >" + examResult.BeginDateTime.ToString("yyyy-MM-dd HH:mm") + "</td>";
            str += "<td  width='7%' style='font-size:10.5pt' >成绩:</td>";
            str += "<td  width='26%' style='font-size:10.5pt' align='left' >" + examResult.Score + "</td></tr></table></div>";
            str += "<br>";
            str += GetFillExamPaperString(strId, orgid);

            string strReplace;

            if (PrjPub.IsServerCenter)
            {
                strReplace = "http://" + ConfigurationManager.AppSettings["ServerIP"] + "/RailExamBao/";
            }
            else
            {
                strReplace = "http://" + ConfigurationManager.AppSettings["StationIP"] + "/RailExamBao/";
            }
            str = str.Replace("/RailExamBao/", strReplace);

            return(str);
        }