示例#1
0
        //public static DataSet ReleaseNotesSearch(ReleaseLogDataModel data, RequestProfile requestProfile)
        //{
        //    // formulate SQL
        //    var sql = "EXEC dbo.ReleaseNotesSearch" +
        //        " " + ToSQLParameter(BaseModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
        //        ", " + ToSQLParameter(BaseModel.BaseDataColumns.ApplicationId, ApplicationId) +

        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.Feature) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.PrimaryDeveloper) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.PrimaryEntity) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseIssueTypeId) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleasePublishCategoryId) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseDateMax) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseDateMin) +
        //        ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.JIRA);

        //    var oDS = new DataAccess.DBDataSet("ReleaseLog.ReleaseNotesSearch", sql, DataStoreKey);
        //    return oDS.DBDataset;
        //}

        #endregion

        #region Save

        private static string Save(ReleaseLogDataModel data, RequestProfile requestProfile, string action)
        {
            var sql = "EXEC ";

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

            case "Update":
                sql += "dbo.ReleaseLogUpdate  " +
                       " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId);
                break;

            default:
                break;
            }

            sql = sql + ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseLogId) +
                  ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseLogStatusId) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Description) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.SortOrder) +
                  ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.VersionNo) +
                  ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseDate) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name);

            return(sql);
        }
示例#2
0
        public static List <ReleaseLogDataModel> GetEntityDetails(ReleaseLogDataModel dataQuery, RequestProfile requestProfile, int returnAuditInfo = BaseDataManager.ReturnAuditInfoOnDetails)
        {
            const string sql = @"dbo.ReleaseLogSearch ";

            var parameters =
                new
            {
                AuditId              = requestProfile.AuditId
                , ApplicationId      = requestProfile.ApplicationId
                , ReleaseLogId       = dataQuery.ReleaseLogId
                , ReleaseLogStatusId = dataQuery.ReleaseLogStatusId
                , ReleaseDateMin     = dataQuery.ReleaseDateMin
                , ReleaseDateMax     = dataQuery.ReleaseDateMax
                , Name            = dataQuery.Name
                , ApplicationMode = requestProfile.ApplicationModeId
                , ReturnAuditInfo = returnAuditInfo
            };

            List <ReleaseLogDataModel> result;

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

            return(result);
        }
示例#3
0
        public override int?Save(string action)
        {
            var data = new ReleaseLogDataModel();

            data.ReleaseLogId       = ReleaseLogId;
            data.ApplicationId      = ApplicationId;
            data.ReleaseLogStatusId = ReleaseLogStatusId;
            data.Name        = Name;
            data.ReleaseDate = ReleaseDate;
            data.Description = Description;
            data.SortOrder   = SortOrder;
            data.VersionNo   = VersionNo;

            if (action == "Insert")
            {
                Framework.Components.ReleaseLog.ReleaseLogDataManager.Create(data, AuditId);
            }
            else
            {
                Framework.Components.ReleaseLog.ReleaseLogDataManager.Update(data, AuditId);
            }

            // not correct ... when doing insert, we didn't get/change the value of ReleaseLogID ?
            return(ReleaseLogId);
        }
示例#4
0
        protected override void ShowData(int releaseLogId)
        {
            base.ShowData(releaseLogId);

            oDetailButtonPanel.SetId = SetId;

            Clear();

            var data = new ReleaseLogDataModel();

            data.ReleaseLogId = releaseLogId;

            var items = Framework.Components.ReleaseLog.ReleaseLogDataManager.GetEntityDetails(data, AuditId);

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

                lblReleaseLogId.Text     = item.ReleaseLogId.ToString();
                lblApplicationId.Text    = item.Application.ToString();
                lblReleaseDate.Text      = item.ReleaseDate.Value.ToString(SessionVariables.UserDateFormat);
                lblReleaseLogStatus.Text = item.ReleaseLogStatus.ToString();
                lblVersionNo.Text        = item.VersionNo.ToString();
                lblName.Text             = item.Name;
                lblDescription.Text      = item.Description;
                lblSortOrder.Text        = item.SortOrder.ToString();

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

                oHistoryList.Setup(PrimaryEntity, releaseLogId, "ReleaseLog");
            }
        }
示例#5
0
        public static List <ReleaseLogDataModel> GetReleaseLogList(RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.ReleaseLogSearch" +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId);

            var result = new List <ReleaseLogDataModel>();

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

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

                    dataItem.ReleaseLogId     = (int?)dbReader[ReleaseLogDataModel.DataColumns.ReleaseLogId];
                    dataItem.ApplicationId    = (int?)dbReader[BaseDataModel.BaseDataColumns.ApplicationId];
                    dataItem.ReleaseLogStatus = (string)dbReader[ReleaseLogDataModel.DataColumns.ReleaseLogStatus];
                    dataItem.VersionNo        = (string)dbReader[ReleaseLogDataModel.DataColumns.VersionNo];
                    dataItem.ReleaseDate      = (DateTime?)dbReader[ReleaseLogDataModel.DataColumns.ReleaseDate];

                    SetStandardInfo(dataItem, dbReader);

                    result.Add(dataItem);
                }
            }

            return(result);
        }
示例#6
0
        public static DataTable Search(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile, 0);

            var table = list.ToDataTable();

            return(table);
        }
示例#7
0
        public static DataTable DoesExist(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var doesExistRequest = new ReleaseLogDataModel();

            doesExistRequest.Name = data.Name;

            return(Search(doesExistRequest, requestProfile));
        }
示例#8
0
        private System.Data.DataTable GetData()
        {
            // TODO: on all export pages
            var data = new ReleaseLogDataModel();

            var dt = Framework.Components.ReleaseLog.ReleaseLogDataManager.Search(data, AuditId);

            return(dt);
        }
示例#9
0
        public static DataSet GetChildren(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.ReleaseLogChildrenGet " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(data, ReleaseLogDataModel.DataColumns.ReleaseLogId);

            var oDT = new DBDataSet("Get Children", sql, DataStoreKey);

            return(oDT.DBDataset);
        }
示例#10
0
        private DataTable GetData(string name)
        {
            var data = new ReleaseLogDataModel();

            data.Name = name;

            var dt = Framework.Components.ReleaseLog.ReleaseLogDataManager.Search(data, AuditId);

            return(dt);
        }
示例#11
0
        public static bool DoesExist(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var doesExistRequest = new ReleaseLogDataModel();

            doesExistRequest.Name = data.Name;

            var list = GetEntityDetails(doesExistRequest, requestProfile, 0);

            return(list.Count > 0);
        }
示例#12
0
        protected void InsertData()
        {
            var data    = new ReleaseLogDataModel();
            var AuditId = SessionVariables.RequestProfile.AuditId;

            data.ReleaseLogId = myGenericControl.ReleaseLogId;
            data.Name         = myGenericControl.Name;
            data.VersionNo    = myGenericControl.VersionNo;
            data.ReleaseDate  = DateTime.Parse(myGenericControl.ReleaseDate);
            data.Description  = myGenericControl.Description;
            data.SortOrder    = myGenericControl.SortOrder;

            Framework.Components.ReleaseLog.ReleaseLogDataManager.Create(data, SessionVariables.RequestProfile);
        }
示例#13
0
        protected override void Clear()
        {
            base.Clear();

            var data = new ReleaseLogDataModel();

            ReleaseLogId       = data.ReleaseLogId;
            ApplicationId      = data.ApplicationId;
            ReleaseLogStatusId = data.ReleaseLogStatusId;
            ReleaseDate        = data.ReleaseDate;
            VersionNo          = data.VersionNo;
            Description        = data.Description;
            Name      = data.Name;
            SortOrder = data.SortOrder;
        }
示例#14
0
        public static void Delete(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            const string sql = @"dbo.ReleaseLogDelete ";

            var parameters = new
            {
                AuditId        = requestProfile.AuditId
                , ReleaseLogId = data.ReleaseLogId
            };

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                dataAccess.Connection.Execute(sql, parameters, commandType: CommandType.StoredProcedure);
            }
        }
示例#15
0
        public void LoadData(int releaseLogId, bool showId)
        {
            // clear UI
            Clear();

            // set up parameters
            var data = new ReleaseLogDataModel();

            data.ReleaseLogId = releaseLogId;

            // get data
            var items = Framework.Components.ReleaseLog.ReleaseLogDataManager.GetEntityDetails(data, AuditId);

            // should only have single match -- should log exception.
            if (items.Count != 1)
            {
                return;
            }

            var item = items[0];

            ReleaseLogId       = item.ReleaseLogId;
            ApplicationId      = item.ApplicationId;
            ReleaseLogStatusId = item.ReleaseLogStatusId;
            ReleaseDate        = item.ReleaseDate;
            VersionNo          = item.VersionNo;
            Name        = item.Name;
            Description = item.Description;
            SortOrder   = item.SortOrder;

            if (!showId)
            {
                txtReleaseLogId.Text = item.ReleaseLogId.ToString();

                //PlaceHolderAuditHistory.Visible = true;
                // only show Audit History in case of Update page, not for Clone.
                oHistoryList.Setup(PrimaryEntity, releaseLogId, PrimaryEntityKey);
            }
            else
            {
                txtReleaseLogId.Text = String.Empty;
            }

            oUpdateInfo.LoadText(item.UpdatedDate, item.UpdatedBy, item.LastAction);
        }
示例#16
0
 protected void btnDelete_Click(object sender, EventArgs e)
 {
     try
     {
         var      notDeletableIds = new List <int>();
         string[] deleteIndexList = DeleteIds.Split(',');
         foreach (string index in deleteIndexList)
         {
             var data = new ReleaseLogDataModel();
             data.ReleaseLogId = int.Parse(index);
             if (!Framework.Components.ReleaseLog.ReleaseLogDataManager.IsDeletable(data, SessionVariables.AuditId))
             {
                 notDeletableIds.Add(Convert.ToInt32(data.ReleaseLogId));
             }
         }
         if (notDeletableIds.Count == 0)
         {
             foreach (string index in deleteIndexList)
             {
                 var data = new ReleaseLogDataModel();
                 data.ReleaseLogId = int.Parse(index);
                 Framework.Components.ReleaseLog.ReleaseLogDataManager.Delete(data, SessionVariables.AuditId);
             }
             Framework.Components.Audit.AuditHistoryDataManager.DeleteDataBySystemEntity(DeleteIds, (int)Framework.Components.DataAccess.SystemEntity.ReleaseLog, AuditId);
             Response.Redirect(Page.GetRouteUrl("ReleaseLogEntityRoute", new { Action = "Default", SetId = true }), false);
         }
         else
         {
             var msg = String.Empty;
             foreach (var id in notDeletableIds)
             {
                 if (!string.IsNullOrEmpty(msg))
                 {
                     msg += ", <br/>";
                 }
                 msg += "ReleaseLogId: " + id + " has detail records";
             }
             Response.Write(msg);
         }
     }
     catch (Exception ex)
     {
         Response.Write(ex.Message);
     }
 }
示例#17
0
        public static bool IsDeletable(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var isDeletable = true;
            var ds          = GetChildren(data, requestProfile);

            if (ds != null && ds.Tables.Count > 0)
            {
                foreach (DataTable dt in ds.Tables)
                {
                    if (dt.Rows.Count > 0)
                    {
                        isDeletable = false;
                        break;
                    }
                }
            }
            return(isDeletable);
        }
示例#18
0
        public void EnableDropDown()
        {
            var data = new ReleaseLogDataModel();

            data.ReleaseLogId = ReleaseLogId;
            var dt = Framework.Components.ReleaseLog.ReleaseLogDataManager.GetChildren(data, AuditId);

            if (dt.Tables.Count > 0)
            {
                foreach (DataTable dr in dt.Tables)
                {
                    if (dr.Rows.Count > 0)
                    {
                        drpApplicationIdList.Enabled = false;
                        txtApplicationId.Enabled     = false;
                    }
                }
            }
        }
示例#19
0
        public static void Sync(int newApplicationId, int oldApplicationId, RequestProfile requestProfile)
        {
            // get all records for old Application Id
            var sql = "EXEC dbo.ReleaseLogSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, oldApplicationId);

            var oDT = new DBDataTable("ReleaseLog.Search", sql, DataStoreKey);

            // formaulate a new request Profile which will have new Applicationid
            var newRequestProfile = new RequestProfile();

            newRequestProfile.ApplicationId = newApplicationId;
            newRequestProfile.AuditId       = requestProfile.AuditId;

            var releaseLogStatusData = new ReleaseLogStatusDataModel();
            var releaseLogStatusList = ReleaseLogStatusDataManager.GetEntityDetails(releaseLogStatusData, newRequestProfile, 0);

            foreach (DataRow dr in oDT.DBTable.Rows)
            {
                var fcModeName = dr[ReleaseLogDataModel.DataColumns.ReleaseLogStatus].ToString();

                //get new release log status id based on release log status name
                var newReleaseLogStatusId = releaseLogStatusList.Find(x => x.Name == fcModeName).ReleaseLogStatusId;

                var data = new ReleaseLogDataModel();
                data.ApplicationId      = newApplicationId;
                data.Name               = dr[ReleaseLogDataModel.DataColumns.Name].ToString();
                data.ReleaseLogStatusId = newReleaseLogStatusId;

                // check for existing record in new Application Id
                if (!DoesExist(data, newRequestProfile))
                {
                    data.VersionNo   = dr[ReleaseLogDataModel.DataColumns.VersionNo].ToString();
                    data.ReleaseDate = Convert.ToDateTime(dr[ReleaseLogDataModel.DataColumns.ReleaseDate]);
                    data.Description = dr[ReleaseLogDataModel.DataColumns.Description].ToString();
                    data.SortOrder   = Convert.ToInt32(dr[ReleaseLogDataModel.DataColumns.SortOrder]);

                    //create in new application id
                    Create(data, newRequestProfile);
                }
            }
        }
示例#20
0
        public void LoadData(int ReleaseLogId, bool showId)
        {
            var data    = new ReleaseLogDataModel();
            var AuditId = SessionVariables.RequestProfile.AuditId;

            data.ReleaseLogId = ReleaseLogId;
            var oReleaseLogTable = Framework.Components.ReleaseLog.ReleaseLogDataManager.GetDetails(data, SessionVariables.RequestProfile);

            if (oReleaseLogTable.Rows.Count == 1)
            {
                var row = oReleaseLogTable.Rows[0];

                if (!showId)
                {
                    txtReleaseLogId.Text = Convert.ToString(row["ReleaseLogId"]);
                }
                else
                {
                    txtReleaseLogId.Text = String.Empty;
                }

                txtDescription.Text = Convert.ToString(row["Description"]);
                txtName.Text        = Convert.ToString(row["Name"]);
                txtDescription.Text = Convert.ToString(row["VersionNo"]);
                txtName.Text        = Convert.ToString(row["ReleaseDate"]);
                txtSortOrder.Text   = Convert.ToString(row["SortOrder"]);
            }
            else
            {
                txtReleaseLogId.Text = String.Empty;
                txtReleaseDate.Text  = String.Empty;
                txtVersionNo.Text    = String.Empty;
                txtDescription.Text  = String.Empty;
                txtName.Text         = String.Empty;
                txtSortOrder.Text    = String.Empty;
            }
        }
示例#21
0
        public static void Update(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var sql = Save(data, requestProfile, "Update");

            DBDML.RunSQL("ReleaseLog.Update", sql, DataStoreKey);
        }
示例#22
0
        public static string ToSQLParameter(ReleaseLogDataModel data, string dataColumnName)
        {
            var returnValue = "NULL";

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

            case BaseDataModel.BaseDataColumns.ApplicationId:
                if (data.ApplicationId != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NUMBER, BaseDataModel.BaseDataColumns.ApplicationId, data.ApplicationId);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, BaseDataModel.BaseDataColumns.ApplicationId);
                }
                break;

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

            case ReleaseLogDataModel.DataColumns.ReleaseDateMax:
                if (data.ReleaseDateMax != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_STRING_OR_DATE, ReleaseLogDataModel.DataColumns.ReleaseDateMax, data.ReleaseDateMax);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, ReleaseLogDataModel.DataColumns.ReleaseDateMax);
                }
                break;

            case ReleaseLogDataModel.DataColumns.ReleaseDateMin:
                if (data.ReleaseDateMin != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_STRING_OR_DATE, ReleaseLogDataModel.DataColumns.ReleaseDateMin, data.ReleaseDateMin);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, ReleaseLogDataModel.DataColumns.ReleaseDateMin);
                }
                break;

            case ReleaseLogDataModel.DataColumns.ReleaseDate:
                if (data.ReleaseDate != null)
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_STRING_OR_DATE, ReleaseLogDataModel.DataColumns.ReleaseDate, data.ReleaseDate);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, ReleaseLogDataModel.DataColumns.ReleaseDate);
                }
                break;

            case ReleaseLogDataModel.DataColumns.VersionNo:
                if (!string.IsNullOrEmpty(data.VersionNo))
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_STRING_OR_DATE, ReleaseLogDataModel.DataColumns.VersionNo, data.VersionNo);
                }
                else
                {
                    returnValue = string.Format(SQL_TEMPLATE_PARAMETER_NULL, ReleaseLogDataModel.DataColumns.VersionNo);
                }
                break;

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

            return(returnValue);
        }
示例#23
0
        public static ReleaseLogDataModel GetDetails(ReleaseLogDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile, 1);

            return(list.FirstOrDefault());
        }