Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
)
go_library(
name = "go_default_library",
srcs = [
"appeal.go",
"audit_log.go",
"buss_attr.go",
"chall.go",
"event.go",
"group.go",
"model.go",
"search.go",
],
importpath = "go-common/app/job/main/workflow/model",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = ["//library/time:go_default_library"],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,45 @@
package model
import "go-common/library/time"
// appeal state
const (
AuditStatePending = 0
AuditStateEffective = 1
AuditStateInvalid = 2
TransferStatePendingSystemNotReply = 0
TransferStatePendingSystemReply = 1
TransferStateAdminReplyReaded = 2
TransferStateAdminClosed = 3
TransferStateUserResolved = 4
TransferStateAutoClosedExpire = 5
TransferStateAdminReplyNotReaded = 6
TransferStateUserClosed = 7
TransferStatePassClosed = 8
AssignStateNotDispatch = 0
AssignStatePushed = 1
AssignStatePoped = 2
AssignStateReAudit = 3
)
// Appeal orm struct of table workflow_appeal
type Appeal struct {
ApID int64 `json:"id" gorm:"column:id"`
Rid int8 `json:"rid" gorm:"column:rid"`
Tid int32 `json:"tid" gorm:"column:tid"`
Bid int8 `json:"bid" gorm:"column:bid"`
Mid int64 `json:"mid" gorm:"column:mid"`
Oid int64 `json:"oid" gorm:"column:oid"`
AuditState int8 `json:"audit_state" gorm:"column:audit_state"`
TransferState int8 `json:"transfer_state" gorm:"column:transfer_state"`
AssignState int8 `json:"assign_state" gorm:"column:assign_state"`
Weight int64 `json:"weight" gorm:"column:weight"`
AuditAdmin int64 `json:"audit_admin" gorm:"column:audit_admin"`
TransferAdmin int64 `json:"transfer_admin" gorm:"column:transfer_admin"`
DTime time.Time `json:"dtime" gorm:"column:dtime"`
TTime time.Time `json:"ttime" gorm:"column:ttime"`
CTime time.Time `json:"ctime" gorm:"column:ctime"`
MTime time.Time `json:"mtime" gorm:"column:mtime"`
}

View File

@@ -0,0 +1,15 @@
package model
// AuditLog .
type AuditLog struct {
Order string `json:"order"`
Sort string `json:"sort"`
Page *Pager `json:"page"`
Result []*LogRes `json:"result"`
}
// LogRes .
type LogRes struct {
Int1 int64 `json:"int_1"`
Oid int64 `json:"oid"`
}

View File

@@ -0,0 +1,13 @@
package model
// BusinessAttr .
type BusinessAttr struct {
ID int64 `json:"id"`
Bid int `json:"bid"`
Name string `json:"name"`
DealType int `json:"deal_type"`
ExpireTime int `json:"expire_time"`
AssignType int `json:"assign_type"`
AssignMax int `json:"assign_max"`
GroupType int `json:"group_type"`
}

View File

@@ -0,0 +1,97 @@
package model
import (
"fmt"
"net/url"
"time"
)
const (
_challSrhComID = "workflow_chall_common"
// QueueState .
QueueState = 18
)
// Chall .
type Chall struct {
ID int64 `json:"id"`
Business int64 `json:"business"`
DispatchState int `json:"dispatch_state"`
DispatchTime time.Time `json:"dispatch_time"`
}
// ChallSearchRes .
type ChallSearchRes struct {
Code int `json:"code"`
Message string `json:"message"`
TTL int32 `json:"ttl"`
Data struct {
Order string `json:"order"`
Sort string `json:"sort"`
Page struct {
Num int64 `json:"num"`
Size int64 `json:"size"`
Total int64 `json:"total"`
} `json:"page"`
Result []struct {
ID int64 `json:"id"`
} `json:"result"`
} `json:"data"`
}
// ChallSearchParams .
type ChallSearchParams struct {
Business string
States string
BusinessStates string
AssigneeAdminIDs string
AssigneeAdminIDsNot string
MtimeTo string
PN int64
PS int64
Order string
Sort string
}
// Serialize .
func (cp *ChallSearchParams) Serialize() (val url.Values) {
val = url.Values{}
val.Set("appid", _challSrhComID)
val.Set("business", cp.Business)
if cp.States != "" {
val.Set("states", cp.States)
}
if cp.BusinessStates != "" {
val.Set("business_states", cp.BusinessStates)
}
if cp.AssigneeAdminIDs != "" {
val.Set("assignee_adminids", cp.AssigneeAdminIDs)
}
if cp.AssigneeAdminIDsNot != "" {
val.Set("assignee_adminids_not", cp.AssigneeAdminIDsNot)
}
if cp.PN == 0 {
val.Set("pn", "1")
} else {
val.Set("pn", fmt.Sprintf("%d", cp.PN))
}
if cp.PS == 0 {
val.Set("ps", "200")
} else {
val.Set("ps", fmt.Sprintf("%d", cp.PS))
}
if cp.Order == "" {
val.Set("order", "ctime")
} else {
val.Set("order", cp.Order)
}
if cp.Sort == "" {
val.Set("sort", "desc")
} else {
val.Set("sort", cp.Sort)
}
if cp.MtimeTo != "" {
val.Set("mtime_to", cp.MtimeTo)
}
return
}

View File

@@ -0,0 +1,33 @@
package model
import xtime "go-common/library/time"
// consts for workflow event
const (
// EventAdminReply 管理员回复
EventAdminReply = 1
// EventAdminNote 管理员回复并记录
EventAdminNote = 2
// EventUserReply 用户回复
EventUserReply = 3
// EventSystem 系统回复
EventSystem = 4
)
// Event model is the model for challenge changes
type Event struct {
Eid int64 `json:"eid" gorm:"column:id"`
Cid int64 `json:"cid" gorm:"column:cid"`
AdminID int64 `json:"adminid" gorm:"column:adminid"`
Content string `json:"content" gorm:"column:content"`
Attachments string `json:"attachments" gorm:"column:attachments"`
Event int8 `json:"event" gorm:"column:event"`
CTime xtime.Time `json:"ctime" gorm:"column:ctime"`
MTime xtime.Time `json:"mtime" gorm:"column:mtime"`
Admin string `json:"admin" gorm:"-"`
}
// TableName is used to identify table name in gorm
func (Event) TableName() string {
return "workflow_event"
}

View File

@@ -0,0 +1,38 @@
package model
// SearchGroup .
type SearchGroup struct {
Order string `json:"order"`
Sort string `json:"sort"`
Page *Pager `json:"page"`
Result []*GroupRes `json:"result"`
}
// GroupRes .
type GroupRes struct {
ID int64 `json:"id"`
OID int64 `json:"oid"`
}
// Pager .
type Pager struct {
Num int64 `json:"num"`
Size int64 `json:"size"`
Total int64 `json:"total"`
}
// SearchChall .
type SearchChall struct {
Order string `json:"order"`
Sort string `json:"sort"`
Page *Pager `json:"page"`
Result []*ChallRes `json:"result"`
}
// ChallRes .
type ChallRes struct {
ID int64 `json:"id"`
GID int64 `json:"gid"`
MID int64 `json:"mid"`
OID int64 `json:"oid"`
}

View File

@@ -0,0 +1,40 @@
package model
var (
// ListBefore .
ListBefore = 0 // 入队列前
// ListAfter .
ListAfter = 1 // 出队列后
// ListIng .
ListIng = 2 // 队列中
// SysAssignType .
SysAssignType = 1 // 系统指派类型
// ADealType .
ADealType = 0 // 审核处理类型
// FDealType .
FDealType = 1 // 反馈处理类型
// PDealType .
PDealType = 2 // 工作台处理类型
// FListBeforeStates .
FListBeforeStates = "2" // 反馈入队列前state状态
// FListBeforeBusinessStates .
FListBeforeBusinessStates = "1" // 反馈入队列前business_state状态
// AListBeforeStates .
AListBeforeStates = "0" // 审核入队列前state状态
// FListAfterStates .
FListAfterStates = "2" // 反馈入队列后state状态
// FListAfterBusinessStates .
FListAfterBusinessStates = "1" // 反馈入队列后business_state状态
// AListAfterStates .
AListAfterStates = "15" // 审核入队列后state状态
)
// SearchParams .
type SearchParams struct {
Business string
States string
BusinessStates string
AssigneeAdminIDs string
AssigneeAdminIDsNot string
MtimeTo string
}

View File

@@ -0,0 +1,103 @@
package model
// ChallSearchCommonRes .
type ChallSearchCommonRes struct {
Page *page `json:"page"`
Result []*ChallSearchCommonData `json:"result"`
}
// ChallSearchCommonData .
type ChallSearchCommonData struct {
ID int64 `json:"id"`
}
// Page .
type page struct {
Num int `json:"num"`
Size int `json:"size"`
Total int `json:"total"`
}
// GroupSearchCommonCond is the common condition model to send group search request
type GroupSearchCommonCond struct {
Fields []string
Business int8
IDs []int64
Oids []string
Tids []int64
States []int8
Mids []int64
Rounds []int64
TypeIDs []int64
FID []int64
RID []int8
EID []int64
TagRounds []int64
ReportMID []int64 // report_mid
AuthorMID []int64 // mid
KW []string
KWFields []string
CTimeFrom string
CTimeTo string
PN int64
PS int64
Order string
Sort string
}
// AppealSearchCond .
type AppealSearchCond struct {
Fields []string
IDs []int64
Rids []int32
Tids []int64
Bid []int
Mids []int64
Oids []int64
AuditState []int8
TransferState []int8
AssignState []int8
Weight int64
Degree []int8
AuditAdmin []int32
TransferAdmin []int32
TypeIDs []int64 // workflow_business table
KW []string
KWFields []string
DTimeFrom string
DTimeTo string
TTimeFrom string
TTimeTo string
CTimeFrom string
CTimeTo string
MTimeFrom string
MTimeTo string
PN int
PS int
Order string
Sort string
}
// AppealSearchRes .
type AppealSearchRes struct {
Page *page `json:"page"`
Result []*AppealSearchData `json:"result"`
}
// AppealSearchData .
type AppealSearchData struct {
ID int64 `json:"id"`
Bid int32 `json:"bid"`
Tid int32 `json:"tid"`
Mid int64 `json:"mid"`
Oid int64 `json:"oid"`
AuditState int8 `json:"audit_state"`
TransferState int8 `json:"transfer_state"`
AssignState int8 `json:"assign_state"`
TransferAdmin int `json:"transfer_adminid"`
Weight int64 `json:"weight"`
}