disconnect from scanner
parent
fab7ce7da1
commit
2468d12861
|
@ -78,6 +78,8 @@ const (
|
|||
ReceivedCmdAllUsersCreateNewUser = 12
|
||||
ReceivedCmdAllUsersDeleteUser = 13
|
||||
ReceivedCmdAllUsersUserDeactivation = 14
|
||||
ReceivedCmdScannersUseScanners = 15
|
||||
ReceivedCmdScannersDisconnectScanner = 16
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
|
@ -111,29 +111,3 @@ func DeleteScanner(c *fiber.Ctx) error {
|
|||
|
||||
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("/scan", scannerSessionValidation, jxscanner.ScanResult)
|
||||
s.Delete("/", scannerSessionValidation, jxscanner.DeleteScanner)
|
||||
s.Patch("/:scannerId", userSessionValidation, jxscanner.UpdateScannerUsedByUserId)
|
||||
|
||||
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))
|
||||
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:
|
||||
log.Error().Msgf("Received unknown message: %v", receivedMessage)
|
||||
|
|
Loading…
Reference in New Issue