feat: Implement upsell functionality with repository and service layers
This commit is contained in:
@@ -21,6 +21,8 @@ function sodino_create_tables() {
|
||||
conditions longtext NOT NULL,
|
||||
actions longtext NOT NULL,
|
||||
priority int(11) NOT NULL DEFAULT 10,
|
||||
usage_limit int(11) NOT NULL DEFAULT 0,
|
||||
user_roles varchar(255) DEFAULT '',
|
||||
start_date datetime NULL,
|
||||
end_date datetime NULL,
|
||||
enabled tinyint(1) DEFAULT 1,
|
||||
@@ -33,16 +35,34 @@ function sodino_create_tables() {
|
||||
PRIMARY KEY (id)
|
||||
) $charset_collate;";
|
||||
|
||||
// Events table
|
||||
$events_table = $wpdb->prefix . 'sodino_events';
|
||||
$events_sql = "CREATE TABLE $events_table (
|
||||
id mediumint(9) NOT NULL AUTO_INCREMENT,
|
||||
event_type varchar(100) NOT NULL,
|
||||
product_id mediumint(9) DEFAULT NULL,
|
||||
variation_id mediumint(9) DEFAULT NULL,
|
||||
user_id bigint(20) DEFAULT NULL,
|
||||
session_id varchar(255) DEFAULT NULL,
|
||||
rule_id mediumint(9) DEFAULT NULL,
|
||||
value decimal(10,2) DEFAULT 0,
|
||||
discount_value decimal(10,2) DEFAULT 0,
|
||||
metadata longtext DEFAULT NULL,
|
||||
created_at datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (id)
|
||||
) $charset_collate;";
|
||||
|
||||
// Upsell table
|
||||
$upsell_table = $wpdb->prefix . 'sodino_upsells';
|
||||
$upsell_sql = "CREATE TABLE $upsell_table (
|
||||
id mediumint(9) NOT NULL AUTO_INCREMENT,
|
||||
name varchar(255) NOT NULL,
|
||||
triggers longtext NOT NULL,
|
||||
suggestions longtext NOT NULL,
|
||||
title varchar(255) NOT NULL,
|
||||
trigger_type varchar(50) NOT NULL,
|
||||
trigger_value varchar(255) NOT NULL,
|
||||
target_product_id bigint(20) NOT NULL DEFAULT 0,
|
||||
discount_type varchar(50) DEFAULT 'percentage',
|
||||
discount_value varchar(50) DEFAULT '0',
|
||||
enabled tinyint(1) DEFAULT 1,
|
||||
discount_value decimal(10,2) DEFAULT 0,
|
||||
status tinyint(1) DEFAULT 1,
|
||||
priority int(11) NOT NULL DEFAULT 10,
|
||||
created_at datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
@@ -51,8 +71,9 @@ function sodino_create_tables() {
|
||||
|
||||
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
||||
dbDelta($rules_sql);
|
||||
dbDelta($events_sql);
|
||||
dbDelta($upsell_sql);
|
||||
|
||||
// Add version option
|
||||
add_option('sodino_db_version', '1.1');
|
||||
add_option('sodino_db_version', '1.2');
|
||||
}
|
||||
Reference in New Issue
Block a user