コード例 #1
0
        public void LoadData(int featureRuleId, bool showId)
        {
            Clear();

            var data = new FeatureRuleDataModel();

            data.FeatureRuleId = featureRuleId;

            var items = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.GetEntityDetails(data, SessionVariables.RequestProfile);

            if (items.Count != 1)
            {
                return;
            }

            var item = items[0];

            SetData(item);

            if (!showId)
            {
                SystemKeyId           = item.FeatureRuleId;
                FeatureRuleCategoryId = item.FeatureRuleCategoryId;

                oHistoryList.Setup(PrimaryEntity, featureRuleId, PrimaryEntityKey);
            }
            else
            {
                CoreSystemKey.Text = String.Empty;
            }
        }
コード例 #2
0
        //public static List<FeatureRuleDataModel> GetEntityDetails(FeatureRuleDataModel data, int auditId)
        //{
        //    var sql = "EXEC dbo.FeatureRuleSearch " +
        //              " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, auditId) +
        //               ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleId);

        //    var result = new List<FeatureRuleDataModel>();

        //    using (var reader = new DBDataReader("Get Details", sql, DataStoreKey))
        //    {
        //        var dbReader = reader.DBReader;

        //        while (dbReader.Read())
        //        {
        //            var dataItem = new FeatureRuleDataModel();

        //            dataItem.FeatureRuleId = (int)dbReader[FeatureRuleDataModel.DataColumns.FeatureRuleId];
        //            dataItem.FeatureRuleCategoryId = (int)dbReader[FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId];

        //            SetStandardInfo(dataItem, dbReader);

        //            SetBaseInfo(dataItem, dbReader);

        //            result.Add(dataItem);
        //        }
        //    }

        //    return result;
        //}

        #endregion GetDetails

        #region CreateOrUpdate
        private static string CreateOrUpdate(FeatureRuleDataModel data, RequestProfile requestProfile, string action)
        {
            var traceId = TraceDataManager.GetNextTraceId(requestProfile);
            var sql     = "EXEC ";

            switch (action)
            {
            case "Create":
                sql += "dbo.FeatureRuleInsert  " + "\r\n" +
                       " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                       ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId);
                break;

            case "Update":
                sql += "dbo.FeatureRuleUpdate  " + "\r\n" +
                       " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId);

                break;

            default:
                break;
            }

            sql = sql + ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleId) +
                  ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Description) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.SortOrder);

            return(sql);
        }
コード例 #3
0
        public override int?Save(string action)
        {
            var data = new FeatureRuleDataModel();

            data.FeatureRuleId         = SystemKeyId;
            data.Name                  = Name;
            data.Description           = Description;
            data.SortOrder             = SortOrder;
            data.FeatureRuleCategoryId = FeatureRuleCategoryId;

            if (action == "Insert")
            {
                var dtFeatureRule = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.DoesExist(data, SessionVariables.RequestProfile);

                if (dtFeatureRule.Rows.Count == 0)
                {
                    TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Create(data, SessionVariables.RequestProfile);
                }
                else
                {
                    throw new Exception("Record with given ID already exists.");
                }
            }
            else
            {
                TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Update(data, SessionVariables.RequestProfile);
            }

            return(data.FeatureRuleId);
        }
コード例 #4
0
        protected override void ShowData(int featureRuleId)
        {
            base.ShowData(featureRuleId);

            oDetailButtonPanel.SetId = SetId;

            Clear();

            var data = new FeatureRuleDataModel();

            data.FeatureRuleId = featureRuleId;

            var items = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.GetEntityDetails(data, SessionVariables.RequestProfile);

            // should only have single match
            if (items.Count == 1)
            {
                var item = items[0];

                lblFeatureRuleCategoryId.Text = item.FeatureRuleCategoryId.ToString();
                SetData(item);

                oUpdateInfo.LoadText(item.UpdatedDate, item.UpdatedBy, item.LastAction);

                oHistoryList.Setup(PrimaryEntity, featureRuleId, "FeatureRule");
            }
        }
コード例 #5
0
        protected override void Update(Dictionary <string, string> values)
        {
            var data = new FeatureRuleDataModel();

            if (values.ContainsKey(FeatureRuleDataModel.DataColumns.FeatureRuleId))
            {
                data.FeatureRuleId = int.Parse(values[FeatureRuleDataModel.DataColumns.FeatureRuleId].ToString());
            }

            if (values.ContainsKey(StandardDataModel.StandardDataColumns.Name))
            {
                data.Name = values[StandardDataModel.StandardDataColumns.Name].ToString();
            }

            if (values.ContainsKey(StandardDataModel.StandardDataColumns.Description))
            {
                data.Description = values[StandardDataModel.StandardDataColumns.Description].ToString();
            }

            if (values.ContainsKey(FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId))
            {
                data.FeatureRuleCategoryId = int.Parse(values[FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId].ToString());
            }

            if (values.ContainsKey(StandardDataModel.StandardDataColumns.SortOrder))
            {
                data.SortOrder = int.Parse(values[StandardDataModel.StandardDataColumns.SortOrder].ToString());
            }

            TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Update(data, SessionVariables.RequestProfile);

            base.Update(values);
        }
コード例 #6
0
        public static string ToSQLParameter(FeatureRuleDataModel data, string dataColumnName)
        {
            var returnValue = "NULL";

            switch (dataColumnName)
            {
            case FeatureRuleDataModel.DataColumns.FeatureRuleId:
                if (data.FeatureRuleId != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NUMBER, FeatureRuleDataModel.DataColumns.FeatureRuleId, data.FeatureRuleId);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, FeatureRuleDataModel.DataColumns.FeatureRuleId);
                }
                break;

            case FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId:
                if (data.FeatureRuleCategoryId != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NUMBER, FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId, data.FeatureRuleCategoryId);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId);
                }
                break;

            default:
                returnValue = StandardDataManager.ToSQLParameter(data, dataColumnName);
                break;
            }

            return(returnValue);
        }
コード例 #7
0
        protected override void Clear()
        {
            base.Clear();

            var data = new FeatureRuleDataModel();

            SetData(data);
        }
コード例 #8
0
        public static int Create(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var sql = CreateOrUpdate(data, requestProfile, "Create");

            var featureRuleId = DBDML.RunScalarSQL("FeatureRule.Insert", sql, DataStoreKey);

            return(Convert.ToInt32(featureRuleId));
        }
コード例 #9
0
        protected override DataTable GetEntityData(int?entityKey)
        {
            var featureRuledata = new FeatureRuleDataModel();

            featureRuledata.FeatureRuleId = entityKey;
            var results = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Search(featureRuledata, SessionVariables.RequestProfile);

            return(results);
        }
コード例 #10
0
        private System.Data.DataTable GetData()
        {
            // TODO: on all export pages
            var data = new FeatureRuleDataModel();

            var dt = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Search(data, SessionVariables.RequestProfile);

            return(dt);
        }
コード例 #11
0
        private static DataSet GetChildren(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.FeatureRuleChildrenGet " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleId);

            var oDT = new DBDataSet("FeatureRule.GetChildren", sql, DataStoreKey);

            return(oDT.DBDataset);
        }
コード例 #12
0
        public static DataTable DoesExist(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.FeatureRuleSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId) +
                      ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleId) +
                      ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name);

            var oDT = new DBDataTable("FeatureRule.DoesExist", sql, DataStoreKey);

            return(oDT.DBTable);
        }
コード例 #13
0
        private void UpdateData(ArrayList values)
        {
            var data = new FeatureRuleDataModel();

            data.FeatureRuleId         = int.Parse(values[0].ToString());
            data.Name                  = values[1].ToString();
            data.Description           = values[2].ToString();
            data.SortOrder             = int.Parse(values[3].ToString());
            data.FeatureRuleCategoryId = int.Parse(values[4].ToString());
            TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Update(data, SessionVariables.RequestProfile);
            ReBindEditableGrid();
        }
コード例 #14
0
        public static bool IsDeletable(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var isDeletable = true;

            var ds = GetChildren(data, requestProfile);

            if (ds != null && ds.Tables.Count > 0)
            {
                if (ds.Tables.Cast <DataTable>().Any(dt => dt.Rows.Count > 0))
                {
                    isDeletable = false;
                }
            }

            return(isDeletable);
        }
コード例 #15
0
        public static void Delete(FeatureRuleDataModel dataQuery, RequestProfile requestProfile)
        {
            const string sql = @"dbo.FeatureRuleDelete ";

            var parameters =
                new
            {
                AuditId = requestProfile.AuditId
                ,
                FeatureRuleId = dataQuery.FeatureRuleId
            };

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                dataAccess.Connection.Execute(sql, parameters, commandType: CommandType.StoredProcedure);
            }
        }
コード例 #16
0
        public static DataTable Search(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            // formulate SQL
            var sql = "EXEC dbo.FeatureRuleSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId) +
                      ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name) +
                      ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleId) +
                      ", " + ToSQLParameter(data, FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId) +
                      ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Description) +
                      ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.SortOrder);


            var oDT = new DBDataTable("Get List", sql, DataStoreKey);

            return(oDT.DBTable);
        }
コード例 #17
0
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            try
            {
                string[] deleteIndexList = DeleteIds.Split(',');
                foreach (string index in deleteIndexList)
                {
                    var data = new FeatureRuleDataModel();
                    data.FeatureRuleId = int.Parse(index);
                    TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Delete(data, SessionVariables.RequestProfile);
                }

                DeleteAndRedirect();
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }
コード例 #18
0
        public static List <FeatureRuleDataModel> GetEntityDetails(FeatureRuleDataModel dataQuery, RequestProfile requestProfile, int returnAuditInfo = BaseDataManager.ReturnAuditInfoOnDetails)
        {
            const string sql = @"dbo.FeatureRuleSearch ";

            var parameters =
                new
            {
                AuditId         = requestProfile.AuditId
                , ApplicationId = requestProfile.ApplicationId
                , FeatureRuleId = dataQuery.FeatureRuleId
                , Name          = dataQuery.Name
            };

            List <FeatureRuleDataModel> result;

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                result = dataAccess.Connection.Query <FeatureRuleDataModel>(sql, parameters, commandType: CommandType.StoredProcedure).ToList();
            }

            return(result);
        }
コード例 #19
0
        protected override DataTable UpdateData()
        {
            var UpdatedData = new DataTable();
            var data        = new FeatureRuleDataModel();

            UpdatedData = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Search(data, SessionVariables.RequestProfile).Clone();
            for (var i = 0; i < SelectedData.Rows.Count; i++)
            {
                data.FeatureRuleId =
                    Convert.ToInt32(SelectedData.Rows[i][FeatureRuleDataModel.DataColumns.FeatureRuleId].ToString());
                data.Name        = SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Name].ToString();
                data.Description =
                    !string.IsNullOrEmpty(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.Description))
                                        ? CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.Description)
                                        : SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Description].ToString();

                data.SortOrder =
                    !string.IsNullOrEmpty(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.SortOrder))
                                        ? int.Parse(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.SortOrder).ToString())
                                        : int.Parse(SelectedData.Rows[i][StandardDataModel.StandardDataColumns.SortOrder].ToString());

                data.FeatureRuleCategoryId =
                    !string.IsNullOrEmpty(CheckAndGetRepeaterTextBoxValue(FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId))
                                        ? int.Parse(CheckAndGetRepeaterTextBoxValue(FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId).ToString())
                                        : int.Parse(SelectedData.Rows[i][FeatureRuleDataModel.DataColumns.FeatureRuleCategoryId].ToString());

                TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Update(data, SessionVariables.RequestProfile);
                data = new FeatureRuleDataModel();
                data.FeatureRuleId = Convert.ToInt32(SelectedData.Rows[i][FeatureRuleDataModel.DataColumns.FeatureRuleId].ToString());
                var dt = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Search(data, SessionVariables.RequestProfile);

                if (dt.Rows.Count == 1)
                {
                    UpdatedData.ImportRow(dt.Rows[0]);
                }
            }
            return(UpdatedData);
        }
コード例 #20
0
        protected override DataTable GetData()
        {
            try
            {
                SuperKey = ApplicationCommon.GetSuperKey();
                SetId    = ApplicationCommon.GetSetId();

                var selectedrows    = new DataTable();
                var featureRuledata = new FeatureRuleDataModel();

                selectedrows = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.GetDetails(featureRuledata, SessionVariables.RequestProfile).Clone();
                if (!string.IsNullOrEmpty(SuperKey))
                {
                    var systemEntityTypeId = (int)PrimaryEntity;
                    var lstEntityKeys      = ApplicationCommon.GetSuperKeyDetails(systemEntityTypeId, SuperKey);

                    foreach (var entityKey in lstEntityKeys)
                    {
                        featureRuledata.FeatureRuleId = entityKey;
                        var result = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.GetDetails(featureRuledata, SessionVariables.RequestProfile);
                        selectedrows.ImportRow(result.Rows[0]);
                    }
                }
                else if (SetId != 0)
                {
                    featureRuledata.FeatureRuleId = SetId;
                    var result = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.GetDetails(featureRuledata, SessionVariables.RequestProfile);
                    selectedrows.ImportRow(result.Rows[0]);
                }
                return(selectedrows);
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
            return(null);
        }
コード例 #21
0
        public static FeatureRuleDataModel GetDetails(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile);

            return(list.FirstOrDefault());
        }
コード例 #22
0
        public void SetData(FeatureRuleDataModel item)
        {
            SystemKeyId = item.FeatureRuleId;

            base.SetData(item);
        }
コード例 #23
0
 private void ReBindEditableGrid()
 {
     var data          = new FeatureRuleDataModel();
     var dtFeatureRule = TaskTimeTracker.Components.BusinessLayer.Feature.FeatureRuleDataManager.Search(data, SessionVariables.RequestProfile);
 }
コード例 #24
0
        public void SetData(FeatureRuleDataModel data)
        {
            SystemKeyId = data.FeatureRuleId;

            base.SetData(data);
        }
コード例 #25
0
        public static void Update(FeatureRuleDataModel data, RequestProfile requestProfile)
        {
            var sql = CreateOrUpdate(data, requestProfile, "Update");

            DBDML.RunSQL("FeatureRule.Update", sql, DataStoreKey);
        }