コード例 #1
0
        public IEnumerable<string> GetOperator(OperateRightEventArgs e)
        {
            if (e.Row == null)
                return new string[] { "Insert", "InsertTools" };
            string massFlag = e.Row["MassFlag"].ToString();
            string sourceId = e.Row["SourceId"].ToString();
            string massOper = null;
            switch (massFlag)
            {
                case "0":
                case "2":
                case "":
                    massOper = "SendMass";
                    break;
                case "1":
                    massOper = "ShowMass";
                    break;
                case "4":
                    massOper = "NoMass";
                    break;
            }
            string updateOper = "Update"; // string.IsNullOrEmpty(sourceId) ? "Update" : null;

            var result = from item in new string[] { massOper, updateOper, "Delete" }
                         where !string.IsNullOrEmpty(item)
                         select item;
            return result;
        }
コード例 #2
0
 public IEnumerable <string> GetOperator(OperateRightEventArgs e)
 {
     if (WebGlobalVariable.SessionGbl.AppRight.FunctionRight is UserFunctionRight functionRight)
     {
         return(functionRight.GetSubFunctions(FunctionKey));
     }
     else
     {
         return(Enumerable.Empty <string>());
     }
 }
コード例 #3
0
ファイル: DbListSource.cs プロジェクト: madiantech/tkcore
        private void CreateRowOperators(IInputData input, IOperateRight operateRight,
                                        IEnumerable <OperatorConfig> allOperators)
        {
            var rowOperators = from item in allOperators
                               where item.Position == OperatorPosition.Row
                               select new Operator(item, this, input, MainResolver.GetKeyFieldArray());
            DataTable operTable = rowOperators.CreateTable("RowOperator");

            if (operTable == null)
            {
                return;
            }

            DataSet.Tables.Add(operTable);

            string rightStr = string.Empty;

            if (operateRight == null)
            {
                var rowRights = from item in rowOperators
                                select item.Id;
                rightStr = string.Format(ObjectUtil.SysCulture, "|{0}|", string.Join("|", rowRights));
            }
            DataTable  table          = DataSet.Tables[FillTableName];
            DataColumn operatorColumn = table.Columns.Add("_OPERATOR_RIGHT");

            foreach (DataRow row in table.Rows)
            {
                if (operateRight == null)
                {
                    row[operatorColumn] = rightStr;
                }
                else
                {
                    var args = new OperateRightEventArgs(input.Style, input.SourceInfo.Source, row);
                    IEnumerable <string> rights = operateRight.GetOperator(args);
                    if (rights != null)
                    {
                        rightStr = string.Join("|", rights);
                        if (!string.IsNullOrEmpty(rightStr))
                        {
                            row[operatorColumn] = "|" + rightStr + "|";
                        }
                    }
                }
            }
        }
コード例 #4
0
        public override IEnumerable <string> GetOperator(OperateRightEventArgs e)
        {
            var result = base.GetOperator(e);

            if (result == null)
            {
                return(null);
            }
            if (WebGlobalVariable.SessionGbl.AppRight.FunctionRight is UserFunctionRight functionRight)
            {
                IEnumerable <string> subFunctions = functionRight.GetSubFunctions(FunctionKey);
                var nextResult = result.Intersect(subFunctions);
                return(nextResult);
            }
            else
            {
                return(result);
            }
        }
コード例 #5
0
        public IEnumerable <string> GetOperator(OperateRightEventArgs e)
        {
            if (e.Row == null)
            {
                return new string[] { "Insert", "InsertTools" }
            }
            ;
            string massFlag = e.Row["MassFlag"].ToString();
            string sourceId = e.Row["SourceId"].ToString();
            string massOper = null;

            switch (massFlag)
            {
            case "0":
            case "2":
            case "":
                massOper = "SendMass";

                break;

            case "1":
                massOper = "ShowMass";
                break;

            case "4":
                massOper = "NoMass";
                break;
            }
            string updateOper = "Update"; // string.IsNullOrEmpty(sourceId) ? "Update" : null;

            var result = from item in new string[] { massOper, updateOper, "Delete" }
            where !string.IsNullOrEmpty(item)
            select item;

            return(result);
        }

        #endregion
    }