diff --git a/src/guanlixitong/employee.png b/src/guanlixitong/employee.png new file mode 100644 index 0000000..a410245 Binary files /dev/null and b/src/guanlixitong/employee.png differ diff --git a/src/guanlixitong/interview.png b/src/guanlixitong/interview.png new file mode 100644 index 0000000..a24bf52 Binary files /dev/null and b/src/guanlixitong/interview.png differ diff --git a/src/guanlixitong/inventory.png b/src/guanlixitong/inventory.png new file mode 100644 index 0000000..75e66dd Binary files /dev/null and b/src/guanlixitong/inventory.png differ diff --git a/src/guanlixitong/portal.json b/src/guanlixitong/portal.json index c7fbbe1..57994fe 100644 --- a/src/guanlixitong/portal.json +++ b/src/guanlixitong/portal.json @@ -3,18 +3,6 @@ "recruitment": "招聘需求", "resume": "应聘简历", "interview": "招聘面试", "employee": "员工信息", "inventory": "库存物资", "procurement": "采购清单", "equipment": "办公用品", "resumeInsert": "投简历", "interviewInsert": "约面试", - "icons": { - "recruitment": "https://img.icons8.com/officel/80/set-as-resume.png", - "resume": "https://img.icons8.com/officel/80/parse-from-clipboard.png", - "interview": "https://img.icons8.com/officel/80/meeting.png", - "employee": "https://img.icons8.com/officel/80/about-us-male--v2.png", - - "inventory": "https://img.icons8.com/officel/80/warehouse.png", - "procurement": "https://img.icons8.com/officel/80/purchase-order.png", - "equipment": "https://img.icons8.com/officel/80/office.png", - - "target": "https://img.icons8.com/officel/80/goal--v1.png" - }, "style": { "resumeInsert": "notice", "interviewInsert": "notice" diff --git a/src/guanlixitong/procurement.png b/src/guanlixitong/procurement.png new file mode 100644 index 0000000..2ff171b Binary files /dev/null and b/src/guanlixitong/procurement.png differ diff --git a/src/guanlixitong/recruitment.png b/src/guanlixitong/recruitment.png new file mode 100644 index 0000000..0e01830 Binary files /dev/null and b/src/guanlixitong/recruitment.png differ diff --git a/src/guanlixitong/resume.png b/src/guanlixitong/resume.png new file mode 100644 index 0000000..6af4d85 Binary files /dev/null and b/src/guanlixitong/resume.png differ diff --git a/src/guanlixitong/target.png b/src/guanlixitong/target.png new file mode 100644 index 0000000..9314e3b Binary files /dev/null and b/src/guanlixitong/target.png differ diff --git a/src/main.go b/src/main.go index b24fde2..8f3ee17 100644 --- a/src/main.go +++ b/src/main.go @@ -7,6 +7,8 @@ import ( _ "shylinux.com/x/enterprise/src/guanlixitong" _ "shylinux.com/x/enterprise/src/shichangyingxiao" _ "shylinux.com/x/enterprise/src/zijinlian" + + _ "shylinux.com/x/enterprise/src/xiangmuguanli" ) func main() { print(ice.Run()) } diff --git a/src/option.go b/src/option.go index eb8c9df..dcfe007 100644 --- a/src/option.go +++ b/src/option.go @@ -3,4 +3,4 @@ package main import ( _ "shylinux.com/x/ice/devops" _ "shylinux.com/x/ice/portal" -) +) \ No newline at end of file diff --git a/src/template/web.code.autogen/demo.go b/src/template/web.code.autogen/demo.go index f324ea0..3a51d5b 100644 --- a/src/template/web.code.autogen/demo.go +++ b/src/template/web.code.autogen/demo.go @@ -4,6 +4,7 @@ import "shylinux.com/x/ice" type {{.Option "name"}} struct { Table + order string `data:"1"` fields string `data:"title,content,user_uid"` create string `name:"create title* content*" role:"leader"` remove string `name:"remove" role:"leader"` @@ -11,4 +12,4 @@ type {{.Option "name"}} struct { func (s {{.Option "name"}}) List(m *ice.Message, arg ...string) { s.ValueList(m, arg) } -func init() { ice.TeamCtxCmd({{.Option "name"}}{}) } +func init() { ice.TeamCtxCmd({{.Option "name"}}{}) } \ No newline at end of file diff --git a/src/template/web.code.go/demo.go b/src/template/web.code.go/demo.go new file mode 100644 index 0000000..3a51d5b --- /dev/null +++ b/src/template/web.code.go/demo.go @@ -0,0 +1,15 @@ +package {{.Option "zone"}} + +import "shylinux.com/x/ice" + +type {{.Option "name"}} struct { + Table + order string `data:"1"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s {{.Option "name"}}) List(m *ice.Message, arg ...string) { s.ValueList(m, arg) } + +func init() { ice.TeamCtxCmd({{.Option "name"}}{}) } \ No newline at end of file diff --git a/src/template/web.code.js/demo.js b/src/template/web.code.js/demo.js index 60056e0..8424c14 100644 --- a/src/template/web.code.js/demo.js +++ b/src/template/web.code.js/demo.js @@ -6,4 +6,4 @@ Volcanos(chat.ONIMPORT, { {view: html.OUTPUT, list: [value.content||value.info]}, ] }) }, -}) +}) \ No newline at end of file diff --git a/src/xiangmuguanli/common.go b/src/xiangmuguanli/common.go new file mode 100644 index 0000000..a600ff7 --- /dev/null +++ b/src/xiangmuguanli/common.go @@ -0,0 +1,41 @@ +package xingmuguanli + +import ( + "shylinux.com/x/ice" + kit "shylinux.com/x/toolkits" + + "shylinux.com/x/enterprise/src/guanlixitong" + "shylinux.com/x/enterprise/src/xiangmuguanli/model" +) + +type Table struct { + guanlixitong.Table + list string `name:"list project_uid uid auto" role:"void"` +} + +func (s Table) Inputs(m *ice.Message, arg ...string) { + switch arg[0] { + case model.USER_PROJECT_ROLE: + s.InputsListRole(m, UserProjectRoleList, arg...) + case model.PROJECT_TYPE: + s.InputsList(m, ProjectTypeList, arg...) + default: + s.Table.Inputs(m, arg...) + } +} +func (s Table) RewriteAppend(m *ice.Message, arg ...string) *ice.Message { + m.RewriteAppend(func(value, key string, index int) string { + switch key { + case model.USER_PROJECT_ROLE: + value = UserProjectRole(kit.Int(value)).String() + case model.PROJECT_TYPE: + value = ProjectType(kit.Int(value)).String() + } + return value + }) + return s.Table.RewriteAppend(m) +} + +type Tables struct{ Table } + +func (s Tables) BeforeMigrate(m *ice.Message, arg ...string) {} diff --git a/src/xiangmuguanli/done.go b/src/xiangmuguanli/done.go new file mode 100644 index 0000000..e0a62d6 --- /dev/null +++ b/src/xiangmuguanli/done.go @@ -0,0 +1,16 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type done struct { + Tables + order string `data:"5"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s done) List(m *ice.Message, arg ...string) { +} + +func init() { ice.TeamCtxCmd(done{}) } diff --git a/src/xiangmuguanli/done.png b/src/xiangmuguanli/done.png new file mode 100644 index 0000000..7952fcb Binary files /dev/null and b/src/xiangmuguanli/done.png differ diff --git a/src/xiangmuguanli/model/model.go b/src/xiangmuguanli/model/model.go new file mode 100644 index 0000000..a46f2bf --- /dev/null +++ b/src/xiangmuguanli/model/model.go @@ -0,0 +1,41 @@ +package model + +import "shylinux.com/x/mysql-story/src/db" + +const ( + UID = "uid" + NAME = "name" + INFO = "info" + TYPE = "type" + TITLE = "title" + CONTENT = "content" + USER_UID = "user_uid" + USER_PROJECT_ROLE = "user_project_role" + PROJECT_UID = "project_uid" + PROJECT_NAME = "project_name" + PROJECT_TYPE = "project_type" + PLAN_UID = "plan_uid" +) + +type UserProject struct { + db.ModelUserPlace + ProjectUID string `gorm:"type:char(32);index"` +} +type Project struct { + db.ModelPlace + CompanyUID string `gorm:"type:char(32);index"` +} +type Plan struct { + db.ModelContent + ProjectUID string `gorm:"type:char(32);index"` +} +type Task struct { + db.ModelContent + ProjectUID string `gorm:"type:char(32);index"` +} +type Todo struct { + db.ModelContent + ProjectUID string `gorm:"type:char(32);index"` +} + +func init() { db.CmdModels("", &UserProject{}, &Project{}, &Plan{}, &Task{}, &Todo{}) } diff --git a/src/xiangmuguanli/plan.go b/src/xiangmuguanli/plan.go new file mode 100644 index 0000000..da0f485 --- /dev/null +++ b/src/xiangmuguanli/plan.go @@ -0,0 +1,15 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type plan struct { + Table + order string `data:"1"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s plan) List(m *ice.Message, arg ...string) { s.ValueList(m, arg).Display("") } + +func init() { ice.TeamCtxCmd(plan{}) } diff --git a/src/xiangmuguanli/plan.js b/src/xiangmuguanli/plan.js new file mode 100644 index 0000000..8041e96 --- /dev/null +++ b/src/xiangmuguanli/plan.js @@ -0,0 +1,9 @@ +Volcanos(chat.ONIMPORT, { + _init: function(can, msg) { + can.onimport.myView(can, msg, function(value) { return [ + {view: html.TITLE, list: [value.title||value.name]}, + {view: html.STATUS, list: [value.uid.slice(0, 6), can.onimport.timeView(can, value), value.user_name]}, + {view: html.OUTPUT, list: [value.content||value.info]}, + ] }) + }, +}) \ No newline at end of file diff --git a/src/xiangmuguanli/plan.png b/src/xiangmuguanli/plan.png new file mode 100644 index 0000000..b5d9fdf Binary files /dev/null and b/src/xiangmuguanli/plan.png differ diff --git a/src/xiangmuguanli/portal.go b/src/xiangmuguanli/portal.go new file mode 100644 index 0000000..9436e9f --- /dev/null +++ b/src/xiangmuguanli/portal.go @@ -0,0 +1,13 @@ +package xingmuguanli + +import ( + "shylinux.com/x/community/src/gonganxitong" + "shylinux.com/x/enterprise/src/guanlixitong" +) + +type Portal struct { + guanlixitong.Portal + placeCreate string `name:"placeCreate city_name* company_name* project_name* project_type:select" role:"void"` +} + +func init() { gonganxitong.PortalCmd(Portal{Portal: guanlixitong.NewPortal(userProject{}, project{})}) } diff --git a/src/xiangmuguanli/portal.json b/src/xiangmuguanli/portal.json new file mode 100644 index 0000000..64a6a64 --- /dev/null +++ b/src/xiangmuguanli/portal.json @@ -0,0 +1,35 @@ +{ + "portal": "项目管理", + "plan": "项目计划", "warn": "进度监管", "todo": "待办事项", "task": "任务发布", "done": "任务提报", + "icons": { + "plan": "plan.png", + "warn": "warn.png", + "todo": "todo.png", + "task": "task.png", + "done": "done.png" + }, + "input": { + "My Project": "我的场景", + "user_project_role": "成员角色", + "project_name": "场景名称", + "project_type": "场景类型" + }, + "value": { + "user_project_role": { + "visitor": "访客", + "creator": "创建人", + "leader": "管理人员", + "worker": "工作人员", + "server": "服务人员", + "style": { + "creator": "danger", + "leader": "danger" + } + }, + "project_type": { + "RD": "研发群", + "OP": "运维群", + "HR": "人力群" + } + } +} \ No newline at end of file diff --git a/src/xiangmuguanli/project.go b/src/xiangmuguanli/project.go new file mode 100644 index 0000000..7447a89 --- /dev/null +++ b/src/xiangmuguanli/project.go @@ -0,0 +1,23 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type project struct{ Table } + +func init() { ice.TeamCtxCmd(project{}) } + +type ProjectType int + +const ( + ProjectRD ProjectType = iota + ProjectOP + ProjectHR +) + +var ProjectTypeList = map[ProjectType]string{ + ProjectRD: "RD", + ProjectOP: "OP", + ProjectHR: "HR", +} + +func (s ProjectType) String() string { return ProjectTypeList[s] } diff --git a/src/xiangmuguanli/task.go b/src/xiangmuguanli/task.go new file mode 100644 index 0000000..dcabbbb --- /dev/null +++ b/src/xiangmuguanli/task.go @@ -0,0 +1,15 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type task struct { + Table + order string `data:"4"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s task) List(m *ice.Message, arg ...string) { s.ValueList(m, arg) } + +func init() { ice.TeamCtxCmd(task{}) } diff --git a/src/xiangmuguanli/task.png b/src/xiangmuguanli/task.png new file mode 100644 index 0000000..b92840e Binary files /dev/null and b/src/xiangmuguanli/task.png differ diff --git a/src/xiangmuguanli/todo.go b/src/xiangmuguanli/todo.go new file mode 100644 index 0000000..f533300 --- /dev/null +++ b/src/xiangmuguanli/todo.go @@ -0,0 +1,15 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type todo struct { + Table + order string `data:"3"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s todo) List(m *ice.Message, arg ...string) { s.ValueList(m, arg) } + +func init() { ice.TeamCtxCmd(todo{}) } diff --git a/src/xiangmuguanli/todo.png b/src/xiangmuguanli/todo.png new file mode 100644 index 0000000..c0c6b6e Binary files /dev/null and b/src/xiangmuguanli/todo.png differ diff --git a/src/xiangmuguanli/userProject.go b/src/xiangmuguanli/userProject.go new file mode 100644 index 0000000..fac2129 --- /dev/null +++ b/src/xiangmuguanli/userProject.go @@ -0,0 +1,15 @@ +package xingmuguanli + +import ( + "shylinux.com/x/ice" + + "shylinux.com/x/enterprise/src/guanlixitong" +) + +type userProject struct{ Table } + +func init() { ice.TeamCtxCmd(userProject{}) } + +type UserProjectRole = guanlixitong.UserGroupRole + +var UserProjectRoleList = guanlixitong.UserGroupRoleList diff --git a/src/xiangmuguanli/warn.go b/src/xiangmuguanli/warn.go new file mode 100644 index 0000000..9b76e21 --- /dev/null +++ b/src/xiangmuguanli/warn.go @@ -0,0 +1,16 @@ +package xingmuguanli + +import "shylinux.com/x/ice" + +type warn struct { + Tables + order string `data:"2"` + fields string `data:"title,content,user_uid"` + create string `name:"create title* content*" role:"leader"` + remove string `name:"remove" role:"leader"` +} + +func (s warn) List(m *ice.Message, arg ...string) { +} + +func init() { ice.TeamCtxCmd(warn{}) } diff --git a/src/xiangmuguanli/warn.png b/src/xiangmuguanli/warn.png new file mode 100644 index 0000000..1ebaab2 Binary files /dev/null and b/src/xiangmuguanli/warn.png differ diff --git a/usr/local/export/mdb.export/hash.json b/usr/local/export/mdb.export/hash.json index 29ba2ab..3980b0e 100644 --- a/usr/local/export/mdb.export/hash.json +++ b/usr/local/export/mdb.export/hash.json @@ -20,6 +20,13 @@ "type": "hash" } }, + "08566d15da7f81781d080502e4806ae0": { + "meta": { + "index": "web.team.xingmuguanli.portal", + "time": "2025-04-07 19:19:56.861", + "type": "hash" + } + }, "087e7a803e40e88ea61c61c349fe41c3": { "meta": { "index": "web.team.shengyixitong.member", @@ -286,6 +293,13 @@ "type": "hash" } }, + "dab70bfaf8fbfb6f0e3a2ba32603add2": { + "meta": { + "index": "web.team.xiangmuguanli.portal", + "time": "2025-04-03 10:31:05.427", + "type": "hash" + } + }, "e2117b53c036a72fe7e4885449488a6f": { "meta": { "index": "web.team.gonganxitong.qrcode", diff --git a/usr/local/export/web.team.gongyinglian.portal/hash.json b/usr/local/export/web.team.gongyinglian.portal/hash.json index fcf18c3..ecb6895 100644 --- a/usr/local/export/web.team.gongyinglian.portal/hash.json +++ b/usr/local/export/web.team.gongyinglian.portal/hash.json @@ -21,7 +21,7 @@ }, "30004ab3cefb5d65e026044fb25df4d6": { "meta": { - "icons": "https://img.icons8.com/officel/80/activity-grid.png", + "icons": "/p/src/gonganxitong/service.png?pod=20240724-community", "index": "web.team.gongyinglian.service", "name": "服务发现", "order": "904", @@ -73,7 +73,7 @@ }, "3c05ccd1cc94c3907b4a6e6f422aee58": { "meta": { - "icons": "https://img.icons8.com/officel/80/property-with-timer.png", + "icons": "/p/src/gonganxitong/event.png?pod=20240724-community", "index": "web.team.gongyinglian.event", "name": "事件流", "order": "504", @@ -94,7 +94,7 @@ }, "4e1f7f1e365503c9932be6699620925b": { "meta": { - "icons": "https://img.icons8.com/officel/80/passport.png", + "icons": "/p/src/gonganxitong/credit.png?pod=20240724-community", "index": "web.team.gongyinglian.credit", "name": "用户名片", "order": "101", @@ -103,7 +103,7 @@ }, "540fca1c98846f8f18e368729ec5343c": { "meta": { - "icons": "https://img.icons8.com/officel/80/person-at-home.png", + "icons": "/p/src/gonganxitong/member.png?pod=20240724-community", "index": "web.team.gongyinglian.member", "name": "生意伙伴", "order": "102", @@ -149,7 +149,7 @@ }, "676c55ba6dfb95981517ed6f15fcd480": { "meta": { - "icons": "https://img.icons8.com/officel/80/receipt-approved.png", + "icons": "/p/src/gonganxitong/allow.png?pod=20240724-community", "index": "web.team.gongyinglian.allow", "name": "权限审批", "order": "503", @@ -159,7 +159,7 @@ }, "6f9144f3ba7d3adf88aca9195023642a": { "meta": { - "icons": "https://img.icons8.com/officel/80/test-partial-passed.png", + "icons": "/p/src/gonganxitong/message.png?pod=20240724-community", "index": "web.team.gongyinglian.message", "name": "消息待办", "order": "902", @@ -178,7 +178,7 @@ }, "749051bc7a30b3e6a57563ce3f1565d9": { "meta": { - "icons": "https://img.icons8.com/officel/80/commercial.png", + "icons": "/p/src/gonganxitong/notice.png?pod=20240724-community", "index": "web.team.gongyinglian.notice", "name": "通知公告", "order": "505", @@ -188,7 +188,7 @@ }, "7c9a204279f1cddfcecd1c7be74897aa": { "meta": { - "icons": "https://img.icons8.com/officel/80/square.png", + "icons": "/p/src/gonganxitong/market.png?pod=20240724-community", "index": "web.team.gongyinglian.market", "name": "人民广场", "order": "901", @@ -207,7 +207,7 @@ }, "834bb194ecf40e19c9c5f6d9b89bc10c": { "meta": { - "icons": "https://img.icons8.com/officel/80/customer-support.png", + "icons": "/p/src/gonganxitong/support.png?pod=20240724-community", "index": "web.team.gongyinglian.support", "name": "客服支持", "order": "905", @@ -226,7 +226,7 @@ }, "a15042865cbdf5ba9e0da65e3dff2557": { "meta": { - "icons": "https://img.icons8.com/officel/80/edit-property.png", + "icons": "/p/src/gonganxitong/apply.png?pod=20240724-community", "index": "web.team.gongyinglian.apply", "name": "权限申请", "order": "502", @@ -277,7 +277,7 @@ }, "c1d72ee26e550e4a72413c5890e84723": { "meta": { - "icons": "https://img.icons8.com/officel/80/qr-code.png", + "icons": "/p/src/gonganxitong/qrcode.png?pod=20240724-community", "index": "web.team.gongyinglian.qrcode", "name": "场景码", "order": "501", @@ -298,7 +298,7 @@ }, "d31b7999d42750cfa3da7dfc23cb9bf7": { "meta": { - "icons": "https://img.icons8.com/officel/80/settings--v1.png", + "icons": "/p/src/gonganxitong/setting.png?pod=20240724-community", "index": "web.team.gongyinglian.setting", "name": "服务配置", "order": "103", @@ -330,7 +330,7 @@ }, "deddcb6fe99fa3454b0ffed04d9c8369": { "meta": { - "icons": "https://img.icons8.com/officel/80/multiple-smartphones.png", + "icons": "/p/src/gonganxitong/recent.png?pod=20240724-community", "index": "web.team.gongyinglian.recent", "name": "最近访问", "order": "903", diff --git a/usr/local/export/web.team.guanlixitong.portal/hash.json b/usr/local/export/web.team.guanlixitong.portal/hash.json index 4bad5fd..67ddd05 100644 --- a/usr/local/export/web.team.guanlixitong.portal/hash.json +++ b/usr/local/export/web.team.guanlixitong.portal/hash.json @@ -11,7 +11,7 @@ }, "030e2a53ca3561a0d0d123c133a88b59": { "meta": { - "icons": "https://img.icons8.com/officel/80/qr-code.png", + "icons": "/p/src/gonganxitong/qrcode.png?pod=20240724-community", "index": "web.team.guanlixitong.qrcode", "name": "场景码", "order": "501", @@ -27,7 +27,7 @@ }, "0521e637b051a0e175a6070eded1bcef": { "meta": { - "icons": "https://img.icons8.com/officel/80/settings--v1.png", + "icons": "/p/src/gonganxitong/setting.png?pod=20240724-community", "index": "web.team.guanlixitong.setting", "name": "服务配置", "order": "103", @@ -37,7 +37,7 @@ }, "057616b7366e1930ef4e4a921fe45f1f": { "meta": { - "icons": "https://img.icons8.com/officel/80/activity-grid.png", + "icons": "/p/src/gonganxitong/service.png?pod=20240724-community", "index": "web.team.guanlixitong.service", "name": "服务发现", "order": "904", @@ -46,7 +46,7 @@ }, "0721f4589e2e5f0a50b9088471e141a4": { "meta": { - "icons": "https://img.icons8.com/officel/80/about-us-male--v2.png", + "icons": "/p/src/guanlixitong/employee.png", "index": "web.team.guanlixitong.employee", "name": "员工信息", "order": "54", @@ -56,7 +56,7 @@ }, "0d1831178568952bdf4f5c6b1587742b": { "meta": { - "icons": "https://img.icons8.com/officel/80/parse-from-clipboard.png", + "icons": "/p/src/guanlixitong/resume.png", "index": "web.team.guanlixitong.resume", "name": "应聘简历", "order": "52", @@ -66,7 +66,7 @@ }, "2fd80c581b69c9f67420e793804dbd9f": { "meta": { - "icons": "https://img.icons8.com/officel/80/passport.png", + "icons": "/p/src/gonganxitong/credit.png?pod=20240724-community", "index": "web.team.guanlixitong.credit", "name": "用户名片", "order": "101", @@ -75,7 +75,7 @@ }, "30bfa47cab4cd689901fd2e1b87eb235": { "meta": { - "icons": "https://img.icons8.com/officel/80/receipt-approved.png", + "icons": "/p/src/gonganxitong/allow.png?pod=20240724-community", "index": "web.team.guanlixitong.allow", "name": "权限审批", "order": "503", @@ -85,7 +85,7 @@ }, "31e2929e94058b015eadf6e874f956a8": { "meta": { - "icons": "https://img.icons8.com/officel/80/set-as-resume.png", + "icons": "/p/src/guanlixitong/recruitment.png", "index": "web.team.guanlixitong.recruitment", "name": "招聘需求", "order": "51", @@ -94,7 +94,7 @@ }, "5695d50b28872804a01d7c923ee91cd1": { "meta": { - "icons": "https://img.icons8.com/officel/80/person-at-home.png", + "icons": "/p/src/gonganxitong/member.png?pod=20240724-community", "index": "web.team.guanlixitong.member", "name": "团队成员", "order": "102", @@ -104,7 +104,7 @@ }, "78d29149539be88d7561b8e17bd65882": { "meta": { - "icons": "https://img.icons8.com/officel/80/square.png", + "icons": "/p/src/gonganxitong/market.png?pod=20240724-community", "index": "web.team.guanlixitong.market", "name": "人民广场", "order": "901", @@ -124,7 +124,7 @@ }, "809b63c1819fc3ac1452e3b71889aec5": { "meta": { - "icons": "https://img.icons8.com/officel/80/commercial.png", + "icons": "/p/src/gonganxitong/notice.png?pod=20240724-community", "index": "web.team.guanlixitong.notice", "name": "通知公告", "order": "505", @@ -145,7 +145,7 @@ }, "9c18032c5bc252f2986e1b20e7e77db7": { "meta": { - "icons": "https://img.icons8.com/officel/80/property-with-timer.png", + "icons": "/p/src/gonganxitong/event.png?pod=20240724-community", "index": "web.team.guanlixitong.event", "name": "事件流", "order": "504", @@ -155,7 +155,7 @@ }, "9fffbe375e2d2a1a8e6cb1f341e35b55": { "meta": { - "icons": "https://img.icons8.com/officel/80/multiple-smartphones.png", + "icons": "/p/src/gonganxitong/recent.png?pod=20240724-community", "index": "web.team.guanlixitong.recent", "name": "最近访问", "order": "903", @@ -164,7 +164,7 @@ }, "ace6350cd663c693ddf47e81625c8a7a": { "meta": { - "icons": "https://img.icons8.com/officel/80/meeting.png", + "icons": "/p/src/guanlixitong/interview.png", "index": "web.team.guanlixitong.interview", "name": "招聘面试", "order": "53", @@ -174,7 +174,7 @@ }, "af39f30945dafa855548057f4dab3be4": { "meta": { - "icons": "https://img.icons8.com/officel/80/warehouse.png", + "icons": "/p/src/guanlixitong/inventory.png", "index": "web.team.guanlixitong.inventory", "name": "库存物资", "order": "62", @@ -184,7 +184,7 @@ }, "c27ad1df8aa9059d6018fb5add5ee546": { "meta": { - "icons": "https://img.icons8.com/officel/80/customer-support.png", + "icons": "/p/src/gonganxitong/support.png?pod=20240724-community", "index": "web.team.guanlixitong.support", "name": "客服支持", "order": "905", @@ -201,7 +201,7 @@ }, "c36d47e2611b0d1e7a14088bc3293d04": { "meta": { - "icons": "https://img.icons8.com/officel/80/edit-property.png", + "icons": "/p/src/gonganxitong/apply.png?pod=20240724-community", "index": "web.team.guanlixitong.apply", "name": "权限申请", "order": "502", @@ -222,7 +222,7 @@ }, "d25f3f88261ead2a0079415a26aa6853": { "meta": { - "icons": "https://img.icons8.com/officel/80/test-partial-passed.png", + "icons": "/p/src/gonganxitong/message.png?pod=20240724-community", "index": "web.team.guanlixitong.message", "name": "消息待办", "order": "902", @@ -266,7 +266,7 @@ }, "fa5ff99e330772f88b929de7762a36f1": { "meta": { - "icons": "https://img.icons8.com/officel/80/goal--v1.png", + "icons": "/p/src/guanlixitong/target.png", "index": "web.team.guanlixitong.target", "name": "目标计划", "order": "1", diff --git a/usr/local/export/web.team.renzhengshouquan.portal/hash.json b/usr/local/export/web.team.renzhengshouquan.portal/hash.json index b01ee63..113428d 100644 --- a/usr/local/export/web.team.renzhengshouquan.portal/hash.json +++ b/usr/local/export/web.team.renzhengshouquan.portal/hash.json @@ -12,7 +12,7 @@ }, "0d7f068029dbf7f9f0d307070cc3a79b": { "meta": { - "icons": "https://img.icons8.com/officel/80/receipt-approved.png", + "icons": "/p/src/gonganxitong/allow.png?pod=20240724-community", "index": "web.team.renzhengshouquan.allow", "name": "权限审批", "order": "503", @@ -53,7 +53,7 @@ }, "456d3a031a140d43f54690ea7203628d": { "meta": { - "icons": "https://img.icons8.com/officel/80/property-with-timer.png", + "icons": "/p/src/gonganxitong/event.png?pod=20240724-community", "index": "web.team.renzhengshouquan.event", "name": "事件流", "order": "504", @@ -63,7 +63,7 @@ }, "4cac9ca99ccb8db395f703434647f5f3": { "meta": { - "icons": "https://img.icons8.com/officel/80/settings--v1.png", + "icons": "/p/src/gonganxitong/setting.png?pod=20240724-community", "index": "web.team.renzhengshouquan.setting", "name": "服务配置", "order": "102", @@ -73,7 +73,7 @@ }, "52fb3a7d85d879b638cc246850b236f6": { "meta": { - "icons": "https://img.icons8.com/officel/80/qr-code.png", + "icons": "/p/src/gonganxitong/qrcode.png?pod=20240724-community", "index": "web.team.renzhengshouquan.qrcode", "name": "场景码", "order": "501", @@ -94,7 +94,7 @@ }, "732373815fa26c85ad04dd57ca57db39": { "meta": { - "icons": "https://img.icons8.com/officel/80/edit-property.png", + "icons": "/p/src/gonganxitong/apply.png?pod=20240724-community", "index": "web.team.renzhengshouquan.apply", "name": "权限申请", "order": "502", @@ -143,7 +143,7 @@ }, "9e52a4f0a1a8d35c14b40d14b0d9cff1": { "meta": { - "icons": "https://img.icons8.com/officel/80/test-partial-passed.png", + "icons": "/p/src/gonganxitong/message.png?pod=20240724-community", "index": "web.team.renzhengshouquan.message", "name": "消息待办", "order": "902", @@ -152,7 +152,7 @@ }, "a040dfa713a6fa9533b3184244dbbb74": { "meta": { - "icons": "https://img.icons8.com/officel/80/customer-support.png", + "icons": "/p/src/gonganxitong/support.png?pod=20240724-community", "index": "web.team.renzhengshouquan.support", "name": "客服支持", "order": "905", @@ -161,7 +161,7 @@ }, "bfecb55b11fe68186270fe1b4b8de8cf": { "meta": { - "icons": "https://img.icons8.com/officel/80/person-at-home.png", + "icons": "/p/src/gonganxitong/member.png?pod=20240724-community", "index": "web.team.renzhengshouquan.member", "name": "组织成员", "order": "101", @@ -182,7 +182,7 @@ }, "d9f55b517f4b2579693523ed3b5bd088": { "meta": { - "icons": "https://img.icons8.com/officel/80/square.png", + "icons": "/p/src/gonganxitong/market.png?pod=20240724-community", "index": "web.team.renzhengshouquan.market", "name": "人民广场", "order": "901", @@ -191,7 +191,7 @@ }, "e038450591f3c8e7babc0c21b1c6fa6d": { "meta": { - "icons": "https://img.icons8.com/officel/80/multiple-smartphones.png", + "icons": "/p/src/gonganxitong/recent.png?pod=20240724-community", "index": "web.team.renzhengshouquan.recent", "name": "最近访问", "order": "903", @@ -200,7 +200,7 @@ }, "ecfb11fad5b4bdf21384e2e1ff571598": { "meta": { - "icons": "https://img.icons8.com/officel/80/commercial.png", + "icons": "/p/src/gonganxitong/notice.png?pod=20240724-community", "index": "web.team.renzhengshouquan.notice", "name": "通知公告", "order": "505", @@ -210,7 +210,7 @@ }, "f669e15e1c1c9da2bd3ea0c58abc0bd3": { "meta": { - "icons": "https://img.icons8.com/officel/80/passport.png", + "icons": "/p/src/gonganxitong/credit.png?pod=20240724-community", "index": "web.team.renzhengshouquan.credit", "name": "用户名片", "order": "102", @@ -219,7 +219,7 @@ }, "f6b093d122ff3cec363b00093e0a6f19": { "meta": { - "icons": "https://img.icons8.com/officel/80/activity-grid.png", + "icons": "/p/src/gonganxitong/service.png?pod=20240724-community", "index": "web.team.renzhengshouquan.service", "name": "服务发现", "order": "904", diff --git a/usr/local/export/web.team.shichangyingxiao.portal/hash.json b/usr/local/export/web.team.shichangyingxiao.portal/hash.json index 4fd1133..f894407 100644 --- a/usr/local/export/web.team.shichangyingxiao.portal/hash.json +++ b/usr/local/export/web.team.shichangyingxiao.portal/hash.json @@ -18,7 +18,7 @@ }, "2c9df1f570f596584de4fa13c5b93e3c": { "meta": { - "icons": "https://img.icons8.com/officel/80/commercial.png", + "icons": "/p/src/gonganxitong/notice.png?pod=20240724-community", "index": "web.team.shichangyingxiao.notice", "name": "通知公告", "order": "505", @@ -39,7 +39,7 @@ }, "46e6332c4605f69a33b1e77afa8946b1": { "meta": { - "icons": "https://img.icons8.com/officel/80/multiple-smartphones.png", + "icons": "/p/src/gonganxitong/recent.png?pod=20240724-community", "index": "web.team.shichangyingxiao.recent", "name": "最近访问", "order": "903", @@ -48,7 +48,7 @@ }, "7839941c117b3f9239c341cef18f25e4": { "meta": { - "icons": "https://img.icons8.com/officel/80/qr-code.png", + "icons": "/p/src/gonganxitong/qrcode.png?pod=20240724-community", "index": "web.team.shichangyingxiao.qrcode", "name": "场景码", "order": "501", @@ -58,7 +58,7 @@ }, "87d12132d2a5af1a5f02d559b05f0079": { "meta": { - "icons": "https://img.icons8.com/officel/80/square.png", + "icons": "/p/src/gonganxitong/market.png?pod=20240724-community", "index": "web.team.shichangyingxiao.market", "name": "人民广场", "order": "901", @@ -87,7 +87,7 @@ }, "973f550528977a494d7d8795521b297f": { "meta": { - "icons": "https://img.icons8.com/officel/80/edit-property.png", + "icons": "/p/src/gonganxitong/apply.png?pod=20240724-community", "index": "web.team.shichangyingxiao.apply", "name": "权限申请", "order": "502", @@ -97,7 +97,7 @@ }, "9cdf2e1dbb2fa0b94296c6fe7a777390": { "meta": { - "icons": "https://img.icons8.com/officel/80/test-partial-passed.png", + "icons": "/p/src/gonganxitong/message.png?pod=20240724-community", "index": "web.team.shichangyingxiao.message", "name": "消息待办", "order": "902", @@ -117,7 +117,7 @@ }, "a47fa4e5b1f848fe0054fba261291d28": { "meta": { - "icons": "https://img.icons8.com/officel/80/activity-grid.png", + "icons": "/p/src/gonganxitong/service.png?pod=20240724-community", "index": "web.team.shichangyingxiao.service", "name": "服务发现", "order": "904", @@ -126,7 +126,7 @@ }, "a4a07f7aa646a4dd855453b2bd4a6923": { "meta": { - "icons": "https://img.icons8.com/officel/80/customer-support.png", + "icons": "/p/src/gonganxitong/support.png?pod=20240724-community", "index": "web.team.shichangyingxiao.support", "name": "客服支持", "order": "905", @@ -135,7 +135,7 @@ }, "b13f5046ea633a723fc5d9d70d1013a4": { "meta": { - "icons": "https://img.icons8.com/officel/80/passport.png", + "icons": "/p/src/gonganxitong/credit.png?pod=20240724-community", "index": "web.team.shichangyingxiao.credit", "name": "用户名片", "order": "101", @@ -155,7 +155,7 @@ }, "c8ad2e58dc5ffc58d8b98b71d071018e": { "meta": { - "icons": "https://img.icons8.com/officel/80/settings--v1.png", + "icons": "/p/src/gonganxitong/setting.png?pod=20240724-community", "index": "web.team.shichangyingxiao.setting", "name": "服务配置", "order": "103", @@ -165,7 +165,7 @@ }, "c9fe6399734bb4fe3fe8417963653f70": { "meta": { - "icons": "https://img.icons8.com/officel/80/receipt-approved.png", + "icons": "/p/src/gonganxitong/allow.png?pod=20240724-community", "index": "web.team.shichangyingxiao.allow", "name": "权限审批", "order": "503", @@ -175,7 +175,7 @@ }, "f3a5ebef32a0324875b37501ff1e5f39": { "meta": { - "icons": "https://img.icons8.com/officel/80/person-at-home.png", + "icons": "/p/src/gonganxitong/member.png?pod=20240724-community", "index": "web.team.shichangyingxiao.member", "name": "组织成员", "order": "102", @@ -196,7 +196,7 @@ }, "fb363e19fbb6a1e19b9dbafcd5aca723": { "meta": { - "icons": "https://img.icons8.com/officel/80/property-with-timer.png", + "icons": "/p/src/gonganxitong/event.png?pod=20240724-community", "index": "web.team.shichangyingxiao.event", "name": "事件流", "order": "504", diff --git a/usr/local/export/web.team.zijinlian.portal/hash.json b/usr/local/export/web.team.zijinlian.portal/hash.json index bd5cfa6..4f62e2b 100644 --- a/usr/local/export/web.team.zijinlian.portal/hash.json +++ b/usr/local/export/web.team.zijinlian.portal/hash.json @@ -12,7 +12,7 @@ }, "070bfdf90ea979459b70ba77cb5bc2d2": { "meta": { - "icons": "https://img.icons8.com/officel/80/test-partial-passed.png", + "icons": "/p/src/gonganxitong/message.png?pod=20240724-community", "index": "web.team.zijinlian.message", "name": "消息待办", "order": "902", @@ -21,7 +21,7 @@ }, "0866057a2c1b1d7cb458b9323a243883": { "meta": { - "icons": "https://img.icons8.com/officel/80/edit-property.png", + "icons": "/p/src/gonganxitong/apply.png?pod=20240724-community", "index": "web.team.zijinlian.apply", "name": "权限申请", "order": "502", @@ -31,7 +31,7 @@ }, "1193f64afd8038b7424ca3ff61a20414": { "meta": { - "icons": "https://img.icons8.com/officel/80/square.png", + "icons": "/p/src/gonganxitong/market.png?pod=20240724-community", "index": "web.team.zijinlian.market", "name": "人民广场", "order": "901", @@ -51,7 +51,7 @@ }, "3461d8729e4a9cd312be1d2640dd0dbd": { "meta": { - "icons": "https://img.icons8.com/officel/80/passport.png", + "icons": "/p/src/gonganxitong/credit.png?pod=20240724-community", "index": "web.team.zijinlian.credit", "name": "用户名片", "order": "101", @@ -60,7 +60,7 @@ }, "500957356f664f8f498fec0463c0059c": { "meta": { - "icons": "https://img.icons8.com/officel/80/activity-grid.png", + "icons": "/p/src/gonganxitong/service.png?pod=20240724-community", "index": "web.team.zijinlian.service", "name": "服务发现", "order": "904", @@ -86,7 +86,7 @@ }, "76268373c0e2d37f0ecef7cda4e753bf": { "meta": { - "icons": "https://img.icons8.com/officel/80/person-at-home.png", + "icons": "/p/src/gonganxitong/member.png?pod=20240724-community", "index": "web.team.zijinlian.member", "name": "组织成员", "order": "102", @@ -96,7 +96,7 @@ }, "82aa256d14ed472edd5ddad914988217": { "meta": { - "icons": "https://img.icons8.com/officel/80/receipt-approved.png", + "icons": "/p/src/gonganxitong/allow.png?pod=20240724-community", "index": "web.team.zijinlian.allow", "name": "权限审批", "order": "503", @@ -117,7 +117,7 @@ }, "b1891a3bbdac29c92c9a9ed453ecd58e": { "meta": { - "icons": "https://img.icons8.com/officel/80/property-with-timer.png", + "icons": "/p/src/gonganxitong/event.png?pod=20240724-community", "index": "web.team.zijinlian.event", "name": "事件流", "order": "504", @@ -138,7 +138,7 @@ }, "bfc2eaadfbfb38e729ffb9b9e66547f2": { "meta": { - "icons": "https://img.icons8.com/officel/80/multiple-smartphones.png", + "icons": "/p/src/gonganxitong/recent.png?pod=20240724-community", "index": "web.team.zijinlian.recent", "name": "最近访问", "order": "903", @@ -147,7 +147,7 @@ }, "c1ce9668d8ab941e983d33c41b984e05": { "meta": { - "icons": "https://img.icons8.com/officel/80/commercial.png", + "icons": "/p/src/gonganxitong/notice.png?pod=20240724-community", "index": "web.team.zijinlian.notice", "name": "通知公告", "order": "505", @@ -157,7 +157,7 @@ }, "d4ebda0325876b74570608b73db67427": { "meta": { - "icons": "https://img.icons8.com/officel/80/settings--v1.png", + "icons": "/p/src/gonganxitong/setting.png?pod=20240724-community", "index": "web.team.zijinlian.setting", "name": "服务配置", "order": "103", @@ -167,7 +167,7 @@ }, "ef38e71eba9d4bf20b1bad56fa2a0b18": { "meta": { - "icons": "https://img.icons8.com/officel/80/qr-code.png", + "icons": "/p/src/gonganxitong/qrcode.png?pod=20240724-community", "index": "web.team.zijinlian.qrcode", "name": "场景码", "order": "501", @@ -186,7 +186,7 @@ }, "f26bb4f3a20a79f8413bdda5817ee87f": { "meta": { - "icons": "https://img.icons8.com/officel/80/customer-support.png", + "icons": "/p/src/gonganxitong/support.png?pod=20240724-community", "index": "web.team.zijinlian.support", "name": "客服支持", "order": "905",