@gsp-svc/formdoc-upload 0.1.27 → 0.1.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/gsp-svc-formdoc-upload.umd.js +190 -23
- package/bundles/gsp-svc-formdoc-upload.umd.js.map +1 -1
- package/bundles/gsp-svc-formdoc-upload.umd.min.js +1 -1
- package/bundles/gsp-svc-formdoc-upload.umd.min.js.map +1 -1
- package/esm2015/gsp-svc-formdoc-upload.js +2 -1
- package/esm2015/lib/formdoc-upload.module.js +8 -3
- package/esm2015/lib/i18n/language.resource.js +116 -0
- package/esm2015/lib/local.pipe.js +48 -0
- package/esm2015/lib/upload/file-upload/file-upload.component.js +30 -16
- package/esm2015/lib/upload/upload.module.js +9 -4
- package/esm2015/lib/uploaddialog.service.js +18 -8
- package/esm5/gsp-svc-formdoc-upload.js +2 -1
- package/esm5/lib/formdoc-upload.module.js +8 -3
- package/esm5/lib/i18n/language.resource.js +116 -0
- package/esm5/lib/local.pipe.js +51 -0
- package/esm5/lib/upload/file-upload/file-upload.component.js +30 -16
- package/esm5/lib/upload/upload.module.js +9 -4
- package/esm5/lib/uploaddialog.service.js +18 -8
- package/fesm2015/gsp-svc-formdoc-upload.js +188 -26
- package/fesm2015/gsp-svc-formdoc-upload.js.map +1 -1
- package/fesm5/gsp-svc-formdoc-upload.js +190 -26
- package/fesm5/gsp-svc-formdoc-upload.js.map +1 -1
- package/gsp-svc-formdoc-upload.d.ts +1 -0
- package/gsp-svc-formdoc-upload.metadata.json +1 -1
- package/lib/i18n/language.resource.d.ts +110 -0
- package/lib/local.pipe.d.ts +8 -0
- package/lib/upload/file-upload/file-upload.component.d.ts +6 -0
- package/lib/uploaddialog.service.d.ts +3 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.service.ts","ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.component.ts","ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.module.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/doctype.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformdocinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/operatingmodes.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformremovelistentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformdocoperateentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/changeinstancerequest.ts","ng://@gsp-svc/formdoc-upload/lib/upload/upload.service.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/uploadfileinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformuploadentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/extensionstoragefileinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/filestate.ts","ng://@gsp-svc/formdoc-upload/lib/upload/file-upload/file-upload.component.ts","ng://@gsp-svc/formdoc-upload/lib/upload/download.service.ts","ng://@gsp-svc/formdoc-upload/lib/upload/upload.module.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog/uploaddialog/uploaddialog.component.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog.service.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog/uploaddialog.module.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/uploadlimit.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformuploadlistentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspdocmetaproperty.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/fileinfo.ts"],"names":["FormdocUploadService","Injectable","args","providedIn","FormdocUploadComponent","prototype","ngOnInit","Component","selector","template","FormdocUploadModule","NgModule","declarations","imports","exports","Word","Excel","Powerpoint","Pdf","Txt","Image","Other","GspFormDocInfo","Formal","Temp","GspFormRemoveListEntity","GspFormDocOperateEntity","ChangeInstanceRequest","UploadService","http","this","uploadList","docListInfo","rootId","post","pipe","tap","res","catchError","error","of","commit","metadataIdList","entity","cancel","put","removeList","idList","idListInfo","mode","OperatingModes","delete","getFile","metadataId","url","get","uploadFile","docInfo","getStorageExtensionInfo","changeStorageInstance","storageInfoList","request","fileInfoList","getUploadedFileInfoList","formId","getRootSetting","HttpService","UploadFileInfo","GspFormUploadEntity","ExStorageFileInfo","New","Update","FileUploadComponent","msgService","uploadService","loadService","injector","files","uploadFileInfoList","errFileList","errTypeList","nullFileList","showType","mouseOn","bufferSize","selectedFileCount","uploadIconAddress","uploadLittleIconAddress","hasSelectedFile","fileAllSelected","uploadProcess","width","fileTotalChunk","requestArray","Array","requestBodyArray","uploadedChunk","uploadedProcess","defaultPropertyName","propertiesNames","queueListStyle","dropListValue","uploadedFileTotal","haveExtensionProperty","uploadedFileInfoList","oldUploadedFileList","sameNameAllowed","fileType","fileCount","oldIdList","exStorageFileList","_this","subscribe","storageExtension","push","id","name","i_1","extensionPropertyNameList","forEach","element","toString","JSON","parse","stringify","length","fileSelected","$event","loading","show","message","selectedFiles","document","querySelector","selectedNum","warning","i","selectedFile","this_1","uuid","UUID","find","x","fileName","msg_1","initialState","buttons","text","cls","handle","newName","oldName","flag","substring","lastIndexOf","close","FileState","splice","indexOf","filter","size","name_1","listToString","name_2","slice","target","value","showErrorMessage","file","errorMessage","state","fileInfo","type","source","getFileSize","fileSize","picListDisplayName","getPicListDisplayName","queueListDisplayName","getQueueDisplayName","hasUploaded","selectd","isUploading","uploadResult","extensionDropListId","extensionName","chunkTotal","Math","ceil","chunkIndex","uploadFileInfo","uploadInfo","this_2","total","nextSize","min","fileData","reader","FileReader","readAsBinaryString","innerIndex","onload","fileContent","btoa","result","index","exPropertyName","info","Message","Number","parseInt","toFixed","concat","includes","addDocInfo","DocType","selectAllFile","checkoutSelectFile","listDeleteFile","listMultipleDeleteFile","getElementById","checked","metadataList","allBox","selectdFile","docType","reader_1","readAsDataURL","_event","imgUrl","sanitizer","DomSanitizer","bypassSecurityTrustResourceUrl","strList","typeChange","data","exStorageFileInfo","findIndex","upload","loading_1","map","getUploadFileInfoList","showByGroup","showByList","mouseOver","mouseOut","MessagerService","LoadingService","Injector","Input","ViewChild","DownloadService","getDownloadUrl","getToken","mergeString","getMultipleDownloadUrl","list","getMultipleDownloadUrlWithName","zipName","endsWith","encodeURIComponent","getHistoryDownloadUrl","version","str","str1","array","floor","str2","str3","randomArray","random","timeStamp","round","Date","getTime","switchStr","UploadModule","CommonModule","ButtonsModule","NotifyModule","MessagerModule","forRoot","LoadingModule","ProgressModule","FormsModule","ComboListModule","entryComponents","providers","ɵa","UploadDialogComponent","modalService","showDialog","dlg","title","height","iconCls","fileUpload","showButtons","content","BsModalService","UploadDialogService","componentFactoryResolver","Promise","resolve","viewerRef","resolveComponentFactory","create","instance","showMaxButton","beforeClose","uploadFileWithLimit","limit","uploadRef","ComponentFactoryResolver","UploadDialogMoudle","FarrisDialogModule","HttpClientModule","UploadLimit","GspFormUploadListEntity","GspDocMetaProperty","FileInfo"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FormdocUploadService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-formdoc-upload',\n template: `\n <p>\n formdoc-upload works!\n </p>\n `,\n styles: []\n})\nexport class FormdocUploadComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { FormdocUploadComponent } from './formdoc-upload.component';\n\n\n@NgModule({\n declarations: [FormdocUploadComponent],\n imports: [\n ],\n exports: [FormdocUploadComponent]\n})\nexport class FormdocUploadModule { }\n","export enum DocType{\r\n Word,\r\n Excel,\r\n Powerpoint,\r\n Pdf,\r\n Txt,\r\n Image,\r\n Other\r\n}","import { GspDocMetaProperty } from './gspdocmetaproperty';\r\n\r\nexport class GspFormDocInfo {\r\n public metadataId: string;\r\n public fileName: string;\r\n public fileContent: string;\r\n public index: number;\r\n public total: number;\r\n public exPropertyName: string;\r\n public extProperty: GspDocMetaProperty;\r\n}","export enum OperatingModes{\r\n Formal,\r\n Temp\r\n}","import { OperatingModes } from \"./operatingmodes\";\r\n\r\nexport class GspFormRemoveListEntity {\r\n public metadataIdList: string[];\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n}","export class GspFormDocOperateEntity {\r\n public metadataIdList: string[];\r\n public rootId: string;\r\n}","import { ExStorageFileInfo } from './extensionstoragefileinfo';\r\n\r\nexport class ChangeInstanceRequest {\r\n public fileInfoList: ExStorageFileInfo[];\r\n public rootId: string;\r\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { GspFormUploadListEntity } from './entity/gspformuploadlistentity';\nimport { HttpService } from '@ecp-caf/caf-common';\nimport { catchError, tap } from 'rxjs/operators';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { GspFormRemoveListEntity } from './entity/gspformremovelistentity';\nimport { of } from 'rxjs/observable/of';\nimport { GspFormDocOperateEntity } from './entity/gspformdocoperateentity';\n\nimport { GspFormUploadEntity } from './entity/gspformuploadentity';\nimport { ExStorageFileInfo } from './entity/extensionstoragefileinfo';\nimport { ChangeInstanceRequest } from './entity/changeinstancerequest';\nimport { OperatingModes } from './entity/operatingmodes';\n\n\n\n@Injectable()\nexport class UploadService {\n\n constructor(private http: HttpService) { }\n\n uploadList(docListInfo: GspFormUploadListEntity, rootId: string): Observable<any> {\n let url;\n docListInfo.rootId = rootId;\n\n url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.post(url, docListInfo).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n commit(metadataIdList: string[], rootId: string): Observable<any> {\n let url;\n let entity: GspFormDocOperateEntity = new GspFormDocOperateEntity;\n entity.metadataIdList = metadataIdList;\n entity.rootId = rootId;\n url = \"/api/runtime/dfs/v1.0/formdoc/commit\";\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/commit\";\n\n return this.http.post(url, entity).pipe();\n }\n\n cancel(metadataIdList: string[], rootId: string): Observable<any> {\n let url;\n let entity: GspFormDocOperateEntity = new GspFormDocOperateEntity;\n entity.metadataIdList = metadataIdList;\n entity.rootId = rootId;\n url = \"/api/runtime/dfs/v1.0/formdoc/cancel\";\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/cancel\";\n //localStorage.setItem(\"SessionId\",\"huoliang\");\n return this.http.put(url, entity).pipe();\n }\n\n removeList(idList: string[], rootId: string) {\n let url;\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/list\";\n url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n var idListInfo = new GspFormRemoveListEntity;\n idListInfo.metadataIdList = idList;\n idListInfo.mode = OperatingModes.Temp;\n idListInfo.rootId = rootId;\n return this.http.delete(url, idListInfo).pipe();\n }\n\n getFile(metadataId: string, rootId: string) {\n\n let url;\n if (rootId == \"\")\n url = \"/api/runtime/dfs/v1.0/formdoc/file/\" + metadataId;\n else\n url = \"/api/runtime/dfs/v1.0/formdoc/file/\" + metadataId + \"/\" + rootId;\n return this.http.get(url).pipe(tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n\n }\n\n uploadFile(docInfo: GspFormUploadEntity): Observable<any> {\n\n let url = \"/api/runtime/dfs/v1.0/formdoc\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.post(url, docInfo).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n getStorageExtensionInfo(): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/storagestrategy/extension\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n changeStorageInstance(storageInfoList: ExStorageFileInfo[], rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/formdoc/changeinstance\";\n let request: ChangeInstanceRequest = new ChangeInstanceRequest;\n request.fileInfoList = storageInfoList;\n request.rootId = rootId;\n return this.http.post(url, request).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n getUploadedFileInfoList(formId: string, rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/formdoc/uploadedfile/infolist\" + \"?formid=\" + formId + \"&rootid=\" + rootId;\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n getRootSetting(rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/rootsetting/\" + rootId;\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n}\n","import { FileState } from \"./filestate\";\r\n\r\nexport class UploadFileInfo {\r\n\r\n public metadataId: string;\r\n public fileName: string;\r\n public fileSize:string;\r\n public state: FileState;\r\n\r\n}","import { OperatingModes } from './operatingmodes';\r\nimport { GspFormDocInfo } from './gspformdocinfo';\r\n\r\nexport class GspFormUploadEntity{\r\n public formId: string;\r\n public docInfo: GspFormDocInfo;\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n\r\n}","export class ExStorageFileInfo {\r\n public metadataId: string;\r\n public exPropertyName: string;\r\n}","export enum FileState{\r\n New,\r\n Update\r\n}","import { Component, OnInit, Input, ViewChild, TemplateRef, Optional, Injector } from '@angular/core';\nimport { FileInfo } from '../entity/fileinfo';\nimport { DocType } from '../entity/doctype';\nimport { GspFormDocInfo } from '../entity/gspformdocinfo';\nimport { OperatingModes } from '../entity/operatingmodes';\nimport { UploadService } from '../upload.service';\nimport { UploadFileInfo } from '../entity/uploadfileinfo';\nimport { MessagerService } from '@farris/ui-messager';\nimport { map } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\nimport { GspFormUploadEntity } from '../entity/gspformuploadentity';\nimport { UUID } from 'angular2-uuid';\nimport { StorageExtension } from '../entity/storageextension';\nimport { ExStorageFileInfo } from '../entity/extensionstoragefileinfo';\nimport { DropListEntity } from '../entity/droplistentity';\nimport { LoadingService } from '@farris/ui-loading';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { fillProperties } from '@angular/core/src/util/property';\nimport { FileState } from '../entity/filestate';\n\n\n@Component({\n selector: 'app-file-upload',\n templateUrl: './file-upload.component.html',\n styleUrls: ['./file-upload.component.css'],\n})\nexport class FileUploadComponent implements OnInit {\n\n files: FileInfo[] = [];\n metadataIdList: string[] = [];\n uploadFileInfoList: UploadFileInfo[] = [];\n errFileList: string[] = [];\n errTypeList: string[] = [];\n nullFileList: string[] = [];\n showType: number = 0;\n mouseOn: boolean = false;\n bufferSize = 1024 * 1024;\n selectedFiles: any;\n\n selectedFileCount: number = 0;\n\n uploadIconAddress = '/platform/runtime/dfs/images/upload.svg';\n uploadLittleIconAddress = '/platform/runtime/dfs/images/uploadIcon.svg';\n\n hasSelectedFile: boolean = false;\n\n fileAllSelected: boolean = false;\n\n uploadProcess = { width: '0%' };\n\n fileTotalChunk: { [key: string]: number } = {};\n //fileUploadState: { [key: string]: boolean } = {};\n //flag: number = 0;\n requestArray: Array<Observable<any>> = new Array;\n\n requestBodyArray: Array<GspFormUploadEntity> = new Array;\n\n uploadedChunk: { [key: string]: number } = {};\n uploadedProcess: { [key: string]: number } = {};\n\n //allSelected: boolean = true;\n storageExtension: StorageExtension;\n\n defaultPropertyName: string = \"\";\n propertiesNames: DropListEntity[] = [];\n\n queueListStyle = { width: '480px' };\n\n dropListValue: string = \"\";\n\n uploadedFileTotal: number = 0;\n\n haveExtensionProperty: boolean = false;\n\n uploadedFileInfoList = [];\n oldUploadedFileList = [];\n //uploadedNameList = [];\n\n sameNameAllowed = true;\n\n constructor(private msgService: MessagerService, private uploadService: UploadService, private loadService: LoadingService, private injector?: Injector) { }\n @Input() formId: string;\n @Input() rootId: string;\n @Input() fileType: string = \"*\";\n @Input() fileCount: number = 0;\n @Input() oldIdList: string[] = [];\n\n //@Output() onCustomEvent: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('opCell') opCell: TemplateRef<any>;\n\n ngOnInit() {\n //if (this.storageService != null) {\n this.uploadService.getStorageExtensionInfo().subscribe(\n res => {\n if (res != null && res.error == null) {\n this.storageExtension = res;\n this.defaultPropertyName = this.storageExtension.defaultPropertyName;\n this.propertiesNames.push({ id: \"0\", name: this.storageExtension.defaultPropertyName });\n let i = 0;\n // this.propertiesNames.push(...(this.storageExtension.extensionPropertyNameList));\n this.storageExtension.extensionPropertyNameList.forEach(element => {\n this.propertiesNames.push({ id: (++i).toString(), name: element });\n });\n this.queueListStyle.width = '380px';\n this.haveExtensionProperty = true;\n\n }\n }\n )\n\n this.uploadService.getRootSetting(this.rootId).subscribe(\n res => {\n if (res != null && res.error == null) {\n this.sameNameAllowed = res.sameNameAllowed;\n if (!this.sameNameAllowed) {\n this.uploadService.getUploadedFileInfoList(this.formId, this.rootId).subscribe(\n res => {\n if (res != null && res.error == null) {\n this.uploadedFileInfoList = res;\n this.oldUploadedFileList = JSON.parse(JSON.stringify(res));;\n\n }\n })\n }\n }\n }\n )\n if (this.oldIdList != null && this.oldIdList.length > 0) {\n this.uploadService.cancel(this.oldIdList, this.rootId).subscribe();\n }\n }\n\n\n fileSelected($event) {\n\n const loading = this.loadService.show({\n message: 'æ£å¨ä¸ä¼ æä»¶â¦â¦'\n });\n this.hasSelectedFile = true;\n this.selectedFiles = document.querySelector('#file');\n\n if (this.fileCount > 0) {\n if (this.selectedFiles.files.length + this.files.length > this.fileCount) {\n let selectedNum: number = (this.selectedFiles.files.length as number) + this.files.length;\n this.msgService.warning('已鿩' + selectedNum + '个æä»¶ï¼è¶
è¿ç³»ç»è®¾ç½®çæ°ééå¶' + this.fileCount + '个ï¼è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n return;\n }\n }\n\n //this.flag = 0;\n for (let i = 0; i < this.selectedFiles.files.length; i++) {\n let selectedFile = this.selectedFiles.files[i];\n //selectedFile.slice\n let uuid = UUID.UUID();\n if (!this.sameNameAllowed) {\n if (this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name) != null) {\n // this.uploadedNameList.push(selectedFile.name);\n // this.msgService.question('ä¹åå·²ä¸ä¼ è¿ååæä»¶: ' + selectedFile.name + 'ï¼éè¦æ¿æ¢ä¹ï¼', () => {\n // uuid = this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name).metadataId;\n // this.uploadFile(uuid, selectedFile);\n // })\n const msg = this.msgService.show('warning', 'å·²ä¸ä¼ è¿ååæä»¶: ' + selectedFile.name, {\n initialState: {\n buttons: [\n {\n text: 'éå½å',\n cls: 'btn btn-secondary',\n handle: () => {\n let oldName: string = selectedFile.name;\n let newName\n let flag = true;\n let i = 1;\n while (flag) {\n newName = oldName.substring(0, oldName.lastIndexOf('.')) + '(' + i + ')' + oldName.substring(oldName.lastIndexOf('.'));\n if (this.uploadedFileInfoList.find(x => x.fileName == newName) != null) {\n i++;\n }\n else\n flag = false;\n }\n\n this.uploadFile(uuid, selectedFile, newName);\n msg.close();\n }\n },\n {\n text: 'æ¿æ¢',\n cls: 'btn btn-secondary',\n handle: () => {\n uuid = this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name).metadataId;\n this.uploadFile(uuid, selectedFile, selectedFile.name, FileState.Update);\n this.uploadedFileTotal--;\n if (this.oldUploadedFileList.find(x => x.fileName == selectedFile.name)) {\n this.uploadedFileTotal++;\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == selectedFile.name)[0]), 1);\n }\n msg.close();\n }\n },\n {\n text: 'åæ¶',\n cls: 'btn btn-secondary',\n handle: () => {\n msg.close();\n }\n }\n ]\n }\n })\n continue;\n }\n }\n\n // if (this.files.find(x => x.name == selectedFile.name) != null) {\n // this.errFileList.push(selectedFile.name);\n // continue;\n // }\n\n if (selectedFile.size == 0) {\n this.nullFileList.push(selectedFile.name);\n continue;\n }\n\n //this.flag += Math.ceil(selectedFile.size / this.bufferSize);\n //let reader = new FileReader();\n this.uploadFile(uuid, selectedFile, selectedFile.name);\n\n }\n // if (this.uploadedNameList.length > 0) {\n // let name: string = this.listToString(this.uploadedNameList);\n // this.msgService.warning('ä¹åå·²ä¸ä¼ è¿ååæä»¶: ' + name + 'è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n // this.uploadedNameList = [];\n // }\n\n if (this.errFileList.length > 0) {\n let name: string = this.listToString(this.errFileList);\n this.msgService.warning('å·²ä¸ä¼ ååæä»¶: ' + name + 'è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n this.errFileList = [];\n }\n\n if (this.nullFileList.length > 0) {\n let name: string = this.listToString(this.nullFileList);\n name = name.substring(0, name.length - 1);\n this.msgService.warning('æä»¶: ' + name + ' 大å°ä¸º0ï¼è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n this.nullFileList = [];\n }\n // if (this.errTypeList.length > 0) {\n // let type: string = this.listToString(this.errTypeList);\n // this.msgService.warning('䏿¯æä¸ä¼ ç±»å为 ' + type + 'çæä»¶è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n // this.errTypeList = [];\n // }\n this.files = this.files.slice();\n this.fileAllSelected = false;\n $event.target.value = '';\n loading.close();\n }\n\n showErrorMessage(file) {\n this.msgService.error('ä¸ä¼ é件失败ã' + file.errorMessage);\n }\n\n\n uploadFile(uuid: string, selectedFile, fileName: string, state: FileState = FileState.New) {\n let fileInfo: FileInfo;\n // let uuid = UUID.UUID();\n //reader.readAsBinaryString(selectedFile);\n //reader.onload = (e) => {\n fileInfo = {\n id: uuid,\n name: fileName,\n type: selectedFile.type,\n source: \"\",\n size: this.getFileSize(selectedFile.size),\n fileSize: selectedFile.size,\n picListDisplayName: this.getPicListDisplayName(fileName),\n queueListDisplayName: this.getQueueDisplayName(fileName),\n //content: reader.result.toString(),\n hasUploaded: false,\n mouseOn: false,\n selectd: false,\n isUploading: true,\n uploadResult: false,\n uploadProcess: 0,\n errorMessage: \"\",\n extensionDropListId: 0,\n extensionName: \"\"\n }\n\n if (this.storageExtension != null)\n fileInfo.extensionName = this.defaultPropertyName;\n let chunkTotal: number = Math.ceil(selectedFile.size / this.bufferSize);\n let chunkIndex: number = 0;\n\n\n this.fileTotalChunk[uuid] = chunkTotal;\n\n let uploadFileInfo = new UploadFileInfo();\n\n uploadFileInfo.metadataId = uuid;\n uploadFileInfo.fileName = fileInfo.name;\n uploadFileInfo.fileSize = fileInfo.size;\n uploadFileInfo.state = state;\n\n\n while (chunkIndex < chunkTotal) {\n let uploadInfo = new GspFormUploadEntity;\n uploadInfo.formId = this.formId;\n uploadInfo.mode = OperatingModes.Temp;\n uploadInfo.rootId = this.rootId;\n\n let docInfo: GspFormDocInfo = new GspFormDocInfo;\n\n docInfo.fileName = fileName;\n docInfo.metadataId = uuid;\n docInfo.total = chunkTotal;\n\n this.uploadedChunk[docInfo.metadataId] = 0;\n\n let nextSize = Math.min((chunkIndex + 1) * this.bufferSize, selectedFile.size);\n let fileData = selectedFile.slice(chunkIndex * this.bufferSize, nextSize);\n let reader = new FileReader();\n reader.readAsBinaryString(fileData);\n let innerIndex = chunkIndex;\n reader.onload = () => {\n docInfo.fileContent = btoa(reader.result.toString());\n\n docInfo.index = innerIndex;\n //chunkIndex++;\n if (this.haveExtensionProperty)\n docInfo.exPropertyName = this.defaultPropertyName;\n //docInfo.isLast = true;\n uploadInfo.docInfo = docInfo;\n\n let info = uploadInfo;\n\n // this.requestArray.push(this.uploadService.uploadFile(uploadInfo));\n this.requestBodyArray.push(info);\n\n this.uploadService.uploadFile(info).subscribe(res => {\n if (res != null) {\n this.files[this.files.indexOf(fileInfo)].uploadResult = false;\n this.files[this.files.indexOf(fileInfo)].isUploading = false;\n this.files[this.files.indexOf(fileInfo)].errorMessage = res.error.Message;\n } else {\n this.uploadedChunk[docInfo.metadataId]++;\n this.files[this.files.indexOf(fileInfo)].uploadProcess = Number.parseInt((this.uploadedChunk[docInfo.metadataId] / this.fileTotalChunk[docInfo.metadataId] * 100).toFixed(0));\n if (this.uploadedChunk[docInfo.metadataId] == this.fileTotalChunk[docInfo.metadataId]) {\n this.files[this.files.indexOf(fileInfo)].uploadResult = true;\n this.files[this.files.indexOf(fileInfo)].isUploading = false;\n this.uploadFileInfoList = this.uploadFileInfoList.concat(uploadFileInfo);\n this.uploadedFileInfoList = this.uploadedFileInfoList.concat(uploadFileInfo);\n this.uploadedFileTotal++;\n }\n }\n });\n }\n //console.log(chunkIndex + 1);\n chunkIndex = chunkIndex + 1;\n }\n\n let type: string = selectedFile.type;\n if (type.includes(\"tiff\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Other);\n }\n else if (type.includes(\"image\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Image);\n }\n else if (type.includes(\"word\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Word);\n }\n else if (type.includes(\"pdf\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Pdf);\n }\n else if (type.includes(\"plain\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Txt);\n }\n else if (type.includes(\"sheet\") || type.includes(\"excel\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Excel)\n }\n else if (type.includes(\"powerpoint\") || type.includes(\"presentation\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Powerpoint);\n }\n else {\n this.addDocInfo(selectedFile, fileInfo, DocType.Other);\n // let name: string = selectedFile.name;\n // let errType = name.substring(selectedFile.name.lastIndexOf('.'));\n // this.errTypeList.push(errType);\n }\n let index = -1;\n this.files.forEach(x => {\n if (x.name == fileInfo.name) {\n if (index == -1)\n index = this.files.indexOf(x);\n }\n })\n if (index != -1 && index != this.files.length - 1) {\n this.files.splice(index, 1);\n this.uploadFileInfoList.splice(index, 1);\n this.uploadedFileInfoList.splice(index, 1);\n this.uploadedFileTotal--;\n }\n }\n\n\n selectAllFile() {\n\n if (!this.fileAllSelected) {\n this.files.forEach(element => {\n // let obj: any = document.getElementById(element.name);\n // obj.checked = true;\n element.selectd = true;\n });\n this.fileAllSelected = true;\n this.selectedFileCount = this.files.length;\n\n } else {\n this.files.forEach(element => {\n // let obj: any = document.getElementById(element.name);\n // obj.checked = false;\n element.selectd = false;\n });\n this.fileAllSelected = false;\n this.selectedFileCount = 0;\n }\n }\n\n\n checkoutSelectFile(file: FileInfo) {\n // let obj: any = document.getElementById(fileName);\n file.selectd = !file.selectd;\n if (file.selectd)\n this.selectedFileCount++;\n else\n this.selectedFileCount--;\n if (this.selectedFileCount == this.files.length) {\n this.fileAllSelected = true;\n //this.isFileAllSelected();\n }\n else {\n this.fileAllSelected = false;\n //this.isFileAllSelected();\n }\n\n }\n\n listDeleteFile(fileInfo: FileInfo) {\n if (fileInfo.selectd)\n this.selectedFileCount--;\n //console.log(fileName);\n this.files.splice(this.files.indexOf(fileInfo), 1);\n if (fileInfo.uploadResult) {\n let idList: string[] = [];\n idList.push(fileInfo.id);\n this.uploadService.cancel(idList, this.rootId).subscribe();\n\n this.uploadFileInfoList.splice(this.uploadFileInfoList.indexOf(this.uploadFileInfoList.filter(x => x.fileName == fileInfo.name)[0]), 1);\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == fileInfo.name)[0]), 1);\n this.uploadedFileTotal--;\n }\n if (this.selectedFileCount == 0)\n this.fileAllSelected = false;\n }\n\n listMultipleDeleteFile() {\n let selectedFile: FileInfo[] = [];\n this.files.forEach(element => {\n let obj: any = document.getElementById(element.name);\n if (obj.checked)\n selectedFile.push(element);\n })\n let metadataList: string[] = [];\n selectedFile.forEach(element => {\n metadataList.push(element.id);\n this.files.splice(this.files.indexOf(element), 1);\n if (element.uploadResult) {\n // let idList: string[] = [];\n // idList.push(fileInfo.id);\n // this.uploadService.cancel(idList, this.rootId).subscribe();\n\n this.uploadFileInfoList.splice(this.uploadFileInfoList.indexOf(this.uploadFileInfoList.filter(x => x.fileName == element.name)[0]), 1);\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == element.name)[0]), 1);\n this.uploadedFileTotal--;\n }\n })\n this.uploadService.cancel(metadataList, this.rootId).subscribe();\n\n let allBox: any = document.getElementById(\"allCheckBox\");\n if (allBox != null)\n allBox.checked = false;\n this.selectedFileCount = 0;\n this.fileAllSelected = false;\n }\n\n\n getPicListDisplayName(fileName: string) {\n if (fileName.length <= 10)\n return fileName;\n else {\n let headContent = fileName.substring(0, 2);\n let tailContent = fileName.substring(fileName.lastIndexOf('.') - 2);\n return headContent + \"â¦\" + tailContent;\n }\n }\n\n getQueueDisplayName(fileName: string) {\n return fileName;\n }\n\n addDocInfo(selectdFile, fileInfo: FileInfo, docType: DocType) {\n switch (docType) {\n case DocType.Word: {\n fileInfo.source = \"/platform/runtime/dfs/images/word.png\"\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Pdf: {\n fileInfo.source = \"/platform/runtime/dfs/images/pdf.png\"\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Excel: {\n fileInfo.source = \"/platform/runtime/dfs/images/excel.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Txt: {\n fileInfo.source = \"/platform/runtime/dfs/images/txt.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Powerpoint: {\n fileInfo.source = \"/platform/runtime/dfs/images/ppt.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Other: {\n fileInfo.source = \"/platform/runtime/dfs/images/file.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Image:\n let reader = new FileReader();\n\n reader.readAsDataURL(selectdFile);\n reader.onload = (_event) => {\n let imgUrl = reader.result;\n if (this.injector != null) {\n let sanitizer = this.injector.get(DomSanitizer);\n fileInfo.source = sanitizer.bypassSecurityTrustResourceUrl(imgUrl);\n } else\n fileInfo.source = imgUrl;\n this.files.push(fileInfo);\n }\n break;\n }\n\n }\n\n listToString(strList: string[]) {\n let name: string = \"\";\n for (let i = 0; i < strList.length; i++) {\n name += strList[i] + \",\";\n }\n return name;\n }\n\n\n exStorageFileList: ExStorageFileInfo[] = [];\n\n typeChange($event: any, file: FileInfo) {\n file.extensionName = $event.data.name;\n let exStorageFileInfo: ExStorageFileInfo = new ExStorageFileInfo;\n if (file.extensionName == this.storageExtension.defaultPropertyName) {\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0)\n this.exStorageFileList.splice(this.exStorageFileList.findIndex(x => x.metadataId == file.id), 1)\n } else {\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0) {\n exStorageFileInfo = this.exStorageFileList.filter(x => x.metadataId == file.id)[0];\n exStorageFileInfo.exPropertyName = file.extensionName;\n } else {\n exStorageFileInfo.metadataId = file.id;\n exStorageFileInfo.exPropertyName = file.extensionName;\n this.exStorageFileList.push(exStorageFileInfo);\n }\n }\n }\n\n upload(): Observable<any> {\n if (this.uploadedFileTotal != this.files.filter(x => x.isUploading || x.uploadResult).length) {\n // this.notifyService.success(<NotifyOptions>{\n // msg: 'ä¿åæåï¼', timeout: 3000\n // });\n this.msgService.warning('çä¸ä¸ï¼ææ¡£æ£å¨ä¸ä¼ ã');\n return of(false);\n }\n if (this.storageExtension == null)\n return of(this.uploadFileInfoList);\n else {\n if (this.exStorageFileList.length == 0)\n return of(this.uploadFileInfoList);\n else {\n const loading = this.loadService.show({\n message: 'æ£å¨å°æä»¶ä¿åå°' + this.storageExtension.extensionName\n });\n return this.uploadService.changeStorageInstance(this.exStorageFileList, this.rootId).pipe(\n map(res => {\n if (res != null)\n this.msgService.error('ä¿åå°' + this.storageExtension.extensionName + \"失败ï¼ä¸ä¼ æä»¶èªå¨ä¿åå°\" + this.storageExtension.defaultPropertyName + \"åå¨ã\" + res.error.Message);\n loading.close();\n return this.uploadFileInfoList;\n }))\n }\n }\n }\n\n cancel() {\n if (this.uploadFileInfoList.length == 0)\n return;\n this.uploadFileInfoList.forEach(element => {\n this.metadataIdList.push(element.metadataId);\n })\n this.uploadService.cancel(this.metadataIdList, this.rootId).subscribe();\n\n }\n\n getUploadFileInfoList() {\n return this.uploadFileInfoList;\n }\n\n delete(file) {\n this.files.splice(this.files.indexOf(file), 1);\n if (file.uploadResult)\n this.uploadedFileTotal--;\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0) {\n this.exStorageFileList.splice(this.exStorageFileList.findIndex(x => x.metadataId == file.id), 1);\n }\n // var obj:any = document.querySelector('#file');\n // obj.files.remove();\n //obj.value='';\n }\n\n getFileSize(size: number) {\n if (size < 102400)\n return (size / 1024).toFixed(1) + \"K\";\n else if (size < 1024 * 1024)\n return (size / 1024).toFixed(0) + \"K\";\n else if (size < 100 * 1024 * 1024)\n return (size / 1024 / 1024).toFixed(1) + \"M\";\n else if (size < 1024 * 1024 * 1024)\n return (size / 1024 / 1024).toFixed(0) + \"M\";\n else\n return (size / 1024 / 1024 / 1024).toFixed(1) + \"G\";\n }\n showByGroup() {\n this.showType = 0;\n // this.selectedFileCount = 0;\n }\n\n showByList() {\n this.showType = 1;\n // this.selectedFileCount = 0;\n if (this.selectedFileCount != 0 && this.selectedFileCount == this.files.length) {\n this.fileAllSelected = true;\n }\n }\n\n mouseOver(file) {\n file.mouseOn = true;\n }\n mouseOut(file) {\n file.mouseOn = false;\n }\n\n}\n\n\n","import { Injectable } from '@angular/core';\n\n\n@Injectable()\nexport class DownloadService {\n\n constructor() { }\n\n getDownloadUrl(metadataId: string, rootId: string) {\n return \"/api/runtime/dfs/v1.0/doc/filecontent?metadataid=\" + metadataId + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(metadataId, rootId));\n }\n\n getMultipleDownloadUrl(metadataIdList: string, rootId: string) {\n let list: string[] = JSON.parse(metadataIdList);\n return \"/api/runtime/dfs/v1.0/doc/multiple/download?metadataidlist=\" + metadataIdList + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(list[0], rootId));\n }\n\n getMultipleDownloadUrlWithName(metadataIdList: string, rootId: string, zipName: string) {\n let list: string[] = JSON.parse(metadataIdList);\n if (zipName == null || zipName == \"\")\n zipName = 'unifile.zip';\n if (!zipName.endsWith(\".zip\"))\n zipName += '.zip';\n\n\n\n return \"/api/runtime/dfs/v1.0/doc/compress/download?metadataidlist=\" + metadataIdList + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(list[0], rootId)) + \"&zipName=\" + encodeURIComponent(zipName);\n }\n\n getHistoryDownloadUrl(metadataId: string, rootId: string, version: string) {\n //let list:string[]=JSON.parse(metadataIdList);\n return \"/api/runtime/dfs/v1.0/doc/historycontent?metadataid=\" + metadataId + \"&rootid=\" + rootId + \"&version=\" + version + \"&token=\" + this.getToken(this.mergeString(metadataId, rootId));\n }\n\n\n\n private mergeString(str: string, str1: string): string {\n let min = str.length < str1.length ? str.length : str1.length;\n let res: string = \"\";\n let i = 0;\n for (i = 0; i < min; i++) {\n res += str.substring(i, i + 1);\n res += str1.substring(i, i + 1);\n }\n res += str.length < str1.length ? str1.substring(i) : str.substring(i);\n return res;\n }\n\n private getToken(str: string): string {\n let array = [1, 2, 3];\n if (str.length > 24)\n str = str.substring(0, 24);\n let length = Math.floor(str.length / 3);\n let str1 = str.substring(0, length);\n let str2 = str.substring(length, 2 * length);\n let str3 = str.substring(2 * length, 3 * length);\n let randomArray = [];\n var random = Math.ceil(Math.random() * 3);\n randomArray.push(array[random - 1]);\n array.splice(random - 1, 1);\n random = Math.ceil(Math.random() * 2);\n randomArray.push(array[random - 1]);\n array.splice(random - 1, 1);\n randomArray.push(array[0]);\n let timeStamp: string = Math.round(new Date().getTime() / 1000) + \"\";\n\n return timeStamp.substring(0, 5) + \"times\" + randomArray[0] + \"\" + randomArray[1] + \"\" + randomArray[2] + this.switchStr(str1, str2, str3, randomArray[0]) + this.switchStr(str1, str2, str3, randomArray[1]) + this.switchStr(str1, str2, str3, randomArray[2]) + \"times\" + timeStamp.substring(5);\n }\n\n private switchStr(str1: string, str2: string, str3: string, i: number): string {\n switch (i) {\n case 1: return str1;\n case 2: return str2;\n case 3: return str3;\n }\n }\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FileUploadComponent } from './file-upload/file-upload.component';\nimport { ButtonsModule } from '@progress/kendo-angular-buttons';\nimport { NotifyModule } from '@farris/ui-notify';\nimport { MessagerModule } from '@farris/ui-messager';\nimport { UploadService } from './upload.service';\nimport { LoadingModule } from '@farris/ui-loading';\nimport { ProgressModule } from '@farris/ui-progress'\nimport { FormsModule } from '@angular/forms';\nimport { ComboListModule } from '@farris/ui-combo-list';\nimport { DownloadService } from './download.service';\n\n\n\n@NgModule({\n declarations: [FileUploadComponent],\n imports: [\n CommonModule,\n ButtonsModule,\n NotifyModule,\n MessagerModule.forRoot(),\n LoadingModule.forRoot(),\n ProgressModule,\n FormsModule,\n ComboListModule\n\n ],\n exports: [FileUploadComponent],\n entryComponents: [FileUploadComponent],\n providers: [UploadService, DownloadService]\n})\nexport class UploadModule { }\n\nexport const ɵa = UploadModule;\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { BsModalRef, BsModalService } from '@farris/ui-modal';\nimport { FileUploadComponent } from '../../upload/file-upload/file-upload.component';\n\n@Component({\n selector: 'app-uploaddialog',\n templateUrl: './uploaddialog.component.html',\n styleUrls: ['./uploaddialog.component.css']\n})\nexport class UploadDialogComponent implements OnInit {\n\n dlg: BsModalRef;\n\n metadataIdList:string[]=[];\n\n @Input() formId:string;\n\n constructor(private modalService: BsModalService) { }\n\n @ViewChild(FileUploadComponent) fileUpload: FileUploadComponent;\n\n ngOnInit() {\n }\n\n showDialog() {\n this.dlg = this.modalService.show(FileUploadComponent, {\n title: 'éæ©æä»¶',\n width: 800, height: 500,\n buttons: [\n {\n text: 'ä¸ä¼ ', cls: 'k-button k-button-icontext k-primary', iconCls: \"k-icon k-i-check\", handle: () => {\n this.fileUpload.upload();\n this.dlg.close();\n }\n },\n {\n text: 'å
³é', cls: 'k-button k-button-icontext', iconCls: \"k-icon k-i-close\", handle: () => {\n this.fileUpload.cancel();\n this.dlg.close();\n }\n }\n ],\n\n showButtons: true,\n\n });\n this.dlg.content.formId=this.formId;\n\n }\n\n}\n","import { Injectable, Injector, ComponentFactoryResolver } from '@angular/core';\r\nimport { FileUploadComponent } from './upload/file-upload/file-upload.component';\r\nimport { BsModalService, BsModalRef } from '@farris/ui-modal';\r\nimport { UploadFileInfo } from './upload/entity/uploadfileinfo';\r\nimport { Observable, of } from 'rxjs';\r\nimport { UploadLimit } from './upload/entity/uploadlimit';\r\n\r\n\r\n@Injectable()\r\nexport class UploadDialogService {\r\n constructor(private modalService: BsModalService, private componentFactoryResolver: ComponentFactoryResolver, private injector: Injector) { }\r\n\r\n dlg: BsModalRef;\r\n\r\n fileInfoList: UploadFileInfo[] = [];\r\n\r\n showDialog(formId: string, rootId: string) {\r\n let flag = 0;\r\n return new Promise(resolve => {\r\n var viewerFactory = this.componentFactoryResolver.resolveComponentFactory(FileUploadComponent);\r\n var viewerRef = viewerFactory.create(this.injector);\r\n\r\n viewerRef.instance.rootId = rootId;\r\n viewerRef.instance.formId = formId;\r\n\r\n this.dlg = this.modalService.show(viewerRef, {\r\n title: 'ä¸ä¼ æä»¶',\r\n width: 950, height: 570,\r\n buttons: [\r\n {\r\n text: 'ä¿å', cls: 'k-button k-button-icontext k-primary', handle: () => {\r\n this.dlg.content.upload().subscribe(\r\n res => {\r\n if (res) {\r\n resolve(res);\r\n flag = 1;\r\n this.dlg.close();\r\n }\r\n }\r\n );\r\n }\r\n },\r\n {\r\n text: 'å
³é', cls: 'k-button k-button-icontext', handle: () => {\r\n this.dlg.close();\r\n }\r\n }\r\n ],\r\n\r\n showButtons: true,\r\n showMaxButton: false,\r\n beforeClose: (): Observable<boolean> => {\r\n if (flag == 0)\r\n this.dlg.content.cancel();\r\n return of(true);\r\n }\r\n });\r\n })\r\n }\r\n\r\n uploadFile(formId: string, rootId: string,oldIdList: string[]=[]) { \r\n return this.uploadFileWithLimit(formId, rootId, null, oldIdList);\r\n }\r\n\r\n\r\n uploadFileWithLimit(formId: string, rootId: string, limit: UploadLimit, oldIdList: string[]=[]) {\r\n let flag = 0;\r\n return new Promise(resolve => {\r\n var uploadFactory = this.componentFactoryResolver.resolveComponentFactory(FileUploadComponent);\r\n var uploadRef = uploadFactory.create(this.injector);\r\n if (limit != null) {\r\n uploadRef.instance.fileCount = limit.fileCount;\r\n if (limit.fileType != null && limit.fileType != \"\")\r\n uploadRef.instance.fileType = limit.fileType\r\n }\r\n\r\n uploadRef.instance.rootId = rootId;\r\n uploadRef.instance.formId = formId;\r\n uploadRef.instance.oldIdList=oldIdList;\r\n\r\n this.dlg = this.modalService.show(uploadRef, {\r\n title: 'ä¸ä¼ æä»¶',\r\n width: 950, height: 570,\r\n buttons: [\r\n {\r\n\r\n text: 'ä¿å', cls: 'k-button k-button-icontext k-primary', handle: () => {\r\n this.dlg.content.upload().subscribe(\r\n res => {\r\n if (res) {\r\n resolve(res);\r\n flag = 1;\r\n this.dlg.close();\r\n }\r\n }\r\n );\r\n }\r\n },\r\n {\r\n text: 'å
³é', cls: 'k-button k-button-icontext', handle: () => {\r\n this.dlg.close();\r\n }\r\n }\r\n ],\r\n\r\n showButtons: true,\r\n showMaxButton: false,\r\n beforeClose: (): Observable<boolean> => {\r\n if (flag == 0)\r\n this.dlg.content.cancel();\r\n return of(true);\r\n }\r\n });\r\n })\r\n }\r\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { FarrisDialogModule } from '@farris/ui-dialog';\nimport { ButtonsModule } from '@progress/kendo-angular-buttons';\nimport { MessagerModule } from '@farris/ui-messager';\nimport { BsModalService } from '@farris/ui-modal';\n\nimport { UploadModule } from '../upload/upload.module';\nimport { UploadDialogComponent } from './uploaddialog/uploaddialog.component';\nimport { HttpService } from '@ecp-caf/caf-common';\nimport { UploadService } from '../upload/upload.service';\nimport { UploadDialogService } from '../uploaddialog.service';\nimport { HttpClientModule } from '@angular/common/http';\nimport { NotifyModule } from '@farris/ui-notify';\nimport { FileUploadComponent } from '../upload/file-upload/file-upload.component';\n\n\n@NgModule({\n declarations: [UploadDialogComponent],\n imports: [\n CommonModule,\n FarrisDialogModule,\n MessagerModule.forRoot(),\n UploadModule,\n ButtonsModule,\n NotifyModule.forRoot(),\n HttpClientModule\n ],\n exports: [UploadDialogComponent,FileUploadComponent],\n entryComponents: [UploadDialogComponent,FileUploadComponent],\n providers: [BsModalService, HttpService, UploadDialogService, UploadService]\n})\nexport class UploadDialogMoudle { }\n","export class UploadLimit {\r\n public fileType: string = \"*\";\r\n public fileCount: number = 0;\r\n}","import { GspFormDocInfo } from './gspformdocinfo';\r\nimport { OperatingModes } from './operatingmodes';\r\n\r\nexport class GspFormUploadListEntity {\r\n public formId: string;\r\n public docInfoList: GspFormDocInfo[];\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n}","export class GspDocMetaProperty{\r\n public extProperties1:string;\r\n public extProperties2:string;\r\n public extProperties3:string;\r\n public extProperties4:string;\r\n public extProperties5:string;\r\n}","export class FileInfo {\r\n public id: string;\r\n public name: string;\r\n public type: string;\r\n public source: string | ArrayBuffer;\r\n public picListDisplayName: string;\r\n public queueListDisplayName: string;\r\n //public content: string;\r\n public size: string;\r\n public fileSize: number;\r\n public hasUploaded: boolean;\r\n public mouseOn: boolean;\r\n public selectd: boolean;\r\n public isUploading: boolean;\r\n public uploadResult: boolean;\r\n public uploadProcess: number;\r\n public errorMessage: string;\r\n public extensionDropListId:number;\r\n public extensionName: string;\r\n}"]}
|
|
1
|
+
{"version":3,"sources":["ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.service.ts","ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.component.ts","ng://@gsp-svc/formdoc-upload/lib/formdoc-upload.module.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/doctype.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformdocinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/operatingmodes.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformremovelistentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformdocoperateentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/changeinstancerequest.ts","ng://@gsp-svc/formdoc-upload/lib/upload/upload.service.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/uploadfileinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformuploadentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/extensionstoragefileinfo.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/filestate.ts","ng://@gsp-svc/formdoc-upload/lib/i18n/language.resource.ts","ng://@gsp-svc/formdoc-upload/lib/local.pipe.ts","ng://@gsp-svc/formdoc-upload/lib/upload/file-upload/file-upload.component.ts","ng://@gsp-svc/formdoc-upload/lib/upload/download.service.ts","ng://@gsp-svc/formdoc-upload/lib/upload/upload.module.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog/uploaddialog/uploaddialog.component.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog.service.ts","ng://@gsp-svc/formdoc-upload/lib/uploaddialog/uploaddialog.module.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/uploadlimit.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspformuploadlistentity.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/gspdocmetaproperty.ts","ng://@gsp-svc/formdoc-upload/lib/upload/entity/fileinfo.ts"],"names":["FormdocUploadService","Injectable","args","providedIn","FormdocUploadComponent","prototype","ngOnInit","Component","selector","template","ɵ0","localStorage","getItem","FormdocUploadModule","NgModule","declarations","imports","exports","providers","LanguageService","provide","LOCALE_ID","useValue","Word","Excel","Powerpoint","Pdf","Txt","Image","Other","GspFormDocInfo","Formal","Temp","GspFormRemoveListEntity","GspFormDocOperateEntity","ChangeInstanceRequest","UploadService","http","this","uploadList","docListInfo","rootId","post","pipe","tap","res","catchError","error","of","commit","metadataIdList","entity","cancel","put","removeList","idList","idListInfo","mode","OperatingModes","delete","getFile","metadataId","url","get","uploadFile","docInfo","getStorageExtensionInfo","changeStorageInstance","storageInfoList","request","fileInfoList","getUploadedFileInfoList","formId","getRootSetting","HttpService","UploadFileInfo","GspFormUploadEntity","ExStorageFileInfo","New","Update","LANG_RESOURCES","zh-CHS","uploading","selectedCount","limitCount","rechooseFile","save","haveSameName","rename","replace","sizeZero","uploadFailure","uploadSucceed","wait","saveTo","selectAll","selectNull","detail","fileName","state","operation","size","close","loading","en-US","en","zh-CHT","LocalLangPipe","localeId","defaultLang","langCode","lang","transform","name","Pipe","Inject","FileUploadComponent","msgService","uploadService","loadService","injector","files","uploadFileInfoList","errFileList","errTypeList","nullFileList","showType","mouseOn","bufferSize","selectedFileCount","uploadIconAddress","uploadLittleIconAddress","hasSelectedFile","fileAllSelected","uploadProcess","width","fileTotalChunk","requestArray","Array","requestBodyArray","uploadedChunk","uploadedProcess","defaultPropertyName","propertiesNames","queueListStyle","dropListValue","uploadedFileTotal","haveExtensionProperty","uploadedFileInfoList","oldUploadedFileList","sameNameAllowed","checkboxPos","top","fileType","fileCount","oldIdList","exStorageFileList","localeid","localepipe","_this","navigator","userAgent","indexOf","subscribe","storageExtension","push","id","i_1","extensionPropertyNameList","forEach","element","toString","JSON","parse","stringify","length","fileSelected","$event","show","message","selectedFiles","document","querySelector","selectedNum","warning","i","selectedFile","this_1","uuid","UUID","find","x","msg_1","initialState","buttons","text","cls","handle","newName","oldName","flag","substring","lastIndexOf","FileState","splice","filter","name_1","listToString","name_2","slice","target","value","showErrorMessage","file","errorMessage","fileInfo","type","source","getFileSize","fileSize","picListDisplayName","getPicListDisplayName","queueListDisplayName","getQueueDisplayName","hasUploaded","selectd","isUploading","uploadResult","extensionDropListId","extensionName","chunkTotal","Math","ceil","chunkIndex","uploadFileInfo","uploadInfo","this_2","total","nextSize","min","fileData","reader","FileReader","readAsBinaryString","innerIndex","onload","fileContent","btoa","result","index","exPropertyName","info","Message","Number","parseInt","toFixed","concat","includes","addDocInfo","DocType","selectAllFile","checkoutSelectFile","listDeleteFile","listMultipleDeleteFile","getElementById","checked","metadataList","allBox","selectdFile","docType","reader_1","readAsDataURL","_event","imgUrl","sanitizer","DomSanitizer","bypassSecurityTrustResourceUrl","strList","typeChange","data","exStorageFileInfo","findIndex","upload","loading_1","map","getUploadFileInfoList","showByGroup","showByList","mouseOver","mouseOut","MessagerService","LoadingService","Injector","Input","ViewChild","DownloadService","getDownloadUrl","getToken","mergeString","getMultipleDownloadUrl","list","getMultipleDownloadUrlWithName","zipName","endsWith","encodeURIComponent","getHistoryDownloadUrl","version","str","str1","array","floor","str2","str3","randomArray","random","timeStamp","round","Date","getTime","switchStr","ɵ0$1","UploadModule","CommonModule","ButtonsModule","NotifyModule","MessagerModule","forRoot","LoadingModule","ProgressModule","FormsModule","ComboListModule","entryComponents","ɵa","UploadDialogComponent","modalService","showDialog","dlg","title","height","iconCls","fileUpload","showButtons","content","BsModalService","UploadDialogService","componentFactoryResolver","localpipe","Promise","resolve","viewerRef","resolveComponentFactory","create","instance","showMaxButton","beforeClose","uploadFileWithLimit","limit","uploadRef","ComponentFactoryResolver","UploadDialogMoudle","FarrisDialogModule","HttpClientModule","UploadLimit","GspFormUploadListEntity","GspDocMetaProperty","FileInfo"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FormdocUploadService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-formdoc-upload',\n template: `\n <p>\n formdoc-upload works!\n </p>\n `,\n styles: []\n})\nexport class FormdocUploadComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { LOCALE_ID, NgModule } from '@angular/core';\nimport { LanguageService } from '@ecp-caf/caf-common';\nimport { FormdocUploadComponent } from './formdoc-upload.component';\nimport { LocalLangPipe } from './local.pipe';\n\n\n@NgModule({\n declarations: [FormdocUploadComponent],\n imports: [\n ],\n \n exports: [FormdocUploadComponent],\n providers:[ LanguageService,\n { provide: LOCALE_ID, useValue: localStorage.getItem('languageCode') || 'zh-CHS' },]\n})\nexport class FormdocUploadModule { }\n","export enum DocType{\r\n Word,\r\n Excel,\r\n Powerpoint,\r\n Pdf,\r\n Txt,\r\n Image,\r\n Other\r\n}","import { GspDocMetaProperty } from './gspdocmetaproperty';\r\n\r\nexport class GspFormDocInfo {\r\n public metadataId: string;\r\n public fileName: string;\r\n public fileContent: string;\r\n public index: number;\r\n public total: number;\r\n public exPropertyName: string;\r\n public extProperty: GspDocMetaProperty;\r\n}","export enum OperatingModes{\r\n Formal,\r\n Temp\r\n}","import { OperatingModes } from \"./operatingmodes\";\r\n\r\nexport class GspFormRemoveListEntity {\r\n public metadataIdList: string[];\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n}","export class GspFormDocOperateEntity {\r\n public metadataIdList: string[];\r\n public rootId: string;\r\n}","import { ExStorageFileInfo } from './extensionstoragefileinfo';\r\n\r\nexport class ChangeInstanceRequest {\r\n public fileInfoList: ExStorageFileInfo[];\r\n public rootId: string;\r\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { GspFormUploadListEntity } from './entity/gspformuploadlistentity';\nimport { HttpService } from '@ecp-caf/caf-common';\nimport { catchError, tap } from 'rxjs/operators';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { GspFormRemoveListEntity } from './entity/gspformremovelistentity';\nimport { of } from 'rxjs/observable/of';\nimport { GspFormDocOperateEntity } from './entity/gspformdocoperateentity';\n\nimport { GspFormUploadEntity } from './entity/gspformuploadentity';\nimport { ExStorageFileInfo } from './entity/extensionstoragefileinfo';\nimport { ChangeInstanceRequest } from './entity/changeinstancerequest';\nimport { OperatingModes } from './entity/operatingmodes';\n\n\n\n@Injectable()\nexport class UploadService {\n\n constructor(private http: HttpService) { }\n\n uploadList(docListInfo: GspFormUploadListEntity, rootId: string): Observable<any> {\n let url;\n docListInfo.rootId = rootId;\n\n url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.post(url, docListInfo).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n commit(metadataIdList: string[], rootId: string): Observable<any> {\n let url;\n let entity: GspFormDocOperateEntity = new GspFormDocOperateEntity;\n entity.metadataIdList = metadataIdList;\n entity.rootId = rootId;\n url = \"/api/runtime/dfs/v1.0/formdoc/commit\";\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/commit\";\n\n return this.http.post(url, entity).pipe();\n }\n\n cancel(metadataIdList: string[], rootId: string): Observable<any> {\n let url;\n let entity: GspFormDocOperateEntity = new GspFormDocOperateEntity;\n entity.metadataIdList = metadataIdList;\n entity.rootId = rootId;\n url = \"/api/runtime/dfs/v1.0/formdoc/cancel\";\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/cancel\";\n //localStorage.setItem(\"SessionId\",\"huoliang\");\n return this.http.put(url, entity).pipe();\n }\n\n removeList(idList: string[], rootId: string) {\n let url;\n //url = \"http://localhost:5000/api/runtime/dfs/v1.0/formdoc/list\";\n url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n var idListInfo = new GspFormRemoveListEntity;\n idListInfo.metadataIdList = idList;\n idListInfo.mode = OperatingModes.Temp;\n idListInfo.rootId = rootId;\n return this.http.delete(url, idListInfo).pipe();\n }\n\n getFile(metadataId: string, rootId: string) {\n\n let url;\n if (rootId == \"\")\n url = \"/api/runtime/dfs/v1.0/formdoc/file/\" + metadataId;\n else\n url = \"/api/runtime/dfs/v1.0/formdoc/file/\" + metadataId + \"/\" + rootId;\n return this.http.get(url).pipe(tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n\n }\n\n uploadFile(docInfo: GspFormUploadEntity): Observable<any> {\n\n let url = \"/api/runtime/dfs/v1.0/formdoc\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.post(url, docInfo).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n getStorageExtensionInfo(): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/storagestrategy/extension\";\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n changeStorageInstance(storageInfoList: ExStorageFileInfo[], rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/formdoc/changeinstance\";\n let request: ChangeInstanceRequest = new ChangeInstanceRequest;\n request.fileInfoList = storageInfoList;\n request.rootId = rootId;\n return this.http.post(url, request).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n\n getUploadedFileInfoList(formId: string, rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/formdoc/uploadedfile/infolist\" + \"?formid=\" + formId + \"&rootid=\" + rootId;\n //url = \"/api/runtime/dfs/v1.0/formdoc/list\";\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n getRootSetting(rootId: string): Observable<any> {\n let url = \"/api/runtime/dfs/v1.0/rootsetting/\" + rootId;\n\n return this.http.get(url).pipe(\n tap(res => { }),\n catchError((error: HttpErrorResponse) => {\n return of(error);\n }));\n }\n\n}\n","import { FileState } from \"./filestate\";\r\n\r\nexport class UploadFileInfo {\r\n\r\n public metadataId: string;\r\n public fileName: string;\r\n public fileSize:string;\r\n public state: FileState;\r\n\r\n}","import { OperatingModes } from './operatingmodes';\r\nimport { GspFormDocInfo } from './gspformdocinfo';\r\n\r\nexport class GspFormUploadEntity{\r\n public formId: string;\r\n public docInfo: GspFormDocInfo;\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n\r\n}","export class ExStorageFileInfo {\r\n public metadataId: string;\r\n public exPropertyName: string;\r\n}","export enum FileState{\r\n New,\r\n Update\r\n}","export const LANG_RESOURCES = {\r\n 'zh-CHS': {\r\n 'uploadFile': 'ä¸ä¼ æä»¶',\r\n 'uploading':'æ£å¨ä¸ä¼ æä»¶â¦â¦',\r\n 'selectedCount':'已鿩æä»¶æ°éï¼',\r\n 'limitCount':'è¶
åºç³»ç»éå¶æ°éï¼',\r\n 'rechooseFile':',éæ°éæ©ä¸ä¼ æä»¶ã',\r\n 'save':'ä¿å',\r\n 'cancel':'åæ¶',\r\n 'haveSameName':'å·²ä¸ä¼ è¿ååæä»¶: ',\r\n 'rename':'éå½å',\r\n\t\t'replace':'æ¿æ¢',\r\n 'sizeZero':'æä»¶å¤§å°ä¸º0',\r\n 'uploadFailure':'ä¸ä¼ 失败',\r\n 'uploadSucceed':'ä¸ä¼ æå',\r\n 'wait':'çä¸ä¸ï¼ææ¡£æ£å¨ä¸ä¼ ã',\r\n 'saveTo':'æ£å¨å°æä»¶ä¿åå°',\r\n 'delete':'å é¤',\r\n 'selectAll':'å
¨é',\r\n 'selectNull':'å
¨ä¸é',\r\n 'detail':'详æ
',\r\n 'fileName':'æä»¶å',\r\n 'state':'ç¶æ',\r\n 'operation':'æä½',\r\n 'size':'大å°',\r\n 'close':'å
³é',\r\n 'loading':'æ¼å½å è½½ä¸'\r\n },\r\n 'en-US': {\r\n 'uploadFile': 'Upload File',\r\n 'uploading':'File Uploadingâ¦â¦',\r\n 'selectedCount':'Selected files countï¼',\r\n 'limitCount':'System limit countï¼',\r\n 'rechooseFile':',Reselect upload file.',\r\n 'save':'Save',\r\n 'cancel':'Cancel',\r\n 'haveSameName':'A file with the same name has been uploaded: ',\r\n 'rename':'Rename',\r\n\t\t'replace':'Replace',\r\n 'sizeZero':'File size is 0',\r\n 'uploadFailure':'Upload failed',\r\n 'uploadSucceed':'Upload successfully',\r\n 'wait':'Wait a minute, the file is uploading.',\r\n 'saveTo':'Saving file to',\r\n 'delete':'Delete',\r\n 'selectAll':'Select all',\r\n 'selectNull':'Not at all',\r\n 'detail':'Details',\r\n 'fileName':'Filename',\r\n 'state':'State',\r\n 'operation':'Operation',\r\n 'size':'Size',\r\n 'close':'Close',\r\n 'loading':'Loading'\r\n },\r\n 'en': {\r\n 'uploadFile': 'Upload File',\r\n 'uploading':'File Uploadingâ¦â¦',\r\n 'selectedCount':'Selected files countï¼',\r\n 'limitCount':'System limit countï¼',\r\n 'rechooseFile':',Reselect upload file.',\r\n 'save':'Save',\r\n 'cancel':'Cancel',\r\n 'haveSameName':'A file with the same name has been uploaded: ',\r\n 'rename':'Rename',\r\n\t\t'replace':'Replace',\r\n 'sizeZero':'File size is 0',\r\n 'uploadFailure':'Upload failed',\r\n 'uploadSucceed':'Upload successfully',\r\n 'wait':'Wait a minute, the file is uploading.',\r\n 'saveTo':'Saving file to',\r\n 'delete':'Delete',\r\n 'selectAll':'Select all',\r\n 'selectNull':'Not at all',\r\n 'detail':'Details',\r\n 'fileName':'Filename',\r\n 'state':'State',\r\n 'operation':'Operation',\r\n 'size':'Size',\r\n 'close':'Close',\r\n 'loading':'Loading'\r\n\r\n },\r\n 'zh-CHT': {\r\n 'uploadFile': 'ä¸å³æä»¶',\r\n 'uploading':'æ£å¨ä¸å³æä»¶â¦â¦',\r\n 'selectedCount':'已鏿æä»¶æ¸éï¼',\r\n 'limitCount':'è¶
åºç³»çµ±éå¶æ¸éï¼',\r\n 'rechooseFile':',鿰鏿ä¸å³æä»¶ã',\r\n 'save':'ä¿å',\r\n 'cancel':'åæ¶',\r\n 'haveSameName':'å·²ä¸å³éååæä»¶: ',\r\n 'rename':'éå½å',\r\n\t\t'replace':'æ¿æ',\r\n 'sizeZero':'æä»¶å¤§å°çº0',\r\n 'uploadFailure':'ä¸å³å¤±æ',\r\n 'uploadSucceed':'ä¸å³æå',\r\n 'wait':'çä¸ä¸ï¼æä»¶æ£å¨ä¸å³ã',\r\n 'saveTo':'æ£å¨å°æä»¶ä¿åå°',\r\n 'delete':'å é¤',\r\n 'selectAll':'å
¨é¸',\r\n 'selectNull':'å
¨ä¸é¸',\r\n 'detail':'詳æ
',\r\n 'fileName':'æä»¶å',\r\n 'state':'çæ
',\r\n 'operation':'æä½',\r\n 'size':'大å°',\r\n 'close':'éé',\r\n 'loading':'æ¼å½å è¼ä¸'\r\n },\r\n};","import { Pipe, PipeTransform, Inject, LOCALE_ID } from '@angular/core';\r\nimport { LANG_RESOURCES } from './i18n/language.resource';\r\n\r\n@Pipe({ name: 'locale' })\r\nexport class LocalLangPipe implements PipeTransform {\r\n private readonly defaultLang: string = \"zh-CHS\";\r\n private langCode: string;\r\n private lang: {};\r\n constructor(\r\n @Inject(LOCALE_ID) localeId: string\r\n ) {\r\n this.langCode = localStorage.getItem(\"languageCode\") || localeId || this.defaultLang;\r\n this.lang = LANG_RESOURCES[this.langCode] || LANG_RESOURCES[this.defaultLang];\r\n }\r\n transform(name: string): any {\r\n return this.lang[name] || name;\r\n }\r\n}\r\n\r\n","import { Component, OnInit, Input, ViewChild, TemplateRef, Optional, Injector, LOCALE_ID } from '@angular/core';\nimport { FileInfo } from '../entity/fileinfo';\nimport { DocType } from '../entity/doctype';\nimport { GspFormDocInfo } from '../entity/gspformdocinfo';\nimport { OperatingModes } from '../entity/operatingmodes';\nimport { UploadService } from '../upload.service';\nimport { UploadFileInfo } from '../entity/uploadfileinfo';\nimport { MessagerService } from '@farris/ui-messager';\nimport { map } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\nimport { GspFormUploadEntity } from '../entity/gspformuploadentity';\nimport { UUID } from 'angular2-uuid';\nimport { StorageExtension } from '../entity/storageextension';\nimport { ExStorageFileInfo } from '../entity/extensionstoragefileinfo';\nimport { DropListEntity } from '../entity/droplistentity';\nimport { LoadingService } from '@farris/ui-loading';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { fillProperties } from '@angular/core/src/util/property';\nimport { FileState } from '../entity/filestate';\nimport { LocalLangPipe } from '../../local.pipe';\n\n\n@Component({\n selector: 'app-file-upload',\n templateUrl: './file-upload.component.html',\n styleUrls: ['./file-upload.component.css'],\n})\nexport class FileUploadComponent implements OnInit {\n\n files: FileInfo[] = [];\n metadataIdList: string[] = [];\n uploadFileInfoList: UploadFileInfo[] = [];\n errFileList: string[] = [];\n errTypeList: string[] = [];\n nullFileList: string[] = [];\n showType: number = 0;\n mouseOn: boolean = false;\n bufferSize = 1024 * 1024;\n selectedFiles: any;\n\n selectedFileCount: number = 0;\n\n uploadIconAddress = '/platform/runtime/dfs/images/upload.svg';\n uploadLittleIconAddress = '/platform/runtime/dfs/images/uploadIcon.svg';\n\n hasSelectedFile: boolean = false;\n\n fileAllSelected: boolean = false;\n\n uploadProcess = { width: '0%' };\n\n fileTotalChunk: { [key: string]: number } = {};\n //fileUploadState: { [key: string]: boolean } = {};\n //flag: number = 0;\n requestArray: Array<Observable<any>> = new Array;\n\n requestBodyArray: Array<GspFormUploadEntity> = new Array;\n\n uploadedChunk: { [key: string]: number } = {};\n uploadedProcess: { [key: string]: number } = {};\n\n //allSelected: boolean = true;\n storageExtension: StorageExtension;\n\n defaultPropertyName: string = \"\";\n propertiesNames: DropListEntity[] = [];\n\n queueListStyle = { width: '480px' };\n\n dropListValue: string = \"\";\n\n uploadedFileTotal: number = 0;\n\n haveExtensionProperty: boolean = false;\n\n uploadedFileInfoList = [];\n oldUploadedFileList = [];\n //uploadedNameList = [];\n\n sameNameAllowed = true;\n\n localeid:string;\n localepipe: LocalLangPipe;\n\n checkboxPos={ top:'0px'}\n\n constructor(private msgService: MessagerService, private uploadService: UploadService, private loadService: LoadingService, private injector?: Injector) { \n if(this.injector)\n {\n\n this.localeid = localStorage.getItem(\"languageCode\") || this.injector.get(LOCALE_ID);\n this.localepipe = new LocalLangPipe(this.localeid);\n } \n }\n @Input() formId: string;\n @Input() rootId: string;\n @Input() fileType: string = \"*\";\n @Input() fileCount: number = 0;\n @Input() oldIdList: string[] = [];\n\n //@Output() onCustomEvent: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('opCell') opCell: TemplateRef<any>;\n\n ngOnInit() {\n if(navigator.userAgent.indexOf('Firefox')>=0)\n this.checkboxPos.top='14px';\n //if (this.storageService != null) {\n this.uploadService.getStorageExtensionInfo().subscribe(\n res => {\n if (res != null && res.error == null) {\n this.storageExtension = res;\n this.defaultPropertyName = this.storageExtension.defaultPropertyName;\n this.propertiesNames.push({ id: \"0\", name: this.storageExtension.defaultPropertyName });\n let i = 0;\n // this.propertiesNames.push(...(this.storageExtension.extensionPropertyNameList));\n this.storageExtension.extensionPropertyNameList.forEach(element => {\n this.propertiesNames.push({ id: (++i).toString(), name: element });\n });\n this.queueListStyle.width = '380px';\n this.haveExtensionProperty = true;\n\n }\n }\n )\n\n this.uploadService.getRootSetting(this.rootId).subscribe(\n res => {\n if (res != null && res.error == null) {\n this.sameNameAllowed = res.sameNameAllowed;\n if (!this.sameNameAllowed) {\n this.uploadService.getUploadedFileInfoList(this.formId, this.rootId).subscribe(\n res => {\n if (res != null && res.error == null) {\n this.uploadedFileInfoList = res;\n this.oldUploadedFileList = JSON.parse(JSON.stringify(res));;\n\n }\n })\n }\n }\n }\n )\n if (this.oldIdList != null && this.oldIdList.length > 0) {\n this.uploadService.cancel(this.oldIdList, this.rootId).subscribe();\n }\n }\n\n\n fileSelected($event) {\n\n const loading = this.loadService.show({\n message: this.localepipe.transform('uploading')\n });\n this.hasSelectedFile = true;\n this.selectedFiles = document.querySelector('#file');\n\n if (this.fileCount > 0) {\n if (this.selectedFiles.files.length + this.files.length > this.fileCount) {\n let selectedNum: number = (this.selectedFiles.files.length as number) + this.files.length;\n this.msgService.warning(this.localepipe.transform('selectedCount') + selectedNum + this.localepipe.transform('limitCount') + this.fileCount + this.localepipe.transform('rechooseFile'));\n return;\n }\n }\n\n //this.flag = 0;\n for (let i = 0; i < this.selectedFiles.files.length; i++) {\n let selectedFile = this.selectedFiles.files[i];\n //selectedFile.slice\n let uuid = UUID.UUID();\n if (!this.sameNameAllowed) {\n if (this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name) != null) {\n // this.uploadedNameList.push(selectedFile.name);\n // this.msgService.question('ä¹åå·²ä¸ä¼ è¿ååæä»¶: ' + selectedFile.name + 'ï¼éè¦æ¿æ¢ä¹ï¼', () => {\n // uuid = this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name).metadataId;\n // this.uploadFile(uuid, selectedFile);\n // })\n const msg = this.msgService.show('warning', this.localepipe.transform('haveSameName') + selectedFile.name, {\n initialState: {\n buttons: [\n {\n text: this.localepipe.transform('rename'),\n cls: 'btn btn-secondary',\n handle: () => {\n let oldName: string = selectedFile.name;\n let newName\n let flag = true;\n let i = 1;\n while (flag) {\n newName = oldName.substring(0, oldName.lastIndexOf('.')) + '(' + i + ')' + oldName.substring(oldName.lastIndexOf('.'));\n if (this.uploadedFileInfoList.find(x => x.fileName == newName) != null) {\n i++;\n }\n else\n flag = false;\n }\n\n this.uploadFile(uuid, selectedFile, newName);\n msg.close();\n }\n },\n {\n text: this.localepipe.transform('replace'),\n cls: 'btn btn-secondary',\n handle: () => {\n uuid = this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name).metadataId;\n this.uploadFile(uuid, selectedFile, selectedFile.name, FileState.Update);\n this.uploadedFileTotal--;\n if (this.oldUploadedFileList.find(x => x.fileName == selectedFile.name)) {\n this.uploadedFileTotal++;\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == selectedFile.name)[0]), 1);\n }\n msg.close();\n }\n },\n {\n text: this.localepipe.transform('cancel'),\n cls: 'btn btn-secondary',\n handle: () => {\n msg.close();\n }\n }\n ]\n }\n })\n continue;\n }\n }\n\n // if (this.files.find(x => x.name == selectedFile.name) != null) {\n // this.errFileList.push(selectedFile.name);\n // continue;\n // }\n\n if (selectedFile.size == 0) {\n this.nullFileList.push(selectedFile.name);\n continue;\n }\n\n //this.flag += Math.ceil(selectedFile.size / this.bufferSize);\n //let reader = new FileReader();\n this.uploadFile(uuid, selectedFile, selectedFile.name);\n\n }\n // if (this.uploadedNameList.length > 0) {\n // let name: string = this.listToString(this.uploadedNameList);\n // this.msgService.warning('ä¹åå·²ä¸ä¼ è¿ååæä»¶: ' + name + 'è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n // this.uploadedNameList = [];\n // }\n\n if (this.errFileList.length > 0) {\n let name: string = this.listToString(this.errFileList);\n this.msgService.warning(this.localepipe.transform('haveSameName') + name + this.localepipe.transform('rechooseFile'));\n this.errFileList = [];\n }\n\n if (this.nullFileList.length > 0) {\n let name: string = this.listToString(this.nullFileList);\n name = name.substring(0, name.length - 1);\n this.msgService.warning(name + this.localepipe.transform('sizeZero') + this.localepipe.transform('rechooseFile'));\n this.nullFileList = [];\n }\n // if (this.errTypeList.length > 0) {\n // let type: string = this.listToString(this.errTypeList);\n // this.msgService.warning('䏿¯æä¸ä¼ ç±»å为 ' + type + 'çæä»¶è¯·éæ°éæ©ä¸ä¼ æä»¶ã');\n // this.errTypeList = [];\n // }\n this.files = this.files.slice();\n this.fileAllSelected = false;\n $event.target.value = '';\n loading.close();\n }\n\n showErrorMessage(file) {\n this.msgService.error(this.localepipe.transform('uploadFailure') + file.errorMessage);\n }\n\n\n uploadFile(uuid: string, selectedFile, fileName: string, state: FileState = FileState.New) {\n let fileInfo: FileInfo;\n // let uuid = UUID.UUID();\n //reader.readAsBinaryString(selectedFile);\n //reader.onload = (e) => {\n fileInfo = {\n id: uuid,\n name: fileName,\n type: selectedFile.type,\n source: \"\",\n size: this.getFileSize(selectedFile.size),\n fileSize: selectedFile.size,\n picListDisplayName: this.getPicListDisplayName(fileName),\n queueListDisplayName: this.getQueueDisplayName(fileName),\n //content: reader.result.toString(),\n hasUploaded: false,\n mouseOn: false,\n selectd: false,\n isUploading: true,\n uploadResult: false,\n uploadProcess: 0,\n errorMessage: \"\",\n extensionDropListId: 0,\n extensionName: \"\"\n }\n\n if (this.storageExtension != null)\n fileInfo.extensionName = this.defaultPropertyName;\n let chunkTotal: number = Math.ceil(selectedFile.size / this.bufferSize);\n let chunkIndex: number = 0;\n\n\n this.fileTotalChunk[uuid] = chunkTotal;\n\n let uploadFileInfo = new UploadFileInfo();\n\n uploadFileInfo.metadataId = uuid;\n uploadFileInfo.fileName = fileInfo.name;\n uploadFileInfo.fileSize = fileInfo.size;\n uploadFileInfo.state = state;\n\n\n while (chunkIndex < chunkTotal) {\n let uploadInfo = new GspFormUploadEntity;\n uploadInfo.formId = this.formId;\n uploadInfo.mode = OperatingModes.Temp;\n uploadInfo.rootId = this.rootId;\n\n let docInfo: GspFormDocInfo = new GspFormDocInfo;\n\n docInfo.fileName = fileName;\n docInfo.metadataId = uuid;\n docInfo.total = chunkTotal;\n\n this.uploadedChunk[docInfo.metadataId] = 0;\n\n let nextSize = Math.min((chunkIndex + 1) * this.bufferSize, selectedFile.size);\n let fileData = selectedFile.slice(chunkIndex * this.bufferSize, nextSize);\n let reader = new FileReader();\n reader.readAsBinaryString(fileData);\n let innerIndex = chunkIndex;\n reader.onload = () => {\n docInfo.fileContent = btoa(reader.result.toString());\n\n docInfo.index = innerIndex;\n //chunkIndex++;\n if (this.haveExtensionProperty)\n docInfo.exPropertyName = this.defaultPropertyName;\n //docInfo.isLast = true;\n uploadInfo.docInfo = docInfo;\n\n let info = uploadInfo;\n\n // this.requestArray.push(this.uploadService.uploadFile(uploadInfo));\n this.requestBodyArray.push(info);\n\n this.uploadService.uploadFile(info).subscribe(res => {\n if (res != null) {\n this.files[this.files.indexOf(fileInfo)].uploadResult = false;\n this.files[this.files.indexOf(fileInfo)].isUploading = false;\n this.files[this.files.indexOf(fileInfo)].errorMessage = res.error.Message;\n } else {\n this.uploadedChunk[docInfo.metadataId]++;\n this.files[this.files.indexOf(fileInfo)].uploadProcess = Number.parseInt((this.uploadedChunk[docInfo.metadataId] / this.fileTotalChunk[docInfo.metadataId] * 100).toFixed(0));\n if (this.uploadedChunk[docInfo.metadataId] == this.fileTotalChunk[docInfo.metadataId]) {\n this.files[this.files.indexOf(fileInfo)].uploadResult = true;\n this.files[this.files.indexOf(fileInfo)].isUploading = false;\n this.uploadFileInfoList = this.uploadFileInfoList.concat(uploadFileInfo);\n this.uploadedFileInfoList = this.uploadedFileInfoList.concat(uploadFileInfo);\n this.uploadedFileTotal++;\n }\n }\n });\n }\n //console.log(chunkIndex + 1);\n chunkIndex = chunkIndex + 1;\n }\n\n let type: string = selectedFile.type;\n if (type.includes(\"tiff\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Other);\n }\n else if (type.includes(\"image\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Image);\n }\n else if (type.includes(\"word\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Word);\n }\n else if (type.includes(\"pdf\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Pdf);\n }\n else if (type.includes(\"plain\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Txt);\n }\n else if (type.includes(\"sheet\") || type.includes(\"excel\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Excel)\n }\n else if (type.includes(\"powerpoint\") || type.includes(\"presentation\")) {\n this.addDocInfo(selectedFile, fileInfo, DocType.Powerpoint);\n }\n else {\n this.addDocInfo(selectedFile, fileInfo, DocType.Other);\n // let name: string = selectedFile.name;\n // let errType = name.substring(selectedFile.name.lastIndexOf('.'));\n // this.errTypeList.push(errType);\n }\n let index = -1;\n this.files.forEach(x => {\n if (x.name == fileInfo.name) {\n if (index == -1)\n index = this.files.indexOf(x);\n }\n })\n if (index != -1 && index != this.files.length - 1) {\n this.files.splice(index, 1);\n this.uploadFileInfoList.splice(index, 1);\n this.uploadedFileInfoList.splice(index, 1);\n this.uploadedFileTotal--;\n }\n }\n\n\n selectAllFile() {\n\n if (!this.fileAllSelected) {\n this.files.forEach(element => {\n // let obj: any = document.getElementById(element.name);\n // obj.checked = true;\n element.selectd = true;\n });\n this.fileAllSelected = true;\n this.selectedFileCount = this.files.length;\n\n } else {\n this.files.forEach(element => {\n // let obj: any = document.getElementById(element.name);\n // obj.checked = false;\n element.selectd = false;\n });\n this.fileAllSelected = false;\n this.selectedFileCount = 0;\n }\n }\n\n\n checkoutSelectFile(file: FileInfo) {\n // let obj: any = document.getElementById(fileName);\n file.selectd = !file.selectd;\n if (file.selectd)\n this.selectedFileCount++;\n else\n this.selectedFileCount--;\n if (this.selectedFileCount == this.files.length) {\n this.fileAllSelected = true;\n //this.isFileAllSelected();\n }\n else {\n this.fileAllSelected = false;\n //this.isFileAllSelected();\n }\n\n }\n\n listDeleteFile(fileInfo: FileInfo) {\n if (fileInfo.selectd)\n this.selectedFileCount--;\n //console.log(fileName);\n this.files.splice(this.files.indexOf(fileInfo), 1);\n if (fileInfo.uploadResult) {\n let idList: string[] = [];\n idList.push(fileInfo.id);\n this.uploadService.cancel(idList, this.rootId).subscribe();\n\n this.uploadFileInfoList.splice(this.uploadFileInfoList.indexOf(this.uploadFileInfoList.filter(x => x.fileName == fileInfo.name)[0]), 1);\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == fileInfo.name)[0]), 1);\n this.uploadedFileTotal--;\n }\n if (this.selectedFileCount == 0)\n this.fileAllSelected = false;\n }\n\n listMultipleDeleteFile() {\n let selectedFile: FileInfo[] = [];\n this.files.forEach(element => {\n let obj: any = document.getElementById(element.name);\n if (obj.checked)\n selectedFile.push(element);\n })\n let metadataList: string[] = [];\n selectedFile.forEach(element => {\n metadataList.push(element.id);\n this.files.splice(this.files.indexOf(element), 1);\n if (element.uploadResult) {\n // let idList: string[] = [];\n // idList.push(fileInfo.id);\n // this.uploadService.cancel(idList, this.rootId).subscribe();\n\n this.uploadFileInfoList.splice(this.uploadFileInfoList.indexOf(this.uploadFileInfoList.filter(x => x.fileName == element.name)[0]), 1);\n this.uploadedFileInfoList.splice(this.uploadedFileInfoList.indexOf(this.uploadedFileInfoList.filter(x => x.fileName == element.name)[0]), 1);\n this.uploadedFileTotal--;\n }\n })\n this.uploadService.cancel(metadataList, this.rootId).subscribe();\n\n let allBox: any = document.getElementById(\"allCheckBox\");\n if (allBox != null)\n allBox.checked = false;\n this.selectedFileCount = 0;\n this.fileAllSelected = false;\n }\n\n\n getPicListDisplayName(fileName: string) {\n if (fileName.length <= 10)\n return fileName;\n else {\n let headContent = fileName.substring(0, 2);\n let tailContent = fileName.substring(fileName.lastIndexOf('.') - 2);\n return headContent + \"â¦\" + tailContent;\n }\n }\n\n getQueueDisplayName(fileName: string) {\n return fileName;\n }\n\n addDocInfo(selectdFile, fileInfo: FileInfo, docType: DocType) {\n switch (docType) {\n case DocType.Word: {\n fileInfo.source = \"/platform/runtime/dfs/images/word.png\"\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Pdf: {\n fileInfo.source = \"/platform/runtime/dfs/images/pdf.png\"\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Excel: {\n fileInfo.source = \"/platform/runtime/dfs/images/excel.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Txt: {\n fileInfo.source = \"/platform/runtime/dfs/images/txt.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Powerpoint: {\n fileInfo.source = \"/platform/runtime/dfs/images/ppt.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Other: {\n fileInfo.source = \"/platform/runtime/dfs/images/file.png\";\n this.files.push(fileInfo);\n break;\n }\n\n case DocType.Image:\n let reader = new FileReader();\n\n reader.readAsDataURL(selectdFile);\n reader.onload = (_event) => {\n let imgUrl = reader.result;\n if (this.injector != null) {\n let sanitizer = this.injector.get(DomSanitizer);\n fileInfo.source = sanitizer.bypassSecurityTrustResourceUrl(imgUrl);\n } else\n fileInfo.source = imgUrl;\n this.files.push(fileInfo);\n }\n break;\n }\n\n }\n\n listToString(strList: string[]) {\n let name: string = \"\";\n for (let i = 0; i < strList.length; i++) {\n name += strList[i] + \",\";\n }\n return name;\n }\n\n\n exStorageFileList: ExStorageFileInfo[] = [];\n\n typeChange($event: any, file: FileInfo) {\n file.extensionName = $event.data.name;\n let exStorageFileInfo: ExStorageFileInfo = new ExStorageFileInfo;\n if (file.extensionName == this.storageExtension.defaultPropertyName) {\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0)\n this.exStorageFileList.splice(this.exStorageFileList.findIndex(x => x.metadataId == file.id), 1)\n } else {\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0) {\n exStorageFileInfo = this.exStorageFileList.filter(x => x.metadataId == file.id)[0];\n exStorageFileInfo.exPropertyName = file.extensionName;\n } else {\n exStorageFileInfo.metadataId = file.id;\n exStorageFileInfo.exPropertyName = file.extensionName;\n this.exStorageFileList.push(exStorageFileInfo);\n }\n }\n }\n\n upload(): Observable<any> {\n if (this.uploadedFileTotal != this.files.filter(x => x.isUploading || x.uploadResult).length) {\n // this.notifyService.success(<NotifyOptions>{\n // msg: 'ä¿åæåï¼', timeout: 3000\n // });\n this.msgService.warning(this.localepipe.transform('wait'));\n return of(false);\n }\n if (this.storageExtension == null)\n return of(this.uploadFileInfoList);\n else {\n if (this.exStorageFileList.length == 0)\n return of(this.uploadFileInfoList);\n else {\n const loading = this.loadService.show({\n message: this.localepipe.transform('saveTo') + this.storageExtension.extensionName\n });\n return this.uploadService.changeStorageInstance(this.exStorageFileList, this.rootId).pipe(\n map(res => {\n // if (res != null)\n // this.msgService.error('ä¿åå°' + this.storageExtension.extensionName + \"失败ï¼ä¸ä¼ æä»¶èªå¨ä¿åå°\" + this.storageExtension.defaultPropertyName + \"åå¨ã\" + res.error.Message);\n loading.close();\n return this.uploadFileInfoList;\n }))\n }\n }\n }\n\n cancel() {\n if (this.uploadFileInfoList.length == 0)\n return;\n this.uploadFileInfoList.forEach(element => {\n this.metadataIdList.push(element.metadataId);\n })\n this.uploadService.cancel(this.metadataIdList, this.rootId).subscribe();\n\n }\n\n getUploadFileInfoList() {\n return this.uploadFileInfoList;\n }\n\n delete(file) {\n this.files.splice(this.files.indexOf(file), 1);\n if (file.uploadResult)\n this.uploadedFileTotal--;\n if (this.exStorageFileList.filter(x => x.metadataId == file.id).length > 0) {\n this.exStorageFileList.splice(this.exStorageFileList.findIndex(x => x.metadataId == file.id), 1);\n }\n // var obj:any = document.querySelector('#file');\n // obj.files.remove();\n //obj.value='';\n }\n\n getFileSize(size: number) {\n if (size < 102400)\n return (size / 1024).toFixed(1) + \"K\";\n else if (size < 1024 * 1024)\n return (size / 1024).toFixed(0) + \"K\";\n else if (size < 100 * 1024 * 1024)\n return (size / 1024 / 1024).toFixed(1) + \"M\";\n else if (size < 1024 * 1024 * 1024)\n return (size / 1024 / 1024).toFixed(0) + \"M\";\n else\n return (size / 1024 / 1024 / 1024).toFixed(1) + \"G\";\n }\n showByGroup() {\n this.showType = 0;\n // this.selectedFileCount = 0;\n }\n\n showByList() {\n this.showType = 1;\n // this.selectedFileCount = 0;\n if (this.selectedFileCount != 0 && this.selectedFileCount == this.files.length) {\n this.fileAllSelected = true;\n }\n }\n\n mouseOver(file) {\n file.mouseOn = true;\n }\n mouseOut(file) {\n file.mouseOn = false;\n }\n\n}\n\n\n","import { Injectable } from '@angular/core';\n\n\n@Injectable()\nexport class DownloadService {\n\n constructor() { }\n\n getDownloadUrl(metadataId: string, rootId: string) {\n return \"/api/runtime/dfs/v1.0/doc/filecontent?metadataid=\" + metadataId + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(metadataId, rootId));\n }\n\n getMultipleDownloadUrl(metadataIdList: string, rootId: string) {\n let list: string[] = JSON.parse(metadataIdList);\n return \"/api/runtime/dfs/v1.0/doc/multiple/download?metadataidlist=\" + metadataIdList + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(list[0], rootId));\n }\n\n getMultipleDownloadUrlWithName(metadataIdList: string, rootId: string, zipName: string) {\n let list: string[] = JSON.parse(metadataIdList);\n if (zipName == null || zipName == \"\")\n zipName = 'unifile.zip';\n if (!zipName.endsWith(\".zip\"))\n zipName += '.zip';\n\n\n\n return \"/api/runtime/dfs/v1.0/doc/compress/download?metadataidlist=\" + metadataIdList + \"&rootid=\" + rootId + \"&token=\" + this.getToken(this.mergeString(list[0], rootId)) + \"&zipName=\" + encodeURIComponent(zipName);\n }\n\n getHistoryDownloadUrl(metadataId: string, rootId: string, version: string) {\n //let list:string[]=JSON.parse(metadataIdList);\n return \"/api/runtime/dfs/v1.0/doc/historycontent?metadataid=\" + metadataId + \"&rootid=\" + rootId + \"&version=\" + version + \"&token=\" + this.getToken(this.mergeString(metadataId, rootId));\n }\n\n\n\n private mergeString(str: string, str1: string): string {\n let min = str.length < str1.length ? str.length : str1.length;\n let res: string = \"\";\n let i = 0;\n for (i = 0; i < min; i++) {\n res += str.substring(i, i + 1);\n res += str1.substring(i, i + 1);\n }\n res += str.length < str1.length ? str1.substring(i) : str.substring(i);\n return res;\n }\n\n private getToken(str: string): string {\n let array = [1, 2, 3];\n if (str.length > 24)\n str = str.substring(0, 24);\n let length = Math.floor(str.length / 3);\n let str1 = str.substring(0, length);\n let str2 = str.substring(length, 2 * length);\n let str3 = str.substring(2 * length, 3 * length);\n let randomArray = [];\n var random = Math.ceil(Math.random() * 3);\n randomArray.push(array[random - 1]);\n array.splice(random - 1, 1);\n random = Math.ceil(Math.random() * 2);\n randomArray.push(array[random - 1]);\n array.splice(random - 1, 1);\n randomArray.push(array[0]);\n let timeStamp: string = Math.round(new Date().getTime() / 1000) + \"\";\n\n return timeStamp.substring(0, 5) + \"times\" + randomArray[0] + \"\" + randomArray[1] + \"\" + randomArray[2] + this.switchStr(str1, str2, str3, randomArray[0]) + this.switchStr(str1, str2, str3, randomArray[1]) + this.switchStr(str1, str2, str3, randomArray[2]) + \"times\" + timeStamp.substring(5);\n }\n\n private switchStr(str1: string, str2: string, str3: string, i: number): string {\n switch (i) {\n case 1: return str1;\n case 2: return str2;\n case 3: return str3;\n }\n }\n\n\n}\n","import { LOCALE_ID, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FileUploadComponent } from './file-upload/file-upload.component';\nimport { ButtonsModule } from '@progress/kendo-angular-buttons';\nimport { NotifyModule } from '@farris/ui-notify';\nimport { MessagerModule } from '@farris/ui-messager';\nimport { UploadService } from './upload.service';\nimport { LoadingModule } from '@farris/ui-loading';\nimport { ProgressModule } from '@farris/ui-progress'\nimport { FormsModule } from '@angular/forms';\nimport { ComboListModule } from '@farris/ui-combo-list';\nimport { DownloadService } from './download.service';\nimport { LocalLangPipe } from '../local.pipe';\nimport { LanguageService } from '@ecp-caf/caf-common';\n\n\n\n@NgModule({\n declarations: [FileUploadComponent,LocalLangPipe],\n imports: [\n CommonModule,\n ButtonsModule,\n NotifyModule,\n MessagerModule.forRoot(),\n LoadingModule.forRoot(),\n ProgressModule,\n FormsModule,\n ComboListModule\n\n ],\n exports: [FileUploadComponent],\n entryComponents: [FileUploadComponent],\n providers: [UploadService, DownloadService, LanguageService,\n { provide: LOCALE_ID, useValue: localStorage.getItem('languageCode') || 'zh-CHS' },]\n\n})\nexport class UploadModule { }\n\nexport const ɵa = UploadModule;\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { BsModalRef, BsModalService } from '@farris/ui-modal';\nimport { FileUploadComponent } from '../../upload/file-upload/file-upload.component';\n\n@Component({\n selector: 'app-uploaddialog',\n templateUrl: './uploaddialog.component.html',\n styleUrls: ['./uploaddialog.component.css']\n})\nexport class UploadDialogComponent implements OnInit {\n\n dlg: BsModalRef;\n\n metadataIdList:string[]=[];\n\n @Input() formId:string;\n\n constructor(private modalService: BsModalService) { }\n\n @ViewChild(FileUploadComponent) fileUpload: FileUploadComponent;\n\n ngOnInit() {\n }\n\n showDialog() {\n this.dlg = this.modalService.show(FileUploadComponent, {\n title: 'éæ©æä»¶',\n width: 800, height: 500,\n buttons: [\n {\n text: 'ä¸ä¼ ', cls: 'k-button k-button-icontext k-primary', iconCls: \"k-icon k-i-check\", handle: () => {\n this.fileUpload.upload();\n this.dlg.close();\n }\n },\n {\n text: 'å
³é', cls: 'k-button k-button-icontext', iconCls: \"k-icon k-i-close\", handle: () => {\n this.fileUpload.cancel();\n this.dlg.close();\n }\n }\n ],\n\n showButtons: true,\n\n });\n this.dlg.content.formId=this.formId;\n\n }\n\n}\n","import { Injectable, Injector, ComponentFactoryResolver, LOCALE_ID } from '@angular/core';\r\nimport { FileUploadComponent } from './upload/file-upload/file-upload.component';\r\nimport { BsModalService, BsModalRef } from '@farris/ui-modal';\r\nimport { UploadFileInfo } from './upload/entity/uploadfileinfo';\r\nimport { Observable, of } from 'rxjs';\r\nimport { UploadLimit } from './upload/entity/uploadlimit';\r\nimport { LocalLangPipe } from './local.pipe';\r\n\r\n\r\n@Injectable()\r\nexport class UploadDialogService {\r\n\r\n localeid:string;\r\n localpipe: LocalLangPipe;\r\n constructor(private modalService: BsModalService, private componentFactoryResolver: ComponentFactoryResolver, private injector: Injector) {\r\n if(this.injector)\r\n {\r\n this.modalService = this.injector.get(BsModalService);\r\n this.localeid = localStorage.getItem(\"languageCode\") || this.injector.get(LOCALE_ID);\r\n this.localpipe = new LocalLangPipe(this.localeid);\r\n } \r\n }\r\n\r\n dlg: BsModalRef;\r\n\r\n fileInfoList: UploadFileInfo[] = [];\r\n\r\n showDialog(formId: string, rootId: string) {\r\n let flag = 0;\r\n return new Promise(resolve => {\r\n var viewerFactory = this.componentFactoryResolver.resolveComponentFactory(FileUploadComponent);\r\n var viewerRef = viewerFactory.create(this.injector);\r\n\r\n viewerRef.instance.rootId = rootId;\r\n viewerRef.instance.formId = formId;\r\n\r\n this.dlg = this.modalService.show(viewerRef, {\r\n title: this.localpipe.transform('uploadFile'),\r\n width: 950, height: 570,\r\n buttons: [\r\n {\r\n text: this.localpipe.transform('save'), cls: 'k-button k-button-icontext k-primary', handle: () => {\r\n this.dlg.content.upload().subscribe(\r\n res => {\r\n if (res) {\r\n resolve(res);\r\n flag = 1;\r\n this.dlg.close();\r\n }\r\n }\r\n );\r\n }\r\n },\r\n {\r\n text: this.localpipe.transform('close'), cls: 'k-button k-button-icontext', handle: () => {\r\n this.dlg.close();\r\n }\r\n }\r\n ],\r\n\r\n showButtons: true,\r\n showMaxButton: false,\r\n beforeClose: (): Observable<boolean> => {\r\n if (flag == 0)\r\n this.dlg.content.cancel();\r\n return of(true);\r\n }\r\n });\r\n })\r\n }\r\n\r\n uploadFile(formId: string, rootId: string,oldIdList: string[]=[]) { \r\n return this.uploadFileWithLimit(formId, rootId, null, oldIdList);\r\n }\r\n\r\n\r\n uploadFileWithLimit(formId: string, rootId: string, limit: UploadLimit, oldIdList: string[]=[]) {\r\n let flag = 0;\r\n return new Promise(resolve => {\r\n var uploadFactory = this.componentFactoryResolver.resolveComponentFactory(FileUploadComponent);\r\n var uploadRef = uploadFactory.create(this.injector);\r\n if (limit != null) {\r\n uploadRef.instance.fileCount = limit.fileCount;\r\n if (limit.fileType != null && limit.fileType != \"\")\r\n uploadRef.instance.fileType = limit.fileType\r\n }\r\n\r\n uploadRef.instance.rootId = rootId;\r\n uploadRef.instance.formId = formId;\r\n uploadRef.instance.oldIdList=oldIdList;\r\n\r\n this.dlg = this.modalService.show(uploadRef, {\r\n title: this.localpipe.transform('uploadFile'),\r\n width: 950, height: 570,\r\n buttons: [\r\n {\r\n\r\n text: this.localpipe.transform('save'), cls: 'k-button k-button-icontext k-primary', handle: () => {\r\n this.dlg.content.upload().subscribe(\r\n res => {\r\n if (res) {\r\n resolve(res);\r\n flag = 1;\r\n this.dlg.close();\r\n }\r\n }\r\n );\r\n }\r\n },\r\n {\r\n text: this.localpipe.transform('close'), cls: 'k-button k-button-icontext', handle: () => {\r\n this.dlg.close();\r\n }\r\n }\r\n ],\r\n\r\n showButtons: true,\r\n showMaxButton: false,\r\n beforeClose: (): Observable<boolean> => {\r\n if (flag == 0)\r\n this.dlg.content.cancel();\r\n return of(true);\r\n }\r\n });\r\n })\r\n }\r\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { FarrisDialogModule } from '@farris/ui-dialog';\nimport { ButtonsModule } from '@progress/kendo-angular-buttons';\nimport { MessagerModule } from '@farris/ui-messager';\nimport { BsModalService } from '@farris/ui-modal';\n\nimport { UploadModule } from '../upload/upload.module';\nimport { UploadDialogComponent } from './uploaddialog/uploaddialog.component';\nimport { HttpService } from '@ecp-caf/caf-common';\nimport { UploadService } from '../upload/upload.service';\nimport { UploadDialogService } from '../uploaddialog.service';\nimport { HttpClientModule } from '@angular/common/http';\nimport { NotifyModule } from '@farris/ui-notify';\nimport { FileUploadComponent } from '../upload/file-upload/file-upload.component';\n\n\n@NgModule({\n declarations: [UploadDialogComponent],\n imports: [\n CommonModule,\n FarrisDialogModule,\n MessagerModule.forRoot(),\n UploadModule,\n ButtonsModule,\n NotifyModule.forRoot(),\n HttpClientModule\n ],\n exports: [UploadDialogComponent,FileUploadComponent],\n entryComponents: [UploadDialogComponent,FileUploadComponent],\n providers: [BsModalService, HttpService, UploadDialogService, UploadService]\n})\nexport class UploadDialogMoudle { }\n","export class UploadLimit {\r\n public fileType: string = \"*\";\r\n public fileCount: number = 0;\r\n}","import { GspFormDocInfo } from './gspformdocinfo';\r\nimport { OperatingModes } from './operatingmodes';\r\n\r\nexport class GspFormUploadListEntity {\r\n public formId: string;\r\n public docInfoList: GspFormDocInfo[];\r\n public mode: OperatingModes;\r\n public rootId: string;\r\n}","export class GspDocMetaProperty{\r\n public extProperties1:string;\r\n public extProperties2:string;\r\n public extProperties3:string;\r\n public extProperties4:string;\r\n public extProperties5:string;\r\n}","export class FileInfo {\r\n public id: string;\r\n public name: string;\r\n public type: string;\r\n public source: string | ArrayBuffer;\r\n public picListDisplayName: string;\r\n public queueListDisplayName: string;\r\n //public content: string;\r\n public size: string;\r\n public fileSize: number;\r\n public hasUploaded: boolean;\r\n public mouseOn: boolean;\r\n public selectd: boolean;\r\n public isUploading: boolean;\r\n public uploadResult: boolean;\r\n public uploadProcess: number;\r\n public errorMessage: string;\r\n public extensionDropListId:number;\r\n public extensionName: string;\r\n}"]}
|
|
@@ -6,4 +6,5 @@
|
|
|
6
6
|
* Generated bundle index. Do not edit.
|
|
7
7
|
*/
|
|
8
8
|
export { FormdocUploadService, FormdocUploadComponent, FormdocUploadModule, UploadDialogMoudle, UploadDialogComponent, UploadDialogService, UploadService, DownloadService, FileUploadComponent, UploadFileInfo, UploadModule, ɵa, UploadLimit, GspFormDocOperateEntity, GspFormRemoveListEntity, GspFormUploadListEntity, GspFormDocInfo, GspDocMetaProperty, GspFormUploadEntity, FileInfo, OperatingModes, FileState } from './public-api';
|
|
9
|
-
|
|
9
|
+
export { LocalLangPipe as ɵb } from './lib/local.pipe';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3NwLXN2Yy1mb3JtZG9jLXVwbG9hZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bnc3Atc3ZjL2Zvcm1kb2MtdXBsb2FkLyIsInNvdXJjZXMiOlsiZ3NwLXN2Yy1mb3JtZG9jLXVwbG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsK1pBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxhQUFhLElBQUksRUFBRSxFQUFDLE1BQU0sa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7TG9jYWxMYW5nUGlwZSBhcyDJtWJ9IGZyb20gJy4vbGliL2xvY2FsLnBpcGUnOyJdfQ==
|
|
@@ -2,15 +2,20 @@
|
|
|
2
2
|
* @fileoverview added by tsickle
|
|
3
3
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
4
|
*/
|
|
5
|
-
import { NgModule } from '@angular/core';
|
|
5
|
+
import { LOCALE_ID, NgModule } from '@angular/core';
|
|
6
|
+
import { LanguageService } from '@ecp-caf/caf-common';
|
|
6
7
|
import { FormdocUploadComponent } from './formdoc-upload.component';
|
|
8
|
+
const ɵ0 = localStorage.getItem('languageCode') || 'zh-CHS';
|
|
7
9
|
export class FormdocUploadModule {
|
|
8
10
|
}
|
|
9
11
|
FormdocUploadModule.decorators = [
|
|
10
12
|
{ type: NgModule, args: [{
|
|
11
13
|
declarations: [FormdocUploadComponent],
|
|
12
14
|
imports: [],
|
|
13
|
-
exports: [FormdocUploadComponent]
|
|
15
|
+
exports: [FormdocUploadComponent],
|
|
16
|
+
providers: [LanguageService,
|
|
17
|
+
{ provide: LOCALE_ID, useValue: ɵ0 },]
|
|
14
18
|
},] }
|
|
15
19
|
];
|
|
16
|
-
|
|
20
|
+
export { ɵ0 };
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWRvYy11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdzcC1zdmMvZm9ybWRvYy11cGxvYWQvIiwic291cmNlcyI6WyJsaWIvZm9ybWRvYy11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7V0FXaEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxRQUFRO0FBRXBGLE1BQU0sT0FBTyxtQkFBbUI7OztZQVQvQixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxFQUNSO2dCQUVELE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2dCQUNqQyxTQUFTLEVBQUMsQ0FBSyxlQUFlO29CQUM1QixFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxJQUFrRCxFQUFFLEVBQUU7YUFDdkYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMT0NBTEVfSUQsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAZWNwLWNhZi9jYWYtY29tbW9uJztcbmltcG9ydCB7IEZvcm1kb2NVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1kb2MtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2NhbExhbmdQaXBlIH0gZnJvbSAnLi9sb2NhbC5waXBlJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGb3JtZG9jVXBsb2FkQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICBdLFxuICBcbiAgZXhwb3J0czogW0Zvcm1kb2NVcGxvYWRDb21wb25lbnRdLFxuICBwcm92aWRlcnM6WyAgICBMYW5ndWFnZVNlcnZpY2UsXG4gICAgeyBwcm92aWRlOiBMT0NBTEVfSUQsIHVzZVZhbHVlOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ3VhZ2VDb2RlJykgfHwgJ3poLUNIUycgfSxdXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1kb2NVcGxvYWRNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/** @type {?} */
|
|
6
|
+
export const LANG_RESOURCES = {
|
|
7
|
+
'zh-CHS': {
|
|
8
|
+
'uploadFile': '上传文件',
|
|
9
|
+
'uploading': '正在上传文件……',
|
|
10
|
+
'selectedCount': '已选择文件数量:',
|
|
11
|
+
'limitCount': '超出系统限制数量:',
|
|
12
|
+
'rechooseFile': ',重新选择上传文件。',
|
|
13
|
+
'save': '保存',
|
|
14
|
+
'cancel': '取消',
|
|
15
|
+
'haveSameName': '已上传过同名文件: ',
|
|
16
|
+
'rename': '重命名',
|
|
17
|
+
'replace': '替换',
|
|
18
|
+
'sizeZero': '文件大小为0',
|
|
19
|
+
'uploadFailure': '上传失败',
|
|
20
|
+
'uploadSucceed': '上传成功',
|
|
21
|
+
'wait': '等一下,文档正在上传。',
|
|
22
|
+
'saveTo': '正在将文件保存到',
|
|
23
|
+
'delete': '删除',
|
|
24
|
+
'selectAll': '全选',
|
|
25
|
+
'selectNull': '全不选',
|
|
26
|
+
'detail': '详情',
|
|
27
|
+
'fileName': '文件名',
|
|
28
|
+
'state': '状态',
|
|
29
|
+
'operation': '操作',
|
|
30
|
+
'size': '大小',
|
|
31
|
+
'close': '关闭',
|
|
32
|
+
'loading': '拼命加载中'
|
|
33
|
+
},
|
|
34
|
+
'en-US': {
|
|
35
|
+
'uploadFile': 'Upload File',
|
|
36
|
+
'uploading': 'File Uploading……',
|
|
37
|
+
'selectedCount': 'Selected files count:',
|
|
38
|
+
'limitCount': 'System limit count:',
|
|
39
|
+
'rechooseFile': ',Reselect upload file.',
|
|
40
|
+
'save': 'Save',
|
|
41
|
+
'cancel': 'Cancel',
|
|
42
|
+
'haveSameName': 'A file with the same name has been uploaded: ',
|
|
43
|
+
'rename': 'Rename',
|
|
44
|
+
'replace': 'Replace',
|
|
45
|
+
'sizeZero': 'File size is 0',
|
|
46
|
+
'uploadFailure': 'Upload failed',
|
|
47
|
+
'uploadSucceed': 'Upload successfully',
|
|
48
|
+
'wait': 'Wait a minute, the file is uploading.',
|
|
49
|
+
'saveTo': 'Saving file to',
|
|
50
|
+
'delete': 'Delete',
|
|
51
|
+
'selectAll': 'Select all',
|
|
52
|
+
'selectNull': 'Not at all',
|
|
53
|
+
'detail': 'Details',
|
|
54
|
+
'fileName': 'Filename',
|
|
55
|
+
'state': 'State',
|
|
56
|
+
'operation': 'Operation',
|
|
57
|
+
'size': 'Size',
|
|
58
|
+
'close': 'Close',
|
|
59
|
+
'loading': 'Loading'
|
|
60
|
+
},
|
|
61
|
+
'en': {
|
|
62
|
+
'uploadFile': 'Upload File',
|
|
63
|
+
'uploading': 'File Uploading……',
|
|
64
|
+
'selectedCount': 'Selected files count:',
|
|
65
|
+
'limitCount': 'System limit count:',
|
|
66
|
+
'rechooseFile': ',Reselect upload file.',
|
|
67
|
+
'save': 'Save',
|
|
68
|
+
'cancel': 'Cancel',
|
|
69
|
+
'haveSameName': 'A file with the same name has been uploaded: ',
|
|
70
|
+
'rename': 'Rename',
|
|
71
|
+
'replace': 'Replace',
|
|
72
|
+
'sizeZero': 'File size is 0',
|
|
73
|
+
'uploadFailure': 'Upload failed',
|
|
74
|
+
'uploadSucceed': 'Upload successfully',
|
|
75
|
+
'wait': 'Wait a minute, the file is uploading.',
|
|
76
|
+
'saveTo': 'Saving file to',
|
|
77
|
+
'delete': 'Delete',
|
|
78
|
+
'selectAll': 'Select all',
|
|
79
|
+
'selectNull': 'Not at all',
|
|
80
|
+
'detail': 'Details',
|
|
81
|
+
'fileName': 'Filename',
|
|
82
|
+
'state': 'State',
|
|
83
|
+
'operation': 'Operation',
|
|
84
|
+
'size': 'Size',
|
|
85
|
+
'close': 'Close',
|
|
86
|
+
'loading': 'Loading'
|
|
87
|
+
},
|
|
88
|
+
'zh-CHT': {
|
|
89
|
+
'uploadFile': '上傳文件',
|
|
90
|
+
'uploading': '正在上傳文件……',
|
|
91
|
+
'selectedCount': '已選擇文件數量:',
|
|
92
|
+
'limitCount': '超出系統限制數量:',
|
|
93
|
+
'rechooseFile': ',重新選擇上傳文件。',
|
|
94
|
+
'save': '保存',
|
|
95
|
+
'cancel': '取消',
|
|
96
|
+
'haveSameName': '已上傳過同名文件: ',
|
|
97
|
+
'rename': '重命名',
|
|
98
|
+
'replace': '替換',
|
|
99
|
+
'sizeZero': '文件大小為0',
|
|
100
|
+
'uploadFailure': '上傳失敗',
|
|
101
|
+
'uploadSucceed': '上傳成功',
|
|
102
|
+
'wait': '等一下,文件正在上傳。',
|
|
103
|
+
'saveTo': '正在將文件保存到',
|
|
104
|
+
'delete': '删除',
|
|
105
|
+
'selectAll': '全選',
|
|
106
|
+
'selectNull': '全不選',
|
|
107
|
+
'detail': '詳情',
|
|
108
|
+
'fileName': '文件名',
|
|
109
|
+
'state': '狀態',
|
|
110
|
+
'operation': '操作',
|
|
111
|
+
'size': '大小',
|
|
112
|
+
'close': '關閉',
|
|
113
|
+
'loading': '拼命加載中'
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UucmVzb3VyY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ3NwLXN2Yy9mb3JtZG9jLXVwbG9hZC8iLCJzb3VyY2VzIjpbImxpYi9pMThuL2xhbmd1YWdlLnJlc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsTUFBTSxPQUFPLGNBQWMsR0FBRztJQUMxQixRQUFRLEVBQUU7UUFDTixZQUFZLEVBQUUsTUFBTTtRQUNwQixXQUFXLEVBQUMsVUFBVTtRQUN0QixlQUFlLEVBQUMsVUFBVTtRQUMxQixZQUFZLEVBQUMsV0FBVztRQUN4QixjQUFjLEVBQUMsWUFBWTtRQUMzQixNQUFNLEVBQUMsSUFBSTtRQUNYLFFBQVEsRUFBQyxJQUFJO1FBQ2IsY0FBYyxFQUFDLFlBQVk7UUFDM0IsUUFBUSxFQUFDLEtBQUs7UUFDcEIsU0FBUyxFQUFDLElBQUk7UUFDUixVQUFVLEVBQUMsUUFBUTtRQUNuQixlQUFlLEVBQUMsTUFBTTtRQUN0QixlQUFlLEVBQUMsTUFBTTtRQUN0QixNQUFNLEVBQUMsYUFBYTtRQUNwQixRQUFRLEVBQUMsVUFBVTtRQUNuQixRQUFRLEVBQUMsSUFBSTtRQUNiLFdBQVcsRUFBQyxJQUFJO1FBQ2hCLFlBQVksRUFBQyxLQUFLO1FBQ2xCLFFBQVEsRUFBQyxJQUFJO1FBQ2IsVUFBVSxFQUFDLEtBQUs7UUFDaEIsT0FBTyxFQUFDLElBQUk7UUFDWixXQUFXLEVBQUMsSUFBSTtRQUNoQixNQUFNLEVBQUMsSUFBSTtRQUNYLE9BQU8sRUFBQyxJQUFJO1FBQ1osU0FBUyxFQUFDLE9BQU87S0FDcEI7SUFDRCxPQUFPLEVBQUU7UUFDTCxZQUFZLEVBQUUsYUFBYTtRQUMzQixXQUFXLEVBQUMsa0JBQWtCO1FBQzlCLGVBQWUsRUFBQyx1QkFBdUI7UUFDdkMsWUFBWSxFQUFDLHFCQUFxQjtRQUNsQyxjQUFjLEVBQUMsd0JBQXdCO1FBQ3ZDLE1BQU0sRUFBQyxNQUFNO1FBQ2IsUUFBUSxFQUFDLFFBQVE7UUFDakIsY0FBYyxFQUFDLCtDQUErQztRQUM5RCxRQUFRLEVBQUMsUUFBUTtRQUN2QixTQUFTLEVBQUMsU0FBUztRQUNiLFVBQVUsRUFBQyxnQkFBZ0I7UUFDM0IsZUFBZSxFQUFDLGVBQWU7UUFDL0IsZUFBZSxFQUFDLHFCQUFxQjtRQUNyQyxNQUFNLEVBQUMsdUNBQXVDO1FBQzlDLFFBQVEsRUFBQyxnQkFBZ0I7UUFDekIsUUFBUSxFQUFDLFFBQVE7UUFDakIsV0FBVyxFQUFDLFlBQVk7UUFDeEIsWUFBWSxFQUFDLFlBQVk7UUFDekIsUUFBUSxFQUFDLFNBQVM7UUFDbEIsVUFBVSxFQUFDLFVBQVU7UUFDckIsT0FBTyxFQUFDLE9BQU87UUFDZixXQUFXLEVBQUMsV0FBVztRQUN2QixNQUFNLEVBQUMsTUFBTTtRQUNiLE9BQU8sRUFBQyxPQUFPO1FBQ2YsU0FBUyxFQUFDLFNBQVM7S0FDdEI7SUFDRCxJQUFJLEVBQUU7UUFDRixZQUFZLEVBQUUsYUFBYTtRQUMzQixXQUFXLEVBQUMsa0JBQWtCO1FBQzlCLGVBQWUsRUFBQyx1QkFBdUI7UUFDdkMsWUFBWSxFQUFDLHFCQUFxQjtRQUNsQyxjQUFjLEVBQUMsd0JBQXdCO1FBQ3ZDLE1BQU0sRUFBQyxNQUFNO1FBQ2IsUUFBUSxFQUFDLFFBQVE7UUFDakIsY0FBYyxFQUFDLCtDQUErQztRQUM5RCxRQUFRLEVBQUMsUUFBUTtRQUN2QixTQUFTLEVBQUMsU0FBUztRQUNiLFVBQVUsRUFBQyxnQkFBZ0I7UUFDM0IsZUFBZSxFQUFDLGVBQWU7UUFDL0IsZUFBZSxFQUFDLHFCQUFxQjtRQUNyQyxNQUFNLEVBQUMsdUNBQXVDO1FBQzlDLFFBQVEsRUFBQyxnQkFBZ0I7UUFDekIsUUFBUSxFQUFDLFFBQVE7UUFDakIsV0FBVyxFQUFDLFlBQVk7UUFDeEIsWUFBWSxFQUFDLFlBQVk7UUFDekIsUUFBUSxFQUFDLFNBQVM7UUFDbEIsVUFBVSxFQUFDLFVBQVU7UUFDckIsT0FBTyxFQUFDLE9BQU87UUFDZixXQUFXLEVBQUMsV0FBVztRQUN2QixNQUFNLEVBQUMsTUFBTTtRQUNiLE9BQU8sRUFBQyxPQUFPO1FBQ2YsU0FBUyxFQUFDLFNBQVM7S0FFdEI7SUFDRCxRQUFRLEVBQUU7UUFDTixZQUFZLEVBQUUsTUFBTTtRQUNwQixXQUFXLEVBQUMsVUFBVTtRQUN0QixlQUFlLEVBQUMsVUFBVTtRQUMxQixZQUFZLEVBQUMsV0FBVztRQUN4QixjQUFjLEVBQUMsWUFBWTtRQUMzQixNQUFNLEVBQUMsSUFBSTtRQUNYLFFBQVEsRUFBQyxJQUFJO1FBQ2IsY0FBYyxFQUFDLFlBQVk7UUFDM0IsUUFBUSxFQUFDLEtBQUs7UUFDcEIsU0FBUyxFQUFDLElBQUk7UUFDUixVQUFVLEVBQUMsUUFBUTtRQUNuQixlQUFlLEVBQUMsTUFBTTtRQUN0QixlQUFlLEVBQUMsTUFBTTtRQUN0QixNQUFNLEVBQUMsYUFBYTtRQUNwQixRQUFRLEVBQUMsVUFBVTtRQUNuQixRQUFRLEVBQUMsSUFBSTtRQUNiLFdBQVcsRUFBQyxJQUFJO1FBQ2hCLFlBQVksRUFBQyxLQUFLO1FBQ2xCLFFBQVEsRUFBQyxJQUFJO1FBQ2IsVUFBVSxFQUFDLEtBQUs7UUFDaEIsT0FBTyxFQUFDLElBQUk7UUFDWixXQUFXLEVBQUMsSUFBSTtRQUNoQixNQUFNLEVBQUMsSUFBSTtRQUNYLE9BQU8sRUFBQyxJQUFJO1FBQ1osU0FBUyxFQUFDLE9BQU87S0FDcEI7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBMQU5HX1JFU09VUkNFUyA9IHtcclxuICAgICd6aC1DSFMnOiB7XHJcbiAgICAgICAgJ3VwbG9hZEZpbGUnOiAn5LiK5Lyg5paH5Lu2JyxcclxuICAgICAgICAndXBsb2FkaW5nJzon5q2j5Zyo5LiK5Lyg5paH5Lu24oCm4oCmJyxcclxuICAgICAgICAnc2VsZWN0ZWRDb3VudCc6J+W3sumAieaLqeaWh+S7tuaVsOmHj++8micsXHJcbiAgICAgICAgJ2xpbWl0Q291bnQnOifotoXlh7rns7vnu5/pmZDliLbmlbDph4/vvJonLFxyXG4gICAgICAgICdyZWNob29zZUZpbGUnOics6YeN5paw6YCJ5oup5LiK5Lyg5paH5Lu244CCJyxcclxuICAgICAgICAnc2F2ZSc6J+S/neWtmCcsXHJcbiAgICAgICAgJ2NhbmNlbCc6J+WPlua2iCcsXHJcbiAgICAgICAgJ2hhdmVTYW1lTmFtZSc6J+W3suS4iuS8oOi/h+WQjOWQjeaWh+S7tjogJyxcclxuICAgICAgICAncmVuYW1lJzon6YeN5ZG95ZCNJyxcclxuXHRcdCdyZXBsYWNlJzon5pu/5o2iJyxcclxuICAgICAgICAnc2l6ZVplcm8nOifmlofku7blpKflsI/kuLowJyxcclxuICAgICAgICAndXBsb2FkRmFpbHVyZSc6J+S4iuS8oOWksei0pScsXHJcbiAgICAgICAgJ3VwbG9hZFN1Y2NlZWQnOifkuIrkvKDmiJDlip8nLFxyXG4gICAgICAgICd3YWl0Jzon562J5LiA5LiL77yM5paH5qGj5q2j5Zyo5LiK5Lyg44CCJyxcclxuICAgICAgICAnc2F2ZVRvJzon5q2j5Zyo5bCG5paH5Lu25L+d5a2Y5YiwJyxcclxuICAgICAgICAnZGVsZXRlJzon5Yig6ZmkJyxcclxuICAgICAgICAnc2VsZWN0QWxsJzon5YWo6YCJJyxcclxuICAgICAgICAnc2VsZWN0TnVsbCc6J+WFqOS4jemAiScsXHJcbiAgICAgICAgJ2RldGFpbCc6J+ivpuaDhScsXHJcbiAgICAgICAgJ2ZpbGVOYW1lJzon5paH5Lu25ZCNJyxcclxuICAgICAgICAnc3RhdGUnOifnirbmgIEnLFxyXG4gICAgICAgICdvcGVyYXRpb24nOifmk43kvZwnLFxyXG4gICAgICAgICdzaXplJzon5aSn5bCPJyxcclxuICAgICAgICAnY2xvc2UnOiflhbPpl60nLFxyXG4gICAgICAgICdsb2FkaW5nJzon5ou85ZG95Yqg6L295LitJ1xyXG4gICAgfSxcclxuICAgICdlbi1VUyc6IHtcclxuICAgICAgICAndXBsb2FkRmlsZSc6ICdVcGxvYWQgRmlsZScsXHJcbiAgICAgICAgJ3VwbG9hZGluZyc6J0ZpbGUgVXBsb2FkaW5n4oCm4oCmJyxcclxuICAgICAgICAnc2VsZWN0ZWRDb3VudCc6J1NlbGVjdGVkIGZpbGVzIGNvdW5077yaJyxcclxuICAgICAgICAnbGltaXRDb3VudCc6J1N5c3RlbSBsaW1pdCBjb3VudO+8micsXHJcbiAgICAgICAgJ3JlY2hvb3NlRmlsZSc6JyxSZXNlbGVjdCB1cGxvYWQgZmlsZS4nLFxyXG4gICAgICAgICdzYXZlJzonU2F2ZScsXHJcbiAgICAgICAgJ2NhbmNlbCc6J0NhbmNlbCcsXHJcbiAgICAgICAgJ2hhdmVTYW1lTmFtZSc6J0EgZmlsZSB3aXRoIHRoZSBzYW1lIG5hbWUgaGFzIGJlZW4gdXBsb2FkZWQ6ICcsXHJcbiAgICAgICAgJ3JlbmFtZSc6J1JlbmFtZScsXHJcblx0XHQncmVwbGFjZSc6J1JlcGxhY2UnLFxyXG4gICAgICAgICdzaXplWmVybyc6J0ZpbGUgc2l6ZSBpcyAwJyxcclxuICAgICAgICAndXBsb2FkRmFpbHVyZSc6J1VwbG9hZCBmYWlsZWQnLFxyXG4gICAgICAgICd1cGxvYWRTdWNjZWVkJzonVXBsb2FkIHN1Y2Nlc3NmdWxseScsXHJcbiAgICAgICAgJ3dhaXQnOidXYWl0IGEgbWludXRlLCB0aGUgZmlsZSBpcyB1cGxvYWRpbmcuJyxcclxuICAgICAgICAnc2F2ZVRvJzonU2F2aW5nIGZpbGUgdG8nLFxyXG4gICAgICAgICdkZWxldGUnOidEZWxldGUnLFxyXG4gICAgICAgICdzZWxlY3RBbGwnOidTZWxlY3QgYWxsJyxcclxuICAgICAgICAnc2VsZWN0TnVsbCc6J05vdCBhdCBhbGwnLFxyXG4gICAgICAgICdkZXRhaWwnOidEZXRhaWxzJyxcclxuICAgICAgICAnZmlsZU5hbWUnOidGaWxlbmFtZScsXHJcbiAgICAgICAgJ3N0YXRlJzonU3RhdGUnLFxyXG4gICAgICAgICdvcGVyYXRpb24nOidPcGVyYXRpb24nLFxyXG4gICAgICAgICdzaXplJzonU2l6ZScsXHJcbiAgICAgICAgJ2Nsb3NlJzonQ2xvc2UnLFxyXG4gICAgICAgICdsb2FkaW5nJzonTG9hZGluZydcclxuICAgIH0sXHJcbiAgICAnZW4nOiB7XHJcbiAgICAgICAgJ3VwbG9hZEZpbGUnOiAnVXBsb2FkIEZpbGUnLFxyXG4gICAgICAgICd1cGxvYWRpbmcnOidGaWxlIFVwbG9hZGluZ+KApuKApicsXHJcbiAgICAgICAgJ3NlbGVjdGVkQ291bnQnOidTZWxlY3RlZCBmaWxlcyBjb3VudO+8micsXHJcbiAgICAgICAgJ2xpbWl0Q291bnQnOidTeXN0ZW0gbGltaXQgY291bnTvvJonLFxyXG4gICAgICAgICdyZWNob29zZUZpbGUnOicsUmVzZWxlY3QgdXBsb2FkIGZpbGUuJyxcclxuICAgICAgICAnc2F2ZSc6J1NhdmUnLFxyXG4gICAgICAgICdjYW5jZWwnOidDYW5jZWwnLFxyXG4gICAgICAgICdoYXZlU2FtZU5hbWUnOidBIGZpbGUgd2l0aCB0aGUgc2FtZSBuYW1lIGhhcyBiZWVuIHVwbG9hZGVkOiAnLFxyXG4gICAgICAgICdyZW5hbWUnOidSZW5hbWUnLFxyXG5cdFx0J3JlcGxhY2UnOidSZXBsYWNlJyxcclxuICAgICAgICAnc2l6ZVplcm8nOidGaWxlIHNpemUgaXMgMCcsXHJcbiAgICAgICAgJ3VwbG9hZEZhaWx1cmUnOidVcGxvYWQgZmFpbGVkJyxcclxuICAgICAgICAndXBsb2FkU3VjY2VlZCc6J1VwbG9hZCBzdWNjZXNzZnVsbHknLFxyXG4gICAgICAgICd3YWl0JzonV2FpdCBhIG1pbnV0ZSwgdGhlIGZpbGUgaXMgdXBsb2FkaW5nLicsXHJcbiAgICAgICAgJ3NhdmVUbyc6J1NhdmluZyBmaWxlIHRvJyxcclxuICAgICAgICAnZGVsZXRlJzonRGVsZXRlJyxcclxuICAgICAgICAnc2VsZWN0QWxsJzonU2VsZWN0IGFsbCcsXHJcbiAgICAgICAgJ3NlbGVjdE51bGwnOidOb3QgYXQgYWxsJyxcclxuICAgICAgICAnZGV0YWlsJzonRGV0YWlscycsXHJcbiAgICAgICAgJ2ZpbGVOYW1lJzonRmlsZW5hbWUnLFxyXG4gICAgICAgICdzdGF0ZSc6J1N0YXRlJyxcclxuICAgICAgICAnb3BlcmF0aW9uJzonT3BlcmF0aW9uJyxcclxuICAgICAgICAnc2l6ZSc6J1NpemUnLFxyXG4gICAgICAgICdjbG9zZSc6J0Nsb3NlJyxcclxuICAgICAgICAnbG9hZGluZyc6J0xvYWRpbmcnXHJcblxyXG4gICAgfSxcclxuICAgICd6aC1DSFQnOiB7XHJcbiAgICAgICAgJ3VwbG9hZEZpbGUnOiAn5LiK5YKz5paH5Lu2JyxcclxuICAgICAgICAndXBsb2FkaW5nJzon5q2j5Zyo5LiK5YKz5paH5Lu24oCm4oCmJyxcclxuICAgICAgICAnc2VsZWN0ZWRDb3VudCc6J+W3sumBuOaTh+aWh+S7tuaVuOmHj++8micsXHJcbiAgICAgICAgJ2xpbWl0Q291bnQnOifotoXlh7rns7vntbHpmZDliLbmlbjph4/vvJonLFxyXG4gICAgICAgICdyZWNob29zZUZpbGUnOics6YeN5paw6YG45pOH5LiK5YKz5paH5Lu244CCJyxcclxuICAgICAgICAnc2F2ZSc6J+S/neWtmCcsXHJcbiAgICAgICAgJ2NhbmNlbCc6J+WPlua2iCcsXHJcbiAgICAgICAgJ2hhdmVTYW1lTmFtZSc6J+W3suS4iuWCs+mBjuWQjOWQjeaWh+S7tjogJyxcclxuICAgICAgICAncmVuYW1lJzon6YeN5ZG95ZCNJyxcclxuXHRcdCdyZXBsYWNlJzon5pu/5o+bJyxcclxuICAgICAgICAnc2l6ZVplcm8nOifmlofku7blpKflsI/ngrowJyxcclxuICAgICAgICAndXBsb2FkRmFpbHVyZSc6J+S4iuWCs+WkseaVlycsXHJcbiAgICAgICAgJ3VwbG9hZFN1Y2NlZWQnOifkuIrlgrPmiJDlip8nLFxyXG4gICAgICAgICd3YWl0Jzon562J5LiA5LiL77yM5paH5Lu25q2j5Zyo5LiK5YKz44CCJyxcclxuICAgICAgICAnc2F2ZVRvJzon5q2j5Zyo5bCH5paH5Lu25L+d5a2Y5YiwJyxcclxuICAgICAgICAnZGVsZXRlJzon5Yig6ZmkJyxcclxuICAgICAgICAnc2VsZWN0QWxsJzon5YWo6YG4JyxcclxuICAgICAgICAnc2VsZWN0TnVsbCc6J+WFqOS4jemBuCcsXHJcbiAgICAgICAgJ2RldGFpbCc6J+ips+aDhScsXHJcbiAgICAgICAgJ2ZpbGVOYW1lJzon5paH5Lu25ZCNJyxcclxuICAgICAgICAnc3RhdGUnOifni4DmhYsnLFxyXG4gICAgICAgICdvcGVyYXRpb24nOifmk43kvZwnLFxyXG4gICAgICAgICdzaXplJzon5aSn5bCPJyxcclxuICAgICAgICAnY2xvc2UnOifpl5zploknLFxyXG4gICAgICAgICdsb2FkaW5nJzon5ou85ZG95Yqg6LyJ5LitJ1xyXG4gICAgfSxcclxufTsiXX0=
|