Exemple #1
0
        public GroupEntity(
            XmlNode node,
            DeviceEntity parent) :
            this(parent)
        {
            #region 从Xml节点属性中获取属性值
            if (node.Attributes["Name"] != null)
            {
                name = node.Attributes["Name"].Value;
            }
            #endregion

            XmlNode childNode = node.FirstChild;
            while (childNode != null)
            {
                if (childNode.Name == "Tag")
                {
                    TagEntity tag = new TagEntity(childNode, this);
                    Tags.Add(tag);
                }
                else if (childNode.Name == "SubTagGroup")
                {
                    SubGroupEntity subGroup = new SubGroupEntity(childNode, this);
                    SubGroups.Add(subGroup);
                }

                childNode = childNode.NextSibling;
            }
        }
Exemple #2
0
        public void PerformSearch(DownloadSearchCriteria crit)
        {
            this.Cursor         = Cursors.Wait;
            TorrentSearchStatus = string.Format("Searching...");

            try
            {
                CurrentSearchCriteria = crit;
                this.IsEnabled        = false;

                if (crit.SearchType != DownloadSearchType.Manual)
                {
                    string desc = "";
                    foreach (string parm in crit.GetParms())
                    {
                        if (!string.IsNullOrEmpty(desc))
                        {
                            desc += " ";
                        }
                        desc += parm;
                    }
                    txtSearch.Text = desc;
                }

                SubGroups.Clear();
                TorrentLinks.Clear();
                ViewTorrentLinks.Refresh();

                searchWorker.RunWorkerAsync(crit);
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
Exemple #3
0
        protected void DDLGroups_SelectedIndexChanged(object sender, EventArgs e)
        {
            GroupsRepository repo = new GroupsRepository();

            if (DDLGroups.SelectedValue != "-2")
            {
                DataTable DT = new DataTable();
                DT = repo.LoadSubGroup(DDLGroups.SelectedValue.ToInt());

                if ((DT.Rows.Count > 0))
                {
                    SubGroups.DataSource     = DT;
                    SubGroups.DataTextField  = "Title";
                    SubGroups.DataValueField = "GroupID";
                    SubGroups.DataBind();
                    NoItemDiv.InnerText = "";
                }
                else
                {
                    SubGroups.Items.Clear();
                    SubGroups.Items.Insert(0, new ListItem(DDLGroups.SelectedItem.ToString(), DDLGroups.SelectedValue.ToString()));
                    NoItemDiv.InnerText           = "این گروه هیچ زیر گروهی ندارد،میتوانید نام گروه را اضافه کنید";
                    NoItemDiv.Attributes["class"] = "textok";
                }
            }
            else
            {
                SubGroups.Items.Clear();
                NoItemDiv.InnerText = "";
            }
        }
        protected void DDLGroups_SelectedIndexChanged(object sender, EventArgs e)
        {
            JobRepository jr = new JobRepository();

            SubGroups.DataSource     = jr.getJobsByGroupID(DDLGroups.SelectedValue.ToInt());
            SubGroups.DataTextField  = "JobTitle";
            SubGroups.DataValueField = "JobID";
            SubGroups.DataBind();
        }
        public object Clone()
        {
            var clone = new GroupWithReiterationInfo
            {
                IsReiterationEnabled = IsReiterationEnabled,
                ReiterationStep      = ReiterationStep,
                SubGroups            = SubGroups.Select((info => info.Clone() as IReiterationSubGroupInfo)).ToList()
            };

            return(clone);
        }
Exemple #6
0
        public void RemoveChildren()
        {
            for (int i = Tags.Count - 1; i >= 0; i--)
            {
                Tags.Remove(Tags[i]);
            }

            for (int i = SubGroups.Count - 1; i >= 0; i--)
            {
                SubGroups.Remove(SubGroups[i]);
            }
        }
Exemple #7
0
 internal EquipmentGroup(IGrouping <EquipmentInfo, HomeportEquipment> group)
 {
     Info      = group.Key;
     SubGroups = group
                 .GroupBy(x => (x.ImprovementLevel, x.AirProficiency))
                 .Select(x => new ImprovementGroup(x))
                 .OrderBy(x => x.ImprovementLevel)
                 .ThenBy(x => x.AirProficiency)
                 .ToArray();
     Available = SubGroups.Sum(x => x.Available);
     Total     = group.Count();
 }
Exemple #8
0
        public async Task <bool> AddSubGroup(string userName, string groupId, CreateSubgroupViewModel model)
        {
            var groups = context.groups.Where(x => x.GroupId.ToString() == groupId).FirstOrDefault();
            var user   = await userManager.FindByNameAsync(userName);

            SubGroups subGroups = new SubGroups
            {
                SubGroupName     = model.SubGroupName,
                CreateDate       = DateTime.Now,
                StartDate        = model.StartDate,
                EndDate          = model.EndDate,
                Groups           = groups,
                IdentityUser     = user,
                IsDateApplicable = model.IsDateApplicable
            };

            context.subGroups.Add(subGroups);
            return(await Save());
        }
Exemple #9
0
 private bool checkTimeAndDate(SubGroups subGroup, DateTime time, DateTime checkDate)
 {
     if (time.Month != subGroup.CreateDate.Month)
     {
         return(false);
     }
     if (checkDate.Day < time.Day)
     {
         return(false);
     }
     if (checkDate.Day > time.Day)
     {
         return(true);
     }
     if (time.TimeOfDay > subGroup.EndDate?.TimeOfDay && subGroup.IsDateApplicable == true)
     {
         return(false);
     }
     return(true);
 }
Exemple #10
0
        private void ShowSubGroupSuggestions(List <GroupVideoQualityVM> vidQualList)
        {
            SubGroups.Clear();
            Dictionary <string, GroupVideoQualityVM> vidQuals = new Dictionary <string, GroupVideoQualityVM>();

            foreach (GroupVideoQualityVM vidQual in vidQualList)
            {
                vidQuals[vidQual.GroupNameShort] = vidQual;
            }

            foreach (GroupVideoQualityVM vidq in vidQuals.Values)
            {
                if (vidq.GroupNameShort != "NO GROUP INFO")
                {
                    SubGroupSimple sub = new SubGroupSimple();
                    sub.GroupName      = vidq.GroupName;
                    sub.GroupNameShort = vidq.GroupNameShort;
                    SubGroups.Add(sub);
                }
            }
        }
Exemple #11
0
        public SubGroups Create(SubGroups subGroups, Users users)
        {
            // validation
            if (_context.SubGroups.Any(x => x.Name == subGroups.Name))
            {
                throw new AppException("SubGroup Name \"" + subGroups.Name + "\" is already taken");
            }

            if (!_context.Groups.Any(x => x.Id == subGroups.GroupId))
            {
                throw new AppException("GroupId \"" + subGroups.GroupId + "\" not found");
            }

            subGroups.ApplicationId = users.ApplicationId;
            subGroups.CreatedBy     = users.Id;
            subGroups.CreatedDate   = DateTime.Now;
            subGroups.UpdatedBy     = users.Id;
            subGroups.UpdatedDate   = DateTime.Now;

            _context.SubGroups.Add(subGroups);
            _context.SaveChanges();

            return(subGroups);
        }
Exemple #12
0
        public override bool TryParse()
        {
            if (!base.TryParse())
            {
                return(false);
            }

            // sub-groups, flows, branches, bcs
            SubGroups.Clear();
            Flows.Clear();
            Branches.Clear();
            BusinessComponents.Clear();
            RecoverySteps.Clear();
            GeneralSteps.Clear();

            ReportNodeType[] childNodes = Node.ReportNode;
            if (childNodes != null)
            {
                foreach (ReportNodeType node in childNodes)
                {
                    // business component
                    BusinessComponentReport bc = BusinessComponents.TryParseAndAdd(node, this.Node);
                    if (bc != null)
                    {
                        AllBCsEnumerator.Add(bc);
                        continue;
                    }

                    // sub-group
                    GroupReport group = SubGroups.TryParseAndAdd(node, this.Node);
                    if (group != null)
                    {
                        AllBCsEnumerator.Merge(group.AllBCsEnumerator);
                        continue;
                    }

                    // flow
                    FlowReport flow = Flows.TryParseAndAdd(node, this.Node);
                    if (flow != null)
                    {
                        AllBCsEnumerator.Merge(flow.AllBCsEnumerator);
                        continue;
                    }

                    // branch
                    BranchReport branch = Branches.TryParseAndAdd(node, this.Node);
                    if (branch != null)
                    {
                        AllBCsEnumerator.Merge(branch.AllBCsEnumerator);
                        continue;
                    }

                    // recovery step
                    RecoveryStepReport recovery = RecoverySteps.TryParseAndAdd(node, this.Node);
                    if (recovery != null)
                    {
                        AllBCsEnumerator.Merge(recovery.AllBCsEnumerator);
                        continue;
                    }

                    // general step
                    GeneralStepReport generalStep = GeneralSteps.TryParseAndAdd(node, this.Node);
                    if (generalStep != null)
                    {
                        AllBCsEnumerator.Merge(generalStep.AllBCsEnumerator);
                        continue;
                    }
                }
            }

            return(true);
        }
Exemple #13
0
 public async Task <IEnumerable <SubGroups> > ManageSubGroupsResp(string connectionString, SubGroups data)
 {
     return(await formBLL.ManageSubGroupsBLL(connectionString, data));
 }
        public IEnumerable <ITemplateDescriptionViewModel> GetTemplatesRecursively()
        {
            var allGroup = SubGroups.SelectDeep(x => x.SubGroups);

            return(Templates.Concat(allGroup.SelectMany(x => x.Templates)));
        }
Exemple #15
0
        public SubGroups Update(SubGroups subGroups, Users users)
        {
            if (subGroups is null)
            {
                throw new ArgumentNullException(nameof(subGroups));
            }

            var subGroup = _context.SubGroups.Find(subGroups.Id);

            if (subGroup == null)
            {
                throw new AppException("SubGroup not found");
            }

            // update SubGroup Name if it has changed
            if (!string.IsNullOrWhiteSpace(subGroups.Name) && subGroups.Name != subGroup.Name)
            {
                // throw error if the new SubGroup name is already taken
                if (_context.Groups.Any(x => x.Name == subGroups.Name))
                {
                    throw new AppException("SubGroup Name " + subGroups.Name + " is already taken");
                }

                subGroup.Name = subGroups.Name;
            }

            // update store ApplicationId if it has changed
            if (subGroups.ApplicationId != 0 && subGroups.ApplicationId != subGroup.ApplicationId)
            {
                if (!_context.Applications.Any(x => x.Id == subGroups.ApplicationId))
                {
                    throw new AppException("Application Id \"" + subGroups.ApplicationId + "\" is not valid");
                }

                subGroup.ApplicationId = subGroups.ApplicationId;
            }

            // update store AddressLine1 if it has changed
            if (!string.IsNullOrWhiteSpace(subGroups.AddressLine1) && subGroups.AddressLine1 != subGroup.AddressLine1)
            {
                subGroup.AddressLine1 = subGroups.AddressLine1;
            }

            // update store AddressLine2 if it has changed
            if (!string.IsNullOrWhiteSpace(subGroups.AddressLine2) && subGroups.AddressLine2 != subGroup.AddressLine2)
            {
                subGroup.AddressLine2 = subGroups.AddressLine2;
            }

            // update store AccountNumber if it has changed
            if (!string.IsNullOrWhiteSpace(subGroups.AccountNumber) && subGroups.AccountNumber != subGroup.AccountNumber)
            {
                subGroup.AccountNumber = subGroups.AccountNumber;
            }

            // update store City if it has changed
            if (subGroups.City != 0 && subGroups.City != subGroup.City)
            {
                if (!_context.Applications.Any(x => x.Id == subGroups.City))
                {
                    throw new AppException("City Id \"" + subGroups.City + "\" is not valid");
                }

                subGroup.City = subGroups.City;
            }

            // update store GroupId if it has changed
            if (subGroups.GroupId != 0 && subGroups.GroupId != subGroup.GroupId)
            {
                if (!_context.Applications.Any(x => x.Id == subGroups.GroupId))
                {
                    throw new AppException("Group Id \"" + subGroups.GroupId + "\" is not valid");
                }

                subGroup.GroupId = subGroups.GroupId;
            }

            // update store IsExpense if it has changed
            if (!string.IsNullOrWhiteSpace(Convert.ToString(subGroups.IsExpense)) && subGroups.IsExpense != subGroup.IsExpense)
            {
                subGroup.IsExpense = subGroups.IsExpense;
            }

            // update store OpeningBalance if it has changed
            if (subGroups.OpeningBalance != 0 && subGroups.OpeningBalance != subGroup.OpeningBalance)
            {
                subGroup.OpeningBalance = subGroups.OpeningBalance;
            }

            // update store PhoneNumber if it has changed
            if (!string.IsNullOrWhiteSpace(subGroups.PhoneNumber) && subGroups.PhoneNumber != subGroup.PhoneNumber)
            {
                subGroup.PhoneNumber = subGroups.PhoneNumber;
            }

            // update store PostalCode if it has changed
            if (subGroups.PostalCode != 0 && subGroups.PostalCode != subGroup.PostalCode)
            {
                subGroup.PostalCode = subGroups.PostalCode;
            }

            // update store ShowInSaleBill if it has changed
            if (!string.IsNullOrWhiteSpace(Convert.ToString(subGroups.ShowInSaleBill)) && subGroups.ShowInSaleBill != subGroup.ShowInSaleBill)
            {
                subGroup.ShowInSaleBill = subGroups.ShowInSaleBill;
            }


            subGroup.UpdatedBy   = users.Id;
            subGroup.UpdatedDate = DateTime.Now;

            _context.SubGroups.Update(subGroup);
            _context.SaveChanges();

            return(subGroup);
        }
        private void addGroupSubFilter(a7FilterGroupEditor fge, bool fromRemove)
        {
            fge.Parent = this;
            FltGroupExprData fgeExpr = null;

            if (this.Filter is FltGroupExprData)
            {
                fgeExpr = this.Filter as FltGroupExprData;
            }
            else
            {
                if (JoinType.HasValue)
                {
                    fgeExpr = new FltGroupExprData(JoinType.Value);
                }
                else
                {
                    fgeExpr = new FltGroupExprData();
                }
                if (Parent != null && Parent.Filter != null)
                {
                    var parentGroup = Parent.Filter as FltGroupExprData;
                    parentGroup.FilterExpressions.Remove(this.Filter);
                    parentGroup.FilterExpressions.Add(fgeExpr);
                }
                this.Filter = fgeExpr;
            }
            fgeExpr.FilterExpressions.Add(fge.Filter);



            if (this.SubGroups.Count > 0 || this.AtomFilter != null)
            {
                bAdd.Visibility = Visibility.Visible;
                bAnd.Visibility = Visibility.Collapsed;
                bOr.Visibility  = Visibility.Collapsed;
            }
            else
            {
                SetBackground(fge.MyBackgroundIndex + a7SqlTools.Controls.Filter.a7FilterEditor.BackgroundIndexStep);
                bAdd.Visibility = Visibility.Collapsed;
                bAnd.Visibility = Visibility.Visible;
                bOr.Visibility  = Visibility.Visible;
            }

            if (JoinType.HasValue)
            {
                if (JoinType.Value == eAndOrJoin.And)
                {
                    miChangeToOr.Visibility  = System.Windows.Visibility.Visible;
                    miChangeToAnd.Visibility = System.Windows.Visibility.Collapsed;
                }
                else
                {
                    miChangeToOr.Visibility  = System.Windows.Visibility.Collapsed;
                    miChangeToAnd.Visibility = System.Windows.Visibility.Visible;
                }
            }
            else
            {
                miChangeToOr.Visibility  = System.Windows.Visibility.Collapsed;
                miChangeToAnd.Visibility = System.Windows.Visibility.Collapsed;
            }

            if (!fromRemove && (AddedFirstElement != null && this.Parent == null))
            {
                this.AddedFirstElement(this, null);
            }

            if (AtomFilter != null) //replacing existing atomfilter with groupfilter containing the atomfilter
            {
                var newFge = new a7FilterGroupEditor(_entity, !_vertical, this.IsReadOnly, EditorContext, AtomFilter.Filter);
                fgeExpr.FilterExpressions.Add(AtomFilter.Filter);
                newFge.Parent  = this;
                ccAtom.Content = null;
                newFge.SetAtomFilter(AtomFilter);
                AtomFilter = null;
                this.Negate(false);
                spSubGroups.Children.Add(newFge);
                SubGroups.Add(newFge);
            }

            if (SubGroups.Count > 0 && JoinType.HasValue)
            {
                var andOrLabel = new Label()
                {
                    Content             = (JoinType.Value == eAndOrJoin.And) ? "And": "Or",
                    VerticalAlignment   = VerticalAlignment.Center,
                    HorizontalAlignment = HorizontalAlignment.Center
                };
                spSubGroups.Children.Add(andOrLabel);
                fge.JoinLabelOnParent = andOrLabel;
                fgeExpr.AndOr         = JoinType.Value;
            }
            SubGroups.Add(fge);
            spSubGroups.Children.Add(fge);
            fge.AtomFilter?.FocusControl();
        }
 public async Task <IHttpActionResult> ManageSubGroups(SubGroups data)
 {
     return(Json(await iform.ManageSubGroupsResp(connectionString, data)));
 }
 IEnumerator <IKeyValue <TMajor, FormKey> > IEnumerable <IKeyValue <TMajor, FormKey> > .GetEnumerator() =>
 SubGroups.SelectMany(x => x.RecordCache).GetEnumerator();