disconnect from scanner
parent
fab7ce7da1
commit
2468d12861
|
@ -78,6 +78,8 @@ const (
|
||||||
ReceivedCmdAllUsersCreateNewUser = 12
|
ReceivedCmdAllUsersCreateNewUser = 12
|
||||||
ReceivedCmdAllUsersDeleteUser = 13
|
ReceivedCmdAllUsersDeleteUser = 13
|
||||||
ReceivedCmdAllUsersUserDeactivation = 14
|
ReceivedCmdAllUsersUserDeactivation = 14
|
||||||
|
ReceivedCmdScannersUseScanners = 15
|
||||||
|
ReceivedCmdScannersDisconnectScanner = 16
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|
|
@ -111,29 +111,3 @@ func DeleteScanner(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.SendStatus(fiber.StatusOK)
|
return c.SendStatus(fiber.StatusOK)
|
||||||
}
|
}
|
||||||
|
|
||||||
func UpdateScannerUsedByUserId(c *fiber.Ctx) error {
|
|
||||||
scannerId := c.Params("scannerId")
|
|
||||||
|
|
||||||
if len(scannerId) != 36 {
|
|
||||||
log.Error().Msgf("Error parsing scanner id: %v", scannerId)
|
|
||||||
return c.SendStatus(fiber.StatusBadRequest)
|
|
||||||
}
|
|
||||||
|
|
||||||
usedByUserId := c.Locals("userId").(string)
|
|
||||||
|
|
||||||
database.DB.Model(&structs.Scanner{}).Where("id = ?", scannerId).Updates(structs.Scanner{UsedByUserId: usedByUserId})
|
|
||||||
|
|
||||||
socketclients.BroadcastMessage(structs.SendSocketMessage{
|
|
||||||
Cmd: utils.SentCmdUpdateScannerUsedBy,
|
|
||||||
Body: struct {
|
|
||||||
ScannerId string
|
|
||||||
UsedByUserId string
|
|
||||||
}{
|
|
||||||
ScannerId: scannerId,
|
|
||||||
UsedByUserId: usedByUserId,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
return c.SendStatus(fiber.StatusOK)
|
|
||||||
}
|
|
||||||
|
|
|
@ -23,7 +23,6 @@ func SetupRoutes(app *fiber.App) {
|
||||||
s.Post("/", jxscanner.AddScanner)
|
s.Post("/", jxscanner.AddScanner)
|
||||||
s.Post("/scan", scannerSessionValidation, jxscanner.ScanResult)
|
s.Post("/scan", scannerSessionValidation, jxscanner.ScanResult)
|
||||||
s.Delete("/", scannerSessionValidation, jxscanner.DeleteScanner)
|
s.Delete("/", scannerSessionValidation, jxscanner.DeleteScanner)
|
||||||
s.Patch("/:scannerId", userSessionValidation, jxscanner.UpdateScannerUsedByUserId)
|
|
||||||
|
|
||||||
app.Static("/", "./public")
|
app.Static("/", "./public")
|
||||||
}
|
}
|
||||||
|
|
|
@ -787,3 +787,18 @@ func AllUsersUserDeactivation(userId string, deactivate bool) {
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func ScannersUpdateScannerUsedByUserId(userId string, scannerId string) {
|
||||||
|
database.DB.Model(&structs.Scanner{}).Where("id = ?", scannerId).Updates(structs.Scanner{UsedByUserId: userId})
|
||||||
|
|
||||||
|
BroadcastMessage(structs.SendSocketMessage{
|
||||||
|
Cmd: utils.SentCmdUpdateScannerUsedBy,
|
||||||
|
Body: struct {
|
||||||
|
ScannerId string
|
||||||
|
UsedByUserId string
|
||||||
|
}{
|
||||||
|
ScannerId: scannerId,
|
||||||
|
UsedByUserId: userId,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
@ -283,6 +283,22 @@ func RunHub() {
|
||||||
|
|
||||||
socketclients.AllUsersUserDeactivation(receivedMessage.Body["UserId"].(string), receivedMessage.Body["Deactivation"].(bool))
|
socketclients.AllUsersUserDeactivation(receivedMessage.Body["UserId"].(string), receivedMessage.Body["Deactivation"].(bool))
|
||||||
break
|
break
|
||||||
|
case utils.ReceivedCmdScannersUseScanners:
|
||||||
|
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionScannerUseScanners) {
|
||||||
|
socketclients.SendErrorMessageNoPermissions(data.Conn.Locals("sessionId").(string))
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
socketclients.ScannersUpdateScannerUsedByUserId(data.Conn.Locals("userId").(string), receivedMessage.Body["ScannerId"].(string))
|
||||||
|
break
|
||||||
|
case utils.ReceivedCmdScannersDisconnectScanner:
|
||||||
|
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionScannerUseScanners) {
|
||||||
|
socketclients.SendErrorMessageNoPermissions(data.Conn.Locals("sessionId").(string))
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
socketclients.ScannersUpdateScannerUsedByUserId("", receivedMessage.Body["ScannerId"].(string))
|
||||||
|
break
|
||||||
|
|
||||||
default:
|
default:
|
||||||
log.Error().Msgf("Received unknown message: %v", receivedMessage)
|
log.Error().Msgf("Received unknown message: %v", receivedMessage)
|
||||||
|
|
Loading…
Reference in New Issue