Ejemplo n.º 1
0
        public ActionResult Index()
        {
            List <Salary> list  = new List <Salary>();
            List <Staff>  staff = staffBLL.GetList();

            foreach (var item in staff)
            {
                list.Add(salaryBLL.GetList().Where(s => s.StaffNo == item.StaffNo).FirstOrDefault());
            }
            List <Job> jobs = jobBLL.GetList();

            for (int i = 0; i < list.Count(); i++)
            {
                List <Clock> clocks = clockBll.GetList().Where(s => s.StaffNO == list[i].StaffNo).ToList();
                list[i].PunishMoney = clocks.Where(s => s.HitSate.Contains("迟到") || s.HitSate.Contains("早退")).Count() * float.Parse(50.0.ToString()) + clocks.Where(s => s.HitSate.Contains("没有上班")).Count() * float.Parse(100.0.ToString()) + clocks.Where(s => s.HitSate.Contains("旷工")).Count() * float.Parse(300.0.ToString());
                list[i].AwardMoney  = 0;
                list[i].LeaveMoney  = 0;
                list[i].AllowMoney  = 0;
                list[i].TrueMoney   = list[i].JobMoney - list[i].PunishMoney + list[i].AwardMoney - list[i].LeaveMoney + list[i].AllowMoney;
            }
            if (Session["Job"].ToString().Contains("部长"))
            {
                string job = Session["Job"].ToString().Substring(0, 2);
                list = (from s in staffBLL.GetList()
                        join y in salaryBLL.GetList() on s.StaffNo equals y.StaffNo
                        where s.JobId.Contains(job)
                        select y).ToList();
            }
            else if (Session["Job"].ToString().Contains("组长"))
            {
                string job = Session["Job"].ToString().Substring(0, 2);
                list = (from s in staffBLL.GetList()
                        join y in salaryBLL.GetList() on s.StaffNo equals y.StaffNo
                        where s.JobId.Contains("组员") && s.JobId.Contains(job)
                        select y).ToList();
            }
            else if (Session["Job"].ToString().Contains("组员"))
            {
                list = list.Where(s => s.StaffNo == Session["StaffNo"].ToString()).ToList();
            }
            return(View(list));
        }