2022-11-24 23:37:34 +08:00
|
|
|
|
// =================================================================================
|
|
|
|
|
// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish.
|
|
|
|
|
// =================================================================================
|
|
|
|
|
|
|
|
|
|
package dao
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"github.com/gogf/gf/v2/errors/gerror"
|
2023-01-18 16:23:39 +08:00
|
|
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
|
|
|
"github.com/gogf/gf/v2/os/gtime"
|
2022-11-24 23:37:34 +08:00
|
|
|
|
"hotgo/internal/consts"
|
|
|
|
|
"hotgo/internal/dao/internal"
|
|
|
|
|
"hotgo/internal/model/input/sysin"
|
|
|
|
|
"hotgo/internal/service"
|
|
|
|
|
"hotgo/utility/format"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// internalSysAttachmentDao is internal type for wrapping internal DAO implements.
|
|
|
|
|
type internalSysAttachmentDao = *internal.SysAttachmentDao
|
|
|
|
|
|
|
|
|
|
// sysAttachmentDao is the data access object for table hg_sys_attachment.
|
|
|
|
|
// You can define custom methods on it to extend its functionality as you wish.
|
|
|
|
|
type sysAttachmentDao struct {
|
|
|
|
|
internalSysAttachmentDao
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
// SysAttachment is globally public accessible object for table hg_sys_attachment operations.
|
|
|
|
|
SysAttachment = sysAttachmentDao{
|
|
|
|
|
internal.NewSysAttachmentDao(),
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func (dao *sysAttachmentDao) GetMd5File(ctx context.Context, md5 string) (data *sysin.AttachmentListModel, err error) {
|
|
|
|
|
if err = dao.Ctx(ctx).
|
|
|
|
|
Where("md5", md5).
|
|
|
|
|
Scan(&data); err != nil {
|
|
|
|
|
err = gerror.Wrap(err, consts.ErrorORM)
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if data == nil {
|
|
|
|
|
return nil, nil
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-18 16:23:39 +08:00
|
|
|
|
conf, err := service.SysConfig().GetUpload(ctx)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return nil, nil
|
|
|
|
|
}
|
|
|
|
|
|
2022-11-24 23:37:34 +08:00
|
|
|
|
data.SizeFormat = format.FileSize(data.Size)
|
2023-01-18 16:23:39 +08:00
|
|
|
|
data.FileUrl = service.CommonUpload().LastUrl(ctx, conf, data.FileUrl, data.Drive)
|
|
|
|
|
|
|
|
|
|
// 只有在上传时才会检查md5值,如果文件存在则更新最后上传时间,保证上传列表更新显示在最前面
|
|
|
|
|
if data.Id > 0 {
|
|
|
|
|
_, _ = dao.Ctx(ctx).Where("id", data.Id).Data(g.Map{
|
|
|
|
|
"status": consts.StatusEnabled,
|
|
|
|
|
"updated_at": gtime.Now(),
|
|
|
|
|
}).Update()
|
|
|
|
|
}
|
2022-11-24 23:37:34 +08:00
|
|
|
|
|
|
|
|
|
return data, nil
|
|
|
|
|
}
|