开发:修复过度依赖导致测试失败

pull/2449/head
ChenX 11 months ago
parent c080c6b465
commit bee8b06f4d

@ -527,7 +527,7 @@ CADDbBoard {
0.9999999999999999, 0.9999999999999999,
0, 0,
], ],
"CabName": "主卧", "CabName": "下柜",
"Drillings": null, "Drillings": null,
"Grain": 0, "Grain": 0,
"H": 18, "H": 18,
@ -803,7 +803,7 @@ CADDbBoard {
0, 0,
0, 0,
], ],
"CabName": "主卧", "CabName": "下柜",
"Drillings": null, "Drillings": null,
"Grain": 0, "Grain": 0,
"H": 18, "H": 18,

@ -22,6 +22,7 @@ import { AppToaster } from "../../UI/Components/Toaster";
import { BoardStore } from "../../UI/Store/BoardStore"; import { BoardStore } from "../../UI/Store/BoardStore";
import { Purge } from "../Purge"; import { Purge } from "../Purge";
import { blockBuilder, objectBuilder } from './CheckBuilder'; import { blockBuilder, objectBuilder } from './CheckBuilder';
import { ErpGroupBy } from "./ErpGroupBy";
import { ErpView } from "./ErpView"; import { ErpView } from "./ErpView";
import { ExceedMind } from "./ExceedBlocksMind"; import { ExceedMind } from "./ExceedBlocksMind";
import { OrderDataBlock, WaveType } from "./Models/CadBlock"; import { OrderDataBlock, WaveType } from "./Models/CadBlock";
@ -541,24 +542,6 @@ function checkBoxSize(blockList: OrderDataBlock[]): { result: boolean, warnMsg:
}; };
return { result: true, warnMsg: msg }; return { result: true, warnMsg: msg };
} }
export function groupBy(data: any[], fileds: string[])
{
let groupList = {};
let groupArray = [];
for (const item of data)
{
let keyList = fileds.map(field => item[field]);
let key = keyList.join("-");
groupList[key] = groupList[key] || [];
groupList[key].push(item);
groupList[key].keyList = keyList;
}
for (const key in groupList)
{
groupArray.push({ key, keyList: groupList[key].keyList, value: groupList[key] });
}
return groupArray.sort();
}
//获取房间柜体分组Entitys图纸 //获取房间柜体分组Entitys图纸
function getBoxFiles(entitys: Entity[]) function getBoxFiles(entitys: Entity[])
{ {
@ -569,7 +552,7 @@ function getBoxFiles(entitys: Entity[])
if (t instanceof HardwareTopline || t instanceof HardwareCompositeEntity) if (t instanceof HardwareTopline || t instanceof HardwareCompositeEntity)
return { roomName: t.HardwareOption.roomName || '未命名', boxName: t.HardwareOption.cabinetName || '未命名', entity: t }; return { roomName: t.HardwareOption.roomName || '未命名', boxName: t.HardwareOption.cabinetName || '未命名', entity: t };
}); });
const groupList = groupBy(list, ['roomName', 'boxName']); const groupList = ErpGroupBy(list, ['roomName', 'boxName']);
let boxFileList = []; let boxFileList = [];
for (const g of groupList) for (const g of groupList)
{ {

@ -0,0 +1,18 @@
export function ErpGroupBy(data: any[], fileds: string[])
{
let groupList = {};
let groupArray = [];
for (const item of data)
{
let keyList = fileds.map(field => item[field]);
let key = keyList.join("-");
groupList[key] = groupList[key] || [];
groupList[key].push(item);
groupList[key].keyList = keyList;
}
for (const key in groupList)
{
groupArray.push({ key, keyList: groupList[key].keyList, value: groupList[key] });
}
return groupArray.sort();
}

@ -18,16 +18,16 @@ import { EMetalsType } from "../../UI/Components/RightPanel/RightPanelInterface"
import { ISealingData } from "../../UI/Store/OptionInterface/IHighSealedItem"; import { ISealingData } from "../../UI/Store/OptionInterface/IHighSealedItem";
import { FaceDirection } from "../DrawDrilling/DrillType"; import { FaceDirection } from "../DrawDrilling/DrillType";
// import { DownPanelStore } from "../../UI/Store/DownPanelStore"; // import { DownPanelStore } from "../../UI/Store/DownPanelStore";
import { HostApplicationServices } from "../../ApplicationServices/HostApplicationServices";
import { InteractionLog, LogType } from "../../Common/Log"; import { InteractionLog, LogType } from "../../Common/Log";
import { Intent, Toaster } from "../../Common/Toaster"; import { Intent, Toaster } from "../../Common/Toaster";
import { Entity } from "../../DatabaseServices/Entity/Entity"; import { Entity } from "../../DatabaseServices/Entity/Entity";
import { userConfig } from "../../Editor/UserConfig";
import { GetCountOption, ICountType, lookOverBoardInfosTool } from "../LookOverBoardInfos/LookOverBoardInfosTool"; import { GetCountOption, ICountType, lookOverBoardInfosTool } from "../LookOverBoardInfos/LookOverBoardInfosTool";
import { HardwareCompositeEntity } from './../../DatabaseServices/Hardware/HardwareCompositeEntity'; import { HardwareCompositeEntity } from './../../DatabaseServices/Hardware/HardwareCompositeEntity';
import { ProcessingGroupRecord } from './../../DatabaseServices/ProcessingGroup/ProcessingGroupRecord'; import { ProcessingGroupRecord } from './../../DatabaseServices/ProcessingGroup/ProcessingGroupRecord';
import { TemplateLatticeRecord } from './../../DatabaseServices/Template/ProgramTempate/TemplateLatticeRecord'; import { TemplateLatticeRecord } from './../../DatabaseServices/Template/ProgramTempate/TemplateLatticeRecord';
import { TemplateWineRackRecord } from './../../DatabaseServices/Template/ProgramTempate/TemplateWineRackRecord'; import { TemplateWineRackRecord } from './../../DatabaseServices/Template/ProgramTempate/TemplateWineRackRecord';
import { groupBy } from "./ErpCommands"; import { ErpGroupBy } from "./ErpGroupBy";
import { GetArray, GetPointInfoArray } from "./Models/ArrayHelper"; import { GetArray, GetPointInfoArray } from "./Models/ArrayHelper";
import { CadType, OrderDataBlock, WaveType } from "./Models/CadBlock"; import { CadType, OrderDataBlock, WaveType } from "./Models/CadBlock";
import { BasePosition, CadBlockHoles, CadBlockInfo, CadBlockModel, CadBlockModelPoint, CadBlockPoint, FaceType, HoleType, ModelOffSetData } from "./Models/CadBlockInfo"; import { BasePosition, CadBlockHoles, CadBlockInfo, CadBlockModel, CadBlockModelPoint, CadBlockPoint, FaceType, HoleType, ModelOffSetData } from "./Models/CadBlockInfo";
@ -769,7 +769,7 @@ export class ErpParseData
{ {
return { roomName: t.BoardProcessOption.roomName || '未命名', boxName: t.BoardProcessOption.cabinetName || '未命名', board: t }; return { roomName: t.BoardProcessOption.roomName || '未命名', boxName: t.BoardProcessOption.cabinetName || '未命名', board: t };
}); });
let groupList = groupBy(list, ['roomName', 'boxName']); let groupList = ErpGroupBy(list, ['roomName', 'boxName']);
let options: GetCountOption = { let options: GetCountOption = {
getHoles: (name: string, hole: CylinderHole) => getHoles: (name: string, hole: CylinderHole) =>
{ {
@ -800,7 +800,7 @@ export class ErpParseData
{ {
let holeList = holeMap.get(name); let holeList = holeMap.get(name);
let groupList = groupBy(holeList.map(t => t.GroupId), ['Index']); let groupList = ErpGroupBy(holeList.map(t => t.GroupId), ['Index']);
for (const g of groupList) for (const g of groupList)
{ {
let spec = ''; let spec = '';
@ -844,7 +844,7 @@ export class ErpParseData
specList.push({ spec }); specList.push({ spec });
} }
} }
let sGroupList = groupBy(specList, ['spec']); let sGroupList = ErpGroupBy(specList, ['spec']);
return sGroupList.map(t => { return { spec: t.key, count: t.value.length }; }); return sGroupList.map(t => { return { spec: t.key, count: t.value.length }; });
}; };
for (const g of groupList) for (const g of groupList)
@ -885,11 +885,11 @@ export class ErpParseData
UpdateBoardDrillRemark(spliteData: ISpliteOrderData) UpdateBoardDrillRemark(spliteData: ISpliteOrderData)
{ {
if (userConfig.chaidanOption.drillRemark === false) return; if (HostApplicationServices.chaidanOption.drillRemark === false) return;
const fun = (holes: IDrillingOption[], frontOrSide: FrontOrSide) => const fun = (holes: IDrillingOption[], frontOrSide: FrontOrSide) =>
{ {
const holeList = holes.map(t => { return { name: t.type == (GangDrillType.Wood || t.type == GangDrillType.WoodPXL) ? '木销' : t.name, type: t.type, face: t.face }; }); const holeList = holes.map(t => { return { name: t.type == (GangDrillType.Wood || t.type == GangDrillType.WoodPXL) ? '木销' : t.name, type: t.type, face: t.face }; });
let groupList = groupBy(holeList, ['name', 'type', 'face']); let groupList = ErpGroupBy(holeList, ['name', 'type', 'face']);
let infos: { name: string, type: string, face: string, count: number; }[] = []; let infos: { name: string, type: string, face: string, count: number; }[] = [];
for (const g of groupList) for (const g of groupList)
{ {

Loading…
Cancel
Save