by Robin at 20240718
This commit is contained in:
parent
c2973b553f
commit
74183a0331
|
@ -222,6 +222,9 @@ var ErrCodeMsgMap = map[ErrCode]string{
|
|||
ErrCodeUnhandleableSingleDistributeStatus: "无法处理的下发打款状态",
|
||||
|
||||
ErrCodeHvyogoSrvFail: "慧用工接口服务错误",
|
||||
|
||||
ErrCodeRavenIQTestSrvFail: "瑞文智商测试表服务错误",
|
||||
ErrCodeRavenIQTestNotExist: "瑞文智商测试表不存在",
|
||||
}
|
||||
|
||||
const (
|
||||
|
@ -542,4 +545,9 @@ const (
|
|||
// Websocket: 1xxxxx
|
||||
ErrCodeHandleWsFail ErrCode = -100001 // 长链连接失败
|
||||
|
||||
// RavenIQTest: 101xxx
|
||||
ErrCodeRavenIQTestSrvOk ErrCode = ErrCodeOk
|
||||
ErrCodeRavenIQTestSrvFail ErrCode = -101001 // 瑞文智商测试表服务错误
|
||||
ErrCodeRavenIQTestNotExist ErrCode = -101002 // 瑞文智商测试表不存在
|
||||
|
||||
)
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
package proto
|
||||
|
||||
import (
|
||||
"service/api/base"
|
||||
"service/dbstruct"
|
||||
)
|
||||
|
||||
// op 创建
|
||||
type ApiCreateReq struct {
|
||||
base.BaseRequest
|
||||
*dbstruct.RavenIQTest
|
||||
}
|
||||
|
||||
type ApiCreateData struct {
|
||||
}
|
||||
|
||||
type ApiCreateResp struct {
|
||||
base.BaseResponse
|
||||
Data *ApiCreateData `json:"data"`
|
||||
}
|
||||
|
||||
// op 列表
|
||||
type ApiListReq struct {
|
||||
base.BaseRequest
|
||||
Id *int64 `json:"id"`
|
||||
}
|
||||
|
||||
type ApiListData struct {
|
||||
*dbstruct.RavenIQTest
|
||||
}
|
||||
|
||||
type ApiListResp struct {
|
||||
base.BaseResponse
|
||||
Data *ApiListData `json:"data"`
|
||||
}
|
|
@ -0,0 +1,66 @@
|
|||
package proto
|
||||
|
||||
import (
|
||||
"service/api/base"
|
||||
"service/dbstruct"
|
||||
)
|
||||
|
||||
// op 创建
|
||||
type OpCreateReq struct {
|
||||
base.BaseRequest
|
||||
*dbstruct.RavenIQTest
|
||||
}
|
||||
|
||||
type OpCreateData struct {
|
||||
}
|
||||
|
||||
type OpCreateResp struct {
|
||||
base.BaseResponse
|
||||
Data *OpCreateData `json:"data"`
|
||||
}
|
||||
|
||||
// op 删除
|
||||
type OpDeleteReq struct {
|
||||
base.BaseRequest
|
||||
Id int64 `json:"id"`
|
||||
}
|
||||
|
||||
type OpDeleteData struct {
|
||||
}
|
||||
|
||||
type OpDeleteResp struct {
|
||||
base.BaseResponse
|
||||
Data *OpDeleteData `json:"data"`
|
||||
}
|
||||
|
||||
// op 更新
|
||||
type OpUpdateReq struct {
|
||||
base.BaseRequest
|
||||
*dbstruct.RavenIQTest
|
||||
}
|
||||
|
||||
type OpUpdateData struct {
|
||||
}
|
||||
|
||||
type OpUpdateResp struct {
|
||||
base.BaseResponse
|
||||
Data *OpUpdateData `json:"data"`
|
||||
}
|
||||
|
||||
// op 列表
|
||||
type OpListReq struct {
|
||||
base.BaseRequest
|
||||
Offset int `json:"offset"`
|
||||
Limit int `json:"limit"`
|
||||
}
|
||||
|
||||
type OpListData struct {
|
||||
List []*dbstruct.RavenIQTest `json:"list"`
|
||||
Offset int `json:"offset"`
|
||||
More int `json:"more"`
|
||||
}
|
||||
|
||||
type OpListResp struct {
|
||||
base.BaseResponse
|
||||
Data *OpListData `json:"data"`
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
package proto
|
||||
|
||||
import (
|
||||
"service/dbstruct"
|
||||
)
|
||||
|
||||
type ApiListVO struct {
|
||||
Id int64 `json:"id"` // 瑞文智商测试表id
|
||||
UserId int64 `json:"user_id"` // 用户id
|
||||
Age int64 `json:"age" ` // 年龄
|
||||
TotalScores int64 `json:"total_scores"` // 总得分
|
||||
IQ float64 `json:"IQ"` // 智商值
|
||||
Percentile int64 `json:"percentile"` // 百分位
|
||||
Description string `json:"description"` // 描述
|
||||
ClassScoreList []*ApiClassSocreVO `json:"class_score_list"` // 大类得分list
|
||||
}
|
||||
|
||||
type ApiClassSocreVO struct {
|
||||
ClassId int64 `json:"class_id"` // 大类id
|
||||
Score int64 `json:"score"` // 得分
|
||||
Suggestions string `json:"suggestions"` // 建议
|
||||
}
|
||||
|
||||
func (vo *ApiListVO) CopyRavenIQTest(test *dbstruct.RavenIQTest) *ApiListVO {
|
||||
if test == nil {
|
||||
return vo
|
||||
}
|
||||
vo.Id = test.GetId()
|
||||
vo.UserId = test.GetUserId()
|
||||
vo.Age = test.GetAge()
|
||||
vo.TotalScores = test.GetTotalScores()
|
||||
vo.IQ = test.GetIQ()
|
||||
vo.ClassScoreList = make([]*ApiClassSocreVO, 0)
|
||||
for _, score := range test.ClassScoreList {
|
||||
vo.ClassScoreList = append(vo.ClassScoreList, &ApiClassSocreVO{
|
||||
ClassId: score.GetClassId(),
|
||||
Score: score.GetScore(),
|
||||
})
|
||||
}
|
||||
return vo
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package proto
|
||||
|
||||
import (
|
||||
"service/library/validator"
|
||||
)
|
||||
|
||||
// api 查询
|
||||
func (p *ApiCreateReq) ProvideNotNullValue() (params []*validator.JsonParam) {
|
||||
params = make([]*validator.JsonParam, 0)
|
||||
params = append(params, validator.NewInt64PtrParam("请提供您的年龄!", p.Age))
|
||||
return params
|
||||
}
|
||||
|
||||
// api 经验增长
|
||||
func (p *ApiListReq) ProvideNotNullValue() (params []*validator.JsonParam) {
|
||||
params = make([]*validator.JsonParam, 0)
|
||||
params = append(params, validator.NewInt64PtrParam("请提供待查询的id!", p.Id))
|
||||
return params
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
Raven_IQ_testproto "service/api/proto/Raven_IQ_test/proto"
|
||||
|
||||
// 瑞文智商测试表
|
||||
opRavenIQTestGroup := r.Group("/api/Raven_IQ_test", PrepareToC())
|
||||
opRavenIQTestGroup.POST("create", middleware.JSONParamValidator(Raven_IQ_testproto.OpCreateReq{}), middleware.JwtAuthenticator(), OpCreateRavenIQTest)
|
||||
opRavenIQTestGroup.POST("update", middleware.JSONParamValidator(Raven_IQ_testproto.OpUpdateReq{}), middleware.JwtAuthenticator(), OpUpdateRavenIQTest)
|
||||
opRavenIQTestGroup.POST("delete", middleware.JSONParamValidator(Raven_IQ_testproto.OpDeleteReq{}), middleware.JwtAuthenticator(), OpDeleteRavenIQTest)
|
||||
opRavenIQTestGroup.POST("list", middleware.JSONParamValidator(Raven_IQ_testproto.OpListReq{}), middleware.JwtAuthenticator(), OpGetRavenIQTestList)
|
|
@ -0,0 +1,71 @@
|
|||
package controller
|
||||
|
||||
import (
|
||||
"github.com/gin-gonic/gin"
|
||||
"service/api/errcode"
|
||||
Raven_IQ_testproto "service/api/proto/Raven_IQ_test/proto"
|
||||
"service/app/mix/service"
|
||||
"service/bizcommon/util"
|
||||
"service/library/logger"
|
||||
)
|
||||
|
||||
func OpCreateRavenIQTest(ctx *gin.Context) {
|
||||
req := ctx.MustGet("client_req").(*Raven_IQ_testproto.OpCreateReq)
|
||||
ec := service.DefaultService.OpCreateRavenIQTest(ctx, req)
|
||||
if ec != errcode.ErrCodeRavenIQTestSrvOk {
|
||||
logger.Error("OpCreateRavenIQTest fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||
ReplyErrorMsg(ctx, "server error")
|
||||
return
|
||||
}
|
||||
|
||||
ReplyOk(ctx, nil)
|
||||
}
|
||||
|
||||
func OpUpdateRavenIQTest(ctx *gin.Context) {
|
||||
req := ctx.MustGet("client_req").(*Raven_IQ_testproto.OpUpdateReq)
|
||||
ec := service.DefaultService.OpUpdateRavenIQTest(ctx, req)
|
||||
if ec != errcode.ErrCodeRavenIQTestSrvOk {
|
||||
logger.Error("OpUpdateRavenIQTest fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||
ReplyErrCodeMsg(ctx, ec)
|
||||
return
|
||||
}
|
||||
|
||||
ReplyOk(ctx, nil)
|
||||
}
|
||||
|
||||
func OpDeleteRavenIQTest(ctx *gin.Context) {
|
||||
req := ctx.MustGet("client_req").(*Raven_IQ_testproto.OpDeleteReq)
|
||||
ec := service.DefaultService.OpDeleteRavenIQTest(ctx, req.Id)
|
||||
if ec != errcode.ErrCodeRavenIQTestSrvOk {
|
||||
logger.Error("OpDeleteRavenIQTest fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||
ReplyErrCodeMsg(ctx, ec)
|
||||
return
|
||||
}
|
||||
|
||||
ReplyOk(ctx, nil)
|
||||
}
|
||||
|
||||
func OpGetRavenIQTestList(ctx *gin.Context) {
|
||||
req := ctx.MustGet("client_req").(*Raven_IQ_testproto.OpListReq)
|
||||
|
||||
//设置默认页长
|
||||
if req.Limit == 0 {
|
||||
req.Limit = consts.DefaultPageSize
|
||||
}
|
||||
|
||||
list, ec := service.DefaultService.OpGetRavenIQTestList(ctx, req)
|
||||
if ec != errcode.ErrCodeRavenIQTestSrvOk {
|
||||
logger.Error("OpGetRavenIQTestList fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||
ReplyErrCodeMsg(ctx, ec)
|
||||
return
|
||||
}
|
||||
|
||||
data := &Raven_IQ_testproto.OpListData{
|
||||
List: list,
|
||||
Offset: req.Offset + len(list),
|
||||
}
|
||||
if len(list) >= req.Limit {
|
||||
data.More = 1
|
||||
}
|
||||
ReplyOk(ctx, data)
|
||||
}
|
|
@ -17,6 +17,7 @@ import (
|
|||
"go.mongodb.org/mongo-driver/bson"
|
||||
options2 "go.mongodb.org/mongo-driver/mongo/options"
|
||||
|
||||
Raven_IQ_testproto "service/api/proto/Raven_IQ_test/proto"
|
||||
accountproto "service/api/proto/account/proto"
|
||||
account_cancellationproto "service/api/proto/account_cancellation/proto"
|
||||
accountpunishmentproto "service/api/proto/accountpunishment/proto"
|
||||
|
@ -226,6 +227,9 @@ const (
|
|||
DBSingleDistributeHis = "single_distribute_his"
|
||||
COLSingleDistributeHis = "single_distribute_his"
|
||||
COLSingleDistributeLock = "single_distribute_lock"
|
||||
|
||||
DBRavenIQTest = "Raven_IQ_test"
|
||||
COLRavenIQTest = "Raven_IQ_test"
|
||||
)
|
||||
|
||||
// 商品表
|
||||
|
@ -577,6 +581,11 @@ func (m *Mongo) getColSingleDistributeLock() *qmgo.Collection {
|
|||
return m.clientMix.Database(DBSingleDistributeHis).Collection(COLSingleDistributeLock)
|
||||
}
|
||||
|
||||
// 瑞文智商测试表表
|
||||
func (m *Mongo) getColRavenIQTest() *qmgo.Collection {
|
||||
return m.clientMix.Database(DBRavenIQTest).Collection(COLRavenIQTest)
|
||||
}
|
||||
|
||||
// 商品相关
|
||||
func (m *Mongo) CreateProduct(ctx *gin.Context, product *dbstruct.Product) error {
|
||||
col := m.getColProduct()
|
||||
|
@ -5554,3 +5563,61 @@ func (m *Mongo) GetSingleDistributeHisById(ctx *gin.Context, id string) (*dbstru
|
|||
}
|
||||
return one, err
|
||||
}
|
||||
|
||||
// 瑞文智商测试表相关
|
||||
func (m *Mongo) CreateRavenIQTest(ctx *gin.Context, Raven_IQ_test *dbstruct.RavenIQTest) error {
|
||||
col := m.getColRavenIQTest()
|
||||
_, err := col.InsertOne(ctx, Raven_IQ_test)
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *Mongo) UpdateRavenIQTest(ctx *gin.Context, Raven_IQ_test *dbstruct.RavenIQTest) error {
|
||||
col := m.getColRavenIQTest()
|
||||
set := util.EntityToM(Raven_IQ_test)
|
||||
set["ut"] = time.Now().Unix()
|
||||
up := qmgo.M{
|
||||
"$set": set,
|
||||
}
|
||||
err := col.UpdateId(ctx, Raven_IQ_test.Id, up)
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *Mongo) DeleteRavenIQTest(ctx *gin.Context, id int64) error {
|
||||
col := m.getColRavenIQTest()
|
||||
update := qmgo.M{
|
||||
"$set": qmgo.M{
|
||||
"del_flag": 1,
|
||||
},
|
||||
}
|
||||
err := col.UpdateId(ctx, id, update)
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *Mongo) GetRavenIQTestList(ctx *gin.Context, req *Raven_IQ_testproto.OpListReq) ([]*dbstruct.RavenIQTest, error) {
|
||||
list := make([]*dbstruct.RavenIQTest, 0)
|
||||
col := m.getColRavenIQTest()
|
||||
query := qmgo.M{
|
||||
"del_flag": 0,
|
||||
}
|
||||
err := col.Find(ctx, query).Sort("-ct").Skip(int64(req.Offset)).Limit(int64(req.Limit)).All(&list)
|
||||
if err == qmgo.ErrNoSuchDocuments {
|
||||
err = nil
|
||||
return list, err
|
||||
}
|
||||
return list, err
|
||||
}
|
||||
|
||||
func (m *Mongo) GetRavenIQTestById(ctx *gin.Context, id int64) (*dbstruct.RavenIQTest, error) {
|
||||
test := &dbstruct.RavenIQTest{}
|
||||
col := m.getColRavenIQTest()
|
||||
query := qmgo.M{
|
||||
"_id": id,
|
||||
"del_flag": 0,
|
||||
}
|
||||
err := col.Find(ctx, query).One(test)
|
||||
if err == qmgo.ErrNoSuchDocuments {
|
||||
err = nil
|
||||
return test, err
|
||||
}
|
||||
return test, err
|
||||
}
|
||||
|
|
|
@ -62,6 +62,9 @@ const (
|
|||
COLImageAuditRTI = "image_audit_rti"
|
||||
COLTextAuditRTI = "text_audit_rti"
|
||||
COLVideoModerationRTI = "video_moderation_rti"
|
||||
|
||||
DBRavenIQTestIdSeq = "Raven_IQ_test_id_seq"
|
||||
COLRavenIQTestIdSeq = "Raven_IQ_test_id_seq"
|
||||
)
|
||||
|
||||
// UserIdSeq序列表
|
||||
|
@ -159,6 +162,11 @@ func (m *Mongo) getColVideoModerationRTI() *qmgo.Collection {
|
|||
return m.clientMix.Database(DBContentAuditRTI).Collection(COLVideoModerationRTI)
|
||||
}
|
||||
|
||||
// AccountIdSeq序列表
|
||||
func (m *Mongo) getColRavenIQTestIdSeq() *qmgo.Collection {
|
||||
return m.clientMix.Database(DBRavenIQTestIdSeq).Collection(COLRavenIQTestIdSeq)
|
||||
}
|
||||
|
||||
// account_id发号器
|
||||
func (m *Mongo) GetAndUpdateAccountIdSeq(ctx *gin.Context) (accountIdSeq *dbstruct.AccountIdSeq, err error) {
|
||||
col := m.getColAccountIdSeq()
|
||||
|
@ -569,3 +577,22 @@ func (m *Mongo) GetVideoModerationBatchId(ctx *gin.Context) (videoModerationBatc
|
|||
|
||||
return
|
||||
}
|
||||
|
||||
// Raven_IQ_test_id发号器
|
||||
func (m *Mongo) GetAndUpdateRavenIQTestIdSeq(ctx *gin.Context) (Raven_IQ_testIdSeq *dbstruct.RavenIQTestIdSeq, err error) {
|
||||
col := m.getColRavenIQTestIdSeq()
|
||||
|
||||
change := qmgo.Change{
|
||||
Update: qmgo.M{"$inc": qmgo.M{"seq": 1}},
|
||||
Upsert: true,
|
||||
ReturnNew: false,
|
||||
}
|
||||
|
||||
instance := dbstruct.RavenIQTestIdSeq{}
|
||||
if err = col.Find(ctx, qmgo.M{"_id": "Raven_IQ_test_id_seq_id"}).Apply(change, &instance); err != nil {
|
||||
logger.Error("change error : %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
return &instance, err
|
||||
}
|
||||
|
|
|
@ -49,6 +49,8 @@ import (
|
|||
"strings"
|
||||
"time"
|
||||
|
||||
Raven_IQ_testproto "service/api/proto/Raven_IQ_test/proto"
|
||||
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
goproto "google.golang.org/protobuf/proto"
|
||||
|
||||
|
@ -3585,3 +3587,42 @@ func (s *Service) ApiHvyogoWorkerUpdate(ctx *gin.Context, req *hvyogoproto.ApiWo
|
|||
|
||||
return
|
||||
}
|
||||
|
||||
// RavenIQTest
|
||||
func (s *Service) ApiCreateRavenIQTest(ctx *gin.Context, req *Raven_IQ_testproto.ApiCreateReq) (ec errcode.ErrCode) {
|
||||
ec = errcode.ErrCodeRavenIQTestSrvOk
|
||||
err := _DefaultRavenIQTest.OpCreate(ctx, &Raven_IQ_testproto.OpCreateReq{
|
||||
BaseRequest: req.BaseRequest,
|
||||
RavenIQTest: req.RavenIQTest,
|
||||
})
|
||||
if err != nil {
|
||||
logger.Error("ApiCreate fail, req: %v, err: %v", util.ToJson(req), err)
|
||||
ec = errcode.ErrCodeRavenIQTestSrvFail
|
||||
return
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (s *Service) ApiGetRavenIQTestList(ctx *gin.Context, req *Raven_IQ_testproto.ApiListReq) (vo *Raven_IQ_testproto.ApiListVO, ec errcode.ErrCode) {
|
||||
ec = errcode.ErrCodeRavenIQTestSrvOk
|
||||
|
||||
vo = &Raven_IQ_testproto.ApiListVO{}
|
||||
|
||||
test, err := _DefaultRavenIQTest.GetById(ctx, util.DerefInt64(req.Id))
|
||||
if err != nil {
|
||||
logger.Error("ApiGetRavenIQTest fail, req: %v, err: %v", util.ToJson(req), err)
|
||||
ec = errcode.ErrCodeRavenIQTestSrvFail
|
||||
return
|
||||
}
|
||||
if test == nil {
|
||||
logger.Error("No RavenIQTest entity was found, req: %v", util.ToJson(req))
|
||||
ec = errcode.ErrCodeRavenIQTestNotExist
|
||||
return
|
||||
}
|
||||
|
||||
vo.CopyRavenIQTest(test)
|
||||
|
||||
// 填充业务数据
|
||||
|
||||
return
|
||||
}
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
package logic
|
||||
|
||||
import (
|
||||
"service/api/consts"
|
||||
Raven_IQ_testproto "service/api/proto/Raven_IQ_test/proto"
|
||||
"service/app/mix/dao"
|
||||
"service/dbstruct"
|
||||
"service/library/logger"
|
||||
"time"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
goproto "google.golang.org/protobuf/proto"
|
||||
)
|
||||
|
||||
type RavenIQTest struct {
|
||||
store *dao.Store
|
||||
}
|
||||
|
||||
func NewRavenIQTest(store *dao.Store) (a *RavenIQTest) {
|
||||
a = &RavenIQTest{
|
||||
store: store,
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) OpCreate(ctx *gin.Context, req *Raven_IQ_testproto.OpCreateReq) error {
|
||||
|
||||
//产生mid
|
||||
idSeq, err := p.store.GetAndUpdateRavenIQTestIdSeq(ctx)
|
||||
if err != nil {
|
||||
logger.Error("GetAndUpdateRavenIQTestIdSeq failed : %v", err)
|
||||
return err
|
||||
}
|
||||
|
||||
req.RavenIQTest.Id = goproto.Int64(idSeq.Seq)
|
||||
req.RavenIQTest.Ct = goproto.Int64(time.Now().Unix())
|
||||
req.RavenIQTest.Ut = goproto.Int64(time.Now().Unix())
|
||||
req.RavenIQTest.DelFlag = goproto.Int64(consts.Exist)
|
||||
err = p.store.CreateRavenIQTest(ctx, req.RavenIQTest)
|
||||
if err != nil {
|
||||
logger.Error("CreateRavenIQTest fail, err: %v", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) OpUpdate(ctx *gin.Context, req *Raven_IQ_testproto.OpUpdateReq) error {
|
||||
err := p.store.UpdateRavenIQTest(ctx, req.RavenIQTest)
|
||||
if err != nil {
|
||||
logger.Error("UpdateRavenIQTest fail, err: %v", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) OpDelete(ctx *gin.Context, id int64) error {
|
||||
err := p.store.DeleteRavenIQTest(ctx, id)
|
||||
if err != nil {
|
||||
logger.Error("DeleteRavenIQTest fail, err: %v", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) OpList(ctx *gin.Context, req *Raven_IQ_testproto.OpListReq) ([]*dbstruct.RavenIQTest, error) {
|
||||
list, err := p.store.GetRavenIQTestList(ctx, req)
|
||||
if err != nil {
|
||||
logger.Error("GetRavenIQTestList fail, err: %v", err)
|
||||
return make([]*dbstruct.RavenIQTest, 0), err
|
||||
}
|
||||
return list, nil
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetById(ctx *gin.Context, id int64) (*dbstruct.RavenIQTest, error) {
|
||||
test, err := p.store.GetRavenIQTestById(ctx, id)
|
||||
if err != nil {
|
||||
logger.Error("GetRavenIQTestListByIds fail, id: %v, err: %v", id, err)
|
||||
return nil, err
|
||||
}
|
||||
return test, nil
|
||||
}
|
|
@ -140,6 +140,7 @@ var (
|
|||
_DefaultStreamerScore *logic.StreamerScore
|
||||
_DefaultWorkerId *logic.WorkerId
|
||||
_DefaultSingleDistributeHis *logic.SingleDistributeHis
|
||||
_DefaultRavenIQTest *logic.RavenIQTest
|
||||
)
|
||||
|
||||
type Service struct {
|
||||
|
@ -235,6 +236,7 @@ func (s *Service) Init(c any) (err error) {
|
|||
_DefaultStreamerScore = logic.NewStreamerScore(store)
|
||||
_DefaultWorkerId = logic.NewWorkerId(store)
|
||||
_DefaultSingleDistributeHis = logic.NewSingleDistributeHis(store)
|
||||
_DefaultRavenIQTest = logic.NewRavenIQTest(store)
|
||||
|
||||
_DefaultVas = logic.NewVas(store, _DefaultStreamer, _DefaultAccount, _DefaultZone, _DefaultZoneThirdPartner, _DefaultZoneCollaborator)
|
||||
_DefaultStreamerAcct = logic.NewStreamerAcct(store)
|
||||
|
|
|
@ -9,10 +9,10 @@ import (
|
|||
func main() {
|
||||
|
||||
genSource := &generator.GenSource{
|
||||
EntityName: "SingleDistributeHis",
|
||||
ModuleName: "single_distribute_his",
|
||||
EntityCNName: "慧用工下发打款历史表",
|
||||
ErrCodeSeq: "42",
|
||||
EntityName: "RavenIQTest",
|
||||
ModuleName: "Raven_IQ_test",
|
||||
EntityCNName: "瑞文智商测试表",
|
||||
ErrCodeSeq: "101",
|
||||
}
|
||||
|
||||
generator.CreateFileDirectory(genSource)
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,73 @@
|
|||
package dbstruct
|
||||
|
||||
type RavenIQTest struct {
|
||||
Id *int64 `json:"id" bson:"_id"` // 瑞文智商测试表id
|
||||
UserId *int64 `json:"user_id" bson:"user_id"` // 用户id
|
||||
Age *int64 `json:"age" bson:"age"` // 年龄
|
||||
TotalScores *int64 `json:"total_scores" bson:"total_scores"` // 总得分
|
||||
IQ *float64 `json:"IQ" bson:"IQ"` // 智商值
|
||||
AnswerList []*RavenIQTestAnswer `json:"answer_list" bson:"answer_list"` // 答案list
|
||||
ClassScoreList []*RavenIQTestClassScore `json:"class_score_list" bson:"class_score_list"` // 大类得分list
|
||||
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
|
||||
Ut *int64 `json:"ut" bson:"ut"` // 更新时间
|
||||
DelFlag *int64 `json:"del_flag" bson:"del_flag"` // 删除标记
|
||||
}
|
||||
|
||||
type RavenIQTestAnswer struct {
|
||||
QuestionId *int64 `json:"question_id" bson:"question_id"` // 问题Id
|
||||
SelectedOption *int64 `json:"selected_option" bson:"selected_option"` // 选择的选项
|
||||
}
|
||||
|
||||
type RavenIQTestClassScore struct {
|
||||
ClassId *int64 `json:"class_id" bson:"class_id"` // 大类id
|
||||
Score *int64 `json:"score" bson:"score"` // 得分
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetId() int64 {
|
||||
if p == nil || p.Id == nil {
|
||||
return -1
|
||||
}
|
||||
return *p.Id
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetUserId() int64 {
|
||||
if p == nil || p.UserId == nil {
|
||||
return -1
|
||||
}
|
||||
return *p.UserId
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetAge() int64 {
|
||||
if p == nil || p.UserId == nil {
|
||||
return 0
|
||||
}
|
||||
return *p.Age
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetTotalScores() int64 {
|
||||
if p == nil || p.TotalScores == nil {
|
||||
return 0
|
||||
}
|
||||
return *p.TotalScores
|
||||
}
|
||||
|
||||
func (p *RavenIQTest) GetIQ() float64 {
|
||||
if p == nil || p.IQ == nil {
|
||||
return 0
|
||||
}
|
||||
return *p.IQ
|
||||
}
|
||||
|
||||
func (p *RavenIQTestClassScore) GetClassId() int64 {
|
||||
if p == nil || p.ClassId == nil {
|
||||
return 0
|
||||
}
|
||||
return *p.ClassId
|
||||
}
|
||||
|
||||
func (p *RavenIQTestClassScore) GetScore() int64 {
|
||||
if p == nil || p.Score == nil {
|
||||
return 0
|
||||
}
|
||||
return *p.Score
|
||||
}
|
|
@ -80,3 +80,7 @@ type TextAuditBatchId struct {
|
|||
type VideoModerationBatchId struct {
|
||||
BatchId string `json:"batch_id" bson:"batch_id"` //视频审核批次号
|
||||
}
|
||||
|
||||
type RavenIQTestIdSeq struct {
|
||||
Seq int64 //用户Id序列号
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue