🔧 Fleshing out save and get settings endpoints

This commit is contained in:
2021-11-18 14:16:55 -08:00
parent e1d8f87a00
commit 6c431b300b
3 changed files with 51 additions and 22 deletions

View File

@@ -8,6 +8,7 @@ import {
} from "moleculer";
import { DbMixin } from "../mixins/db.mixin";
import Settings from "../models/settings.model";
import { isEmpty } from "lodash";
export default class SettingsService extends Service {
// @ts-ignore
@@ -27,14 +28,46 @@ export default class SettingsService extends Service {
getSettings: {
rest: "GET /getAllSettings",
params: {},
async handler(ctx: Context<{}>) {},
async handler(
ctx: Context<{ settingsKey: string }>
) {
const settings = await Settings.find({});
if (isEmpty(settings)) {
return {};
}
console.log(settings[0]);
return settings[0];
},
},
saveSettings: {
rest: "POST /saveSettings",
params: {},
async handler(ctx: Context<{}>) {
async handler(
ctx: Context<{
settingsObject: {
hostname: string;
protocol: string;
username: string;
password: string;
};
airdcppUserSettings: object;
}>
) {
console.log(ctx.params);
const { settingsObject, airdcppUserSettings } =
ctx.params;
const result = await Settings.create({
directConnect: {
client: {
...settingsObject,
airdcppUserSettings,
},
},
});
console.log("ASDASD", result);
return result;
},
},
},