This commit is contained in:
IT 老营长 @云轩领航-创始人 2025-06-07 14:26:44 +08:00
parent 2a8587f61a
commit c9890cdea3
6 changed files with 15 additions and 10 deletions

View File

@ -182,7 +182,10 @@ func (s Table) PushIssueButton(m *ice.Message, value ice.Maps, arg ...ice.Any) {
button = append(button, arg...) button = append(button, arg...)
} }
if isLeaderFinish { if isLeaderFinish {
button = append(button, s.Finish, s.Reback) button = append(button, s.Finish)
}
if isLeader {
button = append(button, s.Reback)
} }
case IssueFinish: case IssueFinish:
if isWorker && value[model.LINK] != "" { if isWorker && value[model.LINK] != "" {

View File

@ -59,11 +59,11 @@ func init() { ice.TeamCtxCmd(Date{}) }
func (s Date) head(m *ice.Message, arg ...string) { func (s Date) head(m *ice.Message, arg ...string) {
head := []string{} head := []string{}
for i := -kit.Int(m.OptionDefault("date_begin", kit.Select("0", "2", !m.IsMobileUA()))); i < kit.Int(m.OptionDefault("date_end", "2")); i++ { for i := -kit.Int(m.OptionDefault("date_begin", kit.Select("0", "2", !m.IsMobileUA()))); i < kit.Int(m.OptionDefault("date_end", "3")); i++ {
head = append(head, strings.Split(m.Time(kit.Format("%dh", i*24)), " ")[0]) head = append(head, strings.Split(m.Time(kit.Format("%dh", i*24)), " ")[0])
} }
list := []string{} list := []string{}
for i := kit.Int(m.OptionDefault("date_start", "40")); i < kit.Int(m.OptionDefault("date_stop", "44")); i++ { for i := kit.Int(m.OptionDefault("date_start", "18")); i < kit.Int(m.OptionDefault("date_stop", "48")); i++ {
if i%2 == 0 { if i%2 == 0 {
list = append(list, kit.Format("%2d:00", i/2)) list = append(list, kit.Format("%2d:00", i/2))
} else { } else {

View File

@ -10,6 +10,7 @@ import (
type Issue struct { type Issue struct {
Table Table
order string `data:"2"` order string `data:"2"`
portal string `data:"true"`
fields string `data:"updated_at,title,issue_content,issue_type,level,status,price,score,link,design_count,task_count,begin_time,end_time,process_time,finish_time,plan_uid,story_uid,user_uid"` fields string `data:"updated_at,title,issue_content,issue_type,level,status,price,score,link,design_count,task_count,begin_time,end_time,process_time,finish_time,plan_uid,story_uid,user_uid"`
create string `name:"create plan_uid*:select title* issue_content* price=1000 begin_time:select@date end_time:select@date" role:"worker"` create string `name:"create plan_uid*:select title* issue_content* price=1000 begin_time:select@date end_time:select@date" role:"worker"`
modify string `name:"modify title* issue_content* price* link" role:"worker"` modify string `name:"modify title* issue_content* price* link" role:"worker"`

View File

@ -15,11 +15,11 @@ type Portal struct {
func (s Plan) AfterMigrate(m *ice.Message, arg ...string) { func (s Plan) AfterMigrate(m *ice.Message, arg ...string) {
s.Table.AfterMigrate(m, arg...) s.Table.AfterMigrate(m, arg...)
s.SettingCreate(m, "leader_approved", "radio", "help", "允许管理人员审批项目", "role", "creator") s.SettingCreate(m, "leader_approved", "", "允许管理人员审批项目", "creator", "100")
s.SettingCreate(m, "leader_finish", "radio", "help", "允许管理人员验收项目", "role", "creator") s.SettingCreate(m, "leader_finish", "", "允许管理人员验收项目", "creator", "101")
s.SettingCreate(m, "leader_payfor", "radio", "help", "允许管理人员支付项目", "role", "creator") s.SettingCreate(m, "leader_payfor", "", "允许管理人员支付项目", "creator", "102")
s.SettingCreate(m, "leader_program", "radio", "help", "允许管理人员本地开发", "role", "tech") s.SettingCreate(m, "leader_program", "", "允许管理人员本地开发", "tech", "103")
s.SettingCreate(m, "creator_program", "radio", "help", "允许创建人本地开发", "role", "tech") s.SettingCreate(m, "creator_program", "", "允许创建人本地开发", "tech", "104")
} }
func (s Portal) AfterPlaceAuth(m *ice.Message, arg ...string) { func (s Portal) AfterPlaceAuth(m *ice.Message, arg ...string) {
defer s.DashboardCreate(m, "")() defer s.DashboardCreate(m, "")()

View File

@ -19,7 +19,6 @@
"finish": "notice", "finish": "notice",
"issueCreate": "notice", "issueCreate": "notice",
"designCreate": "notice", "designCreate": "notice",
"taskCreate": "notice",
"caseCreate": "notice" "caseCreate": "notice"
}, },
"icons": { "icons": {

View File

@ -41,12 +41,14 @@ func (s take) List(m *ice.Message, arg ...string) {
} }
} }
m.Cmd(Plan{}, s.Select, model.STORY_UID, value[model.UID]).Table(func(val ice.Maps) { m.Cmd(Plan{}, s.Select, model.STORY_UID, value[model.UID]).Table(func(val ice.Maps) {
task_count := 0
switch PlanStatus(kit.Int(val[model.PLAN_STATUS])) { switch PlanStatus(kit.Int(val[model.PLAN_STATUS])) {
case PlanProcess: case PlanProcess:
if kit.Int(val[model.ISSUE_COUNT]) == 0 { if kit.Int(val[model.ISSUE_COUNT]) == 0 {
push(val, "PM可接单") push(val, "PM可接单")
} else { } else {
m.Cmd(Issue{}, s.Select, model.STORY_UID, value[model.UID], model.PLAN_UID, val[model.UID], model.DESIGN_COUNT, "0").Table(func(val ice.Maps) { m.Cmd(Issue{}, s.Select, model.STORY_UID, value[model.UID], model.PLAN_UID, val[model.UID], model.DESIGN_COUNT, "0").Table(func(val ice.Maps) {
task_count += kit.Int(val[model.TASK_COUNT])
switch IssueStatus(kit.Int(val[model.STATUS])) { switch IssueStatus(kit.Int(val[model.STATUS])) {
case IssueProcess, IssueFinish: case IssueProcess, IssueFinish:
push(val, "UI可接单") push(val, "UI可接单")
@ -54,7 +56,7 @@ func (s take) List(m *ice.Message, arg ...string) {
}) })
} }
case PlanFinish: case PlanFinish:
if m.IsTech() { if task_count == 0 && m.IsTech() {
push(val, "RD可接单") push(val, "RD可接单")
} }
} }