Fix update bug with work items and activities. Fix placement of item in AR view
This commit is contained in:
@@ -111,13 +111,7 @@ export class ActivityRoutes {
|
||||
}
|
||||
|
||||
let Activity = this.db.Activity
|
||||
let activityUpdates = null
|
||||
|
||||
try {
|
||||
activityUpdates = new Activity(req.body)
|
||||
} catch (err) {
|
||||
throw createError.BadRequest("Invalid data")
|
||||
}
|
||||
let activityUpdates = req.body
|
||||
|
||||
const foundActivity = await Activity.findById(activityUpdates._id)
|
||||
|
||||
@@ -127,9 +121,13 @@ export class ActivityRoutes {
|
||||
)
|
||||
}
|
||||
|
||||
foundActivity.merge(activityUpdates)
|
||||
// Strip off all BSON types
|
||||
foundActivity = JSON.parse(JSON.stringify(foundActivity))
|
||||
|
||||
const savedActivity = await foundActivity.save()
|
||||
const mergedActivity = Activity.hydrate(
|
||||
merge(foundActivity, activityUpdates)
|
||||
)
|
||||
const savedActivity = await mergedActivity.save()
|
||||
|
||||
res.json(savedActivity.toClient())
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import passport from "passport"
|
||||
import createError from "http-errors"
|
||||
import autobind from "autobind-decorator"
|
||||
import merge from "deepmerge"
|
||||
import { catchAll } from "."
|
||||
|
||||
@autobind
|
||||
@@ -146,15 +147,8 @@ export class WorkItemRoutes {
|
||||
}
|
||||
|
||||
let WorkItem = this.db.WorkItem
|
||||
let workItemUpdates = null
|
||||
|
||||
try {
|
||||
workItemUpdates = new WorkItem(req.body)
|
||||
} catch (err) {
|
||||
throw createError.BadRequest("Invalid data")
|
||||
}
|
||||
|
||||
const foundWorkItem = await WorkItem.findById(workItemUpdates._id)
|
||||
let workItemUpdates = req.body
|
||||
let foundWorkItem = await WorkItem.findById(workItemUpdates._id)
|
||||
|
||||
if (!foundWorkItem) {
|
||||
return next(
|
||||
@@ -162,9 +156,13 @@ export class WorkItemRoutes {
|
||||
)
|
||||
}
|
||||
|
||||
foundWorkItem.merge(workItemUpdates)
|
||||
// Strip off all BSON types
|
||||
foundWorkItem = JSON.parse(JSON.stringify(foundWorkItem))
|
||||
|
||||
const savedWorkItem = await foundWorkItem.save()
|
||||
const mergedWorkItem = WorkItem.hydrate(
|
||||
merge(foundWorkItem, workItemUpdates)
|
||||
)
|
||||
const savedWorkItem = await mergedWorkItem.save()
|
||||
|
||||
res.json(savedWorkItem.toClient())
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ export const workItemSchema = new Schema(
|
||||
coordinates: [Number],
|
||||
},
|
||||
address: String,
|
||||
photos: [Schema.Types.ObjectId],
|
||||
photos: [{ type: Schema.Types.ObjectId }],
|
||||
details: String,
|
||||
ticketNumber: { type: Number, default: 0 },
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user