|
|
|
@ -78,8 +78,16 @@ export class FileServer extends Singleton
|
|
|
|
|
app.CreateDocument();
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
async OpenFile(fid: string, md5: string = "")
|
|
|
|
|
async GetFileMD5(fid: string): Promise<string | undefined>
|
|
|
|
|
{
|
|
|
|
|
let codeRes = await PostJson(FileUrls.preDetail, { file_id: fid });
|
|
|
|
|
if (codeRes.err_code === RequestStatus.Ok)
|
|
|
|
|
return codeRes.files.code;
|
|
|
|
|
return undefined;
|
|
|
|
|
}
|
|
|
|
|
async OpenFile(fid: string)
|
|
|
|
|
{
|
|
|
|
|
let md5 = await this.GetFileMD5(fid);
|
|
|
|
|
if (this.m_CurFileId !== fid || this.CurrentFileMd5 !== md5)
|
|
|
|
|
{
|
|
|
|
|
if (!app.Saved)
|
|
|
|
@ -120,13 +128,18 @@ export class FileServer extends Singleton
|
|
|
|
|
}
|
|
|
|
|
return [];
|
|
|
|
|
}
|
|
|
|
|
async GetFileInfo(fid: string, md5: string): Promise<{ name: string; file?: string; code: string; }>
|
|
|
|
|
async GetFileInfo(fid: string, code?: string): Promise<{ name: string; file?: string; code: string; }>
|
|
|
|
|
{
|
|
|
|
|
if (!code)
|
|
|
|
|
code = await this.GetFileMD5(fid);
|
|
|
|
|
|
|
|
|
|
if (!code) return null;
|
|
|
|
|
|
|
|
|
|
let store = await IndexedDbStore.CADStore();
|
|
|
|
|
|
|
|
|
|
let fileCache = await store.Get(StoreName.Dwg, GetIndexDBID(fid));
|
|
|
|
|
|
|
|
|
|
if (fileCache?.code === md5 && fileCache?.file)
|
|
|
|
|
if (fileCache?.code === code && fileCache?.file)
|
|
|
|
|
{
|
|
|
|
|
return fileCache;
|
|
|
|
|
}
|
|
|
|
|