diff --git a/src/jiaocaiziliao/document.go b/src/jiaocaiziliao/document.go index 9cfe393..b550255 100644 --- a/src/jiaocaiziliao/document.go +++ b/src/jiaocaiziliao/document.go @@ -9,7 +9,7 @@ import ( type document struct { Table - create string `name:"create subject* grade* document_type*:select title* content* icon link" role:"teacher,student"` + create string `name:"create subject* grade* document_type*:select title* content* icon link" role:"teacher"` } func (s document) Create(m *ice.Message, arg ...string) { @@ -25,8 +25,7 @@ func (s document) List(m *ice.Message, arg ...string) { } else if len(arg) == 2 { s.SelectDetail(m, model.LIBRARY_UID, arg[0], model.UID, arg[1]) } - m.PushAction(s.Remove) - m.RenameAppend(model.TYPE, model.DOCUMENT_TYPE) + m.RenameAppend(model.TYPE, model.DOCUMENT_TYPE).PushAction(s.Remove) } func init() { ice.TeamCtxCmd(document{}) } diff --git a/src/jiaocaiziliao/model/model.go b/src/jiaocaiziliao/model/model.go index 8598b98..4c60c2e 100644 --- a/src/jiaocaiziliao/model/model.go +++ b/src/jiaocaiziliao/model/model.go @@ -16,8 +16,6 @@ const ( DOCUMENT_UID = "document_uid" DOCUMENT_TYPE = "document_type" CITY_UID = "city_uid" - INDEX = "index" - INIT = "init" LINK = "link" ) diff --git a/src/jiaocaiziliao/portal.go b/src/jiaocaiziliao/portal.go index 498d9f1..69654b4 100644 --- a/src/jiaocaiziliao/portal.go +++ b/src/jiaocaiziliao/portal.go @@ -10,6 +10,4 @@ type Portal struct { placeCreate string `name:"placeCreate city_name* school_name* library_type*:select library_name* link" role:"void"` } -func init() { - gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userLibrary{}, library{})}) -} +func init() { gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userLibrary{}, library{})}) } diff --git a/src/jiaocaiziliao/userLibrary.go b/src/jiaocaiziliao/userLibrary.go index 4a898c7..3da4972 100644 --- a/src/jiaocaiziliao/userLibrary.go +++ b/src/jiaocaiziliao/userLibrary.go @@ -12,5 +12,4 @@ func init() { ice.TeamCtxCmd(userLibrary{}) } type UserLibraryRole = jiaowuxitong.UserClassRole -var UserLibraryCreator = jiaowuxitong.UserClassCreator var UserLibraryRoleList = jiaowuxitong.UserClassRoleList diff --git a/src/jiaowuxitong/common.go b/src/jiaowuxitong/common.go index dcbddc8..6b8a720 100644 --- a/src/jiaowuxitong/common.go +++ b/src/jiaowuxitong/common.go @@ -1,6 +1,8 @@ package jiaowuxitong import ( + "strconv" + "shylinux.com/x/ice" kit "shylinux.com/x/toolkits" @@ -28,6 +30,9 @@ func (s Table) Inputs(m *ice.Message, arg ...string) { } func (s Table) RewriteAppend(m *ice.Message, arg ...string) *ice.Message { m.RewriteAppend(func(value, key string, index int) string { + if _, e := strconv.ParseInt(value, 10, 64); e != nil { + return value + } switch key { case model.USER_CLASS_ROLE: value = UserClassRole(kit.Int(value)).String() @@ -38,7 +43,9 @@ func (s Table) RewriteAppend(m *ice.Message, arg ...string) *ice.Message { }) return s.Table.RewriteAppend(m) } - +func (s Table) SelectJoinSchool(m *ice.Message) *ice.Message { + return s.SelectJoin(m, school{}, model.NAME, model.CITY_UID) +} func (s Table) CheckRole(m *ice.Message, arg ...string) *ice.Message { role := UserClassRole(s.UserPlaceRole(m)) m.WarnNotRight(!kit.IsIn(role.String(), append(arg, UserClassCreator.String())...), role.String()) @@ -49,8 +56,6 @@ type Tables struct{ Table } func (s Tables) BeforeMigrate(m *ice.Message, arg ...string) {} -func newTable() Table { return Table{Table: gonganxitong.NewTable(userClass{}, class{}, school{})} } - func NewPortal(userPlace gonganxitong.UserPlacer, place gonganxitong.Placer) Portal { return Portal{Portal: gonganxitong.NewPortal(userPlace, place, school{})} } diff --git a/src/jiaowuxitong/portal.go b/src/jiaowuxitong/portal.go index d42f186..e379fe5 100644 --- a/src/jiaowuxitong/portal.go +++ b/src/jiaowuxitong/portal.go @@ -4,9 +4,7 @@ import "shylinux.com/x/community/src/gonganxitong" type Portal struct { gonganxitong.Portal - placeCreate string `name:"placeCreate city_name* school_name* grade*:select class_name*" role:"void"` + placeCreate string `name:"placeCreate city_name* school_name* grade*:select class_type*:select class_name*" role:"void"` } -func init() { - gonganxitong.PortalCmd(Portal{Portal: gonganxitong.NewPortal(userClass{}, class{}, school{})}) -} +func init() { gonganxitong.PortalCmd(NewPortal(userClass{}, class{})) } diff --git a/src/jiaowuxitong/portal.json b/src/jiaowuxitong/portal.json index c3717bd..18d2521 100644 --- a/src/jiaowuxitong/portal.json +++ b/src/jiaowuxitong/portal.json @@ -1,7 +1,7 @@ { "portal": "教务系统", - "member": "班级成员", "homework": "家庭作业", + "member": "班级成员", "icons": { "homework": "https://img.icons8.com/officel/80/homework.png" }, diff --git a/src/jiaowuxitong/school.go b/src/jiaowuxitong/school.go index 83d765f..824e455 100644 --- a/src/jiaowuxitong/school.go +++ b/src/jiaowuxitong/school.go @@ -23,5 +23,3 @@ func (s school) FindOrCreateByName(m *ice.Message, arg ...string) { } func init() { ice.TeamCtxCmd(school{}) } - -type School struct{ school } diff --git a/src/jiaowuxitong/userClass.go b/src/jiaowuxitong/userClass.go index e2d84a1..338ea80 100644 --- a/src/jiaowuxitong/userClass.go +++ b/src/jiaowuxitong/userClass.go @@ -4,7 +4,7 @@ import "shylinux.com/x/ice" type userClass struct{ Table } -func init() { ice.TeamCtxCmd(userClass{Table: newTable()}) } +func init() { ice.TeamCtxCmd(userClass{}) } type UserClassRole int diff --git a/src/kaoshixitong/portal.go b/src/kaoshixitong/portal.go index 87ae1f3..38e30e4 100644 --- a/src/kaoshixitong/portal.go +++ b/src/kaoshixitong/portal.go @@ -7,9 +7,7 @@ import ( type Portal struct { jiaowuxitong.Portal - placeCreate string `name:"placeCreate city_name* school_name* exam_name*" role:"void"` + placeCreate string `name:"placeCreate city_name* school_name* exam_type*:select exam_name*" role:"void"` } -func init() { - gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userExam{}, exam{})}) -} +func init() { gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userExam{}, exam{})}) } diff --git a/src/kaoshixitong/userExam.go b/src/kaoshixitong/userExam.go index c7e6661..102a14f 100644 --- a/src/kaoshixitong/userExam.go +++ b/src/kaoshixitong/userExam.go @@ -12,5 +12,4 @@ func init() { ice.TeamCtxCmd(userExam{}) } type UserExamRole = jiaowuxitong.UserClassRole -var UserExamCreator = jiaowuxitong.UserClassCreator var UserExamRoleList = jiaowuxitong.UserClassRoleList diff --git a/src/zaixianketang/lesson.go b/src/zaixianketang/lesson.go index 5da6218..70202c4 100644 --- a/src/zaixianketang/lesson.go +++ b/src/zaixianketang/lesson.go @@ -11,7 +11,7 @@ type lesson struct { Table course course userCourse userCourse - create string `name:"create title* content*" role:"leader"` + create string `name:"create title* content*" role:"teacher"` } func (s lesson) Create(m *ice.Message, arg ...string) { diff --git a/src/zaixianketang/portal.go b/src/zaixianketang/portal.go index 859ac64..ed6740c 100644 --- a/src/zaixianketang/portal.go +++ b/src/zaixianketang/portal.go @@ -7,9 +7,7 @@ import ( type Portal struct { jiaowuxitong.Portal - placeCreate string `name:"placeCreate city_name* school_name* course_name*" role:"void"` + placeCreate string `name:"placeCreate city_name* school_name* course_type*:select course_name*" role:"void"` } -func init() { - gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userCourse{}, course{})}) -} +func init() { gonganxitong.PortalCmd(Portal{Portal: jiaowuxitong.NewPortal(userCourse{}, course{})}) } diff --git a/src/zaixianketang/userCourse.go b/src/zaixianketang/userCourse.go index be4b2e2..bc2fe53 100644 --- a/src/zaixianketang/userCourse.go +++ b/src/zaixianketang/userCourse.go @@ -12,5 +12,4 @@ func init() { ice.TeamCtxCmd(userCourse{}) } type UserCourseRole = jiaowuxitong.UserClassRole -var UserCourseCreator = jiaowuxitong.UserClassCreator var UserCourseRoleList = jiaowuxitong.UserClassRoleList