check this there will be three pages 1. page to add or upload a product (book or anyother product kind) Upload photo of book/product and add product description 2. page to list all books by an author (bibliography), we shall use cards and a profile like view in this section [use grid car view in template] 3. Features 1. Wallet feature for adding money and removing money from an instructor 2. Due to flutterwave, we can receive payments from over 200 countries with the most popular currencies. No more need for foreign account. So all an author needs to do is to share his payment link with the clients and that's all. no more WU To calculate the profits column in the dashboard 1. The cost of printing a book has to be known, then the difference between that cost and tthe SP should be calculated for each (hardcover) book sold. 2. Any book bought as an ebook should be automatically be recorded as profit in the system. To calculate the Sales all orders are summed up and added here Pyaments column (External payments eg. from outside the country) All payments not relating to books sold are listed here Profile Reports Column should show the profile or profit report for a given time, eg. month or year The Transactions column should show the list of previous Transactions just like any bank app would. Order Statistics should show how many total orders have been made Total Revenue column shows the total money generated with respect to the previous and the current year. the goal is to be able to show the % growth between this year and last year. A grouped column (Income Expenses Profit) Show the related information but with a graph that shows data between the duration of 6 months. db recommendations product type a product can have many orders and an order can have many products after every order (OrderCreated::event) open the cart and dump all the items (products) into a collection and sort them the sorting goes thus for sorting, we can have an array (column) on every order. That array(col) will contain all the id's of the products in the cart associated with that order. this way, if we want to sort, we simply do a in_array() for each of the orders in the db to check for those orders where the product ID exists. MYSQL does not support array data types so we use json instead. lets use string instead, a comma separated list of ids the col name = 'item_ids' { "associated": [], "id": 1, "title": "delectus aut autem", "completed": false } step1 : to list books with their individual income report [no. of books sold, total amount generated from selling just that one book] Buy / Sell Buy for clients/students Sell for authors new integration flag: // {{udo: new integration }} useful when integrating a new organisation