Files
jx-callback/business/model/job.go
苏尹岚 cb5eb09bba job
2020-10-29 09:50:30 +08:00

169 lines
6.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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"},
}
}