overhauled training report fields to use new searchable system
This commit is contained in:
@@ -5,7 +5,7 @@ import { Request, Response } from 'express';
|
||||
import pool from '../db';
|
||||
import { requireLogin, requireMemberState, requireRole } from '../middleware/auth';
|
||||
import { getUserActiveLOA } from '../services/loaService';
|
||||
import { getMemberSettings, getMembersFull, getMembersLite, getUserData, setUserSettings } from '../services/memberService';
|
||||
import { getAllMembersLite, getMemberSettings, getMembersFull, getMembersLite, getUserData, setUserSettings } from '../services/memberService';
|
||||
import { getUserRoles } from '../services/rolesService';
|
||||
import { memberSettings, MemberState } from '@app/shared/types/member';
|
||||
|
||||
@@ -75,6 +75,16 @@ router.put('/settings', [requireLogin], async (req: Request, res: Response) => {
|
||||
}
|
||||
})
|
||||
|
||||
router.get('/lite', [requireLogin], async (req: Request, res: Response) => {
|
||||
try {
|
||||
let out = await getAllMembersLite();
|
||||
res.status(200).json(out);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
res.status(500).json(error);
|
||||
}
|
||||
})
|
||||
|
||||
router.post('/lite/bulk', async (req: Request, res: Response) => {
|
||||
try {
|
||||
let ids = req.body.ids;
|
||||
@@ -86,6 +96,7 @@ router.post('/lite/bulk', async (req: Request, res: Response) => {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
router.post('/full/bulk', async (req: Request, res: Response) => {
|
||||
try {
|
||||
let ids = req.body.ids;
|
||||
|
||||
@@ -49,6 +49,18 @@ export async function getMembersLite(ids: number[]): Promise<MemberLight[]> {
|
||||
return res;
|
||||
}
|
||||
|
||||
export async function getAllMembersLite(): Promise<MemberLight[]> {
|
||||
const sql = `SELECT m.member_id AS id,
|
||||
m.member_name AS username,
|
||||
m.displayName,
|
||||
u.color
|
||||
FROM view_member_rank_unit_status_latest m
|
||||
LEFT JOIN units u ON u.name = m.unit;`;
|
||||
|
||||
const res: MemberLight[] = await pool.query(sql);
|
||||
return res;
|
||||
}
|
||||
|
||||
export async function getMembersFull(ids: number[]): Promise<Member[]> {
|
||||
const sql = `SELECT * FROM view_member_rank_unit_status_latest WHERE member_id IN (?);`;
|
||||
const res: Member[] = await pool.query(sql, [ids]);
|
||||
|
||||
Reference in New Issue
Block a user