added rememberId for task locking
parent
69de96b3aa
commit
ecc1f94942
|
@ -304,15 +304,17 @@ func StartUnlockLockedGroupTaskStepsTicker() {
|
||||||
log.Debug().Msgf("Unlocked task step %v", index)
|
log.Debug().Msgf("Unlocked task step %v", index)
|
||||||
cache.RemoveLockedGroupTaskStep(index)
|
cache.RemoveLockedGroupTaskStep(index)
|
||||||
|
|
||||||
socketclients.BroadcastMessageExceptUserSessionId(taskStep.LockedByUserSession,
|
socketclients.BroadcastMessage(
|
||||||
structs.SendSocketMessage{
|
structs.SendSocketMessage{
|
||||||
Cmd: utils.SentCmdTaskUnlocked,
|
Cmd: utils.SentCmdTaskUnlocked,
|
||||||
Body: struct {
|
Body: struct {
|
||||||
GroupTaskId string
|
GroupTaskId string
|
||||||
Step uint8
|
Step uint8
|
||||||
|
RememberId string
|
||||||
}{
|
}{
|
||||||
GroupTaskId: taskStep.GroupTaskId,
|
GroupTaskId: taskStep.GroupTaskId,
|
||||||
Step: taskStep.Step,
|
Step: taskStep.Step,
|
||||||
|
RememberId: taskStep.RememberId,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,7 @@ func AddLockedGroupTaskStep(lockedGroupTaskStep structs.LockedGroupTaskSteps) (I
|
||||||
step.LockedByUserId == lockedGroupTaskStep.LockedByUserId {
|
step.LockedByUserId == lockedGroupTaskStep.LockedByUserId {
|
||||||
isAlreadyInList = true
|
isAlreadyInList = true
|
||||||
lockedGroupTaskSteps[i].LockedAt = time.Now()
|
lockedGroupTaskSteps[i].LockedAt = time.Now()
|
||||||
|
lockedGroupTaskSteps[i].RememberId = lockedGroupTaskStep.RememberId
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,10 +75,10 @@ type TaskParameter struct {
|
||||||
// used for ui when a user is writing into input field to lock the task step for other users
|
// used for ui when a user is writing into input field to lock the task step for other users
|
||||||
type LockedGroupTaskSteps struct {
|
type LockedGroupTaskSteps struct {
|
||||||
LockedByUserId string
|
LockedByUserId string
|
||||||
LockedByUserSession string // user session is needed to prevent sending the unlocking message to the user who are writing
|
|
||||||
GroupTaskId string
|
GroupTaskId string
|
||||||
Step uint8
|
Step uint8
|
||||||
LockedAt time.Time
|
LockedAt time.Time
|
||||||
|
RememberId string
|
||||||
}
|
}
|
||||||
|
|
||||||
// used for ui when a user types into input fields to sync to other users and show them this when opening the group task view
|
// used for ui when a user types into input fields to sync to other users and show them this when opening the group task view
|
||||||
|
|
|
@ -159,14 +159,14 @@ func RunHub() {
|
||||||
|
|
||||||
isAlreadyInList := cache.AddLockedGroupTaskStep(structs.LockedGroupTaskSteps{
|
isAlreadyInList := cache.AddLockedGroupTaskStep(structs.LockedGroupTaskSteps{
|
||||||
LockedByUserId: receivedMessage.Body["lockedByUserId"].(string),
|
LockedByUserId: receivedMessage.Body["lockedByUserId"].(string),
|
||||||
LockedByUserSession: data.Conn.Locals("sessionId").(string),
|
|
||||||
GroupTaskId: receivedMessage.Body["groupTaskId"].(string),
|
GroupTaskId: receivedMessage.Body["groupTaskId"].(string),
|
||||||
Step: uint8(receivedMessage.Body["step"].(float64)),
|
Step: uint8(receivedMessage.Body["step"].(float64)),
|
||||||
LockedAt: time.Now(),
|
LockedAt: time.Now(),
|
||||||
|
RememberId: receivedMessage.Body["rememberId"].(string),
|
||||||
})
|
})
|
||||||
|
|
||||||
if !isAlreadyInList {
|
if !isAlreadyInList {
|
||||||
socketclients.BroadcastMessageExceptUserSessionId(data.Conn.Locals("sessionId").(string), structs.SendSocketMessage{
|
socketclients.BroadcastMessage(structs.SendSocketMessage{
|
||||||
Cmd: utils.SentCmdTaskLocked,
|
Cmd: utils.SentCmdTaskLocked,
|
||||||
Body: receivedMessage.Body,
|
Body: receivedMessage.Body,
|
||||||
})
|
})
|
||||||
|
@ -174,7 +174,7 @@ func RunHub() {
|
||||||
|
|
||||||
break
|
break
|
||||||
case utils.ReceivedCmdUpdateGroupTaskStepUserInputValue:
|
case utils.ReceivedCmdUpdateGroupTaskStepUserInputValue:
|
||||||
socketclients.BroadcastMessageExceptUserSessionId(data.Conn.Locals("sessionId").(string), structs.SendSocketMessage{
|
socketclients.BroadcastMessage(structs.SendSocketMessage{
|
||||||
Cmd: utils.SentCmdUpdateGroupTaskStepUserInputValue,
|
Cmd: utils.SentCmdUpdateGroupTaskStepUserInputValue,
|
||||||
Body: receivedMessage.Body,
|
Body: receivedMessage.Body,
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue