education/src/zijinlian/userInvestor.go
jingganjiaoyu 077186704a opt some
2024-08-29 11:10:04 +08:00

62 lines
1.5 KiB
Go

package zijinlian
import (
"shylinux.com/x/ice"
"shylinux.com/x/education/src/zijinlian/model"
)
type userInvestor struct {
Table
investor investor
}
func (s userInvestor) User(m *ice.Message, arg ...string) {
s.FieldsWithCreatedAT(m, s, model.USER_UID, model.ROLE)
if len(arg) == 1 {
s.Select(m, model.INVESTOR_UID, arg[0])
} else if len(arg) == 2 {
s.SelectDetail(m, model.INVESTOR_UID, arg[0], model.UID, arg[1])
} else {
return
}
m.RenameAppend(model.ROLE, model.USER_INVESTOR_ROLE)
s.SelectJoinUser(m)
}
func (s userInvestor) List(m *ice.Message, arg ...string) {
s.Tables(m, s.investor).FieldsWithCreatedAT(m, s,
model.INVESTOR_NAME, model.INVESTOR_TYPE, model.USER_INVESTOR_ROLE,
model.COMPANY_UID, model.INVESTOR_UID,
)
if len(arg) == 1 {
s.Select(m, model.USER_UID, arg[0])
} else if len(arg) == 2 {
s.SelectDetail(m, model.USER_UID, arg[0], s.Key(s, model.INVESTOR_UID), arg[1])
} else {
return
}
s.SelectJoinCompany(m)
s.SelectJoinCity(m)
}
func init() { ice.TeamCtxCmd(userInvestor{}) }
type UserInvestorRole int
const (
UserInvestorVisitor UserInvestorRole = iota
UserInvestorCreator
UserInvestorLeader
UserInvestorWorker
UserInvestorServer
)
var UserInvestorRoleList = map[UserInvestorRole]string{
UserInvestorVisitor: "visitor",
UserInvestorCreator: "creator",
UserInvestorLeader: "leader",
UserInvestorWorker: "worker",
UserInvestorServer: "server",
}
func (s UserInvestorRole) String() string { return UserInvestorRoleList[s] }