// GET: Packages/Create public ActionResult Create() { MasterPackageViewModel model = new MasterPackageViewModel(); ViewBag.Services = db.Services.ToList(); model.AvailableSubscriptionTypes = ListHelper.GetSubscriptionTypeList(); return(View(model)); }
public ActionResult Create(MasterPackageViewModel model, string[] selectedServices) { //ViewBag.CarTypeId = new SelectList(db.CarTypes, "Id", "Description", package.CarTypeId); //comment by circus ViewBag.Services = db.Services.ToList(); if (selectedServices != null) { ModelState.Remove("CreatedBy"); ModelState.Remove("CreateDt"); if (ModelState.IsValid) { Package package = new Package(); package.Package_Name = model.Package_Name; package.Package_Description = model.Package_Description; package.Package_Price = model.Package_Price; package.SubscriptionTypes = string.Join(",", model.SubscriptionTypes); if (string.IsNullOrEmpty(package.SubscriptionTypes)) { package.SubscriptionTypes = "1"; } package.CreatedBy = "Admin"; package.CreateDt = DateTime.Now; db.Packages.Add(package); // db.SaveChanges(); List <Package_Services> packageServices = new List <Package_Services>(); var packageService = new Package_Services(); foreach (var service in selectedServices) { packageService = new Package_Services { PackageID = package.PackageId, ServiceID = Convert.ToInt32(service) }; packageServices.Add(packageService); } db.Package_Services.AddRange(packageServices); db.SaveChanges(); AddNotification(Models.NotifyType.Success, "Records Successfully Saved.", true); return(RedirectToAction("Index")); } } else { ViewBag.Message = "Please select atleast one service"; return(View()); } model.AvailableSubscriptionTypes = ListHelper.GetSubscriptionTypeList(); return(View(model)); }
public ActionResult Edit(MasterPackageViewModel model, string[] selectedServices) { Package package = db.Packages.Find(model.PackageId); if (package == null) { return(HttpNotFound()); } if (ModelState.IsValid) { package.Package_Name = model.Package_Name; package.Package_Description = model.Package_Description; package.Package_Price = model.Package_Price; package.SubscriptionTypes = string.Join(",", model.SubscriptionTypes); if (string.IsNullOrEmpty(package.SubscriptionTypes)) { package.SubscriptionTypes = "1"; } //db.Entry(package).State = EntityState.Modified; //.CreateDt = DateTime.Now; db.SaveChanges(); var deleteList = db.Package_Services.Where(a => a.PackageID == model.PackageId).ToList(); db.Package_Services.RemoveRange(deleteList); var packageServices = new List <Package_Services>(); foreach (var service in selectedServices) { var packageService = new Package_Services { PackageID = package.PackageId, ServiceID = Convert.ToInt32(service) }; packageServices.Add(packageService); } db.Package_Services.AddRange(packageServices); db.SaveChanges(); // added by sachin 18 March 2016 AddNotification(Models.NotifyType.Success, "Records Successfully Updated.", true); return(RedirectToAction("Index")); } ViewBag.Services = db.Services.ToList(); ViewBag.CheckedServices = package.Package_Services.Select(a => a.Service).ToList(); model.AvailableSubscriptionTypes = ListHelper.GetSubscriptionTypeList(); return(View(package)); }
public JsonResult GetMasterPackage(string objectType, string parentId, string parentCode) { return(ExecuteFunctionRun(() => { ActionResult result = new ActionResult(); MasterPackageViewModel model = new MasterPackageViewModel() { ParentId = parentId, ObjectType = objectType, ParentCode = parentCode, StorageType = "1", IsImport = false, }; result.Extend = new { MasterPackage = model, BizServices = GetBizServices() }; result.Success = true; return Json(result, JsonRequestBehavior.AllowGet); })); }
// GET: Packages/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Package package = db.Packages.Find(id); MasterPackageViewModel model = new MasterPackageViewModel(); if (package == null) { return(HttpNotFound()); } model.PackageId = package.PackageId; model.Package_Name = package.Package_Name; model.Package_Description = package.Package_Description; model.Package_Price = package.Package_Price; if (!string.IsNullOrEmpty(package.SubscriptionTypes)) { model.SubscriptionTypes = package.SubscriptionTypes.Split(','); } else { model.SubscriptionTypes = new string[] { "1" } }; model.AvailableSubscriptionTypes = ListHelper.GetSubscriptionTypeList(); ViewBag.Services = db.Services.ToList(); ViewBag.CheckedServices = package.Package_Services.Select(a => a.Service).ToList(); return(View(model)); }
public JsonResult SaveMasterPackage(MasterPackageViewModel model) { return(ExecuteFunctionRun(() => { ActionResult result = new ActionResult(); if (string.IsNullOrWhiteSpace(model.Code)) { result.Success = false; result.Message = "EditBizObjectSchema.CodeNotNull"; return Json(result, JsonRequestBehavior.AllowGet); //this.ShowErrorMessage(this.PortalResource.GetString("BizOperation_CodeNotNull")); } H3.DataModel.BizObjectSchema schema = null; if (model.IsImport) { if (!string.IsNullOrEmpty(model.BizService)) { schema = this.FromDbTableAdapter(model.Code, model.BizService); schema.DisplayName = model.DisplayName ?? schema.SchemaCode; } } else { ////手工新建 //if (string.IsNullOrWhiteSpace(model.DisplayName)) //{ // result.Success = false; // result.Message = "EditBizObjectSchema.DisplayNameNotNull"; // return Json(result, JsonRequestBehavior.AllowGet); //} StorageType storageType = (StorageType)int.Parse(model.StorageType); schema = new DataModel.BizObjectSchema(storageType, model.Code.Trim(), storageType != StorageType.PureServiceBased); schema.DisplayName = model.DisplayName ?? schema.SchemaCode; } if (schema == null) { result.Success = false; result.Message = "msgGlobalString.CreateFailed"; return Json(result, JsonRequestBehavior.AllowGet); } //添加校验 if (schema.SchemaCode.Length > BizObjectSchema.MaxCodeLength) { result.Success = false; result.Message = "EditBizObjectSchema.Msg1"; result.Extend = BizObjectSchema.MaxCodeLength; return Json(result, JsonRequestBehavior.AllowGet); //this.ShowWarningMessage(this.PortalResource.GetString("BizObjectSchema_Mssg1") + BizObjectSchema.MaxCodeLength); } //校验编码规范 System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(BizObjectSchema.CodeRegex); if (!regex.IsMatch(schema.SchemaCode)) { result.Success = false; result.Message = "EditBizObjectSchemaProperty.Msg2"; return Json(result, JsonRequestBehavior.AllowGet); //this.ShowWarningMessage(this.PortalResource.GetString("BizObjectSchema_Mssg2")); } if (!this.Engine.BizObjectManager.AddDraftSchema(schema)) { //保存失败,可能是由于编码重复 result.Success = false; result.Message = "EditBizObjectSchema.Msg3"; return Json(result, JsonRequestBehavior.AllowGet); } else { // 添加成功,这里还是需要写入FuntionNode节点的,为了跟流程包里的数据模型节点区别 Acl.FunctionNode node = new Acl.FunctionNode (schema.SchemaCode, schema.DisplayName, "", "", FunctionNodeType.BizObject, model.ParentCode, 0 ); this.Engine.FunctionAclManager.AddFunctionNode(node); } result.Success = true; result.Message = "msgGlobalString.SaveSuccess"; result.Extend = model.ParentId; return Json(result, JsonRequestBehavior.AllowGet); })); }