コード例 #1
0
        public ActionResult ProvidedDorm(int id)
        {
            var vm = new Models.DormApply.ProvidedDorm();

            using (var db = new XkSystem.Models.DbContext())
            {
                var dormStudentList = db.Table <Dorm.Entity.tbDormStudent>().ToList();
                var RoomList        = db.Table <Basis.Entity.tbRoom>().ToList();
                vm.BuildList = Areas.Basis.Controllers.BuildController.SelectList();
                vm.RoomList  = Basis.Controllers.RoomController.SelectList();
                foreach (var v in vm.RoomList)
                {
                    if (dormStudentList.Where(d => d.tbRoom.Id == v.Value.ConvertToInt()).Count()
                        >= RoomList.Where(d => d.Id == v.Value.ConvertToInt()).FirstOrDefault().MaxUser)
                    {
                        v.Text += "(满)";
                    }
                }

                vm.DormApplyProvidedDorm = (from p in db.Table <Dorm.Entity.tbDormApply>()
                                            where p.Id == id
                                            select new Dto.DormApply.ProvidedDorm()
                {
                    Id = p.Id,
                    DormId = p.tbDorm.Id,
                    StudentCode = p.tbStudent.StudentCode,
                    StudentName = p.tbStudent.StudentName
                }).FirstOrDefault();
            }

            return(View(vm));
        }
コード例 #2
0
        public ActionResult ProvidedDorm(Models.DormApply.ProvidedDorm vm)
        {
            var error = new List <string>();

            if (error.Count == decimal.Zero)
            {
                using (var db = new XkSystem.Models.DbContext())
                {
                    //判断是否宿舍超出住宿人数
                    var maxCount = db.Set <Basis.Entity.tbRoom>().Find(vm.DormApplyProvidedDorm.RoomId).MaxUser;
                    var nowNum   = db.Table <Dorm.Entity.tbDormStudent>().Where(d => d.tbRoom.Id == vm.DormApplyProvidedDorm.RoomId).Count();
                    if (nowNum >= maxCount)
                    {
                        error.Add("此宿舍已经住满!");
                        return(Code.MvcHelper.Post(error));
                    }

                    var tb = new Dorm.Entity.tbDormStudent()
                    {
                        tbDorm    = db.Set <Dorm.Entity.tbDorm>().Find(vm.DormApplyProvidedDorm.DormId),
                        tbRoom    = db.Set <Basis.Entity.tbRoom>().Find(vm.DormApplyProvidedDorm.RoomId),
                        tbStudent = db.Table <Student.Entity.tbStudent>().Where(d => d.StudentCode == vm.DormApplyProvidedDorm.StudentCode &&
                                                                                d.StudentName == vm.DormApplyProvidedDorm.StudentName).FirstOrDefault()
                    };
                    db.Set <Dorm.Entity.tbDormStudent>().Add(tb);

                    var dormApply = db.Set <Dorm.Entity.tbDormApply>().Find(vm.DormApplyProvidedDorm.Id);
                    dormApply.IsDeleted = true;

                    if (db.SaveChanges() > 0)
                    {
                        XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改/添加了住宿申请");
                    }
                }
            }

            return(Code.MvcHelper.Post(error));
        }