Пример #1
0
        /// <summary>
        /// 根据申诉记录ID获取V_COMPLAINRECORD类型数据
        /// </summary>
        /// <param name="CompainRecordID">申诉记录ID</param>
        /// <returns></returns>
        public V_COMPLAINRECORD GetVcomplainRecordByID(string CompainRecordID)
        {
            var ents = from a in dal.GetObjects <T_HR_KPIRECORD>()
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on a.APPRAISEEID equals b.EMPLOYEEID
                       join k in dal.GetObjects <T_HR_KPIRECORDCOMPLAIN>() on a.KPIRECORDID equals k.T_HR_KPIRECORD.KPIRECORDID
                       join d in dal.GetObjects <T_HR_KPIPOINT>() on a.T_HR_KPIPOINT.KPIPOINTID equals d.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       where k.COMPLAINID == CompainRecordID
                       select new V_COMPLAINRECORD
            {
                T_HR_KPIRECORDCOMPLAIN = k,
                T_HR_KPIRECORD         = a,
                FLOWID            = e.FLOWID,
                EMPLOYEECODE      = b.EMPLOYEECODE,
                EMPLOYEECNAME     = b.EMPLOYEECNAME,
                CREATEUSERID      = a.CREATEUSERID,
                OWNERID           = a.OWNERID,
                OWNERPOSTID       = a.OWNERPOSTID,
                OWNERDEPARTMENTID = a.OWNERDEPARTMENTID,
                OWNERCOMPANYID    = a.OWNERCOMPANYID
            };

            return(ents.Count() > 0 ? ents.FirstOrDefault() : null);
        }
Пример #2
0
        /////..............................................................

        #region  YJH  create time 2010-10-19
        /// <summary>
        /// 根据参数获取KPI明细记录的申诉记录
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="sort"></param>
        /// <param name="filterString"></param>
        /// <param name="paras"></param>
        /// <param name="pageCount"></param>
        /// <returns></returns>
        public IQueryable <V_COMPLAINRECORD> GetComplainRecordPaging(int pageIndex, int pageSize, string sort, string filterString, string[] paras, ref int pageCount, int sType, string sValue, string userID, string startDate, string endDate, string strCheckState)
        {
            List <object> queryParas = new List <object>();

            queryParas.AddRange(paras);

            if (strCheckState != Convert.ToInt32(CheckStates.WaittingApproval).ToString())
            {
                SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_KPIRECORDCOMPLAIN");

                if (!string.IsNullOrEmpty(strCheckState))
                {
                    if (!string.IsNullOrEmpty(filterString))
                    {
                        filterString += " and ";
                    }
                    filterString += "T_HR_KPIRECORDCOMPLAIN.CHECKSTATE == @" + queryParas.Count();
                    queryParas.Add(strCheckState);
                }
            }
            else
            {
                SetFilterWithflow("COMPLAINID", "T_HR_KPIRECORDCOMPLAIN", userID, ref strCheckState, ref filterString, ref queryParas);
                if (queryParas.Count() == paras.Count())
                {
                    return(null);
                }
            }

            var ents = from a in dal.GetObjects <T_HR_KPIRECORD>()
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on a.APPRAISEEID equals b.EMPLOYEEID
                       join k in dal.GetObjects <T_HR_KPIRECORDCOMPLAIN>() on a.KPIRECORDID equals k.T_HR_KPIRECORD.KPIRECORDID
                       join d in dal.GetObjects <T_HR_KPIPOINT>() on a.T_HR_KPIPOINT.KPIPOINTID equals d.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       select new V_COMPLAINRECORD
            {
                T_HR_KPIRECORDCOMPLAIN = k,
                T_HR_KPIRECORD         = a,
                FLOWID            = e.FLOWID,
                EMPLOYEECODE      = b.EMPLOYEECODE,
                EMPLOYEECNAME     = b.EMPLOYEECNAME,
                CREATEUSERID      = a.CREATEUSERID,
                OWNERID           = a.OWNERID,
                OWNERPOSTID       = a.OWNERPOSTID,
                OWNERDEPARTMENTID = a.OWNERDEPARTMENTID,
                OWNERCOMPANYID    = a.OWNERCOMPANYID
            };

            switch (sType)
            {
            case 0:
                ents = from k in dal.GetObjects <T_HR_KPIRECORDCOMPLAIN>()
                       join o in dal.GetObjects <T_HR_KPIRECORD>().Include("T_HR_KPIPOINT") on k.T_HR_KPIRECORD.KPIRECORDID equals o.KPIRECORDID
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       join d in dal.GetObjects <T_HR_DEPARTMENT>() on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID
                       join c in dal.GetObjects <T_HR_COMPANY>() on d.T_HR_COMPANY.COMPANYID equals c.COMPANYID
                       //join f in dal.GetObjects<T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       //from e in TEMPKPI.DefaultIfEmpty()
                       where c.COMPANYID == sValue
                       select new V_COMPLAINRECORD
                {
                    T_HR_KPIRECORDCOMPLAIN = k,
                    T_HR_KPIRECORD         = o,
                    FLOWID            = o.T_HR_KPIPOINT.FLOWID,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;

            case 1:
                ents = from k in dal.GetObjects <T_HR_KPIRECORDCOMPLAIN>()
                       join o in dal.GetObjects <T_HR_KPIRECORD>().Include("T_HR_KPIPOINT") on k.T_HR_KPIRECORD.KPIRECORDID equals o.KPIRECORDID
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       join d in dal.GetObjects <T_HR_DEPARTMENT>() on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID

                       //join f in dal.GetObjects<T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       //from e in TEMPKPI.DefaultIfEmpty()
                       where d.DEPARTMENTID == sValue
                       select new V_COMPLAINRECORD
                {
                    T_HR_KPIRECORDCOMPLAIN = k,
                    T_HR_KPIRECORD         = o,
                    FLOWID            = o.T_HR_KPIPOINT.FLOWID,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;

            case 2:
                ents = from k in dal.GetObjects <T_HR_KPIRECORDCOMPLAIN>()
                       join o in dal.GetObjects <T_HR_KPIRECORD>().Include("T_HR_KPIPOINT") on k.T_HR_KPIRECORD.KPIRECORDID equals o.KPIRECORDID
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       //join f in dal.GetObjects<T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       //from e in TEMPKPI.DefaultIfEmpty()
                       where p.POSTID == sValue
                       select new V_COMPLAINRECORD
                {
                    T_HR_KPIRECORDCOMPLAIN = k,
                    T_HR_KPIRECORD         = o,
                    FLOWID            = o.T_HR_KPIPOINT.FLOWID,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;
            }

            if (!string.IsNullOrEmpty(startDate))
            {
                DateTime sTime = Convert.ToDateTime(startDate);
                ents = ents.Where(s => s.T_HR_KPIRECORD.UPDATEDATE >= sTime);
            }
            if (!string.IsNullOrEmpty(endDate))
            {
                DateTime eTime = Convert.ToDateTime(endDate).AddDays(1);
                ents = ents.Where(s => s.T_HR_KPIRECORD.UPDATEDATE <= eTime);
            }

            //if (!string.IsNullOrEmpty(strCheckState))
            //{
            //    if (!string.IsNullOrEmpty(filterString))
            //    {
            //        filterString += " AND";
            //    }
            //    filterString += " T_HR_KPIRECORDCOMPLAIN.CHECKSTATE == @" + queryParas.Count();
            //    queryParas.Add(strCheckState);
            //}

            if (!string.IsNullOrEmpty(filterString))
            {
                ents = ents.Where(filterString, queryParas.ToArray());
            }
            ents = ents.OrderBy(sort);

            ents = Utility.Pager <V_COMPLAINRECORD>(ents, pageIndex, pageSize, ref pageCount);

            return(ents);
        }
Пример #3
0
        // 1e
        // 1s
        //public IQueryable<T_HR_KPIRECORD> GetKPIRecordPaging(int pageIndex, int pageSize, string sort, string filterString, string[] paras, ref int pageCount, string sType, string sValue, string userID)
        //{
        //    List<object> queryParas = new List<object>();
        //    queryParas.AddRange(paras);

        //    //SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_KPIRECORD");
        //    //员工入职审核通过再显示。

        //    ///TOADD:员工编辑状态为生效  EDITSTATE==Convert.ToInt32(EditStates.Actived).ToString();
        //    ///

        //    IQueryable<T_HR_KPIRECORD> ents = DataContext.T_HR_KPIRECORD.Include("T_HR_KPIPOINT");
        //    switch (sType)
        //    {
        //        case "Company":
        //            ents = from o in DataContext.T_HR_KPIRECORD.Include("T_HR_KPIPOINT")
        //                   join ep in DataContext.T_HR_EMPLOYEEPOST on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
        //                   join p in DataContext.T_HR_POST on ep.T_HR_POST.POSTID equals p.POSTID
        //                   join d in DataContext.T_HR_DEPARTMENT on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID
        //                   join c in DataContext.T_HR_COMPANY on d.T_HR_COMPANY.COMPANYID equals c.COMPANYID
        //                   where c.COMPANYID == sValue
        //                   select o;
        //            break;
        //        case "Department":
        //            ents = from o in DataContext.T_HR_KPIRECORD.Include("T_HR_KPIPOINT")
        //                   join ep in DataContext.T_HR_EMPLOYEEPOST on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
        //                   join p in DataContext.T_HR_POST on ep.T_HR_POST.POSTID equals p.POSTID
        //                   join d in DataContext.T_HR_DEPARTMENT on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID
        //                   where d.DEPARTMENTID == sValue
        //                   select o;
        //            break;
        //        case "Post":
        //            ents = from o in DataContext.T_HR_KPIRECORD.Include("T_HR_KPIPOINT")
        //                   join ep in DataContext.T_HR_EMPLOYEEPOST on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
        //                   join p in DataContext.T_HR_POST on ep.T_HR_POST.POSTID equals p.POSTID
        //                   where p.POSTID == sValue
        //                   select o;
        //            break;
        //    }
        //    if (!string.IsNullOrEmpty(filterString))
        //    {
        //        ents = ents.Where(filterString, queryParas.ToArray());
        //    }
        //    ents = ents.OrderBy(sort);

        //    ents = Utility.Pager<T_HR_KPIRECORD>(ents, pageIndex, pageSize, ref pageCount);
        //    return ents;
        //}
        /// <summary>
        /// 根据参数获取KPI明细记录
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="sort"></param>
        /// <param name="filterString"></param>
        /// <param name="paras"></param>
        /// <param name="pageCount"></param>
        /// <returns></returns>
        public IQueryable <V_KPIRECORD> GetKPIRecordPaging(int pageIndex, int pageSize, string sort, string filterString, string[] paras, ref int pageCount, string sType, string sValue, string userID, string startDate, string endDate, string strCheckState)
        {
            List <object> queryParas = new List <object>();

            queryParas.AddRange(paras);

            SetOrganizationFilter(ref filterString, ref queryParas, userID, "T_HR_KPIRECORD");
            //员工入职审核通过再显示。

            ///TOADD:员工编辑状态为生效  EDITSTATE==Convert.ToInt32(EditStates.Actived).ToString();
            ///


            var ents = from a in dal.GetObjects <T_HR_KPIRECORD>()
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on a.APPRAISEEID equals b.EMPLOYEEID
                       join d in dal.GetObjects <T_HR_KPIPOINT>() on a.T_HR_KPIPOINT.KPIPOINTID equals d.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       select new V_KPIRECORD
            {
                T_HR_KPIRECORD    = a,
                EMPLOYEECODE      = b.EMPLOYEECODE,
                EMPLOYEECNAME     = b.EMPLOYEECNAME,
                KPIPOINTREMARK    = a.KPIDESCRIPTION,
                FLOWID            = a.FLOWDESCRIPTION,
                CREATEUSERID      = a.CREATEUSERID,
                OWNERID           = a.OWNERID,
                OWNERPOSTID       = a.OWNERPOSTID,
                OWNERDEPARTMENTID = a.OWNERDEPARTMENTID,
                OWNERCOMPANYID    = a.OWNERCOMPANYID
            };

            switch (sType)
            {
            case "Company":
                ents = from o in dal.GetObjects <T_HR_KPIRECORD>()
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       join d in dal.GetObjects <T_HR_DEPARTMENT>() on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID
                       join c in dal.GetObjects <T_HR_COMPANY>() on d.T_HR_COMPANY.COMPANYID equals c.COMPANYID
                       join f in dal.GetObjects <T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       where c.COMPANYID == sValue && ep.ISAGENCY == "0" && ep.EDITSTATE == "1"
                       select new V_KPIRECORD
                {
                    T_HR_KPIRECORD    = o,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    KPIPOINTREMARK    = o.KPIDESCRIPTION,
                    FLOWID            = o.FLOWDESCRIPTION,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;

            case "Department":
                ents = from o in dal.GetObjects <T_HR_KPIRECORD>().Include("T_HR_KPIPOINT")
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       join d in dal.GetObjects <T_HR_DEPARTMENT>() on p.T_HR_DEPARTMENT.DEPARTMENTID equals d.DEPARTMENTID
                       join f in dal.GetObjects <T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       where d.DEPARTMENTID == sValue && ep.ISAGENCY == "0" && ep.EDITSTATE == "1"
                       select new V_KPIRECORD
                {
                    T_HR_KPIRECORD    = o,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    KPIPOINTREMARK    = o.KPIDESCRIPTION,
                    FLOWID            = o.FLOWDESCRIPTION,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;

            case "Post":
                ents = from o in dal.GetObjects <T_HR_KPIRECORD>().Include("T_HR_KPIPOINT")
                       join b in dal.GetObjects <T_HR_EMPLOYEE>() on o.APPRAISEEID equals b.EMPLOYEEID
                       join ep in dal.GetObjects <T_HR_EMPLOYEEPOST>() on o.APPRAISEEID equals ep.T_HR_EMPLOYEE.EMPLOYEEID
                       join p in dal.GetObjects <T_HR_POST>() on ep.T_HR_POST.POSTID equals p.POSTID
                       join f in dal.GetObjects <T_HR_KPIPOINT>() on o.T_HR_KPIPOINT.KPIPOINTID equals f.KPIPOINTID into TEMPKPI
                       from e in TEMPKPI.DefaultIfEmpty()
                       where p.POSTID == sValue && ep.ISAGENCY == "0" && ep.EDITSTATE == "1"
                       select new V_KPIRECORD
                {
                    T_HR_KPIRECORD    = o,
                    EMPLOYEECODE      = b.EMPLOYEECODE,
                    EMPLOYEECNAME     = b.EMPLOYEECNAME,
                    KPIPOINTREMARK    = o.KPIDESCRIPTION,
                    FLOWID            = o.FLOWDESCRIPTION,
                    CREATEUSERID      = o.CREATEUSERID,
                    OWNERID           = o.OWNERID,
                    OWNERPOSTID       = o.OWNERPOSTID,
                    OWNERDEPARTMENTID = o.OWNERDEPARTMENTID,
                    OWNERCOMPANYID    = o.OWNERCOMPANYID
                };
                break;
            }

            if (!string.IsNullOrEmpty(startDate))
            {
                DateTime sTime = Convert.ToDateTime(startDate);
                ents = ents.Where(s => s.T_HR_KPIRECORD.UPDATEDATE >= sTime);
            }
            if (!string.IsNullOrEmpty(endDate))
            {
                DateTime eTime = Convert.ToDateTime(endDate).AddDays(1);
                ents = ents.Where(s => s.T_HR_KPIRECORD.UPDATEDATE <= eTime);
            }

            if (!string.IsNullOrEmpty(strCheckState))
            {
                if (!string.IsNullOrEmpty(filterString))
                {
                    filterString += " AND";
                }

                filterString += " T_HR_KPIRECORD.COMPLAINSTATUS == @" + queryParas.Count();
                queryParas.Add(strCheckState);
            }

            if (!string.IsNullOrEmpty(filterString))
            {
                ents = ents.Where(filterString, queryParas.ToArray());
            }
            ents = ents.OrderBy(sort);

            ents = Utility.Pager <V_KPIRECORD>(ents, pageIndex, pageSize, ref pageCount);

            return(ents);
        }