| 1234567891011121314151617181920212223242526 |
- const { chromium } = require('playwright');
- (async () => {
- const browser = await chromium.launch({ headless: true, executablePath: 'C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe' });
- const page = await browser.newPage({ viewport: { width: 1440, height: 1000 } });
- const errors = [];
- page.on('pageerror', error => errors.push(error.message));
- await page.goto('http://127.0.0.1:8931/AI%E5%BF%AB%E9%80%9F%E6%8A%A5%E4%BB%B7_Demo2.html?v=kitchen-formula-test', { waitUntil: 'load' });
- const result = await page.evaluate(() => {
- const calc = (name, count) => qCalculateKitchenItem(name, 5, 2, count || 0);
- const names = ['地柜','吊柜','冰箱吊柜','高柜','见光板','台面','台面超出部分','碗篮','锅篮','自弹','切角','台下盆','包管'];
- const calculations = Object.fromEntries(names.map(name => [name, calc(name, 2)]));
- return {
- calculations,
- minimumMeter: {
- baseAt3m: qCalculateKitchenItem('地柜', 3, 2, 0),
- wallAt2m: qCalculateKitchenItem('吊柜', 2, 2, 0),
- countertopOverAt3m: qCalculateKitchenItem('台面超出部分', 3, 2, 0)
- },
- configured: DEFAULT_RULES.kitchen.map(rule => ({ name: rule.name, method: rule.method, value: Number(rule.value), unit: rule.unit })),
- legacy: DEFAULT_RULES.kitchen.filter(rule => /11199|3733|基础套餐|超3米/.test(rule.name + rule.value)).map(rule => rule.name)
- };
- });
- console.log(JSON.stringify({ ...result, errors }));
- await browser.close();
- })().catch(error => { console.error(error); process.exit(1); });
|