|
@@ -67,65 +67,67 @@
|
|
:infinite-scroll-disabled="!hasMorePanoData || isRequestingMorePanoData"
|
|
:infinite-scroll-disabled="!hasMorePanoData || isRequestingMorePanoData"
|
|
>
|
|
>
|
|
<!-- vuex中的上传中数据 -->
|
|
<!-- vuex中的上传中数据 -->
|
|
- <div class="table-body-row" v-for="(item, i) in uploadStatusListPano" :key="item.uid" @click="onClickRow">
|
|
|
|
- <!-- 如果已经上传成功 -->
|
|
|
|
- <template v-if="item.status === 'SUCCESS'">
|
|
|
|
- <span class="table-data">
|
|
|
|
- <RadioOrCheckbox class="checkbox" :isLightTheme="true" :isMultiSelection="isMultiSelection"
|
|
|
|
- :isCheckedInitial="select.some(i => i[primaryKey] === item.successInfo[primaryKey])"
|
|
|
|
- @change="v => selectItem(item.successInfo, v)" />
|
|
|
|
- </span>
|
|
|
|
- <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
- <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
- <img
|
|
|
|
- :src="item.successInfo[tableItemStructure.key] + (Number(item.fileSize) > 512 ? $imgsuffix : ``)"
|
|
|
|
- alt="">
|
|
|
|
- </div>
|
|
|
|
- <span v-else class="ellipsis"
|
|
|
|
- v-title="tableItemStructure.key === 'name' ? item.successInfo[tableItemStructure.key] : ''">{{
|
|
|
|
- item.successInfo[tableItemStructure.key]
|
|
|
|
- }}</span>
|
|
|
|
- </span>
|
|
|
|
- </template>
|
|
|
|
- <!-- 如果还在上传或切图处理中 -->
|
|
|
|
- <template v-else-if="item.status === 'LOADING'">
|
|
|
|
- <span class="table-data">
|
|
|
|
- <div class="checkbox">
|
|
|
|
- <span class="for-outer-circle"></span>
|
|
|
|
- <span class="for-inner-circle disabled"></span>
|
|
|
|
- </div>
|
|
|
|
- </span>
|
|
|
|
- <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
- <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
- <img src="@/assets/images/icons/upload-file-type-icon-image@2x.png" alt="">
|
|
|
|
- </div>
|
|
|
|
- <span v-if="tableItemStructure.key !== 'name' && tableItemStructure.key !== 'fileSize'"></span>
|
|
|
|
- <span v-if="tableItemStructure.key === 'fileSize' && item.ifKnowProgress">{{$i18n.t(`gather.upload_material`)}} {{ Math.round(item.progress
|
|
|
|
- * 100)
|
|
|
|
- }}%</span>
|
|
|
|
- <span v-if="tableItemStructure.key === 'fileSize' && !item.ifKnowProgress">{{ item.statusText }}</span>
|
|
|
|
- <span v-if="tableItemStructure.key === 'name'" class="ellipsis"
|
|
|
|
- v-title="tableItemStructure.key === 'name' ? item.title : ''">{{ item.title }}</span>
|
|
|
|
- </span>
|
|
|
|
- </template>
|
|
|
|
- <!-- 如果上传失败了 -->
|
|
|
|
- <template v-else-if="item.status === 'FAIL'">
|
|
|
|
- <span class="table-data">
|
|
|
|
- <div class="checkbox">
|
|
|
|
- <span class="for-outer-circle"></span>
|
|
|
|
- <span class="for-inner-circle disabled"></span>
|
|
|
|
- </div>
|
|
|
|
- </span>
|
|
|
|
- <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
- <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
- <img src="@/assets/images/icons/upload-file-type-icon-image@2x.png" alt="">
|
|
|
|
- </div>
|
|
|
|
- <span v-if="tableItemStructure.key !== 'name' && tableItemStructure.key !== 'fileSize'"></span>
|
|
|
|
- <span v-if="tableItemStructure.key === 'fileSize'">{{ $i18n.t(`tips_code.FAILURE_3025`) }}</span>
|
|
|
|
- <span v-if="tableItemStructure.key === 'name'" class="ellipsis"
|
|
|
|
- v-title="tableItemStructure.key === 'name' ? item.title : ''">{{ item.title }}</span>
|
|
|
|
- </span>
|
|
|
|
- </template>
|
|
|
|
|
|
+ <div v-for="(item, i) in uploadStatusListPano" :key="item.uid">
|
|
|
|
+ <div class="table-body-row" v-if="item.parentFolderId === currentFolderId" @click="onClickRow">
|
|
|
|
+ <!-- 如果已经上传成功 -->
|
|
|
|
+ <template v-if="item.status === 'SUCCESS'">
|
|
|
|
+ <span class="table-data">
|
|
|
|
+ <RadioOrCheckbox class="checkbox" :isLightTheme="true" :isMultiSelection="isMultiSelection"
|
|
|
|
+ :isCheckedInitial="select.some(i => i[primaryKey] === item.successInfo[primaryKey])"
|
|
|
|
+ @change="v => selectItem(item.successInfo, v)" />
|
|
|
|
+ </span>
|
|
|
|
+ <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
+ <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
+ <img
|
|
|
|
+ :src="item.successInfo[tableItemStructure.key] + (Number(item.fileSize) > 512 ? $imgsuffix : ``)"
|
|
|
|
+ alt="">
|
|
|
|
+ </div>
|
|
|
|
+ <span v-else class="ellipsis"
|
|
|
|
+ v-title="tableItemStructure.key === 'name' ? item.successInfo[tableItemStructure.key] : ''">{{
|
|
|
|
+ item.successInfo[tableItemStructure.key]
|
|
|
|
+ }}</span>
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ <!-- 如果还在上传或切图处理中 -->
|
|
|
|
+ <template v-else-if="item.status === 'LOADING'">
|
|
|
|
+ <span class="table-data">
|
|
|
|
+ <div class="checkbox">
|
|
|
|
+ <span class="for-outer-circle"></span>
|
|
|
|
+ <span class="for-inner-circle disabled"></span>
|
|
|
|
+ </div>
|
|
|
|
+ </span>
|
|
|
|
+ <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
+ <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
+ <img src="@/assets/images/icons/upload-file-type-icon-image@2x.png" alt="">
|
|
|
|
+ </div>
|
|
|
|
+ <span v-if="tableItemStructure.key !== 'name' && tableItemStructure.key !== 'fileSize'"></span>
|
|
|
|
+ <span v-if="tableItemStructure.key === 'fileSize' && item.ifKnowProgress">{{$i18n.t(`gather.upload_material`)}} {{ Math.round(item.progress
|
|
|
|
+ * 100)
|
|
|
|
+ }}%</span>
|
|
|
|
+ <span v-if="tableItemStructure.key === 'fileSize' && !item.ifKnowProgress">{{ item.statusText }}</span>
|
|
|
|
+ <span v-if="tableItemStructure.key === 'name'" class="ellipsis"
|
|
|
|
+ v-title="tableItemStructure.key === 'name' ? item.title : ''">{{ item.title }}</span>
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ <!-- 如果上传失败了 -->
|
|
|
|
+ <template v-else-if="item.status === 'FAIL'">
|
|
|
|
+ <span class="table-data">
|
|
|
|
+ <div class="checkbox">
|
|
|
|
+ <span class="for-outer-circle"></span>
|
|
|
|
+ <span class="for-inner-circle disabled"></span>
|
|
|
|
+ </div>
|
|
|
|
+ </span>
|
|
|
|
+ <span class="table-data" v-for="(tableItemStructure, idx) in tableHeadersForPano" :key="idx">
|
|
|
|
+ <div v-if="tableItemStructure.type == 'image'" class="list-img">
|
|
|
|
+ <img src="@/assets/images/icons/upload-file-type-icon-image@2x.png" alt="">
|
|
|
|
+ </div>
|
|
|
|
+ <span v-if="tableItemStructure.key !== 'name' && tableItemStructure.key !== 'fileSize'"></span>
|
|
|
|
+ <span v-if="tableItemStructure.key === 'fileSize'">{{ $i18n.t(`tips_code.FAILURE_3025`) }}</span>
|
|
|
|
+ <span v-if="tableItemStructure.key === 'name'" class="ellipsis"
|
|
|
|
+ v-title="tableItemStructure.key === 'name' ? item.title : ''">{{ item.title }}</span>
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<!-- 本组件内的列表数据 -->
|
|
<!-- 本组件内的列表数据 -->
|
|
<div
|
|
<div
|
|
@@ -643,15 +645,15 @@ export default {
|
|
uid: `u_${this.$randomWord(true, 8, 8)}`,
|
|
uid: `u_${this.$randomWord(true, 8, 8)}`,
|
|
abortHandler: null,
|
|
abortHandler: null,
|
|
backendId: '',
|
|
backendId: '',
|
|
|
|
+ parentFolderId: this.currentFolderId,
|
|
};
|
|
};
|
|
|
|
|
|
itemInUploadList.abortHandler = uploadMaterial(
|
|
itemInUploadList.abortHandler = uploadMaterial(
|
|
{
|
|
{
|
|
- file: eachFile
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
|
|
+ dirId: this.currentFolderId,
|
|
|
|
+ file: eachFile,
|
|
|
|
+ tempId: itemInUploadList.uid,
|
|
type: 'pano',
|
|
type: 'pano',
|
|
- uid: itemInUploadList.uid,
|
|
|
|
},
|
|
},
|
|
(response) => { // 上传成功
|
|
(response) => { // 上传成功
|
|
if (response.code !== 0) {
|
|
if (response.code !== 0) {
|
|
@@ -898,7 +900,7 @@ export default {
|
|
display: inline-block;
|
|
display: inline-block;
|
|
width: 100%;
|
|
width: 100%;
|
|
|
|
|
|
- >.table-body-row {
|
|
|
|
|
|
+ .table-body-row {
|
|
height: 50px;
|
|
height: 50px;
|
|
border-bottom: 1px solid #EBEDF0;
|
|
border-bottom: 1px solid #EBEDF0;
|
|
display: flex;
|
|
display: flex;
|