1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- import { Request, Response } from 'express';
- import { designService, COLOR_MAPPING } from '../services/design.service';
- import { query, initializeDatabase } from '../database';
- export const debugController = {
- initDb: async (req: Request, res: Response) => {
- try {
- await initializeDatabase();
- res.json({ success: true, message: '数据库已初始化' });
- } catch (error) {
- console.error('数据库初始化错误:', error);
- res.status(500).json({ success: false, error: '初始化失败' });
- }
- },
- checkDb: async (req: Request, res: Response) => {
- try {
- const tableExists = await query(`
- SELECT EXISTS (
- SELECT 1 FROM information_schema.tables
- WHERE table_name = 'design_usage'
- )
- `);
- res.json({ exists: tableExists.rows[0].exists });
- } catch (error) {
- console.error('数据库检查错误:', error);
- res.status(500).json({ success: false, error: '检查失败' });
- }
- },
- generateTestData: async (req: Request, res: Response) => {
- try {
- const count = parseInt(req.query.count as string) || 100;
- const colorCodes = COLOR_MAPPING.map(c => c.code);
-
- for (let i = 0; i < count; i++) {
- const design = {
- part1: colorCodes[Math.floor(Math.random() * colorCodes.length)],
- part2: colorCodes[Math.floor(Math.random() * colorCodes.length)],
- part3: colorCodes[Math.floor(Math.random() * colorCodes.length)],
- part4: colorCodes[Math.floor(Math.random() * colorCodes.length)],
- };
- await designService.saveDesign(design);
- }
-
- res.json({ success: true, message: `已生成 ${count} 条记录` });
- } catch (error) {
- console.error('生成测试数据错误:', error);
- res.status(500).json({ success: false, error: '生成失败' });
- }
- },
- resetStatistics: async (req: Request, res: Response) => {
- try {
- await query('TRUNCATE TABLE design_usage');
- res.json({ success: true, message: '统计数据已重置' });
- } catch (error) {
- console.error('重置统计数据错误:', error);
- res.status(500).json({ success: false, error: '重置失败' });
- }
- }
- };
|