2023-02-28 15:27:00 +00:00
|
|
|
|
package model
|
|
|
|
|
|
2023-03-01 08:24:26 +00:00
|
|
|
|
type AuditStatus int64
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
AuditType_preSave AuditStatus = 1 //1= 暂存
|
|
|
|
|
AuditType_Pending AuditStatus = 2 //2= 待审核
|
|
|
|
|
AuditType_Failed AuditStatus = 3 //3= 审核失败
|
|
|
|
|
AuditType_Pass AuditStatus = 4 //4= 审核通过
|
|
|
|
|
AuditType_Supplemented AuditStatus = 5 //5= 待补充
|
|
|
|
|
)
|
|
|
|
|
|
2023-02-28 15:27:00 +00:00
|
|
|
|
// 此表作为画家宝中的画作中间表的主表(画作主要数据保存在画作微服务中),请悉知
|
|
|
|
|
type ArtworkLockRecord struct {
|
|
|
|
|
Model
|
|
|
|
|
ArtistUid string `json:"artistUid" gorm:"column:artist_uid;type:varchar(191);comment:画家uid"`
|
|
|
|
|
ArtworkUid string `json:"artworkUid" gorm:"column:artwork_uid;type:varchar(191);comment:画作uid"`
|
2023-03-01 08:24:26 +00:00
|
|
|
|
Status int64 `json:"status" gorm:"column:status;default:1;comment:1=准备/暂存 2=锁定 3=解锁"` //这个锁的目的是配合下面的LockTime 对画作进行历史记录查询时的分组
|
2023-02-28 15:27:00 +00:00
|
|
|
|
LockTime string `json:"lockTime" gorm:"column:lock_time;comment:锁定时间"`
|
2023-03-01 08:24:26 +00:00
|
|
|
|
|
|
|
|
|
//用户锁定后(Status=2)才能进入流程.
|
|
|
|
|
AuditFlowIndex int64 `json:"auditFlowIndex" gorm:"column:audit_flow_index;default:1;comment:当前的审批流程 1:无 2:基本信息审核 3补充信息审核"`
|
|
|
|
|
// 画作基本信息审批
|
|
|
|
|
// -- 画作上传,审核状态为[暂存1] -- 后台锁定用户,所有Status为1的画作设置为[锁定2],并生成锁定时间 ,审核状态为 [待审核3] -- 后台审批不通过,审核状态改为[不通过3] -- 用户修改画作后,状态再次改为[待审核2]直至审批通过
|
|
|
|
|
BaseAuditStatus AuditStatus `json:"baseAuditStatus" gorm:"column:base_audit_status;default:1;comment:画作基本信息审核状态 1:暂存 2:待审核 3:审核不通过 4:审核通过"`
|
|
|
|
|
BaseAuditMark string `json:"baseAuditMark" gorm:"column:base_audit_mark;comment:画作基本信息审核审核备注1"`
|
|
|
|
|
BaseAuditMark2 string `json:"baseAuditMark2" gorm:"column:base_audit_mark2;comment:画作基本信息审核审核备注2"`
|
|
|
|
|
// ↓
|
|
|
|
|
// 画作基本信息审批通过后,后台点击[生成补充信息按钮] AuditFlowIndex字段变为3 , 进入画作补充信息审批
|
|
|
|
|
// ↓
|
2023-02-28 15:27:00 +00:00
|
|
|
|
//画作补充信息审批记录
|
2023-03-01 08:24:26 +00:00
|
|
|
|
// 后台点击[生成补充信息按钮],审核状态为[待补充5]-- 用户更新补充信息,状态改为[待审核2] -- 后台审批不通过,审核状态改为[不通过3] -- 用户修改画作后,状态再次改为[待审核2]直至审批通过
|
|
|
|
|
SupplementAuditStatus AuditStatus `json:"supplementAuditStatus" gorm:"column:supplement_audit_status;default:0;comment:补充信息审核状态 0无 5待补充 2.待审核 3:审核不通过 4:审核通过"` // 注意没有暂存状态
|
|
|
|
|
SupplementAuditMark string `json:"supplementAuditMark" gorm:"column:supplement_audit_mark;comment:补充信息审核备注1"`
|
|
|
|
|
SupplementAuditMark2 string `json:"supplementAuditMark2" gorm:"column:supplement_audit_mark2;comment:补充信息审核备注2"`
|
2023-02-28 15:27:00 +00:00
|
|
|
|
//UserInfo User `gorm:"foreignKey:ArtistUid;reference:MgmtArtistUid"`
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (a ArtworkLockRecord) TableName() string {
|
|
|
|
|
return "artwork_lock_record"
|
|
|
|
|
}
|
2023-03-01 08:24:26 +00:00
|
|
|
|
|
|
|
|
|
// 基本信息是否可编辑
|
|
|
|
|
func (a *ArtworkLockRecord) BaseEditable() bool {
|
|
|
|
|
if a.Status == 1 {
|
|
|
|
|
return true
|
|
|
|
|
}
|
|
|
|
|
if a.Status == 2 && (a.BaseAuditStatus == AuditType_Failed || a.BaseAuditStatus == AuditType_Pending) {
|
|
|
|
|
return true
|
|
|
|
|
}
|
|
|
|
|
return false
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 补充信息是否可编辑
|
|
|
|
|
func (a *ArtworkLockRecord) SupplementEditable() bool {
|
|
|
|
|
//&& a.BaseAuditStatus == AuditType_Pass todo 是否要流程通过基本信息
|
|
|
|
|
if a.Status == 2 && (a.SupplementAuditStatus == AuditType_Supplemented || a.SupplementAuditStatus == AuditType_Failed || a.SupplementAuditStatus == AuditType_Pending) {
|
|
|
|
|
return true
|
|
|
|
|
}
|
|
|
|
|
return false
|
|
|
|
|
}
|