Commit 4c2704fb authored by miaojiale's avatar miaojiale

增加审核按钮,审核权限

parent 2c544c6e
...@@ -795,6 +795,7 @@ export default { ...@@ -795,6 +795,7 @@ export default {
}, },
...mapGetters({ ...mapGetters({
fontSize: "table/fontSize", fontSize: "table/fontSize",
roles: "user/roles",
}), }),
}, },
methods: { methods: {
...@@ -864,6 +865,9 @@ export default { ...@@ -864,6 +865,9 @@ export default {
remoteMethod(val) { remoteMethod(val) {
this.$emit("remoteMethod", val) this.$emit("remoteMethod", val)
}, },
clearSort() {
this.$refs.selftab.clearSort()
},
}, },
} }
</script> </script>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<span v-if="!isEmpty">当前审核</span> <span v-if="!isEmpty">当前审核</span>
<span v-if="!isEmpty" class="f-b" <span v-if="!isEmpty" class="f-b"
>{{ curUnion }}<span v-if="!editStatus" >{{ curUnion }}<span v-if="!editStatus"
>【剩余{{ auditNum }}</span ><span v-if="!inPatientId">【剩余{{ auditNum }}</span></span
></span ></span
> >
</div> </div>
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
v-if="patientId && !isEmpty && !editStatus" v-if="patientId && !isEmpty && !editStatus"
>修改</el-button >修改</el-button
> >
<el-button class="btn" @click="$router.go(-1)">返回</el-button> <el-button class="btn" @click="backEvents">返回</el-button>
</div> </div>
</div> </div>
</div> </div>
...@@ -164,6 +164,8 @@ ...@@ -164,6 +164,8 @@
? curBtn == 1 ? curBtn == 1
? "好的" ? "好的"
: "提交" : "提交"
: inPatientId
? "确认并返回"
: "确认并进入下一例审核" : "确认并进入下一例审核"
}}</el-button> }}</el-button>
</div> </div>
...@@ -232,6 +234,8 @@ ...@@ -232,6 +234,8 @@
? curBtn == 1 ? curBtn == 1
? "好的" ? "好的"
: "提交" : "提交"
: inPatientId
? "确认并返回"
: "确认并进入下一例审核" : "确认并进入下一例审核"
}}</el-button> }}</el-button>
</div> </div>
...@@ -300,6 +304,11 @@ export default { ...@@ -300,6 +304,11 @@ export default {
confirmStatus: false, confirmStatus: false,
} }
}, },
props: {
formId: String,
inPatientId: String,
inUnionName: String,
},
computed: { computed: {
showClose() { showClose() {
return this.curBtn == 1 ? false : true return this.curBtn == 1 ? false : true
...@@ -310,7 +319,11 @@ export default { ...@@ -310,7 +319,11 @@ export default {
mounted() { mounted() {
let unionId = this.$route.query.unionId let unionId = this.$route.query.unionId
let patientId = this.$route.query.patientId let patientId = this.$route.query.patientId
if (unionId && !patientId) { if (this.inPatientId) {
// 组件使用
this.patientId = this.inPatientId
this.curUnion = this.inUnionName
} else if (unionId && !patientId) {
this.editStatus = false this.editStatus = false
this.getUser(unionId) this.getUser(unionId)
} else if (patientId) { } else if (patientId) {
...@@ -324,6 +337,13 @@ export default { ...@@ -324,6 +337,13 @@ export default {
// this.$refs.publicDialog.dialogVisible = true // this.$refs.publicDialog.dialogVisible = true
}, },
methods: { methods: {
backEvents() {
if (this.inPatientId) {
this.$emit("changeIsAudit")
} else {
this.$router.go(-1)
}
},
refresh() { refresh() {
this.$refs["screen"].getPatientDetail() this.$refs["screen"].getPatientDetail()
}, },
...@@ -462,7 +482,7 @@ export default { ...@@ -462,7 +482,7 @@ export default {
} }
} }
}, },
// 不合格提交 // 提交
onSubmit() { onSubmit() {
this.loading = true this.loading = true
// 切换文本 // 切换文本
...@@ -530,7 +550,10 @@ export default { ...@@ -530,7 +550,10 @@ export default {
nextExample() { nextExample() {
// ! // !
this.$store.commit("user/setGetMessageFlag", true) this.$store.commit("user/setGetMessageFlag", true)
if (this.editStatus) { if (this.inPatientId) {
this.onCancel()
this.$emit("submitAudit")
} else if (this.editStatus) {
this.loading = false this.loading = false
this.onCancel() this.onCancel()
} else { } else {
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
:page-size="pageSize" :page-size="pageSize"
@pageSizeChange="handleSizeChange" @pageSizeChange="handleSizeChange"
@currentPageChange="handleCurrentChange" @currentPageChange="handleCurrentChange"
:sortChange="handleSort"
:showSummary="auditStatus === '0'" :showSummary="auditStatus === '0'"
:getSummaries="getSummaries" :getSummaries="getSummaries"
/> />
...@@ -101,6 +102,7 @@ export default { ...@@ -101,6 +102,7 @@ export default {
label: "待审核(例)备份", label: "待审核(例)备份",
minWidth: 120, minWidth: 120,
value: "unCheckNums", value: "unCheckNums",
// sortable: "custom",
}, },
{ {
label: "最新上报时间", label: "最新上报时间",
...@@ -213,6 +215,13 @@ export default { ...@@ -213,6 +215,13 @@ export default {
this.handleClick() this.handleClick()
}, },
methods: { methods: {
handleSort(val) {
console.log(val)
const { prop, order } = val
this.pageIndex = 1
this.handleSearch({ unCheckNums: order })
// order "descending" prop "unCheckNums"
},
getSummaries() { getSummaries() {
return [ return [
"总计", "总计",
...@@ -229,6 +238,7 @@ export default { ...@@ -229,6 +238,7 @@ export default {
} }
this.pageIndex = 1 this.pageIndex = 1
this.handleSearch() this.handleSearch()
this.$refs.table.clearSort()
}, },
auditHandle(data, i) { auditHandle(data, i) {
if (this.type == "1") { if (this.type == "1") {
...@@ -271,12 +281,16 @@ export default { ...@@ -271,12 +281,16 @@ export default {
} }
} }
}, },
async handleSearch() { async handleSearch(obj) {
this.listLoading = true this.listLoading = true
let params = { let params = {
pageSize: this.pageSize, pageSize: this.pageSize,
pageNum: this.pageIndex, pageNum: this.pageIndex,
...obj,
} }
// if (this.type==0) {
// }
let res let res
switch (this.auditStatus) { switch (this.auditStatus) {
case "0": case "0":
......
<template> <template>
<div class="container"> <div class="container">
<div v-show="!isDetail"> <div v-show="!isDetail && !isAudit">
<direct-search <direct-search
ref="form" ref="form"
:label-position="'right'" :label-position="'right'"
...@@ -39,6 +39,14 @@ ...@@ -39,6 +39,14 @@
@addMethods="addMethods" @addMethods="addMethods"
></ConfigForms> ></ConfigForms>
</div> </div>
<audit
v-if="isAudit"
:form-id="curAuditDetail.formId"
:in-patient-id="curAuditDetail.patientId"
:inUnionName="curAuditDetail.unionName"
@changeIsAudit="changeIsAudit"
@submitAudit="submitAudit"
></audit>
</div> </div>
</template> </template>
...@@ -46,13 +54,26 @@ ...@@ -46,13 +54,26 @@
import paginationMixin from "@/components/TabComponents/mixin" import paginationMixin from "@/components/TabComponents/mixin"
import { getPatientPage, deletePatient } from "@/api/patient.js" import { getPatientPage, deletePatient } from "@/api/patient.js"
import ConfigForms from "./components/ConfigForms.vue" import ConfigForms from "./components/ConfigForms.vue"
import audit from "@/views/audit-detail/index.vue"
import { mapGetters } from "vuex" import { mapGetters } from "vuex"
export default { export default {
name: "ScreeningIndex", name: "ScreeningIndex",
components: { ConfigForms }, components: { ConfigForms, audit },
mixins: [paginationMixin], mixins: [paginationMixin],
computed: {
...mapGetters({
selectedIndex: "table/selectedIndex",
refreshFlag: "table/refreshFlag",
roles: "user/roles",
}),
initCheckStatus() {
return this.$route.query.checkStatus
},
},
data() { data() {
return { return {
isAudit: false, //控制审核详情
curAuditDetail: {},
isDetail: false, //! 控制详情显隐 isDetail: false, //! 控制详情显隐
listLoading: false, listLoading: false,
disabled: false, disabled: false,
...@@ -117,175 +138,7 @@ export default { ...@@ -117,175 +138,7 @@ export default {
value: "查询", value: "查询",
}, },
], ],
columns: [ columns: [],
{
label: "医联体",
minWidth: 120,
value: "unionName",
formatter: (row) => {
return row.unionName ? row.unionName : "--"
},
sortable: "custom",
},
{
label: "姓名",
minWidth: 120,
formatter: (row) => {
return row.name ? row.name : "--"
},
value: "name",
sortable: "custom",
},
{
label: "性别",
minWidth: 80,
value: "sex",
formatter: (row) => {
return row.sex
? this.$handle.formatDicList(this.dictMap["d-sex"], row.sex + "")
: "--"
},
sortable: "custom",
},
// {
// label: "身份证",
// minWidth: 120,
// value: "idCard",
// formatter: (row) => {
// return row.idCard ? row.idCard : "--"
// },
// },
{
label: "年龄",
minWidth: 120,
value: "age",
formatter: (row) => {
return row.age ? row.age : "--"
},
sortable: "custom",
},
{
label: "筛查时间",
minWidth: 180,
value: "createTime",
formatter: (row) => {
return row.createTime ? row.createTime : "--"
},
sortable: "custom",
},
{
label: "风险评估结果",
minWidth: 120,
value: "riskRank",
formatter: (row) => {
let riskRank = {
low: "低危",
medium: "中危",
high: "高危",
}
return row.riskRank ? riskRank[row.riskRank] : "--"
},
sortable: "custom",
},
{
label: "是否内镜",
minWidth: 120,
value: "isInnerCheck",
sortable: "custom",
formatter: (row) => {
let arr = [
{ label: "", value: "0" },
{ label: "", value: "1" },
]
let label
if (String(row.isInnerCheck)) {
label = arr.filter((e) => e.value == row.isInnerCheck)[0].label
} else {
label = "--"
}
return label
},
},
{
label: "筛查审核状态",
minWidth: 120,
value: "checkStatus",
formatter: (row) => {
let arr = [
{ label: "待审核", value: "1" },
{ label: "驳回修改", value: "2" },
{ label: "合格", value: "3" },
{ label: "不合格", value: "4" },
]
let label
if (row.checkStatus) {
label = arr.filter((e) => e.value == row.checkStatus)[0].label
} else {
label = "--"
}
return label
},
sortable: "custom",
},
{
label: "操作",
width: 180,
fixed: "right",
operType: "button",
operations: [
{
func: this.handleView,
formatter(row) {
if (row.checkStatus != 2) {
return {
label: "查看",
type: "text",
}
} else {
return {
label: "",
type: "none",
style: {
display: "none",
},
}
}
},
},
{
func: this.handleAdd,
formatter(row) {
if (row.checkStatus != 3 && row.checkStatus != 4) {
return {
label: "修改",
type: "text",
}
} else {
return {
label: "",
type: "none",
style: {
display: "none",
},
}
}
},
},
{
func: this.deletePatient,
formatter(row) {
return {
label: "删除",
type: "text",
}
},
style: {
color: "#FA6400",
},
},
],
},
],
searchForm: {}, searchForm: {},
initForm: {}, initForm: {},
} }
...@@ -330,6 +183,22 @@ export default { ...@@ -330,6 +183,22 @@ export default {
checkStatus === 2 ? "驳回修改" : checkStatus === 4 ? "不合格" : "" checkStatus === 2 ? "驳回修改" : checkStatus === 4 ? "不合格" : ""
this.note = status ? status + "" + checkNote : "" this.note = status ? status + "" + checkNote : ""
}, },
changeIsAudit() {
this.isAudit = false
this.curAuditDetail = {}
},
handleAudit(row) {
console.log(row)
this.curAuditDetail = row
this.isAudit = true
},
submitAudit() {
this.isAudit = false
if (this.tableData.length == 1 && this.pageIndex != 1) {
this.pageIndex--
}
this.handleSearch(this.searchForm)
},
deletePatient(row) { deletePatient(row) {
this.$confirm(`是否删除【${row.name}】?`, "提示", { this.$confirm(`是否删除【${row.name}】?`, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
...@@ -395,15 +264,7 @@ export default { ...@@ -395,15 +264,7 @@ export default {
}) })
}, },
}, },
computed: {
...mapGetters({
selectedIndex: "table/selectedIndex",
refreshFlag: "table/refreshFlag",
}),
initCheckStatus() {
return this.$route.query.checkStatus
},
},
watch: { watch: {
selectedIndex(v) { selectedIndex(v) {
this.handleFormSearch(this.searchForm) this.handleFormSearch(this.searchForm)
...@@ -459,7 +320,201 @@ export default { ...@@ -459,7 +320,201 @@ export default {
} }
}, },
mounted() { mounted() {
let roleList = this.roles.map((e) => e.roleCode)
// console.log(this.$route.query.checkStatus) // console.log(this.$route.query.checkStatus)
this.columns = [
{
label: "医联体",
minWidth: 120,
value: "unionName",
formatter: (row) => {
return row.unionName ? row.unionName : "--"
},
sortable: "custom",
},
{
label: "姓名",
minWidth: 120,
formatter: (row) => {
return row.name ? row.name : "--"
},
value: "name",
sortable: "custom",
},
{
label: "性别",
minWidth: 80,
value: "sex",
formatter: (row) => {
return row.sex
? this.$handle.formatDicList(this.dictMap["d-sex"], row.sex + "")
: "--"
},
sortable: "custom",
},
// {
// label: "身份证",
// minWidth: 120,
// value: "idCard",
// formatter: (row) => {
// return row.idCard ? row.idCard : "--"
// },
// },
{
label: "年龄",
minWidth: 120,
value: "age",
formatter: (row) => {
return row.age ? row.age : "--"
},
sortable: "custom",
},
{
label: "筛查时间",
minWidth: 180,
value: "createTime",
formatter: (row) => {
return row.createTime ? row.createTime : "--"
},
sortable: "custom",
},
{
label: "风险评估结果",
minWidth: 120,
value: "riskRank",
formatter: (row) => {
let riskRank = {
low: "低危",
medium: "中危",
high: "高危",
}
return row.riskRank ? riskRank[row.riskRank] : "--"
},
sortable: "custom",
},
{
label: "是否内镜",
minWidth: 120,
value: "isInnerCheck",
sortable: "custom",
formatter: (row) => {
let arr = [
{ label: "", value: "0" },
{ label: "", value: "1" },
]
let label
if (String(row.isInnerCheck)) {
label = arr.filter((e) => e.value == row.isInnerCheck)[0].label
} else {
label = "--"
}
return label
},
},
{
label: "筛查审核状态",
minWidth: 120,
value: "checkStatus",
formatter: (row) => {
let arr = [
{ label: "待审核", value: "1" },
{ label: "驳回修改", value: "2" },
{ label: "合格", value: "3" },
{ label: "不合格", value: "4" },
]
let label
if (row.checkStatus) {
label = arr.filter((e) => e.value == row.checkStatus)[0].label
} else {
label = "--"
}
return label
},
sortable: "custom",
},
{
label: "操作",
width: 180,
fixed: "right",
operType: "button",
operations: [
{
func: this.handleView,
formatter(row) {
if (row.checkStatus != 2) {
return {
label: "查看",
type: "text",
}
} else {
return {
label: "",
type: "none",
style: {
display: "none",
},
}
}
},
},
{
func: this.handleAdd,
formatter(row) {
if (row.checkStatus != 3 && row.checkStatus != 4) {
return {
label: "修改",
type: "text",
}
} else {
return {
label: "",
type: "none",
style: {
display: "none",
},
}
}
},
},
{
func: this.handleAudit,
isHidden() {
return !(
roleList.includes("admin") || roleList.includes("auditer")
)
},
formatter(row) {
if (row.checkStatus == 1) {
return {
label: "审核",
type: "text",
}
} else {
return {
label: "",
type: "none",
style: {
display: "none",
},
}
}
},
},
{
func: this.deletePatient,
formatter(row) {
return {
label: "删除",
type: "text",
}
},
style: {
color: "#FA6400",
},
},
],
},
]
}, },
} }
</script> </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