From 6c00538b39eb366c04784d9e8d6f1c667809f2eb Mon Sep 17 00:00:00 2001 From: ChenX Date: Thu, 21 Feb 2019 17:51:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9url=E5=A3=B0=E6=98=8E?= =?UTF-8?q?=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Common/HostUrl.ts | 30 ++++++++++++++++++ src/Common/Request.ts | 31 ------------------- src/DatabaseServices/Texture.ts | 2 +- src/UI/Components/Asset.tsx | 3 +- src/UI/Components/MainContent/Login.tsx | 3 +- .../Components/SourceManage/MaterialList.tsx | 3 +- .../Components/SourceManage/MaterialPanel.tsx | 3 +- .../SourceManage/SerializeMaterial.ts | 3 ++ .../Components/SourceManage/TexturePanel.tsx | 3 +- src/UI/Components/SourceManage/UploadCom.tsx | 3 +- src/UI/MaterialEditor/MaterialLinkShop.tsx | 3 +- src/UI/MaterialEditor/TextureContent.tsx | 2 +- src/UI/MaterialEditor/TextureItem.tsx | 2 +- src/UI/Store/MaterialStore.ts | 9 +++--- 14 files changed, 55 insertions(+), 45 deletions(-) create mode 100644 src/Common/HostUrl.ts diff --git a/src/Common/HostUrl.ts b/src/Common/HostUrl.ts new file mode 100644 index 000000000..0c1d7079b --- /dev/null +++ b/src/Common/HostUrl.ts @@ -0,0 +1,30 @@ +export const CURRENT_HOST = "http://chenfeng.tech:7778"; +export const SignUrl = { + login: CURRENT_HOST + "/CAD-login", + loginOut: CURRENT_HOST + "/CAD-loginOut", + heart: CURRENT_HOST + "/CAD-heart", +} +export const ImgsUrl = { + get: CURRENT_HOST + "/CAD-imageList", + upload: CURRENT_HOST + "/CAD-imageUpload", + delete: CURRENT_HOST + "/CAD-imageDelete", + logo: CURRENT_HOST + "/CAD-logoUpload", +} +export const DirUrl = { + query: CURRENT_HOST + "/CAD-dirQuery", + create: CURRENT_HOST + "/CAD-dirCreate", + delete: CURRENT_HOST + "/CAD-dirDelete", + update: CURRENT_HOST + "/CAD-dirUpdate", +} + +export const MaterialUrls = { + query: CURRENT_HOST + "/CAD-materialList", + create: CURRENT_HOST + "/CAD-materialCreate", + get: CURRENT_HOST + "/CAD-materialList", + detail: CURRENT_HOST + "/CAD-materialDetail", + delete: CURRENT_HOST + "/CAD-materialDelete", +} + +export const ShopUrls = { + get: CURRENT_HOST + "/CAD-goodsList", +} diff --git a/src/Common/Request.ts b/src/Common/Request.ts index 542b37f58..c85789aee 100644 --- a/src/Common/Request.ts +++ b/src/Common/Request.ts @@ -2,37 +2,6 @@ import { TopPanelStore } from "../UI/Store/TopPanelStore"; import { AppToaster } from "../UI/Components/Toaster"; import { Intent } from "@blueprintjs/core"; -export const CURRENT_HOST = "http://chenfeng.tech:7778"; -export const SignUrl = { - login: CURRENT_HOST + "/CAD-login", - loginOut: CURRENT_HOST + "/CAD-loginOut", - heart: CURRENT_HOST + "/CAD-heart", -} -export const ImgsUrl = { - get: CURRENT_HOST + "/CAD-imageList", - upload: CURRENT_HOST + "/CAD-imageUpload", - delete: CURRENT_HOST + "/CAD-imageDelete", - logo: CURRENT_HOST + "/CAD-logoUpload", -} -export const DirUrl = { - query: CURRENT_HOST + "/CAD-dirQuery", - create: CURRENT_HOST + "/CAD-dirCreate", - delete: CURRENT_HOST + "/CAD-dirDelete", - update: CURRENT_HOST + "/CAD-dirUpdate", -} - -export const MaterialUrls = { - query: CURRENT_HOST + "/CAD-materialList", - create: CURRENT_HOST + "/CAD-materialCreate", - get: CURRENT_HOST + "/CAD-materialList", - detail: CURRENT_HOST + "/CAD-materialDetail", - delete: CURRENT_HOST + "/CAD-materialDelete", -} - -export const ShopUrls = { - get: CURRENT_HOST + "/CAD-goodsList", -} - export enum DirId { None = "", diff --git a/src/DatabaseServices/Texture.ts b/src/DatabaseServices/Texture.ts index 42ae5e7cb..496923004 100644 --- a/src/DatabaseServices/Texture.ts +++ b/src/DatabaseServices/Texture.ts @@ -1,9 +1,9 @@ import { RepeatWrapping, Texture, Wrapping } from 'three'; -import { CURRENT_HOST } from '../Common/Request'; import { LoadImageFromUrl } from '../Loader/ImageLoader'; import { Factory } from './CADFactory'; import { CADFiler } from './CADFiler'; import { SymbolTableRecord } from './SymbolTableRecord'; +import { CURRENT_HOST } from '../Common/HostUrl'; /** * 数据化的贴图类.实现了序列化. diff --git a/src/UI/Components/Asset.tsx b/src/UI/Components/Asset.tsx index 64da6f2a8..e68eb9824 100644 --- a/src/UI/Components/Asset.tsx +++ b/src/UI/Components/Asset.tsx @@ -9,8 +9,9 @@ import { MaterialRendererSingle } from '../Editor/Asset/MaterialRenderer'; import { appUi } from '../Layout/ApplicationLayout'; import { PhysicalMaterialRecord } from '../../DatabaseServices/PhysicalMaterialRecord'; import { MaterialOut, deflate } from './SourceManage/SerializeMaterial'; -import { request, ImgsUrl, RequestStatus, MaterialUrls } from '../../Common/Request'; +import { request, RequestStatus } from '../../Common/Request'; import { AppToaster } from './Toaster'; +import { ImgsUrl, MaterialUrls } from '../../Common/HostUrl'; //蓝图. const RootStyle: CSSProperties = { diff --git a/src/UI/Components/MainContent/Login.tsx b/src/UI/Components/MainContent/Login.tsx index 8ca7b63b8..b12ac6fbb 100644 --- a/src/UI/Components/MainContent/Login.tsx +++ b/src/UI/Components/MainContent/Login.tsx @@ -2,8 +2,9 @@ import { Button, InputGroup, Intent } from '@blueprintjs/core'; import { inject } from 'mobx-react'; import * as React from 'react'; import { KeyBoard } from '../../../Common/KeyEnum'; -import { request, RequestStatus, SignUrl } from '../../../Common/Request'; +import { request, RequestStatus } from '../../../Common/Request'; import { TopPanelStore } from '../../Store/TopPanelStore'; +import { SignUrl } from '../../../Common/HostUrl'; interface ILoginState { diff --git a/src/UI/Components/SourceManage/MaterialList.tsx b/src/UI/Components/SourceManage/MaterialList.tsx index 9a7855c7a..8bbf1b3fa 100644 --- a/src/UI/Components/SourceManage/MaterialList.tsx +++ b/src/UI/Components/SourceManage/MaterialList.tsx @@ -1,8 +1,9 @@ import { Button, Card, Checkbox, Classes, Intent, Popover, Position } from '@blueprintjs/core'; import { observer } from 'mobx-react'; import * as React from 'react'; -import { CURRENT_HOST, MaterialUrls, request, RequestStatus } from '../../../Common/Request'; +import { request, RequestStatus } from '../../../Common/Request'; import { inflate } from './SerializeMaterial'; +import { MaterialUrls, CURRENT_HOST } from '../../../Common/HostUrl'; export interface IImgListProps { diff --git a/src/UI/Components/SourceManage/MaterialPanel.tsx b/src/UI/Components/SourceManage/MaterialPanel.tsx index c660e0796..5669b0419 100644 --- a/src/UI/Components/SourceManage/MaterialPanel.tsx +++ b/src/UI/Components/SourceManage/MaterialPanel.tsx @@ -2,13 +2,14 @@ import { Button, Intent, MenuItem } from '@blueprintjs/core'; import { observable } from 'mobx'; import { observer } from 'mobx-react'; import * as React from 'react'; -import { DirId, MaterialUrls } from '../../../Common/Request'; +import { DirId } from '../../../Common/Request'; import { CommonPanel } from './CommonPanel'; import { MaterialList } from './MaterialList'; import './TexturePanel.less'; import { PhysicalMaterialRecord } from '../../../DatabaseServices/PhysicalMaterialRecord'; import { appUi } from '../../Layout/ApplicationLayout'; import { MaterialContainer } from '../MaterialContainer'; +import { MaterialUrls } from '../../../Common/HostUrl'; interface IMaterialProps { diff --git a/src/UI/Components/SourceManage/SerializeMaterial.ts b/src/UI/Components/SourceManage/SerializeMaterial.ts index 7e40fd404..d3ec1729c 100644 --- a/src/UI/Components/SourceManage/SerializeMaterial.ts +++ b/src/UI/Components/SourceManage/SerializeMaterial.ts @@ -2,6 +2,7 @@ import { CADFiler } from "../../../DatabaseServices/CADFiler"; import { Database } from "../../../DatabaseServices/Database"; import { PhysicalMaterialRecord } from "../../../DatabaseServices/PhysicalMaterialRecord"; import { app } from "../../../ApplicationServices/Application"; +import { DuplicateRecordCloning } from "../../../Common/Status"; export function MaterialOut(material: PhysicalMaterialRecord): string { @@ -10,6 +11,7 @@ export function MaterialOut(material: PhysicalMaterialRecord): string [material], db.MaterialTable, new Map(), + DuplicateRecordCloning.Ignore ); return JSON.stringify(db.FileWrite().Data); } @@ -23,6 +25,7 @@ export function MaterialIn(fileData: Object[]) [db.MaterialTable.Symbols.entries().next().value[1]], app.m_Database.MaterialTable, new Map(), + DuplicateRecordCloning.Rename ); } diff --git a/src/UI/Components/SourceManage/TexturePanel.tsx b/src/UI/Components/SourceManage/TexturePanel.tsx index 7af841bd6..29289323e 100644 --- a/src/UI/Components/SourceManage/TexturePanel.tsx +++ b/src/UI/Components/SourceManage/TexturePanel.tsx @@ -2,11 +2,12 @@ import { Button, Intent, MenuItem } from '@blueprintjs/core'; import { observable } from 'mobx'; import { inject, observer } from 'mobx-react'; import * as React from 'react'; -import { DirId, ImgsUrl } from '../../../Common/Request'; +import { DirId } from '../../../Common/Request'; import { MaterialStore } from '../../Store/MaterialStore'; import { CommonPanel } from './CommonPanel'; import { ImgList } from './ImgList'; import { UploadComponent } from './UploadCom'; +import { ImgsUrl } from '../../../Common/HostUrl'; interface ITexturePanelState { diff --git a/src/UI/Components/SourceManage/UploadCom.tsx b/src/UI/Components/SourceManage/UploadCom.tsx index 6ee86500a..483a9098d 100644 --- a/src/UI/Components/SourceManage/UploadCom.tsx +++ b/src/UI/Components/SourceManage/UploadCom.tsx @@ -2,9 +2,10 @@ import { Button, Classes, Dialog, H5, Intent, Label, ProgressBar } from '@bluepr import { IObservableValue, observable } from 'mobx'; import { observer } from 'mobx-react'; import * as React from 'react'; -import { ImgsUrl, request, RequestStatus } from '../../../Common/Request'; +import { request, RequestStatus } from '../../../Common/Request'; import { FixedNotZero } from '../../../Common/Utils'; import { AppToaster } from '../Toaster'; +import { ImgsUrl } from '../../../Common/HostUrl'; interface IUploadProps { diff --git a/src/UI/MaterialEditor/MaterialLinkShop.tsx b/src/UI/MaterialEditor/MaterialLinkShop.tsx index f7c20cc3b..ba9e25ca3 100644 --- a/src/UI/MaterialEditor/MaterialLinkShop.tsx +++ b/src/UI/MaterialEditor/MaterialLinkShop.tsx @@ -2,8 +2,9 @@ import { Button, Classes, Icon, InputGroup, Intent } from "@blueprintjs/core"; import { observable } from "mobx"; import { inject, observer } from "mobx-react"; import * as React from "react"; -import { request, RequestStatus, ShopUrls } from "../../Common/Request"; +import { request, RequestStatus } from "../../Common/Request"; import { MaterialStore } from "../Store/MaterialStore"; +import { ShopUrls } from "../../Common/HostUrl"; interface ICreateMaterialState { showShops: boolean; diff --git a/src/UI/MaterialEditor/TextureContent.tsx b/src/UI/MaterialEditor/TextureContent.tsx index 8f89bfe3f..0cb72aa58 100644 --- a/src/UI/MaterialEditor/TextureContent.tsx +++ b/src/UI/MaterialEditor/TextureContent.tsx @@ -1,7 +1,6 @@ import * as React from 'react'; import { observer, inject } from 'mobx-react'; import { MaterialStore } from '../Store/MaterialStore'; -import { CURRENT_HOST } from '../../Common/Request'; import { getThumbsUrl } from '../../Common/Utils'; import { ITextureEditorProps } from './TextureList'; import { observable } from 'mobx'; @@ -9,6 +8,7 @@ import { TextureTableRecord } from '../../DatabaseServices/Texture'; import { Card, Popover, Position, Button, Intent, Classes } from '@blueprintjs/core'; import { MaterialEditorContent } from './MaterialEditorContent'; import { app } from '../../ApplicationServices/Application'; +import { CURRENT_HOST } from '../../Common/HostUrl'; export interface ITextureContentProps { diff --git a/src/UI/MaterialEditor/TextureItem.tsx b/src/UI/MaterialEditor/TextureItem.tsx index 2dca730a9..7f7375951 100644 --- a/src/UI/MaterialEditor/TextureItem.tsx +++ b/src/UI/MaterialEditor/TextureItem.tsx @@ -3,11 +3,11 @@ import { inject, observer } from "mobx-react"; import * as React from "react"; import { ClampToEdgeWrapping, MirroredRepeatWrapping, RepeatWrapping } from "three"; import { app } from "../../ApplicationServices/Application"; -import { CURRENT_HOST } from "../../Common/Request"; import { TextureTableRecord } from "../../DatabaseServices/Texture"; import { MaterialStore } from "../Store/MaterialStore"; import { TextureStore } from "../Store/TextureStore"; import { Check, Input, Select } from "./MaterialCommon"; +import { CURRENT_HOST } from "../../Common/HostUrl"; const PromptStyle: React.CSSProperties = { alignSelf: "center", width: 60 }; const SpanStyle: React.CSSProperties = { alignSelf: "center", width: 20 }; diff --git a/src/UI/Store/MaterialStore.ts b/src/UI/Store/MaterialStore.ts index 411edce25..91fda2297 100644 --- a/src/UI/Store/MaterialStore.ts +++ b/src/UI/Store/MaterialStore.ts @@ -1,16 +1,17 @@ +import { Intent } from "@blueprintjs/core"; import { action, autorun, observable } from "mobx"; import { end } from "xaop"; import { app } from "../../ApplicationServices/Application"; +import { ShopUrls } from "../../Common/HostUrl"; +import { request, RequestStatus } from "../../Common/Request"; import { Singleton } from "../../Common/Singleton"; import { ObjectId } from "../../DatabaseServices/ObjectId"; import { PhysicalMaterialRecord } from "../../DatabaseServices/PhysicalMaterialRecord"; import { TextureTableRecord } from "../../DatabaseServices/Texture"; import { MaterialEditor } from "../../Editor/MaterialEditor"; -import { TextureStore } from "./TextureStore"; -import { AppToaster } from "../Components/Toaster"; -import { Intent } from "@blueprintjs/core"; import { IDirProps } from "../Components/SourceManage/CommonPanel"; -import { request, ShopUrls, RequestStatus } from "../../Common/Request"; +import { AppToaster } from "../Components/Toaster"; +import { TextureStore } from "./TextureStore"; export class MaterialStore extends Singleton {