diff --git a/database/install/ne_software.sql b/database/install/ne_software.sql index 839c12dd..aa89eb93 100644 --- a/database/install/ne_software.sql +++ b/database/install/ne_software.sql @@ -8,11 +8,11 @@ SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS `ne_software`; -CREATE TABLE `ne_software` ( +CREATE TABLE `ne_software` ( `id` int NOT NULL AUTO_INCREMENT, - `type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包类型', + `ne_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '网元类型', `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包名称', - `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包路径', + `path` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包路径', `version` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包版本', `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包说明', `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '创建者', @@ -20,7 +20,7 @@ CREATE TABLE `ne_software` ( `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '更新者', `update_time` bigint DEFAULT '0' COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, - UNIQUE KEY `uk_type_name_version` (`type`,`name`,`version`) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一' + UNIQUE KEY `uk_type_name_version` (`ne_type`,`name`,`version`) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='网元软件包'; SET FOREIGN_KEY_CHECKS=1; diff --git a/database/upgrade/upg_ne_software.sql b/database/upgrade/upg_ne_software.sql index b869275e..5406340b 100644 --- a/database/upgrade/upg_ne_software.sql +++ b/database/upgrade/upg_ne_software.sql @@ -5,9 +5,9 @@ SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- CREATE TABLE IF NOT EXISTS `ne_software` ( `id` int NOT NULL AUTO_INCREMENT, - `type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包类型', + `ne_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '网元类型', `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包名称', - `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包路径', + `path` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包路径', `version` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包版本', `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '包说明', `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '创建者', @@ -15,7 +15,7 @@ CREATE TABLE IF NOT EXISTS `ne_software` ( `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '更新者', `update_time` bigint DEFAULT '0' COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, - UNIQUE KEY `uk_type_name_version` (`type`,`name`,`version`) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一' + UNIQUE KEY `uk_type_name_version` (`ne_type`,`name`,`version`) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='网元软件包'; -- 20240511前旧表更新 @@ -25,16 +25,15 @@ ALTER TABLE `ne_software` ADD COLUMN IF NOT EXISTS `description` varchar(500) CH ALTER TABLE `ne_software` ADD COLUMN IF NOT EXISTS `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者' AFTER `description`; ALTER TABLE `ne_software` ADD COLUMN IF NOT EXISTS `create_time` bigint NULL DEFAULT 0 COMMENT '创建时间' AFTER `create_by`; ALTER TABLE `ne_software` ADD COLUMN IF NOT EXISTS `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者' AFTER `create_time`; -ALTER TABLE `ne_software` ADD COLUMN IF NOT EXISTS `type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包类型' AFTER `id`; +ALTER TABLE `ne_software` MODIFY COLUMN `ne_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '网元类型' AFTER `id`; ALTER TABLE `ne_software` MODIFY COLUMN `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '包路径' AFTER `name`; ALTER TABLE `ne_software` MODIFY COLUMN `version` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '包版本' AFTER `path`; ALTER TABLE `ne_software` MODIFY COLUMN `update_time` bigint NULL DEFAULT 0 COMMENT '更新时间' AFTER `update_by`; -ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `ne_type`; ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `file_name`; ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `md5_sum`; ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `status`; ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `comment`; ALTER TABLE `ne_software` DROP COLUMN IF EXISTS `patch_time`; -ALTER TABLE `ne_software` ADD UNIQUE INDEX IF NOT EXISTS `uk_type_name_version`(`type` ASC, `name` ASC, `version` ASC) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一'; + ALTER TABLE `ne_software` ADD UNIQUE INDEX IF NOT EXISTS `uk_type_name_version`(`ne_type` ASC, `name` ASC, `version` ASC) USING BTREE COMMENT '唯一网元类型和文件名版本是否唯一'; SET FOREIGN_KEY_CHECKS=1; diff --git a/src/modules/network_element/controller/ne_software.go b/src/modules/network_element/controller/ne_software.go index 85bfeb33..d5658d7c 100644 --- a/src/modules/network_element/controller/ne_software.go +++ b/src/modules/network_element/controller/ne_software.go @@ -71,7 +71,7 @@ func (s *NeSoftwareController) Add(c *gin.Context) { // 找到已存在的删除后重新添加 neSoftwares := s.neSoftwareService.SelectList(model.NeSoftware{ - Type: body.Type, + NeType: body.NeType, Name: body.Name, Version: body.Version, }) @@ -111,7 +111,7 @@ func (s *NeSoftwareController) Edit(c *gin.Context) { } // 检查属性值唯一 - uniqueSoftware := s.neSoftwareService.CheckUniqueTypeAndNameAndVersion(body.Type, body.Name, body.Version, body.ID) + uniqueSoftware := s.neSoftwareService.CheckUniqueTypeAndNameAndVersion(body.NeType, body.Name, body.Version, body.ID) if !uniqueSoftware { // 网元软件包操作【%s】失败,网元类型与文件名版本已存在 msg := i18n.TTemplate(language, "neSoftware.errKeyExists", map[string]any{"name": body.Name}) @@ -176,14 +176,14 @@ func (s *NeSoftwareController) NewNeVersion(c *gin.Context) { // 找到已存在的软件包信息 neSoftwares := s.neSoftwareService.SelectList(model.NeSoftware{ - Type: body.Type, + NeType: body.NeType, Name: body.Name, Version: body.Version, }) if len(neSoftwares) > 0 { neSoftware := neSoftwares[0] s.neSoftwareService.UpdateVersions(neSoftware, model.NeVersion{ - NeType: neSoftware.Type, + NeType: neSoftware.NeType, UpdateBy: ctx.LoginUserToUserName(c), }) c.JSON(200, result.Ok(nil)) diff --git a/src/modules/network_element/model/ne_software.go b/src/modules/network_element/model/ne_software.go index 353e0c95..3eaf9569 100644 --- a/src/modules/network_element/model/ne_software.go +++ b/src/modules/network_element/model/ne_software.go @@ -3,7 +3,7 @@ package model // NeSoftware 网元软件包 ne_software type NeSoftware struct { ID string `json:"id" gorm:"id"` - Type string `json:"type" gorm:"type" binding:"required"` // 包类型 + NeType string `json:"neType" gorm:"ne_type" binding:"required"` // 网元类型 Name string `json:"name" gorm:"name" binding:"required"` // 包名称 Path string `json:"path" gorm:"path"` // 包路径 Version string `json:"version" gorm:"version" binding:"required"` // 包版本 diff --git a/src/modules/network_element/repository/ne_software.impl.go b/src/modules/network_element/repository/ne_software.impl.go index edb520c1..5aa8cda6 100644 --- a/src/modules/network_element/repository/ne_software.impl.go +++ b/src/modules/network_element/repository/ne_software.impl.go @@ -15,12 +15,12 @@ import ( // 实例化数据层 NewNeSoftware 结构体 var NewNeSoftwareImpl = &NeSoftwareImpl{ selectSql: `select - id, type, name, path, version, description, create_by, create_time, update_by, update_time + id, ne_type, name, path, version, description, create_by, create_time, update_by, update_time from ne_software`, resultMap: map[string]string{ "id": "ID", - "type": "Type", + "ne_type": "NeType", "name": "Name", "path": "Path", "version": "Version", @@ -60,16 +60,16 @@ func (r *NeSoftwareImpl) SelectPage(query map[string]any) map[string]any { // 查询条件拼接 var conditions []string var params []any - if v, ok := query["type"]; ok && v != "" { + if v, ok := query["neType"]; ok && v != "" { softwareType := v.(string) if strings.Contains(softwareType, ",") { softwareTypeArr := strings.Split(softwareType, ",") placeholder := repo.KeyPlaceholderByQuery(len(softwareTypeArr)) - conditions = append(conditions, "type in ("+placeholder+")") + conditions = append(conditions, "ne_type in ("+placeholder+")") parameters := repo.ConvertIdsSlice(softwareTypeArr) params = append(params, parameters...) } else { - conditions = append(conditions, "type = ?") + conditions = append(conditions, "ne_type = ?") params = append(params, strings.Trim(softwareType, " ")) } } @@ -131,9 +131,9 @@ func (r *NeSoftwareImpl) SelectList(neSoftware model.NeSoftware) []model.NeSoftw // 查询条件拼接 var conditions []string var params []any - if neSoftware.Type != "" { - conditions = append(conditions, "type = ?") - params = append(params, neSoftware.Type) + if neSoftware.NeType != "" { + conditions = append(conditions, "ne_type = ?") + params = append(params, neSoftware.NeType) } if neSoftware.Path != "" { conditions = append(conditions, "path = ?") @@ -184,9 +184,9 @@ func (r *NeSoftwareImpl) CheckUniqueTypeAndNameAndVersion(neSoftware model.NeSof // 查询条件拼接 var conditions []string var params []any - if neSoftware.Type != "" { - conditions = append(conditions, "type = ?") - params = append(params, neSoftware.Type) + if neSoftware.NeType != "" { + conditions = append(conditions, "ne_type = ?") + params = append(params, neSoftware.NeType) } if neSoftware.Version != "" { conditions = append(conditions, "version = ?") @@ -222,8 +222,8 @@ func (r *NeSoftwareImpl) CheckUniqueTypeAndNameAndVersion(neSoftware model.NeSof func (r *NeSoftwareImpl) Insert(neSoftware model.NeSoftware) string { // 参数拼接 params := make(map[string]any) - if neSoftware.Type != "" { - params["type"] = neSoftware.Type + if neSoftware.NeType != "" { + params["ne_type"] = neSoftware.NeType } if neSoftware.Name != "" { params["name"] = neSoftware.Name @@ -271,8 +271,8 @@ func (r *NeSoftwareImpl) Insert(neSoftware model.NeSoftware) string { func (r *NeSoftwareImpl) Update(neSoftware model.NeSoftware) int64 { // 参数拼接 params := make(map[string]any) - if neSoftware.Type != "" { - params["type"] = neSoftware.Type + if neSoftware.NeType != "" { + params["ne_type"] = neSoftware.NeType } if neSoftware.Name != "" { params["name"] = neSoftware.Name diff --git a/src/modules/network_element/service/ne_software.impl.go b/src/modules/network_element/service/ne_software.impl.go index a1e23929..8ac52094 100644 --- a/src/modules/network_element/service/ne_software.impl.go +++ b/src/modules/network_element/service/ne_software.impl.go @@ -47,7 +47,7 @@ func (r *NeSoftwareImpl) Insert(neSoftware model.NeSoftware) string { inserId := r.neSoftwareRepository.Insert(neSoftware) if inserId != "" { // 更新同类型的新包版本 - neVersions := NewNeVersionImpl.SelectList(model.NeVersion{NeType: neSoftware.Type}) + neVersions := NewNeVersionImpl.SelectList(model.NeVersion{NeType: neSoftware.NeType}) if len(neVersions) > 0 { for _, neVersion := range neVersions { neVersion.NewName = neSoftware.Name @@ -68,7 +68,7 @@ func (r *NeSoftwareImpl) Update(neSoftware model.NeSoftware) int64 { if rows > 0 { // 更新同类型的新包版本 neVersions := NewNeVersionImpl.SelectList(model.NeVersion{ - NeType: neSoftware.Type, + NeType: neSoftware.NeType, Status: "3", }) if len(neVersions) > 0 { @@ -112,9 +112,9 @@ func (r *NeSoftwareImpl) DeleteByIds(ids []string) (int64, error) { } // CheckUniqueTypeAndNameAndVersion 校验网元类型和文件名版本是否唯一 -func (r *NeSoftwareImpl) CheckUniqueTypeAndNameAndVersion(softwareType, name, version, id string) bool { +func (r *NeSoftwareImpl) CheckUniqueTypeAndNameAndVersion(neType, name, version, id string) bool { uniqueId := r.neSoftwareRepository.CheckUniqueTypeAndNameAndVersion(model.NeSoftware{ - Type: softwareType, + NeType: neType, Name: name, Version: version, })