예제 #1
0
        public static List <UserLoginStatusDataModel> GetUserLoginStatusList(RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.UserLoginStatusSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, null);

            var result = new List <UserLoginStatusDataModel>();

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

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

                    dataItem.UserLoginStatusId   = (int)dbReader[UserLoginStatusDataModel.DataColumns.UserLoginStatusId];
                    dataItem.UserLoginStatusCode = dbReader[UserLoginStatusDataModel.DataColumns.UserLoginStatusCode].ToString();

                    result.Add(dataItem);
                }
            }

            return(result);
        }
예제 #2
0
        public static void Sync(int newApplicationId, int oldApplicationId, RequestProfile requestProfile)
        {
            // get all records for old Application Id
            var sql = "EXEC dbo.UserLoginStatusSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, oldApplicationId);

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

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

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

            foreach (DataRow dr in oDT.DBTable.Rows)
            {
                var data = new UserLoginStatusDataModel();
                data.ApplicationId = newApplicationId;
                data.Name          = dr[UserLoginStatusDataModel.DataColumns.Name].ToString();

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

                    //create in new application id
                    Create(data, newRequestProfile);
                }
            }
        }
예제 #3
0
        private static string Save(UserLoginStatusDataModel data, RequestProfile requestProfile, string action)
        {
            var sql = "EXEC ";

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

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

            default:
                break;
            }

            sql = sql + ", " + ToSQLParameter(data, UserLoginStatusDataModel.DataColumns.UserLoginStatusId) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Description) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.SortOrder);
            return(sql);
        }
예제 #4
0
        public static DataTable Search(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile, 0);

            var table = list.ToDataTable();

            return(table);
        }
예제 #5
0
        private static DataSet GetChildren(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.UserLoginStatusChildrenGet " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(data, UserLoginStatusDataModel.DataColumns.UserLoginStatusId);

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

            return(oDT.DBDataset);
        }
예제 #6
0
        public static bool DoesExist(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.UserLoginStatusSearch " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId) +
                      ", " + ToSQLParameter(data, UserLoginStatusDataModel.DataColumns.Name);

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

            return(oDT.DBTable.Rows.Count > 0);
        }
예제 #7
0
        public static void Delete(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            const string sql = @"dbo.UserLoginStatusDelete ";

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

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                dataAccess.Connection.Execute(sql, parameters, commandType: CommandType.StoredProcedure);
            }
        }
예제 #8
0
        public static bool IsDeletable(UserLoginStatusDataModel 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);
        }
예제 #9
0
        public static UserLoginStatusDataModel MapToUserLoginStatusRecord(BsonDocument obj)
        {
            var userLoginStatus = new UserLoginStatusDataModel();

            try
            {
                userLoginStatus.ApplicationId = obj["ApplicationId"].AsInt32;
                userLoginStatus.Name          = obj["Name"].AsString;
                userLoginStatus.Description   = obj["Description"].AsString;
                userLoginStatus.SortOrder     = obj["SortOrder"].AsInt32;

                try
                {
                    userLoginStatus.UserLoginStatusId = int.Parse(obj["_id"].ToString());
                }
                catch { }
            }
            catch { }

            return(userLoginStatus);
        }
예제 #10
0
        //public static List<UserLoginDataModel> GetEntityDetails(UserLoginDataModel data, RequestProfile requestProfile)
        //{
        //	var sql = "EXEC dbo.UserLoginSearch " +
        //		 " "  + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
        //		 ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId) +
        //		 ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ReturnAuditInfo, BaseDataManager.ReturnAuditInfoOnDetails) +
        //		 ", " + ToSQLParameter(data, UserLoginDataModel.DataColumns.UserLoginId) +
        //		 ", " + ToSQLParameter(data, UserLoginDataModel.DataColumns.UserLoginStatusId) +
        //		 ", " + ToSQLParameter(data, UserLoginDataModel.DataColumns.UserName) +
        //		 ", " + ToSQLParameter(data, UserLoginDataModel.DataColumns.RecordDate) +
        //		 ", " + ToSQLParameter(data, UserLoginDataModel.DataColumns.RecordDate2);

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

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

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

        //			dataItem.UserLoginId = (int)dbReader[UserLoginDataModel.DataColumns.UserLoginId];
        //			dataItem.UserLoginStatusId = (int)dbReader[UserLoginDataModel.DataColumns.UserLoginStatusId];
        //			dataItem.UserName = dbReader[UserLoginDataModel.DataColumns.UserName].ToString();
        //			dataItem.UserLoginStatus = dbReader[UserLoginDataModel.DataColumns.UserLoginStatus].ToString();
        //			dataItem.RecordDate = (int)dbReader[UserLoginDataModel.DataColumns.RecordDate];

        //			SetBaseInfo(dataItem, dbReader);

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

        //	return result;
        //}

        #endregion

        #region Create

        public static void Create(UserLoginDataModel data, RequestProfile requestProfile)
        {
            if (data.UserLoginStatusId == null && !string.IsNullOrEmpty(data.UserLoginStatus))
            {
                var dataStatus = new UserLoginStatusDataModel();
                dataStatus.Name = data.UserLoginStatus;

                var dt = UserLoginStatusDataManager.Search(dataStatus, requestProfile);

                if (dt.Rows.Count > 0)
                {
                    data.UserLoginStatusId = Convert.ToInt32(dt.Rows[0][UserLoginDataModel.DataColumns.UserLoginStatusId]);
                }
            }

            var sql = Save(data, requestProfile, "Create");

            DBDML.RunSQL("UserLogin.Insert", sql, DataStoreKey);

            Framework.Components.LogAndTrace.UserLoginMongoDbDataManager.Create(data, requestProfile);
        }
예제 #11
0
        public static List <UserLoginStatusDataModel> GetEntityDetails(UserLoginStatusDataModel dataQuery, RequestProfile requestProfile, int applicationModeId = 0)
        {
            const string sql = @"dbo.UserLoginStatusSearch ";

            var parameters =
                new
            {
                AuditId             = requestProfile.AuditId
                , UserLoginStatusId = dataQuery.UserLoginStatusId
                , Name            = dataQuery.Name
                , ReturnAuditInfo = ReturnAuditInfoOnDetails
            };

            List <UserLoginStatusDataModel> result;

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

            return(result);
        }
예제 #12
0
        public static List <UserLoginStatusDataModel> GetList(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var resultList          = new List <UserLoginStatusDataModel>();
            var statusData          = database.GetCollection <BsonDocument>("UserLoginStatus");
            var listUserLoginStatus = new List <BsonDocument>();

            var builder = Builders <BsonDocument> .Filter;

            if (string.IsNullOrEmpty(data.Name) && string.IsNullOrEmpty(data.ApplicationId.ToString()))
            {
                resultList = GetList();
            }
            else
            {
                if (!string.IsNullOrEmpty(data.Name) && !string.IsNullOrEmpty(data.ApplicationId.ToString()))
                {
                    var filter = builder.Eq(UserLoginStatusDataModel.DataColumns.Name, data.Name) &
                                 builder.Eq(UserLoginStatusDataModel.DataColumns.ApplicationId, data.ApplicationId);

                    listUserLoginStatus = statusData.Find(filter).ToListAsync().Result;
                }
                else if (!string.IsNullOrEmpty(data.Name) || !string.IsNullOrEmpty(data.ApplicationId.ToString()))
                {
                    var filter = builder.Eq(UserLoginStatusDataModel.DataColumns.Name, data.Name) |
                                 builder.Eq(UserLoginStatusDataModel.DataColumns.ApplicationId, data.ApplicationId);
                    listUserLoginStatus = statusData.Find(filter).ToListAsync().Result;
                }

                if (listUserLoginStatus != null)
                {
                    foreach (BsonDocument obj in listUserLoginStatus) // Loop thru all Bson documents returned from the query.
                    {
                        resultList.Add(UserLoginStatusMongoDbDataManager.MapToUserLoginStatusRecord(obj));
                    }
                }
            }
            return(resultList);
        }
예제 #13
0
        public static string ToSQLParameter(UserLoginStatusDataModel data, string dataColumnName)
        {
            var returnValue = "NULL";

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

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

            return(returnValue);
        }
예제 #14
0
        public static UserLoginStatusDataModel GetDetails(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile, 1);

            return(list.FirstOrDefault());
        }
예제 #15
0
        public static void Update(UserLoginStatusDataModel data, RequestProfile requestProfile)
        {
            var sql = Save(data, requestProfile, "Update");

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