Subversion Repositories SmartDukaan

Rev

Rev 36650 | Rev 36681 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 36650 Rev 36655
Line 1... Line -...
1
CREATE TABLE user.lead_live_location
-
 
2
(
-
 
3
    id                 INT AUTO_INCREMENT PRIMARY KEY,
-
 
4
    lead_id            INT         NOT NULL,
-
 
5
    latitude           DOUBLE      NOT NULL,
-
 
6
    longitude          DOUBLE      NOT NULL,
-
 
7
    image_document_id  INT,
-
 
8
    mobile_number      VARCHAR(15) NOT NULL,
-
 
9
    status             VARCHAR(20) NOT NULL DEFAULT 'PENDING',
-
 
10
    reviewed_by        INT                  DEFAULT 0,
-
 
11
    reviewed_timestamp DATETIME,
-
 
12
    submission_count   INT         NOT NULL DEFAULT 1,
-
 
13
    remark             VARCHAR(500),
-
 
14
    created_timestamp  DATETIME    NOT NULL,
-
 
15
    updated_timestamp  DATETIME    NOT NULL,
-
 
16
    INDEX idx_ll_lead_id (lead_id),
-
 
17
    INDEX idx_ll_lead_status (lead_id, status)
-
 
18
);
-
 
19
 
-
 
20
 
-
 
21
-- Table 1: beat (master)
-
 
22
CREATE TABLE user.beat
-
 
23
(
-
 
24
    id                  INT AUTO_INCREMENT PRIMARY KEY,
-
 
25
    name                VARCHAR(200),
-
 
26
    auth_user_id        INT      NOT NULL,
-
 
27
    beat_color          VARCHAR(20),
-
 
28
    start_location_name VARCHAR(200),
-
 
29
    start_latitude      VARCHAR(20),
-
 
30
    start_longitude     VARCHAR(20),
-
 
31
    total_days          INT     DEFAULT 1,
-
 
32
    active              BOOLEAN DEFAULT TRUE,
-
 
33
    created_by          INT,
-
 
34
    created_timestamp   DATETIME NOT NULL,
-
 
35
    INDEX idx_beat_auth (auth_user_id)
-
 
36
);
-
 
37
 
-
 
38
-- Table 2: beat_route (partner stops)
-
 
39
CREATE TABLE user.beat_route
-
 
40
(
-
 
41
    id             INT AUTO_INCREMENT PRIMARY KEY,
-
 
42
    beat_id        INT NOT NULL,
-
 
43
    fofo_id        INT NOT NULL,
-
 
44
    sequence_order INT NOT NULL,
-
 
45
    day_number     INT     DEFAULT 1,
-
 
46
    active         BOOLEAN DEFAULT TRUE,
-
 
47
    INDEX idx_br_beat (beat_id)
-
 
48
);
-
 
49
 
-
 
50
-- Table 3: beat_schedule (when beats run)
-
 
51
CREATE TABLE user.beat_schedule
-
 
52
(
-
 
53
    id                 INT AUTO_INCREMENT PRIMARY KEY,
-
 
54
    beat_id            INT      NOT NULL,
-
 
55
    start_date         DATE     NOT NULL,
-
 
56
    end_date           DATE,
-
 
57
    day_number         INT         DEFAULT 1,
-
 
58
    total_distance_km  DOUBLE,
-
 
59
    total_time_mins    INT,
-
 
60
    end_action         VARCHAR(20) DEFAULT 'HOME',
-
 
61
    stay_location_name VARCHAR(200),
-
 
62
    stay_latitude      VARCHAR(20),
-
 
63
    stay_longitude     VARCHAR(20),
-
 
64
    created_timestamp  DATETIME NOT NULL,
-
 
65
    INDEX idx_bs_beat (beat_id),
-
 
66
    INDEX idx_bs_date (start_date)
-
 
67
);
-
 
68
 
-
 
69
-- Table 4: lead_route (leads in beats)
-
 
70
CREATE TABLE user.lead_route
-
 
71
(
-
 
72
    id                 INT AUTO_INCREMENT PRIMARY KEY,
-
 
73
    beat_id            INT      NOT NULL,
-
 
74
    lead_id            INT      NOT NULL,
-
 
75
    nearest_store_id   INT,
-
 
76
    schedule_date      DATE     NOT NULL,
-
 
77
    sequence_order     INT,
-
 
78
    status             VARCHAR(20) DEFAULT 'PENDING',
-
 
79
    approved_by        INT         DEFAULT 0,
-
 
80
    requested_by       INT         DEFAULT 0,
-
 
81
    approved_timestamp DATETIME,
-
 
82
    remark             VARCHAR(500),
-
 
83
    created_timestamp  DATETIME NOT NULL,
-
 
84
    updated_timestamp  DATETIME NOT NULL,
-
 
85
    INDEX idx_lr_beat (beat_id),
-
 
86
    INDEX idx_lr_lead (lead_id),
-
 
87
    INDEX idx_lr_status (status)
-
 
88
);
-
 
89
 
-
 
90
 
-
 
91
-- Drop old tables (only after verifying new tables work)
-
 
92
DROP TABLE IF EXISTS user.beat_plan;
-
 
93
DROP TABLE IF EXISTS user.beat_plan_day;
-
 
94
DROP TABLE IF EXISTS user.lead_visit_approval;
-
 
95
 
-
 
96
UPDATE auth.menu
1
UPDATE auth.menu
97
SET display_text = 'Lead Visits'
2
SET display_text = 'Lead Visits'
98
WHERE action_class = 'visit-approvals';
3
WHERE action_class = 'visit-approvals';
99
 
4
 
100
ALTER TABLE user.beat
5
ALTER TABLE user.beat
101
    ADD UNIQUE KEY uk_beat_user_name (auth_user_id, name);
6
    ADD UNIQUE KEY uk_beat_user_name (auth_user_id, name);
102
 
7
 
103
INSERT INTO auth.menu (display_text, description, parent_menu_id, sequence, action_class)
8
INSERT INTO auth.menu (display_text, description, parent_menu_id, sequence, action_class)
104
VALUES ('Beat Day View', 'View all beats running for a user on a date', 175, 6, 'beat-plan-dayview');
-
 
105
9
VALUES ('Beat Day View', 'View all beats running for a user on a date', 175, 6, 'beat-plan-dayview');
-
 
10
 
-
 
11
INSERT INTO auth.menu (display_text, description, parent_menu_id, sequence, action_class)
-
 
12
VALUES ('Base Location', 'Manage auth user base/home locations', 175, 7, 'base-location');
-
 
13
106
14