Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
b7a19c2581
|
@ -8,11 +8,11 @@ export function requestPackageAndAnonymizImage(params) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// 获取影像上传列表
|
// 获取影像上传列表
|
||||||
export function getSubjectImageUploadList(params) {
|
export function getSubjectImageUploadList(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/DownloadAndUpload/getSubjectImageUploadList',
|
url: '/DownloadAndUpload/getSubjectImageUploadList',
|
||||||
method: 'get',
|
method: 'post',
|
||||||
params
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// 预上传
|
// 预上传
|
||||||
|
@ -72,3 +72,11 @@ export function getIRUploadTaskNoneDicomStudyList(data) {
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 校验上传影像
|
||||||
|
export function verifyIRStudyAllowUpload(data) {
|
||||||
|
return request({
|
||||||
|
url: '/DownloadAndUpload/verifyIRStudyAllowUpload',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
|
@ -12,7 +12,12 @@
|
||||||
:label="$t('uploadDicomAndNonedicom:label:dicom')"
|
:label="$t('uploadDicomAndNonedicom:label:dicom')"
|
||||||
name="dicom"
|
name="dicom"
|
||||||
>
|
>
|
||||||
<dicomFile />
|
<dicomFile
|
||||||
|
v-if="activeName === 'dicom'"
|
||||||
|
:SubjectId="SubjectId"
|
||||||
|
:SubjectCode="SubjectCode"
|
||||||
|
:Criterion="Criterion"
|
||||||
|
/>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane
|
<el-tab-pane
|
||||||
:label="$t('uploadDicomAndNonedicom:label:nonedicom')"
|
:label="$t('uploadDicomAndNonedicom:label:nonedicom')"
|
||||||
|
|
|
@ -135,8 +135,10 @@
|
||||||
<!--预览--->
|
<!--预览--->
|
||||||
<el-button
|
<el-button
|
||||||
circle
|
circle
|
||||||
|
:disabled="scope.row.UploadedFileCount <= 0"
|
||||||
icon="el-icon-view"
|
icon="el-icon-view"
|
||||||
:title="$t('upload:nonedicom:button:preview')"
|
:title="$t('upload:nonedicom:button:preview')"
|
||||||
|
@click.stop="handlePreviewNoneDicomFiles(scope.row)"
|
||||||
/>
|
/>
|
||||||
<!--上传--->
|
<!--上传--->
|
||||||
<el-button
|
<el-button
|
||||||
|
@ -334,6 +336,7 @@ import {
|
||||||
} from '@/api/load.js'
|
} from '@/api/load.js'
|
||||||
import { preArchiveStudy, uploadNoneDicomFile } from '@/api/trials'
|
import { preArchiveStudy, uploadNoneDicomFile } from '@/api/trials'
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
let defaultSearchData = () => {
|
let defaultSearchData = () => {
|
||||||
return {
|
return {
|
||||||
SubjectId: null,
|
SubjectId: null,
|
||||||
|
@ -377,6 +380,7 @@ export default {
|
||||||
btnLoading: false,
|
btnLoading: false,
|
||||||
currentRow: {},
|
currentRow: {},
|
||||||
studyMonitorId: null,
|
studyMonitorId: null,
|
||||||
|
open: null,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -404,7 +408,7 @@ export default {
|
||||||
store.dispatch('trials/setUnLock', this.btnLoading)
|
store.dispatch('trials/setUnLock', this.btnLoading)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
mounted() {
|
created() {
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -534,10 +538,22 @@ export default {
|
||||||
// 预览文件
|
// 预览文件
|
||||||
previewFile(row) {
|
previewFile(row) {
|
||||||
// window.open(row.FullFilePath, '_blank')
|
// window.open(row.FullFilePath, '_blank')
|
||||||
this.imgObj.url = row.FullFilePath
|
this.imgObj.url = row.FullFilePath || row.Path
|
||||||
this.imgObj.loading = true
|
this.imgObj.loading = true
|
||||||
this.imgObj.visible = true
|
this.imgObj.visible = true
|
||||||
},
|
},
|
||||||
|
// 预览单个检查下非Dicom文件
|
||||||
|
handlePreviewNoneDicomFiles(row) {
|
||||||
|
if (this.open) {
|
||||||
|
this.open.close()
|
||||||
|
}
|
||||||
|
let trialId = this.$route.query.trialId
|
||||||
|
var token = getToken()
|
||||||
|
const routeData = this.$router.resolve({
|
||||||
|
path: `/showNoneDicoms?trialId=${trialId}&subjectVisitId=${row.SourceSubjectVisitId}&studyId=${row.Id}&TokenKey=${token}`,
|
||||||
|
})
|
||||||
|
this.open = window.open(routeData.href, '_blank')
|
||||||
|
},
|
||||||
// 删除
|
// 删除
|
||||||
async remove(item) {
|
async remove(item) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -126,13 +126,13 @@ async function uploadFile({ s3, fileInformation, uploadId, bucket, changeStatus,
|
||||||
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
||||||
let bytesTime = timeList.find(item => time - item < 1000);
|
let bytesTime = timeList.find(item => time - item < 1000);
|
||||||
if (bytesTime) {
|
if (bytesTime) {
|
||||||
bytesReceivedPerSecond[bytesTime] += fileInformation.file.size * percentage;
|
bytesReceivedPerSecond[bytesTime] += fileInformation.file.size * (percentage - lastPercentage);
|
||||||
} else {
|
} else {
|
||||||
console.log("未查询到时间")
|
console.log("未查询到时间")
|
||||||
if (timeList.length > 0) {
|
if (timeList.length > 0) {
|
||||||
bytesReceivedPerSecond[timeList[timeList.length - 1]] += fileInformation.file.size * percentage;
|
bytesReceivedPerSecond[timeList[timeList.length - 1]] += fileInformation.file.size * (percentage - lastPercentage);
|
||||||
} else {
|
} else {
|
||||||
bytesReceivedPerSecond[time] = fileInformation.file.size * percentage;
|
bytesReceivedPerSecond[time] = fileInformation.file.size * (percentage - lastPercentage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,13 +57,13 @@ async function multipartUpload(OSSclient, partSize, saveFileId, uploadFile, data
|
||||||
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
||||||
let bytesTime = timeList.find(item => time - item < 1000);
|
let bytesTime = timeList.find(item => time - item < 1000);
|
||||||
if (bytesTime) {
|
if (bytesTime) {
|
||||||
bytesReceivedPerSecond[bytesTime] += data.file.size * percentage;
|
bytesReceivedPerSecond[bytesTime] += data.file.size * (percentage - checkData[saveFileId]);
|
||||||
} else {
|
} else {
|
||||||
console.log("未查询到时间")
|
console.log("未查询到时间")
|
||||||
if (timeList.length > 0) {
|
if (timeList.length > 0) {
|
||||||
bytesReceivedPerSecond[timeList[timeList.length - 1]] += data.file.size * percentage;
|
bytesReceivedPerSecond[timeList[timeList.length - 1]] += data.file.size * (percentage - checkData[saveFileId]);
|
||||||
} else {
|
} else {
|
||||||
bytesReceivedPerSecond[time] = data.file.size * percentage;
|
bytesReceivedPerSecond[time] = data.file.size * (percentage - checkData[saveFileId]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -136,6 +136,7 @@ function initPage() {
|
||||||
function setTimer() {
|
function setTimer() {
|
||||||
if (timer) return false;
|
if (timer) return false;
|
||||||
timer = setInterval(() => {
|
timer = setInterval(() => {
|
||||||
|
console.log(Object.assign({}, bytesReceivedPerSecond))
|
||||||
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
let timeList = Object.keys(bytesReceivedPerSecond).sort((a, b) => a - b);
|
||||||
if (timeList.length > 0) {
|
if (timeList.length > 0) {
|
||||||
let totalBytes = timeList.reduce((sum, bytes) => sum + bytesReceivedPerSecond[bytes], 0) / (5 * 1024);
|
let totalBytes = timeList.reduce((sum, bytes) => sum + bytesReceivedPerSecond[bytes], 0) / (5 * 1024);
|
||||||
|
|
|
@ -657,6 +657,13 @@
|
||||||
:criterion="trialCriterion"
|
:criterion="trialCriterion"
|
||||||
:status="uploadStatus"
|
:status="uploadStatus"
|
||||||
/> -->
|
/> -->
|
||||||
|
<upload-dicom-and-nonedicom
|
||||||
|
v-if="uploadImageVisible"
|
||||||
|
:SubjectId="uploadSubjectId"
|
||||||
|
:SubjectCode="uploadSubjectCode"
|
||||||
|
:Criterion="uploadTrialCriterion"
|
||||||
|
:visible.sync="uploadImageVisible"
|
||||||
|
/>
|
||||||
<download-dicom-and-nonedicom
|
<download-dicom-and-nonedicom
|
||||||
v-if="downloadImageVisible"
|
v-if="downloadImageVisible"
|
||||||
:SubjectId="uploadSubjectId"
|
:SubjectId="uploadSubjectId"
|
||||||
|
@ -688,6 +695,7 @@ import { mapGetters } from 'vuex'
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
import { getDoctorShortcutKey, getUserWLTemplateList } from '@/api/user'
|
import { getDoctorShortcutKey, getUserWLTemplateList } from '@/api/user'
|
||||||
import uploadImage from '@/components/uploadImage'
|
import uploadImage from '@/components/uploadImage'
|
||||||
|
import uploadDicomAndNonedicom from '@/components/uploadDicomAndNonedicom'
|
||||||
import downloadDicomAndNonedicom from '@/components/downloadDicomAndNonedicom'
|
import downloadDicomAndNonedicom from '@/components/downloadDicomAndNonedicom'
|
||||||
import { getCriterionReadingInfo } from '@/api/trials'
|
import { getCriterionReadingInfo } from '@/api/trials'
|
||||||
export default {
|
export default {
|
||||||
|
@ -702,6 +710,7 @@ export default {
|
||||||
MeasurementList,
|
MeasurementList,
|
||||||
'upload-image': uploadImage,
|
'upload-image': uploadImage,
|
||||||
'download-dicom-and-nonedicom': downloadDicomAndNonedicom,
|
'download-dicom-and-nonedicom': downloadDicomAndNonedicom,
|
||||||
|
'upload-dicom-and-nonedicom': uploadDicomAndNonedicom,
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
isExistsClinicalData: {
|
isExistsClinicalData: {
|
||||||
|
|
|
@ -1467,7 +1467,7 @@ export default {
|
||||||
name: `${data.SubjectCode}_${data.VisitName}_${this.$fd(
|
name: `${data.SubjectCode}_${data.VisitName}_${this.$fd(
|
||||||
'IsDicom',
|
'IsDicom',
|
||||||
true
|
true
|
||||||
)}/${study.StudyCode}_${study.StudyTime}_${
|
)}/${study.StudyCode}_${study.StudyTime.split(" ")[0]}_${
|
||||||
series.Modality
|
series.Modality
|
||||||
}/${fileName}`,
|
}/${fileName}`,
|
||||||
url: this.OSSclientConfig.basePath + instance.Path,
|
url: this.OSSclientConfig.basePath + instance.Path,
|
||||||
|
@ -1504,7 +1504,7 @@ export default {
|
||||||
name: `${data.SubjectCode}_${data.VisitName}_${this.$fd(
|
name: `${data.SubjectCode}_${data.VisitName}_${this.$fd(
|
||||||
'IsDicom',
|
'IsDicom',
|
||||||
true
|
true
|
||||||
)}/${study.StudyCode}_${study.ImageDate}_${study.Modality}/${
|
)}/${study.StudyCode}_${study.ImageDate.split(" ")[0]}_${study.Modality}/${
|
||||||
item.FileName
|
item.FileName
|
||||||
}`,
|
}`,
|
||||||
url: this.OSSclientConfig.basePath + item.Path,
|
url: this.OSSclientConfig.basePath + item.Path,
|
||||||
|
|
Loading…
Reference in New Issue