コード例 #1
0
ファイル: OperatorPageVM.cs プロジェクト: ilnest/ambulance
        public OperatorPageVM(OperatorPage page)
        {
            this.page       = page;
            OperatorCommand = new OperatorCommand(page);

            ops = new Operations();
        }
コード例 #2
0
        public static IEnumerable <OperatorConfig> SafeGetSubOperators(OperatorPage page, string functionKey)
        {
            TkDebug.ThrowIfNoGlobalVariable();
            UserFunctionRight functionRight = WebGlobalVariable.SessionGbl.AppRight.FunctionRight
                                              as UserFunctionRight;

            if (functionRight == null)
            {
                return(null);
            }

            return(functionRight.GetSubOperators(page, functionKey));
        }
コード例 #3
0
ファイル: FunctionItem.cs プロジェクト: madiantech/tkdemo
        public IEnumerable <OperatorConfig> GetOperators(OperatorPage page)
        {
            if (fSubFunction == null)
            {
                return(null);
            }

            var result = from item in fSubFunction.Values
                         where item != null && item.IsFitFor(page)
                         orderby item.OperOrder
                         select item.ConvertToOperatorConfig();

            return(result.ToArray());
        }
コード例 #4
0
        public IEnumerable <OperatorConfig> GetSubOperators(OperatorPage page, string functionKey)
        {
            if (string.IsNullOrEmpty(functionKey))
            {
                return(null);
            }

            FunctionItem item = ObjectUtil.TryGetValue(fFunctions, functionKey);

            if (item == null)
            {
                return(null);
            }

            return(item.GetOperators(page));
        }
コード例 #5
0
ファイル: SubFuncClass.cs プロジェクト: madiantech/tkdemo
 public bool IsFitFor(OperatorPage page)
 {
     return((page & Page) == page);
 }
コード例 #6
0
        public static async Task ShowPage()
        {
            if (configuration.Step >= 2)
            {
                await UpdateXmpp();

                if (configuration.Step > 2 && (
                        configuration.LegalIdentity is null ||
                        configuration.LegalIdentity.State == IdentityState.Compromised ||
                        configuration.LegalIdentity.State == IdentityState.Obsoleted ||
                        configuration.LegalIdentity.State == IdentityState.Rejected))
                {
                    configuration.Step = 2;
                    await Database.Update(configuration);
                }

                if (configuration.Step > 4 && configuration.UsePin && string.IsNullOrEmpty(configuration.PinHash))
                {
                    configuration.Step = 4;
                    await Database.Update(configuration);
                }
            }

            Page Page;

            switch (configuration.Step)
            {
            case 0:
                Page = new OperatorPage(configuration);
                break;

            case 1:
                Page = new AccountPage(configuration);
                break;

            case 2:
                if (configuration.LegalIdentity is null ||
                    configuration.LegalIdentity.State == IdentityState.Compromised ||
                    configuration.LegalIdentity.State == IdentityState.Obsoleted ||
                    configuration.LegalIdentity.State == IdentityState.Rejected)
                {
                    DateTime      Now      = DateTime.Now;
                    LegalIdentity Created  = null;
                    LegalIdentity Approved = null;
                    bool          Changed  = false;

                    if (await CheckServices())
                    {
                        foreach (LegalIdentity Identity in await App.Contracts.GetLegalIdentitiesAsync())
                        {
                            if (Identity.HasClientSignature &&
                                Identity.HasClientPublicKey &&
                                Identity.From <= Now &&
                                Identity.To >= Now &&
                                (Identity.State == IdentityState.Approved || Identity.State == IdentityState.Created) &&
                                Identity.ValidateClientSignature())
                            {
                                if (Identity.State == IdentityState.Approved)
                                {
                                    Approved = Identity;
                                    break;
                                }
                                else if (Created is null)
                                {
                                    Created = Identity;
                                }
                            }
                        }

                        if (!(Approved is null))
                        {
                            configuration.LegalIdentity = Approved;
                            Changed = true;
                        }
                        else if (!(Created is null))
                        {
                            configuration.LegalIdentity = Created;
                            Changed = true;
                        }

                        if (Changed)
                        {
                            configuration.Step++;
                            await Database.Update(configuration);

                            Page = new Connection.IdentityPage(configuration);
                            break;
                        }
                    }
                }

                Page = new RegisterIdentityPage(configuration);
                break;
コード例 #7
0
 public OperatorCommand(OperatorPage page)
 {
     this.page = page;
 }