main
alex 2023-10-22 15:49:21 +02:00
parent e81bdc2ba9
commit 8cc63fc0ef
4 changed files with 39 additions and 20 deletions

View File

@ -31,18 +31,22 @@ func InvexApiRequestClient(requestMethod string, url string) (statusCode int, bo
if code == 401 { if code == 401 {
log.Error().Msgf("invex not authorized, code: %d", code) log.Error().Msgf("invex not authorized, code: %d", code)
logger.AddSystemLog(rslogger.LogTypeInfo, "InvexApiRequestClient err: %s statusCode: %s", logger.AddSystemLog(rslogger.LogTypeError, "InvexApiRequestClient err: %s statusCode: %s",
"invex not authorized", strconv.Itoa(code)) "invex not authorized", strconv.Itoa(code))
return code, nil, err return code, nil, err
} } else if code == 404 {
if code == 404 {
log.Error().Msgf("Invex stock item not found, code: %d", code) log.Error().Msgf("Invex stock item not found, code: %d", code)
logger.AddSystemLog(rslogger.LogTypeInfo, "InvexApiRequestClient err: %s statusCode: %s", logger.AddSystemLog(rslogger.LogTypeWarning, "InvexApiRequestClient err: %s statusCode: %s",
"invex stock item not found", strconv.Itoa(code)) "invex stock item not found", strconv.Itoa(code))
return code, nil, err
} else if code != 200 {
log.Error().Msgf("InvexApiRequestClient request failed, statusCode: %s", strconv.Itoa(code))
logger.AddSystemLog(rslogger.LogTypeError, "InvexApiRequestClient request failed, statusCode: %s", strconv.Itoa(code))
return code, nil, err return code, nil, err
} }

View File

@ -61,6 +61,7 @@ const (
SentCmdGroupTasksReloaded = 8 SentCmdGroupTasksReloaded = 8
SentCmdUpdateUserSessions = 9 SentCmdUpdateUserSessions = 9
SentCmdUpdateAllUsersUserAvatar = 10 SentCmdUpdateAllUsersUserAvatar = 10
SentCmdScannerNewScan = 11
SentCmdTaskLocked = 16 SentCmdTaskLocked = 16
SentCmdTaskUnlocked = 17 SentCmdTaskUnlocked = 17
@ -96,21 +97,22 @@ const (
// commands received from web clients // commands received from web clients
const ( const (
ReceivedCmdStartGroupTasks = 1 ReceivedCmdStartGroupTasks = 1
ReceivedCmdTaskFailedTryAgainRunTaskStep = 2 ReceivedCmdTaskFailedTryAgainRunTaskStep = 2
ReceivedCmdTaskContinueTaskStep = 3 ReceivedCmdTaskContinueTaskStep = 3
ReceivedCmdReloadGroupTasks = 4 ReceivedCmdReloadGroupTasks = 4
ReceivedCmdTaskLocking = 5 ReceivedCmdTaskLocking = 5
ReceivedCmdUpdateUserProfile = 6 ReceivedCmdUpdateUserProfile = 6
ReceivedCmdAdminAreaCreateNewRole = 7 ReceivedCmdAdminAreaCreateNewRole = 7
ReceivedCmdAdminAreaUpdateRole = 8 ReceivedCmdAdminAreaUpdateRole = 8
ReceivedCmdAdminAreaUpdateRoleSortingOrder = 9 ReceivedCmdAdminAreaUpdateRoleSortingOrder = 9
ReceivedCmdAdminAreaDeleteRole = 10 ReceivedCmdAdminAreaDeleteRole = 10
ReceivedCmdAllUsersUpdateUserRole = 11 ReceivedCmdAllUsersUpdateUserRole = 11
ReceivedCmdAllUsersCreateNewUser = 12 ReceivedCmdAllUsersCreateNewUser = 12
ReceivedCmdAllUsersDeleteUser = 13 ReceivedCmdAllUsersDeleteUser = 13
ReceivedCmdAllUsersUserDeactivation = 14 ReceivedCmdAllUsersUserDeactivation = 14
ReceivedCmdScannerNewScan = 15 ReceivedCmdScannerNewScan = 15
ReceivedCmdHandleUserActionTaskStep = 18 ReceivedCmdHandleUserActionTaskStep = 18
ReceivedCmdCreateNewUserApiKey = 19 ReceivedCmdCreateNewUserApiKey = 19
ReceivedCmdDeleteUserApiKey = 20 ReceivedCmdDeleteUserApiKey = 20

View File

@ -167,6 +167,14 @@ func SendMessageToUsersByRoleId(roleId string, sendSocketMessage structs.SendSoc
} }
} }
func SendMessageToUserExceptBrowserTabSession(userId string, ignoreBrowserTabSession string, sendSocketMessage structs.SendSocketMessage) {
for _, client := range cache.GetSocketClients() {
if client.UserId == userId && client.BrowserTabSession != ignoreBrowserTabSession {
client.SendMessage(sendSocketMessage)
}
}
}
// This close all connections that are connected with one session id. // This close all connections that are connected with one session id.
// For example when a user has two browser tabs opened // For example when a user has two browser tabs opened
func CloseAllUserSessionConnections(sessionId string) { func CloseAllUserSessionConnections(sessionId string) {

View File

@ -271,6 +271,11 @@ func RunHub() {
break break
case utils.ReceivedCmdScannerNewScan: case utils.ReceivedCmdScannerNewScan:
log.Info().Msgf("Received new scan: %v", receivedMessage.Body) log.Info().Msgf("Received new scan: %v", receivedMessage.Body)
socketclients.SendMessageToUserExceptBrowserTabSession(data.Conn.Locals("userId").(string), data.Conn.Locals("browserTabSession").(string), structs.SendSocketMessage{
Cmd: utils.SentCmdScannerNewScan,
Body: receivedMessage.Body["Scan"],
})
break break
case utils.ReceivedCmdHandleUserActionTaskStep: case utils.ReceivedCmdHandleUserActionTaskStep:
if !socketclients.HasXYPermission(data.Conn.Locals("userId").(string), utils.PermissionGroupTasksOverviewXYReloadGroupConfig, receivedMessage.Body["category"].(string)) { if !socketclients.HasXYPermission(data.Conn.Locals("userId").(string), utils.PermissionGroupTasksOverviewXYReloadGroupConfig, receivedMessage.Body["category"].(string)) {