This commit is contained in:
苏尹岚
2020-12-23 09:28:48 +08:00
parent 1765620899
commit 947750c5c9
4 changed files with 33 additions and 19 deletions

View File

@@ -94,6 +94,7 @@ func InitServiceInfo(version string, buildTime time.Time, gitCommit string) {
"billTypeNames": model.BillTypeNames,
"deliveryStatusName": model.DeliveryStatusName,
"cashbackName": model.CashbackName,
"consumeName": model.ConsumeName,
},
}
}

View File

@@ -43,6 +43,11 @@ const (
JobCountrywideCode = 999
)
const (
/*消费类型*/
ConsumeTypePublishJob = 1 //发任务
)
var (
DeliveryStatusName = map[int]string{
OrderStatusNew: "上门取件中",
@@ -55,6 +60,8 @@ var (
JobCashbackPrice: "固定返现",
JobCashbackPercentage: "比例返现",
}
ConsumeName = map[int]string{}
)
type Job struct {

View File

@@ -34,7 +34,7 @@ type EventController struct {
//连接的客户端,吧每个客户端都放进来
var clients = make(map[int]map[string]*websocket.Conn)
var clientsHeart = make(map[string]*websocket.Conn)
var ClientsHeart = make(map[string]*websocket.Conn)
//广播频道(通道)
var broadcast = make(chan *model.ImMessageRecord)
@@ -84,7 +84,7 @@ func (c *EventController) TestWebsocket() {
return
}
clientUser[userID] = ws
clientsHeart[userID] = ws
ClientsHeart[userID] = ws
for _, v := range messageGroups {
if len(clients[v.GroupID]) > 0 {
clients[v.GroupID][userID] = ws
@@ -116,7 +116,7 @@ func (c *EventController) TestWebsocket() {
for k, _ := range clients {
delete(clients[k], userID)
}
delete(clientsHeart, userID)
delete(ClientsHeart, userID)
// delete(clients, ws) //删除map中的客户端
break //结束循环
} else {
@@ -135,7 +135,7 @@ func (c *EventController) TestWebsocket() {
}
//如果这些人不在这个组的ws池子里就打上未读标记
for _, v := range userIDs {
if clientsHeart[v] == nil {
if ClientsHeart[v] == nil {
messageGroupReads, _ := dao.GetMessageGroupRead(db, v, s.GroupID)
for _, vv := range messageGroupReads {
vv.UnReadCount++
@@ -165,13 +165,13 @@ func handleMessages() {
msg := <-broadcast
if msg.GroupID == 0 {
// globals.SugarLogger.Debugf("heart %v", utils.Format4Output(msg, false))
if clientsHeart[msg.UserID] != nil {
if err := clientsHeart[msg.UserID].WriteJSON(&model.ImMessageRecord{
if ClientsHeart[msg.UserID] != nil {
if err := ClientsHeart[msg.UserID].WriteJSON(&model.ImMessageRecord{
Key: "pang",
}); err != nil {
globals.SugarLogger.Debugf("heart client.WriteJSON error: %v", err)
clientsHeart[msg.UserID].Close() //关闭
delete(clientsHeart, msg.UserID)
ClientsHeart[msg.UserID].Close() //关闭
delete(ClientsHeart, msg.UserID)
}
}
} else {

View File

@@ -63,22 +63,28 @@ func (c *User2Controller) GetBindAuthInfo() {
// @Title 得到用户列表
// @Description 得到用户列表
// @Param token header string true "认证token"
// @Param userType query int true "用户类型0表示全部"
// @Param keyword query string false "关键字,可以部分匹配"
// @Param userIDs query string false "用户id列表"
// @Param userID2 query string false "用户id2,必须全匹配(外部唯一标识)"
// @Param mobile query string false "用户手机,必须全匹配"
// @Param offset query int false "门店列表起始序号以0开始缺省为0"
// @Param pageSize query int false "门店列表页大小缺省为50-1表示全部"
// @Param token header string true "认证token"
// @Param keyword query string false "关键字,可以部分匹配"
// @Param userIDs query string false "用户id列表"
// @Param cityCodes query string false "城市id列表"
// @Param mobile query string false "用户手机,必须全匹配"
// @Param fromTime query string false "开始时间"
// @Param toTime query string false "结束时间"
// @Param timeType query int false "1为注册时间2为消费时间"
// @Param consumeTypes query string false "1为发任务2为冲会员3为发快递"
// @Param offset query int false "门店列表起始序号以0开始缺省为0"
// @Param pageSize query int false "门店列表页大小缺省为50-1表示全部"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetUsers [get]
func (c *User2Controller) GetUsers() {
c.callGetUsers(func(params *tUser2GetUsersParams) (retVal interface{}, errCode string, err error) {
var userIDs []string
if err = jxutils.Strings2Objs(params.UserIDs, &userIDs); err == nil {
retVal, err = cms.GetUsers(params.Ctx, params.UserType, params.Keyword, userIDs, params.UserID2, params.Mobile, params.Offset, params.PageSize)
var (
userIDs []string
cityCodes, consumeTypes []int
)
if err = jxutils.Strings2Objs(params.UserIDs, &userIDs, params.CityCodes, &cityCodes); err == nil {
retVal, err = cms.GetUsers(params.Ctx, params.Keyword, userIDs, params.Mobile, params.FromTime, params.ToTime, params.TimeType, cityCodes, consumeTypes, params.Offset, params.PageSize)
}
return retVal, "", err
})