diff --git a/package-lock.json b/package-lock.json index b9438c9e..4140723f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2820,36 +2820,6 @@ } } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "optional": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "optional": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-2.1.8.tgz", @@ -3229,13 +3199,6 @@ } } }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "optional": true - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-3.0.0.tgz", @@ -3479,32 +3442,6 @@ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true }, - "vue-loader-v16": { - "version": "npm:vue-loader@16.8.3", - "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz", - "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==", - "dev": true, - "optional": true, - "requires": { - "chalk": "^4.1.0", - "hash-sum": "^2.0.0", - "loader-utils": "^2.0.0" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dev": true, - "optional": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, "webpack-dev-middleware": { "version": "3.7.3", "resolved": "https://registry.npmmirror.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", @@ -14228,6 +14165,11 @@ "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", "dev": true }, + "qrcodejs2": { + "version": "0.0.2", + "resolved": "https://registry.npmmirror.com/qrcodejs2/-/qrcodejs2-0.0.2.tgz", + "integrity": "sha512-+Y4HA+cb6qUzdgvI3KML8GYpMFwB24dFwzMkS/yXq6hwtUGNUnZQdUnksrV1XGMc2mid5ROw5SAuY9XhI3ValA==" + }, "qs": { "version": "6.11.2", "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.2.tgz", @@ -17518,6 +17460,94 @@ } } }, + "vue-loader-v16": { + "version": "npm:vue-loader@16.8.3", + "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz", + "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==", + "dev": true, + "optional": true, + "requires": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "optional": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "optional": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "optional": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "optional": true + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "optional": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "optional": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "vue-pdf": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/vue-pdf/-/vue-pdf-4.3.0.tgz", diff --git a/src/api/trials.js b/src/api/trials.js index 51e29113..5262502c 100644 --- a/src/api/trials.js +++ b/src/api/trials.js @@ -3745,4 +3745,44 @@ export function ConfigTrialPACSInfoConfirm(data) { method: 'post', data }) +} +// 获取推送记录 +export function getSCPImageUploadList(data) { + return request({ + url: `/Patient/getSCPImageUploadList`, + method: 'post', + data + }) +} +// 获取影像检查患者列表 +export function getPatientList(data) { + return request({ + url: `/Patient/getPatientList`, + method: 'post', + data + }) +} +// 获取影像检查患者检查列表 +export function getPatientStudyList(data) { + return request({ + url: `/Patient/getPatientStudyList`, + method: 'post', + data + }) +} +// 获取接收方AE列表 +export function getDicomCalledAEList(params) { + return request({ + url: `/Patient/getDicomCalledAEList`, + method: 'get', + params + }) +} +// 获取发送方AE列表 +export function getDicomCallingAEList(params) { + return request({ + url: `/Patient/getDicomCallingAEList`, + method: 'get', + params + }) } \ No newline at end of file diff --git a/src/components/TrialsTab/index.vue b/src/components/TrialsTab/index.vue index 87ce2daa..f49aafe6 100644 --- a/src/components/TrialsTab/index.vue +++ b/src/components/TrialsTab/index.vue @@ -4,14 +4,15 @@ - + @@ -126,6 +127,10 @@ export default { var additionalAssessmentList = [ '/trials/trials-panel/subject/brain-metastasis' ] + let dicomList = [ + '/trials/trials-panel/trial-summary/image-inspect', + '/trials/trials-panel/trial-summary/push-record', + ] if (this.TrialConfig.QCProcessEnum === 0 && ~qualityList.indexOf(path)) { isShow = false } @@ -135,6 +140,9 @@ export default { if (!this.IsAdditionalAssessment && ~additionalAssessmentList.indexOf(path)) { isShow = false } + if ((!this.TrialConfig.IsPACSConnect || !this.TrialConfig.IsTrialPACSConfirmed) && ~dicomList.indexOf(path)) { + isShow = false + } return isShow }, goBack() { diff --git a/src/views/trials/trials-panel/setting/trial-config/components/dicomConfig.vue b/src/views/trials/trials-panel/setting/trial-config/components/dicomConfig.vue index ce7a89c2..3d45b094 100644 --- a/src/views/trials/trials-panel/setting/trial-config/components/dicomConfig.vue +++ b/src/views/trials/trials-panel/setting/trial-config/components/dicomConfig.vue @@ -17,6 +17,7 @@ + + {{ $t("trials:imageInspect:viewStudy:message:viewStudy") }}({{ + $t("trials:imageInspect:viewStudy:message:patientInfo") + }}:{{ Patient.PatientIdStr }},{{ Patient.PatientName }}) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/trials/trials-panel/trial-summary/image-inspect/index.vue b/src/views/trials/trials-panel/trial-summary/image-inspect/index.vue new file mode 100644 index 00000000..a8acfdd1 --- /dev/null +++ b/src/views/trials/trials-panel/trial-summary/image-inspect/index.vue @@ -0,0 +1,369 @@ + + + \ No newline at end of file diff --git a/src/views/trials/trials-panel/trial-summary/push-record/index.vue b/src/views/trials/trials-panel/trial-summary/push-record/index.vue new file mode 100644 index 00000000..cc1f5bba --- /dev/null +++ b/src/views/trials/trials-panel/trial-summary/push-record/index.vue @@ -0,0 +1,311 @@ + + + \ No newline at end of file diff --git a/src/views/trials/trials-panel/visit/crc-upload/components/uploadDicomFiles2.vue b/src/views/trials/trials-panel/visit/crc-upload/components/uploadDicomFiles2.vue index 823b7ba5..162f6546 100644 --- a/src/views/trials/trials-panel/visit/crc-upload/components/uploadDicomFiles2.vue +++ b/src/views/trials/trials-panel/visit/crc-upload/components/uploadDicomFiles2.vue @@ -193,365 +193,389 @@ -
- {{ - $t("trials:uploadedDicoms:title:dicomFilesOnly") - }} -
- -
-
- - - - - - - - - - - - - - - - + + + + + + +
+ + - - + + {{ $t("trials:uploadDicomList:button:upload") }} + +
+ + + - {{ $t("trials:uploadDicomList:button:upload") }} - - - + + + + + + + + + + \ No newline at end of file diff --git a/src/views/trials/trials-panel/visit/crc-upload/index.vue b/src/views/trials/trials-panel/visit/crc-upload/index.vue index 8d534a8c..ff120243 100644 --- a/src/views/trials/trials-panel/visit/crc-upload/index.vue +++ b/src/views/trials/trials-panel/visit/crc-upload/index.vue @@ -1045,7 +1045,7 @@ export default { formRow: {}, searchData: searchDataDefault(), loading: false, - uploadVisible: false, + uploadVisible: true, qcVisible: false, list: [], total: 0,