123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- package blocked
- import (
- "encoding/json"
- "go-common/library/log"
- "strconv"
- "go-common/app/admin/main/credit/model"
- xtime "go-common/library/time"
- )
- // const jury
- const (
- // judge status.
- JudgeTypeUndeal = int8(0) // 未裁决
- JudgeTypeViolate = int8(1) // 违规
- JudgeTypeLegal = int8(2) // 未违
- // judge invalid_reason
- JuryBlocked = int8(1)
- JuryExpire = int8(2)
- JuryAdmin = int8(3)
- // jury black or white
- JuryNormal = int8(0)
- JuryBlack = int8(1)
- JuryWhite = int8(2)
- // JuryStatus
- JuryStatusOn = int8(1)
- JuryStatusDown = int8(2)
- )
- // var jury
- var (
- JuryerStyle = map[int8]string{
- JuryNormal: "正常",
- JuryBlack: "黑名单",
- JuryWhite: "白名单",
- }
- JuryerStatus = map[int8]string{
- JuryStatusOn: "有效",
- JuryStatusDown: "失效",
- }
- )
- // Jury blocked_jury model.
- type Jury struct {
- ID int64 `gorm:"column:id" json:"id"`
- UID int64 `gorm:"column:mid" json:"uid"`
- OPID int64 `gorm:"column:oper_id" json:"oper_id"`
- UName string `gorm:"-" json:"uname"`
- Status int8 `gorm:"column:status" json:"status"`
- StatusDesc string `gorm:"-" json:"status_desc"`
- Expired xtime.Time `gorm:"column:expired" json:"expired"`
- EffectDay xtime.Time `gorm:"-" json:"effect_day"`
- InvalidReason int8 `gorm:"column:invalid_reason" json:"invalid_reason"`
- VoteTotal int `gorm:"column:vote_total" json:"vote_total"`
- VoteRight int `gorm:"column:vote_right" json:"vote_right"`
- Total int `gorm:"column:total" json:"total"`
- Black int8 `gorm:"column:black" json:"black"`
- VoteRadio string `gorm:"-" json:"vote_radio"`
- BlackDesc string `gorm:"-" json:"black_desc"`
- Remark string `gorm:"column:remark" json:"remark"`
- CTime xtime.Time `gorm:"column:ctime" json:"ctime"`
- MTime xtime.Time `gorm:"column:mtime" json:"mtime"`
- OPName string `gorm:"-" json:"oname"`
- }
- // WebHook is work flow webhook .
- type WebHook struct {
- Verb string `json:"verb"`
- Actor struct {
- AdminID int64 `json:"admin_id"`
- } `json:"actor"`
- Object *struct {
- CID int64 `json:"cid"`
- CIDs []int64 `json:"cids"`
- State int `json:"state"`
- } `json:"object"`
- Target *struct {
- CID int64 `json:"cid"`
- OID int64 `json:"oid"`
- Business int `json:"business"`
- Mid int64 `json:"mid"`
- Tid int `json:"tid"`
- State int `json:"state"`
- } `json:"target"`
- }
- // TableName jury tablename
- func (*Jury) TableName() string {
- return "blocked_jury"
- }
- // JuryList is info list.
- type JuryList struct {
- Count int
- PN int
- PS int
- Order string
- Sort string
- IDs []int64
- List []*Jury
- }
- // JuryDesc struct
- type JuryDesc struct {
- UID string `json:"uid"`
- UName string `json:"uname"`
- StatusDesc string `json:"status_desc"`
- BlackDesc string `json:"black_desc"`
- VoteTotal string `json:"vote_total"`
- VoteRadio string `json:"vote_radio"`
- Expired string `json:"expired"`
- Remark string `json:"remark"`
- EffectDay string `json:"effect_day"`
- OPName string `json:"oname"`
- }
- // DealJury export data.
- func DealJury(jurys []*Jury) (data [][]string, err error) {
- var jurysDesc []*JuryDesc
- if len(jurys) < 0 {
- return
- }
- for _, v := range jurys {
- juryDesc := &JuryDesc{
- UID: strconv.FormatInt(v.UID, 10),
- UName: v.UName,
- StatusDesc: v.StatusDesc,
- BlackDesc: v.BlackDesc,
- VoteTotal: strconv.FormatInt(int64(v.VoteTotal), 10),
- VoteRadio: v.VoteRadio,
- Expired: v.Expired.Time().Format(model.TimeFormatSec),
- Remark: v.Remark,
- EffectDay: v.EffectDay.Time().Format(model.TimeFormatSec),
- OPName: v.OPName,
- }
- jurysDesc = append(jurysDesc, juryDesc)
- }
- jurysMap, _ := json.Marshal(jurysDesc)
- var objmap []map[string]string
- if err = json.Unmarshal(jurysMap, &objmap); err != nil {
- log.Error("Unmarshal(%s) error(%v)", string(jurysMap), err)
- return
- }
- data = append(data, []string{"UID", "昵称", "状态", "类型", "投票数", "投准率", "失效时间", "备注", "生效时间", "操作人"})
- for _, v := range objmap {
- var fields []string
- fields = append(fields, v["uid"])
- fields = append(fields, v["uname"])
- fields = append(fields, v["status_desc"])
- fields = append(fields, v["black_desc"])
- fields = append(fields, v["vote_total"])
- fields = append(fields, v["vote_radio"])
- fields = append(fields, v["expired"])
- fields = append(fields, v["remark"])
- fields = append(fields, v["effect_day"])
- fields = append(fields, v["oname"])
- data = append(data, fields)
- }
- return
- }
|