service/dbstruct/imageaudittask.go

44 lines
3.0 KiB
Go

package dbstruct
import (
"service/api/consts"
"service/bizcommon/util"
)
type ImageAuditTask struct {
Id *string `json:"id" bson:"_id"` // 图像审核任务表id
AuditedMedia *MediaComponent `json:"audited_media" bson:"audited_media"` // 待审核媒体内容(图像)
OldMedia *MediaComponent `json:"old_media" bson:"old_media"` // 旧媒体内容
RouteUrl *string `json:"route_url" bson:"route_url"` // 路由URL
AssociativeDatabase *string `json:"associative_database" bson:"associative_database"` // 关联数据库
AssociativeTableName *string `json:"associative_table_name" bson:"associative_table_name"` // 关联表名
AssociativeTableId *int64 `json:"associative_table_id" bson:"associative_table_id"` // 关联表主键ID
AssociativeTableColumn *string `json:"associative_table_column" bson:"associative_table_column"` // 关联表字段
BatchId *string `json:"batch_id" bson:"batch_id"` // 批次号
IsFragmented *int64 `json:"is_fragmented" bson:"is_fragmented"` // 是否分片
FragmentsNum *int64 `json:"fragments_num" bson:"fragments_num"` // 分片数量
ImageAuditId *string `json:"image_audit_id" bson:"image_audit_id"` // 图像审核表id(未分片时通过该id关联图像审核表)
ImageAuditFragmentIds *[]string `json:"image_audit_fragment_ids" bson:"image_audit_fragment_ids"` // 图像审核表分片id(分片时通过该id关联图像审核表)
IsAligned *int64 `json:"is_aligned" bson:"is_aligned"` // 是否已经对齐(详见consts->status->aligned)
Status *int64 `json:"status" bson:"status"` // 审核状态
Remarks *string `json:"remarks" bson:"remarks"` // 备注
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
Ut *int64 `json:"ut" bson:"ut"` // 更新时间
DelFlag *int64 `json:"del_flag" bson:"del_flag"` // 删除标记
}
func (p *ImageAuditTask) IsEmpty() bool {
if p == nil {
return true
}
return p.Id == nil || p.AuditedMedia.IsEmpty() || util.DerefString(p.AssociativeDatabase) == "" || util.DerefString(p.AssociativeTableName) == "" ||
p.AssociativeTableId == nil || util.DerefString(p.AssociativeTableColumn) == ""
}
func (p *ImageAuditTask) IsForAlignment() bool {
if p == nil || p.Status == nil {
return false
}
return util.DerefInt64(p.Status) == consts.ImageAudit_ForAlignment
}