影像上传不记入用户锁定和用户退出
continuous-integration/drone/push Build is passing Details

uat_us
wangxiaoshuang 2024-07-01 11:01:33 +08:00
parent b3bff41d35
commit 19c2c4eecb
4 changed files with 22 additions and 5 deletions

View File

@ -224,6 +224,7 @@ import {
addOrUpdateArchiveTaskStudy, addOrUpdateArchiveTaskStudy,
} from "@/api/load.js"; } from "@/api/load.js";
import { parseDicom, getThumbnail, dicomToOSS } from "@/utils/parseDicom.js"; import { parseDicom, getThumbnail, dicomToOSS } from "@/utils/parseDicom.js";
import store from "@/store";
export default { export default {
name: "uploadList", name: "uploadList",
props: { props: {
@ -262,6 +263,7 @@ export default {
}, },
watch: { watch: {
isLoad() { isLoad() {
store.dispatch("trials/setUnLock", this.isLoad);
if (!this.isLoad) { if (!this.isLoad) {
this.$refs.file.value = null; this.$refs.file.value = null;
if (this.dicomList.some((item) => item.isUpload === 3)) { if (this.dicomList.some((item) => item.isUpload === 3)) {
@ -747,6 +749,7 @@ export default {
}, },
beforeDestroy() { beforeDestroy() {
this.isClose = true; this.isClose = true;
store.dispatch("trials/setUnLock", false);
}, },
}; };
</script> </script>

View File

@ -368,7 +368,7 @@ async function VueInit() {
window.VUE_APP_COMPANY_NAME = process.env.VUE_APP_COMPANY_NAME; window.VUE_APP_COMPANY_NAME = process.env.VUE_APP_COMPANY_NAME;
waitOperate(eval(process.env.VUE_APP_LOGOUT_FOR_PERMISSION) ? () => { waitOperate(eval(process.env.VUE_APP_LOGOUT_FOR_PERMISSION) ? () => {
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh' var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
if (_vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/login' || _vm.$route.path === '/researchForm' || _vm.$route.path === '/researchLogin' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') { if (_vm.$store.state.trials.unlock || _vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/login' || _vm.$route.path === '/researchForm' || _vm.$route.path === '/researchLogin' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') {
count = 0; count = 0;
localStorage.setItem('count', '0') localStorage.setItem('count', '0')
return return
@ -387,9 +387,9 @@ async function VueInit() {
}) })
} : () => { }, process.env.VUE_APP_LOGOUT_FOR_TIME, } : () => { }, process.env.VUE_APP_LOGOUT_FOR_TIME,
eval(process.env.VUE_APP_LOCK_FOR_PERMISSION) ? () => { eval(process.env.VUE_APP_LOCK_FOR_PERMISSION) ? () => {
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh' var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
if (_vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/login' || _vm.$route.path === '/researchForm' || _vm.$route.path === '/researchLogin' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') { if (_vm.$store.state.trials.unlock || _vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/login' || _vm.$route.path === '/researchForm' || _vm.$route.path === '/researchLogin' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') {
count = 0; count = 0;
localStorage.setItem('count', '0') localStorage.setItem('count', '0')
if (_vm.$route.path === '/login') { if (_vm.$route.path === '/login') {

View File

@ -6,7 +6,8 @@ const getDefaultState = () => {
subjectQuery: null, subjectQuery: null,
visitPlanQuery: null, visitPlanQuery: null,
visitPointQuery: null, visitPointQuery: null,
studyListQuery: null studyListQuery: null,
unlock: false,
} }
} }
@ -16,6 +17,9 @@ const mutations = {
RESET_TRIALS: (state) => { RESET_TRIALS: (state) => {
Object.assign(state, getDefaultState()) Object.assign(state, getDefaultState())
}, },
SET_UNLOCK: (state, unlock) => {
state.unlock = unlock
},
SET_ACTIVENAME: (state, activeName) => { SET_ACTIVENAME: (state, activeName) => {
state.trialDetailActiveName = activeName state.trialDetailActiveName = activeName
}, },
@ -37,6 +41,9 @@ const mutations = {
} }
const actions = { const actions = {
setUnLock({ commit }, unlock) {
commit('SET_UNLOCK', unlock)
},
setActiveName({ commit }, activeName) { setActiveName({ commit }, activeName) {
commit('SET_ACTIVENAME', activeName) commit('SET_ACTIVENAME', activeName)
}, },

View File

@ -757,6 +757,7 @@ import { getToken } from "@/utils/auth";
import { dcmUpload } from "@/utils/dcmUpload/dcmUpload"; import { dcmUpload } from "@/utils/dcmUpload/dcmUpload";
import { convertBytes } from "@/utils/dicom-character-set"; import { convertBytes } from "@/utils/dicom-character-set";
import moment from "moment"; import moment from "moment";
import store from "@/store";
export default { export default {
name: "UploadDicomFiles", name: "UploadDicomFiles",
components: { DicomPreview, uploadPetClinicalData }, components: { DicomPreview, uploadPetClinicalData },
@ -827,6 +828,11 @@ export default {
BodyPart: {}, BodyPart: {},
}; };
}, },
watch: {
btnLoading() {
store.dispatch("trials/setUnLock", this.btnLoading);
},
},
async mounted() { async mounted() {
this.trialId = this.$route.query.trialId; this.trialId = this.$route.query.trialId;
this.BodyPart.Bodypart = await this.$getBodyPart(this.$route.query.trialId); this.BodyPart.Bodypart = await this.$getBodyPart(this.$route.query.trialId);
@ -841,6 +847,7 @@ export default {
clearInterval(v); clearInterval(v);
}); });
this.myInterval = []; this.myInterval = [];
store.dispatch("trials/setUnLock", false);
}, },
methods: { methods: {
handleHistorical(row) { handleHistorical(row) {
@ -1968,7 +1975,7 @@ export default {
} }
var arr = bodyPart.split(separator); var arr = bodyPart.split(separator);
var newArr = arr.map((i) => { var newArr = arr.map((i) => {
return this.$fd("Bodypart", i.trim(), "Code", this.BodyPart,'Name'); return this.$fd("Bodypart", i.trim(), "Code", this.BodyPart, "Name");
}); });
return newArr.join(" | "); return newArr.join(" | ");
}, },