예제 #1
0
        public static int Create(RegionDataModel data, RequestProfile requestProfile)
        {
            var sql   = Save(data, "Create", requestProfile);
            var newId = DBDML.RunScalarSQL("Region.Insert", sql, DataStoreKey);

            return(Convert.ToInt32(newId));
        }
예제 #2
0
        public void Delete(string value)
        {
            var dataQuery = new RegionDataModel();

            dataQuery.RegionId = int.Parse(value);
            RegionDataManager.Delete(dataQuery, SessionVariables.RequestProfile);
        }
예제 #3
0
        public static string Save(RegionDataModel data, string action, RequestProfile requestProfile)
        {
            var sql = "EXEC ";


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

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

            default:
                break;
            }
            sql = sql + ", " + ToSQLParameter(data, RegionDataModel.DataColumns.RegionId);
            sql = sql + ", " + ToSQLParameter(data, RegionDataModel.DataColumns.CountryId);
            sql = sql + ", " + ToSQLParameter(data, RegionDataModel.DataColumns.Name);
            sql = sql + ", " + ToSQLParameter(data, RegionDataModel.DataColumns.Description);
            sql = sql + ", " + ToSQLParameter(data, RegionDataModel.DataColumns.SortOrder);

            return(sql);
        }
예제 #4
0
        public MapsData(MySqlConnection connection)
        {
            using (var command = connection.CreateCommand())
            {
                command.CommandText = "SELECT * FROM `data_maps`";
                command.Prepare();
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var map = new MapDataModel
                        {
                            Id      = reader.GetUInt16("id"),
                            Name    = reader.GetString("name"),
                            X1      = reader.GetUInt16("x1"),
                            Y1      = reader.GetUInt16("y1"),
                            X2      = reader.GetUInt16("x2"),
                            Y2      = reader.GetUInt16("y2"),
                            Unk1    = reader.GetUInt16("unk1"),
                            Unk2    = reader.GetUInt16("unk2"),
                            Unk3    = reader.GetUInt16("unk3"),
                            Unk4    = reader.GetUInt16("unk4"),
                            Regions = new Dictionary <ushort, RegionDataModel>()
                        };

                        Objects.Add(map.Id, map);
                    }
                }
            }

            using (var command = connection.CreateCommand())
            {
                command.CommandText = "SELECT * FROM `data_map_regions`";
                command.Prepare();
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var mapId = reader.GetUInt16("map_id");
                        if (!Objects.ContainsKey(mapId))
                        {
                            continue;
                        }

                        var id     = reader.GetUInt16("id");
                        var region = new RegionDataModel
                        {
                            TpX      = reader.GetUInt32("x"),
                            TpY      = reader.GetUInt32("y"),
                            Location = reader.GetUInt16("location"),
                            TpLevel  = (TpLevel)reader.GetUInt16("tp_level"),
                            Unk      = reader.GetUInt16("unk1"),
                            Name     = reader.GetString("region_name")
                        };
                        Objects[mapId].Regions.Add(id, region);
                    }
                }
            }
        }
예제 #5
0
        public RegionDataModel GetById(string value)
        {
            var dataQuery = new RegionDataModel();

            dataQuery.RegionId = int.Parse(value);
            var result = RegionDataManager.GetEntityDetails(dataQuery, SessionVariables.RequestProfile, 1);

            return(result[0]);
        }
예제 #6
0
        public async Task <IActionResult> VerifyRegionExistsAsync(string regionName)
        {
            RegionDataModel result = await _Context.Region.FindAsync(regionName);

            if (result == null)
            {
                return(Json($"Region \"{regionName}\" does not exist, enter a valid one."));
            }

            return(Json(true));
        }
예제 #7
0
        public static bool DoesExist(RegionDataModel data, RequestProfile requestProfile)
        {
            var doesExistRequest = new RegionDataModel();

            doesExistRequest.ApplicationId = data.ApplicationId;
            doesExistRequest.CountryId     = data.CountryId;
            doesExistRequest.Name          = data.Name;

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

            return(list.Count > 0);
        }
예제 #8
0
        public static void Delete(RegionDataModel data, RequestProfile requestProfile)
        {
            const string sql = @"dbo.RegionDelete ";

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

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                dataAccess.Connection.Execute(sql, parameters, commandType: CommandType.StoredProcedure);
            }
        }
예제 #9
0
        public static List <RegionDataModel> GetEntityDetails(RegionDataModel dataQuery, RequestProfile requestProfile, int returnAuditInfo = BaseDataManager.ReturnAuditInfoOnDetails)
        {
            const string sql = @"dbo.RegionSearch ";

            var parameters =
                new
            {
                AuditId           = requestProfile.AuditId
                , ApplicationId   = requestProfile.ApplicationId
                , ReturnAuditInfo = returnAuditInfo
                , RegionId        = dataQuery.RegionId
                , CountryId       = dataQuery.CountryId
                , Name            = dataQuery.Name
            };

            List <RegionDataModel> result;

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

            return(result);
        }
예제 #10
0
 public void Update([FromBody] RegionDataModel data)
 {
     RegionDataManager.Update(data, SessionVariables.RequestProfile);
 }
예제 #11
0
        public static string ToSQLParameter(RegionDataModel data, string dataColumnName)
        {
            var returnValue = "NULL";

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

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

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

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

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

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


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

            return(returnValue);
        }
예제 #12
0
        public static void Update(RegionDataModel data, RequestProfile requestProfile)
        {
            var sql = Save(data, "Update", requestProfile);

            DBDML.RunSQL("Region.Update", sql, DataStoreKey);
        }
예제 #13
0
        public static DataTable Search(RegionDataModel data, RequestProfile requestProfile)
        {
            var list = GetEntityDetails(data, requestProfile, 0);

            return(list.ToDataTable());
        }