kopia lustrzana https://github.com/FacilMap/facilmap
Fix error when saving route as line
rodzic
d822adf014
commit
abf90b9192
|
@ -43,6 +43,9 @@ export function getPosType(): ModelAttributeColumnOptions {
|
|||
allowNull: false,
|
||||
get() {
|
||||
return undefined;
|
||||
},
|
||||
set() {
|
||||
throw new Error('Cannot set pos directly.');
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
|
@ -260,7 +260,7 @@ export default class DatabaseLines {
|
|||
const points = await this._db.helpers._bulkCreateInBatches<TrackPoint>(this.LinePointModel, create);
|
||||
|
||||
if(!_noEvent)
|
||||
this._db.emit("linePoints", padId, lineId, points);
|
||||
this._db.emit("linePoints", padId, lineId, points.map((point) => omit(point, ["lineId", "pos"]) as TrackPoint));
|
||||
}
|
||||
|
||||
async deleteLine(padId: PadId, lineId: ID): Promise<Line> {
|
||||
|
@ -290,7 +290,7 @@ export default class DatabaseLines {
|
|||
|
||||
return Object.entries(groupBy(linePoints, "lineId")).map(([key, val]) => ({
|
||||
id: Number(key),
|
||||
trackPoints: val.map((p) => omit(p.toJSON(), ["lineId"]))
|
||||
trackPoints: val.map((p) => omit(p.toJSON(), ["lineId", "pos"]))
|
||||
}));
|
||||
})).flatten();
|
||||
}
|
||||
|
@ -300,7 +300,7 @@ export default class DatabaseLines {
|
|||
attributes: [ "pos", "lat", "lon", "ele", "zoom", "idx" ],
|
||||
order: [["idx", "ASC"]]
|
||||
});
|
||||
return points.map((point) => point.toJSON() as TrackPoint);
|
||||
return points.map((point) => omit(point.toJSON(), ["pos"]) as TrackPoint);
|
||||
}
|
||||
|
||||
}
|
|
@ -5,6 +5,7 @@ import { BboxWithZoom, ID, Latitude, Longitude, PadId, Point, Route, RouteMode,
|
|||
import { BboxWithExcept, getPosType, getVirtualLatType, getVirtualLonType, makeBboxCondition } from "./helpers";
|
||||
import { WhereOptions } from "sequelize/types/lib/model";
|
||||
import { calculateRouteForLine } from "../routing/routing";
|
||||
import { omit } from "lodash";
|
||||
|
||||
const updateTimes: Record<string, number> = {};
|
||||
|
||||
|
@ -68,7 +69,7 @@ export default class DatabaseRoutes {
|
|||
where: cond,
|
||||
attributes: [ "pos", "lat", "lon", "idx", "ele"],
|
||||
order: [[ "idx", "ASC" ]]
|
||||
})).map((point) => point.toJSON());
|
||||
})).map((point) => omit(point.toJSON(), ["pos"]) as TrackPoint);
|
||||
}
|
||||
|
||||
async generateRouteId(): Promise<string> {
|
||||
|
@ -199,7 +200,7 @@ export default class DatabaseRoutes {
|
|||
attributes: [ "pos", "lat", "lon", "idx", "ele" ],
|
||||
order: [[ "idx", "ASC" ]]
|
||||
});
|
||||
return data.map((d) => d.toJSON());
|
||||
return data.map((d) => omit(d.toJSON(), ["pos"]) as TrackPoint);
|
||||
}
|
||||
|
||||
async getAllRoutePoints(routeId: string): Promise<TrackPoint[]> {
|
||||
|
@ -207,7 +208,7 @@ export default class DatabaseRoutes {
|
|||
where: {routeId},
|
||||
attributes: [ "pos", "lat", "lon", "idx", "ele", "zoom"]
|
||||
});
|
||||
return data.map((d) => d.toJSON());
|
||||
return data.map((d) => omit(d.toJSON(), ["pos"]) as TrackPoint);
|
||||
}
|
||||
|
||||
}
|
Ładowanie…
Reference in New Issue