update list
This commit is contained in:
parent
5396514a93
commit
eefc249ba3
@ -1,24 +0,0 @@
|
|||||||
package model
|
|
||||||
|
|
||||||
type FriendModel struct {
|
|
||||||
Uid string
|
|
||||||
Name string
|
|
||||||
}
|
|
||||||
|
|
||||||
type FriendModelList struct {
|
|
||||||
DataList []*FriendModel
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewFriendModelList() *FriendModelList {
|
|
||||||
return &FriendModelList{
|
|
||||||
DataList: make([]*FriendModel, 0),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *FriendModelList) AsInterfaceArray() []interface{} {
|
|
||||||
rs := make([]interface{}, len(s.DataList), len(s.DataList))
|
|
||||||
for i := range s.DataList {
|
|
||||||
rs[i] = s.DataList[i]
|
|
||||||
}
|
|
||||||
return rs
|
|
||||||
}
|
|
24
cmd/v2/model/item.go
Normal file
24
cmd/v2/model/item.go
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
package model
|
||||||
|
|
||||||
|
type ItemModel struct {
|
||||||
|
Id string
|
||||||
|
Label string
|
||||||
|
}
|
||||||
|
|
||||||
|
type ItemModelList struct {
|
||||||
|
DataList []*ItemModel
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewItemModelList() *ItemModelList {
|
||||||
|
return &ItemModelList{
|
||||||
|
DataList: make([]*ItemModel, 0),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *ItemModelList) AsInterfaceArray() []interface{} {
|
||||||
|
rs := make([]interface{}, len(s.DataList), len(s.DataList))
|
||||||
|
for i := range s.DataList {
|
||||||
|
rs[i] = s.DataList[i]
|
||||||
|
}
|
||||||
|
return rs
|
||||||
|
}
|
99
cmd/v2/ui/formview/baselistview.go
Normal file
99
cmd/v2/ui/formview/baselistview.go
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
package formview
|
||||||
|
|
||||||
|
import (
|
||||||
|
"go_dreamfactory/cmd/v2/model"
|
||||||
|
"go_dreamfactory/cmd/v2/service"
|
||||||
|
"go_dreamfactory/comm"
|
||||||
|
"go_dreamfactory/modules/friend"
|
||||||
|
"go_dreamfactory/pb"
|
||||||
|
"go_dreamfactory/utils"
|
||||||
|
|
||||||
|
"fyne.io/fyne/v2"
|
||||||
|
"fyne.io/fyne/v2/container"
|
||||||
|
"fyne.io/fyne/v2/data/binding"
|
||||||
|
"fyne.io/fyne/v2/widget"
|
||||||
|
"github.com/sirupsen/logrus"
|
||||||
|
)
|
||||||
|
|
||||||
|
type ListBaseView struct {
|
||||||
|
BaseformView
|
||||||
|
dataListWidget *widget.List
|
||||||
|
dataBinding binding.UntypedList
|
||||||
|
selItemIds []string //选择的ID
|
||||||
|
itemListData *model.ItemModelList
|
||||||
|
}
|
||||||
|
|
||||||
|
// init data
|
||||||
|
func (this *ListBaseView) initItemList() {
|
||||||
|
this.dataBinding = binding.NewUntypedList()
|
||||||
|
this.itemListData = model.NewItemModelList()
|
||||||
|
}
|
||||||
|
|
||||||
|
// create list view with check widget
|
||||||
|
func (this *ListBaseView) createItemListWithCheck() *widget.List {
|
||||||
|
this.dataListWidget = widget.NewListWithData(this.dataBinding,
|
||||||
|
func() fyne.CanvasObject {
|
||||||
|
return container.NewHBox(
|
||||||
|
widget.NewCheck("", func(b bool) {}),
|
||||||
|
widget.NewLabelWithStyle("", fyne.TextAlignCenter, fyne.TextStyle{}),
|
||||||
|
)
|
||||||
|
},
|
||||||
|
func(data binding.DataItem, item fyne.CanvasObject) {
|
||||||
|
o, _ := data.(binding.Untyped).Get()
|
||||||
|
pd := o.(*model.ItemModel)
|
||||||
|
item.(*fyne.Container).Objects[0].(*widget.Check).OnChanged = func(b bool) {
|
||||||
|
if b {
|
||||||
|
this.selItemIds = append(this.selItemIds, pd.Id)
|
||||||
|
} else {
|
||||||
|
utils.DeleteString(this.selItemIds, pd.Id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
item.(*fyne.Container).Objects[1].(*widget.Label).SetText(pd.Label)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
return this.dataListWidget
|
||||||
|
}
|
||||||
|
|
||||||
|
// create list , single select
|
||||||
|
func (this *ListBaseView) createItemList() *widget.List {
|
||||||
|
this.dataListWidget = widget.NewListWithData(this.dataBinding,
|
||||||
|
func() fyne.CanvasObject {
|
||||||
|
return container.NewHBox(
|
||||||
|
widget.NewLabelWithStyle("", fyne.TextAlignCenter, fyne.TextStyle{}),
|
||||||
|
)
|
||||||
|
},
|
||||||
|
func(data binding.DataItem, item fyne.CanvasObject) {
|
||||||
|
o, _ := data.(binding.Untyped).Get()
|
||||||
|
pd := o.(*model.ItemModel)
|
||||||
|
item.(*fyne.Container).Objects[0].(*widget.Label).SetText(pd.Label)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
// single select
|
||||||
|
this.dataListWidget.OnSelected = func(id widget.ListItemID) {
|
||||||
|
sel := this.itemListData.DataList[id]
|
||||||
|
this.selItemIds = []string{sel.Id}
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.dataListWidget
|
||||||
|
}
|
||||||
|
|
||||||
|
func (this *ListBaseView) listBtnFun() func() {
|
||||||
|
return func() {
|
||||||
|
if err := service.GetPttService().SendToClient(
|
||||||
|
string(comm.ModuleFriend),
|
||||||
|
friend.FriendSubTypeApplyList,
|
||||||
|
&pb.FriendApplyListReq{}); err != nil {
|
||||||
|
logrus.Error(err)
|
||||||
|
}
|
||||||
|
this.itemListData = model.NewItemModelList()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// set data
|
||||||
|
func (this *ListBaseView) reloadListData() {
|
||||||
|
if this.itemListData != nil {
|
||||||
|
d := this.itemListData.AsInterfaceArray()
|
||||||
|
this.dataBinding.Set(d)
|
||||||
|
}
|
||||||
|
}
|
@ -16,12 +16,12 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type FriendAgreeView struct {
|
type FriendAgreeView struct {
|
||||||
FriendListBaseView
|
ListBaseView
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *FriendAgreeView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *FriendAgreeView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
//init required
|
//init required
|
||||||
this.initFriendList()
|
this.initItemList()
|
||||||
|
|
||||||
//同意提交
|
//同意提交
|
||||||
agreeBtn := widget.NewButtonWithIcon("同意", theme.ConfirmIcon(), func() {
|
agreeBtn := widget.NewButtonWithIcon("同意", theme.ConfirmIcon(), func() {
|
||||||
@ -29,13 +29,13 @@ func (this *FriendAgreeView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
t.MainType,
|
t.MainType,
|
||||||
t.SubType,
|
t.SubType,
|
||||||
&pb.FriendAgreeReq{
|
&pb.FriendAgreeReq{
|
||||||
FriendIds: this.selFriendIds,
|
FriendIds: this.selItemIds,
|
||||||
},
|
},
|
||||||
); err != nil {
|
); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.applyListBtnFun()
|
this.listBtnFun()
|
||||||
})
|
})
|
||||||
|
|
||||||
//拒绝
|
//拒绝
|
||||||
@ -44,19 +44,19 @@ func (this *FriendAgreeView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
string(comm.ModuleFriend),
|
string(comm.ModuleFriend),
|
||||||
friend.FriendSubTypeRefuse,
|
friend.FriendSubTypeRefuse,
|
||||||
&pb.FriendRefuseReq{
|
&pb.FriendRefuseReq{
|
||||||
FriendIds: this.selFriendIds,
|
FriendIds: this.selItemIds,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.applyListBtnFun()
|
this.listBtnFun()
|
||||||
})
|
})
|
||||||
|
|
||||||
this.createList()
|
this.createItemListWithCheck()
|
||||||
|
|
||||||
applyListBtn := widget.NewButton("申请列表", this.applyListBtnFun())
|
applyListBtn := widget.NewButton("申请列表", this.listBtnFun())
|
||||||
|
|
||||||
split := container.NewHSplit(this.dataList, container.NewVBox(applyListBtn, agreeBtn, refuseBtn))
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(applyListBtn, agreeBtn, refuseBtn))
|
||||||
split.Offset = 1
|
split.Offset = 1
|
||||||
|
|
||||||
this.dataListener()
|
this.dataListener()
|
||||||
@ -79,13 +79,13 @@ func (this *FriendAgreeView) dataListener() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, v := range rsp.List {
|
for _, v := range rsp.List {
|
||||||
fm := &model.FriendModel{
|
fm := &model.ItemModel{
|
||||||
Uid: v.UserId,
|
Id: v.UserId,
|
||||||
Name: v.NickName,
|
Label: v.NickName,
|
||||||
}
|
}
|
||||||
this.friendData.DataList = append(this.friendData.DataList, fm)
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
}
|
}
|
||||||
this.reloadFriendData()
|
this.reloadListData()
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -1,75 +0,0 @@
|
|||||||
package formview
|
|
||||||
|
|
||||||
import (
|
|
||||||
"go_dreamfactory/cmd/v2/model"
|
|
||||||
"go_dreamfactory/cmd/v2/service"
|
|
||||||
"go_dreamfactory/comm"
|
|
||||||
"go_dreamfactory/modules/friend"
|
|
||||||
"go_dreamfactory/pb"
|
|
||||||
"go_dreamfactory/utils"
|
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
|
||||||
"fyne.io/fyne/v2/container"
|
|
||||||
"fyne.io/fyne/v2/data/binding"
|
|
||||||
"fyne.io/fyne/v2/widget"
|
|
||||||
"github.com/sirupsen/logrus"
|
|
||||||
)
|
|
||||||
|
|
||||||
type FriendListBaseView struct {
|
|
||||||
BaseformView
|
|
||||||
dataList *widget.List
|
|
||||||
friendBinding binding.UntypedList
|
|
||||||
selFriendIds []string //选择的UID
|
|
||||||
friendData *model.FriendModelList
|
|
||||||
}
|
|
||||||
|
|
||||||
// init data
|
|
||||||
func (this *FriendListBaseView) initFriendList() {
|
|
||||||
this.friendBinding = binding.NewUntypedList()
|
|
||||||
this.friendData = model.NewFriendModelList()
|
|
||||||
}
|
|
||||||
|
|
||||||
// create list view
|
|
||||||
func (this *FriendListBaseView) createList() *widget.List {
|
|
||||||
this.dataList = widget.NewListWithData(this.friendBinding,
|
|
||||||
func() fyne.CanvasObject {
|
|
||||||
return container.NewHBox(
|
|
||||||
widget.NewCheck("", func(b bool) {}),
|
|
||||||
widget.NewLabelWithStyle("", fyne.TextAlignCenter, fyne.TextStyle{}),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
func(data binding.DataItem, item fyne.CanvasObject) {
|
|
||||||
o, _ := data.(binding.Untyped).Get()
|
|
||||||
pd := o.(*model.FriendModel)
|
|
||||||
item.(*fyne.Container).Objects[0].(*widget.Check).OnChanged = func(b bool) {
|
|
||||||
if b {
|
|
||||||
this.selFriendIds = append(this.selFriendIds, pd.Uid)
|
|
||||||
} else {
|
|
||||||
utils.DeleteString(this.selFriendIds, pd.Uid)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
item.(*fyne.Container).Objects[1].(*widget.Label).SetText(pd.Name)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
return this.dataList
|
|
||||||
}
|
|
||||||
|
|
||||||
func (this *FriendListBaseView) applyListBtnFun() func() {
|
|
||||||
return func() {
|
|
||||||
if err := service.GetPttService().SendToClient(
|
|
||||||
string(comm.ModuleFriend),
|
|
||||||
friend.FriendSubTypeApplyList,
|
|
||||||
&pb.FriendApplyListReq{}); err != nil {
|
|
||||||
logrus.Error(err)
|
|
||||||
}
|
|
||||||
this.friendData = model.NewFriendModelList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// set data
|
|
||||||
func (this *FriendListBaseView) reloadFriendData() {
|
|
||||||
if this.friendData != nil {
|
|
||||||
d := this.friendData.AsInterfaceArray()
|
|
||||||
this.friendBinding.Set(d)
|
|
||||||
}
|
|
||||||
}
|
|
@ -15,14 +15,14 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type FriendBlacklistView struct {
|
type FriendBlacklistView struct {
|
||||||
FriendListBaseView
|
ListBaseView
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *FriendBlacklistView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *FriendBlacklistView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
// init required
|
// init required
|
||||||
this.initFriendList()
|
this.initItemList()
|
||||||
// create friend list view
|
// create friend list view
|
||||||
this.createList()
|
this.createItemListWithCheck()
|
||||||
|
|
||||||
friendList := func() {
|
friendList := func() {
|
||||||
if err := service.GetPttService().SendToClient(
|
if err := service.GetPttService().SendToClient(
|
||||||
@ -31,12 +31,12 @@ func (this *FriendBlacklistView) CreateView(t *model.TestCase) fyne.CanvasObject
|
|||||||
&pb.FriendBlackListReq{}); err != nil {
|
&pb.FriendBlackListReq{}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
this.friendData = model.NewFriendModelList()
|
this.itemListData = model.NewItemModelList()
|
||||||
}
|
}
|
||||||
friendListBtn := widget.NewButton("黑名单列表", friendList)
|
friendListBtn := widget.NewButton("黑名单列表", friendList)
|
||||||
|
|
||||||
// layout
|
// layout
|
||||||
split := container.NewHSplit(this.dataList, container.NewVBox(friendListBtn))
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(friendListBtn))
|
||||||
split.Offset = 1
|
split.Offset = 1
|
||||||
|
|
||||||
//data listener for
|
//data listener for
|
||||||
@ -60,13 +60,13 @@ func (this *FriendBlacklistView) dataListener() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, v := range rsp.Friends {
|
for _, v := range rsp.Friends {
|
||||||
fm := &model.FriendModel{
|
fm := &model.ItemModel{
|
||||||
Uid: v.UserId,
|
Id: v.UserId,
|
||||||
Name: v.NickName,
|
Label: v.NickName,
|
||||||
}
|
}
|
||||||
this.friendData.DataList = append(this.friendData.DataList, fm)
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
}
|
}
|
||||||
this.reloadFriendData()
|
this.reloadListData()
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -17,16 +17,16 @@ import (
|
|||||||
|
|
||||||
//好友列表
|
//好友列表
|
||||||
type FriendListView struct {
|
type FriendListView struct {
|
||||||
FriendListBaseView //继承支持好友列表的基类
|
ListBaseView //继承支持好友列表的基类
|
||||||
friendList func()
|
friendList func()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *FriendListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *FriendListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
// init required
|
// init required
|
||||||
this.initFriendList()
|
this.initItemList()
|
||||||
|
|
||||||
// create friend list view
|
// create friend list view
|
||||||
this.createList()
|
this.createItemListWithCheck()
|
||||||
|
|
||||||
// new friendlist btn
|
// new friendlist btn
|
||||||
this.friendList = func() {
|
this.friendList = func() {
|
||||||
@ -36,7 +36,7 @@ func (this *FriendListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
&pb.FriendListReq{}); err != nil {
|
&pb.FriendListReq{}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
this.friendData = model.NewFriendModelList()
|
this.itemListData = model.NewItemModelList()
|
||||||
}
|
}
|
||||||
friendListBtn := widget.NewButton("好友列表", this.friendList)
|
friendListBtn := widget.NewButton("好友列表", this.friendList)
|
||||||
|
|
||||||
@ -47,17 +47,17 @@ func (this *FriendListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
t.MainType,
|
t.MainType,
|
||||||
friend.FriendSubTypeZan,
|
friend.FriendSubTypeZan,
|
||||||
&pb.FriendZanReq{
|
&pb.FriendZanReq{
|
||||||
FriendId: this.selFriendIds[0],
|
FriendId: this.selItemIds[0],
|
||||||
},
|
},
|
||||||
); err != nil {
|
); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.applyListBtnFun()
|
this.listBtnFun()
|
||||||
})
|
})
|
||||||
|
|
||||||
// layout
|
// layout
|
||||||
split := container.NewHSplit(this.dataList, container.NewVBox(friendListBtn, zanBtn))
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(friendListBtn, zanBtn))
|
||||||
split.Offset = 1
|
split.Offset = 1
|
||||||
|
|
||||||
//data listener for
|
//data listener for
|
||||||
@ -83,15 +83,15 @@ func (this *FriendListView) dataListener() {
|
|||||||
logrus.Error("unmarshal err")
|
logrus.Error("unmarshal err")
|
||||||
}
|
}
|
||||||
|
|
||||||
this.friendData = model.NewFriendModelList()
|
this.itemListData = model.NewItemModelList()
|
||||||
for _, v := range rsp.List {
|
for _, v := range rsp.List {
|
||||||
fm := &model.FriendModel{
|
fm := &model.ItemModel{
|
||||||
Uid: v.UserId,
|
Id: v.UserId,
|
||||||
Name: v.NickName,
|
Label: v.NickName,
|
||||||
}
|
}
|
||||||
this.friendData.DataList = append(this.friendData.DataList, fm)
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
}
|
}
|
||||||
this.reloadFriendData()
|
this.reloadListData()
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -16,12 +16,12 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type FriendZanView struct {
|
type FriendZanView struct {
|
||||||
FriendListBaseView
|
ListBaseView
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *FriendZanView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *FriendZanView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
//init required
|
//init required
|
||||||
this.initFriendList()
|
this.initItemList()
|
||||||
|
|
||||||
receiveBtn := widget.NewButtonWithIcon("获赞", theme.ConfirmIcon(), func() {
|
receiveBtn := widget.NewButtonWithIcon("获赞", theme.ConfirmIcon(), func() {
|
||||||
|
|
||||||
@ -29,13 +29,13 @@ func (this *FriendZanView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
t.MainType,
|
t.MainType,
|
||||||
"zanreceive",
|
"zanreceive",
|
||||||
&pb.FriendZanreceiveReq{
|
&pb.FriendZanreceiveReq{
|
||||||
FriendId: this.selFriendIds[0],
|
FriendId: this.selItemIds[0],
|
||||||
},
|
},
|
||||||
); err != nil {
|
); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.applyListBtnFun()
|
this.listBtnFun()
|
||||||
})
|
})
|
||||||
|
|
||||||
// new zanlist btn
|
// new zanlist btn
|
||||||
@ -46,15 +46,15 @@ func (this *FriendZanView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|||||||
&pb.FriendZanlistReq{}); err != nil {
|
&pb.FriendZanlistReq{}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
this.friendData = model.NewFriendModelList()
|
this.itemListData = model.NewItemModelList()
|
||||||
}
|
}
|
||||||
zanListBtn := widget.NewButton("点赞列表", zanList)
|
zanListBtn := widget.NewButton("点赞列表", zanList)
|
||||||
|
|
||||||
// create friend list view
|
// create friend list view
|
||||||
this.createList()
|
this.createItemListWithCheck()
|
||||||
|
|
||||||
// layout
|
// layout
|
||||||
split := container.NewHSplit(this.dataList, container.NewVBox(zanListBtn, receiveBtn))
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(zanListBtn, receiveBtn))
|
||||||
split.Offset = 1
|
split.Offset = 1
|
||||||
|
|
||||||
this.dataListener()
|
this.dataListener()
|
||||||
@ -75,15 +75,15 @@ func (this *FriendZanView) dataListener() {
|
|||||||
logrus.Error("unmarshal err")
|
logrus.Error("unmarshal err")
|
||||||
}
|
}
|
||||||
|
|
||||||
this.friendData = model.NewFriendModelList()
|
this.itemListData = model.NewItemModelList()
|
||||||
for _, v := range rsp.List {
|
for _, v := range rsp.List {
|
||||||
fm := &model.FriendModel{
|
fm := &model.ItemModel{
|
||||||
Uid: v.UserId,
|
Id: v.UserId,
|
||||||
Name: v.NickName,
|
Label: v.NickName,
|
||||||
}
|
}
|
||||||
this.friendData.DataList = append(this.friendData.DataList, fm)
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
}
|
}
|
||||||
this.reloadFriendData()
|
this.reloadListData()
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -1,24 +1,92 @@
|
|||||||
package formview
|
package formview
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"go_dreamfactory/cmd/v2/model"
|
"go_dreamfactory/cmd/v2/model"
|
||||||
"go_dreamfactory/cmd/v2/service"
|
"go_dreamfactory/cmd/v2/service"
|
||||||
|
"go_dreamfactory/cmd/v2/service/observer"
|
||||||
|
"go_dreamfactory/comm"
|
||||||
|
"go_dreamfactory/modules/hero"
|
||||||
"go_dreamfactory/pb"
|
"go_dreamfactory/pb"
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
"fyne.io/fyne/v2"
|
||||||
|
"fyne.io/fyne/v2/container"
|
||||||
|
"fyne.io/fyne/v2/theme"
|
||||||
|
"fyne.io/fyne/v2/widget"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
|
"github.com/spf13/cast"
|
||||||
)
|
)
|
||||||
|
|
||||||
type HeroListView struct {
|
type HeroListView struct {
|
||||||
BaseformView
|
ListBaseView
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *HeroListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *HeroListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
this.form.OnSubmit = func() {
|
// init required
|
||||||
|
this.initItemList()
|
||||||
|
|
||||||
|
// create friend list view
|
||||||
|
this.createItemList()
|
||||||
|
|
||||||
|
// hero list button
|
||||||
|
heroListBtn := widget.NewButtonWithIcon("英雄列表", theme.ConfirmIcon(), func() {
|
||||||
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.HeroListReq{}); err != nil {
|
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.HeroListReq{}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
|
})
|
||||||
|
|
||||||
}
|
//升星
|
||||||
return this.form
|
starBtn := widget.NewButtonWithIcon("升星", theme.ConfirmIcon(), func() {
|
||||||
|
|
||||||
|
// if err := service.GetPttService().SendToClient(
|
||||||
|
// t.MainType,
|
||||||
|
// t.SubType,
|
||||||
|
// &pb.HeroStrengthenUpStarReq{
|
||||||
|
// HeroObjID: heroObjID.Text,
|
||||||
|
// HeroRace: heroRace,
|
||||||
|
// Hero: hero,
|
||||||
|
// }); err != nil {
|
||||||
|
// logrus.Error(err)
|
||||||
|
// }
|
||||||
|
})
|
||||||
|
|
||||||
|
//升级
|
||||||
|
|
||||||
|
// layout
|
||||||
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(heroListBtn, starBtn))
|
||||||
|
split.Offset = 1
|
||||||
|
|
||||||
|
//data listener for
|
||||||
|
this.dataListener()
|
||||||
|
|
||||||
|
return split
|
||||||
|
}
|
||||||
|
|
||||||
|
func (this *HeroListView) dataListener() {
|
||||||
|
this.obs.AddListener(observer.EVENT_REQ_RSP, observer.Listener{
|
||||||
|
OnNotify: func(d interface{}, args ...interface{}) {
|
||||||
|
data := d.(*pb.UserMessage)
|
||||||
|
if !(data.MainType == string(comm.ModuleHero) &&
|
||||||
|
data.SubType == hero.HeroSubTypeList) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
rsp := &pb.HeroListResp{}
|
||||||
|
if !comm.ProtoUnmarshal(data, rsp) {
|
||||||
|
logrus.Error("unmarshal err")
|
||||||
|
}
|
||||||
|
|
||||||
|
this.itemListData = model.NewItemModelList()
|
||||||
|
for _, v := range rsp.List {
|
||||||
|
if v.CardType != 3 { //不显示类型是3的
|
||||||
|
fm := &model.ItemModel{
|
||||||
|
Id: cast.ToString(v.Id),
|
||||||
|
Label: fmt.Sprintf("%s Lv:%d S:%d T:%d", cast.ToString(v.HeroID), v.Lv, v.Star, v.CardType),
|
||||||
|
}
|
||||||
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.reloadListData()
|
||||||
|
},
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
@ -1,32 +1,103 @@
|
|||||||
package formview
|
package formview
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
|
"fmt"
|
||||||
"go_dreamfactory/cmd/v2/lib/common"
|
"go_dreamfactory/cmd/v2/lib/common"
|
||||||
"go_dreamfactory/cmd/v2/model"
|
"go_dreamfactory/cmd/v2/model"
|
||||||
"go_dreamfactory/cmd/v2/service"
|
"go_dreamfactory/cmd/v2/service"
|
||||||
|
"go_dreamfactory/cmd/v2/service/observer"
|
||||||
|
"go_dreamfactory/comm"
|
||||||
|
"go_dreamfactory/modules/task"
|
||||||
"go_dreamfactory/pb"
|
"go_dreamfactory/pb"
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
"fyne.io/fyne/v2"
|
||||||
|
"fyne.io/fyne/v2/container"
|
||||||
|
"fyne.io/fyne/v2/dialog"
|
||||||
|
"fyne.io/fyne/v2/theme"
|
||||||
"fyne.io/fyne/v2/widget"
|
"fyne.io/fyne/v2/widget"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/spf13/cast"
|
"github.com/spf13/cast"
|
||||||
)
|
)
|
||||||
|
|
||||||
type TaskActiveListView struct {
|
type TaskActiveListView struct {
|
||||||
BaseformView
|
ListBaseView
|
||||||
|
activeVal int32
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *TaskActiveListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *TaskActiveListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
|
// init required
|
||||||
|
this.initItemList()
|
||||||
|
|
||||||
|
// create friend list view
|
||||||
|
this.createItemList()
|
||||||
|
|
||||||
|
// select widget
|
||||||
tagSelect := getTaskTagSelect()
|
tagSelect := getTaskTagSelect()
|
||||||
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASKTAG, tagSelect))
|
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASKTAG, tagSelect))
|
||||||
|
|
||||||
this.form.OnSubmit = func() {
|
// task active list button
|
||||||
|
taskListBtn := widget.NewButtonWithIcon("活跃度", theme.ConfirmIcon(), func() {
|
||||||
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.TaskActiveListReq{
|
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.TaskActiveListReq{
|
||||||
|
|
||||||
TaskTag: cast.ToInt32(tagSelect.Selected),
|
TaskTag: cast.ToInt32(tagSelect.Selected),
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
return this.form
|
|
||||||
|
//label
|
||||||
|
activeLabel := widget.NewLabel(fmt.Sprintf("当前活跃度:%d", this.activeVal))
|
||||||
|
|
||||||
|
//receive button
|
||||||
|
receiveBtn := widget.NewButtonWithIcon("领取", theme.ConfirmIcon(), func() {
|
||||||
|
if len(this.selItemIds) != 1 {
|
||||||
|
dialog.ShowError(errors.New("请选择一项"), this.w)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if err := service.GetPttService().SendToClient(
|
||||||
|
t.MainType, "activereceive",
|
||||||
|
&pb.TaskReceiveReq{Id: this.selItemIds[0], TaskTag: cast.ToInt32(tagSelect.Selected)}); err != nil {
|
||||||
|
logrus.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// layout
|
||||||
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(activeLabel, this.form, taskListBtn, receiveBtn))
|
||||||
|
split.Offset = 1
|
||||||
|
|
||||||
|
//data listener for
|
||||||
|
this.dataListener()
|
||||||
|
|
||||||
|
return split
|
||||||
|
}
|
||||||
|
|
||||||
|
func (this *TaskActiveListView) dataListener() {
|
||||||
|
this.obs.AddListener(observer.EVENT_REQ_RSP, observer.Listener{
|
||||||
|
OnNotify: func(d interface{}, args ...interface{}) {
|
||||||
|
data := d.(*pb.UserMessage)
|
||||||
|
if !(data.MainType == string(comm.ModuleTask) &&
|
||||||
|
data.SubType == task.TaskSubTypeActiveList) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
rsp := &pb.TaskActiveListResp{}
|
||||||
|
if !comm.ProtoUnmarshal(data, rsp) {
|
||||||
|
logrus.Error("unmarshal err")
|
||||||
|
}
|
||||||
|
|
||||||
|
this.activeVal = rsp.Active
|
||||||
|
|
||||||
|
this.itemListData = model.NewItemModelList()
|
||||||
|
for _, v := range rsp.List {
|
||||||
|
fm := &model.ItemModel{
|
||||||
|
Id: cast.ToString(v.Id),
|
||||||
|
Label: fmt.Sprintf("%s R:%d", cast.ToString(v.RId), v.Received),
|
||||||
|
}
|
||||||
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
|
}
|
||||||
|
this.reloadListData()
|
||||||
|
|
||||||
|
},
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
@ -1,31 +1,96 @@
|
|||||||
package formview
|
package formview
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
|
"fmt"
|
||||||
"go_dreamfactory/cmd/v2/lib/common"
|
"go_dreamfactory/cmd/v2/lib/common"
|
||||||
"go_dreamfactory/cmd/v2/model"
|
"go_dreamfactory/cmd/v2/model"
|
||||||
"go_dreamfactory/cmd/v2/service"
|
"go_dreamfactory/cmd/v2/service"
|
||||||
|
"go_dreamfactory/cmd/v2/service/observer"
|
||||||
|
"go_dreamfactory/comm"
|
||||||
|
"go_dreamfactory/modules/task"
|
||||||
"go_dreamfactory/pb"
|
"go_dreamfactory/pb"
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
"fyne.io/fyne/v2"
|
||||||
|
"fyne.io/fyne/v2/container"
|
||||||
|
"fyne.io/fyne/v2/dialog"
|
||||||
|
"fyne.io/fyne/v2/theme"
|
||||||
"fyne.io/fyne/v2/widget"
|
"fyne.io/fyne/v2/widget"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/spf13/cast"
|
"github.com/spf13/cast"
|
||||||
)
|
)
|
||||||
|
|
||||||
type TaskListView struct {
|
type TaskListView struct {
|
||||||
BaseformView
|
ListBaseView
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *TaskListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
func (this *TaskListView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
||||||
|
// init required
|
||||||
|
this.initItemList()
|
||||||
|
|
||||||
|
// create friend list view
|
||||||
|
this.createItemList()
|
||||||
|
|
||||||
|
// select widget
|
||||||
tagSelect := getTaskTagSelect()
|
tagSelect := getTaskTagSelect()
|
||||||
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASKTAG, tagSelect))
|
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASKTAG, tagSelect))
|
||||||
|
|
||||||
this.form.OnSubmit = func() {
|
// task list button
|
||||||
|
taskListBtn := widget.NewButtonWithIcon("任务列表", theme.ConfirmIcon(), func() {
|
||||||
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.TaskListReq{
|
if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.TaskListReq{
|
||||||
TaskTag: cast.ToInt32(tagSelect.Selected),
|
TaskTag: cast.ToInt32(tagSelect.Selected),
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
logrus.Error(err)
|
logrus.Error(err)
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
return this.form
|
|
||||||
|
// task receive button
|
||||||
|
receiveBtn := widget.NewButtonWithIcon("任务领取", theme.ConfirmIcon(), func() {
|
||||||
|
if len(this.selItemIds) != 1 {
|
||||||
|
dialog.ShowError(errors.New("请选择一项"), this.w)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if err := service.GetPttService().SendToClient(
|
||||||
|
t.MainType, "receive",
|
||||||
|
&pb.TaskReceiveReq{Id: this.selItemIds[0], TaskTag: cast.ToInt32(tagSelect.Selected)}); err != nil {
|
||||||
|
logrus.Error(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// layout
|
||||||
|
split := container.NewHSplit(this.dataListWidget, container.NewVBox(this.form, taskListBtn, receiveBtn))
|
||||||
|
split.Offset = 1
|
||||||
|
|
||||||
|
//data listener for
|
||||||
|
this.dataListener()
|
||||||
|
|
||||||
|
return split
|
||||||
|
}
|
||||||
|
|
||||||
|
func (this *TaskListView) dataListener() {
|
||||||
|
this.obs.AddListener(observer.EVENT_REQ_RSP, observer.Listener{
|
||||||
|
OnNotify: func(d interface{}, args ...interface{}) {
|
||||||
|
data := d.(*pb.UserMessage)
|
||||||
|
if !(data.MainType == string(comm.ModuleTask) &&
|
||||||
|
data.SubType == task.TaskSubTypeList) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
rsp := &pb.TaskListResp{}
|
||||||
|
if !comm.ProtoUnmarshal(data, rsp) {
|
||||||
|
logrus.Error("unmarshal err")
|
||||||
|
}
|
||||||
|
|
||||||
|
this.itemListData = model.NewItemModelList()
|
||||||
|
for _, v := range rsp.List {
|
||||||
|
fm := &model.ItemModel{
|
||||||
|
Id: cast.ToString(v.Id),
|
||||||
|
Label: fmt.Sprintf("%s S:%d R:%d", cast.ToString(v.TaskId), v.Status, v.Received),
|
||||||
|
}
|
||||||
|
this.itemListData.DataList = append(this.itemListData.DataList, fm)
|
||||||
|
}
|
||||||
|
this.reloadListData()
|
||||||
|
},
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
@ -1,40 +0,0 @@
|
|||||||
package formview
|
|
||||||
|
|
||||||
import (
|
|
||||||
"go_dreamfactory/cmd/v2/lib/common"
|
|
||||||
"go_dreamfactory/cmd/v2/model"
|
|
||||||
"go_dreamfactory/cmd/v2/service"
|
|
||||||
"go_dreamfactory/comm"
|
|
||||||
"go_dreamfactory/modules/task"
|
|
||||||
"go_dreamfactory/pb"
|
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
|
||||||
"fyne.io/fyne/v2/widget"
|
|
||||||
"github.com/sirupsen/logrus"
|
|
||||||
"github.com/spf13/cast"
|
|
||||||
)
|
|
||||||
|
|
||||||
type TaskReceiveView struct {
|
|
||||||
BaseformView
|
|
||||||
}
|
|
||||||
|
|
||||||
func (this *TaskReceiveView) CreateView(t *model.TestCase) fyne.CanvasObject {
|
|
||||||
|
|
||||||
if t.MainType == string(comm.ModuleTask) && t.SubType == task.TaskSubTypeReceive {
|
|
||||||
id := widget.NewEntry()
|
|
||||||
tagSelect := getTaskTagSelect()
|
|
||||||
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASK_OID, id))
|
|
||||||
this.form.AppendItem(widget.NewFormItem(common.APP_TESTCASE_FORM_TASKTAG, tagSelect))
|
|
||||||
|
|
||||||
this.form.OnSubmit = func() {
|
|
||||||
if err := service.GetPttService().SendToClient(t.MainType, t.SubType,
|
|
||||||
&pb.TaskReceiveReq{Id: id.Text, TaskTag: cast.ToInt32(tagSelect.Selected)}); err != nil {
|
|
||||||
logrus.Error(err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return this.form
|
|
||||||
}
|
|
@ -148,9 +148,12 @@ func (ui *MainWindowImpl) checkVersion(parent fyne.Window) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ver := gjson.Get(string(b), "version").String()
|
ver := gjson.Get(string(b), "version").String()
|
||||||
|
if strings.HasSuffix(ver, ".zip") {
|
||||||
|
ver = strings.TrimSuffix(ver, ".zip")
|
||||||
|
}
|
||||||
logrus.WithField("version", ver).Debug("server version")
|
logrus.WithField("version", ver).Debug("server version")
|
||||||
if common.IsUpgrade(ver, ui.app.Metadata().Version) {
|
if common.IsUpgrade(ver, ui.app.Metadata().Version) {
|
||||||
chkDialog := dialog.NewConfirm("版本检查", "检查到新版本:"+ver, func(b bool) {
|
chkDialog := dialog.NewConfirm("版本检查", "检查到新版本:"+ver+" 请升级后使用", func(b bool) {
|
||||||
var commands = map[string]string{
|
var commands = map[string]string{
|
||||||
"windows": "explorer",
|
"windows": "explorer",
|
||||||
"darwin": "open",
|
"darwin": "open",
|
||||||
@ -167,8 +170,8 @@ func (ui *MainWindowImpl) checkVersion(parent fyne.Window) {
|
|||||||
cmd := exec.Command(run, uri)
|
cmd := exec.Command(run, uri)
|
||||||
return cmd.Run()
|
return cmd.Run()
|
||||||
}
|
}
|
||||||
open(ui.configService.GetConfig().UpgradeUrl)
|
_ = open(ui.configService.GetConfig().UpgradeUrl)
|
||||||
|
defer parent.Close()
|
||||||
}, parent)
|
}, parent)
|
||||||
chkDialog.SetConfirmText(common.BUTTON_OK)
|
chkDialog.SetConfirmText(common.BUTTON_OK)
|
||||||
chkDialog.Show()
|
chkDialog.Show()
|
||||||
|
@ -44,7 +44,6 @@ var (
|
|||||||
ff(comm.ModuleMail, "getallmailattachment"): &formview.MailAttachmentAllView{},
|
ff(comm.ModuleMail, "getallmailattachment"): &formview.MailAttachmentAllView{},
|
||||||
//task
|
//task
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeList): &formview.TaskListView{},
|
ff(comm.ModuleTask, task.TaskSubTypeList): &formview.TaskListView{},
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeReceive): &formview.TaskReceiveView{},
|
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeActiveList): &formview.TaskActiveListView{},
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList): &formview.TaskActiveListView{},
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive): &formview.TaskActiveReceiveView{},
|
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive): &formview.TaskActiveReceiveView{},
|
||||||
// hero
|
// hero
|
||||||
@ -121,7 +120,6 @@ var (
|
|||||||
},
|
},
|
||||||
"task": {
|
"task": {
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeList),
|
ff(comm.ModuleTask, task.TaskSubTypeList),
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeReceive),
|
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeActiveList),
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList),
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive),
|
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive),
|
||||||
},
|
},
|
||||||
@ -277,15 +275,8 @@ var (
|
|||||||
Rsp: &pb.TaskListResp{},
|
Rsp: &pb.TaskListResp{},
|
||||||
Enabled: true,
|
Enabled: true,
|
||||||
},
|
},
|
||||||
"task.receive": {
|
|
||||||
NavLabel: "任务领取",
|
|
||||||
Desc: "用户任务领取",
|
|
||||||
MainType: "task",
|
|
||||||
SubType: "receive",
|
|
||||||
Enabled: true,
|
|
||||||
},
|
|
||||||
ff(comm.ModuleTask, task.TaskSubTypeActiveList): {
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList): {
|
||||||
NavLabel: "活跃度",
|
NavLabel: "活跃度列表",
|
||||||
Desc: "用户活跃度列表",
|
Desc: "用户活跃度列表",
|
||||||
MainType: string(comm.ModuleTask),
|
MainType: string(comm.ModuleTask),
|
||||||
SubType: task.TaskSubTypeActiveList,
|
SubType: task.TaskSubTypeActiveList,
|
||||||
|
@ -76,14 +76,17 @@ func (this *configureComp) getTaskById(taskId int32) (data *cfg.GametaskRoundDat
|
|||||||
}
|
}
|
||||||
|
|
||||||
//是否第一个成就任务
|
//是否第一个成就任务
|
||||||
func (this *configureComp) isFirstTask(taskId int32) bool {
|
func (this *configureComp) isFirstTask(taskId int32) (ok bool) {
|
||||||
data := this.getTaskByTag(int32(comm.TASK_ACHIEVE))
|
data := this.getTaskByTag(int32(comm.TASK_ACHIEVE))
|
||||||
for _, v := range data {
|
for _, v := range data {
|
||||||
if v.IdAfter == taskId {
|
if v.IdAfter == taskId {
|
||||||
return false
|
ok = false
|
||||||
|
} else {
|
||||||
|
ok = true
|
||||||
}
|
}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
return true
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 上一个任务
|
// 上一个任务
|
||||||
|
@ -82,7 +82,7 @@ func (this *ModelTask) getTaskListByTag(uid string, taskTag comm.TaskTag) (newli
|
|||||||
newlist = append(newlist, v)
|
newlist = append(newlist, v)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user