Ejemplo n.º 1
0
        public ActionResult Edit(int id = 0)
        {
            using (var db = new XkSystem.Models.DbContext())
            {
                var vm = new Models.QualityItem.Edit();
                vm.QualityItemTypeList  = typeof(Code.EnumHelper.QualityItemType).ToItemList();
                vm.QualityItemGroupList = (from p in db.Table <Quality.Entity.tbQualityItemGroup>()
                                           where p.tbQuality.Id == vm.QualityId
                                           orderby p.No
                                           select new System.Web.Mvc.SelectListItem
                {
                    Text = p.QualityItemGroupName,
                    Value = p.Id.ToString(),
                }).Distinct().ToList();

                if (id != 0)
                {
                    var tb = (from p in db.Table <Quality.Entity.tbQualityItem>()
                              .Include(d => d.tbQualityItemGroup)
                              where p.Id == id
                              select new Dto.QualityItem.Edit
                    {
                        Id = p.Id,
                        No = p.No,
                        QualityItemName = p.QualityItemName,
                        IsVertical = p.IsVertical,
                        QualityItemType = p.QualityItemType,
                        QualityItemGroupId = p.tbQualityItemGroup.Id,
                    }).FirstOrDefault();

                    if (tb != null)
                    {
                        vm.QualityItemEdit = tb;
                    }
                }
                return(View(vm));
            }
        }
Ejemplo n.º 2
0
        public ActionResult Edit(Models.QualityItem.Edit vm)
        {
            using (var db = new XkSystem.Models.DbContext())
            {
                var error = new List <string>();
                if (Request.Form["txtIsVertical"] == "1")
                {
                    vm.QualityItemEdit.IsVertical = true;
                }
                else if (Request.Form["txtIsVertical"] == "0")
                {
                    vm.QualityItemEdit.IsVertical = false;
                }

                if (Request.Form["txtQualityItemTypeId"] != null)
                {
                    if (Request.Form["txtQualityItemTypeId"] == "0")
                    {
                        vm.QualityItemEdit.QualityItemType = Code.EnumHelper.QualityItemType.Radio;
                    }
                    else if (Request.Form["txtQualityItemTypeId"] == "1")
                    {
                        vm.QualityItemEdit.QualityItemType = Code.EnumHelper.QualityItemType.CheckBox;
                    }
                    else if (Request.Form["txtQualityItemTypeId"] == "2")
                    {
                        vm.QualityItemEdit.QualityItemType = Code.EnumHelper.QualityItemType.TextBox;
                    }
                }
                if (error.Count == decimal.Zero)
                {
                    var tb = new Quality.Entity.tbQualityItem();
                    if (vm.QualityItemEdit.Id == 0)
                    {
                        tb    = new Quality.Entity.tbQualityItem();
                        tb.No = vm.QualityItemEdit.No == null?db.Table <Quality.Entity.tbQualityItem>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.QualityItemEdit.No;

                        tb.QualityItemName    = vm.QualityItemEdit.QualityItemName;
                        tb.QualityItemType    = vm.QualityItemEdit.QualityItemType;
                        tb.IsVertical         = vm.QualityItemEdit.IsVertical;
                        tb.tbQualityItemGroup = db.Set <Quality.Entity.tbQualityItemGroup>().Find(vm.QualityItemEdit.QualityItemGroupId);
                        db.Set <Quality.Entity.tbQualityItem>().Add(tb);
                        if (db.SaveChanges() > 0)
                        {
                            XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加评价内容");
                        }
                    }
                    else
                    {
                        tb = (from p in db.Table <Quality.Entity.tbQualityItem>()
                              where p.Id == vm.QualityItemEdit.Id
                              select p).FirstOrDefault();
                        if (tb != null)
                        {
                            tb.No = vm.QualityItemEdit.No == null?db.Table <Quality.Entity.tbQualityItem>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.QualityItemEdit.No;

                            tb.tbQualityItemGroup = db.Set <Quality.Entity.tbQualityItemGroup>().Find(vm.QualityItemEdit.QualityItemGroupId);
                            tb.QualityItemName    = vm.QualityItemEdit.QualityItemName;
                            tb.QualityItemType    = vm.QualityItemEdit.QualityItemType;
                            tb.IsVertical         = vm.QualityItemEdit.IsVertical;
                            XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改评价内容");
                        }
                    }

                    using (TransactionScope scope = new TransactionScope())
                    {
                        if (Request["txtId"] != null)
                        {
                            //保存评价选项数据
                            new QualityOptionController().SaveQualityOption(db, tb, Request);
                        }
                        db.SaveChanges();
                        scope.Complete();
                    }
                }
                return(Code.MvcHelper.Post(error));
            }
        }