예제 #1
0
        public List <V_RETURNFBI> GenerateCompanyRecord(string companyID, string year, string month)
        {
            List <V_RETURNFBI>     lvr     = new List <V_RETURNFBI>();
            DepartmentBLL          bll     = new DepartmentBLL();
            List <T_HR_DEPARTMENT> emplist = bll.GetDepartmentByCompanyId(companyID);
            var ents = from a in dal.GetObjects <T_HR_COMPANY>()
                       where a.COMPANYID == companyID
                       select a;

            foreach (var emp in emplist)
            {
                V_RETURNFBI     vr  = new V_RETURNFBI();
                T_HR_DEPARTMENT dep = new T_HR_DEPARTMENT();
                dep               = bll.GetDepartmentById(emp.DEPARTMENTID);
                vr.COMPANYID      = companyID;
                vr.COMPANYNAME    = ents.FirstOrDefault().CNAME;
                vr.DEPARTMENTID   = emp.DEPARTMENTID;
                vr.DEPARTMENTNAME = dep.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME;
                vr.SALARYSUM      = GenerateDepartmentRecord(emp.DEPARTMENTID, year, month);
                lvr.Add(vr);
            }
            return(lvr);
        }
예제 #2
0
        public List <V_RETURNFBI> CustomGuerdonRecord(int objectType, string objectID, int year, int month, bool markType)
        {
            var ents1 = from c in dal.GetObjects <T_HR_DEPARTMENT>().Include("T_HR_DEPARTMENTDICTIONARY").Include("T_HR_COMPANY")
                        where c.DEPARTMENTID == objectID
                        select new
            {
                COMPANYID      = c.T_HR_COMPANY.COMPANYID,
                COMPANYNAME    = c.T_HR_COMPANY.CNAME,
                DEPARTMENTID   = c.DEPARTMENTID,
                DEPARTMENTNAME = c.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME
            };
            var ents2 = from b in dal.GetObjects <T_HR_POST>().Include("T_HR_DEPARTMENT").Include("T_HR_DEPARTMENTDICTIONARY").Include("T_HR_COMPANY")
                        where b.POSTID == objectID
                        select new
            {
                COMPANYID      = b.T_HR_DEPARTMENT.T_HR_COMPANY.COMPANYID,
                COMPANYNAME    = b.T_HR_DEPARTMENT.T_HR_COMPANY.CNAME,
                DEPARTMENTID   = b.T_HR_DEPARTMENT.DEPARTMENTID,
                DEPARTMENTNAME = b.T_HR_DEPARTMENT.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME
            };
            var ents3 = from a in dal.GetObjects <T_HR_EMPLOYEEPOST>().Include("T_HR_POST").Include("T_HR_DEPARTMENT").Include("T_HR_DEPARTMENTDICTIONARY").Include("T_HR_COMPANY")
                        where a.T_HR_EMPLOYEE.EMPLOYEEID == objectID
                        select new
            {
                COMPANYID      = a.T_HR_POST.T_HR_DEPARTMENT.T_HR_COMPANY.COMPANYID,
                COMPANYNAME    = a.T_HR_POST.T_HR_DEPARTMENT.T_HR_COMPANY.CNAME,
                DEPARTMENTID   = a.T_HR_POST.T_HR_DEPARTMENT.DEPARTMENTID,
                DEPARTMENTNAME = a.T_HR_POST.T_HR_DEPARTMENT.T_HR_DEPARTMENTDICTIONARY.DEPARTMENTNAME
            };

            List <V_RETURNFBI> vfb = new List <V_RETURNFBI>();

            if (!markType)
            {
                IsComputer = true;
                switch (objectType)
                {
                case 0:
                    GenerateCompanyRecord(objectID, year.ToString(), month.ToString());
                    break;

                case 1:
                    GenerateDepartmentRecord(objectID, year.ToString(), month.ToString());
                    break;

                case 2:
                    GeneratePostRecord(objectID, year.ToString(), month.ToString());
                    break;

                case 3:
                    GenerateEmployeeRecord(objectID, year.ToString(), month.ToString());
                    break;
                }
            }
            else
            {
                switch (objectType)
                {
                case 0:
                    vfb = GenerateCompanyRecord(objectID, year.ToString(), month.ToString());
                    break;

                case 1:
                    if (ents1.Count() > 0)
                    {
                        V_RETURNFBI vr1 = new V_RETURNFBI();
                        var         en  = ents1.FirstOrDefault();
                        vr1.COMPANYID      = en.COMPANYID;
                        vr1.COMPANYNAME    = en.COMPANYNAME;
                        vr1.DEPARTMENTID   = en.DEPARTMENTID;
                        vr1.DEPARTMENTNAME = en.DEPARTMENTNAME;
                        vr1.SALARYSUM      = GenerateDepartmentRecord(objectID, year.ToString(), month.ToString());
                        vfb.Add(vr1);
                    }
                    break;

                case 2:
                    if (ents2.Count() > 0)
                    {
                        V_RETURNFBI vr2 = new V_RETURNFBI();
                        var         en  = ents2.FirstOrDefault();
                        vr2.COMPANYID      = en.COMPANYID;
                        vr2.COMPANYNAME    = en.COMPANYNAME;
                        vr2.DEPARTMENTID   = en.DEPARTMENTID;
                        vr2.DEPARTMENTNAME = en.DEPARTMENTNAME;
                        vr2.SALARYSUM      = GeneratePostRecord(objectID, year.ToString(), month.ToString());
                        vfb.Add(vr2);
                    }
                    break;

                case 3:
                    if (ents3.Count() > 0)
                    {
                        V_RETURNFBI vr3 = new V_RETURNFBI();
                        var         en  = ents3.FirstOrDefault();
                        vr3.COMPANYID      = en.COMPANYID;
                        vr3.COMPANYNAME    = en.COMPANYNAME;
                        vr3.DEPARTMENTID   = en.DEPARTMENTID;
                        vr3.DEPARTMENTNAME = en.DEPARTMENTNAME;
                        vr3.SALARYSUM      = GenerateEmployeeRecord(objectID, year.ToString(), month.ToString());
                        vfb.Add(vr3);
                    }
                    break;
                }
            }

            return(vfb);
        }