mirror of
https://shylinux.com/x/community
synced 2025-04-25 17:48:06 +08:00
add some
This commit is contained in:
parent
9efe388f90
commit
67439e90dd
@ -20,7 +20,7 @@ type allow struct {
|
||||
|
||||
func (s allow) Create(m *ice.Message, arg ...string) {
|
||||
s.Insert(m.Spawn(), arg...)
|
||||
m.Option(model.COMMAND_UID, CommandUID(m, m.PrefixKey()))
|
||||
s.GetCommandUID(m)
|
||||
s.SendMessage(m, m.Option(model.FROM_USER_UID), "")
|
||||
s.SendTemplate(m, "", "", m.Trans("please allow", "权限审批 请处理"))
|
||||
}
|
||||
@ -72,7 +72,8 @@ func (s allow) process(m *ice.Message, from, to AllowStatus, icon string, title
|
||||
return
|
||||
}
|
||||
m.Cmdy(s.Prefix(m, s.apply), m.ActionKey(), m.Option(model.UID)).ProcessRefresh()
|
||||
s.RecordEvent(m, kit.JoinWord(icon, title, kit.Cut(m.Option(model.UID), 6), s.TransRole(m), m.Option(model.USER_NAME)), m.Option(model.UID))
|
||||
style := kit.Select("notice", "danger", kit.Int(m.Option(model.ROLE)) == 2)
|
||||
s.RecordEvent(m, kit.JoinWord(icon, title, kit.Cut(m.Option(model.UID), 6), s.TransRole(m, "", style), m.Option(model.USER_NAME)), m.Option(model.UID))
|
||||
s.DoneMessage(m)
|
||||
}
|
||||
func (s allow) changeStatus(m *ice.Message, from, to AllowStatus, arg ...string) *ice.Message {
|
||||
|
@ -63,12 +63,12 @@ func (s apply) Submit(m *ice.Message, arg ...string) {
|
||||
if m.WarnNotValid(msg.IsErr()) {
|
||||
return
|
||||
}
|
||||
role := UserPlaceCreator
|
||||
role, style := UserPlaceCreator, ""
|
||||
switch UserPlaceRole(kit.Int(msg.Append(model.ROLE))) {
|
||||
case UserPlaceLandlord:
|
||||
role = UserPlaceCreator
|
||||
role, style = UserPlaceCreator, "danger"
|
||||
default:
|
||||
role = UserPlaceLandlord
|
||||
role, style = UserPlaceLandlord, "notice"
|
||||
}
|
||||
msg = m.Cmd(s.UserPlace, s.Select, m.OptionSimple(s.Keys(s.Place, model.UID)), model.ROLE, role)
|
||||
if m.WarnNotFound(msg.Length() == 0, role.String()) {
|
||||
@ -76,12 +76,13 @@ func (s apply) Submit(m *ice.Message, arg ...string) {
|
||||
}
|
||||
m.Option(model.FROM_USER_UID, m.Option(model.USER_UID))
|
||||
m.Cmd(s.Prefix(m, allow{}), s.Create, model.APPLY_UID, m.Option(model.UID), model.PLACE_UID, m.Option(s.Keys(s.Place, model.UID)), msg.AppendSimple(model.USER_UID), model.STATUS, AllowCreate)
|
||||
s.RecordEvent(m, kit.JoinWord("🕑", m.Trans("apply submit", "权限申请 已提交"), kit.Cut(m.Option(model.UID), 6), s.TransRole(m), m.Option(model.USER_NAME)), m.Option(model.UID))
|
||||
s.RecordEvent(m, kit.JoinWord("🕑", m.Trans("apply submit", "权限申请 已提交"), kit.Cut(m.Option(model.UID), 6), s.TransRole(m, "", style), m.Option(model.USER_NAME)), m.Option(model.UID))
|
||||
s.SendMessage(m, msg.Append(model.USER_UID), m.Option(model.USER_UID))
|
||||
}
|
||||
func (s apply) Reject(m *ice.Message, arg ...string) {
|
||||
msg := s.changeStatus(m, ApplySubmit, ApplyRejected)
|
||||
s.SendTemplate(msg, "", "", m.Trans("apply rejected", "权限申请 已驳回"))
|
||||
m.Option(model.ROLE, msg.Append(model.ROLE))
|
||||
}
|
||||
func (s apply) Approve(m *ice.Message, arg ...string) {
|
||||
msg := s.changeStatus(m, ApplySubmit, ApplyApproved)
|
||||
@ -90,6 +91,7 @@ func (s apply) Approve(m *ice.Message, arg ...string) {
|
||||
}
|
||||
m.Cmd(s.UserPlace, s.Insert, s.Keys(s.Place, model.UID), msg.Append(model.PLACE_UID), msg.AppendSimple(model.USER_UID, model.ROLE))
|
||||
s.SendTemplate(msg, "", "", m.Trans("apply approved", "权限申请 已通过"))
|
||||
m.Option(model.ROLE, msg.Append(model.ROLE))
|
||||
}
|
||||
|
||||
func init() { ice.TeamCtxCmd(apply{Table: newTable()}) }
|
||||
|
@ -197,7 +197,9 @@ func (s Table) SelectJoinRecent(m *ice.Message, PLACE_UID string, arg ...string)
|
||||
kit.If(len(arg) == 0, func() { arg = append(arg, model.CITY_NAME, model.STREET_NAME, model.PLACE_NAME) })
|
||||
list := []string{}
|
||||
m.Table(func(value ice.Maps) { kit.If(value[PLACE_UID], func(v string) { list = kit.AddUniq(list, v) }) })
|
||||
recents := m.CmdMap(recent{}, s.SelectList, model.PLACE_UID, list, model.PLACE_UID)
|
||||
msg := m.Spawn()
|
||||
s.Fields(msg, kit.JoinFields("DISTINCT place_uid", kit.JoinFields(arg...)))
|
||||
recents := msg.CmdMap(recent{}, s.SelectList, model.PLACE_UID, list, model.PLACE_UID)
|
||||
m.Table(func(value ice.Maps) {
|
||||
recent := recents[value[PLACE_UID]]
|
||||
kit.For(arg, func(k string) { m.Push(k, recent[k]) })
|
||||
@ -236,7 +238,7 @@ func (s Table) RewriteAppend(m *ice.Message, arg ...string) *ice.Message {
|
||||
})
|
||||
return m
|
||||
}
|
||||
func (s Table) Update(m *ice.Message, data ice.Map, arg ...string) {
|
||||
func (s Table) Update(m *ice.Message, data ice.Any, arg ...string) {
|
||||
if len(arg) == 0 {
|
||||
arg = append(arg, model.UID, kit.Select(m.Option(model.UID), m.Option(s.Keys(m.CommandKey(), model.UID))))
|
||||
}
|
||||
@ -252,15 +254,15 @@ func (s Table) UploadUpdate(m *ice.Message, field, uid string, arg ...string) {
|
||||
if m.IsErr() {
|
||||
return
|
||||
}
|
||||
p := m.UploadSave(path.Join(nfs.USR, kit.Select(field, m.Option("field")), uid) + nfs.PS)
|
||||
s.Update(m, kit.Dict(kit.Select(m.Option("field"), field), p), model.UID, uid)
|
||||
p := m.UploadSave(path.Join(nfs.USR, kit.Select(field, m.Option(model.FIELD)), uid) + nfs.PS)
|
||||
s.Update(m, kit.Dict(kit.Select(m.Option(model.FIELD), field), p), model.UID, uid)
|
||||
}
|
||||
func (s Table) UploadCreate(m *ice.Message, field, uid string, arg ...string) {
|
||||
if m.IsErr() {
|
||||
return
|
||||
}
|
||||
p := m.UploadSave(path.Join(nfs.USR, kit.Select(field, m.Option("field")), uid) + nfs.PS)
|
||||
s.Create(m, kit.Select(m.Option("field"), field), p, model.UID, uid)
|
||||
p := m.UploadSave(path.Join(nfs.USR, kit.Select(field, m.Option(model.FIELD)), uid) + nfs.PS)
|
||||
s.Create(m, kit.Select(m.Option(model.FIELD), field), p, model.UID, uid)
|
||||
}
|
||||
func (s Table) ChangeStatus(m *ice.Message, place_uid, uid string, from, to int, arg ...string) *ice.Message {
|
||||
msg := s.ValueList(m.Spawn(), []string{place_uid, uid}, model.STATUS)
|
||||
@ -324,6 +326,15 @@ func (s Table) CityList(m *ice.Message, arg ...string) *ice.Message {
|
||||
m.Cmdy(s.Prefix(m, city{}), arg).RenameAppend(model.NAME, model.CITY_NAME)
|
||||
return m
|
||||
}
|
||||
func (s Table) CityCmd(m *ice.Message, arg ...ice.Any) *ice.Message {
|
||||
return m.Cmd(append([]ice.Any{city{}}, arg...)...)
|
||||
}
|
||||
func (s Table) CreditCmdy(m *ice.Message, arg ...ice.Any) *ice.Message {
|
||||
return m.Cmdy(append([]ice.Any{s.Prefix(m, credit{})}, arg...)...)
|
||||
}
|
||||
func (s Table) SettingCmdy(m *ice.Message, arg ...ice.Any) *ice.Message {
|
||||
return m.Cmdy(append([]ice.Any{s.Prefix(m, setting{})}, arg...)...)
|
||||
}
|
||||
func (s Table) AuthCreate(m *ice.Message, authType int, fromUID string, arg ...string) {
|
||||
s.AutoCmdy(m, api.RENZHENGSHOUQUAN_PORTAL, Portal{}.PlaceCreate,
|
||||
model.AUTH_NAME, m.Option(model.NAME), model.AUTH_INFO, m.Option(model.INFO),
|
||||
@ -421,7 +432,7 @@ func (s Table) TransValue(m *ice.Message, key string, arg ...string) string {
|
||||
func (s Table) TransRole(m *ice.Message, arg ...string) string {
|
||||
value := kit.Select(m.Option(s.Keys(s.UserPlace, model.ROLE)), arg, 0)
|
||||
role := s.Place.TransValue(m, s.Keys(s.UserPlace, model.ROLE), arg...)
|
||||
return kit.Format(`<span class="role %s">%s</span>`, value, role)
|
||||
return kit.Format(`<span class="role %s %s">%s</span>`, value, kit.Select("", arg, 1), role)
|
||||
}
|
||||
|
||||
func (s Table) Prefix(m *ice.Message, target ice.Any) string {
|
||||
@ -454,13 +465,7 @@ func (s Table) AutoCmd(m *ice.Message, arg ...ice.Any) *ice.Message {
|
||||
}
|
||||
func (s Table) ProcessPodCmd(m, msg *ice.Message, arg ...string) *ice.Message {
|
||||
m.ProcessPodCmd(msg.Append(web.SPACE), msg.Append(ctx.INDEX), kit.Split(msg.Append(ctx.ARGS)))
|
||||
m.RewriteAppend(func(value, key string, index int) string {
|
||||
if key == "style" {
|
||||
value = "output"
|
||||
}
|
||||
return value
|
||||
})
|
||||
m.Push("field.option", kit.Format(kit.Dict(arg)))
|
||||
m.Push(ice.FIELD_OPTION, kit.Format(kit.Dict(arg)))
|
||||
return m
|
||||
}
|
||||
func (s Table) Link(m *ice.Message, arg ...string) string {
|
||||
|
@ -94,6 +94,7 @@ const (
|
||||
NODETYPE = "nodetype"
|
||||
SPACE = "space"
|
||||
INDEX = "index"
|
||||
FIELD = "field"
|
||||
ICON = "icon"
|
||||
ARGS = "args"
|
||||
INIT = "init"
|
||||
|
@ -12,16 +12,22 @@ type notice struct {
|
||||
order string `data:"505"`
|
||||
role string `data:"leader"`
|
||||
fields string `data:"title,content,user_uid"`
|
||||
create string `name:"create title* content*" role:"leader"`
|
||||
remove string `name:"remove" role:"leader"`
|
||||
create string `name:"create title* content*" role:"void"`
|
||||
remove string `name:"remove" role:"void"`
|
||||
}
|
||||
|
||||
func (s notice) Create(m *ice.Message, arg ...string) {
|
||||
if m.WarnNotRight(!s.IsLeader(m)) {
|
||||
return
|
||||
}
|
||||
m.Option(model.PLACE_UID, m.Option(s.Keys(s.Place, model.UID)))
|
||||
s.Insert(m, kit.Simple(arg, m.OptionSimple(model.PLACE_UID, model.USER_UID))...)
|
||||
s.RecordEventWithName(m, "")
|
||||
}
|
||||
func (s notice) Remove(m *ice.Message, arg ...string) {
|
||||
if m.WarnNotRight(!s.IsLeader(m)) {
|
||||
return
|
||||
}
|
||||
m.Option(model.PLACE_UID, m.Option(s.Keys(s.Place, model.UID)))
|
||||
s.Delete(m, m.OptionSimple(model.PLACE_UID, model.UID)...)
|
||||
s.RecordEventWithName(m, "")
|
||||
|
@ -59,7 +59,7 @@ $output div.item.card div.title { width:100%; display:flex; align-items:center;
|
||||
$output div.item.card div.title span:first-child { word-break:break-all; }
|
||||
$output div.item.card div.title span.auth { font-size:14px; }
|
||||
$output div.item.card div.title span.time { position:absolute; right:0; font-size:12px; color:gray; }
|
||||
$output div.item.card div.status span { word-break:break-all; white-space:pre; }
|
||||
$output div.item.card div.status span { word-break:break-all; }
|
||||
$output div.item.card img { border-radius:5px; padding:0; margin:0; margin-right:10px; height:48px; width:48px; min-width:48px; object-fit:cover; }
|
||||
$output div.item.card.sticky>div.output { background-color:var(--plugin-bg-color); color:var(--notice-bg-color); }
|
||||
$action div.item.notice input[type=button] { border:var(--box-notice); color:var(--notice-bg-color); }
|
||||
@ -67,10 +67,9 @@ $action div.item.danger input[type=button] { border:var(--box-danger); color:var
|
||||
$output input.notice[type=button] { background-color:var(--notice-bg-color); color:var(--notice-fg-color); }
|
||||
$output input.danger[type=button] { border:var(--box-danger); color:var(--danger-bg-color); }
|
||||
$output input[type=button][name=submit] { background-color:var(--notice-bg-color); color:var(--notice-fg-color); }
|
||||
body.mobile $output img.qrcode { width:100%; margin:0; }
|
||||
$output span.type { border:none; border-radius:5px; background-color:var(--hover-bg-color); padding:2px 8px; }
|
||||
$output span.role { border:none; border-radius:5px; background-color:var(--hover-bg-color); padding:2px 8px; }
|
||||
$output span.status { border:none; border-radius:5px; background-color:var(--hover-bg-color); padding:2px 8px; }
|
||||
$output span.type { border:none; border-radius:5px; background-color:var(--hover-bg-color); color:var(--notice-bg-color); padding:2px 8px; }
|
||||
$output span.role { border:none; border-radius:5px; background-color:var(--hover-bg-color); color:var(--notice-bg-color); padding:2px 8px; }
|
||||
$output span.status { border:none; border-radius:5px; background-color:var(--hover-bg-color); color:var(--notice-bg-color); padding:2px 8px; }
|
||||
$output span.type.danger { color:var(--danger-bg-color); }
|
||||
$output span.role.danger { color:var(--danger-bg-color); }
|
||||
$output span.status.danger { color:var(--danger-bg-color); }
|
||||
@ -106,6 +105,7 @@ $output fieldset.story.form>div.output>div.code>input[type=button] { font-size:1
|
||||
$output>fieldset.story.web.team.renzhengshouquan.profile { margin-top:0; }
|
||||
fieldset.web.team.renzhengshouquan.profile>div.output div.code { margin-top:60px; margin-bottom:240px; }
|
||||
$output>fieldset.story.web.team.credit { margin-top:0; }
|
||||
$output>fieldset.story.web.team.credit>div.output>div.code { margin-top:32px; }
|
||||
$output>fieldset.message div.tabs span.select { border-top:var(--box-border); }
|
||||
$output>fieldset.message div.tabs span.create.select { border-top:var(--box-danger); }
|
||||
$output>fieldset.message div.tabs span.read.select { border-top:var(--box-notice); }
|
||||
@ -127,6 +127,7 @@ $output.public>div>div.list.myplace>div.output { padding:0; }
|
||||
$output.public>div>div.list.myplace div.item.card div.output { padding:0; }
|
||||
fieldset.web.team.storage.file div.item.card div.title span:first-child { flex-grow:1; }
|
||||
body.dark $output>div>div.list.mynotice>span:first-child { background-color:var(--hover-bg-color); color:yellow; white-space:pre; }
|
||||
body.mobile $output img.qrcode { width:100%; margin:0; }
|
||||
body.mobile div.input.float { position:absolute; top:0 !important; margin:0; width:100% !important; max-width:100% !important; }
|
||||
body.mobile div.input.float input[name=submit] { background-color:var(--notice-bg-color); color:var(--notice-fg-color); }
|
||||
body.mobile fieldset.panel.Action>div.output { background-color:var(--plugin-bg-color); }
|
||||
|
@ -28,7 +28,7 @@ type Portal struct {
|
||||
field string `data:"time,icons,name,index,order,enable,init,type,role,view"`
|
||||
create string `name:"create index name icons"`
|
||||
list string `name:"list place_uid index uid auto" role:"void"`
|
||||
placeCreate string `name:"placeCreate city_name* street_name* place_name* place_type*:select address" icon:"bi bi-plus-square-dotted" role:"void"`
|
||||
placeCreate string `name:"placeCreate city_name* street_name* place_name* place_type:select address" icon:"bi bi-plus-square-dotted" role:"void"`
|
||||
placeRemove string `name:"placeRemove" role:"void"`
|
||||
}
|
||||
|
||||
|
@ -155,18 +155,24 @@ Volcanos(chat.ONACTION, {
|
||||
can.user.isMobile && can.page.style(can, can._root.Action._output, html.VISIBILITY, html.HIDDEN)
|
||||
sub.Option("city_name", "深圳市")
|
||||
// sub.Option("city_name", "邹城市")
|
||||
|
||||
sub.Option("street_name", "航城街道")
|
||||
sub.Option("school_name", "深圳中学")
|
||||
sub.Option("company_name", "云境互联")
|
||||
sub.Option("class_name", "初一二班")
|
||||
sub.Option("group_name", "爬山群")
|
||||
sub.Option("grade", "2024级")
|
||||
// sub.Option("company_name", "老邵木器加工")
|
||||
sub.Option("store_name", "老邵木器加工")
|
||||
|
||||
sub.Option("place_name", "易尚三维")
|
||||
sub.Option("queue_name", "二楼产检")
|
||||
sub.Option("group_name", "爬山群")
|
||||
sub.Option("class_name", "初一二班")
|
||||
sub.Option("exam_name", "初一期末考试")
|
||||
sub.Option("store_name", "老邵木器加工")
|
||||
sub.Option("capital_name", "国资委")
|
||||
sub.Option("channel_name", "公众号")
|
||||
|
||||
sub.Option("reception_name", "科室1")
|
||||
sub.Option("volume_amount", "100")
|
||||
sub.Option("grade", "2024级")
|
||||
},
|
||||
afterInputs: function(event, can, button, target) {
|
||||
can.user.isMobile && can.page.style(can, can._root.Action._output, html.VISIBILITY, "")
|
||||
|
@ -50,6 +50,7 @@
|
||||
"place_type": "场景类型",
|
||||
"place_address": "场景地址",
|
||||
"street_name": "街道名称",
|
||||
"school_name": "学校名称",
|
||||
"company_uid": "公司",
|
||||
"company_name": "公司名称",
|
||||
"city_name": "城市名称",
|
||||
@ -130,7 +131,7 @@
|
||||
"revoked": "❌ 已吊销"
|
||||
},
|
||||
"setting": {
|
||||
"profile": "个人名片"
|
||||
"profile": "将本服务展示到个人名片"
|
||||
},
|
||||
"qrcode_type": {
|
||||
"portal": "门户首页",
|
||||
|
@ -46,12 +46,5 @@ func (s setting) List(m *ice.Message, arg ...string) {
|
||||
}
|
||||
s.DisplayBase(m, "").DisplayCSS("")
|
||||
}
|
||||
func (s setting) Profile(m *ice.Message, arg ...string) {
|
||||
s.Fields(m, model.PLACE_UID)
|
||||
s.Select(m, model.USER_UID, arg[0], model.NAME, m.ActionKey(), model.VALUE, "on")
|
||||
}
|
||||
func (s Table) SettingProfile(m *ice.Message, arg ...string) *ice.Message {
|
||||
return m.Cmdy(s.Prefix(m, setting{}), setting{}.Profile, arg)
|
||||
}
|
||||
|
||||
func init() { ice.TeamCtxCmd(setting{Table: newTable()}) }
|
||||
|
@ -7,7 +7,7 @@ import (
|
||||
|
||||
type Portal struct {
|
||||
guanlixitong.Portal
|
||||
placeCreate string `name:"placeCreate city_name* company_name* {{.Option "class"}}_name* {{.Option "class"}}_type*:select" role:"void"`
|
||||
placeCreate string `name:"placeCreate city_name* company_name* {{.Option "class"}}_name* {{.Option "class"}}_type:select" role:"void"`
|
||||
}
|
||||
|
||||
func init() { gonganxitong.PortalCmd(Portal{Portal: guanlixitong.NewPortal(user{{.Option "Class"}}{}, {{.Option "class"}}{})}) }
|
||||
|
@ -35,6 +35,7 @@ const (
|
||||
DASHBOARD_UID = "dashboard_uid"
|
||||
SPACE = "space"
|
||||
INDEX = "index"
|
||||
VALUE = "value"
|
||||
PATH = "path"
|
||||
)
|
||||
|
||||
|
@ -2,10 +2,7 @@ package renzhengshouquan
|
||||
|
||||
import (
|
||||
"shylinux.com/x/ice"
|
||||
"shylinux.com/x/icebergs/base/aaa"
|
||||
"shylinux.com/x/icebergs/base/ctx"
|
||||
"shylinux.com/x/icebergs/base/mdb"
|
||||
"shylinux.com/x/icebergs/base/web"
|
||||
kit "shylinux.com/x/toolkits"
|
||||
|
||||
"shylinux.com/x/community/src/renzhengshouquan/model"
|
||||
@ -14,71 +11,72 @@ import (
|
||||
type profile struct {
|
||||
Auth
|
||||
order string `data:"3"`
|
||||
modify string `name:"modify info" role:"void"`
|
||||
upload string `name:"upload" role:"void"`
|
||||
modify string `name:"modify info" role:"leader,worker"`
|
||||
upload string `name:"upload" role:"leader,worker"`
|
||||
authList string `name:"authList" role:"void"`
|
||||
fromList string `name:"fromList" role:"void"`
|
||||
memberList string `name:"memberList" role:"void"`
|
||||
serviceList string `name:"serviceList" role:"void"`
|
||||
fromList string `name:"fromList" role:"void"`
|
||||
authPersonal string `name:"authPersonal" role:"void"`
|
||||
}
|
||||
|
||||
func (s profile) Modify(m *ice.Message, arg ...string) {
|
||||
s.Update(m, kit.Dict(m.OptionSimple(model.INFO)), model.UID, m.Option(model.AUTH_UID))
|
||||
s.Update(m, m.OptionSimple(model.INFO), model.UID, m.Option(model.AUTH_UID))
|
||||
}
|
||||
func (s profile) Upload(m *ice.Message, arg ...string) {
|
||||
m.WarnNotValid(!kit.IsIn(m.OptionDefault(mdb.FIELD, aaa.AVATAR), aaa.AVATAR, aaa.BACKGROUND))
|
||||
s.Table.UploadUpdate(m, "", m.Option(model.AUTH_UID))
|
||||
if m.WarnNotValid(!kit.IsIn(m.OptionDefault(mdb.FIELD, model.AVATAR), model.AVATAR, model.BACKGROUND)) {
|
||||
return
|
||||
}
|
||||
s.UploadUpdate(m, "", m.Option(model.AUTH_UID))
|
||||
}
|
||||
func (s profile) List(m *ice.Message, arg ...string) {
|
||||
if len(arg) == 1 {
|
||||
if len(arg) == 0 {
|
||||
s.Select(m)
|
||||
s.RewriteAppend(m)
|
||||
m.PushAction(s.Remove)
|
||||
return
|
||||
} else if len(arg) == 1 {
|
||||
s.Select(m, model.UID, arg[0])
|
||||
kit.If(s.IsVisitor(m), func() { m.Action() }, func() { m.Action(s.Modify) })
|
||||
kit.If(s.IsWorker(m), func() { m.Action(s.Modify) }, func() { m.Action() })
|
||||
} else {
|
||||
return
|
||||
}
|
||||
switch AuthType(kit.Int(m.Append(model.AUTH_TYPE))) {
|
||||
case AuthService:
|
||||
kit.If(s.IsVisitor(m), func() { m.Action() }, func() { m.Action(s.Modify, s.Enter) })
|
||||
kit.If(s.IsWorker(m), func() { m.Action(s.Modify, s.Enter) }, func() { m.Action() })
|
||||
s.SelectJoinRecent(m, model.PLACE_UID)
|
||||
s.SelectJoinService(m)
|
||||
defer m.Echo(m.Append(model.CITY_NAME) + " " + m.Append(model.STREET_NAME) + " " + m.Append(model.PLACE_NAME))
|
||||
defer m.Echo(kit.JoinWord(m.Append(model.CITY_NAME), m.Append(model.STREET_NAME), m.Append(model.PLACE_NAME)))
|
||||
case AuthPersonal:
|
||||
s.SelectJoinUser(m)
|
||||
defer m.Echo(m.Append(model.NAME))
|
||||
fallthrough
|
||||
default:
|
||||
defer m.Echo(m.Append(model.NAME))
|
||||
}
|
||||
s.RewriteAppend(m)
|
||||
m.EchoQRCode(s.Link(m, arg[0], m.PrefixKey()))
|
||||
m.Display("").DisplayCSS("")
|
||||
}
|
||||
func (s profile) FromList(m *ice.Message, arg ...string) {
|
||||
from := arg[0]
|
||||
for {
|
||||
msg := s.Select(m.Spawn(), model.UID, from)
|
||||
m.Copy(msg)
|
||||
if msg.Append(model.FROM_UID) != "" {
|
||||
from = msg.Append(model.FROM_UID)
|
||||
} else {
|
||||
break
|
||||
}
|
||||
}
|
||||
m.EchoQRCode(s.Link(m, arg[0], m.PrefixKey())).Display("").DisplayCSS("")
|
||||
}
|
||||
func (s profile) AuthList(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(s.Auth, m.Option(model.AUTH_UID)).Table(func(value ice.Maps) {
|
||||
m.Cmdy(s.Auth, arg[0]).Table(func(value ice.Maps) {
|
||||
if value[model.PLACE_UID] == "" {
|
||||
m.PushButton()
|
||||
} else {
|
||||
m.PushButton(s.Enter)
|
||||
}
|
||||
})
|
||||
s.SelectJoinRecent(m, model.PLACE_UID)
|
||||
s.SelectJoinService(m)
|
||||
s.RewriteAppend(m)
|
||||
}
|
||||
func (s profile) MemberList(m *ice.Message, arg ...string) {
|
||||
user_uid := m.Option(model.USER_UID)
|
||||
msg := s.Select(m.Spawn(), model.UID, m.Option(model.AUTH_UID))
|
||||
service := s.Table.ServiceList(m, msg.Append(model.PLACE_UID), msg.Append(model.SERVICE_UID))
|
||||
m.Cmdy(web.SPACE, service.Append(model.SPACE), service.Append(model.INDEX), ctx.ACTION, m.ActionKey(), msg.Append(model.PLACE_UID))
|
||||
s.Fields(m, model.USER_UID)
|
||||
s.settingProfile(m, model.PLACE_UID, arg[0])
|
||||
if m.Length() == 0 {
|
||||
return
|
||||
}
|
||||
s.SelectJoinUser(m, model.NAME, model.INFO, model.AVATAR, model.BACKGROUND, model.AUTH_UID)
|
||||
s.SelectJoinAuth(m)
|
||||
m.Table(func(value ice.Maps) {
|
||||
if value[model.AUTH_STATUS] == "" && value[model.USER_UID] == user_uid {
|
||||
m.PushButton(s.AuthPersonal)
|
||||
@ -89,15 +87,36 @@ func (s profile) MemberList(m *ice.Message, arg ...string) {
|
||||
s.RewriteAppend(m)
|
||||
}
|
||||
func (s profile) ServiceList(m *ice.Message, arg ...string) {
|
||||
list := s.SettingProfile(m.Spawn(), arg...).Appendv(model.PLACE_UID)
|
||||
msg := m.Spawn()
|
||||
s.Fields(msg, model.PLACE_UID)
|
||||
list := s.settingProfile(msg, model.USER_UID, arg[0]).Appendv(model.PLACE_UID)
|
||||
if m.WarnNotFound(len(list) == 0, model.USER_UID, arg[0]) {
|
||||
return
|
||||
}
|
||||
s.FieldsWithCreatedAT(m, s.Auth, kit.TransArgs(kit.Split(m.Config(mdb.FIELDS), ",", ","))...)
|
||||
s.SelectList(m, kit.Simple(model.PLACE_UID, kit.Sort(list))...)
|
||||
s.SelectJoinRecent(m, model.PLACE_UID)
|
||||
s.SelectJoinService(m).PushAction(s.Enter)
|
||||
s.RewriteAppend(m)
|
||||
}
|
||||
func (s profile) Enter(m *ice.Message, arg ...string) {}
|
||||
func (s profile) AuthPersonal(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(m.Prefix("credit"), m.ActionKey())
|
||||
func (s profile) FromList(m *ice.Message, arg ...string) {
|
||||
from := arg[0]
|
||||
for {
|
||||
msg := s.Select(m.Spawn(), model.UID, from)
|
||||
if m.Copy(msg); msg.Append(model.FROM_UID) != "" {
|
||||
from = msg.Append(model.FROM_UID)
|
||||
} else {
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
func (s profile) AuthPersonal(m *ice.Message, arg ...string) {
|
||||
s.CreditCmdy(m, m.ActionKey(), arg)
|
||||
}
|
||||
func (s profile) Enter(m *ice.Message, arg ...string) {}
|
||||
|
||||
func init() { ice.TeamCtxCmd(profile{}) }
|
||||
|
||||
func (s profile) settingProfile(m *ice.Message, arg ...string) *ice.Message {
|
||||
return s.SettingCmdy(m, s.Select, arg, model.NAME, "profile", model.VALUE, "on")
|
||||
}
|
||||
|
@ -1,8 +1,5 @@
|
||||
Volcanos(chat.ONIMPORT, {
|
||||
_init: function(can, msg) {
|
||||
msg.Option("_share_title", msg.Append(mdb.NAME)), msg.Option("_share_content", msg.Append(mdb.INFO)), msg.Option("_share_icons", msg.Append(aaa.AVATAR))
|
||||
// if (!can.base.isIn(msg.Option(USER_ROLE), "1", "2", "3")) { delete(can.onaction.updateAvatar), delete(can.onaction.updateBackground) }
|
||||
can.ui = can.page.Appends(can, can._output, [html.HEAD, html.LIST, "from"])
|
||||
_init: function(can, msg) { can.ui = can.page.Appends(can, can._output, [html.HEAD, html.LIST, "from"])
|
||||
msg.Table(function(value) {
|
||||
can.page.Append(can, can.ui.head, [{img: can.misc.Resource(can, value.background||html.BACKGROUND_JPG), onclick: function(event) {
|
||||
can.onaction.updateBackground && can.onaction.updateBackground(event, can)
|
||||
@ -16,34 +13,34 @@ Volcanos(chat.ONIMPORT, {
|
||||
switch (msg.Append(AUTH_TYPE)) {
|
||||
case "root": can.onimport.myTitle(can, "My City", "城市列表", can.ui.list); break
|
||||
case "city": can.onimport.myTitle(can, "My Company", "组织列表", can.ui.list); break
|
||||
case "service": can.onimport.myTitle(can, "My Member", "成员列表", can.ui.list); break
|
||||
default: can.onimport.myTitle(can, "My Auth", "服务列表", can.ui.list)
|
||||
} can.onimport.myTitle(can, "My From", "认证机构", can.ui.from)
|
||||
msg.Append(AUTH_TYPE) == "personal"? can.onimport.serviceList(can, msg): msg.Append(AUTH_TYPE) == "service"? can.onimport.memberList(can, msg): can.onimport.authList(can, msg)
|
||||
default: can.onimport.myTitle(can, "My Auth", "服务列表"); break
|
||||
}
|
||||
msg.Append(AUTH_TYPE) == "personal"? can.onimport.serviceList(can, msg, can.ui.list): msg.Append(AUTH_TYPE) == "service"? can.onimport.memberList(can, msg, can.ui.list): can.onimport.authList(can, msg)
|
||||
can.onimport.fromList(can, msg, can.ui.from), can.onappend.board(can, msg)
|
||||
msg.Option("_share_title", msg.Append(mdb.NAME)), msg.Option("_share_content", msg.Append(mdb.INFO)), msg.Option("_share_icons", msg.Append(aaa.AVATAR))
|
||||
if (!can.base.isIn(msg.Option(USER_ROLE), "1", "2", "3")) { delete(can.onaction.updateAvatar), delete(can.onaction.updateBackground) }
|
||||
},
|
||||
myTitle: function(can, name, help, target) {
|
||||
can.page.Append(can, target, [{view: html.TITLE, list: [{text: can.user.trans(can, name, help)}]}])
|
||||
can.page.Appends(can, target||can.ui.list, [{view: html.TITLE, list: [{text: can.user.trans(can, name, help)}]}])
|
||||
},
|
||||
authList: function(can, msg) {
|
||||
can.runAction(can.request({}, {auth_uid: msg.Append(UID)}), "authList", [], function(msg) {
|
||||
authList: function(can, msg, action, uid, target) {
|
||||
can.runAction({}, action||"authList", [uid||msg.Append(UID)], function(msg) { if (msg.Length() == 0) { return can.onmotion.hidden(can, target) }
|
||||
can.onimport.myView(can, msg, function(value) {
|
||||
return [
|
||||
{view: html.TITLE, list: [value.name, can.onimport.authView(can, value), can.onimport.textView(can, value, AUTH_TYPE), can.onimport.titleAction(can, value)]},
|
||||
{view: html.STATUS, list: [value.info, value.service_name]},
|
||||
{view: html.STATUS, list: [value.city_name, value.street_name, value.service_name]},
|
||||
{view: html.STATUS, list: [value.info]},
|
||||
]
|
||||
}, function(event, value) {
|
||||
can.Option(AUTH_UID, value.uid), can.Update(event)
|
||||
}, can.ui.list)
|
||||
}, target||can.ui.list)
|
||||
})
|
||||
},
|
||||
memberList: function(can, msg) {
|
||||
can.runAction(can.request({}, {auth_uid: msg.Append(UID)}), "memberList", [], function(msg) {
|
||||
memberList: function(can, msg, target) { can.onimport.myTitle(can, "My Member", "成员列表")
|
||||
can.runAction({}, "memberList", [msg.Append(PLACE_UID)], function(msg) { if (msg.Length() == 0) { return can.onmotion.hidden(can, target) }
|
||||
can.onimport.myView(can, msg, function(value) { value.icons = value.auth_avatar||value.user_avatar||html.AVATAR_JPG
|
||||
return [
|
||||
{view: html.TITLE, list: [value.auth_name||value.user_name, can.onimport.authView(can, value), can.onimport.textView(can, value, AUTH_TYPE),
|
||||
can.onimport.titleAction(can, value),
|
||||
]},
|
||||
{view: html.TITLE, list: [value.auth_name||value.user_name, can.onimport.authView(can, value), can.onimport.textView(can, value, AUTH_TYPE), can.onimport.titleAction(can, value)]},
|
||||
{view: html.STATUS, list: [value.auth_info||value.user_info]},
|
||||
]
|
||||
}, function(event, value) {
|
||||
@ -55,35 +52,17 @@ Volcanos(chat.ONIMPORT, {
|
||||
}, can.ui.list)
|
||||
})
|
||||
},
|
||||
serviceList: function(can, msg) {
|
||||
can.runAction(can.request({}, {}), "serviceList", [msg.Append(USER_UID)||msg.Option(USER_UID)], function(msg) {
|
||||
can.onimport.myView(can, msg, function(value) { value.icons = value.avatar||value.service_icon||html.AVATAR_JPG
|
||||
return [
|
||||
{view: html.TITLE, list: [value.name, can.onimport.authView(can, value), can.onimport.textView(can, value, AUTH_TYPE), can.onimport.titleAction(can, value)]},
|
||||
{view: html.STATUS, list: [value.info, value.service_name]},
|
||||
]
|
||||
}, function(event, value) {
|
||||
can.Option(AUTH_UID, value.uid), can.Update(event)
|
||||
}, can.ui.list)
|
||||
})
|
||||
serviceList: function(can, msg, target) {
|
||||
can.onimport.myTitle(can, "My Auth", "服务列表")
|
||||
can.onimport.authList(can, msg, "serviceList", msg.Append(USER_UID))
|
||||
},
|
||||
fromList: function(can, msg, target) {
|
||||
can.runAction(can.request({}, {}), "fromList", [msg.Append("from_uid")], function(msg) {
|
||||
if (msg.Length() == 0) { return can.onmotion.hidden(can, target) }
|
||||
can.onimport.myView(can, msg, function(value) {
|
||||
return [
|
||||
{view: html.TITLE, list: [value.name, can.onimport.authView(can, value), can.onimport.textView(can, value, AUTH_TYPE), can.onimport.titleAction(can, value)]},
|
||||
{view: html.STATUS, list: [value.info, value.service_name]},
|
||||
]
|
||||
}, function(event, value) {
|
||||
can.Option(AUTH_UID, value.uid), can.Update(event)
|
||||
}, target)
|
||||
})
|
||||
fromList: function(can, msg, target) { can.onimport.myTitle(can, "My From", "认证机构", target)
|
||||
can.onimport.authList(can, msg, "fromList", msg.Append("from_uid"), target)
|
||||
},
|
||||
})
|
||||
Volcanos(chat.ONACTION, {
|
||||
enter: function(event, can) { var msg = can.request(event)
|
||||
can.onimport.myPlugin(can, {space: msg.Option("nodename"), index: msg.Option("index"), args: [msg.Option("place_uid")]})
|
||||
can.onimport.myPlugin(can, {space: msg.Option("nodename"), index: msg.Option(ctx.INDEX), args: [msg.Option(PLACE_UID)]})
|
||||
},
|
||||
updateBackground: function(event, can) { can.user.upload(can.request(event, {field: aaa.BACKGROUND}), can) },
|
||||
updateAvatar: function(event, can) { can.user.upload(can.request(event, {field: aaa.AVATAR}), can) },
|
||||
|
@ -17,7 +17,7 @@ type call struct {
|
||||
func (s call) List(m *ice.Message, arg ...string) {
|
||||
if len(arg) == 1 {
|
||||
m.Cmdy(s.reception, arg).RenameAppend(model.UID, model.RECEPTION_UID).PushAction().Action()
|
||||
m.Echo("请选择服务场所")
|
||||
m.Echo("请先选择服务场所")
|
||||
} else if len(arg) == 2 {
|
||||
s.SelectByStatus(m.Options(mdb.ORDER, model.TAKE_TIME), arg[0], kit.Format(ScheduleTake), model.RECEPTION_UID, arg[1])
|
||||
kit.If(m.Length() == 0, func() { m.Echo(m.Trans("wait take", "等待取号")) }, func() { m.Action(s.Call) })
|
||||
|
@ -32,8 +32,7 @@ func (s Volume) List(m *ice.Message, arg ...string) *ice.Message {
|
||||
} else {
|
||||
return m
|
||||
}
|
||||
s.SelectJoinUser(m)
|
||||
return m.Display("")
|
||||
return s.SelectJoinUser(m).Display("")
|
||||
}
|
||||
|
||||
func init() { ice.TeamCtxCmd(Volume{}) }
|
||||
|
Loading…
x
Reference in New Issue
Block a user