|
|
@@ -11,7 +11,8 @@ class EquipmentController {
|
|
|
async getEquipments(req: Request, res: Response) {
|
|
|
try {
|
|
|
const [equipments] = await sequelize.query(
|
|
|
- `SELECT equipment_data.*, equipments.id AS equipment_id, equipments.name AS equipment_name, equipments.site_id, equipments.current_user_id, users.name AS user_name FROM equipment_data
|
|
|
+ `SELECT equipment_data.*, equipments.id AS equipment_id, equipments.name AS equipment_name, equipments.site_id, equipments.current_user_id, users.name AS user_name
|
|
|
+ FROM equipment_data
|
|
|
JOIN equipments ON aid_id = equipments.id
|
|
|
LEFT JOIN users ON equipments.current_user_id = users.id
|
|
|
WHERE equipment_data.id IN
|
|
|
@@ -34,7 +35,7 @@ class EquipmentController {
|
|
|
const equipment = await Equipment.findByPk(equipmentId)
|
|
|
|
|
|
if (!user) {
|
|
|
- res.status(400).json({
|
|
|
+ res.status(404).json({
|
|
|
message: 'User not found'
|
|
|
})
|
|
|
return
|
|
|
@@ -56,22 +57,16 @@ class EquipmentController {
|
|
|
|
|
|
async receiveEquipmentData(req: Request, res: Response) {
|
|
|
// sendAlarm('輔具 A', '緊急')
|
|
|
- let statusId
|
|
|
-
|
|
|
- switch (req.body.Status) {
|
|
|
- case 'Rest':
|
|
|
- statusId = 2
|
|
|
|
|
|
- case 'Alarm':
|
|
|
- case 'SOS':
|
|
|
- statusId = 3
|
|
|
- break
|
|
|
-
|
|
|
- default:
|
|
|
- statusId = 1
|
|
|
- break
|
|
|
+ const Status: { [index: string]: Number } = {
|
|
|
+ Offline: 0,
|
|
|
+ Normal: 1,
|
|
|
+ Rest: 2,
|
|
|
+ SOS: 3
|
|
|
}
|
|
|
|
|
|
+ var statusId = Status[req.body.Status] ? Status[req.body.Status] : 1
|
|
|
+
|
|
|
await EquipmentData.create({
|
|
|
ap_id: req.body.APID,
|
|
|
aid_id: req.body.AidID,
|
|
|
@@ -79,7 +74,8 @@ class EquipmentController {
|
|
|
status: statusId,
|
|
|
battery: req.body.Battery,
|
|
|
latitude: req.body.GPS_Lat,
|
|
|
- longitude: req.body.GPS_Lon
|
|
|
+ longitude: req.body.GPS_Lon,
|
|
|
+ alarm: JSON.stringify(req.body.Alarm)
|
|
|
})
|
|
|
|
|
|
sendUpdateRequest()
|