增加删除配置接口
This commit is contained in:
parent
9eb2fccd67
commit
bf6d8adc4c
@ -143,6 +143,19 @@ func initRouter(router *gin.Engine) {
|
|||||||
}
|
}
|
||||||
response.ManagerAPISuccess(ctx, map[string]interface{}{})
|
response.ManagerAPISuccess(ctx, map[string]interface{}{})
|
||||||
})
|
})
|
||||||
|
// 删除配置
|
||||||
|
router.POST("/config/delete", func(ctx *gin.Context) {
|
||||||
|
deleteForm, err := manager.Config.ValidateDeleteConfigForm(ctx)
|
||||||
|
if nil != err {
|
||||||
|
response.ManagerAPIFail(ctx, -1, map[string]interface{}{"reason": err.Error()})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if err := manager.Config.Delete(deleteForm); nil != err {
|
||||||
|
response.ManagerAPIFail(ctx, -1, map[string]interface{}{"reason": err.Error()})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
response.ManagerAPISuccess(ctx, map[string]interface{}{})
|
||||||
|
})
|
||||||
|
|
||||||
// 读取配置(从内存读取)
|
// 读取配置(从内存读取)
|
||||||
router.GET("/config/read", func(ctx *gin.Context) {
|
router.GET("/config/read", func(ctx *gin.Context) {
|
||||||
|
@ -97,6 +97,15 @@ func (b *base) Detail(dbInstance *gorm.DB, condition interface{}, result interfa
|
|||||||
return dbInstance.First(result, condition).Error
|
return dbInstance.First(result, condition).Error
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Delete 删除数据
|
||||||
|
//
|
||||||
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
//
|
||||||
|
// Date : 12:24 下午 2021/12/1
|
||||||
|
func (b *base) Delete(dbInstance *gorm.DB, table string, primaryID int64, model interface{}) error {
|
||||||
|
return dbInstance.Table(table).Where("id = ?", primaryID).Delete(model).Error
|
||||||
|
}
|
||||||
|
|
||||||
// Count 查询数量
|
// Count 查询数量
|
||||||
//
|
//
|
||||||
// Author : go_developer@163.com<白茶清欢>
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
@ -20,3 +20,16 @@ type CreateOrUpdateConfig struct {
|
|||||||
OperateUserID string `json:"operate_user_id"` // 操作人ID
|
OperateUserID string `json:"operate_user_id"` // 操作人ID
|
||||||
Description string `json:"description"` // 配置描述
|
Description string `json:"description"` // 配置描述
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DeleteConfig 删除配置
|
||||||
|
//
|
||||||
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
//
|
||||||
|
// Date : 12:13 下午 2021/12/1
|
||||||
|
type DeleteConfig struct {
|
||||||
|
NamespaceID int64 `json:"namespace_id"` // 命名空间ID
|
||||||
|
Namespace string `json:"namespace"` // 命名空间
|
||||||
|
Key string `json:"key"` // key
|
||||||
|
OperateUserID string `json:"operate_user_id"` // 操作人ID
|
||||||
|
Description string `json:"description"` // 操作描述
|
||||||
|
}
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
package manager
|
package manager
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"time"
|
"time"
|
||||||
@ -143,6 +144,30 @@ func (c *config) Update(dataForm *form.CreateOrUpdateConfig, namespaceInfo *mode
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Delete 删除配置
|
||||||
|
//
|
||||||
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
//
|
||||||
|
// Date : 12:16 下午 2021/12/1
|
||||||
|
func (c *config) Delete(dataForm *form.DeleteConfig) error {
|
||||||
|
var (
|
||||||
|
cfgInfo *model.Config
|
||||||
|
err error
|
||||||
|
)
|
||||||
|
// 读取key的配置
|
||||||
|
if cfgInfo, err = c.GetConfigInfo(dataForm.NamespaceID, dataForm.Key); nil != err {
|
||||||
|
return errors.New("要删除的key查询失败 : " + err.Error())
|
||||||
|
}
|
||||||
|
if err = dao.Config.Delete(dao.DBInstance, "config", cfgInfo.ID, model.Config{}); nil != err {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
byteData, _ := json.Marshal(cfgInfo)
|
||||||
|
logData := c.GetLogData(cfgInfo.NamespaceID, cfgInfo.ID, dataForm.OperateUserID, model.LogTypeDeleteConfig, "删除配置-"+dataForm.Description)
|
||||||
|
logData.BeforeValue = string(byteData)
|
||||||
|
_ = dao.Log.CreateNewData(dao.DBInstance, logData, &dao.Option{DBTable: "log"})
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// ValidateCreateOrUpdateConfigForm ...
|
// ValidateCreateOrUpdateConfigForm ...
|
||||||
//
|
//
|
||||||
// Author : go_developer@163.com<白茶清欢>
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
@ -173,6 +198,33 @@ func (c *config) ValidateCreateOrUpdateConfigForm(ctx *gin.Context) (*form.Creat
|
|||||||
return &dataForm, nil
|
return &dataForm, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ValidateDeleteConfigForm 删除配置表单
|
||||||
|
//
|
||||||
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
//
|
||||||
|
// Date : 2:12 下午 2021/12/1
|
||||||
|
func (c *config) ValidateDeleteConfigForm(ctx *gin.Context) (*form.DeleteConfig, error) {
|
||||||
|
var (
|
||||||
|
dataForm form.DeleteConfig
|
||||||
|
err error
|
||||||
|
)
|
||||||
|
|
||||||
|
if err = c.ParsePostForm(ctx, &dataForm); nil != err {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if dataForm.NamespaceID == 0 {
|
||||||
|
dataForm.NamespaceID = Namespace.GetNamespaceIDByNamespace(dataForm.Namespace)
|
||||||
|
}
|
||||||
|
if dataForm.NamespaceID == 0 {
|
||||||
|
return nil, errors.New("namespace or namespace_id must exist")
|
||||||
|
}
|
||||||
|
if len(dataForm.Key) == 0 {
|
||||||
|
return nil, errors.New("delete is not allowed empty")
|
||||||
|
}
|
||||||
|
return &dataForm, nil
|
||||||
|
}
|
||||||
|
|
||||||
// GetConfigInfo 读取配置
|
// GetConfigInfo 读取配置
|
||||||
//
|
//
|
||||||
// Author : go_developer@163.com<白茶清欢>
|
// Author : go_developer@163.com<白茶清欢>
|
||||||
|
Loading…
Reference in New Issue
Block a user