匿名化文件夹支持选择内置文件
Showing
3 changed files
with
48 additions
and
10 deletions
| ... | @@ -391,4 +391,10 @@ export const downDicomPath = (taskExecGuid) => request({ | ... | @@ -391,4 +391,10 @@ export const downDicomPath = (taskExecGuid) => request({ |
| 391 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/down-dicom-path?taskExecGuid=${taskExecGuid}`, | 391 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/down-dicom-path?taskExecGuid=${taskExecGuid}`, |
| 392 | method: 'get', | 392 | method: 'get', |
| 393 | responseType: 'blob' | 393 | responseType: 'blob' |
| 394 | }) | ||
| 395 | |||
| 396 | /** 获取内置的文件夹路径 */ | ||
| 397 | export const getInnerFolderPath = () => request({ | ||
| 398 | url: `${import.meta.env.VITE_APP_DIGITAL_CONTRACT_URL}/anon-task/get-dicom-path`, | ||
| 399 | method: 'get' | ||
| 394 | }) | 400 | }) |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -52,11 +52,19 @@ | ... | @@ -52,11 +52,19 @@ |
| 52 | <!-- 弹框展示服务器文件夹目录,并选择 --> | 52 | <!-- 弹框展示服务器文件夹目录,并选择 --> |
| 53 | <Dialog ref="dialogRef" :dialog-info="uploadFileDialogInfo" @btnClick="dialogBtnClick"> | 53 | <Dialog ref="dialogRef" :dialog-info="uploadFileDialogInfo" @btnClick="dialogBtnClick"> |
| 54 | <template #extra-content> | 54 | <template #extra-content> |
| 55 | <div class="folder-main-content" v-loading="uploadFileDialogInfo.contentLoading"> | 55 | <div class="radio-main"> |
| 56 | <span>是否选择内置文件夹路径:</span> | ||
| 57 | <el-radio-group v-model="isBuiltInPath"> | ||
| 58 | <el-radio :value="true">是</el-radio> | ||
| 59 | <el-radio :value="false">否</el-radio> | ||
| 60 | </el-radio-group> | ||
| 61 | </div> | ||
| 62 | <div v-show="!isBuiltInPath" class="folder-main-content" v-loading="uploadFileDialogInfo.contentLoading"> | ||
| 56 | <Tree ref="treeInfoRef" :treeInfo="folderTreeInfo" @nodeClick="nodeClick" key="path" | 63 | <Tree ref="treeInfoRef" :treeInfo="folderTreeInfo" @nodeClick="nodeClick" key="path" |
| 57 | @loadNode="loadFolderTreeNode" /> | 64 | @loadNode="loadFolderTreeNode" /> |
| 58 | </div> | 65 | </div> |
| 59 | <div class="folder-foot">{{ '当前选中文件夹路径:' + (dialogOpenSelectNode.path || '--') }}</div> | 66 | <div v-show="!isBuiltInPath" class="folder-foot">{{ '当前选中文件夹路径:' + (dialogOpenSelectNode.path || '--') }}</div> |
| 67 | <div v-show="isBuiltInPath" class="builtIn-folder-foot">{{ '内置文件夹路径:' + (builtInPath || '--') }}</div> | ||
| 60 | </template> | 68 | </template> |
| 61 | </Dialog> | 69 | </Dialog> |
| 62 | <div v-show="clickSelectNode.path && dicomStatisticsData.state" class="folder-foot">{{ '当前提取文件夹路径:' + | 70 | <div v-show="clickSelectNode.path && dicomStatisticsData.state" class="folder-foot">{{ '当前提取文件夹路径:' + |
| ... | @@ -235,7 +243,8 @@ import { | ... | @@ -235,7 +243,8 @@ import { |
| 235 | scanFolder, | 243 | scanFolder, |
| 236 | getDicomMeta, | 244 | getDicomMeta, |
| 237 | getDicomStatistics, | 245 | getDicomStatistics, |
| 238 | retryDicom | 246 | retryDicom, |
| 247 | getInnerFolderPath | ||
| 239 | } from '@/api/modules/dataAnonymization'; | 248 | } from '@/api/modules/dataAnonymization'; |
| 240 | import { | 249 | import { |
| 241 | parseAndDecodeUrl, | 250 | parseAndDecodeUrl, |
| ... | @@ -946,6 +955,11 @@ const uploadFileChange = (file) => { | ... | @@ -946,6 +955,11 @@ const uploadFileChange = (file) => { |
| 946 | 955 | ||
| 947 | /*** ----------------------- 解析扫描文件 ------------------------------ */ | 956 | /*** ----------------------- 解析扫描文件 ------------------------------ */ |
| 948 | 957 | ||
| 958 | /** 是否选择内置文件夹路径 */ | ||
| 959 | const isBuiltInPath = ref(false); | ||
| 960 | |||
| 961 | const builtInPath = ref(''); | ||
| 962 | |||
| 949 | /** 上传选择文件夹对话框 */ | 963 | /** 上传选择文件夹对话框 */ |
| 950 | const uploadFileDialogInfo = ref({ | 964 | const uploadFileDialogInfo = ref({ |
| 951 | visible: false, | 965 | visible: false, |
| ... | @@ -1013,7 +1027,7 @@ const refreshFolderResult = () => { | ... | @@ -1013,7 +1027,7 @@ const refreshFolderResult = () => { |
| 1013 | const dialogBtnClick = (btn) => { | 1027 | const dialogBtnClick = (btn) => { |
| 1014 | if (btn.value == 'submit') { | 1028 | if (btn.value == 'submit') { |
| 1015 | clickSelectNode.value = dialogOpenSelectNode.value; | 1029 | clickSelectNode.value = dialogOpenSelectNode.value; |
| 1016 | if (!clickSelectNode.value.path) { | 1030 | if (!isBuiltInPath.value && !clickSelectNode.value.path) { |
| 1017 | proxy.$ElMessage.error('请先选择文件夹'); | 1031 | proxy.$ElMessage.error('请先选择文件夹'); |
| 1018 | return; | 1032 | return; |
| 1019 | } | 1033 | } |
| ... | @@ -1024,7 +1038,7 @@ const dialogBtnClick = (btn) => { | ... | @@ -1024,7 +1038,7 @@ const dialogBtnClick = (btn) => { |
| 1024 | saveParams.coverageArea = []; | 1038 | saveParams.coverageArea = []; |
| 1025 | } | 1039 | } |
| 1026 | saveParams.filePath = { | 1040 | saveParams.filePath = { |
| 1027 | url: clickSelectNode.value.path | 1041 | url: isBuiltInPath.value ? builtInPath.value : clickSelectNode.value.path |
| 1028 | }; | 1042 | }; |
| 1029 | saveParams.samplingRate = null; | 1043 | saveParams.samplingRate = null; |
| 1030 | if (taskGuid.value) { | 1044 | if (taskGuid.value) { |
| ... | @@ -1138,6 +1152,15 @@ const uploadFolder = () => { | ... | @@ -1138,6 +1152,15 @@ const uploadFolder = () => { |
| 1138 | clickSelectNode.value = {}; | 1152 | clickSelectNode.value = {}; |
| 1139 | dialogOpenSelectNode.value = {}; | 1153 | dialogOpenSelectNode.value = {}; |
| 1140 | uploadFileDialogInfo.value.visible = true; | 1154 | uploadFileDialogInfo.value.visible = true; |
| 1155 | if (!builtInPath.value) { | ||
| 1156 | getInnerFolderPath().then((res: any) => { | ||
| 1157 | if (res?.code == proxy.$passCode) { | ||
| 1158 | builtInPath.value = res.data || ''; | ||
| 1159 | } else { | ||
| 1160 | ElMessage.error(res.msg); | ||
| 1161 | } | ||
| 1162 | }) | ||
| 1163 | } | ||
| 1141 | folderTreeInfo.value.loading = true; | 1164 | folderTreeInfo.value.loading = true; |
| 1142 | scanFolder().then((res: any) => { | 1165 | scanFolder().then((res: any) => { |
| 1143 | folderTreeInfo.value.loading = false; | 1166 | folderTreeInfo.value.loading = false; |
| ... | @@ -2377,8 +2400,8 @@ onUnmounted(() => { | ... | @@ -2377,8 +2400,8 @@ onUnmounted(() => { |
| 2377 | } | 2400 | } |
| 2378 | 2401 | ||
| 2379 | .folder-main-content { | 2402 | .folder-main-content { |
| 2380 | height: 450px; | 2403 | height: 420px; |
| 2381 | padding: 8px 16px; | 2404 | padding: 0px 16px 8px; |
| 2382 | 2405 | ||
| 2383 | :deep(.tree_panel) { | 2406 | :deep(.tree_panel) { |
| 2384 | height: 100%; | 2407 | height: 100%; |
| ... | @@ -2389,8 +2412,17 @@ onUnmounted(() => { | ... | @@ -2389,8 +2412,17 @@ onUnmounted(() => { |
| 2389 | } | 2412 | } |
| 2390 | } | 2413 | } |
| 2391 | 2414 | ||
| 2415 | .radio-main { | ||
| 2416 | padding: 8px 24px 0px; | ||
| 2417 | } | ||
| 2418 | |||
| 2392 | .folder-foot { | 2419 | .folder-foot { |
| 2393 | padding: 0px 16px 8px; | 2420 | padding: 0px 24px 8px; |
| 2421 | line-height: 21px; | ||
| 2422 | } | ||
| 2423 | |||
| 2424 | .builtIn-folder-foot { | ||
| 2425 | padding: 8px 24px; | ||
| 2394 | line-height: 21px; | 2426 | line-height: 21px; |
| 2395 | } | 2427 | } |
| 2396 | 2428 | ... | ... |
| ... | @@ -1588,7 +1588,7 @@ onActivated(() => { | ... | @@ -1588,7 +1588,7 @@ onActivated(() => { |
| 1588 | <span class="item_label">创建时间:</span> | 1588 | <span class="item_label">创建时间:</span> |
| 1589 | <span class="item_value">{{ detailInfo.createTime || '--' }}</span> | 1589 | <span class="item_value">{{ detailInfo.createTime || '--' }}</span> |
| 1590 | </div> | 1590 | </div> |
| 1591 | <div class="list_item" style=" width: 55%;"> | 1591 | <!-- <div class="list_item" style=" width: 55%;"> |
| 1592 | <span class="item_label">有效期:</span> | 1592 | <span class="item_label">有效期:</span> |
| 1593 | <span class="item_value">{{ !detailInfo.signatureTime ? '--' : (detailInfo.signatureTime + '至' + | 1593 | <span class="item_value">{{ !detailInfo.signatureTime ? '--' : (detailInfo.signatureTime + '至' + |
| 1594 | detailInfo.endTime) }}</span> | 1594 | detailInfo.endTime) }}</span> |
| ... | @@ -1596,7 +1596,7 @@ onActivated(() => { | ... | @@ -1596,7 +1596,7 @@ onActivated(() => { |
| 1596 | <div class="list_item" style=" width: 45%;"> | 1596 | <div class="list_item" style=" width: 45%;"> |
| 1597 | <span class="item_label">签署时间:</span> | 1597 | <span class="item_label">签署时间:</span> |
| 1598 | <span class="item_value">{{ detailInfo.signatureTime || '--' }}</span> | 1598 | <span class="item_value">{{ detailInfo.signatureTime || '--' }}</span> |
| 1599 | </div> | 1599 | </div> --> |
| 1600 | </div> | 1600 | </div> |
| 1601 | </div> | 1601 | </div> |
| 1602 | <div class="empty-div"></div> | 1602 | <div class="empty-div"></div> | ... | ... |
-
Please register or sign in to post a comment