group task typing message

main
alex 2023-06-04 21:20:21 +02:00
parent ecc1f94942
commit 033a05a9b5
3 changed files with 10 additions and 28 deletions

View File

@ -10,14 +10,14 @@ import (
var lockedGroupTaskSteps []*structs.LockedGroupTaskSteps
var lgtMu sync.RWMutex
func AddLockedGroupTaskStep(lockedGroupTaskStep structs.LockedGroupTaskSteps) (IsAlreadyInList bool) {
func AddLockedGroupTaskStep(lockedGroupTaskStep structs.LockedGroupTaskSteps) {
lgtMu.Lock()
var isAlreadyInList = false
for i, step := range lockedGroupTaskSteps {
if step.GroupTaskId == lockedGroupTaskStep.GroupTaskId &&
step.LockedByUserId == lockedGroupTaskStep.LockedByUserId {
lockedGroupTaskSteps[i].LockedByUserId == lockedGroupTaskStep.LockedByUserId {
isAlreadyInList = true
lockedGroupTaskSteps[i].LockedAt = time.Now()
lockedGroupTaskSteps[i].RememberId = lockedGroupTaskStep.RememberId
@ -30,8 +30,6 @@ func AddLockedGroupTaskStep(lockedGroupTaskStep structs.LockedGroupTaskSteps) (I
}
lgtMu.Unlock()
return isAlreadyInList
}
func RemoveLockedGroupTaskStep(i int) {

View File

@ -45,12 +45,11 @@ const (
// commands received from web clients
const (
ReceivedCmdStartGroupTasks = 1
ReceivedCmdTaskFailedTryAgainRunTaskStep = 2
ReceivedCmdTaskContinueTaskStep = 3
ReceivedCmdReloadGroupTasks = 4
ReceivedCmdTaskLocking = 5
ReceivedCmdUpdateGroupTaskStepUserInputValue = 6
ReceivedCmdStartGroupTasks = 1
ReceivedCmdTaskFailedTryAgainRunTaskStep = 2
ReceivedCmdTaskContinueTaskStep = 3
ReceivedCmdReloadGroupTasks = 4
ReceivedCmdTaskLocking = 5
)
const (

View File

@ -155,9 +155,7 @@ func RunHub() {
break
case utils.ReceivedCmdTaskLocking:
log.Info().Msgf("task locking %s", receivedMessage.Body)
isAlreadyInList := cache.AddLockedGroupTaskStep(structs.LockedGroupTaskSteps{
cache.AddLockedGroupTaskStep(structs.LockedGroupTaskSteps{
LockedByUserId: receivedMessage.Body["lockedByUserId"].(string),
GroupTaskId: receivedMessage.Body["groupTaskId"].(string),
Step: uint8(receivedMessage.Body["step"].(float64)),
@ -165,32 +163,19 @@ func RunHub() {
RememberId: receivedMessage.Body["rememberId"].(string),
})
if !isAlreadyInList {
socketclients.BroadcastMessage(structs.SendSocketMessage{
Cmd: utils.SentCmdTaskLocked,
Body: receivedMessage.Body,
})
}
break
case utils.ReceivedCmdUpdateGroupTaskStepUserInputValue:
socketclients.BroadcastMessage(structs.SendSocketMessage{
Cmd: utils.SentCmdUpdateGroupTaskStepUserInputValue,
Cmd: utils.SentCmdTaskLocked,
Body: receivedMessage.Body,
})
cache.ExtendLockedGroupTaskStepLockedAtTime(structs.LockedGroupTaskSteps{
GroupTaskId: receivedMessage.Body["groupTaskId"].(string),
})
cache.AddGroupTaskStepsInput(structs.GroupTaskStepsInput{
GroupTaskId: receivedMessage.Body["groupTaskId"].(string),
Step: uint8(receivedMessage.Body["step"].(float64)),
ParameterName: receivedMessage.Body["parameterName"].(string),
Value: receivedMessage.Body["value"],
})
break
break
default:
log.Error().Msgf("Received unknown message: %v", receivedMessage)
break