From 291f2a65ad3d8a089bb1a9ad1d08dd5a722d8d00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E8=AF=97=E6=B4=A5?= <2723065175@qq.com> Date: Fri, 5 Nov 2021 03:05:16 +0000 Subject: [PATCH] =?UTF-8?q?!1679=20=E5=8A=9F=E8=83=BD:=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E6=9D=BF=E4=BB=B6=E5=90=8D=E4=BF=AE=E6=94=B9=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BF=AE=E6=94=B9=E6=9D=BF=E4=BB=B6=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Add-on/BoardEditor/UpdateBoardInfos.ts | 26 +++++++-- src/Common/BoardKeyList.ts | 1 + src/Editor/DefaultConfig.ts | 2 + .../Board/UpdateBoardInfointerface.ts | 4 +- src/UI/Components/Board/UpdateBoardInfos.tsx | 57 +++++++++++++------ src/UI/Store/UpdateBoardInfoStore.ts | 12 ++-- 6 files changed, 73 insertions(+), 29 deletions(-) diff --git a/src/Add-on/BoardEditor/UpdateBoardInfos.ts b/src/Add-on/BoardEditor/UpdateBoardInfos.ts index f77272e75..d6b29814c 100644 --- a/src/Add-on/BoardEditor/UpdateBoardInfos.ts +++ b/src/Add-on/BoardEditor/UpdateBoardInfos.ts @@ -1,14 +1,16 @@ -import { Command } from "../../Editor/CommandMachine"; +import { Intent } from "@blueprintjs/core"; +import { toJS } from "mobx"; import { app } from "../../ApplicationServices/Application"; -import { UpdateBoardInfoModal } from "../../UI/Components/Board/UpdateBoardInfos"; -import { updateBoardInfoStore } from "../../UI/Store/UpdateBoardInfoStore"; +import { EBoardKeyList } from "../../Common/BoardKeyList"; import { Board } from "../../DatabaseServices/Entity/Board"; +import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; +import { InitRectBoardDrillOption, SetRectHighDrill } from "../../UI/Components/Board/CommonBoardOption"; import { IUpdateBoardInfosOption } from "../../UI/Components/Board/UpdateBoardInfointerface"; -import { EBoardKeyList } from "../../Common/BoardKeyList"; +import { UpdateBoardInfoModal } from "../../UI/Components/Board/UpdateBoardInfos"; +import { AppToaster } from "../../UI/Components/Toaster"; import { DRILL_KEYS } from "../../UI/Store/BoardFindInterface"; -import { toJS } from "mobx"; -import { InitRectBoardDrillOption, SetRectHighDrill } from "../../UI/Components/Board/CommonBoardOption"; +import { updateBoardInfoStore } from "../../UI/Store/UpdateBoardInfoStore"; //根据板件名改属性 export class UpdateBoardInfos implements Command @@ -68,6 +70,18 @@ export class UpdateBoardInfos implements Command br.BoardProcessOption[i] = option[i]; br.BoardProcessOption.highDrill.fill(option[i]); break; + case EBoardKeyList.BrName: + if (option[i]) + br.Name = option[i]; + else + { + AppToaster.show({ + message: "要修改的板件名不能为空", + timeout: 3000, + intent: Intent.WARNING, + }); + } + break; case EBoardKeyList.RoomName: case EBoardKeyList.CabinetName: case EBoardKeyList.Lines: diff --git a/src/Common/BoardKeyList.ts b/src/Common/BoardKeyList.ts index a696895e1..061bc1725 100644 --- a/src/Common/BoardKeyList.ts +++ b/src/Common/BoardKeyList.ts @@ -7,6 +7,7 @@ export enum EBoardKeyList Thick = "thickness", RoomName = "roomName", CabinetName = "cabinetName", + BrName = "brName", BrMat = "boardName", //板材 Mat = "material", //材料 Color = "color", diff --git a/src/Editor/DefaultConfig.ts b/src/Editor/DefaultConfig.ts index 0d6569494..293fb1b61 100644 --- a/src/Editor/DefaultConfig.ts +++ b/src/Editor/DefaultConfig.ts @@ -659,6 +659,7 @@ Object.freeze(DefaultCurve2RecOption); export const DefaultUpdateInfoOption: IUpdateBoardInfosOption = { version: 1, + [EBoardKeyList.BrName]: "", [EBoardKeyList.RoomName]: "", [EBoardKeyList.CabinetName]: "", [EBoardKeyList.Lines]: LinesType.Positive, @@ -681,6 +682,7 @@ export const DefaultUpdateInfoOption: IUpdateBoardInfosOption = { highDrill: [], isChaiDan: true, condition: { + [EBoardKeyList.BrName]: false, [EBoardKeyList.RoomName]: false, [EBoardKeyList.CabinetName]: false, [EBoardKeyList.Lines]: true, diff --git a/src/UI/Components/Board/UpdateBoardInfointerface.ts b/src/UI/Components/Board/UpdateBoardInfointerface.ts index 112cac41f..0d205a9e2 100644 --- a/src/UI/Components/Board/UpdateBoardInfointerface.ts +++ b/src/UI/Components/Board/UpdateBoardInfointerface.ts @@ -1,9 +1,10 @@ import { EBoardKeyList } from "../../../Common/BoardKeyList"; -import { LinesType, FaceDirection, ComposingType, IBaseOption } from "../../Store/BoardInterface"; +import { ComposingType, FaceDirection, IBaseOption, LinesType } from "../../Store/BoardInterface"; export interface IUpdateBoardInfosOption extends IBaseOption { condition: IUpdateInfoCondition; + [EBoardKeyList.BrName]: string; [EBoardKeyList.RoomName]: string; [EBoardKeyList.CabinetName]: string; [EBoardKeyList.Lines]: LinesType; @@ -29,6 +30,7 @@ export interface IUpdateBoardInfosOption extends IBaseOption export interface IUpdateInfoCondition { + [EBoardKeyList.BrName]: boolean; [EBoardKeyList.RoomName]: boolean; [EBoardKeyList.CabinetName]: boolean; [EBoardKeyList.Lines]: boolean; diff --git a/src/UI/Components/Board/UpdateBoardInfos.tsx b/src/UI/Components/Board/UpdateBoardInfos.tsx index f6ac49ab9..ce1093d42 100644 --- a/src/UI/Components/Board/UpdateBoardInfos.tsx +++ b/src/UI/Components/Board/UpdateBoardInfos.tsx @@ -1,27 +1,27 @@ +import { Button, Card, Checkbox, Classes, HTMLSelect, Intent, Position } from '@blueprintjs/core'; +import { toJS } from 'mobx'; +import { observer } from 'mobx-react'; import * as React from 'react'; -import { CommonModal } from '../Modal/ModalContainer'; -import { app } from '../../../ApplicationServices/Application'; import { hot } from 'react-hot-loader/root'; -import { UpdateBoardInfosStore } from '../../Store/UpdateBoardInfoStore'; -import { Notes } from './BoardCommon'; -import { Checkbox, H5, Classes, Button, Intent, HTMLSelect, Card, Position } from '@blueprintjs/core'; -import { InputSelect } from '../Common'; +import { app } from '../../../ApplicationServices/Application'; import { EBoardKeyList } from '../../../Common/BoardKeyList'; -import { LineTypeSelectOption, BigFaceSelectOption, ComposingFaceSelectOption } from '../../../Common/CommonSelectOption'; -import { userConfig } from '../../../Editor/UserConfig'; -import { observer } from 'mobx-react'; -import { ToasterInput } from '../Toaster'; import { CheckObjectType } from '../../../Common/CheckoutVaildValue'; -import { BoardModalType } from './BoardModal'; -import { ModalState } from '../Modal/ModalInterface'; -import { toJS } from 'mobx'; -import { CommandWrap } from '../../../Editor/CommandMachine'; +import { BigFaceSelectOption, ComposingFaceSelectOption, LineTypeSelectOption } from '../../../Common/CommonSelectOption'; import { Board } from '../../../DatabaseServices/Entity/Board'; +import { CommandWrap } from '../../../Editor/CommandMachine'; import { PromptStatus } from '../../../Editor/PromptResult'; -import { MatColorCom, SealDrillCom } from './BoardFindCommon'; -import { InitRectBoardDrillOption } from './CommonBoardOption'; +import { userConfig } from '../../../Editor/UserConfig'; import { DrillType } from '../../Store/BoardInterface'; +import { UpdateBoardInfosStore } from '../../Store/UpdateBoardInfoStore'; +import { InputSelect } from '../Common'; import { PopoverButton } from '../Common/PopoverButton'; +import { CommonModal } from '../Modal/ModalContainer'; +import { ModalState } from '../Modal/ModalInterface'; +import { ToasterInput } from '../Toaster'; +import { Notes } from './BoardCommon'; +import { MatColorCom, SealDrillCom } from './BoardFindCommon'; +import { BoardModalType } from './BoardModal'; +import { InitRectBoardDrillOption } from './CommonBoardOption'; export interface IUpdateBoardInfoModalProps { @@ -98,6 +98,24 @@ export class UpdateBoardInfoModal extends React.Component
+
+ condition[EBoardKeyList.BrName] = !condition[EBoardKeyList.BrName]} + /> + option[EBoardKeyList.BrName] = e.target.value} + /> +