部分问题修复

main
wangxiaoshuang 2024-04-19 11:09:02 +08:00
parent c102dbe9f2
commit 7c56ec3c6a
10 changed files with 489 additions and 444 deletions

View File

@ -4,6 +4,7 @@
placeholder="请选择"
@visible-change="selectChange"
@change="handleChange"
:disabled="disabled"
>
<el-option
v-for="item in list"
@ -34,6 +35,9 @@ export default {
return {};
},
},
disabled: {
default: false,
},
modelData: {
required: true,
},

View File

@ -14,7 +14,10 @@ const doResize = async(el, binding, vnode) => {
if (!$table) return
// 计算列表高度并设置
const height = window.innerHeight - el.getBoundingClientRect().top - bottomOffset
// $table.layout.setMaxHeight(height)
// $table.layout.setMaxHeight(height) bodyHeight
console.log($table);
console.log($table.layout.bodyHeight)
$table.bodyWrapper.style.height = `${$table.layout.bodyHeight}px`
$table.layout.setHeight(height)
// $table.maxHeight = height
$table.doLayout()

View File

@ -141,6 +141,7 @@
<!--切换访视-->
<visitSelect
:modelData.sync="scope.row.SubjectVisitId"
:disabled="Number(scope.row.SubmitState) > 1"
:loading="addLoading"
:studyData="scope.row"
:list="visitList"
@ -169,7 +170,9 @@
icon="el-icon-delete"
:title="$t('common:button:remove')"
@click.stop="remove(scope.row)"
:disabled="!scope.row.SubjectVisitId"
:disabled="
!scope.row.SubjectVisitId || Number(scope.row.SubmitState) > 1
"
/>
</template>
</el-table-column>
@ -464,6 +467,7 @@ export default {
let data = {
TrialId: this.submitMessage.TrialId,
SubjectVisitIdList: [],
SubjectId: this.submitMessage.SubjectId,
};
this.tableSelectData.forEach((item) => {
data.SubjectVisitIdList.push(item.SubjectVisitId);

View File

@ -1,75 +1,98 @@
<template>
<div class="notice-marquee_wrapper">
<marquee ref="mar" hspace="0" direction="left" width="500" @mouseout="start()" @mouseover="stop()">
<marquee
ref="mar"
hspace="0"
direction="left"
width="500"
@mouseout="start()"
@mouseover="stop()"
>
<!-- <i class="el-icon-message-solid" /> -->
<svg-icon v-if="noticeList.length > 0" icon-class="speaker" />
<span v-for="item in noticeList" :key="item.Id" style="cursor:pointer;" @click="showDetail(item)">
<span
v-for="item in noticeList"
:key="item.Id"
style="cursor: pointer"
@click="showDetail(item)"
>
{{ item.Content }}
</span>
</marquee>
</div>
</template>
<script>
import { setSystemNoticeHaveRead } from '@/api/global'
import { getBasicDataSelects } from '@/api/dictionary/dictionary'
import { setSystemNoticeHaveRead } from "@/api/global";
import { getBasicDataSelects } from "@/api/dictionary/dictionary";
export default {
name: 'NoticeMarquee',
name: "NoticeMarquee",
data() {
return {
noteType: []
}
noteType: [],
};
},
computed: {
noticeList() {
return this.$store.state.global.noticeList || []
}
return this.$store.state.global.noticeList || [];
},
},
mounted() {
this.getDicData()
this.getDicData();
},
methods: {
start() {
this.$refs['mar'].start()
this.$refs["mar"].start();
},
stop() {
this.$refs['mar'].stop()
this.$refs["mar"].stop();
},
showDetail(item) {
var currentNoticeType = ''
const i = this.noteType.findIndex(note => note.Code * 1 === item.NoticeTypeEnum)
var currentNoticeType = "";
const i = this.noteType.findIndex(
(note) => note.Code * 1 === item.NoticeTypeEnum
);
if (i > -1) {
currentNoticeType = this.noteType[i].Value
currentNoticeType = this.noteType[i].Value;
}
const h = this.$createElement
const h = this.$createElement;
this.$msgbox({
title: currentNoticeType,
message: h('span', null, item.Content),
message: h("span", null, item.Content),
beforeClose: (action, instance, done) => {
if (action === 'confirm') {
instance.confirmButtonLoading = true
setSystemNoticeHaveRead(item.Id).then(async res => {
if (action === "confirm") {
instance.confirmButtonLoading = true;
setSystemNoticeHaveRead(item.Id)
.then(async (res) => {
if (res.IsSuccess) {
await this.$store.dispatch('global/getNoticeList')
}
instance.confirmButtonLoading = false
done()
}).catch(() => { instance.confirmButtonLoading = false })
} else {
done()
}
await this.$store.dispatch("global/getNoticeList");
}
instance.confirmButtonLoading = false;
done();
})
.catch(() => {
instance.confirmButtonLoading = false;
});
} else {
done();
}
},
});
},
getDicData() {
getBasicDataSelects(['NoteType']).then(res => {
this.noteType = res.Result.NoteType
})
}
}
}
getBasicDataSelects(["NoteType"]).then((res) => {
this.noteType = res.Result.NoteType;
});
},
},
};
</script>
<style lang="scss" scoped>
.notice-marquee_wrapper {
display: flex;
align-items: center;
span {
font-size: 20px;
}
>>> .el-dialog__header {
padding: 10px;
}

View File

@ -154,7 +154,7 @@
height="100"
@selection-change="handleSelectChange"
@sort-change="handleSortByColumn"
:default-sort="{ prop: 'SubmitTime', order: 'descending' }"
:default-sort="{ prop: 'StudyTime', order: 'ascending' }"
>
<el-table-column type="selection" align="center" width="45" />
<!--患者编号-->
@ -243,7 +243,7 @@ const defaultSearchData = () => {
return {
EarliestStudyTime: null,
LatestStudyTime: null,
Asc: false,
Asc: true,
SortField: "StudyTime",
PatientIdStr: null,
};

View File

@ -271,14 +271,14 @@
</el-button>
<el-dropdown-menu slot="dropdown">
<!--影像数据-->
<el-dropdown-item
<!-- <el-dropdown-item
v-hasPermi="['trials:trials-panel:hirVisit:result']"
disabled
command="result"
>{{
$t("trials:trials-panel:hirVisit:ImageData")
}}</el-dropdown-item
>
> -->
<!--评估报告-->
<el-dropdown-item
v-hasPermi="['trials:trials-panel:hirVisit:result']"
@ -456,6 +456,7 @@ export default {
let data = {
TrialId: this.$route.query.trialId,
SubjectVisitIdList: [item.SubjectVisitId],
SubjectId: item.SubjectId,
};
try {
this.loading = true;

View File

@ -1,25 +1,21 @@
<template>
<BaseContainer>
<el-tabs v-model="TrialReadingCriterionId" type="border-card">
<el-tab-pane
v-for="item of trialCriterionList"
:key="item.TrialReadingCriterionId"
:label="item.TrialReadingCriterionName"
:name="item.TrialReadingCriterionId"
>
<div v-if="TrialReadingCriterionId === item.TrialReadingCriterionId">
<div slot="search-container">
<el-form :inline="true">
<!-- 阅片标准 -->
<el-form-item :label="$t('trials:auditRecord:table:criterion')">
<el-select
v-model="searchData.TrialReadingCriterionId"
clearable
style="width: 120px"
>
<el-option
v-for="item of trialCriterionList"
:key="'TrialReadingCriterionId' + item.TrialReadingCriterionId"
:value="item.TrialReadingCriterionId"
:label="item.TrialReadingCriterionName"
/>
</el-select>
</el-form-item>
<!-- 受试者编号 -->
<el-form-item :label="$t('trials:reviewTrack:table:subjectCode')">
<el-input v-model="searchData.SubjectCode" style="width: 100px" />
<el-input
v-model="searchData.SubjectCode"
style="width: 100px"
/>
</el-form-item>
<!-- 任务名称 -->
<el-form-item
@ -131,7 +127,11 @@
</el-select>
</el-form-item>
<el-form-item style="margin-bottom: 10px">
<el-button type="primary" icon="el-icon-search" @click="handleSearch">
<el-button
type="primary"
icon="el-icon-search"
@click="handleSearch"
>
{{ $t("common:button:search") }}
</el-button>
<el-button
@ -151,7 +151,6 @@
:data="list"
ref="myTable"
stripe
height="100"
@sort-change="handleSortChange"
>
<!-- 任务编号 -->
@ -254,10 +253,14 @@
<el-tag v-if="scope.row.PIAuditState === 0" type="danger">{{
$fd("PIAuditState", scope.row.PIAuditState)
}}</el-tag>
<el-tag v-else-if="scope.row.PIAuditState === 1" type="primary">{{
$fd("PIAuditState", scope.row.PIAuditState)
}}</el-tag>
<el-tag v-else-if="scope.row.PIAuditState === 2" type="warning"
<el-tag
v-else-if="scope.row.PIAuditState === 1"
type="primary"
>{{ $fd("PIAuditState", scope.row.PIAuditState) }}</el-tag
>
<el-tag
v-else-if="scope.row.PIAuditState === 2"
type="warning"
>{{ $fd("PIAuditState", scope.row.PIAuditState) }}
</el-tag>
<span v-else>{{
@ -265,6 +268,11 @@
}}</span>
</template>
</el-table-column>
<el-table-column
:label="$t('trials:globalReview:table:evaluationRes')"
align="center"
v-if="QuestionList.length > 0"
>
<el-table-column
prop="item.QuestionId"
:label="item.QuestionName"
@ -290,6 +298,7 @@
}}
</template>
</el-table-column>
</el-table-column>
<!-- 是否入组 -->
<el-table-column
prop="IsEnrollment"
@ -321,9 +330,11 @@
<el-tag v-if="scope.row.IsPDConfirm === true" type="primary">
{{ $fd("YesOrNo", scope.row.IsPDConfirm) }}
</el-tag>
<el-tag v-else-if="scope.row.IsPDConfirm === false" type="danger">{{
$fd("YesOrNo", scope.row.IsPDConfirm)
}}</el-tag>
<el-tag
v-else-if="scope.row.IsPDConfirm === false"
type="danger"
>{{ $fd("YesOrNo", scope.row.IsPDConfirm) }}</el-tag
>
</template>
</el-table-column>
<!-- 最新回复人 -->
@ -377,6 +388,9 @@
@pagination="getList"
/>
</div>
</div>
</el-tab-pane>
</el-tabs>
<!-- 审核记录 -->
<el-dialog
v-if="auditRecordVisible"
@ -453,13 +467,13 @@ export default {
}
},
},
beforeUpdate() {
this.$nextTick(() => {
if(this.$refs.myTable){
this.$refs.myTable.doLayout();
}
});
},
// beforeUpdate() {
// this.$nextTick(() => {
// if (this.$refs.myTable) {
// this.$refs.myTable.doLayout();
// }
// });
// },
mounted() {
this.trialId = this.$route.query.trialId;
this.getTrialCriterionList();
@ -475,15 +489,8 @@ export default {
.then((res) => {
this.loading = false;
this.QuestionList = res.OtherInfo.OtherObj;
this.$nextTick(() => {
setTimeout(() => {
this.list = res.Result.CurrentPageData;
}, 100);
this.total = res.Result.TotalCount;
if(this.$refs.myTable){
this.$refs.myTable.doLayout();
}
});
})
.catch(() => {
this.loading = false;

View File

@ -708,7 +708,7 @@ export default {
this.trialId = this.$route.query.trialId;
this.getTrialCriterionList();
// this.getList()
this.getSite();
// this.getSite();
this.getDoctorUserSelectList();
},
methods: {

View File

@ -64,7 +64,9 @@
</div>
<div>
<el-form-item :label="$t('trials:study:tabpane:bindPatient')">
<span v-if="bindPatientTip">{{ bindPatientTip }}</span>
<span v-if="bindPatientTip">{{
bindPatientTip.map((item) => item.PatientIdStr).join(", ")
}}</span>
</el-form-item>
</div>
<!--患者-->
@ -176,7 +178,7 @@ export default {
}
});
if (PatientList.length <= 0) return false;
return PatientList.map((item) => item.PatientIdStr).join(", ");
return PatientList;
},
},
created() {
@ -220,7 +222,8 @@ export default {
if (res.IsSuccess) {
this.submitMessage.SubjectId = res.Result;
this.submitMessage.TrialId = data.TrialId;
this.Patient.PatientId = data.PatientIdList;
let patient = this.bindPatientTip.map((item) => item.PatientId);
this.Patient.PatientId = [...data.PatientIdList, ...patient];
this.$message.success(this.$t("common:message:addedSuccessfully"));
this.$emit("getList");
this.status = "visit";

View File

@ -4,7 +4,7 @@
<template slot="search-container">
<el-form :inline="true">
<!-- 受试者编号 -->
<el-form-item :label="$t('trials:crcQuestion:table:subjectId')">
<el-form-item :label="$t('trials:subject:table:subjectId')">
<el-input v-model="searchData.Code" style="width: 130px" clearable />
</el-form-item>
<!-- 患者编号 -->
@ -211,13 +211,13 @@
@click="handleEdit(scope.row)"
/>
<!-- 修改状态 -->
<!-- <el-button
<el-button
v-hasPermi="['trials:trials-panel:subject:status']"
circle
:title="$t('trials:subject:action:status')"
icon="el-icon-edit"
@click="handleEditStatus(scope.row)"
/> -->
/>
<!-- 删除 -->
<el-button
v-hasPermi="['trials:trials-panel:subject:delete']"