crc上传pacs判断
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
f5c4b49e6f
commit
b6433ea4a8
|
@ -3811,6 +3811,14 @@ export function getVisitPatientStudyFilterList(data) {
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// CRCpacs上传检查校验
|
||||||
|
export function verifyPacsImage(data) {
|
||||||
|
return request({
|
||||||
|
url: `/Patient/verifyPacsImage`,
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
// CRCpacs上传检查
|
// CRCpacs上传检查
|
||||||
export function submitVisitStudyBinding(data) {
|
export function submitVisitStudyBinding(data) {
|
||||||
return request({
|
return request({
|
||||||
|
|
|
@ -222,6 +222,43 @@
|
||||||
@pagination="getList"
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
<!-- 校验警告信息模态框 -->
|
||||||
|
<el-dialog
|
||||||
|
v-if="warnVisible"
|
||||||
|
:visible.sync="warnVisible"
|
||||||
|
width="500px"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
append-to-body
|
||||||
|
title="Warning"
|
||||||
|
custom-class="warning-dialog"
|
||||||
|
>
|
||||||
|
<div style="border: 1px solid #e0e0e0; padding: 10px">
|
||||||
|
<!-- Information from DICOM headers not consistent with that of this subject -->
|
||||||
|
<div style="color: red; font-size: 14px; margin-bottom: 10px">
|
||||||
|
{{ $t("trials:uploadDicomPacs:message:informationConsistent") }}:
|
||||||
|
</div>
|
||||||
|
<div v-for="(item, i) in warningArr" :key="item.index">
|
||||||
|
<div>
|
||||||
|
{{
|
||||||
|
`(${i + 1}). ${$t(
|
||||||
|
"trials:visit:crcUpload:uploadDicomPacs:table:accNumber"
|
||||||
|
)}: ${item.AccessionNumber}`
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
<ul>
|
||||||
|
<li>{{ item.ErrorMesseage }}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div slot="footer" class="base-modal-footer">
|
||||||
|
<el-button size="small" type="primary" @click="handleCancelWarnVisible">
|
||||||
|
{{ $t("common:button:cancel") }}
|
||||||
|
</el-button>
|
||||||
|
<el-button size="small" type="primary" @click="handleContinueUpload">
|
||||||
|
{{ $t("trials:uploadDicomList:button:upload") }}
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
</BaseContainer>
|
</BaseContainer>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
@ -229,6 +266,7 @@ import {
|
||||||
getVisitPatientStudyFilterList,
|
getVisitPatientStudyFilterList,
|
||||||
submitVisitStudyBinding,
|
submitVisitStudyBinding,
|
||||||
getDicomModalityList,
|
getDicomModalityList,
|
||||||
|
verifyPacsImage,
|
||||||
} from "@/api/trials";
|
} from "@/api/trials";
|
||||||
import BaseContainer from "@/components/BaseContainer";
|
import BaseContainer from "@/components/BaseContainer";
|
||||||
import Pagination from "@/components/Pagination";
|
import Pagination from "@/components/Pagination";
|
||||||
|
@ -267,6 +305,10 @@ export default {
|
||||||
datetimerange: [],
|
datetimerange: [],
|
||||||
tableSelectData: [],
|
tableSelectData: [],
|
||||||
DicomModalityList: [],
|
DicomModalityList: [],
|
||||||
|
SCPStudyIdList: [],
|
||||||
|
ReUploadSCPStudyIdList: [],
|
||||||
|
warningArr: [],
|
||||||
|
warnVisible: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
@ -274,6 +316,69 @@ export default {
|
||||||
this.getDicomModalityList();
|
this.getDicomModalityList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// warning弹框取消按钮回调
|
||||||
|
handleCancelWarnVisible() {
|
||||||
|
this.warnVisible = false;
|
||||||
|
this.warningArr = [];
|
||||||
|
},
|
||||||
|
// 忽略warning继续上传
|
||||||
|
handleContinueUpload() {
|
||||||
|
this.handleCancelWarnVisible();
|
||||||
|
this.submitVisitStudyBinding(
|
||||||
|
this.SCPStudyIdList,
|
||||||
|
this.ReUploadSCPStudyIdList
|
||||||
|
);
|
||||||
|
},
|
||||||
|
// 校验上传数据
|
||||||
|
async verifyPacsImage(arr) {
|
||||||
|
try {
|
||||||
|
this.warningArr = [];
|
||||||
|
this.ReUploadSCPStudyIdList = [];
|
||||||
|
this.SCPStudyIdList = [];
|
||||||
|
let data = {
|
||||||
|
TrialId: this.$route.query.trialId,
|
||||||
|
SubjectVisitId: this.subjectVisitId,
|
||||||
|
SubjectId: this.subjectId,
|
||||||
|
ScpStudyIdList: arr,
|
||||||
|
};
|
||||||
|
this.loading = true;
|
||||||
|
let res = await verifyPacsImage(data);
|
||||||
|
if (res.IsSuccess) {
|
||||||
|
for (let i = 0; i < res.Result.length; i++) {
|
||||||
|
let item = res.Result[i];
|
||||||
|
if (item.AllowReUpload) {
|
||||||
|
this.ReUploadSCPStudyIdList.push(item.SCPStudyId);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (item.AllowUpload) {
|
||||||
|
this.SCPStudyIdList.push(item.SCPStudyId);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (!item.AllowUpload && !item.AllowReUpload) {
|
||||||
|
let data = this.tableSelectData.find(
|
||||||
|
(d) => d.SCPStudyId === item.SCPStudyId
|
||||||
|
);
|
||||||
|
this.warningArr.push(Object.assign({}, data, item));
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (this.warningArr.length <= 0) {
|
||||||
|
this.submitVisitStudyBinding(
|
||||||
|
this.SCPStudyIdList,
|
||||||
|
this.ReUploadSCPStudyIdList
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
this.warnVisible = true;
|
||||||
|
this.loading = false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.loading = false;
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
this.loading = false;
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
},
|
||||||
// 获取检查技术列表
|
// 获取检查技术列表
|
||||||
async getDicomModalityList() {
|
async getDicomModalityList() {
|
||||||
try {
|
try {
|
||||||
|
@ -294,20 +399,21 @@ export default {
|
||||||
this.$t("trials:visit:crcUpload:uploadDicomPacs:message:notCheck")
|
this.$t("trials:visit:crcUpload:uploadDicomPacs:message:notCheck")
|
||||||
);
|
);
|
||||||
let arr = this.tableSelectData.map((item) => item.SCPStudyId);
|
let arr = this.tableSelectData.map((item) => item.SCPStudyId);
|
||||||
this.submitVisitStudyBinding(arr);
|
this.verifyPacsImage(arr);
|
||||||
},
|
},
|
||||||
handleAdd(row) {
|
handleAdd(row) {
|
||||||
let arr = [row.SCPStudyId];
|
let arr = [row.SCPStudyId];
|
||||||
this.submitVisitStudyBinding(arr);
|
this.verifyPacsImage(arr);
|
||||||
},
|
},
|
||||||
// 添加检查
|
// 添加检查
|
||||||
async submitVisitStudyBinding(arr) {
|
async submitVisitStudyBinding(ScpStudyIdList, ReUploadSCPStudyIdList) {
|
||||||
try {
|
try {
|
||||||
let data = {
|
let data = {
|
||||||
TrialId: this.$route.query.trialId,
|
TrialId: this.$route.query.trialId,
|
||||||
SubjectVisitId: this.subjectVisitId,
|
SubjectVisitId: this.subjectVisitId,
|
||||||
SubjectId: this.subjectId,
|
SubjectId: this.subjectId,
|
||||||
ScpStudyIdList: arr,
|
ScpStudyIdList,
|
||||||
|
ReUploadSCPStudyIdList,
|
||||||
};
|
};
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
let res = await submitVisitStudyBinding(data);
|
let res = await submitVisitStudyBinding(data);
|
||||||
|
|
Loading…
Reference in New Issue