Commit 8b966d3d authored by miaojiale's avatar miaojiale

筛查驳回消息跳转筛查查询

No related merge requests found
......@@ -191,3 +191,11 @@ export function getMessage(params = {}) {
params,
})
}
// 获取驳回修改消息
export function getRefuteMessage(params) {
return request({
url: `/disease-data//sys/message/remind/${params}`,
method: "get",
params,
})
}
......@@ -226,6 +226,15 @@ export default {
form: {},
}
},
watch: {
formDefaults: {
handler(v) {
console.log(v)
this.initforms()
},
deep: true,
},
},
methods: {
// 表单赋值
initforms() {
......
......@@ -52,7 +52,13 @@
<span class="blue-dot mt-5 mr-8"></span>
<span class="top-text">{{ item.createTime }}</span>
</div>
<div class="main-text ml-8">{{ item.content }}</div>
<div
class="main-text ml-8"
style="cursor: pointer"
@click="goSearch(item.bizType)"
>
{{ item.content }}
</div>
</div>
<div v-show="loading" v-loading="loading" class="loading"></div>
</div>
......@@ -79,20 +85,20 @@ import { getMessage } from "@/api/user"
import Message from "@/mixins/getMessage"
import {
Avatar,
Breadcrumb,
// Breadcrumb,
ErrorLog,
FullScreenBar,
ThemeBar,
// FullScreenBar,
// ThemeBar,
} from "@/layouts/components"
export default {
name: "NavBar",
components: {
Avatar,
Breadcrumb,
// Breadcrumb,
ErrorLog,
FullScreenBar,
ThemeBar,
// FullScreenBar,
// ThemeBar,
},
mixins: [Message],
props: {
......@@ -178,6 +184,11 @@ export default {
this.getMessage()
}
},
goSearch(val) {
if (val == "screen") {
this.$router.push("/screening/index?checkStatus=2")
}
},
getMessage() {
this.loading = true
getMessage({
......
......@@ -174,6 +174,35 @@
</div>
</el-dialog>
</el-dialog>
<!-- 自动提醒 -->
<el-dialog
custom-class="autoDialog"
:title="''"
:visible.sync="autoFlag"
:close-on-click-modal="false"
:close-on-press-escape="false"
:show-close="true"
width="520px"
>
<div class="innerBody">
<div class="title">驳回修改提醒</div>
<div class="refuteList">
<div
class="rufuteItem"
v-for="(item, index) in autoDialogList"
:key="index"
>
<div class="title">{{ item.title }}病例数据驳回修改</div>
<div class="num">【{{ item.num }}条】</div>
<div class="btn">
<el-button type="warning" @click="goSearch(item.title)"
>去处理</el-button
>
</div>
</div>
</div>
</div>
</el-dialog>
</div>
</template>
......@@ -189,6 +218,7 @@ import {
import { mapGetters, mapActions } from "vuex"
import { tokenName } from "@/config/settings"
import Media from "./mixin/Media"
import { getRefuteMessage } from "@/api/user"
export default {
name: "Layout",
......@@ -204,6 +234,7 @@ export default {
data() {
return {
modalFlag: false,
autoFlag: false,
innerVisible: false,
screeningList: [
{
......@@ -272,6 +303,7 @@ export default {
],
},
],
autoDialogList: [],
}
},
computed: {
......@@ -292,6 +324,7 @@ export default {
created() {
this.selectedIndex = sessionStorage.getItem("selectedIndex") || ""
this.curSelectedIndex = String(this.selectedIndex) ? this.selectedIndex : ""
this.getRefuteMessage()
},
mounted() {
if (!this.selectedIndex) {
......@@ -304,7 +337,7 @@ export default {
: ""
}
// console.log(this.curSelectedIndex)
this.getRefuteMessage()
this.$nextTick(() => {
window.addEventListener(
"storage",
......@@ -320,6 +353,37 @@ export default {
...mapActions({
handleFoldSideBar: "settings/foldSideBar",
}),
goSearch(title) {
if (title == "筛查") {
this.$router.push("/screening/index?checkStatus=2")
}
this.autoFlag = false
},
// 获取消息
getRefuteMessage() {
getRefuteMessage(this.curSelectedIndex)
.then((res) => {
if (res.code == 1) {
this.autoDialogList = []
if (res.data.筛查) {
this.autoDialogList.push({
title: "筛查",
num: res.data.筛查 || 0,
})
}
if (res.data.随访) {
this.autoDialogList.push({
title: "随访",
num: res.data.随访 || 0,
})
}
if (this.autoDialogList.length > 0) {
this.autoFlag = true
}
}
})
.catch()
},
setSelectedIndex() {
console.log(this.selectedIndex)
this.curSelectedIndex = this.selectedIndex
......@@ -475,6 +539,10 @@ export default {
::v-deep .homeDialog .el-dialog__header {
display: none;
}
::v-deep .autoDialog .el-dialog__header {
// display: none;
padding: 0px;
}
.modalContent {
padding: 60px;
.title {
......@@ -604,6 +672,38 @@ export default {
}
}
}
.refuteList {
display: flex;
justify-content: space-around;
.rufuteItem {
width: 200px;
height: 148px;
border-radius: 4px;
border: 1px solid #dddddd;
display: flex;
flex-direction: column;
align-items: center;
.title {
font-size: 16px;
margin: 16px 0;
font-family: AlibabaPuHuiTiR;
color: #333333;
}
.num {
font-size: 16px;
font-family: AlibabaPuHuiTiM;
color: #4e68ff;
margin-bottom: 16px;
}
.btn {
.el-button {
width: 100px;
background: #ff7900;
border-radius: 5px;
}
}
}
}
}
.submit {
margin-top: 60px;
......
......@@ -5,6 +5,7 @@
ref="form"
:label-position="'right'"
:forms="searchList"
:form-defaults="initForm"
:style="{ textAlign: 'left' }"
@handleSearch="handleFormSearch"
/>
......@@ -17,9 +18,9 @@
:total-count="total"
:page-sizes="pageSizes"
:page-size="pageSize"
:sort-change="sortChange"
@pageSizeChange="handleSizeChange"
@currentPageChange="handleCurrentChange"
:sortChange="sortChange"
/>
</div>
......@@ -31,8 +32,8 @@
form-type="1"
:patient-id="patientId"
:disabled="disabled"
:tabDisabled="tabDisabled"
:isDraft="'0'"
:tab-disabled="tabDisabled"
:is-draft="'0'"
:operation="'edit'"
></ConfigForms>
</div>
......@@ -46,8 +47,8 @@ import ConfigForms from "./components/ConfigForms.vue"
import { mapGetters } from "vuex"
export default {
name: "ScreeningIndex",
mixins: [paginationMixin],
components: { ConfigForms },
mixins: [paginationMixin],
data() {
return {
isDetail: false, //! 控制详情显隐
......@@ -255,6 +256,7 @@ export default {
},
],
searchForm: {},
initForm: {},
}
},
methods: {
......@@ -323,21 +325,9 @@ export default {
selectedIndex: "table/selectedIndex",
refreshFlag: "table/refreshFlag",
}),
},
created() {
this.handleFormSearch()
// if (this.$route.path == "/screening/index") {
// this.tabDisabled = false
// }
if (this.$route.query.patientId) {
let patientId = this.$route.query.patientId
// this.$nextTick(() => {
this.disabled = true
this.tabDisabled = false
this.patientId = patientId || null
this.isDetail = true
// })
}
initCheckStatus() {
return this.$route.query.checkStatus
},
},
watch: {
selectedIndex(v) {
......@@ -355,6 +345,42 @@ export default {
})
}
},
initCheckStatus(v) {
if (v) {
this.initForm = {
checkStatus: this.$route.query.checkStatus + "",
}
// console.log(this.searchForm)
this.handleSearch(this.initForm)
}
console.log("status" + v)
},
},
created() {
if (this.$route.query.checkStatus) {
this.initForm = {
checkStatus: this.$route.query.checkStatus + "",
}
this.handleSearch(this.initForm)
} else {
this.handleFormSearch()
}
// if (this.$route.path == "/screening/index") {
// this.tabDisabled = false
// }
if (this.$route.query.patientId) {
let patientId = this.$route.query.patientId
// this.$nextTick(() => {
this.disabled = true
this.tabDisabled = false
this.patientId = patientId || null
this.isDetail = true
// })
}
},
mounted() {
// console.log(this.$route.query.checkStatus)
},
}
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment