HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: /var/www/api.javaapp.co.uk/src/models/orders.model.js
import Sequelize from "sequelize";
import sequelize from "../config/database.config.js";
import sequelizePaginate from "sequelize-paginate";

const Order = sequelize.define(
    "orders",
    {
        id: {
            type: Sequelize.INTEGER,
            primaryKey: true,
            autoIncrement: true,
            allowNull: false,
        },
        order_number: {
            type: Sequelize.STRING,
            allowNull: false,
            defaultValue: ''
        },
        user_id: {
            type: Sequelize.BIGINT,
            allowNull: false
        },
        cafe_id: {
            type: Sequelize.BIGINT,
            allowNull: false
        },
        group_id: {
            type: Sequelize.BIGINT,
            allowNull: true
        },
        group_coffee_run_id: {
            type: Sequelize.BIGINT,
            allowNull: true
        },
        is_main_order: {
            type: Sequelize.TINYINT(1),
            defaultValue: 1,
            comment: '0-sub order,1-main order'
        },
        order_item_array: {
            type: Sequelize.TEXT('long'),
            allowNull: true
        },
        additional_note: {
            type: Sequelize.TEXT,
            allowNull: true
        },
        total_amount: {
            type: Sequelize.DOUBLE(8, 2),
            defaultValue: 0
        },
        tax: {
            type: Sequelize.DOUBLE(8, 2),
            defaultValue: 0
        },
        discount_amount: {
            type: Sequelize.DOUBLE(8, 2),
            defaultValue: 0
        },
	service_charge: {
            type: Sequelize.DOUBLE(8, 2),
            defaultValue: 0
        },
        other_charge: {
            type: Sequelize.DOUBLE(8, 2),
            defaultValue: 0
        },
        request_unique_id: {
            type: Sequelize.STRING(20),
            allowNull: true
        },
        order_placed_at: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
        order_collected_at: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
        status: {
            type: Sequelize.TINYINT(4),
            defaultValue: 0
        },
        loyalty_stamp_id: {
            type: Sequelize.BIGINT(20),
            allowNull: true
        },
        cafe_coupon_order_id: {
            type: Sequelize.BIGINT(20),
            allowNull: true
        },
        cafe_coupon_expired_time: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
        universal_coupon_order_id: {
            type: Sequelize.BIGINT(20),
            allowNull: true
        },
        universal_coupon_expired_time: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
        transaction_id: {
            type: Sequelize.STRING,
            allowNull: true
        },
        created_at: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
        updated_at: {
            type: Sequelize.INTEGER(10),
            defaultValue: 0
        },
    },
    {
        tableName: 'orders',
        timestamps: false,
    }
);
sequelizePaginate.paginate(Order);
Order.sync();
export default Order;