3226 lines
73 KiB
SQL
3226 lines
73 KiB
SQL
INSERT INTO organization_roles (id, role_name)
|
|
VALUES (1, 'OWNER'),
|
|
(2, 'DESIGNER'),
|
|
(3, 'CONSULTANT'),
|
|
(4, 'CONTRACTOR'),
|
|
(5, 'THIRD PARTY'),
|
|
(6, 'GUEST');
|
|
|
|
INSERT INTO organizations (
|
|
id,
|
|
organization_code,
|
|
organization_name,
|
|
role_id
|
|
)
|
|
VALUES (1, 'กทท.', 'การท่าเรือแห่งประเทศไทย', 1),
|
|
(
|
|
10,
|
|
'สคฉ.3',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3',
|
|
1
|
|
),
|
|
(
|
|
11,
|
|
'สคฉ.3-01',
|
|
'ตรวจรับพัสดุ ที่ปรึกษาควบคุมงาน',
|
|
1
|
|
),
|
|
(12, 'สคฉ.3-02', 'ตรวจรับพัสดุ งานทางทะเล', 1),
|
|
(
|
|
13,
|
|
'สคฉ.3-03',
|
|
'ตรวจรับพัสดุ อาคารและระบบสาธารณูปโภค',
|
|
1
|
|
),
|
|
(
|
|
14,
|
|
'สคฉ.3-04',
|
|
'ตรวจรับพัสดุ ตรวจสอบผลกระทบสิ่งแวดล้อม',
|
|
1
|
|
),
|
|
(
|
|
15,
|
|
'สคฉ.3-05',
|
|
'ตรวจรับพัสดุ เยียวยาการประมง',
|
|
1
|
|
),
|
|
(
|
|
16,
|
|
'สคฉ.3-06',
|
|
'ตรวจรับพัสดุ งานก่อสร้าง ส่วนที่ 3',
|
|
1
|
|
),
|
|
(
|
|
17,
|
|
'สคฉ.3-07',
|
|
'ตรวจรับพัสดุ งานก่อสร้าง ส่วนที่ 4',
|
|
1
|
|
),
|
|
(
|
|
18,
|
|
'สคฉ.3-xx',
|
|
'ตรวจรับพัสดุ ที่ปรึกษาออกแบบ ส่วนที่ 4',
|
|
1
|
|
),
|
|
(21, 'TEAM', 'Designer Consulting Ltd.', 2),
|
|
(22, 'คคง.', 'Construction Supervision Ltd.', 3),
|
|
(41, 'ผรม.1', 'Contractor งานทางทะเล', 4),
|
|
(42, 'ผรม.2', 'Contractor งานก่อสร้าง', 4),
|
|
(
|
|
43,
|
|
'ผรม.3',
|
|
'Contractor งานก่อสร้าง ส่วนที่ 3',
|
|
4
|
|
),
|
|
(
|
|
44,
|
|
'ผรม.4',
|
|
'Contractor งานก่อสร้าง ส่วนที่ 4',
|
|
4
|
|
),
|
|
(31, 'EN', 'Third Party Environment', 5),
|
|
(32, 'CAR', 'Third Party Fishery Care', 5);
|
|
|
|
-- Seed project
|
|
INSERT INTO projects (project_code, project_name)
|
|
VALUES (
|
|
'LCBP3',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1-4)'
|
|
),
|
|
(
|
|
'LCBP3-C1',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1) งานก่อสร้างงานทางทะเล'
|
|
),
|
|
(
|
|
'LCBP3-C2',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 2) งานก่อสร้างอาคาร ท่าเทียบเรือ ระบบถนน และระบบสาธารณูปโภค'
|
|
),
|
|
(
|
|
'LCBP3-C3',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 3) งานก่อสร้าง'
|
|
),
|
|
(
|
|
'LCBP3-C4',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 4) งานก่อสร้าง'
|
|
),
|
|
(
|
|
'LCBP3-EN',
|
|
'โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 4) งานก่อสร้าง'
|
|
);
|
|
|
|
-- Seed contract
|
|
-- ใช้ Subquery เพื่อดึง project_id มาเชื่อมโยง ทำให้ไม่ต้องมานั่งจัดการ ID ด้วยตัวเอง
|
|
INSERT INTO contracts (
|
|
contract_code,
|
|
contract_name,
|
|
project_id,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
'LCBP3-DS',
|
|
'งานจ้างที่ปรีกษาออกแบบ โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1-4)',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-PS',
|
|
'งานจ้างที่ปรีกษาควบคุมงาน โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1-4)',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-C1',
|
|
'งานก่อสร้าง โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1) งานก่อสร้างงานทางทะเล',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C1'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-C2',
|
|
'งานก่อสร้าง โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 2) งานก่อสร้างอาคาร ท่าเทียบเรือ ระบบถนน และระบบสาธารณูปโภค',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C2'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-C3',
|
|
'งานก่อสร้าง โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 3) งานก่อสร้าง',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C3'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-C4',
|
|
'งานก่อสร้าง โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 4) งานก่อสร้าง',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C4'
|
|
),
|
|
TRUE
|
|
),
|
|
(
|
|
'LCBP3-EN',
|
|
'งานก่อสร้าง โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 4) งานก่อสร้าง',
|
|
(
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-EN'
|
|
),
|
|
TRUE
|
|
);
|
|
|
|
-- Seed user
|
|
-- Initial SUPER_ADMIN user
|
|
INSERT INTO users (
|
|
user_id,
|
|
username,
|
|
password_hash,
|
|
first_name,
|
|
last_name,
|
|
email,
|
|
line_id,
|
|
primary_organization_id
|
|
)
|
|
VALUES (
|
|
1,
|
|
'superadmin',
|
|
'$2b$10$E6d5k.f46jr.POGWKHhiQ.X1ZsFrMpZox//sCxeOiLUULGuAHO0NW',
|
|
'Super',
|
|
'Admin',
|
|
'superadmin @example.com',
|
|
NULL,
|
|
NULL
|
|
),
|
|
(
|
|
2,
|
|
'admin',
|
|
'$2b$10$E6d5k.f46jr.POGWKHhiQ.X1ZsFrMpZox//sCxeOiLUULGuAHO0NW',
|
|
'Admin',
|
|
'คคง.',
|
|
'admin@example.com',
|
|
NULL,
|
|
1
|
|
),
|
|
(
|
|
3,
|
|
'editor01',
|
|
'$2b$10$E6d5k.f46jr.POGWKHhiQ.X1ZsFrMpZox//sCxeOiLUULGuAHO0NW',
|
|
'DC',
|
|
'C1',
|
|
'editor01 @example.com',
|
|
NULL,
|
|
41
|
|
),
|
|
(
|
|
4,
|
|
'viewer01',
|
|
'$2b$10$E6d5k.f46jr.POGWKHhiQ.X1ZsFrMpZox//sCxeOiLUULGuAHO0NW',
|
|
'Viewer',
|
|
'สคฉ.03',
|
|
'viewer01 @example.com',
|
|
NULL,
|
|
10
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- Seed Roles (บทบาทพื้นฐาน 5 บทบาท ตาม Req 4.3)
|
|
-- ==========================================================
|
|
-- 1. Superadmin (Global)
|
|
INSERT INTO roles (role_id, role_name, scope, description)
|
|
VALUES (
|
|
1,
|
|
'Superadmin',
|
|
'Global',
|
|
'ผู้ดูแลระบบสูงสุด: สามารถทำทุกอย่างในระบบ, จัดการองค์กร, และจัดการข้อมูลหลักระดับ Global'
|
|
),
|
|
-- 2. Org Admin (Organization)
|
|
(
|
|
2,
|
|
'Org Admin',
|
|
'Organization',
|
|
'ผู้ดูแลองค์กร: จัดการผู้ใช้ในองค์กร, จัดการบทบาท / สิทธิ์ภายในองค์กร, และดูรายงานขององค์กร'
|
|
),
|
|
-- 3. Document Control (Organization)
|
|
(
|
|
3,
|
|
'Document Control',
|
|
'Organization',
|
|
'ควบคุมเอกสารขององค์กร: เพิ่ม / แก้ไข / ลบเอกสาร, และกำหนดสิทธิ์เอกสารภายในองค์กร'
|
|
),
|
|
-- 4. Editor (Organization)
|
|
(
|
|
4,
|
|
'Editor',
|
|
'Organization',
|
|
'ผู้แก้ไขเอกสารขององค์กร: เพิ่ม / แก้ไขเอกสารที่ได้รับมอบหมาย'
|
|
),
|
|
-- 5. Viewer (Organization)
|
|
(
|
|
5,
|
|
'Viewer',
|
|
'Organization',
|
|
'ผู้ดูเอกสารขององค์กร: ดูเอกสารที่มีสิทธิ์เข้าถึงเท่านั้น'
|
|
),
|
|
-- 6. Project Manager (Project)
|
|
(
|
|
6,
|
|
'Project Manager',
|
|
'Project',
|
|
'ผู้จัดการโครงการ: จัดการสมาชิกในโครงการ, สร้าง / จัดการสัญญาในโครงการ, และดูรายงานโครงการ'
|
|
),
|
|
-- 7. Contract Admin (Contract)
|
|
(
|
|
7,
|
|
'Contract Admin',
|
|
'Contract',
|
|
'ผู้ดูแลสัญญา: จัดการสมาชิกในสัญญา, สร้าง / จัดการข้อมูลหลักเฉพาะสัญญา, และอนุมัติเอกสารในสัญญา'
|
|
);
|
|
|
|
-- =====================================================
|
|
-- 2. Seed Permissions (สิทธิ์การใช้งานทั้งหมด)
|
|
-- สิทธิ์ระดับระบบและการจัดการหลัก (System & Master Data)
|
|
-- =====================================================
|
|
-- ==========================================================
|
|
-- 1. System & Global Permissions (ID 1-10)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
1,
|
|
'system.manage_all',
|
|
'ทำทุกอย่างในระบบ (Superadmin Power)',
|
|
'system',
|
|
1
|
|
),
|
|
(
|
|
2,
|
|
'system.impersonate',
|
|
'แอบอ้างผู้ใช้อื่น (For Support/Debug)',
|
|
'system',
|
|
1
|
|
),
|
|
(
|
|
3,
|
|
'system.maintenance_mode',
|
|
'เปิด/ปิด Maintenance Mode',
|
|
'system',
|
|
1
|
|
),
|
|
(
|
|
4,
|
|
'system.view_logs',
|
|
'ดู System Logs',
|
|
'system',
|
|
1
|
|
),
|
|
(
|
|
5,
|
|
'system.manage_cache',
|
|
'จัดการ Cache (Clear/Flush)',
|
|
'system',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 2. Organization Management (ID 11-20)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
11,
|
|
'organization.create',
|
|
'สร้างองค์กรใหม่',
|
|
'organization',
|
|
1
|
|
),
|
|
(
|
|
12,
|
|
'organization.view',
|
|
'ดูรายการองค์กร',
|
|
'organization',
|
|
1
|
|
),
|
|
(
|
|
13,
|
|
'organization.edit',
|
|
'แก้ไขข้อมูลองค์กร',
|
|
'organization',
|
|
1
|
|
),
|
|
(
|
|
14,
|
|
'organization.delete',
|
|
'ลบองค์กร',
|
|
'organization',
|
|
1
|
|
),
|
|
(
|
|
15,
|
|
'organization.manage_members',
|
|
'จัดการสมาชิกในองค์กร',
|
|
'organization',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 3. User & Role Management (ID 21-40) - PRIORITIZED
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
21,
|
|
'user.create',
|
|
'สร้างผู้ใช้งานใหม่',
|
|
'user',
|
|
1
|
|
),
|
|
(22, 'user.view', 'ดูข้อมูลผู้ใช้งาน', 'user', 1),
|
|
(
|
|
23,
|
|
'user.edit',
|
|
'แก้ไขข้อมูลผู้ใช้งาน',
|
|
'user',
|
|
1
|
|
),
|
|
(
|
|
24,
|
|
'user.delete',
|
|
'ลบ/ปิดการใช้งานผู้ใช้',
|
|
'user',
|
|
1
|
|
),
|
|
(
|
|
25,
|
|
'user.manage_assignments',
|
|
'มอบหมาย Role/Project ให้ผู้ใช้',
|
|
'user',
|
|
1
|
|
),
|
|
(
|
|
26,
|
|
'role.create',
|
|
'สร้างบทบาท (Role) ใหม่',
|
|
'role',
|
|
1
|
|
),
|
|
(27, 'role.view', 'ดูบทบาท', 'role', 1),
|
|
(28, 'role.edit', 'แก้ไขบทบาท', 'role', 1),
|
|
(29, 'role.delete', 'ลบบทบาท', 'role', 1),
|
|
(
|
|
30,
|
|
'role.assign_permissions',
|
|
'มอบสิทธิ์ให้กับบทบาท',
|
|
'role',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 4. Master Data Management (ID 41-50)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
41,
|
|
'master_data.view',
|
|
'ดูข้อมูลหลัก (Read-Only Dropdowns)',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
42,
|
|
'master_data.manage',
|
|
'จัดการข้อมูลหลักทั่วไป',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
43,
|
|
'master_data.correspondence_type.manage',
|
|
'จัดการประเภทเอกสาร',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
44,
|
|
'master_data.document_status.manage',
|
|
'จัดการสถานะเอกสาร',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
45,
|
|
'master_data.drawing_category.manage',
|
|
'จัดการหมวดหมู่แบบ',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
46,
|
|
'master_data.tag.manage',
|
|
'จัดการ Tags',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
47,
|
|
'master_data.discipline.manage',
|
|
'จัดการสาขางาน (Disciplines)',
|
|
'master',
|
|
1
|
|
),
|
|
(
|
|
48,
|
|
'master_data.number_format.manage',
|
|
'จัดการ Document Number Format',
|
|
'master',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 5. Document Management - Generic (ID 51-70)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
51,
|
|
'document.view',
|
|
'ดูเอกสาร (ทุกประเภท)',
|
|
'document',
|
|
1
|
|
),
|
|
(
|
|
52,
|
|
'document.create',
|
|
'สร้างเอกสาร (Draft)',
|
|
'document',
|
|
1
|
|
),
|
|
(
|
|
53,
|
|
'document.edit',
|
|
'แก้ไขเอกสาร',
|
|
'document',
|
|
1
|
|
),
|
|
(54, 'document.delete', 'ลบเอกสาร', 'document', 1),
|
|
(
|
|
55,
|
|
'document.submit',
|
|
'ส่งเอกสาร (Submitted)',
|
|
'document',
|
|
1
|
|
),
|
|
(
|
|
56,
|
|
'document.admin_edit',
|
|
'แก้ไข/ถอน/ยกเลิกเอกสารที่ส่งแล้ว (Admin Power)',
|
|
'document',
|
|
1
|
|
),
|
|
(
|
|
57,
|
|
'document.attach_files',
|
|
'จัดการไฟล์แนบ (Upload/Delete)',
|
|
'document',
|
|
1
|
|
),
|
|
(
|
|
58,
|
|
'document.manage_references',
|
|
'จัดการการอ้างอิงเอกสาร',
|
|
'document',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 6. Correspondence Module (ID 71-80)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
71,
|
|
'correspondence.create',
|
|
'สร้างเอกสารโต้ตอบ',
|
|
'correspondence',
|
|
1
|
|
),
|
|
(
|
|
72,
|
|
'correspondence.view',
|
|
'ดูเอกสารโต้ตอบ',
|
|
'correspondence',
|
|
1
|
|
),
|
|
(
|
|
73,
|
|
'correspondence.edit',
|
|
'แก้ไขเอกสารโต้ตอบ',
|
|
'correspondence',
|
|
1
|
|
),
|
|
(
|
|
74,
|
|
'correspondence.delete',
|
|
'ลบเอกสารโต้ตอบ',
|
|
'correspondence',
|
|
1
|
|
),
|
|
(
|
|
75,
|
|
'correspondence.submit',
|
|
'ส่งเอกสารโต้ตอบ',
|
|
'correspondence',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 7. RFA Module (ID 81-90)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (81, 'rfa.create', 'สร้างเอกสาร RFA', 'rfa', 1),
|
|
(82, 'rfa.view', 'ดูเอกสาร RFA', 'rfa', 1),
|
|
(83, 'rfa.edit', 'แก้ไขเอกสาร RFA', 'rfa', 1),
|
|
(84, 'rfa.delete', 'ลบเอกสาร RFA', 'rfa', 1),
|
|
(
|
|
85,
|
|
'rfa.submit',
|
|
'ส่ง RFA เข้า Workflow',
|
|
'rfa',
|
|
1
|
|
),
|
|
(
|
|
86,
|
|
'rfa.manage_items',
|
|
'จัดการ RFA Items (Link Drawings)',
|
|
'rfa',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 8. Drawing Module (ID 91-100)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
91,
|
|
'drawing.view',
|
|
'ดูข้อมูลแบบ (Shop/Contract)',
|
|
'drawing',
|
|
1
|
|
),
|
|
(
|
|
92,
|
|
'drawing.create',
|
|
'สร้าง/แก้ไขแบบ',
|
|
'drawing',
|
|
1
|
|
),
|
|
(93, 'drawing.delete', 'ลบแบบ', 'drawing', 1),
|
|
(
|
|
94,
|
|
'drawing.manage_revisions',
|
|
'จัดการ Revisions แบบ',
|
|
'drawing',
|
|
1
|
|
),
|
|
(
|
|
95,
|
|
'drawing.link_contract',
|
|
'เชื่อมโยง Shop Drawing กับ Contract Drawing',
|
|
'drawing',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 9. Circulation Module (ID 101-110)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
101,
|
|
'circulation.create',
|
|
'สร้างใบเวียน',
|
|
'circulation',
|
|
1
|
|
),
|
|
(
|
|
102,
|
|
'circulation.view',
|
|
'ดูใบเวียน',
|
|
'circulation',
|
|
1
|
|
),
|
|
(
|
|
103,
|
|
'circulation.respond',
|
|
'ตอบกลับใบเวียน (Main/Action)',
|
|
'circulation',
|
|
1
|
|
),
|
|
(
|
|
104,
|
|
'circulation.acknowledge',
|
|
'รับทราบใบเวียน (Information)',
|
|
'circulation',
|
|
1
|
|
),
|
|
(
|
|
105,
|
|
'circulation.close',
|
|
'ปิดใบเวียน',
|
|
'circulation',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 10. Transmittal Module (ID 111-120)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
111,
|
|
'transmittal.create',
|
|
'สร้าง Transmittal',
|
|
'transmittal',
|
|
1
|
|
),
|
|
(
|
|
112,
|
|
'transmittal.view',
|
|
'ดู Transmittal',
|
|
'transmittal',
|
|
1
|
|
),
|
|
(
|
|
113,
|
|
'transmittal.edit',
|
|
'แก้ไข Transmittal',
|
|
'transmittal',
|
|
1
|
|
),
|
|
(
|
|
114,
|
|
'transmittal.delete',
|
|
'ลบ Transmittal',
|
|
'transmittal',
|
|
1
|
|
),
|
|
(
|
|
115,
|
|
'transmittal.print',
|
|
'พิมพ์ Transmittal Letter',
|
|
'transmittal',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 11. Workflow Engine (ID 121-130)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
121,
|
|
'workflow.view_definitions',
|
|
'ดู Workflow Definitions',
|
|
'workflow',
|
|
1
|
|
),
|
|
(
|
|
122,
|
|
'workflow.manage_definitions',
|
|
'จัดการ Workflow Definitions',
|
|
'workflow',
|
|
1
|
|
),
|
|
(
|
|
123,
|
|
'workflow.action_review',
|
|
'ดำเนินการในขั้นตอนปัจจุบัน (Approve/Reject)',
|
|
'workflow',
|
|
1
|
|
),
|
|
(
|
|
124,
|
|
'workflow.force_proceed',
|
|
'บังคับไปยังขั้นตอนถัดไป (Document Control Power)',
|
|
'workflow',
|
|
1
|
|
),
|
|
(
|
|
125,
|
|
'workflow.revert',
|
|
'ย้อนกลับไปยังขั้นตอนก่อนหน้า (Document Control Power)',
|
|
'workflow',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 12. Document Numbering (ID 131-140)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
131,
|
|
'numbering.view_formats',
|
|
'ดู Number Formats',
|
|
'numbering',
|
|
1
|
|
),
|
|
(
|
|
132,
|
|
'numbering.manage_formats',
|
|
'จัดการ Number Formats',
|
|
'numbering',
|
|
1
|
|
),
|
|
(
|
|
133,
|
|
'numbering.view_counters',
|
|
'ดู Counters',
|
|
'numbering',
|
|
1
|
|
),
|
|
(
|
|
134,
|
|
'numbering.reset_counter',
|
|
'Reset Counter (Dangerous Operation)',
|
|
'numbering',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 13. Search & Reporting (ID 141-150)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (141, 'search.basic', 'ค้นหาพื้นฐาน', 'search', 1),
|
|
(
|
|
142,
|
|
'search.advanced',
|
|
'ใช้งานการค้นหาขั้นสูง',
|
|
'search',
|
|
1
|
|
),
|
|
(
|
|
143,
|
|
'search.export',
|
|
'Export ผลการค้นหา',
|
|
'search',
|
|
1
|
|
),
|
|
(144, 'report.view', 'ดูรายงาน', 'report', 1),
|
|
(
|
|
145,
|
|
'report.generate',
|
|
'สร้างรายงานสรุป',
|
|
'report',
|
|
1
|
|
),
|
|
(
|
|
146,
|
|
'report.schedule',
|
|
'กำหนดรายงานอัตโนมัติ',
|
|
'report',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 14. Notification & Dashboard (ID 151-160)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
151,
|
|
'notification.view',
|
|
'ดูการแจ้งเตือนของตัวเอง',
|
|
'notification',
|
|
1
|
|
),
|
|
(
|
|
152,
|
|
'notification.manage_all',
|
|
'จัดการการแจ้งเตือนทั้งหมด (Admin)',
|
|
'notification',
|
|
1
|
|
),
|
|
(
|
|
153,
|
|
'dashboard.view_own',
|
|
'ดู Dashboard ของตัวเอง',
|
|
'dashboard',
|
|
1
|
|
),
|
|
(
|
|
154,
|
|
'dashboard.view_all',
|
|
'ดู Dashboard ทุกคน (Admin)',
|
|
'dashboard',
|
|
1
|
|
),
|
|
(
|
|
155,
|
|
'dashboard.view_analytics',
|
|
'ดู Analytics & Statistics',
|
|
'dashboard',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 15. JSON Schema Management (ID 161-170)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
161,
|
|
'json_schema.view',
|
|
'ดู JSON Schemas',
|
|
'json_schema',
|
|
1
|
|
),
|
|
(
|
|
162,
|
|
'json_schema.manage',
|
|
'จัดการ JSON Schemas',
|
|
'json_schema',
|
|
1
|
|
),
|
|
(
|
|
163,
|
|
'json_schema.migrate_data',
|
|
'Migrate Data ระหว่าง Schema Versions',
|
|
'json_schema',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 16. Monitoring & Admin Tools (ID 171-180)
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
171,
|
|
'monitoring.view_health',
|
|
'ดู Health Check Status',
|
|
'monitoring',
|
|
1
|
|
),
|
|
(
|
|
172,
|
|
'monitoring.view_metrics',
|
|
'ดู System Metrics',
|
|
'monitoring',
|
|
1
|
|
),
|
|
(
|
|
173,
|
|
'monitoring.manage_maintenance',
|
|
'จัดการ Maintenance Mode',
|
|
'monitoring',
|
|
1
|
|
),
|
|
(
|
|
174,
|
|
'audit.view_own',
|
|
'ดู Audit Logs ของตัวเอง',
|
|
'audit',
|
|
1
|
|
),
|
|
(
|
|
175,
|
|
'audit.view_all',
|
|
'ดู Audit Logs ทั้งหมด (Admin)',
|
|
'audit',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 17. Project & Contract Management (ID 201-220) - DEPRIORITIZED
|
|
-- ==========================================================
|
|
INSERT INTO permissions (
|
|
permission_id,
|
|
permission_name,
|
|
description,
|
|
module,
|
|
is_active
|
|
)
|
|
VALUES (
|
|
201,
|
|
'project.create',
|
|
'สร้างโครงการใหม่',
|
|
'project',
|
|
1
|
|
),
|
|
(
|
|
202,
|
|
'project.view',
|
|
'ดูรายการโครงการ',
|
|
'project',
|
|
1
|
|
),
|
|
(
|
|
203,
|
|
'project.edit',
|
|
'แก้ไขข้อมูลโครงการ',
|
|
'project',
|
|
1
|
|
),
|
|
(204, 'project.delete', 'ลบโครงการ', 'project', 1),
|
|
(
|
|
205,
|
|
'project.manage_members',
|
|
'จัดการสมาชิกในโครงการ',
|
|
'project',
|
|
1
|
|
),
|
|
(
|
|
211,
|
|
'contract.create',
|
|
'สร้างสัญญา',
|
|
'contract',
|
|
1
|
|
),
|
|
(
|
|
212,
|
|
'contract.view',
|
|
'ดูข้อมูลสัญญา',
|
|
'contract',
|
|
1
|
|
),
|
|
(
|
|
213,
|
|
'contract.edit',
|
|
'แก้ไขสัญญา',
|
|
'contract',
|
|
1
|
|
),
|
|
(214, 'contract.delete', 'ลบสัญญา', 'contract', 1),
|
|
(
|
|
215,
|
|
'contract.manage_members',
|
|
'จัดการสมาชิกในสัญญา',
|
|
'contract',
|
|
1
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- Seed Role-Permissions Mapping (จับคู่สิทธิ์เริ่มต้น)
|
|
-- ==========================================================
|
|
-- Seed data for the 'role_permissions 'table
|
|
-- This table links roles to their specific permissions.
|
|
-- NOTE: This assumes the role_id and permission_id FROM the previous seed data files.
|
|
-- Superadmin (role_id = 1), Org Admin (role_id = 2), Document Control (role_id = 3), etc.
|
|
-- ==========================================================
|
|
-- SECTION 2: ROLE-PERMISSION MAPPINGS
|
|
-- ==========================================================
|
|
-- ==========================================================
|
|
-- Role 1: Superadmin - Gets ALL Permissions
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
SELECT 1,
|
|
permission_id
|
|
FROM permissions
|
|
WHERE is_active = 1;
|
|
|
|
-- ==========================================================
|
|
-- Role 2: Org Admin (Organization Scope)
|
|
-- Permissions: 22 total
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
VALUES -- User Management
|
|
(2, 21),
|
|
-- user.create
|
|
(2, 22),
|
|
-- user.view
|
|
(2, 23),
|
|
-- user.edit
|
|
(2, 24),
|
|
-- user.delete
|
|
(2, 25),
|
|
-- user.manage_assignments
|
|
-- Organization
|
|
(2, 12),
|
|
-- organization.view
|
|
-- Master Data
|
|
(2, 46),
|
|
-- master_data.tag.manage
|
|
-- Documents
|
|
(2, 51),
|
|
-- document.view
|
|
-- Project/Contract
|
|
(2, 202),
|
|
-- project.view
|
|
(2, 212),
|
|
-- contract.view
|
|
-- Search & Reports
|
|
(2, 141),
|
|
-- search.basic
|
|
(2, 142),
|
|
-- search.advanced
|
|
(2, 144),
|
|
-- report.view
|
|
(2, 145),
|
|
-- report.generate
|
|
-- Dashboard & Notification
|
|
(2, 153),
|
|
-- dashboard.view_own
|
|
(2, 151),
|
|
-- notification.view
|
|
-- Audit
|
|
(2, 174);
|
|
|
|
-- audit.view_own
|
|
-- ==========================================================
|
|
-- Role 3: Document Control (Organization Scope)
|
|
-- Permissions: 50+ total
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
VALUES -- All Document Operations
|
|
(3, 51),
|
|
(3, 52),
|
|
(3, 53),
|
|
(3, 54),
|
|
(3, 55),
|
|
(3, 56),
|
|
(3, 57),
|
|
(3, 58),
|
|
-- All Correspondence
|
|
(3, 71),
|
|
(3, 72),
|
|
(3, 73),
|
|
(3, 74),
|
|
(3, 75),
|
|
-- All RFA
|
|
(3, 81),
|
|
(3, 82),
|
|
(3, 83),
|
|
(3, 84),
|
|
(3, 85),
|
|
(3, 86),
|
|
-- All Drawing
|
|
(3, 91),
|
|
(3, 92),
|
|
(3, 93),
|
|
(3, 94),
|
|
(3, 95),
|
|
-- All Circulation
|
|
(3, 101),
|
|
(3, 102),
|
|
(3, 103),
|
|
(3, 104),
|
|
(3, 105),
|
|
-- All Transmittal
|
|
(3, 111),
|
|
(3, 112),
|
|
(3, 113),
|
|
(3, 114),
|
|
(3, 115),
|
|
-- Workflow Actions
|
|
(3, 123),
|
|
(3, 124),
|
|
(3, 125),
|
|
-- Master Data
|
|
(3, 41),
|
|
(3, 42),
|
|
(3, 43),
|
|
(3, 44),
|
|
(3, 45),
|
|
(3, 46),
|
|
(3, 47),
|
|
(3, 48),
|
|
-- Search & Report
|
|
(3, 141),
|
|
(3, 142),
|
|
(3, 143),
|
|
(3, 144),
|
|
(3, 145),
|
|
-- Dashboard
|
|
(3, 153),
|
|
(3, 154),
|
|
-- Notification
|
|
(3, 151);
|
|
|
|
-- ==========================================================
|
|
-- Role 4: Editor (Organization Scope)
|
|
-- Permissions: 30 total
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
VALUES -- Document
|
|
(4, 51),
|
|
(4, 52),
|
|
(4, 53),
|
|
(4, 55),
|
|
(4, 57),
|
|
-- Correspondence
|
|
(4, 71),
|
|
(4, 72),
|
|
(4, 73),
|
|
(4, 75),
|
|
-- RFA
|
|
(4, 81),
|
|
(4, 82),
|
|
(4, 83),
|
|
(4, 85),
|
|
(4, 86),
|
|
-- Drawing
|
|
(4, 91),
|
|
(4, 92),
|
|
(4, 94),
|
|
-- Circulation
|
|
(4, 101),
|
|
(4, 102),
|
|
(4, 103),
|
|
(4, 104),
|
|
-- Transmittal
|
|
(4, 111),
|
|
(4, 112),
|
|
(4, 113),
|
|
-- Search
|
|
(4, 141),
|
|
(4, 142),
|
|
-- Dashboard & Notification
|
|
(4, 153),
|
|
(4, 151),
|
|
-- Workflow Actions (NEW for E2E test compatibility)
|
|
(4, 123);
|
|
|
|
-- ==========================================================
|
|
-- Role 5: Viewer (Organization Scope)
|
|
-- Permissions: 15 total
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
VALUES -- View Only
|
|
(5, 51),
|
|
-- document.view
|
|
(5, 72),
|
|
-- correspondence.view
|
|
(5, 82),
|
|
-- rfa.view
|
|
(5, 91),
|
|
-- drawing.view
|
|
(5, 102),
|
|
-- circulation.view
|
|
(5, 104),
|
|
-- circulation.acknowledge
|
|
(5, 112),
|
|
-- transmittal.view
|
|
(5, 41),
|
|
-- master_data.view
|
|
(5, 141),
|
|
-- search.basic
|
|
(5, 153),
|
|
-- dashboard.view_own
|
|
(5, 151);
|
|
|
|
-- notification.view
|
|
-- ==========================================================
|
|
-- Role 6: Project Manager (Project Scope)
|
|
-- Permissions: All Editor + Project Management + Reports
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
SELECT 6,
|
|
permission_id
|
|
FROM role_permissions
|
|
WHERE role_id = 4 -- Copy all Editor permissions
|
|
UNION
|
|
VALUES -- Project Management
|
|
(6, 201),
|
|
(6, 202),
|
|
(6, 203),
|
|
(6, 204),
|
|
(6, 205),
|
|
-- Reports & Analytics
|
|
(6, 144),
|
|
(6, 145),
|
|
(6, 155);
|
|
|
|
-- ==========================================================
|
|
-- Role 7: Contract Admin (Contract Scope)
|
|
-- Permissions: All Editor + Contract Management + Workflow
|
|
-- ==========================================================
|
|
INSERT INTO role_permissions (role_id, permission_id)
|
|
SELECT 7,
|
|
permission_id
|
|
FROM role_permissions
|
|
WHERE role_id = 4 -- Copy all Editor permissions
|
|
UNION
|
|
VALUES -- Contract Management
|
|
(7, 211),
|
|
(7, 212),
|
|
(7, 213),
|
|
(7, 214),
|
|
(7, 215),
|
|
-- Workflow
|
|
(7, 123),
|
|
-- All Drawings
|
|
(7, 91),
|
|
(7, 92),
|
|
(7, 93),
|
|
(7, 94),
|
|
(7, 95);
|
|
|
|
-- Seed data for the 'user_assignments' table
|
|
INSERT INTO user_assignments (
|
|
id,
|
|
user_id,
|
|
role_id,
|
|
organization_id,
|
|
project_id,
|
|
contract_id,
|
|
assigned_by_user_id
|
|
)
|
|
VALUES (1, 1, 1, NULL, NULL, NULL, NULL),
|
|
-- superadmin: Global scope (organization_id = NULL)
|
|
(2, 2, 2, 1, NULL, NULL, NULL),
|
|
-- admin: Organization scope (org_id=1 = กทท.)
|
|
(3, 3, 4, 41, NULL, NULL, 1),
|
|
-- editor01: Editor role (role_id=4) at organization 41 (คคง.), assigned by superadmin
|
|
(4, 4, 5, 10, NULL, NULL, 1);
|
|
|
|
-- viewer01: Viewer role (role_id=5) at organization 10 (สคฉ.03), assigned by superadmin
|
|
-- =====================================================
|
|
-- == 4. การเชื่อมโยงโครงการกับองค์กร (project_organizations) ==
|
|
-- =====================================================
|
|
-- โครงการหลัก (LCBP3) จะมีองค์กรหลักๆ เข้ามาเกี่ยวข้องทั้งหมด
|
|
INSERT INTO project_organizations (project_id, organization_id)
|
|
SELECT (
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3'
|
|
),
|
|
id
|
|
FROM organizations
|
|
WHERE organization_code IN (
|
|
'กทท.',
|
|
'สคฉ.3',
|
|
'TEAM',
|
|
'คคง.',
|
|
'ผรม.1',
|
|
'ผรม.2',
|
|
'ผรม.3',
|
|
'ผรม.4',
|
|
'EN',
|
|
'CAR'
|
|
);
|
|
|
|
-- โครงการย่อย (LCBP3C1) จะมีเฉพาะองค์กรที่เกี่ยวข้อง
|
|
INSERT INTO project_organizations (project_id, organization_id)
|
|
SELECT (
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C1'
|
|
),
|
|
id
|
|
FROM organizations
|
|
WHERE organization_code IN (
|
|
'กทท.',
|
|
'สคฉ.3',
|
|
'สคฉ.3 -02',
|
|
'คคง.',
|
|
'ผรม.1 '
|
|
);
|
|
|
|
-- ทำเช่นเดียวกันสำหรับโครงการอื่นๆ (ตัวอย่าง)
|
|
INSERT INTO project_organizations (project_id, organization_id)
|
|
SELECT (
|
|
SELECT id
|
|
FROM projects
|
|
WHERE project_code = 'LCBP3-C2'
|
|
),
|
|
id
|
|
FROM organizations
|
|
WHERE organization_code IN (
|
|
'กทท.',
|
|
'สคฉ.3',
|
|
'สคฉ.3 -03',
|
|
'คคง.',
|
|
'ผรม.2'
|
|
);
|
|
|
|
-- =====================================================
|
|
-- == 5. การเชื่อมโยงสัญญากับองค์กร (contract_organizations) ==
|
|
-- =====================================================
|
|
-- สัญญาที่ปรึกษาออกแบบ (DSLCBP3)
|
|
INSERT INTO contract_organizations (contract_id, organization_id, role_in_contract)
|
|
VALUES (
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-DS'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'กทท.'
|
|
),
|
|
'Owner'
|
|
),
|
|
(
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-DS'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'TEAM'
|
|
),
|
|
'Designer'
|
|
);
|
|
|
|
-- สัญญาที่ปรึกษาควบคุมงาน (PSLCBP3)
|
|
INSERT INTO contract_organizations (contract_id, organization_id, role_in_contract)
|
|
VALUES (
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-PS'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'กทท.'
|
|
),
|
|
'Owner'
|
|
),
|
|
(
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-PS'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'คคง.'
|
|
),
|
|
'Consultant'
|
|
);
|
|
|
|
-- สัญญางานก่อสร้าง ส่วนที่ 1 (LCBP3-C1)
|
|
INSERT INTO contract_organizations (contract_id, organization_id, role_in_contract)
|
|
VALUES (
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'กทท.'
|
|
),
|
|
'Owner'
|
|
),
|
|
(
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'ผรม.1'
|
|
),
|
|
'Contractor'
|
|
);
|
|
|
|
-- สัญญางานก่อสร้าง ส่วนที่ 2 (LCBP3-C2)
|
|
INSERT INTO contract_organizations (contract_id, organization_id, role_in_contract)
|
|
VALUES (
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'กทท.'
|
|
),
|
|
'Owner'
|
|
),
|
|
(
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'ผรม.2'
|
|
),
|
|
'Contractor'
|
|
);
|
|
|
|
-- สัญญาตรวจสอบสิ่งแวดล้อม (LCBP3-EN)
|
|
INSERT INTO contract_organizations (contract_id, organization_id, role_in_contract)
|
|
VALUES (
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-EN'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'กทท.'
|
|
),
|
|
'Owner'
|
|
),
|
|
(
|
|
(
|
|
SELECT id
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-EN'
|
|
),
|
|
(
|
|
SELECT id
|
|
FROM organizations
|
|
WHERE organization_code = 'EN'
|
|
),
|
|
'Consultant'
|
|
);
|
|
|
|
-- Seed correspondence_status
|
|
INSERT INTO correspondence_status (
|
|
status_code,
|
|
status_name,
|
|
sort_order,
|
|
is_active
|
|
)
|
|
VALUES ('DRAFT', 'Draft', 10, 1),
|
|
('SUBOWN', 'Submitted to Owner', 21, 1),
|
|
('SUBDSN', 'Submitted to Designer', 22, 1),
|
|
('SUBCSC', 'Submitted to CSC', 23, 1),
|
|
('SUBCON', 'Submitted to Contractor', 24, 1),
|
|
('SUBOTH', 'Submitted to Others', 25, 1),
|
|
('REPOWN', 'Reply by Owner', 31, 1),
|
|
('REPDSN', 'Reply by Designer', 32, 1),
|
|
('REPCSC', 'Reply by CSC', 33, 1),
|
|
('REPCON', 'Reply by Contractor', 34, 1),
|
|
('REPOTH', 'Reply by Others', 35, 1),
|
|
('RSBOWN', 'Resubmited by Owner', 41, 1),
|
|
('RSBDSN', 'Resubmited by Designer', 42, 1),
|
|
('RSBCSC', 'Resubmited by CSC', 43, 1),
|
|
('RSBCON', 'Resubmited by Contractor', 44, 1),
|
|
('CLBOWN', 'Closed by Owner', 51, 1),
|
|
('CLBDSN', 'Closed by Designer', 52, 1),
|
|
('CLBCSC', 'Closed by CSC', 53, 1),
|
|
('CLBCON', 'Closed by Contractor', 54, 1),
|
|
('CCBOWN', 'Canceled by Owner', 91, 1),
|
|
('CCBDSN', 'Canceled by Designer', 92, 1),
|
|
('CCBCSC', 'Canceled by CSC', 93, 1),
|
|
('CCBCON', 'Canceled by Contractor', 94, 1);
|
|
|
|
-- Seed correspondence_types
|
|
INSERT INTO correspondence_types (type_code, type_name, sort_order, is_active)
|
|
VALUES ('RFA', 'Request for Approval', 1, 1),
|
|
('RFI', 'Request for Information', 2, 1),
|
|
('TRANSMITTAL', 'Transmittal', 3, 1),
|
|
('EMAIL', 'Email', 4, 1),
|
|
('INSTRUCTION', 'Instruction', 5, 1),
|
|
('LETTER', 'Letter', 6, 1),
|
|
('MEMO', 'Memorandum', 7, 1),
|
|
('MOM', 'Minutes of Meeting', 8, 1),
|
|
('NOTICE', 'Notice', 9, 1),
|
|
('OTHER', 'Other', 10, 1);
|
|
|
|
-- Seed rfa_types
|
|
INSERT INTO rfa_types (
|
|
contract_id,
|
|
type_code,
|
|
type_name_en,
|
|
type_name_th
|
|
)
|
|
SELECT id,
|
|
'ADW',
|
|
'As Built Drawing',
|
|
'แบบร่างหลังการก่อสร้าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BC',
|
|
'Box Culvert',
|
|
'ท่อระบายน้ำรูปกล่อง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BM',
|
|
'Benchmark',
|
|
'หมุดหลักฐาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CER',
|
|
'Certificates',
|
|
'ใบรับรอง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CN',
|
|
'Canal Drainage',
|
|
'ระบบระบายน้ำในคลอง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CON',
|
|
'Contract',
|
|
'สัญญา'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DDS',
|
|
'Design Data Submission',
|
|
'นำส่งข้อมูลการออกแบบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DDW',
|
|
'Draft Drawing',
|
|
'แบบร่าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DRW',
|
|
'Drawings (All Types)',
|
|
'แบบก่อสร้าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DSN',
|
|
'Design/Calculation/Manual (All Stages)',
|
|
'ออกแบบ / คำนวณ / คู่มือ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'GEN',
|
|
'General',
|
|
'ทั่วไป'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ICR',
|
|
'Incident Report',
|
|
'รายงานการเกิดอุบัติเหตุและการบาดเจ็บ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'INS',
|
|
'Insurances/Bond/Guarantee',
|
|
'การประกัน / พันธบัตร / การค้ำประกัน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'INR',
|
|
'Inspection/Audit/Surveillance Report',
|
|
'รายงานการตรวจสอบ / การตรวจสอบ / รายงานการเฝ้าระวัง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ITP',
|
|
'Inspection and Test Plan',
|
|
'แผนการตรวจสอบและทดสอบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'JSA',
|
|
'Jobs Analysis',
|
|
'รายงานการวิเคราะห์ความปลอดภัย'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MAN',
|
|
'Manual',
|
|
'คู่มือ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MAT',
|
|
'Materials/Equipment/Plant',
|
|
'วัสดุ / อุปกรณ์ / โรงงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MOM',
|
|
'Minutes of Meeting',
|
|
'รายงานการประชุม'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MPR',
|
|
'Monthly Progress Report',
|
|
'รายงานความคืบหน้าประจำเดือน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MST',
|
|
'Method Statement for Construction/Installation',
|
|
'ขั้นตอนการก่อสร้าง / ติดตั้ง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'NDS',
|
|
'Non-Design Data Submission',
|
|
'นำส่งข้อมูลที่ไม่เกี่ยวข้องกับการออกแบบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PMA',
|
|
'Payment/Invoice/Retention/Estimate',
|
|
'การชำระเงิน / ใบแจ้งหนี้ / ประกันผลงาน / ประมาณการ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PRD',
|
|
'Procedure',
|
|
'ระเบียบปฏิบัติ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PRG',
|
|
'Progress of Construction',
|
|
'ความคืบหน้าของการก่อสร้าง / ภาพถ่าย / วิดีโอ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'QMS',
|
|
'Quality Document (Plan/Work Instruction)',
|
|
'เอกสารด้านคุณภาพ (แผนงาน / ข้อแนะนำในการทำงาน)'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'RPT',
|
|
'Report',
|
|
'รายงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SAR',
|
|
'Semi Annual Report',
|
|
'รายงานประจำหกเดือน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SCH',
|
|
'Schedule and Program',
|
|
'แผนงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SDW',
|
|
'Shop Drawing',
|
|
'แบบขยายรายละเอียด'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SI',
|
|
'Soil Investigation',
|
|
'การตรวจสอบดิน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SPE',
|
|
'Specification',
|
|
'ข้อกำหนด'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TNR',
|
|
'Training Report',
|
|
'รายงานการฝึกปฏิบัติ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'UC',
|
|
'Underground Construction',
|
|
'โครงสร้างใต้ดิน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'VEN',
|
|
'Vendor',
|
|
'ผู้ขาย'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'VRO',
|
|
'Variation Request/Instruction/Order',
|
|
'คำขอเปลี่ยนแปลง / ข้อเสนอแนะ / ข้อเรียกร้อง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'WTY',
|
|
'Warranty',
|
|
'การประกัน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'GEN',
|
|
'General',
|
|
'ทั่วไป'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CON',
|
|
'Contract',
|
|
'สัญญา'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'INS',
|
|
'Insurances/Bond/Guarantee',
|
|
'การประกัน / พันธบัตร / การค้ำประกัน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SCH',
|
|
'Schedule and Program',
|
|
'แผนงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PMA',
|
|
'Payment/Invoice/Retention/Estimate',
|
|
'การชำระเงิน / ใบแจ้งหนี้ / ประกันผลงาน / ประมาณการ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'VRO',
|
|
'Variation Request/Instruction/Order',
|
|
'คำขอเปลี่ยนแปลง / ข้อเสนอแนะ / ข้อเรียกร้อง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'VEN',
|
|
'Vendor',
|
|
'ผู้ขาย'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'WTY',
|
|
'Warranty',
|
|
'การประกัน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DRW',
|
|
'Drawings (All Types)',
|
|
'แบบก่อสร้าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DDW',
|
|
'Draft Drawing',
|
|
'แบบร่าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SDW',
|
|
'Shop Drawing',
|
|
'แบบขยายรายละเอียด'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ADW',
|
|
'As Built Drawing',
|
|
'แบบร่างหลังการก่อสร้าง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DDS',
|
|
'Design Data Submission',
|
|
'นำส่งข้อมูลการออกแบบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DSN',
|
|
'Design/Calculation/Manual (All Stages)',
|
|
'ออกแบบ / คำนวณ / คู่มือ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'NDS',
|
|
'Non-Design Data Submission',
|
|
'นำส่งข้อมูลที่ไม่เกี่ยวข้องกับการออกแบบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PRD',
|
|
'Procedure',
|
|
'ระเบียบปฏิบัติ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MST',
|
|
'Method Statement for Construction/Installation',
|
|
'ขั้นตอนการก่อสร้าง / ติดตั้ง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'QMS',
|
|
'Quality Document (Plan/Work Instruction)',
|
|
'เอกสารด้านคุณภาพ (แผนงาน / ข้อแนะนำในการทำงาน)'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'INR',
|
|
'Inspection/Audit/Surveillance Report',
|
|
'รายงานการตรวจสอบ / การตรวจสอบ / รายงานการเฝ้าระวัง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ITP',
|
|
'Inspection and Test Plan',
|
|
'แผนการตรวจสอบและทดสอบ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MAT',
|
|
'Materials/Equipment/Plant',
|
|
'วัสดุ / อุปกรณ์ / โรงงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SPE',
|
|
'Specification',
|
|
'ข้อกำหนด'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MAN',
|
|
'Manual',
|
|
'คู่มือ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CER',
|
|
'Certificates',
|
|
'ใบรับรอง'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SAR',
|
|
'Semi Annual Report',
|
|
'รายงานประจำหกเดือน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'JSA',
|
|
'Jobs Analysis',
|
|
'รายงานการวิเคราะห์ความปลอดภัย'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MOM',
|
|
'Minutes of Meeting',
|
|
'รายงานการประชุม'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MPR',
|
|
'Monthly Progress Report',
|
|
'รายงานความคืบหน้าประจำเดือน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ICR',
|
|
'Incident Report',
|
|
'รายงานการเกิดอุบัติเหตุและการบาดเจ็บ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PRG',
|
|
'Progress of Construction',
|
|
'ความคืบหน้าของการก่อสร้าง / ภาพถ่าย / วิดีโอ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'RPT',
|
|
'Report',
|
|
'รายงาน'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TNR',
|
|
'Training Report',
|
|
'รายงานการฝึกปฏิบัติ'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2';
|
|
|
|
-- Seed rfa_status_codes
|
|
INSERT INTO rfa_status_codes (
|
|
status_code,
|
|
status_name,
|
|
description,
|
|
sort_order
|
|
)
|
|
VALUES ('DFT', 'Draft', 'ฉบับร่าง', 1),
|
|
('FAP', 'For Approve', 'เพื่อขออนุมัติ', 11),
|
|
('FRE', 'For Review', 'เพื่อตรวจสอบ', 12),
|
|
('FCO', 'For Construction', 'เพื่อก่อสร้าง', 20),
|
|
('ASB', 'AS - Built', 'แบบก่อสร้างจริง', 30),
|
|
('OBS', 'Obsolete', 'ไม่ใช้งาน', 80),
|
|
('CC', 'Canceled', 'ยกเลิก', 99);
|
|
|
|
INSERT INTO rfa_approve_codes (
|
|
approve_code,
|
|
approve_name,
|
|
sort_order,
|
|
is_active
|
|
)
|
|
VALUES ('1A', 'Approved by Authority', 10, 1),
|
|
('1C', 'Approved by CSC', 11, 1),
|
|
('1N', 'Approved As Note', 12, 1),
|
|
('1R', 'Approved with Remarks', 13, 1),
|
|
('3C', 'Consultant Comments', 31, 1),
|
|
('3R', 'Revise and Resubmit', 32, 1),
|
|
('4X', 'Reject', 40, 1),
|
|
('5N', 'No Further Action', 50, 1);
|
|
|
|
-- Seed circulation_status_codes
|
|
INSERT INTO circulation_status_codes (code, description, sort_order)
|
|
VALUES ('OPEN', 'Open', 1),
|
|
('IN_REVIEW', 'In Review', 2),
|
|
('COMPLETED', 'ปCompleted', 3),
|
|
('CANCELLED', 'Cancelled / Withdrawn', 9);
|
|
|
|
-- ตาราง "แม่" ของ RFA (มีความสัมพันธ์ 1:N กับ rfa_revisions)
|
|
-- ==========================================================
|
|
-- SEED DATA 6B.md (Disciplines, RFA Types, Sub Types)
|
|
-- ==========================================================
|
|
-- 1. Seed ข้อมูล Disciplines (สาขางาน)
|
|
-- LCBP3-C1
|
|
INSERT INTO disciplines (
|
|
contract_id,
|
|
discipline_code,
|
|
code_name_th,
|
|
code_name_en
|
|
)
|
|
SELECT id,
|
|
'GEN',
|
|
'งานบริหารโครงการ',
|
|
'General Management'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'COD',
|
|
'สัญญาและข้อโต้แย้ง',
|
|
'Contracting'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'QSB',
|
|
'สำรวจปริมาณและควบคุมงบประมาณ',
|
|
'Quantity Survey and Budget Control'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PPG',
|
|
'บริหารแผนและความก้าวหน้า',
|
|
'Plan and Progress Management'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PRC',
|
|
'งานจัดซื้อ',
|
|
'Procurement'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SUB',
|
|
'ผู้รับเหมาช่วง',
|
|
'Subcontractor'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ODC',
|
|
'สำนักงาน-ควบคุมเอกสาร',
|
|
'Operation Docment Control'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'LAW',
|
|
'กฎหมาย',
|
|
'Law'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TRF',
|
|
'จราจร',
|
|
'Traffic'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BIM',
|
|
'BIM',
|
|
'Building information modeling'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SRV',
|
|
'งานสำรวจ',
|
|
'Survey'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SFT',
|
|
'ความปลอดภัย',
|
|
'Safety'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BST',
|
|
'งานโครงสร้างอาคาร',
|
|
'Building Structure Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TEM',
|
|
'งานชั่วคราว',
|
|
'Temporary Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'UTL',
|
|
'งานระบบสาธารณูปโภค',
|
|
'Utility'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'EPW',
|
|
'งานระบบไฟฟ้า',
|
|
'Electrical Power Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ECM',
|
|
'งานระบบไฟฟ้าสื่อสาร',
|
|
'Electrical Communication Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ENV',
|
|
'สิ่งแวดล้อม',
|
|
'Environment'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'AQV',
|
|
'คุณภาพอากาศและความสั่นสะเทือน',
|
|
'Air quality and vibration'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'WAB',
|
|
'คุณภาพน้ำและชีววิทยาทางน้ำ',
|
|
'Water quality and Aquatic biology'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ONS',
|
|
'วิศวกรรมชายฝั่ง',
|
|
'Onshore Engineer Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PPR',
|
|
'มวลชนสัมพันธ์และการประชาสัมพันธ์',
|
|
'Public Relations'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'OSW',
|
|
'งานก่อสร้างงานทางทะเล',
|
|
'Offshore Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DRE',
|
|
'งานขุดและถมทะเล',
|
|
'Dredging and Reclamation'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'REV',
|
|
'งานคันหินล้อมพื้นที่ถมทะเล',
|
|
'Revetment'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BRW',
|
|
'งานเขื่อนกันคลื่น',
|
|
'Breakwater'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SOI',
|
|
'ปรับปรุงคุณภาพดิน',
|
|
'Soil Improvement'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BLC',
|
|
'งานปรับปรุงคลองบางละมุง',
|
|
'Bang Lamung Canal Bank Protection'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'FUP',
|
|
'งานประตูระบายน้ำและท่อลอด',
|
|
'Floodgate & Under Ground Piping Works'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SWP',
|
|
'งานอาคารควบคุมสถานีสูบน้ำทะเล',
|
|
'Sea Water Pumping Station Control BuilDing'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'NAV',
|
|
'งานติดตั้งเครื่องหมายช่วงการเดินเรือ',
|
|
'Navigations Aids'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'GEO',
|
|
'งานด้านธรณีเทคนิค',
|
|
'Geotechnical'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CRW',
|
|
'งานด้านโยธา - Rock Works',
|
|
'Civil-Rock work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DVR',
|
|
'ทีมนักประดาน้ำ',
|
|
'Dive Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MTS',
|
|
'งานทดสอบวัสดุและธรณีเทคนิค',
|
|
'Materials and Geotechnical Testing'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1'
|
|
UNION ALL
|
|
SELECT id,
|
|
'OTH',
|
|
'อื่นๆ',
|
|
'Other'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C1';
|
|
|
|
-- LCBP3-C2
|
|
INSERT INTO disciplines (
|
|
contract_id,
|
|
discipline_code,
|
|
code_name_th,
|
|
code_name_en
|
|
)
|
|
SELECT id,
|
|
'GEN',
|
|
'งานบริหารโครงการ',
|
|
'Project Management'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'COD',
|
|
'สัญญาและข้อโต้แย้ง',
|
|
'Contracts and arguments'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'QSB',
|
|
'สำรวจปริมาณและควบคุมงบประมาณ',
|
|
'Survey the quantity and control the budget'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PPM',
|
|
'บริหารแผนและความก้าวหน้า',
|
|
'Plan Management & Progress'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ODC',
|
|
'สำนักงาน-ควบคุมเอกสาร',
|
|
'Document Control Office'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'LAW',
|
|
'กฎหมาย',
|
|
'Law'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TRF',
|
|
'จราจร',
|
|
'Traffic'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BIM',
|
|
'Building Information Modeling',
|
|
'Building Information Modeling'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SRV',
|
|
'งานสำรวจ',
|
|
'Survey'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SFT',
|
|
'ความปลอดภัย',
|
|
'Safety'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BST',
|
|
'งานโครงสร้างอาคาร',
|
|
'Building Structure'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'UTL',
|
|
'งานะบบสาธารณูปโภค',
|
|
'Public Utilities'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'EPW',
|
|
'งานระบบไฟฟ้า',
|
|
'Electrical Systems'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ECM',
|
|
'งานระบบไฟฟ้าสื่อสาร',
|
|
'Electrical Communication System'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ENV',
|
|
'สิ่งแวดล้อม',
|
|
'Environment'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'AQV',
|
|
'คุณภาพอากาศและความสั่นสะเทือน',
|
|
'Air Quality and Vibration'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'WAB',
|
|
'คุณภาพน้ำและชีววิทยาทางน้ำ',
|
|
'Water Quality and Aquatic Biology'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ONS',
|
|
'วิศวกรรมชายฝั่ง',
|
|
'Coastal Engineering'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'PPR',
|
|
'มวลชนสัมพันธ์และประชาสัมพันธ์',
|
|
'Mass Relations and Public Relations'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'OFW',
|
|
'งานก่อสร้างทางทะเล',
|
|
'Marine Construction'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'EXR',
|
|
'งานขุดและถมทะเล',
|
|
'Excavation and reclamation'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'GEO',
|
|
'งานด้านธรณีเทคนิค',
|
|
'Geotechnical work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'CRW',
|
|
'งานด้านโยธา - Rock Works',
|
|
'Civil Works - Rock Works'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DVW',
|
|
'ทีมนักประดาน้ำ',
|
|
'Team of Divers'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MTT',
|
|
'งานทดสอบวัสดุ',
|
|
'Materials Testing'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ARC',
|
|
'งานสถาปัตยกรรม',
|
|
'Architecture'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'STR',
|
|
'งานโครงสร้าง',
|
|
'Structural work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'SAN',
|
|
'งานระบบสุขาภิบาล',
|
|
'Sanitation System'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'DRA',
|
|
'งานระบบระบายน้ำ',
|
|
'Drainage system work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'TER',
|
|
'งานท่าเทียบเรือ',
|
|
'Terminal Work work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'BUD',
|
|
'งานอาคาร',
|
|
'Building'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'ROW',
|
|
'งานถนนและสะพาน',
|
|
'Road and Bridge Work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'MEC',
|
|
'งานเคริองกล',
|
|
'Mechanical work'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2'
|
|
UNION ALL
|
|
SELECT id,
|
|
'OTH',
|
|
'อื่น ๆ',
|
|
'Others'
|
|
FROM contracts
|
|
WHERE contract_code = 'LCBP3-C2';
|
|
|
|
-- 2. Seed ข้อมูล Correspondence Sub Types (Mapping RFA Types กับ Number)
|
|
-- เนื่องจาก sub_type_code ตรงกับ RFA Type Code แต่ Req ต้องการ Mapping เป็น Number
|
|
-- LCBP3-C1
|
|
-- LCBP3-C1
|
|
INSERT INTO correspondence_sub_types (
|
|
contract_id,
|
|
correspondence_type_id,
|
|
sub_type_code,
|
|
sub_type_name,
|
|
sub_type_number
|
|
)
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MAT',
|
|
'Material Approval',
|
|
'11'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C1'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'SHP',
|
|
'Shop Drawing Submittal',
|
|
'12'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C1'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'DWG',
|
|
'Document Approval',
|
|
'13'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C1'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MET',
|
|
'Engineering Document Submittal',
|
|
'14'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C1'
|
|
AND ct.type_code = 'RFA';
|
|
|
|
-- LCBP3-C2
|
|
INSERT INTO correspondence_sub_types (
|
|
contract_id,
|
|
correspondence_type_id,
|
|
sub_type_code,
|
|
sub_type_name,
|
|
sub_type_number
|
|
)
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MAT',
|
|
'Material Approval',
|
|
'21'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C2'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'SHP',
|
|
'Shop Drawing Submittal',
|
|
'22'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C2'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'DWG',
|
|
'Document Approval',
|
|
'23'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C2'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MET',
|
|
'Engineering Document Submittal',
|
|
'24'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C2'
|
|
AND ct.type_code = 'RFA';
|
|
|
|
-- LCBP3-C3
|
|
INSERT INTO correspondence_sub_types (
|
|
contract_id,
|
|
correspondence_type_id,
|
|
sub_type_code,
|
|
sub_type_name,
|
|
sub_type_number
|
|
)
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MAT',
|
|
'Material Approval',
|
|
'31'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C3'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'SHP',
|
|
'Shop Drawing Submittal',
|
|
'32'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C3'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'DWG',
|
|
'Document Approval',
|
|
'33'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C3'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MET',
|
|
'Engineering Document Submittal',
|
|
'34'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C3'
|
|
AND ct.type_code = 'RFA';
|
|
|
|
-- LCBP3-C4
|
|
INSERT INTO correspondence_sub_types (
|
|
contract_id,
|
|
correspondence_type_id,
|
|
sub_type_code,
|
|
sub_type_name,
|
|
sub_type_number
|
|
)
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MAT',
|
|
'Material Approval',
|
|
'41'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C4'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'SHP',
|
|
'Shop Drawing Submittal',
|
|
'42'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C4'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'DWG',
|
|
'Document Approval',
|
|
'43'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C4'
|
|
AND ct.type_code = 'RFA'
|
|
UNION ALL
|
|
SELECT c.id,
|
|
ct.id,
|
|
'MET',
|
|
'Engineering Document Submittal',
|
|
'44'
|
|
FROM contracts c,
|
|
correspondence_types ct
|
|
WHERE c.contract_code = 'LCBP3-C4'
|
|
AND ct.type_code = 'RFA';
|
|
|
|
INSERT INTO `correspondences` (
|
|
`id`,
|
|
`correspondence_number`,
|
|
`correspondence_type_id`,
|
|
`discipline_id`,
|
|
`is_internal_communication`,
|
|
`project_id`,
|
|
`originator_id`,
|
|
`created_at`,
|
|
`created_by`,
|
|
`deleted_at`
|
|
)
|
|
VALUES (
|
|
1,
|
|
'ผรม.1-คคง.-0242-2568',
|
|
6,
|
|
1,
|
|
0,
|
|
2,
|
|
41,
|
|
'2025-12-06 05:25:58',
|
|
1,
|
|
NULL
|
|
),
|
|
(
|
|
2,
|
|
'LCBP3-C2-RFA-ROW-RPT-0059-A',
|
|
1,
|
|
95,
|
|
0,
|
|
3,
|
|
42,
|
|
'2025-12-06 05:36:52',
|
|
1,
|
|
NULL
|
|
);
|
|
|
|
INSERT INTO `correspondence_revisions` (
|
|
`id`,
|
|
`correspondence_id`,
|
|
`revision_number`,
|
|
`revision_label`,
|
|
`is_current`,
|
|
`correspondence_status_id`,
|
|
`title`,
|
|
`document_date`,
|
|
`issued_date`,
|
|
`received_date`,
|
|
`due_date`,
|
|
`description`,
|
|
`details`,
|
|
`schema_version`,
|
|
`created_at`,
|
|
`created_by`,
|
|
`updated_by`
|
|
)
|
|
VALUES (
|
|
1,
|
|
1,
|
|
0,
|
|
NULL,
|
|
1,
|
|
4,
|
|
'นำส่งวีดิทัศน์ความก้าวหน้างานก่อสร้างงานทางทะเล (ฉบับสมบูรณ์) ประจำเดือนตุลาคม พ.ศ.2568 โครงการพัฒนาท่าเรือแหลมฉบัง ระยะที่ 3 (ส่วนที่ 1) งานก่อสร้างงานทางทะเล',
|
|
'2025-11-28',
|
|
'2025-11-28 12:26:29',
|
|
'2025-12-01 12:26:29',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
1,
|
|
'2025-12-06 05:30:17',
|
|
1,
|
|
NULL
|
|
);
|
|
|
|
INSERT INTO `rfas` (
|
|
`id`,
|
|
`rfa_type_id`,
|
|
`discipline_id`,
|
|
`created_at`,
|
|
`created_by`,
|
|
`deleted_at`
|
|
)
|
|
VALUES (1, 68, 75, '2025-12-06 05:40:02', 1, NULL);
|
|
|
|
INSERT INTO `rfa_revisions` (
|
|
`id`,
|
|
`correspondence_id`,
|
|
`rfa_id`,
|
|
`revision_number`,
|
|
`revision_label`,
|
|
`is_current`,
|
|
`rfa_status_code_id`,
|
|
`rfa_approve_code_id`,
|
|
`title`,
|
|
`document_date`,
|
|
`issued_date`,
|
|
`received_date`,
|
|
`approved_date`,
|
|
`description`,
|
|
`details`,
|
|
`schema_version`,
|
|
`created_at`,
|
|
`created_by`,
|
|
`updated_by`
|
|
)
|
|
VALUES (
|
|
1,
|
|
2,
|
|
1,
|
|
1,
|
|
'A',
|
|
0,
|
|
2,
|
|
NULL,
|
|
'ขออนุมัติผลการทดสอบเสาเข็มแบบ Dynamic Load Test สำหรับงานเสาเข็มตอกของอาคารสถานีไฟฟ้าย่อย 22 kV. No. 6',
|
|
'2025-12-03',
|
|
'2025-12-04',
|
|
'2025-12-04 12:40:19',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
1,
|
|
'2025-12-06 05:41:25',
|
|
NULL,
|
|
NULL
|
|
);
|
|
|
|
-- ==========================================================
|
|
-- 20. Workflow Definitions (Unified Workflow Engine)
|
|
-- ==========================================================
|
|
INSERT INTO `workflow_definitions` (
|
|
`id`,
|
|
`workflow_code`,
|
|
`version`,
|
|
`description`,
|
|
`dsl`,
|
|
`compiled`,
|
|
`is_active`,
|
|
`created_at`,
|
|
`updated_at`
|
|
)
|
|
VALUES (
|
|
-- CORRESPONDENCE_FLOW_V1
|
|
UUID(),
|
|
'CORRESPONDENCE_FLOW_V1',
|
|
1,
|
|
'Standard Correspondence Workflow - Draft → Submit → Review → Approve/Reject',
|
|
JSON_OBJECT(
|
|
'workflow',
|
|
'CORRESPONDENCE_FLOW_V1',
|
|
'version',
|
|
1,
|
|
'states',
|
|
JSON_ARRAY(
|
|
JSON_OBJECT(
|
|
'name',
|
|
'DRAFT',
|
|
'initial',
|
|
TRUE,
|
|
'on',
|
|
JSON_OBJECT(
|
|
'SUBMIT',
|
|
JSON_OBJECT('to', 'IN_REVIEW')
|
|
)
|
|
),
|
|
JSON_OBJECT(
|
|
'name',
|
|
'IN_REVIEW',
|
|
'on',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('to', 'APPROVED'),
|
|
'REJECT',
|
|
JSON_OBJECT('to', 'REJECTED'),
|
|
'RETURN',
|
|
JSON_OBJECT('to', 'DRAFT')
|
|
)
|
|
),
|
|
JSON_OBJECT('name', 'APPROVED', 'terminal', TRUE),
|
|
JSON_OBJECT('name', 'REJECTED', 'terminal', TRUE)
|
|
)
|
|
),
|
|
JSON_OBJECT(
|
|
'initialState',
|
|
'DRAFT',
|
|
'states',
|
|
JSON_OBJECT(
|
|
'DRAFT',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
TRUE,
|
|
'terminal',
|
|
false,
|
|
'transitions',
|
|
JSON_OBJECT(
|
|
'SUBMIT',
|
|
JSON_OBJECT('to', 'IN_REVIEW', 'events', JSON_ARRAY())
|
|
)
|
|
),
|
|
'IN_REVIEW',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
false,
|
|
'transitions',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('to', 'APPROVED', 'events', JSON_ARRAY()),
|
|
'REJECT',
|
|
JSON_OBJECT('to', 'REJECTED', 'events', JSON_ARRAY()),
|
|
'RETURN',
|
|
JSON_OBJECT('to', 'DRAFT', 'events', JSON_ARRAY())
|
|
)
|
|
),
|
|
'APPROVED',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
TRUE,
|
|
'transitions',
|
|
JSON_OBJECT()
|
|
),
|
|
'REJECTED',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
TRUE,
|
|
'transitions',
|
|
JSON_OBJECT()
|
|
)
|
|
)
|
|
),
|
|
TRUE,
|
|
NOW(),
|
|
NOW()
|
|
),
|
|
(
|
|
-- RFA_APPROVAL
|
|
UUID(),
|
|
'RFA_APPROVAL',
|
|
1,
|
|
'Request for Approval Workflow - Contractor Submit → Consultant Review → Owner Review',
|
|
JSON_OBJECT(
|
|
'workflow',
|
|
'RFA_APPROVAL',
|
|
'version',
|
|
1,
|
|
'states',
|
|
JSON_ARRAY(
|
|
JSON_OBJECT(
|
|
'name',
|
|
'DRAFT',
|
|
'initial',
|
|
TRUE,
|
|
'on',
|
|
JSON_OBJECT(
|
|
'SUBMIT',
|
|
JSON_OBJECT(
|
|
'to',
|
|
'CONSULTANT_REVIEW',
|
|
'require',
|
|
JSON_OBJECT('role', 'CONTRACTOR')
|
|
)
|
|
)
|
|
),
|
|
JSON_OBJECT(
|
|
'name',
|
|
'CONSULTANT_REVIEW',
|
|
'on',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('to', 'OWNER_REVIEW'),
|
|
'REJECT',
|
|
JSON_OBJECT('to', 'DRAFT')
|
|
)
|
|
),
|
|
JSON_OBJECT(
|
|
'name',
|
|
'OWNER_REVIEW',
|
|
'on',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('to', 'APPROVED'),
|
|
'REJECT',
|
|
JSON_OBJECT('to', 'CONSULTANT_REVIEW')
|
|
)
|
|
),
|
|
JSON_OBJECT('name', 'APPROVED', 'terminal', TRUE)
|
|
)
|
|
),
|
|
JSON_OBJECT(
|
|
'initialState',
|
|
'DRAFT',
|
|
'states',
|
|
JSON_OBJECT(
|
|
'DRAFT',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
TRUE,
|
|
'terminal',
|
|
false,
|
|
'transitions',
|
|
JSON_OBJECT(
|
|
'SUBMIT',
|
|
JSON_OBJECT(
|
|
'target',
|
|
'CONSULTANT_REVIEW',
|
|
'events',
|
|
JSON_ARRAY()
|
|
)
|
|
)
|
|
),
|
|
'CONSULTANT_REVIEW',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
false,
|
|
'transitions',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('target', 'OWNER_REVIEW', 'events', JSON_ARRAY()),
|
|
'REJECT',
|
|
JSON_OBJECT('target', 'DRAFT', 'events', JSON_ARRAY())
|
|
)
|
|
),
|
|
'OWNER_REVIEW',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
false,
|
|
'transitions',
|
|
JSON_OBJECT(
|
|
'APPROVE',
|
|
JSON_OBJECT('target', 'APPROVED', 'events', JSON_ARRAY()),
|
|
'REJECT',
|
|
JSON_OBJECT(
|
|
'target',
|
|
'CONSULTANT_REVIEW',
|
|
'events',
|
|
JSON_ARRAY()
|
|
)
|
|
)
|
|
),
|
|
'APPROVED',
|
|
JSON_OBJECT(
|
|
'initial',
|
|
false,
|
|
'terminal',
|
|
TRUE,
|
|
'transitions',
|
|
JSON_OBJECT()
|
|
)
|
|
)
|
|
),
|
|
TRUE,
|
|
NOW(),
|
|
NOW()
|
|
);
|