Показано с 1 по 3 из 3

Тема: Доработка Game Keeper. Учет заправляемых тикетов в аппарат.

  1. #1
    Разбирающийся Аватар для NeiroN
    Регистрация
    30.01.2015
    Адрес
    Ижевск
    Сообщений
    119
    Поблагодарил(а)
    0
    Благодарностей: 5 (сообщений: 3)

    Доработка Game Keeper. Учет заправляемых тикетов в аппарат.

    Здравствуйте коллеги. Сидел я тут сидел, позвали меня помочь - заправить тикеты в аппараты и у меня возникла идея: Учитывать заправляемые тикеты через базу Game Keeper.

    Так как я парень умный написать весь софт это 15 минут(когда знаешь что писать), а у меня возникли вопросы как лучше сделать учет через отдельную таблицу или через таблицу транзакций Game Keeper? И какое поле в таблице аппаратов лучше использовать(типа int вполне достаточно)?

    Также думаю вести учет выданных тикетов - у каждого аппарата сделать поле или использовать существующее - которое будет отражать количество тикетов в аппарате. Операции выдачи будут его уменьшать, а операции заправки - увеличивать.

    Так можно будет знать: сколько тикетов в аппарате, нужно ли его заправлять, сколько тикетов во всех аппаратах, как часто заправляют тот или иной аппарат, вести строгий учет тикетов без бумажного журнала, отчитываться перед начальством от трате тикетов.

    Сдалаю это через вебинтерфейс - у всех есть телефоны - и когда заправляешь надо будет выбрать аппарат из списка и ввести начальный номер и конечный номер пачки(количество рассчитается автоматически).
    Также можно сделать операцию изьятия тикетов из аппарата - для оооочень строгой отчетности.

    Тут привожу структуру таблицы аппаратов и мои догадки по назначению полей(непонятные поля отмечены кодом "хз"):
    Код:
    CREATE TABLE [gk].[MACHINES](    [MACHINE] [int] NOT NULL,         --Номер аппарата
         CODE [char](10) NOT NULL,      --Поле код
        [NAME] [varchar](50) NOT NULL, --Имя
        [INFO] [varchar](250) NULL,       --Информация
        [ADDRTYPE] [int] NULL,             --Тип адреса -- зачем хз
        [ADDR0] [int] NOT NULL,           --Адрес
        [ADDR1] [int] NOT NULL,           --Адрес
        [DEVCLASS] [int] NULL,             --Класс устройства
        [DEVCONFIG] [int] NULL,            --Конфигурация
        [CATEGORY] [int] NOT NULL,      --Категория
        [LOCATION] [int] NULL,             --Ид центра
        [ZONE] [int] NULL,                   --Ид зоны
        [STATUS] [int] NOT NULL,          --Статус
        [IMAGE] [text] NULL,                --хз зачем
        [ONLINESTATUS] [int] NOT NULL, -- тоже хз
        [LASTGAMESTART] [datetime] NULL, --последний запуск
        [LASTCARDREAD] [datetime] NULL,  --последнее чтение
        [USAGE] [int] NULL,                       --похоже что приминение как турникет или тикетстейшен.
        [POSX] [int] NULL,                         --Положение на карте?
        [POSY] [int] NULL,                         --
        [INTPARAM0] [int] NULL,                -- Заменяет конфиг устройства?
        [INTPARAM1] [int] NULL,                --
        [Delay] [int] NOT NULL,                 -- Задержка
        [WorkStartDate] [smalldatetime] NULL, --  начало работы
        [PrimeCost] [money] NOT NULL,           -- стоимость
        [Account] [int] NULL,                           -- Последняя карта игравшая на аппарате
        [Barcode] [varchar](20) NULL,              -- Штрихкод для призов
        [PriceTickets] [money] NOT NULL,         -- Цена в тикетах для призов
        [PriceMoney] [money] NOT NULL,          -- Цена в рублях
        [IncInPkg] [bit] NOT NULL,                   -- включать в пакеты
        [TreeRef] [int] NULL,                           -- родитель в дереве
        [GamePrice] [money] NULL,                 -- цена игры
        [Pass] [int] NULL,                               -------------------------------------------------ЭТО ВООБЩЕ ХЗ 
        [MO] [bit] NOT NULL,                          -- опять хз
        [LESSOR] [int] NULL,                           -- тоже хз
        [RENTAL_RATE] [int] NOT NULL,             -- для аренды ставка?
        [Subscription] [int] NULL,                     -- для учета подписок?
        [GUID] [uniqueidentifier] NOT NULL,
        [TRANSACT_GUID] [uniqueidentifier] NOT NULL,
        [Area] [decimal](9, 2) NULL,                 -- хз
        [VideoCode] [int] NULL,                        -- для видеонаблюдения
        [Serial_No] [varchar](20) NULL,             -- для инвентаризации
        [Inventory_No] [varchar](20) NULL,        -- 
     CONSTRAINT [PK_MACHINES] PRIMARY KEY CLUSTERED 
    (
        [MACHINE] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

  2. #2
    Разбирающийся
    Регистрация
    18.10.2012
    Адрес
    Новосибирск, Омск
    Сообщений
    5,362
    Поблагодарил(а)
    188
    Благодарностей: 461 (сообщений: 364)
    Я бы в отдельной таблице хранил.
    Первоначально работы больше (триггер при внесении новых аппаратов сделать, например) но потом только плюсы:
    - Не зависим от текущей версии/будущих апгрейдов
    - Никаких претензий со стороны UCS
    - Возможность дополнить/изменить структуру

    Только вот счетчики тикетов далеко не у многих стоят...
    Ильин Александр, Компания "Соттос"
    г Новосибирск +7 (383) 373-96-98; +7 (909) 533-93-92; nsk@sottos.ru
    г Омск +7 (3812) 377-902; +7 (905) 098-92-06; abc@sottos.ru
    www.sottos.ru | vk.com/sottos | fb.com/sottosru
    Продажа и установка ПО R-Keeper, обучение, техническая поддержка 24/7

  3. #3
    Разбирающийся Аватар для NeiroN
    Регистрация
    30.01.2015
    Адрес
    Ижевск
    Сообщений
    119
    Поблагодарил(а)
    0
    Благодарностей: 5 (сообщений: 3)
    Счетчики у меня самого не везде подключенны - потому что число механических счетчиков не совпадает с числом контроллеров. Пока было лень решать этот вопрос, но думаю надо заняться.

    Думаю поэксперементировать с полем PriceTickets - у игровых аппаратов оно не задействованно. Добавлю две новых активности - "Заправка тикетов в аппарат" и "Изъятие тикетов из аппарата". Добавлю тригеры на операции выдачи тикетов, заправки и изъятия.

    Отдельная таблица в каком то плане лучше, а в каком то хуже.
    Последний раз редактировалось NeiroN; 03.09.2016 в 10:54.

Похожие темы

  1. Интеграция UDS Game с R-Keeper V7
    от apollon476 в разделе R-Keeper 7 и Shouse 4
    Ответов: 10
    Последнее сообщение: 25.12.2017, 05:56
  2. Game-keeper комплект
    от Alek в разделе БАРАХОЛКА
    Ответов: 0
    Последнее сообщение: 19.07.2016, 13:27
  3. Интеграция CRM с Game-Keeper, R-keeper и Премьерой.
    от BSA в разделе Персональная Дисконтная Система (ПДС)
    Ответов: 1
    Последнее сообщение: 30.06.2016, 15:12
  4. Обновления Game Keeper
    от the-searcher в разделе GameKeeper
    Ответов: 2
    Последнее сообщение: 22.11.2014, 13:50
  5. Мануал по Game-Keeper 3
    от Anubis в разделе GameKeeper
    Ответов: 3
    Последнее сообщение: 04.11.2012, 21:00

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •