Привет, форумчане! Подкиньте примеров (в каком вообще направлении рыть), как лучше реализовать продажи между пользователями. Например в БД есть товар - current Пользователь #1 может купить у Пользователь #2, Пользователь #3 может купить у Пользователь #1 и в таком роде.. (интересует процесс запросов к БД) Никак не могу найти пример кода.
Дам наводку))) 1. Делаешь ОДНУ таблицу в которую пишешь записи о каждой сделке: - количество переданного товара - id продавца - id покупателя - время транзакции Всё. Этого достаточно))) Баланс и пр. подсчитываешь уже исходя из данных этой таблицы (может ребята подскажут конкретные запросы) Кстати, именно так работает блокчейн
не слушайте бред товарища выше. одной таблицей такое конечно не реализовать. для начала, нужно самому себе ответить на несколько вопросов. 1) Что именно будут покупать пользователи? товары, услуги. неважно. те таблица номер 1. ТОВАРЫ. артикул, описание... цена за единицу, либо цена в следующей таблице. 2) У каждого пользователя свой список товаров. возможно со своей ценой. Таблица связей ТОВАРЫ ПОЛЬЗОВАТЕЛЕЙ. связь многие ко многим. 3) Чем пользователи будут расплачиваться? Виртуальные деньги (пополняемые из реальных или иначе, неважно). Т.е. у каждого пользователя будет свой собственный счет, там же текущий баланс счета. можно хранить в отдельной таблице. можно упростить и хранить в данных самого юзера. 4) Факт продажи/покупки. те транзакция. Отдельная таблица. с информацией. когда, кто, кому, что, в каком количестве, по какой стоимости. это будет история. 5) важно. покупка/продажа - атомарная операция. но содержит внутри себя обновление сразу нескольких таблиц. поэтому придется использовать ТРАНЗАКЦИИ на уровне БД, содержащие все эти операции (проверка баланса ДО операции, добавление транзакции, синхронизация баланса на счете). для начала хватит. как определитесь с этим, и утвердите набор необходимых таблиц и их структуры, можно будет переходить к самим запросам. а пока нет даже понимания с таблицами, запросы писать просто невозможно...
еще один шибко умный выискался *** ТС, "не слушайте бред товарища выше" (с) -)) Для одного товара current вполне достаточно ОДНОЙ таблицы с транзакциями, в том виде, как я описал ее выше. //насчет "не слушайте бред товарища выше" - я разумеется пошутил)) там есть и здравые моменты, но перейти к ним стоит лишь ПОСЛЕ того, как разберетесь с основным принципом. на этом форуме много хороших разработчиков, но очень мало толковых преподавателей. всё как в жизни
На раз-два тут не получится. Тут и фин. транзакции , и контроль доступа (скорее всего ролевой), и управление ТМЦ. Обширная тема и больших денег стоит
поставь ларку - поставь вот этот пакет https://github.com/bavix/laravel-wallet - и там уже покупай - продавай что хочешь))