Files
EdgeAPI/internal/rpc/services/service_file.go

48 lines
1.1 KiB
Go
Raw Normal View History

2020-11-04 15:51:32 +08:00
package services
import (
"context"
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
rpcutils "github.com/TeaOSLab/EdgeAPI/internal/rpc/utils"
"github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
)
// 文件相关服务
type FileService struct {
2020-11-24 15:02:44 +08:00
BaseService
2020-11-04 15:51:32 +08:00
}
// 创建文件
func (this *FileService) CreateFile(ctx context.Context, req *pb.CreateFileRequest) (*pb.CreateFileResponse, error) {
// 校验请求
_, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin)
if err != nil {
return nil, err
}
tx := this.NullTx()
fileId, err := models.SharedFileDAO.CreateFile(tx, "ipLibrary", "", req.Filename, req.Size)
2020-11-04 15:51:32 +08:00
if err != nil {
return nil, err
}
return &pb.CreateFileResponse{FileId: fileId}, nil
}
// 将文件置为已完成
func (this *FileService) UpdateFileFinished(ctx context.Context, req *pb.UpdateFileFinishedRequest) (*pb.RPCSuccess, error) {
2020-11-04 15:51:32 +08:00
// 校验请求
_, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin)
if err != nil {
return nil, err
}
tx := this.NullTx()
err = models.SharedFileDAO.UpdateFileIsFinished(tx, req.FileId)
2020-11-04 15:51:32 +08:00
if err != nil {
return nil, err
}
2020-11-24 15:02:44 +08:00
return this.Success()
2020-11-04 15:51:32 +08:00
}