public async Task <IActionResult> Edit(int id, [Bind("Id,End,MembershipFeeFoeignKey,Start,Type")] PrivilegeModel privilegeModel) { if (id != privilegeModel.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(privilegeModel); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PrivilegeModelExists(privilegeModel.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } ViewData["MembershipFeeFoeignKey"] = new SelectList(_context.MembershipFees, "Id", "Id", privilegeModel.MembershipFeeFoeignKey); return(View(privilegeModel)); }
public ActionResult CreateOrEditPrivilege() { PrivilegeResponse _response = new PrivilegeResponse(); if (Request.QueryString["id"] != null) { var request = new PrivilegeRequest { Data = new PrivilegeModel { Id = long.Parse(Request.QueryString["id"].ToString()) } }; PrivilegeResponse resp = new PrivilegeHandler(_unitOfWork).GetDetail(request); PrivilegeModel _model = resp.Entity; ViewBag.Response = _response; ViewBag.Menu = BindDropDownMenu(); ViewBag.ActionType = ClinicEnums.Action.Edit; return(View(_model)); } else { ViewBag.Response = _response; ViewBag.Menu = BindDropDownMenu(); ViewBag.ActionType = ClinicEnums.Action.Add; return(View()); } }
public void VisitPrivilege(PrivilegeModel item) { if (this._filter(item)) { _items.Add(item); } }
public IActionResult Index(PrivilegeModel model, bool isAutoComplete = false) { if (IsRequestJson) { if (!isAutoComplete) { FilterContainer <Privilege> filter = FilterContainerBuilder.Build <Privilege>(); filter.And(n => n.OrganizationId == CurrentUser.OrganizationId); if (model.IsEnable.HasValue) { filter.And(n => n.AuthorizationEnabled == model.IsEnable.Value); } if (model.IsShowAsMenu.HasValue) { filter.And(n => n.IsVisibled == model.IsShowAsMenu.Value); } var result = _privilegeTreeBuilder.Build(x => x .Where(filter) .Sort(s => s.SortAscending(ss => ss.DisplayOrder)) ); return(JOk(result)); } else { FilterContainer <Privilege> filter = FilterContainerBuilder.Build <Privilege>(); filter.And(n => n.OrganizationId == CurrentUser.OrganizationId); if (model.MethodName.IsNotEmpty()) { filter.And(n => n.MethodName.Like(model.MethodName)); } if (model.DisplayName.IsNotEmpty()) { filter.And(n => n.DisplayName.Like(model.DisplayName)); } if (model.GetAll) { var result = _privilegeService.Query(x => x .Where(filter) .Sort(n => n.OnFile(model.SortBy).ByDirection(model.SortDirection)) ); model.Items = result; model.TotalItems = result.Count; } else { PagedList <Privilege> result = _privilegeService.QueryPaged(x => x .Page(model.Page, model.PageSize) .Where(filter) .Sort(n => n.OnFile(model.SortBy).ByDirection(model.SortDirection)) ); model.Items = result.Items; model.TotalItems = result.TotalItems; } return(JOk(model)); } } return(View("~/Views/Security/Privileges.cshtml")); }
public IActionResult SelectActionsDialog(PrivilegeModel model, DialogModel dm) { ViewData["DialogModel"] = dm; var result = AssemblyService.GetAllActionByAssembly(); if (model.ClassName.IsNotEmpty()) { result = result.Where(n => n.ClassName.IndexOf(model.ClassName, StringComparison.OrdinalIgnoreCase) >= 0).ToList(); } model.Items = result.Skip((model.Page - 1) * model.PageSize).Take(model.PageSize).ToList(); model.TotalItems = result.Count; return(View(model)); }
public JsonResult index() { string mrId = Request.Params["mrId"]; string depth = Request.Params["depth"]; switch (depth) { case "1": //模块 return(Json(new { success = true, data = PrivilegeModel.getListByModule(mrId) }, JsonRequestBehavior.AllowGet)); case "2": //功能 return(Json(new { success = true, data = PrivilegeModel.getListByResource(mrId) }, JsonRequestBehavior.AllowGet)); default: return(Json(new { success = true, data = PrivilegeModel.getList() }, JsonRequestBehavior.AllowGet)); } }
private GrantModel CreateGrant(IToken token, string key, string objectSchema, string objectName, HashSet <string> privileges, string role, string columnObjectName, bool withHierarchy, bool withGrant, bool withDelegate, bool withAdmin, bool withDirectory, bool withUser, bool withEdition, bool withMiningModel, bool withJavaSource, bool JavaResource, bool withSqlTranslationProfile) { GrantModel grant; grant = new GrantModel() { Key = key, Role = role, ObjectSchema = objectSchema, ObjectName = objectName, ColumnObjectName = columnObjectName, Grantable = withGrant, Hierarchy = withHierarchy, }; var fileElement = AppendFile(grant, token); Append(grant); foreach (var privilege in privileges) { PrivilegeModel _privilege; if (!grant.Privileges.TryGet(privilege, out _privilege)) { _privilege = new PrivilegeModel() { Name = privilege }; AppendFile(_privilege, token); grant.Privileges.Add(_privilege); } else { var o = privilege + " " + grant.Key; string message = $"Duplicated grant privilege '{privilege}' on object {objectSchema}.{objectName} TO {role}"; GetEventParser(message, o, KindModelEnum.UserObjectPrivilege, fileElement, _privilege.Files.FirstOrDefault()); } } return(grant); }
public ActionResult CreateOrEditPrivilege(PrivilegeModel _model) { if (Session["UserLogon"] != null) { _model.Account = (AccountModel)Session["UserLogon"]; } var request = new PrivilegeRequest { Data = _model }; PrivilegeResponse _response = new PrivilegeResponse(); new PrivilegeValidator(_unitOfWork).Validate(request, out _response); ViewBag.Response = $"{_response.Status};{_response.Message}"; ViewBag.Menu = BindDropDownMenu(); ViewBag.ActionType = request.Data.Id > 0 ? ClinicEnums.Action.Edit : ClinicEnums.Action.Add; return(View()); }
public ResultObj <List <PrivilegeModel> > GetData(string privilegeName = "", string principleType = "", string clientName = "", int pageIndex = 1, int pageSize = 10) { // IProduct service = new ProductService(); //List<ProductModel> products = service.GetAllProducts(); PrivilegeModel privilegeInfo = new PrivilegeModel(); privilegeInfo.PrivilegeName = privilegeName; privilegeInfo.PrincipleType = principleType; privilegeInfo.ClientName = clientName; privilegeInfo.PageIndex = pageIndex; privilegeInfo.PageSize = pageSize; var users = _IBase.GetAll(privilegeInfo); int totalcount = _IBase.GetCount(privilegeInfo); var pagination = new Pagination { PageSize = pageSize, PageIndex = pageIndex, StartIndex = 0, TotalRows = totalcount, TotalPage = 0 }; return(Content(users, pagination)); }
public ResultObj <int> PutData([FromBody] PrivilegeModel privilegeInfo) { return(Content(_IBase.UpdateData(privilegeInfo))); }
public JsonResult moduleResourceTree2() { return(Json(new { text = "ALL", children = PrivilegeModel.getModuleResourceTreeData2() }, JsonRequestBehavior.AllowGet)); }
public JsonResult rolePrivilege() { return(Json(PrivilegeModel.rolePrivilege(Request.Params["roleID"]), JsonRequestBehavior.AllowGet)); }
public async Task <IActionResult> Create([Bind("Id,End,MembershipFeeFoeignKey,Start,Type")] PrivilegeModel privilegeModel) { if (ModelState.IsValid && privilegeModel.Start > DateTime.Now && privilegeModel.End > privilegeModel.Start) { var privilige = _context.Privileges.AsNoTracking().FirstOrDefault(p => p.Type == privilegeModel.Type); var membershipFee = await _context.MembershipFees.AsNoTracking() .SingleOrDefaultAsync(f => f.Id == privilegeModel.MembershipFeeFoeignKey); bool privExist = _context.PrivilegeModels.AsNoTracking().FirstOrDefault( p => p.MembershipFeeFoeignKey == membershipFee.Id && p.Type == privilegeModel.Type) != null; if (!privExist) { var transfers = await _context.TransferPayments.AsNoTracking() .Where(t => t.MembershipFeeId == privilegeModel.MembershipFeeFoeignKey) .ToListAsync(); var cashs = await _context.CashModel.AsNoTracking() .Where(c => c.MembershipFeeId == privilegeModel.MembershipFeeFoeignKey) .ToListAsync(); var d = DateTime.Now.AddMonths(1); var newDate = new DateTime(d.Year, d.Month, 15); var payments = await _context.Payments.AsNoTracking().Where( p => p.MembershipFeeForeignKey == membershipFee.Id && p.PaymentDeadline >= newDate) .OrderBy(p => p.PaymentDeadline) .ToListAsync(); var fullDays = (int)(membershipFee.End - membershipFee.Start).TotalDays; var daysLeft = fullDays - (DateTime.Now - membershipFee.Start).TotalDays; var discountDays = (int)(privilegeModel.End - privilegeModel.Start).TotalDays; double fullPriceWithDiscount = Math.Floor(membershipFee.AmountWithDiscount - (membershipFee.AmountWithDiscount * privilige.Discount / 100)); double priceWithDiscount = Math.Floor(((fullDays - discountDays) * (membershipFee.RealAmount / fullDays)) + (discountDays * fullPriceWithDiscount / fullDays)); membershipFee.AmountWithDiscount = Math.Floor((DateTime.Now - membershipFee.Start).TotalDays * membershipFee.RealAmount / fullDays) + Math.Floor(((daysLeft - discountDays) * (membershipFee.RealAmount / fullDays)) + Math.Floor(discountDays * fullPriceWithDiscount / fullDays)); //membershipFee.MonthlyPay = Math.Floor(membershipFee.AmountWithDiscount / 12); membershipFee.LeftOver = membershipFee.AmountWithDiscount; double totalPayed = 0; foreach (var t in transfers) { membershipFee.LeftOver -= t.Amount; totalPayed += t.Amount; } foreach (var c in cashs) { membershipFee.LeftOver -= c.Amount; totalPayed += c.Amount; } double leftToPay = membershipFee.LeftOver - totalPayed; membershipFee.MonthlyPay = Math.Floor(leftToPay / payments.Count); foreach (var pendingPaymentModel in payments) { pendingPaymentModel.Amount = membershipFee.MonthlyPay; pendingPaymentModel.DepositOrDebt = -membershipFee.MonthlyPay; _context.Update(pendingPaymentModel); } _context.Update(membershipFee); _context.Add(privilegeModel); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "MembershipFees")); } } var privileges = _context.Privileges.AsNoTracking().ToList(); ViewBag.PrivilegeType = new SelectList(privileges, "Type", "Type"); return(View(privilegeModel)); }
public override List <GrantQueryTable_11> Resolve(DbContextOracle context, Action <GrantQueryTable_11> action) { GrantModel grant; this.OracleContext = context; List <GrantQueryTable_11> List = new List <GrantQueryTable_11>(); var db = context.Database; GrantCollection grants = null; if (db != null) { grants = db.Grants; } HashSet <string> _grants = new HashSet <string>(); if (action == null) { action = t => { if (!t.Table_name.ExcludIfStartwith(t.Owner, ExcludeKindEnum.Table)) { string key = t.Owner + "." + t.Table_name + (!string.IsNullOrEmpty(t.Column_name) ? ("." + t.Column_name) : string.Empty) + "_to_" + t.Role ; if (_grants.Add(key)) { string FullObjectName = !string.IsNullOrEmpty(t.Column_name) ? @"""" + t.Column_name + @"""" : string.Empty; if (!string.IsNullOrEmpty(t.Table_name)) { if (!string.IsNullOrEmpty(FullObjectName)) { FullObjectName = "." + FullObjectName; } FullObjectName = @"""" + t.Table_name + @"""" + FullObjectName; } if (!string.IsNullOrEmpty(t.Owner)) { if (!string.IsNullOrEmpty(FullObjectName)) { FullObjectName = "." + FullObjectName; } FullObjectName = @"""" + t.Owner + @"""" + FullObjectName; } grant = new GrantModel() { Key = key, Role = t.Role, ObjectSchema = t.Owner, ObjectName = t.Table_name, ColumnObjectName = t.Column_name ?? string.Empty, Grantable = t.Grantable, Hierarchy = t.Hierarchy }; grants.Add(grant); } else { grant = grants[key]; grant.Grantable = t.Grantable; grant.Hierarchy = t.Hierarchy; } var p = new PrivilegeModel() { Name = t.Privilege }; // AddIfNotExist -> can be duplicated because same privilege can given by many grantor grant.Privileges.AddIfNotExist(p); } } } ; GrantQueryDescriptor_11 Grant = new GrantQueryDescriptor_11(context.Manager.ConnectionString); sql = string.Format(sql, TableQueryWhereCondition("t"), TableQueryWhereCondition("r")); using (var reader = context.Manager.ExecuteReader(CommandType.Text, sql, QueryBase.DbParams.ToArray())) { List = Grant.ReadAll(reader, action).ToList(); } return(List); } }
public void VisitPrivilege(PrivilegeModel item) { }
public async Task <IActionResult> Create([Bind("AmountWithDiscount,FirstName,LastName,MiddleName,RealAmount,Start,Periodicity,ActivePrivilegeEnd,ActivePrivilegeStart,PrivilegeType,LicenseNumber")] MembershipFee membershipFee) { //var rand = new Random(); //var privileges = await _context.Privileges.ToListAsync(); //for (int i = 1; i < 500; i++) //{ // var start = DateTime.Now.AddDays(rand.Next(1, 29)).AddMonths(rand.Next(1, 12)); // var fee = new MembershipFee() // { // Id = Guid.NewGuid().ToString(), // RealAmount = i * 10000, // AmountWithDiscount = i * 5000, // CurrentState = rand.Next(2) == 1 ? FeeState.Active : FeeState.Pause, // FirstName = "Firstname" + i, // LastName = "LastName" + i, // MiddleName = "MiddleName" + i, // Start = start, // End = start.AddMonths(12), // LeftOver = i * 10000, // MonthlyPay = i * 10000 / 12, // Periodicity = FeePeriodicity.Year, // PrivilegeType = rand.Next(0, 2) == 1 ? privileges[1].Type : privileges[0].Type, // ActivePrivilegeStart = start, // ActivePrivilegeEnd = start.AddMonths(12), // ActivePrivilegeNo = rand.Next(), // }; // _context.Add(fee); //} //for (int i = 0; i < 50; i++) //{ // var start = DateTime.Now.AddDays(rand.Next(1, 29)).AddMonths(rand.Next(1, 12)); // var payments = new TransferPayment() // { // Id = Guid.NewGuid().ToString(), // Amount = i * 5100, // Date = DateTime.Now.AddDays(i * 3), // FullName = "FirstName" + i * 10 + " LastName" + i * 10, // Destination = "chem manum", // PaymentNo = (i * 1000).ToString(), // }; // _context.Add(payments); //} //for (int i = 0; i < 100; i++) //{ // var cashes = new CashModel() // { // Id = Guid.NewGuid().ToString(), // FullName = "FirstName" + i * 10 + " LastName" + i * 10, // AccountingPass = (i * 123).ToString(), // Amount = i * 4320, // Date = DateTime.Now.AddDays(i * 2), // Destination = "chem manum asi", // OrdersNumber = (i * 10000 + i * 378).ToString(), // Type = rand.Next(0, 2) == 1 ? BargainType.CashIn : BargainType.CashOut, // //?ccount ="asfasfasfasfas" // }; // _context.Add(cashes); //} //await _context.SaveChangesAsync(); if (ModelState.IsValid) { membershipFee.AmountWithDiscount = membershipFee.RealAmount; membershipFee.LeftOver = membershipFee.AmountWithDiscount; membershipFee.End = membershipFee.Periodicity == FeePeriodicity.Year ? membershipFee.Start.AddMonths(12) : membershipFee.Start.AddMonths(1); if (membershipFee.Periodicity != FeePeriodicity.Month) { membershipFee.MonthlyPay = Math.Floor(membershipFee.RealAmount / 12); } if (!string.IsNullOrEmpty(membershipFee.PrivilegeType) && membershipFee.ActivePrivilegeStart != null && membershipFee.ActivePrivilegeEnd > membershipFee.ActivePrivilegeStart) { var privilige = _context.Privileges.AsNoTracking().FirstOrDefault(p => p.Type == membershipFee.PrivilegeType); var priviligeModel = new PrivilegeModel() { Start = membershipFee.ActivePrivilegeStart.Value, End = membershipFee.ActivePrivilegeEnd.Value, Type = membershipFee.PrivilegeType + $"({privilige.Discount})", MembershipFeeFoeignKey = membershipFee.Id }; _context.Add(priviligeModel); var fullDays = (int)(membershipFee.End - membershipFee.Start).TotalDays; var discountDays = (int)(priviligeModel.End - priviligeModel.Start).TotalDays; double priceWithDiscount = Math.Floor(membershipFee.RealAmount - (membershipFee.RealAmount * privilige.Discount / 100)); membershipFee.AmountWithDiscount = Math.Floor(((fullDays - discountDays) * (membershipFee.RealAmount / fullDays)) + (discountDays * priceWithDiscount / fullDays)); membershipFee.MonthlyPay = Math.Floor(membershipFee.AmountWithDiscount / 12); membershipFee.LeftOver = membershipFee.AmountWithDiscount; } _context.Add(membershipFee); await _context.SaveChangesAsync(); SiteHelpers.AddPaymentsForFee(membershipFee.Id, _context); return(RedirectToAction("Index")); } return(View(membershipFee)); }
/// <summary> /// Assign access to the role /// </summary> /// <param name="objData"></param> /// <returns></returns> public int PrivilegeInsertUpdate(PrivilegeModel objData, string formCollection) { return(objDAL.PrivilegeInsertUpdate(objData, formCollection)); }