169 lines
6.3 KiB
Go
169 lines
6.3 KiB
Go
package model
|
||
|
||
import "time"
|
||
|
||
const (
|
||
JobStatusDoing = 0 //正在进行中
|
||
JobStatusFinished = 1 //任务所有都被完成
|
||
JobStatusFailed = -1 //任务发布失败
|
||
JobStatusOverdue = -2 //任务过期
|
||
|
||
JobLimitCountTypePO = 1 //每人一次
|
||
JobLimitCountTypePDO = 2 //每人每天一次
|
||
JobLimitCountTypePWO = 3 //每人每周一次
|
||
JobLimitCountTypeNoLimit = 4 //不限制
|
||
|
||
JobOrderStatusSpec = 1
|
||
JobOrderStatusAccept = 5
|
||
JobOrderStatusWaitAudit = 10
|
||
JobOrderStatusAuditPass = 15
|
||
JobOrderStatusAuditUnPass = 20
|
||
JobOrderStatusFinish = 110
|
||
JobOrderStatusCancel = 115
|
||
|
||
JobIDMtMembers = 1 //美团会员任务ID
|
||
JobIDJdDelivery = 2 //京东物流任务ID
|
||
|
||
JobTimerTypeAccept = 1 //接受任务
|
||
JobTimerTypeSubmit = 2 //交任务
|
||
|
||
JobTimerStatusWait = 0 //正在进行
|
||
JobTimerStatusFinish = 1 //定时任务已完成
|
||
)
|
||
|
||
type Job struct {
|
||
ModelIDCULD
|
||
|
||
UserID string `orm:"column(user_id)" json:"userID"` //发布人ID
|
||
JobCategoryID int `orm:"column(job_category_id)" json:"jobCategoryID"` //任务类型
|
||
JobSpan string `orm:"size(500)" json:"jobSpan"` //任务标签
|
||
Title string `orm:"size(255)" json:"title"` //任务标题
|
||
Content string `orm:"size(500)" json:"content"` //任务内容
|
||
Count int `json:"count"` //任务数量
|
||
SurplusCount int `json:"surplusCount"` //剩余数量
|
||
AvgPrice int `json:"avgPrice"` //单个任务金额
|
||
TotalPrice int `json:"totalPrice"` //任务总金额
|
||
Status int `json:"status"` //任务状态
|
||
Address string `orm:"size(500)" json:"address"` //任务地址
|
||
Lng int `json:"lng"` //乘了10的6次方
|
||
Lat int `json:"lat"` //乘了10的6次方
|
||
JobLimitAt int `json:"jobLimitAt"` //任务限时完成小时数
|
||
AuditLimitAt int `json:"auditLimitAt"` //任务审核限时小时数
|
||
FinishedAt time.Time `json:"finishedAt"` //接单截止日期
|
||
LimitCountType int `json:"limitCountType"` //任务限次类型,1为每人一次,2为每人每天一次,3为每人每周一次,4为不限制
|
||
VendorID int `orm:"column(vendor_id)" json:"vendorID"` //推广平台
|
||
StoreURL string `orm:"column(store_url)" json:"storeURL"` //门店链接
|
||
SkuURL string `orm:"column(sku_url)" json:"skuURL"` //商品优惠券链接
|
||
JobSteps []*JobStep `orm:"-" json:"jobSteps"`
|
||
JobImgs []*JobImg `orm:"-" json:"jobImgs"`
|
||
}
|
||
|
||
func (v *Job) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"UserID"},
|
||
[]string{"CreatedAt"},
|
||
}
|
||
}
|
||
|
||
type JobImg struct {
|
||
ModelIDCUL
|
||
|
||
JobID int `orm:"column(job_id)" json:"jobID"` //任务ID
|
||
Img string `orm:"size(500)" json:"img"` //图片
|
||
}
|
||
|
||
func (v *JobImg) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"JobID"},
|
||
}
|
||
}
|
||
|
||
type JobCategory struct {
|
||
ModelIDCULD
|
||
|
||
Name string `orm:"size(48)" json:"name"` //类型名称
|
||
Img string `orm:"size(500)" json:"img"` //类型图片
|
||
}
|
||
|
||
func (v *JobCategory) TableUnique() [][]string {
|
||
return [][]string{
|
||
[]string{"Name"},
|
||
}
|
||
}
|
||
|
||
type JobStep struct {
|
||
ModelIDCULD
|
||
|
||
JobID int `orm:"column(job_id)" json:"jobID"` //任务ID
|
||
StepCount int `json:"stepCount"` //步骤数
|
||
Content string `orm:"size(500)" json:"content"` //步骤内容
|
||
Img string `orm:"size(500)" json:"img"` //步骤图片
|
||
Type int `json:"type"` //步骤类型,1为任务步骤,2为收集信息
|
||
}
|
||
|
||
func (v *JobStep) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"JobID"},
|
||
}
|
||
}
|
||
|
||
type JobOrder struct {
|
||
ModelIDCUL
|
||
|
||
JobID int `orm:"column(job_id)" json:"jobID"` //任务ID
|
||
JobOrderID int64 `orm:"column(job_order_id)" json:"jobOrderID"` //任务订单号
|
||
UserID string `orm:"column(user_id)" json:"userID"` //接任务人ID
|
||
Status int `json:"status"` //任务订单状态,接单,待审核,已审核,已结算等
|
||
SubmitAuditAt time.Time `json:"submitAuditTime"` //提交审核日期
|
||
AuditAt time.Time `json:"auditAt"` //审核日期
|
||
Content string `josn:"content"` //任务审核内容
|
||
Img string `json:"img"` //任务审核图片
|
||
Comment string `json:"comment"` //审核理由
|
||
}
|
||
|
||
func (v *JobOrder) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"JobID"},
|
||
[]string{"JobOrderID"},
|
||
[]string{"UserID"},
|
||
}
|
||
}
|
||
|
||
type JobTimer struct {
|
||
ModelIDCUL
|
||
|
||
JobID int `orm:"column(job_id)" json:"jobID"` //任务ID
|
||
JobOrderID int64 `orm:"column(job_order_id)" json:"jobOrderID"` //任务订单号
|
||
Type int `json:"type"` //定时任务类型,1为接受任务,2为提交审核
|
||
Status int `json:"status"` //定时任务的状态,0表示正在进行,1表示已经结束
|
||
StartAt time.Time `json:"startAt"` //定时任务开始时间
|
||
LimitAt int `json:"limitAt"` //定时任务时长(小时数)
|
||
}
|
||
|
||
func (v *JobTimer) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"JobID"},
|
||
[]string{"JobOrderID"},
|
||
}
|
||
}
|
||
|
||
type MtMember struct {
|
||
ModelIDCULD
|
||
|
||
URL string `orm:"column(url)" json:"url"` //网址
|
||
ExpiryDate time.Time `json:"expiryDate"` //有效期
|
||
ShortLink string `json:"shortLink"` //密钥?
|
||
}
|
||
|
||
func (v *MtMember) TableUnique() [][]string {
|
||
return [][]string{
|
||
[]string{"URL"},
|
||
}
|
||
}
|
||
|
||
func (v *MtMember) TableIndex() [][]string {
|
||
return [][]string{
|
||
[]string{"DeletedAt"},
|
||
}
|
||
}
|