Я разработал простую систему POS, которая получает список продуктов и кнопок из БД. Таблица, содержащая все кнопки, предоставляет всю информацию, которая нам необходима для рисования кнопки (то есть: размер, положение, метка, цвет и к какому артикулу она относится).
В оригинальной версии все «функциональные» кнопки были жестко запрограммированы (т. Е. Цифры 1–9, оплата, изменение ценовых уровней, окончание смены и т. Д.), Но я хочу перейти к более настраиваемому дизайну, чтобы эта функция кнопки также могут быть сохранены в базе данных.
Я хотел сделать это с помощью чего-то, основанного на отражении. У меня есть класс, чтобы действовать как интерфейс, содержащий все методы, которые появятся в БД, которые затем будут вызывать любой из необходимых методов в системе. Но я не уверен, как сопоставить это с БД.
Я почти уверен, что каждый метод будет принимать 0, 1 или 2 параметра, которые имеют комбинацию логических, int, double и char.
Я предложил запись для БД, которую я могу проанализировать, чтобы определить всю информацию, необходимую для вызова метода, например, для оплаты продажи, я бы поставил что-то вроде
paySale[]
в базе данных, но если клиент дал мне 50 долларов, и я хотел бы использовать кнопку «быстрые деньги», то вызов метода будет
paySale[d 50]
или что-то более сложное, например, оплата чеком
paySale[i 3, d 50]
где int - тип метода оплаты (в данном случае это будет чек), а double - общая сумма.
Моя проблема в том, что когда я пытаюсь получить метод с помощью getMethod (), я не могу понять, как определить, какие параметры искать, например, double.class и int.class
Будет несколько различных методов, которые нужно будет вызывать для обработки таких вещей, как изменения уровня цен, конец смены, оплата счетов / вкладок и т. Д., Так что если есть более простой способ сделать это, тогда я открыт к этому!
Еще раз спасибо, ребята!