• Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    А мероприятие организует оргкомитет, у которого есть свой собственный ID, и без разницы, организует он 1 ивент или 100


    Оргкомитет тоже сделается, только в оргкомитет входит организатор, ведущий, счётчик, регистрация и так далее. Поэтому для них будет отдельная таблица.

    email и ИИН нужны не для мероприятий, а для участников мероприятия. А иметь мероприятия где каждый участник уникален и не посещал прошлые/не станет посещать будущие, это бред.


    Я об этом не говорил. Как раз таки это не так. Вы просто не поняли) Говорю лишь о том, что нельзя по email и ИИН посчитать количество участников в разные дни мероприятия ID = 1 и ID = 2. Так как по этим данным email и ИИН организатор может организовать другое мероприятие с ID = 3, поэтому и предложил GROUP_ID
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    что-то я не до кона понял зачем ваш gourp_id, вы хотите сделать 2 мероприятия, и что-бы пользователи одновременно регались на оба?


    Нет. Пользователи в любом случае могут регистрироваться в оба. gourp_id нужен для того, чтобы посчитать статистику и выводить общее количество человек, финансов ВСЕГО мероприятия.

    Объясняю. Мероприятие "Всероссийский фестиваль Искусств «Буратино»" проводится 30 октября 2019 года и 5 ноября 2019 года. Так как мероприятие идет в два разных дня, то даты проведения нельзя поставить 30 октября - 5 ноября 2019 года. Но это одно и тоже мероприятие, просто разделено на два дня. И, чтобы нам вести общую статистику мы вводим gourp_id. По этому gourp_id мы считаем сколько зарегистрировалось участников.
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    Ordec, благодарю за столь точное разъяснение в комментариях.

    В эти выходные мероприятие Буратино с ID = 1, в следующие мероприятие Буратино с ID = 2. Что-бы посчитать уникальных у участников должен быть уникальный идентификатор, (не ID, так как это идентификатор внутри таблицы а не в целом) например email или ИИН. И через него смотрите кто регался на 1, но не на 2ой или наоборот.


    Если взять email или ИИН, то опять же это не уникально для каждого мероприятия. Организатор с такими данными может и проводить и другое мероприятие.

    Все ID у меня в формате UUID, то есть уникальны глобально. Ваш комментарий навел на одну мысль. Чтобы связывать мероприятия можно сделать GROUP ID, который автоматически генерировать для каждого мероприятия. Но если человек хочет связать одно мероприятие с другим - мы просто GROUP ID делаем для двух мероприятий один. Как такая идея? Имеет место быть в реализации? Как я понял вас это именно то, о чем вы говорили...

    Events = [
      1 => [
        'id' => UUID 1,
        'group_id' => '2',
        'name' => 'Всероссийский фестиваль Искусств «Буратино»',
        'date' => '10.09.2019-12.10.2019'
      ],
      2 => [
        'id' => UUID 2,
        'group_id' => '3',
        'name' => 'Всероссийский фестиваль Искусств «Буратино»',
        'date' => '22.09.2019-24.10.2019'
      ],
      3 => [
        'id' => UUID 3,
        'group_id' => '3',
        'name' => 'Всероссийский фестиваль Искусств «Буратино»',
        'date' => '10.09.2020-12.10.2020'
      ]
    ]
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    Ordec, можно ещё делать так. Указывать ID мероприятия и ID периода.

    Получается без привязки дат могут быть: отзывы, название, комментарии, фотографии, видео. Остальное все привязано к датам.

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

    pro-dev
    @pro-dev Автор вопроса
    per_year, per_month итд или null

    Если так разделить, то от этого нет смысла. Я уже тоже думал об этом. Даты могут быть разные. Если поставить мероприятие «ежегодное», то даты при этом останутся одни на этот и следующий год. А в нашем случае даты всегда меняются.

    Даже в календаре выходные этого месяца этого года никак не будут совпадать с будущим годом этого же месяца. Мероприятия чаще проходят в выходные. Мероприятие ещё может в другом месяце проводиться. Поэтому это не подходит.
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    Зачем вы вставляете регистрацию в даты? В этом нет смысла, разве дата может регистрироваться? Или вы регистрирутесь на дату? Нет! Регистрироваться может человек, и регистрироваться можно на мероприятие


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

    Например, в эти выходные Вокал мероприятия Буратино. А в следующие выходные мероприятие буратино проводит Танцы. И теперь мне нужно посчитать уникальных людей мероприятия. Тут сразу встаёт ступор. Используя ваш подход это сделать невозможно. А чтобы мероприятия различались придется их назвать: Всероссийский фестиваль Искусств «Буратино» Вокал и Всероссийский фестиваль Искусств «Буратино» Танцы.

    Поэтому я и хочу ввести Периоды проведения (даты) на которые регистрируется участник. Пока что только так смог придумать эту связь. Какие ещё есть мысли?
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    Ordec, про нормализацию я читал. Как тогда эти мероприятия обьединить в одни данные? Их ничего не связывает... А мне нужна связь. Хотя бы для того, чтобы посчитать количество участников в мероприятии в общем с учетом всех регистраций. Один участник может принимать участие в обе даты и в разных регистрациях.
  • Как связывать данные мероприятий?

    pro-dev
    @pro-dev Автор вопроса
    Благодарю. А как же учитывать периоды? Получается нужно создавать несколько мероприятий?

    Например.

    Мероприятие: Всероссийский фестиваль Искусств «Буратино».
    Даты:
    - 10.09.2019-12.10.2019
    - 22.09.2019-24.10.2019

    - 10.09.2020-12.10.2020
    - 22.09.2020-24.10.2020

    У каждый даты есть 1 и более площадка...

    - 10.09.2019-12.10.2019
    1. Дк Железнодорожник, ул. Московская, д9, Главная сцена
    2. Дк Железнодорожник, ул. Московская, д9, Главная сцена Малый зал
    - 22.09.2019-24.10.2019
    1. Дк Родина, ул. Московская, д92, Главная сцена Главная сцена

    У каждой даты есть два типа регистрации: соревнование, мастеркласс

    У каждого типа есть заявки с данными и участниками.

    И это только начало. Привязка к датам на много больше. Оргкомитет....

    Поэтому хотелось бы понять как это лучше связать. Изначально тоже думал как вы. Но потом решил даты вынести в таблицу periods.
  • Как объединить дубликаты с заменой в дочерних таблицах?

    pro-dev
    @pro-dev Автор вопроса
    Ordec, таблица city очень простая. id, name. Меня больше интересует не схема, а дубликаты в поле name
  • Как сделать интернационализацию дат?

    pro-dev
    @pro-dev Автор вопроса
    https://symfony.com/doc/current/components/intl

    Читал вот тут. Но я не очень понял как это применить к формам и твигу. Подскажете?