diff --git a/backend/components.d.ts b/backend/components.d.ts index e281758..2483e63 100644 --- a/backend/components.d.ts +++ b/backend/components.d.ts @@ -29,6 +29,7 @@ declare module 'vue' { ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem'] ElCollapseTransition: typeof import('element-plus/es')['ElCollapseTransition'] ElColorPicker: typeof import('element-plus/es')['ElColorPicker'] + ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] ElContainer: typeof import('element-plus/es')['ElContainer'] ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] ElDescriptions: typeof import('element-plus/es')['ElDescriptions'] diff --git a/backend/src/App.vue b/backend/src/App.vue index 3e92a0b..6c5c720 100644 --- a/backend/src/App.vue +++ b/backend/src/App.vue @@ -1,8 +1,11 @@ diff --git a/sql/alter_contact_add_qq.sql b/sql/alter_contact_add_qq.sql new file mode 100644 index 0000000..d684dfa --- /dev/null +++ b/sql/alter_contact_add_qq.sql @@ -0,0 +1,42 @@ +-- 通讯录表新增 QQ 字段 +-- 对应模型:go/models/contact.go BackendErpContact +-- +-- 说明:历史迁移 alter_contact_rename_to_global.sql 把表名从 yz_backend_erp_contact +-- 改名为 yz_backend_contact,但模型 BackendErpContact.TableName() 仍返回旧表名。 +-- 为避免不同环境表名不一致导致字段加不上,这里按实际存在的表逐个补齐,可重复执行。 + +SET @db := DATABASE(); + +-- 旧表名(模型当前使用的表名) +SET @tbl := 'yz_backend_erp_contact'; +SET @table_exists := ( + SELECT COUNT(*) FROM information_schema.TABLES + WHERE TABLE_SCHEMA = @db AND TABLE_NAME = @tbl +); +SET @column_exists := ( + SELECT COUNT(*) FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = @db AND TABLE_NAME = @tbl AND COLUMN_NAME = 'qq' +); +SET @sql := IF(@table_exists > 0 AND @column_exists = 0, + CONCAT('ALTER TABLE `', @tbl, '` ADD COLUMN `qq` VARCHAR(20) NULL COMMENT ''QQ号'' AFTER `wechat`'), + 'SELECT 1'); +PREPARE stmt FROM @sql; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; + +-- 新表名(执行过改名迁移的环境) +SET @tbl := 'yz_backend_contact'; +SET @table_exists := ( + SELECT COUNT(*) FROM information_schema.TABLES + WHERE TABLE_SCHEMA = @db AND TABLE_NAME = @tbl +); +SET @column_exists := ( + SELECT COUNT(*) FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = @db AND TABLE_NAME = @tbl AND COLUMN_NAME = 'qq' +); +SET @sql := IF(@table_exists > 0 AND @column_exists = 0, + CONCAT('ALTER TABLE `', @tbl, '` ADD COLUMN `qq` VARCHAR(20) NULL COMMENT ''QQ号'' AFTER `wechat`'), + 'SELECT 1'); +PREPARE stmt FROM @sql; +EXECUTE stmt; +DEALLOCATE PREPARE stmt;