Exemplo n.º 1
0
        void client_GetPieEmployeeceInfoCompleted(object sender, GetPieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List <PieEmployeece> employeeceList = new List <PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        //婚姻状态
                        if (item.marriage == "" || item.marriage == null)
                        {
                            pieEmployeece.marriage = "离异";
                        }

                        else if (item.marriage == "1")
                        {
                            pieEmployeece.marriage = "已婚";
                        }

                        else if (item.marriage == "0")
                        {
                            pieEmployeece.marriage = "未婚";
                        }

                        //人数
                        pieEmployeece.CountEmployeece = item.CountEmployeece;
                        employeeceList.Add(pieEmployeece);
                    }

                    listPieEmployeece = employeeceList;

                    CreatePieChart();
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 2
0
        void client_GetPieEmployeeceInfoCompleted(object sender, GetPieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error!=null)
            {
                MessageBox.Show("错误信息:"+e.Error.ToString());
            }
            else
            {
                if (e.Result!=null )
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List<PieEmployeece> employeeceList = new List<PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        //婚姻状态
                        if (item.marriage =="" ||item.marriage==null)
                        {
                            pieEmployeece.marriage = "离异";
                        }

                        else if (item.marriage == "1")
                        {
                            pieEmployeece.marriage = "已婚";
                        }

                        else if (item.marriage == "0")
                        {
                            pieEmployeece.marriage = "未婚";
                        }
                        
                        //人数
                        pieEmployeece.CountEmployeece = item.CountEmployeece;
                        employeeceList.Add(pieEmployeece);
                    }

                    listPieEmployeece = employeeceList;

                    CreateCreatePieChart();
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 3
0
        void serviceClient_GetAllCompanyInfoCompleted(object sender, GetAllCompanyInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //得到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List <PieEmployeece> employeeceList = new List <PieEmployeece>();
                    foreach (var t in employeeInfo)
                    {
                        PieEmployeece employeece = new PieEmployeece();
                        //公司名字 中文名
                        employeece.CNAME = t.CNAME;
                        //人数
                        employeece.CountEmployeece = 0;
                        employeeceList.Add(employeece);
                    }

                    if (employeeceList.Count() > 0)
                    {
                        listPieEmployeece = employeeceList;
                        CreatePieChart();
                    }
                    else
                    {
                        MessageBox.Show("没有查询到数据!");
                    }
                }
            }
        }
Exemplo n.º 4
0
        void serviceClient_GetAllCompanyInfoCompleted(object sender, GetAllCompanyInfoCompletedEventArgs e)
        {
            if (e.Error!=null)
            {
                MessageBox.Show("错误信息:" +e.Error.ToString());
            }
            else
            {
                if (e.Result!=null)
                {
                    //得到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List<PieEmployeece> employeeceList = new List<PieEmployeece>();
                    foreach (var t in employeeInfo)
                    {
                        PieEmployeece employeece = new PieEmployeece();
                        //公司名字 中文名
                        employeece.CNAME = t.CNAME;
                        //人数
                        employeece.CountEmployeece = 0;
                        employeeceList.Add(employeece); 
                    }

                    if (employeeceList.Count() > 0)
                    {
                        listPieEmployeece = employeeceList;
                        CreatePieChart();
                    }
                    else
                    {
                        MessageBox.Show("没有查询到数据!");
                    }
                }
            }
        }
Exemplo n.º 5
0
        void serviceClient_GetEducationPieEmployeeceInfoCompleted(object sender, GetEducationPieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //得到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List<PieEmployeece> employeeceList = new List<PieEmployeece>();
                    // 0、1、2、3表示大专及以下
                    int CountEmployeece = employeeInfo.Where(T => (T.Education == "0" || T.Education == "1" || T.Education == "2" || T.Education == "3")).Count(); ;
                    
                    //分组查询
                    var employee = from p in employeeInfo
                                   orderby p.Education
                                   group p by p.Education into g
                                   select new PieEmployeece
                                   {
                                       Education = g.Key,
                                       CountEmployeece = g.Count()
                                   };
                    int employeece = 0;
                    //分解数据
                    foreach (var item in employee)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        // 0、1、2、3表示大专及以下/ 4:本科/5: 硕士/6: 博士
                        if (CountEmployeece > 0 && employeece==0)
                        {
                            pieEmployeece.Education = "大专及以下";
                            //人数
                            pieEmployeece.CountEmployeece = CountEmployeece;
                            employeece = 1;
                            employeeceList.Add(pieEmployeece);    
                        }
                        else if (item.Education == "4")
                        {
                            pieEmployeece.Education ="本科";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);    
                        }

                        else if (item.Education == "5")
                        {
                            pieEmployeece.Education = "硕士";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);   
                        }

                        else if (item.Education == "6")
                        {
                            pieEmployeece.Education = "博士";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);
                        }
                    }

                    if (employeeceList.Count()>0)
                    {
                        listPieEmployeece = employeeceList;
                        CreatePieChart();
                    }
                    else
                    {
                        MessageBox.Show("没有符合学历要求员工!");
                    }
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 6
0
        /// <summary>
        /// 人工婚姻报表Pie
        /// </summary>
        /// <param name="Companyid">公司ID</param>
        /// <param name="StartDate">开始时间</param>
        /// <param name="EndDate">结束时间</param>
        /// <param name="filterString">where</param>
        /// <param name="paras"></param>
        /// <param name="userID">员工ID</param>
        /// <returns></returns>
        public List <PieEmployeece> GetPieEmployeeceInfo(string Companyid, string style, string StartDate, string EndDate, string filterString, IList <object> paras, string userID)
        {
            try
            {
                #region 暂时删除(只查本公司)
                ////根据传递过来的Companyid查询公司表,得到是否有子公司
                //var CompanyInfo = from ent in dal.GetObjects<T_HR_COMPANY>()
                //                  where ent.FATHERID == Companyid
                //                  select new
                //                  {
                //                      COMPANYID = ent.COMPANYID,
                //                      //name = ent.CNAME
                //                  };
                //List<object> queryParas = new List<object>();
                //queryParas.AddRange(paras);
                //SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_EMPLOYEE");
                //IQueryable<T_HR_EMPLOYEE> ents = from o in dal.GetObjects()
                //                                 select o;
                //if (!string.IsNullOrEmpty(filterString))
                //{
                //    ents = ents.Where(filterString, queryParas.ToArray());
                //}
                //if (ents.Count()>0)
                //{
                //var q = from ent in ents
                //        join entry in dal.GetObjects<T_HR_EMPLOYEEENTRY>()
                //        on ent.EMPLOYEEID equals entry.T_HR_EMPLOYEE.EMPLOYEEID
                //        where ent.OWNERCOMPANYID == Companyid
                //        && ent.EMPLOYEESTATE != "2"
                //        && entry.ENTRYDATE >= StartDate
                //        && entry.ENTRYDATE <= EndDate
                //        group ent by ent.MARRIAGE into g
                //        select new PieEmployeece
                //        {
                //            marriage = g.Key,
                //            CountEmployeece = g.Count()
                //        };
                //if (q.Count() > 0)
                //{
                //    return q.ToList();
                //}
                //}
                #endregion
                List <object> queryParas = new List <object>();
                queryParas.AddRange(paras);
                SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_EMPLOYEE");
                IQueryable <T_HR_EMPLOYEE> ents = from o in dal.GetObjects()
                                                  select o;
                if (!string.IsNullOrEmpty(filterString))
                {
                    ents = ents.Where(filterString, queryParas.ToArray());
                }

                if (ents.Count() > 0)
                {
                    ReportsDAL           repDal = new ReportsDAL();
                    DataTable            dt     = repDal.GetDataEmployeecInfo(Companyid, style, StartDate, EndDate);
                    List <PieEmployeece> list   = new List <PieEmployeece>();
                    if (dt.Rows.Count > 0)
                    {
                        foreach (DataRow item in dt.Rows)
                        {
                            PieEmployeece pie = new PieEmployeece();
                            pie.EMPLOYEEID = item["EMPLOYEEID"].ToString();
                            pie.marriage   = item["MARRIAGE"].ToString();
                            pie.Name       = item["EMPLOYEECNAME"].ToString();
                            list.Add(pie);
                        }

                        if (list.Count() > 0)
                        {
                            var q = from entry in list
                                    join ent in ents
                                    on entry.EMPLOYEEID equals ent.EMPLOYEEID
                                    group entry by entry.marriage into g
                                    select new PieEmployeece
                            {
                                marriage        = g.Key,
                                CountEmployeece = g.Count()
                            };
                            return(q.ToList());
                        }
                    }
                }
                return(null);
            }
            catch (Exception ex)
            {
                SMT.Foundation.Log.Tracer.Debug(System.DateTime.Now.ToString() + "GetPieEmployeeceInfo:" + ex.Message);
                throw ex;
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// 集团各产业员工分配比例
        /// </summary>
        /// <param name="Companyid"></param>
        /// <param name="StartDate"></param>
        /// <param name="EndDate"></param>
        /// <param name="filterString"></param>
        /// <param name="paras"></param>
        /// <param name="userID"></param>
        /// <returns></returns>
        public List <PieEmployeece> GetAllCompanyInfo(string Companyid, string Style, string StartDate, string EndDate, string filterString, IList <object> paras, string userID)
        {
            try
            {
                #region 暂时删掉 只查本公司
                //List<object> queryParas = new List<object>();
                //queryParas.AddRange(paras);
                //SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_EMPLOYEE");
                //IQueryable<T_HR_EMPLOYEE> ents = from o in dal.GetObjects()
                //                                 select o;
                //if (!string.IsNullOrEmpty(filterString))
                //{
                //    ents = ents.Where(filterString, queryParas.ToArray());
                //}

                //if (ents.Count()>0)
                //{
                //    var q = from ent in dal.GetObjects()
                //            join entry in dal.GetObjects<T_HR_EMPLOYEEENTRY>()
                //            on ent.EMPLOYEEID equals entry.T_HR_EMPLOYEE.EMPLOYEEID
                //            join m in dal.GetObjects<T_HR_COMPANY>()
                //            on ent.OWNERCOMPANYID equals m.COMPANYID
                //            where ent.EMPLOYEESTATE != "2"
                //            && entry.ENTRYDATE >= StartDate
                //            && entry.ENTRYDATE <= EndDate
                //            group ent by ent.OWNERCOMPANYID into g
                //            select new PieEmployeece
                //            {
                //                OWNERCOMPANYID =g.Key,
                //                CountEmployeece=g.Count()
                //            };
                //}
                #endregion

                ReportsDAL           reportDal = new ReportsDAL();
                DataTable            dt        = reportDal.GetEmployeecByYearMM(Companyid, Style, StartDate, EndDate);
                List <PieEmployeece> list      = new List <PieEmployeece>();
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        PieEmployeece employee = new PieEmployeece();
                        //员工ID
                        employee.EMPLOYEEID = dr["EMPLOYEEID"].ToString();
                        //员工姓名
                        employee.Name = dr["Name"].ToString();

                        //公司ID
                        employee.OWNERCOMPANYID = dr["OWNERCOMPANYID"].ToString();
                        //公司英文名字
                        employee.ENAME = dr["ENAME"].ToString();
                        //公司中文名字
                        employee.CNAME = dr["CNAME"].ToString();
                        list.Add(employee);
                    }
                }

                if (list.Count() > 0)
                {
                    //聚合
                    var q = from t in list
                            group t by t.CNAME into g
                            select new PieEmployeece
                    {
                        //公司中文名字
                        CNAME = g.Key,
                        //人数
                        CountEmployeece = g.Count()
                    };
                    return(q.ToList());
                }
            }
            catch (Exception ex)
            {
                SMT.Foundation.Log.Tracer.Debug(System.DateTime.Now.ToString() + "GetAllCompanyInfo:" + ex.Message);
                throw ex;
            }
            return(null);
        }
Exemplo n.º 8
0
        /// <summary>
        /// 员工司龄对比Pie图
        /// </summary>
        /// <param name="Companyid"></param>
        /// <param name="StartDate"></param>
        /// <param name="EndDate"></param>
        /// <param name="filterString"></param>
        /// <param name="paras"></param>
        /// <param name="userID"></param>
        /// <returns></returns>
        public List <PieEmployeece> GetLengthServicePie(string Companyid, string Style, string StartDate, string EndDate, string filterString, IList <object> paras, string userID)
        {
            try
            {
                #region 暂时删除 只查本公司
                //List<object> queryParas = new List<object>();
                //queryParas.AddRange(paras);
                //SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_EMPLOYEE");
                //IQueryable<T_HR_EMPLOYEE> ents = from o in dal.GetObjects()
                //                                 select o;
                //if (!string.IsNullOrEmpty(filterString))
                //{
                //    ents = ents.Where(filterString, queryParas.ToArray());
                //}

                //if (ents.Count() > 0)
                //{
                //    var q = from ent in dal.GetObjects()
                //            join entry in dal.GetObjects<T_HR_EMPLOYEEENTRY>()
                //            on ent.EMPLOYEEID equals entry.T_HR_EMPLOYEE.EMPLOYEEID
                //            where ent.OWNERCOMPANYID == Companyid
                //            && ent.EMPLOYEESTATE != "2"
                //            && entry.ENTRYDATE >= StartDate
                //            && entry.ENTRYDATE <= EndDate
                //            orderby entry.ENTRYDATE
                //            select new PieEmployeece
                //            {
                //                ENTRYDATE = entry.ENTRYDATE,
                //                Name = ent.EMPLOYEECNAME,
                //                EMPLOYEEID = ent.EMPLOYEEID,
                //                //
                //                CountEmployeece = 0
                //            };
                //    if (q.Count() > 0)
                //    {
                //        return q.ToList();
                //    }
                //}
                #endregion
                ReportsDAL           repDal = new ReportsDAL();
                DataTable            dt     = repDal.GetDataEmployeecInfo(Companyid, Style, StartDate, EndDate);
                List <PieEmployeece> list   = new List <PieEmployeece>();

                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow item in dt.Rows)
                    {
                        PieEmployeece pie = new PieEmployeece();
                        if (!string.IsNullOrEmpty(item["ENTRYDATE"].ToString()))
                        {
                            //入职日期
                            pie.ENTRYDATE = DateTime.Parse(item["ENTRYDATE"].ToString());
                            pie.Name      = item["EMPLOYEECNAME"].ToString();
                            list.Add(pie);
                        }
                    }
                }
                if (list.Count > 0)
                {
                    //不聚合,到前面计算
                    var q = from ent in list
                            orderby ent.ENTRYDATE
                            select ent;
                    return(q.ToList());
                }
                return(null);
            }
            catch (Exception ex)
            {
                SMT.Foundation.Log.Tracer.Debug(System.DateTime.Now.ToString() + "GetLengthServicePie:" + ex.Message);
                throw ex;
            }
        }
Exemplo n.º 9
0
        void serviceClient_GetEducationPieEmployeeceInfoCompleted(object sender, GetEducationPieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //得到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List <PieEmployeece> employeeceList = new List <PieEmployeece>();
                    // 0、1、2、3表示大专及以下
                    int CountEmployeece = employeeInfo.Where(T => (T.Education == "0" || T.Education == "1" || T.Education == "2" || T.Education == "3")).Count();;

                    //分组查询
                    var employee = from p in employeeInfo
                                   orderby p.Education
                                   group p by p.Education into g
                                   select new PieEmployeece
                    {
                        Education       = g.Key,
                        CountEmployeece = g.Count()
                    };
                    int employeece = 0;
                    //分解数据
                    foreach (var item in employee)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        // 0、1、2、3表示大专及以下/ 4:本科/5: 硕士/6: 博士
                        if (CountEmployeece > 0 && employeece == 0)
                        {
                            pieEmployeece.Education = "大专及以下";
                            //人数
                            pieEmployeece.CountEmployeece = CountEmployeece;
                            employeece = 1;
                            employeeceList.Add(pieEmployeece);
                        }
                        else if (item.Education == "4")
                        {
                            pieEmployeece.Education = "本科";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);
                        }

                        else if (item.Education == "5")
                        {
                            pieEmployeece.Education = "硕士";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);
                        }

                        else if (item.Education == "6")
                        {
                            pieEmployeece.Education = "博士";
                            //人数
                            pieEmployeece.CountEmployeece = item.CountEmployeece;
                            employeeceList.Add(pieEmployeece);
                        }
                    }

                    if (employeeceList.Count() > 0)
                    {
                        listPieEmployeece = employeeceList;
                        CreatePieChart();
                    }
                    else
                    {
                        MessageBox.Show("没有符合学历要求员工!");
                    }
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 10
0
        void serviceClient_GetLengthServicePieCompleted(object sender, GetLengthServicePieCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List<PieEmployeece> employeeceList = new List<PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        int workAge = 0;
                        if (item.ENTRYDATE != null)
                        {
                            DateTime ENTRYDATE = DateTime.Parse(item.ENTRYDATE.ToString());
                            //得到公龄
                            workAge = GetWorkAge(ENTRYDATE);
                        }
                        pieEmployeece.Age = workAge.ToString();
                        //pieEmployeece.EMPLOYEEID = item.EMPLOYEEID;
                        pieEmployeece.Name = item.Name;
                        employeeceList.Add(pieEmployeece);
                    }

                    //1年及1年以内
                    int m1 = employeeceList.Where(t => int.Parse(t.Age) <= 1).Count();
                    //1~3年(含3年)
                    int m2 = employeeceList.Where(t => int.Parse(t.Age) >1 && int.Parse(t.Age) <=3).Count();
                    //3~5年(含5年)
                    int m3 = employeeceList.Where(t => int.Parse(t.Age) >3 && int.Parse(t.Age) <= 5).Count();
                    //5~8年(含8年)
                    int m4 = employeeceList.Where(t => int.Parse(t.Age) >5 && int.Parse(t.Age) <= 8).Count();
                    //8~10年(不含10年)
                    int m5 = employeeceList.Where(t => int.Parse(t.Age) >8 && int.Parse(t.Age) <10).Count();
                    //10年以上
                    int m6 = employeeceList.Where(t => int.Parse(t.Age) >=10).Count();
                    List<PieEmployeece> newEmployeeceList = new List<PieEmployeece>();
                    for (int i = 0; i < 6; i++)
                    {
                        PieEmployeece pie = new PieEmployeece();
                        switch (i)
                        {
                            case 0:
                                if (m1 != 0)
                                {
                                    pie.Name = "1年及1年以内";
                                    pie.CountEmployeece = m1;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 1:
                                if (m2 != 0)
                                {
                                    pie.Name = "1~3年(含3年)";
                                    pie.CountEmployeece = m2;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 2:
                                if (m3 != 0)
                                {
                                    pie.Name = "3~5年(含5年)";
                                    pie.CountEmployeece = m3;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 3:
                                if (m4 != 0)
                                {
                                    pie.Name = "5~8年(含8年)";
                                    pie.CountEmployeece = m4;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 4:
                                if (m5 != 0)
                                {
                                    pie.Name = "8~10年(不含10年)";
                                    pie.CountEmployeece = m5;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 5:
                                if (m5 != 0)
                                {
                                    pie.Name = "10年以上";
                                    pie.CountEmployeece = m5;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                        }
                    }

                    listPieEmployeece = newEmployeeceList;
                    CreatePieChart();
                }

                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(this.nuYear.Value.ToString() + "~" + this.EndnuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 11
0
        void serviceClient_GetLengthServicePieCompleted(object sender, GetLengthServicePieCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List <PieEmployeece> employeeceList = new List <PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        int           workAge       = 0;
                        if (item.ENTRYDATE != null)
                        {
                            DateTime ENTRYDATE = DateTime.Parse(item.ENTRYDATE.ToString());
                            //得到公龄
                            workAge = GetWorkAge(ENTRYDATE);
                        }
                        pieEmployeece.Age = workAge.ToString();
                        //pieEmployeece.EMPLOYEEID = item.EMPLOYEEID;
                        pieEmployeece.Name = item.Name;
                        employeeceList.Add(pieEmployeece);
                    }

                    //1年及1年以内
                    int m1 = employeeceList.Where(t => int.Parse(t.Age) <= 1).Count();
                    //1~3年(含3年)
                    int m2 = employeeceList.Where(t => int.Parse(t.Age) > 1 && int.Parse(t.Age) <= 3).Count();
                    //3~5年(含5年)
                    int m3 = employeeceList.Where(t => int.Parse(t.Age) > 3 && int.Parse(t.Age) <= 5).Count();
                    //5~8年(含8年)
                    int m4 = employeeceList.Where(t => int.Parse(t.Age) > 5 && int.Parse(t.Age) <= 8).Count();
                    //8~10年(不含10年)
                    int m5 = employeeceList.Where(t => int.Parse(t.Age) > 8 && int.Parse(t.Age) < 10).Count();
                    //10年以上
                    int m6 = employeeceList.Where(t => int.Parse(t.Age) >= 10).Count();
                    List <PieEmployeece> newEmployeeceList = new List <PieEmployeece>();
                    for (int i = 0; i < 6; i++)
                    {
                        PieEmployeece pie = new PieEmployeece();
                        switch (i)
                        {
                        case 0:
                            if (m1 != 0)
                            {
                                pie.Name            = "1年及1年以内";
                                pie.CountEmployeece = m1;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 1:
                            if (m2 != 0)
                            {
                                pie.Name            = "1~3年(含3年)";
                                pie.CountEmployeece = m2;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 2:
                            if (m3 != 0)
                            {
                                pie.Name            = "3~5年(含5年)";
                                pie.CountEmployeece = m3;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 3:
                            if (m4 != 0)
                            {
                                pie.Name            = "5~8年(含8年)";
                                pie.CountEmployeece = m4;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 4:
                            if (m5 != 0)
                            {
                                pie.Name            = "8~10年(不含10年)";
                                pie.CountEmployeece = m5;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 5:
                            if (m5 != 0)
                            {
                                pie.Name            = "10年以上";
                                pie.CountEmployeece = m5;
                                newEmployeeceList.Add(pie);
                            }
                            break;
                        }
                    }

                    listPieEmployeece = newEmployeeceList;
                    CreatePieChart();
                }

                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(this.nuYear.Value.ToString() + "~" + this.EndnuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 12
0
        void serviceClient_GetAgePieEmployeeceInfoCompleted(object sender, GetAgePieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List<PieEmployeece> employeeceList = new List<PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        int age = 0;
                        if (item.Birthday !=null)
                        {
                            DateTime Birthday = DateTime.Parse(item.Birthday.ToString());
                            //得到年龄
                            age = GetAge(Birthday);
                        }
                        pieEmployeece.Age = age.ToString();
                        //pieEmployeece.EMPLOYEEID = item.EMPLOYEEID;
                        pieEmployeece.Name = item.Name;
                        employeeceList.Add(pieEmployeece);
                    }

                    //25(Birthday=null不处理。25岁以下)
                    int m1 = employeeceList.Where(t=>int.Parse(t.Age) >0 && int.Parse(t.Age)<=25).Count();
                    //26
                    int m2 = employeeceList.Where(t => int.Parse(t.Age)>=26 && int.Parse(t.Age)<=35).Count();
                    //36
                    int m3 = employeeceList.Where(t => int.Parse(t.Age) >=36 && int.Parse(t.Age) <= 45).Count();
                    //46
                    int m4 = employeeceList.Where(t => int.Parse(t.Age) >=46 && int.Parse(t.Age) <= 55).Count();
                    //55
                    int m5 = employeeceList.Where(t => int.Parse(t.Age) >55).Count();

                    List<PieEmployeece> newEmployeeceList = new List<PieEmployeece>();
                    for (int i = 0; i <5; i++)
			        {
                        PieEmployeece pie = new PieEmployeece();
                        switch (i)
	                    {
		                    case 0:
                                if (m1!=0)
                                {
                                    pie.Name = "25岁以下";
                                    pie.CountEmployeece = m1;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 1:
                                if (m2!=0)
                                {
                                    pie.Name = "26~35岁";
                                    pie.CountEmployeece = m2;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 2:
                                if (m3!=0)
                                {
                                    pie.Name = "36~45岁";
                                    pie.CountEmployeece = m3;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 3:
                                if (m4!=0)
                                {
                                    pie.Name = "46~55岁";
                                    pie.CountEmployeece = m4;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
                            case 4:
                                if (m5!=0)
                                {
                                    pie.Name = "55岁以上";
                                    pie.CountEmployeece = m5;
                                    newEmployeeceList.Add(pie);
                                }
                                break;
	                    }
                    }
                    listPieEmployeece = newEmployeeceList;
                    CreatePieChart();
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }
Exemplo n.º 13
0
        void serviceClient_GetAgePieEmployeeceInfoCompleted(object sender, GetAgePieEmployeeceInfoCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                MessageBox.Show("错误信息:" + e.Error.ToString());
            }
            else
            {
                if (e.Result != null)
                {
                    //等到员工数据
                    var employeeInfo = from p in e.Result select p;

                    List <PieEmployeece> employeeceList = new List <PieEmployeece>();
                    foreach (var item in employeeInfo)
                    {
                        PieEmployeece pieEmployeece = new PieEmployeece();
                        int           age           = 0;
                        if (item.Birthday != null)
                        {
                            DateTime Birthday = DateTime.Parse(item.Birthday.ToString());
                            //得到年龄
                            age = GetAge(Birthday);
                        }
                        pieEmployeece.Age = age.ToString();
                        //pieEmployeece.EMPLOYEEID = item.EMPLOYEEID;
                        pieEmployeece.Name = item.Name;
                        employeeceList.Add(pieEmployeece);
                    }

                    //25(Birthday=null不处理。25岁以下)
                    int m1 = employeeceList.Where(t => int.Parse(t.Age) > 0 && int.Parse(t.Age) <= 25).Count();
                    //26
                    int m2 = employeeceList.Where(t => int.Parse(t.Age) >= 26 && int.Parse(t.Age) <= 35).Count();
                    //36
                    int m3 = employeeceList.Where(t => int.Parse(t.Age) >= 36 && int.Parse(t.Age) <= 45).Count();
                    //46
                    int m4 = employeeceList.Where(t => int.Parse(t.Age) >= 46 && int.Parse(t.Age) <= 55).Count();
                    //55
                    int m5 = employeeceList.Where(t => int.Parse(t.Age) > 55).Count();

                    List <PieEmployeece> newEmployeeceList = new List <PieEmployeece>();
                    for (int i = 0; i < 5; i++)
                    {
                        PieEmployeece pie = new PieEmployeece();
                        switch (i)
                        {
                        case 0:
                            if (m1 != 0)
                            {
                                pie.Name            = "25岁以下";
                                pie.CountEmployeece = m1;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 1:
                            if (m2 != 0)
                            {
                                pie.Name            = "26~35岁";
                                pie.CountEmployeece = m2;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 2:
                            if (m3 != 0)
                            {
                                pie.Name            = "36~45岁";
                                pie.CountEmployeece = m3;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 3:
                            if (m4 != 0)
                            {
                                pie.Name            = "46~55岁";
                                pie.CountEmployeece = m4;
                                newEmployeeceList.Add(pie);
                            }
                            break;

                        case 4:
                            if (m5 != 0)
                            {
                                pie.Name            = "55岁以上";
                                pie.CountEmployeece = m5;
                                newEmployeeceList.Add(pie);
                            }
                            break;
                        }
                    }
                    listPieEmployeece = newEmployeeceList;
                    CreatePieChart();
                }
                else
                {
                    if (StrCompanyIDs == "")
                    {
                        MessageBox.Show("请选择公司!");
                    }
                    else
                    {
                        MessageBox.Show(nuYear.Value.ToString() + "年没有查询到数据!");
                        listPieEmployeece = null;
                    }
                }
            }
        }