Browse Source

增加用户相关接口

feature_wq
Sydonian 9 months ago
parent
commit
a48e23362d
3 changed files with 84 additions and 2 deletions
  1. +74
    -0
      sdks/storage/cdsapi/user.go
  2. +10
    -0
      sdks/storage/models.go
  3. +0
    -2
      utils/config/config.go

+ 74
- 0
sdks/storage/cdsapi/user.go View File

@@ -0,0 +1,74 @@
package cdsapi

import (
"net/url"

"gitlink.org.cn/cloudream/common/consts/errorcode"
cdssdk "gitlink.org.cn/cloudream/common/sdks/storage"
"gitlink.org.cn/cloudream/common/utils/http2"
)

const UserCreatePath = "/user/create"

type UserCreate struct {
Name string `json:"name" binding:"required"`
}
type UserCreateResp struct {
User cdssdk.User `json:"user"`
}

func (c *Client) UserCreate(req *UserCreate) (*UserCreateResp, error) {
url, err := url.JoinPath(c.baseURL, UserCreatePath)
if err != nil {
return nil, err
}

resp, err := http2.PostJSON(url, http2.RequestParam{
Body: req,
})
if err != nil {
return nil, err
}
codeResp, err := ParseJSONResponse[response[UserCreateResp]](resp)
if err != nil {
return nil, err
}

if codeResp.Code == errorcode.OK {
return &codeResp.Data, nil
}

return nil, codeResp.ToError()
}

const UserDeletePath = "/user/delete"

type UserDelete struct {
UserID cdssdk.UserID `json:"userID" binding:"required"`
}

type UserDeleteResp struct{}

func (c *Client) UserDelete(req *UserDelete) error {
url, err := url.JoinPath(c.baseURL, UserDeletePath)
if err != nil {
return err
}

resp, err := http2.PostJSON(url, http2.RequestParam{
Body: req,
})
if err != nil {
return err
}
codeResp, err := ParseJSONResponse[response[UserDeleteResp]](resp)
if err != nil {
return err
}

if codeResp.Code == errorcode.OK {
return nil
}

return codeResp.ToError()
}

+ 10
- 0
sdks/storage/models.go View File

@@ -229,6 +229,16 @@ func (b *SegmentRedundancy) CalcSegmentRange(start int64, end *int64) (segIdxSta
return return
} }


type User struct {
UserID UserID `gorm:"column:UserID; primaryKey; type:bigint" json:"userID"`
Name string `gorm:"column:Name; type:varchar(255); not null" json:"name"`
Password string `gorm:"column:Password; type:varchar(255); not null" json:"password"`
}

func (User) TableName() string {
return "User"
}

const ( const (
PackageStateNormal = "Normal" PackageStateNormal = "Normal"
PackageStateDeleted = "Deleted" PackageStateDeleted = "Deleted"


+ 0
- 2
utils/config/config.go View File

@@ -33,8 +33,6 @@ func DefaultLoad(modeulName string, defCfg interface{}) error {
// filepath.Join用于将多个路径组合成一个路径 // filepath.Join用于将多个路径组合成一个路径
configFilePath := filepath.Join(filepath.Dir(execPath), "..", "confs", fmt.Sprintf("%s.config.json", modeulName)) configFilePath := filepath.Join(filepath.Dir(execPath), "..", "confs", fmt.Sprintf("%s.config.json", modeulName))


configFilePath = "D:\\Work\\Codes\\workspace\\workspace\\scheduler\\common\\assets\\confs\\middleware.json"

return Load(configFilePath, defCfg) return Load(configFilePath, defCfg)
} }




Loading…
Cancel
Save