forked from JointCloud/pcm-coordinator
120 lines
4.0 KiB
Go
120 lines
4.0 KiB
Go
// Code generated by goctl. DO NOT EDIT.
|
|
|
|
package models
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
"fmt"
|
|
"strings"
|
|
|
|
"github.com/zeromicro/go-zero/core/stores/builder"
|
|
"github.com/zeromicro/go-zero/core/stores/sqlc"
|
|
"github.com/zeromicro/go-zero/core/stores/sqlx"
|
|
"github.com/zeromicro/go-zero/core/stringx"
|
|
"gorm.io/datatypes"
|
|
)
|
|
|
|
var (
|
|
hpcFieldNames = builder.RawFieldNames(&Hpc{})
|
|
hpcRows = strings.Join(hpcFieldNames, ",")
|
|
hpcRowsExpectAutoSet = strings.Join(stringx.Remove(hpcFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
|
|
hpcRowsWithPlaceHolder = strings.Join(stringx.Remove(hpcFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
|
|
)
|
|
|
|
type (
|
|
hpcModel interface {
|
|
Insert(ctx context.Context, data *Hpc) (sql.Result, error)
|
|
FindOne(ctx context.Context, id int64) (*Hpc, error)
|
|
FindOneByServiceNameName(ctx context.Context, serviceName sql.NullString, name sql.NullString) (*Hpc, error)
|
|
Update(ctx context.Context, data *Hpc) error
|
|
Delete(ctx context.Context, id int64) error
|
|
}
|
|
|
|
defaultHpcModel struct {
|
|
conn sqlx.SqlConn
|
|
table string
|
|
}
|
|
|
|
Hpc struct {
|
|
Id int64 `db:"id"` // id
|
|
TaskId int64 `db:"task_id"` // 任务id
|
|
ParticipantId int64 `db:"participant_id"` // 集群静态信息id
|
|
JobId string `db:"job_id"` // 作业id
|
|
Name string `db:"name"` // 名称
|
|
Status string `db:"status"` // 状态
|
|
StartTime string `db:"start_time"` // 开始时间
|
|
RunningTime int64 `db:"running_time"` // 运行时间
|
|
CardCount int64 `db:"card_count"` // 卡数
|
|
WorkDir string `db:"work_dir"` // 工作目录
|
|
WallTime string `db:"wall_time"` // 最大运行时长
|
|
Result string `db:"result"` // 运行结果
|
|
YamlString string `db:"yaml_string"`
|
|
CmdScript string `db:"cmd_script"`
|
|
//DerivedEs string `db:"derived_es"`
|
|
//Cluster string `db:"cluster"`
|
|
//BlockId string `db:"block_id"`
|
|
//AllocNodes uint32 `db:"alloc_nodes"`
|
|
//AllocCpu uint32 `db:"alloc_cpu"`
|
|
//Version string `db:"version"`
|
|
//Account string `db:"account"`
|
|
//ExitCode uint32 `db:"exit_code"`
|
|
//AssocId uint32 `db:"assoc_id"`
|
|
AppType string `db:"app_type"`
|
|
AppName string `db:"app_name"`
|
|
Queue string `db:"queue"`
|
|
SubmitType string `db:"submit_type"`
|
|
NNode string `db:"n_node"`
|
|
StdOutFile string `db:"std_out_file"`
|
|
StdErrFile string `db:"std_err_file"`
|
|
StdInput string `db:"std_input"`
|
|
//Environment map[string]string `gorm:"type:json;column:environment"`
|
|
Environment datatypes.JSON `gorm:"type:json"`
|
|
}
|
|
)
|
|
|
|
func newHpcModel(conn sqlx.SqlConn) *defaultHpcModel {
|
|
return &defaultHpcModel{
|
|
conn: conn,
|
|
table: "`hpc`",
|
|
}
|
|
}
|
|
|
|
func (m *defaultHpcModel) Delete(ctx context.Context, id int64) error {
|
|
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
|
|
_, err := m.conn.ExecCtx(ctx, query, id)
|
|
return err
|
|
}
|
|
|
|
func (m *defaultHpcModel) FindOne(ctx context.Context, id int64) (*Hpc, error) {
|
|
query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", hpcRows, m.table)
|
|
var resp Hpc
|
|
err := m.conn.QueryRowCtx(ctx, &resp, query, id)
|
|
switch err {
|
|
case nil:
|
|
return &resp, nil
|
|
case sqlc.ErrNotFound:
|
|
return nil, ErrNotFound
|
|
default:
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
func (m *defaultHpcModel) FindOneByServiceNameName(ctx context.Context, serviceName sql.NullString, name sql.NullString) (*Hpc, error) {
|
|
var resp Hpc
|
|
query := fmt.Sprintf("select %s from %s where `service_name` = ? and `name` = ? limit 1", hpcRows, m.table)
|
|
err := m.conn.QueryRowCtx(ctx, &resp, query, serviceName, name)
|
|
switch err {
|
|
case nil:
|
|
return &resp, nil
|
|
case sqlc.ErrNotFound:
|
|
return nil, ErrNotFound
|
|
default:
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
func (m *defaultHpcModel) tableName() string {
|
|
return m.table
|
|
}
|