db08280f6e
Migrations:
- htyws: add org_id, org_visible columns to course_group
- htykc: create course_package_item table
Backend:
- CourseGroup: add org_visible, org_id fields; find_org_visible_by_org_id query
- CoursePackageItem: new model with sync/list API
- SUPERVISOR role check for package item management
- New endpoint: GET /api/v1/ws/find_org_visible_course_groups
- New endpoints: POST /api/v1/clazz/course-package/item/sync,
GET /api/v1/clazz/course-package/item/list/{package_id}
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
14 lines
584 B
SQL
14 lines
584 B
SQL
CREATE TABLE IF NOT EXISTS course_package_item (
|
|
id VARCHAR NOT NULL PRIMARY KEY,
|
|
package_id VARCHAR NOT NULL,
|
|
course_group_id VARCHAR NOT NULL,
|
|
sort_order INT4 DEFAULT 0,
|
|
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
|
|
created_by VARCHAR,
|
|
is_delete BOOL DEFAULT FALSE
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_cpi_package_id ON course_package_item (package_id);
|
|
CREATE INDEX IF NOT EXISTS idx_cpi_course_group_id ON course_package_item (course_group_id);
|
|
CREATE INDEX IF NOT EXISTS idx_cpi_package_course_group ON course_package_item (package_id, course_group_id);
|