Merge branch 'uat' into uat_us

uat_us
DESKTOP-6C3NK6N\WXS 2024-07-31 14:08:34 +08:00
commit 6bb7d47511
12 changed files with 138 additions and 86 deletions

View File

@ -873,7 +873,10 @@ export default {
synchronizer.remove(this.$refs.canvas) synchronizer.remove(this.$refs.canvas)
this.setAllToolsPassive() this.setAllToolsPassive()
}, },
onContextmenu(event) { onContextmenu(e) {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
// const colormapsList = cornerstone.colors.getColormapsList() // const colormapsList = cornerstone.colors.getColormapsList()
// const colorItems = [] // const colorItems = []
// colorItems.push({ // colorItems.push({
@ -1060,7 +1063,7 @@ export default {
// zIndex: 3, // zIndex: 3,
// minWidth: 100 // minWidth: 100
// }) // })
return false // return false
}, },
getToolSate() { getToolSate() {
const toolROITypes = [ const toolROITypes = [

View File

@ -201,4 +201,7 @@ export default {
margin-right: 5px; margin-right: 5px;
} }
} }
::v-deep .el-dialog__header{
font-weight: bold;
}
</style> </style>

View File

@ -446,7 +446,7 @@ async function VueInit() {
Vue.prototype.$MFA({ Vue.prototype.$MFA({
status: "lock", status: "lock",
UserId: my_userid, UserId: my_userid,
EMail: my_EMail, EMail: res.Result,
username: my_username, username: my_username,
callBack: () => { callBack: () => {
closeLock(_vm) closeLock(_vm)

View File

@ -56,28 +56,20 @@
trigger="hover" trigger="hover"
popper-class="instance_frame_wrapper" popper-class="instance_frame_wrapper"
> >
<div <div class="frame_list">
v-for="(instance, idx) in item.instanceInfoList" <div
:key="instance.Id" v-for="(instance, idx) in item.instanceInfoList"
class="frame_content" :key="instance.Id"
:style="{'margin-bottom':idx<item.instanceInfoList.length-1? '5px':'0px'}" class="frame_content"
@click="showMultiFrames(item, index, instance)" :style="{'margin-bottom':idx<item.instanceInfoList.length-1? '5px':'0px'}"
> @click="showMultiFrames(item, index, instance)"
<!-- <div> >
<img <div>
class="image-preview" <div>{{ instance.InstanceNumber }}</div>
:src="series.previewImageUrl" <div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
crossorigin="anonymous" </div>
alt=""
style="width: 40px;height:40px;"
fit="fill"
>
</div> -->
<div>
<div>{{ instance.InstanceNumber }}</div>
<div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
</div>
</div>
</div> </div>
<i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;" /> <i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;" />
</el-popover> </el-popover>
@ -885,6 +877,18 @@ export default {
border: 1px solid #2c2c2c; border: 1px solid #2c2c2c;
padding: 5px; padding: 5px;
} }
.frame_list{
max-height: 500px;
overflow-y: auto;
}
.instance_frame_wrapper ::-webkit-scrollbar {
width: 7px;
height: 7px;
}
.instance_frame_wrapper ::-webkit-scrollbar-thumb {
border-radius: 10px;
background: #d0d0d0;
}
.frame_content{ .frame_content{
height: 50px; height: 50px;
padding: 5px; padding: 5px;

View File

@ -200,28 +200,20 @@
trigger="hover" trigger="hover"
popper-class="instance_frame_wrapper" popper-class="instance_frame_wrapper"
> >
<div <div class="frame_list">
v-for="(instance, idx) in seriesItem.instanceInfoList" <div
:key="instance.Id" v-for="(instance, idx) in seriesItem.instanceInfoList"
class="frame_content" :key="instance.Id"
:style="{'margin-bottom':idx<seriesItem.instanceInfoList.length-1? '5px':'0px'}" class="frame_content"
@click="showMultiFrames(studyIndex,seriesItem, index, instance)" :style="{'margin-bottom':idx<seriesItem.instanceInfoList.length-1? '5px':'0px'}"
> @click="showMultiFrames(studyIndex,seriesItem, index, instance)"
<!-- <div> >
<img <div>
class="image-preview" <div>{{ instance.InstanceNumber }}</div>
:src="series.previewImageUrl" <div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
crossorigin="anonymous" </div>
alt=""
style="width: 40px;height:40px;"
fit="fill"
>
</div> -->
<div>
<div>{{ instance.InstanceNumber }}</div>
<div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
</div>
</div>
</div> </div>
<i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;" /> <i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;" />
</el-popover> </el-popover>
@ -901,6 +893,18 @@ export default {
border: 1px solid #2c2c2c; border: 1px solid #2c2c2c;
padding: 5px; padding: 5px;
} }
.frame_list{
max-height: 500px;
overflow-y: auto;
}
.instance_frame_wrapper ::-webkit-scrollbar {
width: 7px;
height: 7px;
}
.instance_frame_wrapper ::-webkit-scrollbar-thumb {
border-radius: 10px;
background: #d0d0d0;
}
.frame_content{ .frame_content{
height: 50px; height: 50px;
padding: 5px; padding: 5px;

View File

@ -155,7 +155,7 @@ export default {
this.logout(); this.logout();
break; break;
case "4-4": case "4-4":
this.go("/system"); this.go("/dashboard/list");
break; break;
case "1": case "1":
this.go("/trials/trials-workbench"); this.go("/trials/trials-workbench");

View File

@ -67,28 +67,20 @@
trigger="hover" trigger="hover"
popper-class="instance_frame_wrapper" popper-class="instance_frame_wrapper"
> >
<div <div class="frame_list">
<div
v-for="(instance, idx) in series.instanceInfoList" v-for="(instance, idx) in series.instanceInfoList"
:key="instance.Id" :key="instance.Id"
class="frame_content" class="frame_content"
:style="{'margin-bottom':idx<series.instanceInfoList.length-1? '5px':'0px'}" :style="{'margin-bottom':idx<series.instanceInfoList.length-1? '5px':'0px'}"
@click.stop="showMultiFrames(index,series, i, instance)" @click.stop="showMultiFrames(index,series, i, instance)"
> >
<!-- <div>
<img
class="image-preview"
:src="series.previewImageUrl"
crossorigin="anonymous"
alt=""
style="width: 40px;height:40px;"
fit="fill"
>
</div> -->
<div> <div>
<div>{{ instance.InstanceNumber }}</div> <div>{{ instance.InstanceNumber }}</div>
<div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div> <div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
</div> </div>
</div>
</div> </div>
<i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;color: #ffeb3b;" /> <i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;color: #ffeb3b;" />
</el-popover> </el-popover>
@ -1022,6 +1014,18 @@ export default {
border: 1px solid #2c2c2c; border: 1px solid #2c2c2c;
padding: 5px; padding: 5px;
} }
.frame_list{
max-height: 500px;
overflow-y: auto;
}
.instance_frame_wrapper ::-webkit-scrollbar {
width: 7px;
height: 7px;
}
.instance_frame_wrapper ::-webkit-scrollbar-thumb {
border-radius: 10px;
background: #d0d0d0;
}
.frame_content{ .frame_content{
height: 50px; height: 50px;
padding: 5px; padding: 5px;

View File

@ -67,28 +67,30 @@
trigger="hover" trigger="hover"
popper-class="instance_frame_wrapper" popper-class="instance_frame_wrapper"
> >
<div <div class="frame_list">
v-for="(instance, idx) in series.instanceInfoList" <div
:key="instance.Id" v-for="(instance, idx) in series.instanceInfoList"
class="frame_content" :key="instance.Id"
:style="{'margin-bottom':idx<series.instanceInfoList.length-1? '5px':'0px'}" class="frame_content"
@click.stop="showMultiFrames(index,series, i, instance)" :style="{'margin-bottom':idx<series.instanceInfoList.length-1? '5px':'0px'}"
> @click.stop="showMultiFrames(index,series, i, instance)"
<!-- <div> >
<img <!-- <div>
class="image-preview" <img
:src="series.previewImageUrl" class="image-preview"
crossorigin="anonymous" :src="series.previewImageUrl"
alt="" crossorigin="anonymous"
style="width: 40px;height:40px;" alt=""
fit="fill" style="width: 40px;height:40px;"
> fit="fill"
</div> --> >
<div> </div> -->
<div>{{ instance.InstanceNumber }}</div> <div>
<div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div> <div>{{ instance.InstanceNumber }}</div>
</div> <div>{{ `${instance.NumberOfFrames > 0 ? instance.NumberOfFrames : 1} frame` }}</div>
</div>
</div>
</div> </div>
<i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;color: #ffeb3b;" /> <i slot="reference" class="el-icon-connection" style="font-size: 15px;cursor: pointer;color: #ffeb3b;" />
</el-popover> </el-popover>
@ -954,6 +956,18 @@ export default {
border: 1px solid #2c2c2c; border: 1px solid #2c2c2c;
padding: 5px; padding: 5px;
} }
.frame_list{
max-height: 500px;
overflow-y: auto;
}
.instance_frame_wrapper ::-webkit-scrollbar {
width: 7px;
height: 7px;
}
.instance_frame_wrapper ::-webkit-scrollbar-thumb {
border-radius: 10px;
background: #d0d0d0;
}
.frame_content{ .frame_content{
height: 50px; height: 50px;
padding: 5px; padding: 5px;

View File

@ -27,7 +27,7 @@
</el-form-item> </el-form-item>
<!-- 分组名称 --> <!-- 分组名称 -->
<el-form-item <el-form-item
v-if="(form.Type === 'group' && !isLook) || (isLook && $i18n.locale !== 'en')" v-if="(form.Type === 'group' && $i18n.locale !== 'en')"
:label="$t('trials:readingUnit:qsList:title:groupName')" :label="$t('trials:readingUnit:qsList:title:groupName')"
prop="GroupName" prop="GroupName"
> >
@ -37,7 +37,7 @@
</el-form-item> </el-form-item>
<!-- 分组名称(En) --> <!-- 分组名称(En) -->
<el-form-item <el-form-item
v-if="(form.Type === 'group' && !isLook) || (isLook && $i18n.locale !== 'zh')" v-if="(form.Type === 'group' && $i18n.locale !== 'zh')"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')" :label="$t('trials:readingUnit:qsList:title:groupNameEn')"
prop="GroupEnName" prop="GroupEnName"
> >
@ -47,7 +47,7 @@
</el-form-item> </el-form-item>
<!-- 问题名称 --> <!-- 问题名称 -->
<el-form-item <el-form-item
v-if="(form.Type !== 'group' && !isLook) || (isLook && $i18n.locale !== 'en')" v-if="(form.Type !== 'group' && $i18n.locale !== 'en' )"
:label="$t('trials:readingUnit:qsList:title:qsName')" :label="$t('trials:readingUnit:qsList:title:qsName')"
prop="QuestionName" prop="QuestionName"
> >
@ -57,7 +57,7 @@
</el-form-item> </el-form-item>
<!-- 问题名称(En) --> <!-- 问题名称(En) -->
<el-form-item <el-form-item
v-if="(form.Type !== 'group' && !isLook) || (isLook && $i18n.locale !== 'zh')" v-if="(form.Type !== 'group' && $i18n.locale !== 'zh')"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('trials:readingUnit:qsList:title:qsNameEn')"
prop="QuestionEnName" prop="QuestionEnName"
> >
@ -791,6 +791,8 @@ export default {
], ],
QuestionName: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']}, QuestionName: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
{max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}], {max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}],
QuestionEnName:[{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
{max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}],
TypeValue: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']}, TypeValue: [{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
{validator: validateTypeVal, trigger: ['blur', 'change']}, {validator: validateTypeVal, trigger: ['blur', 'change']},
{max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200`}], {max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200`}],
@ -974,6 +976,16 @@ export default {
this.$refs.qsForm.validate(valid => { this.$refs.qsForm.validate(valid => {
if (!valid) return if (!valid) return
this.loading = true this.loading = true
if(this.form.QuestionName && this.$i18n.locale === 'zh'){
this.form.QuestionEnName = this.form.QuestionName;
}else if(this.form.QuestionEnName && this.$i18n.locale === 'en'){
this.form.QuestionName = this.form.QuestionEnName;
}
if(this.form.GroupName && this.$i18n.locale === 'zh'){
this.form.GroupEnName = this.form.GroupName;
}else if(this.$i18n.locale === 'en' && this.form.GroupEnName){
this.form.GroupName = this.form.GroupEnName;
}
var params = Object.assign({}, this.form) var params = Object.assign({}, this.form)
params.TrialId = this.$route.query.trialId params.TrialId = this.$route.query.trialId
params.ReadingCriterionPageId = this.data.ReadingCriterionPageId params.ReadingCriterionPageId = this.data.ReadingCriterionPageId

View File

@ -146,7 +146,7 @@
<el-table-column <el-table-column
prop="" prop=""
:label="$t('common:action:action')" :label="$t('common:action:action')"
width="280" width="300"
show-overflow-tooltip show-overflow-tooltip
> >
<template slot-scope="scope"> <template slot-scope="scope">

View File

@ -35,7 +35,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
v-if="form.Type !== 'group'" v-if="form.Type !== 'group'&& $i18n.locale !== 'en'"
:label="$t('trials:readingUnit:qsList:title:qsName')" :label="$t('trials:readingUnit:qsList:title:qsName')"
prop="QuestionName" prop="QuestionName"
> >
@ -44,7 +44,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
v-if="form.Type !== 'group'" v-if="form.Type !== 'group'&& $i18n.locale !== 'zh'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('trials:readingUnit:qsList:title:qsNameEn')"
prop="QuestionEnName" prop="QuestionEnName"
> >
@ -553,7 +553,8 @@ export default {
], ],
QuestionName: [{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }, QuestionName: [{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200` }], { max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200` }],
QuestionEnName:[{required: true, message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
{max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50`}],
TypeValue: [{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }, TypeValue: [{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ validator: validateTypeVal, trigger: 'blur' }, { validator: validateTypeVal, trigger: 'blur' },
{ max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200` }], { max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200` }],
@ -695,6 +696,11 @@ export default {
this.$refs.tableQsForm.validate(valid => { this.$refs.tableQsForm.validate(valid => {
if (!valid) return if (!valid) return
this.loading = true this.loading = true
if(this.form.QuestionName && this.$i18n.locale === 'zh'){
this.form.QuestionEnName = this.form.QuestionName;
}else if(this.form.QuestionEnName && this.$i18n.locale === 'en'){
this.form.QuestionName = this.form.QuestionEnName;
}
var params = Object.assign({}, this.form) var params = Object.assign({}, this.form)
params.TrialId = this.$route.query.trialId params.TrialId = this.$route.query.trialId
params.ReadingQuestionId = this.readingQuestionId params.ReadingQuestionId = this.readingQuestionId

View File

@ -29,12 +29,14 @@
<!-- 名称 --> <!-- 名称 -->
<el-table-column <el-table-column
prop="QuestionName" prop="QuestionName"
v-if="$i18n.locale === 'zh'"
:label="$t('trials:readingUnit:qsList:title:qsName')" :label="$t('trials:readingUnit:qsList:title:qsName')"
show-overflow-tooltip show-overflow-tooltip
/> />
<!-- 名称(EN) --> <!-- 名称(EN) -->
<el-table-column <el-table-column
prop="QuestionEnName" prop="QuestionEnName"
v-if="$i18n.locale === 'en'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('trials:readingUnit:qsList:title:qsNameEn')"
show-overflow-tooltip show-overflow-tooltip
/> />