部分问题修复
continuous-integration/drone/push Build is passing Details

main
wangxiaoshuang 2025-12-02 17:52:47 +08:00
parent c2cb5b1999
commit d57c080916
8 changed files with 66 additions and 52 deletions

View File

@ -26,8 +26,11 @@ export function getTrialSurveyInitInfo(trialId) {
export function getSiteSurveyInfo(trialId, id) {
return request({
url: `/TrialSiteSurvey/getSiteSurveyInfo/${trialId}/${id}`,
method: 'get'
url: `/TrialSiteSurvey/getSiteSurveyInfo/${trialId}`,
method: 'get',
params: {
TrialsiteSurveyId: id
}
})
}

View File

@ -21,14 +21,15 @@
<!-- <h4>{{ $t('trials:staffResearch:title:staff') }}</h4>-->
<!-- 历史人员 -->
<h4>{{ $t('trials:staffResearch:title:historicalStaff') }}</h4>
<HistoricalParticipant ref="historicalParticipant" :is-history="true" @refreshPage="refreshPage" @getList="initPage" />
<HistoricalParticipant ref="historicalParticipant" :is-history="true" @refreshPage="refreshPage"
@getList="initPage" />
<!-- 新增人员 -->
<h4>{{ $t('trials:staffResearch:title:newStaff') }}</h4>
<ParticipantList ref="researchParticipants" :is-history="true" @refreshPage="refreshPage" @getList="initPage" />
</el-card>
<!-- 设备调研 -->
<el-card shadow="hover" class="mt10">
<el-card shadow="hover" class="mt10" v-if="siteSurveyNoteInfo.IsCloseEquipmentSurvey">
<h4>{{ $t('trials:equiptResearch:title:equiptResearch') }}</h4>
<EquipmentList ref="researchEquipments" :is-history="true" />
</el-card>
@ -53,31 +54,17 @@
</el-card>
</div>
<el-dialog
v-if="rejectVisible"
:visible.sync="rejectVisible"
:close-on-click-modal="false"
:title="$t('trials:researchForm:dialogTitle:reject')"
width="600px"
custom-class="base-dialog-wrapper"
:append-to-body="userTypeEnumInt !== 0"
>
<el-dialog v-if="rejectVisible" :visible.sync="rejectVisible" :close-on-click-modal="false"
:title="$t('trials:researchForm:dialogTitle:reject')" width="600px" custom-class="base-dialog-wrapper"
:append-to-body="userTypeEnumInt !== 0">
<el-form ref="rejectForm" :model="rejectForm" label-width="100px">
<div class="base-dialog-body">
<!-- 驳回原因 -->
<el-form-item
:label="$t('trials:researchForm:form:rejectReson')"
prop="reason"
:rules="[
{ required: true, message: $t('trials:researchForm:formRule:specify')}
]"
>
<el-input
v-model="rejectForm.reason"
type="textarea"
:autosize="{ minRows: 2, maxRows: 4}"
style="width:100%;"
/>
<el-form-item :label="$t('trials:researchForm:form:rejectReson')" prop="reason" :rules="[
{ required: true, message: $t('trials:researchForm:formRule:specify') }
]">
<el-input v-model="rejectForm.reason" type="textarea" :autosize="{ minRows: 2, maxRows: 4 }"
style="width:100%;" />
</el-form-item>
</div>
<div class="base-dialog-footer" style="text-align:right;margin-top:10px;">
@ -136,7 +123,7 @@ export default {
props: {
trialSiteSurveyId: {
type: String,
required: true
default: ''
}
},
data() {
@ -152,7 +139,7 @@ export default {
btnLoading: false,
isFullscreen: false,
historyVisible: false,
siteSurveyNoteInfo: null
siteSurveyNoteInfo: {}
}
},
mounted() {
@ -172,6 +159,7 @@ export default {
if (res.Result.SiteSurveyFiledConfig && res.Result.SiteSurveyFiledConfig.ModifyFiledList.length > 0) {
this.siteSurveyNoteInfo = res.Result.SiteSurveyFiledConfig.ModifyFiledList.find(i => i.NeedModifyFiled === 'SiteSurveyNote')
}
this.siteSurveyNoteInfo.IsCloseEquipmentSurvey = res.Result.SiteSurveyFiledConfig.IsCloseEquipmentSurvey
var historicalArr = []
var newArr = []
res.Result.TrialSiteUserSurveyList.map(i => {
@ -241,7 +229,7 @@ export default {
this.$message.success(this.$t('common:message:savedSuccessfully'))
}
}).catch(() => { this.loading = false })
}).catch(() => {})
}).catch(() => { })
},
//
generateAccount() {
@ -276,7 +264,7 @@ export default {
}).catch(() => {
this.loading = false
})
}).catch(() => {})
}).catch(() => { })
},
//
handleReject() {
@ -324,37 +312,44 @@ export default {
display: flex;
flex-direction: column;
height: 100%;
.mt10{
.mt10 {
margin-top: 10px;
}
.header-wrapper{
.header-wrapper {
width: 70%;
margin: 20px auto;
}
.center-wrapper{
.center-wrapper {
flex: 1;
width: 70%;
margin: 0px auto;
padding-bottom: 20px;
overflow-y: auto;
}
::v-deep .el-card__body{
::v-deep .el-card__body {
padding: 10px;
}
// >>>.el-dialog__body{
// padding: 10px 20px 20px 20px;
// }
::v-deep .full-dialog-container{
.el-dialog__body{
::v-deep .full-dialog-container {
.el-dialog__body {
height: calc(100% - 80px);
}
}
::v-deep .dialog-container{
::v-deep .dialog-container {
// margin-top: 50px !important;
width:75%;
height:80%;
.el-dialog__body{
width: 75%;
height: 80%;
.el-dialog__body {
padding: 10px;
height: calc(100% - 80px);
}

View File

@ -62,7 +62,7 @@
</el-card>
<!-- 设备调研 -->
<el-card shadow="hover" class="mt10">
<el-card shadow="hover" class="mt10" v-if="siteSurveyNoteInfo.IsCloseEquipmentSurvey">
<h4>{{ $t('trials:equiptResearch:title:equiptResearch') }}</h4>
<EquipmentList ref="researchEquipments" :isPreview="isPreview" />
</el-card>
@ -193,6 +193,7 @@ export default {
if (res.Result.SiteSurveyFiledConfig && res.Result.SiteSurveyFiledConfig.ModifyFiledList.length > 0) {
this.siteSurveyNoteInfo = res.Result.SiteSurveyFiledConfig.ModifyFiledList.find(i => i.NeedModifyFiled === 'SiteSurveyNote')
}
this.siteSurveyNoteInfo.IsCloseEquipmentSurvey = res.Result.SiteSurveyFiledConfig.IsCloseEquipmentSurvey
this.state = res.Result.TrialSiteSurvey.State
this.siteId = res.Result.TrialSiteSurvey.TrialSiteId
this.$refs['baseResearchInfo'].initForm(res.Result.TrialInfo, res.Result.TrialSiteSurvey, res.Result.SiteSurveyFiledConfig ? res.Result.SiteSurveyFiledConfig.NotShowFieldList : null)

View File

@ -28,6 +28,17 @@
</el-checkbox>
</el-form-item>
</el-form>
<div style="margin-bottom: 20px;font-weight: bold;">
{{ $t("trials:researchRecord:ImageManual:TableConfiguration") }}
</div>
<el-form size="small" :model="form" style="width:80%">
<el-form-item :label="$t('trials:researchRecord:ImageManual:Equipment')">
<el-radio-group v-model="form.IsCloseEquipmentSurvey">
<el-radio :label="item.value" v-for="item in $d.YesOrNo" :key="item.id">{{ item.label
}}</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div style="margin-bottom: 20px;font-weight: bold;">
{{ $t("trials:researchRecord:ImageManual:Precautions") }}
</div>
@ -53,7 +64,7 @@ export default {
props: {
trialSiteSurveyId: {
type: String,
required: true
default: ''
}
},
data() {
@ -68,7 +79,8 @@ export default {
ReplaceContent: '',
ReplaceContentCN: '',
IsOpenLostVistRead: false,
IsSupportQCDownloadImage: false
IsSupportQCDownloadImage: false,
IsCloseEquipmentSurvey: true
},
obj: {
AverageEngravingCycle: false,
@ -105,6 +117,7 @@ export default {
})
this.form.IsOpenLostVistRead = res.Result.IsOpenLostVistRead
this.form.IsSupportQCDownloadImage = res.Result.IsSupportQCDownloadImage
this.form.IsCloseEquipmentSurvey = res.Result.IsCloseEquipmentSurvey
if (Array.isArray(res.Result.NotShowFieldList) && res.Result.NotShowFieldList.length > 0) {
res.Result.NotShowFieldList.forEach(key => {
this.form[key] = false
@ -151,6 +164,7 @@ export default {
let data = {
IsOpenLostVistRead: this.form.IsOpenLostVistRead,
IsSupportQCDownloadImage: this.form.IsSupportQCDownloadImage,
IsCloseEquipmentSurvey: this.form.IsCloseEquipmentSurvey,
ModifyFiledList: [],
NotShowFieldList: []
}

View File

@ -288,7 +288,7 @@ export default {
},
methods: {
openImageManual() {
if (!this.trialSiteSurveyId) return false
// if (!this.trialSiteSurveyId) return false
this.ImageManualVisible = true
},
//
@ -418,7 +418,7 @@ export default {
const trialId = this.trialId
this.shareLink = `${location.protocol}//${location.host}/researchLogin?trialId=${trialId}&lang=${this.$i18n.locale}`
this.share_model.visible = true
this.trialSiteSurveyId = this.list[0].Id
// this.trialSiteSurveyId = this.list[0].Id
this.$nextTick(() => {
this.creatQrCode()
})

View File

@ -36,7 +36,7 @@
class="svg-icon svg-readingChart-mini" @click.stop="(e) => handleReadingChart({
e,
data: {
ReportChartTypeEnum: 0,
ReportChartTypeEnum: 1,
QuestionName: item.QuestionName
},
})" />

View File

@ -49,7 +49,7 @@
QuestionId: scope.row.RowIndex ? null : scope.row.QuestionId,
TableQuestionId: scope.row.RowIndex ? scope.row.TableQuestionId : null,
RowIndex: scope.row.RowIndex ? scope.row.RowIndex : null,
ReportChartTypeEnum: (scope.row.LesionType === 0 && scope.row.ReportLayType === 1) || (scope.row.LesionType === 4 && scope.row.ReportLayType === 1) ? 0 : null,
ReportChartTypeEnum: (scope.row.LesionType === 0 && scope.row.ReportLayType === 1) ? 0 : (scope.row.LesionType === 4 && scope.row.ReportLayType === 1) ? 1 : null,
QuestionName: scope.row.QuestionName
}
})" />
@ -169,7 +169,8 @@
<span v-else>{{ $fd(scope.row.DictionaryCode, scope.row.Answers[task.VisitTaskId]) }}</span>
</template>
<template v-else-if="scope.row.QuestionType === 22">
{{ scope.row.Answers[task.VisitTaskId] === '-2' ? "NA" : scope.row.Answers[task.VisitTaskId] === '-1' ?
{{ scope.row.Answers[task.VisitTaskId] === '-2' ? "NA" : scope.row.Answers[task.VisitTaskId] === '-1'
?
$t('trials:readingReport:title:unknow') :
scope.row.Answers[task.VisitTaskId] }}
</template>

View File

@ -88,11 +88,11 @@
<span style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;max-width: 150px">{{
user.RealName }}</span>
</div>
<!-- <div style="font-size: .75rem;line-height: 18px;color:#999" v-if="NODE_ENV !== 'usa'">{{ new
<div style="font-size: .75rem;line-height: 18px;color:#999" v-if="NODE_ENV !== 'usa'">{{ new
Date().getFullYear() }}{{ $t('common:date:today') }}{{ new Date().getMonth() +
1 }}{{ $t('common:date:month') }}{{ new Date().getDate() }}{{ $t('common:date:day') }}{{ dayOfWeek }}
</div> -->
<div style="font-size: .75rem;line-height: 18px;color:#999">{{ moment().format('DDMMMYYYY') }}{{
</div>
<div style="font-size: .75rem;line-height: 18px;color:#999" v-else>{{ moment().format('DDMMMYYYY') }}{{
dayOfWeek }}
</div>
</div>