Commit ec2a7c95 authored by 刘予佳's avatar 刘予佳

Merge remote-tracking branch 'remotes/origin/dev' into dev_lyj

# Conflicts:
#	src/views/audit-qualitycontrol/index.vue
parents e370a1ff 695590b1
...@@ -5,7 +5,7 @@ import request from "@/utils/request" ...@@ -5,7 +5,7 @@ import request from "@/utils/request"
// 累计上报 // 累计上报
export function getPatientPage(params = {}) { export function getPatientPage(params = {}) {
return request({ return request({
url: "/disease-data/data/patient/page", url: "/disease-data/data/report/page",
method: "get", method: "get",
params, params,
}) })
......
import request from "@/utils/request"
/**
* 筛查审核
*
* */
///////////////筛查质控/////////////////////
//筛查已审核列表
export function getScreeningCheck(params = {}) {
return request({
url: "/disease-data/dataCheck/screening/check",
method: "get",
params,
})
}
//筛查待审核列表
export function getScreeningUncheck(params = {}) {
return request({
url: "/disease-data/dataCheck/screening/unCheck",
method: "get",
params,
})
}
//筛查病例待审核(用户)
export function getScreeningUser(id) {
return request({
url: `/disease-data/dataCheck/screening/unCheck/detail/${id}`,
method: "get",
})
}
//筛查病例审核
export function putScreeningCheck(data = {}) {
return request({
url: "/disease-data/dataCheck/screening/uncheck",
method: "put",
data,
})
}
// 获取意见标签
export function getSysCheckNote() {
return request({
url: "/disease-data/sysCheckNote",
method: "get",
})
}
// 删除意见标签
export function saveSysCheckNote(data = {}) {
return request({
url: "/disease-data/sysCheckNote",
method: "post",
data,
})
}
// //修改筛查病例审核意见
// export function putFollowCheckAdvice(data = {}) {
// return request({
// url: "/disease-data/dataCheck/follow/check/advice",
// method: "put",
// data,
// })
// }
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
<form-item-text <form-item-text
:item="item" :item="item"
:form="form" :form="form"
:unionList="unionList" :union-list="unionList"
></form-item-text> ></form-item-text>
</template> </template>
<!-- 可输入 --> <!-- 可输入 -->
...@@ -279,7 +279,7 @@ ...@@ -279,7 +279,7 @@
@change="handleChange" @change="handleChange"
></el-time-picker> ></el-time-picker>
<!-- 日期 --> <!-- 日期 -->
<div class="flex" v-else-if="item.type === 'date'"> <div v-else-if="item.type === 'date'" class="flex">
<el-date-picker <el-date-picker
v-model="form[item.prop]" v-model="form[item.prop]"
:placeholder="item.placeholder ? item.placeholder : '请选择'" :placeholder="item.placeholder ? item.placeholder : '请选择'"
...@@ -419,7 +419,9 @@ export default { ...@@ -419,7 +419,9 @@ export default {
default: false, default: false,
}, },
vwForm: {}, vwForm: {},
formId: {}, formId: {
default: () => "",
},
getPatientId: { getPatientId: {
type: Function, type: Function,
default: () => {}, default: () => {},
...@@ -447,7 +449,6 @@ export default { ...@@ -447,7 +449,6 @@ export default {
columns: Array, columns: Array,
columnIndex: Number, columnIndex: Number,
group: Array, group: Array,
type: String,
}, },
data() { data() {
return { return {
...@@ -486,20 +487,39 @@ export default { ...@@ -486,20 +487,39 @@ export default {
this.timerangeReset() this.timerangeReset()
this.numberReset() this.numberReset()
this.checkboxReset() this.checkboxReset()
//! 处理医联体名称,新增直接请求,其他等union_id后再请求
if (this.item.prop == "union_id") { if (this.item.prop == "union_id") {
this.unionList = []
// this.getMedicalunionList()
if (this.$route.path == "/screening/add") {
this.getMedicalunionList()
} else {
this.$watch(
() => this.form[this.item.prop],
(newVal, oldVal) => {
// console.log("----------有值----------")
this.getMedicalunionList() this.getMedicalunionList()
// 做点什么
}
)
}
} }
}, },
mounted() { mounted() {
this.showFormItem() this.showFormItem()
}, },
beforeDestroy() {
this.$watch(
() => this.form[this.item.prop],
(newVal, oldVal) => {}
)
},
methods: { methods: {
// 获取医联体列表 // 获取医联体列表
getMedicalunionList() { getMedicalunionList() {
getMedicalunionList().then((res) => { getMedicalunionList().then((res) => {
console.log(res)
if (res.code == 1) { if (res.code == 1) {
this.unionList = res.data this.unionList = [...res.data]
} else { } else {
this.unionList = [] this.unionList = []
} }
...@@ -705,13 +725,16 @@ export default { ...@@ -705,13 +725,16 @@ export default {
targetItem = group.find((_) => _.prop === key) targetItem = group.find((_) => _.prop === key)
} }
if (!targetItem) return if (!targetItem) return
const values = dyMap[key]
let display = false let display = false
const values = dyMap[key]
if (Array.isArray(val)) { if (Array.isArray(val)) {
display = values.filter((v) => val.includes(v)).length > 0 display = values.filter((v) => val.includes(v)).length > 0
} else { } else {
display = values.includes(val) display = values.includes(val + "")
} }
//! 胃上皮瘤变(高级别)胃癌和进展性胃癌控制显隐+自定义规则 //! 胃上皮瘤变(高级别)胃癌和进展性胃癌控制显隐+自定义规则
if ( if (
prop == "early_gastric_cancer" || prop == "early_gastric_cancer" ||
...@@ -734,7 +757,7 @@ export default { ...@@ -734,7 +757,7 @@ export default {
: (flag = false) : (flag = false)
} }
} }
console.log(flag, targetItem) // console.log(flag, targetItem)
display = flag display = flag
if (display) { if (display) {
targetItem.rules = [ targetItem.rules = [
...@@ -764,7 +787,7 @@ export default { ...@@ -764,7 +787,7 @@ export default {
this.$set(this.form, "$_hidden" + targetItem.prop, !display) this.$set(this.form, "$_hidden" + targetItem.prop, !display)
}, 200) }, 200)
} else { } else {
// ! 设置每个表单中每项显隐的rules // ! 设置每个表单中每项的rules
if (!filterArr.includes(targetItem.prop)) { if (!filterArr.includes(targetItem.prop)) {
if (targetItem.rules && Boolean(display)) { if (targetItem.rules && Boolean(display)) {
...@@ -788,18 +811,18 @@ export default { ...@@ -788,18 +811,18 @@ export default {
} }
} }
// !设置大表单里的每个小表单显隐rules // !设置大表单里的每个小表单rules
if (targetItem.prop == "1669874397313_56690") { if (targetItem.prop == "1669874397313_56690") {
console.log(display)
// !只能写死,当前情况下,定义一个字段用来缓存是否回显,根据val // !只能写死,当前情况下,定义一个字段用来缓存是否回显,根据val
// if (val == 0) { // if (val == 0) {
// this.showChildren = false // this.showChildren = false
targetItem.column.forEach((e, index) => { targetItem.column.forEach((e, index) => {
// 去除esd报告 // 去除esd报告
if (e.prop == "esd_path") { if (e.prop == "esd_path") {
return return
} }
console.log(e.label, ":", e.rules) // console.log(e.label, ":", e.rules)
if (e.rules && val == 0) { if (e.rules && val == 0) {
targetItem.column[index].rules = [] targetItem.column[index].rules = []
} else if (e.rules && val == 1) { } else if (e.rules && val == 1) {
......
...@@ -78,7 +78,7 @@ export default { ...@@ -78,7 +78,7 @@ export default {
watch: { watch: {
unionList(v) { unionList(v) {
if (v.length > 0 && this.form[this.item.prop]) { if (v.length > 0 && this.form[this.item.prop]) {
console.log() // console.log("获取到了医联体列表", this.form[this.item.prop])
this.unionName = v.filter( this.unionName = v.filter(
(e) => e.unionNo == this.form[this.item.prop] (e) => e.unionNo == this.form[this.item.prop]
)[0].unionName )[0].unionName
......
...@@ -177,6 +177,7 @@ export default { ...@@ -177,6 +177,7 @@ export default {
watch: { watch: {
formEdit: { formEdit: {
handler() { handler() {
// console.log("configforms:", this.formEdit)
this.initfields(this.formEdit) this.initfields(this.formEdit)
}, },
}, },
......
...@@ -124,7 +124,7 @@ export default { ...@@ -124,7 +124,7 @@ export default {
watch: { watch: {
value: { value: {
handler(newValue, oldValue) { handler(newValue, oldValue) {
console.log(this.value) // console.log(this.value)
if (newValue === oldValue) return if (newValue === oldValue) return
this.fileList = newValue.map((_) => { this.fileList = newValue.map((_) => {
return { return {
......
...@@ -126,7 +126,7 @@ service.interceptors.response.use( ...@@ -126,7 +126,7 @@ service.interceptors.response.use(
store.dispatch("user/resetAccessToken").then(() => { store.dispatch("user/resetAccessToken").then(() => {
// location.reload() // location.reload()
router.push({ router.push({
path: "/login", path: "/home",
}) })
}) })
return Promise.reject(error) return Promise.reject(error)
......
...@@ -6,21 +6,21 @@ ...@@ -6,21 +6,21 @@
</div> </div>
<!-- 新闻会议tab --> <!-- 新闻会议tab -->
<div class="right box tabbox videoboxs"> <div class="right box tabbox videoboxs">
<el-tabs v-model="curTab"> <el-tabs v-model="curTab" @tab-click="handleClick">
<el-tab-pane <el-tab-pane
v-for="(e, index) in tabList" v-for="(e, index) in tabList"
:key="index" :key="index"
:label="e.title" :label="e.title"
:name="e.title" :name="index + 1 + ''"
> >
<ul class="tabslist"> <ul class="tabslist">
<li v-for="(item, index) in noticeList" :key="index"> <li v-for="(item, index) in noticeList" :key="index">
<div class="left"> <div class="left">
<div class="circle"></div> <div class="circle"></div>
{{ item.title }} {{ item.articleTitle }}
</div> </div>
<div class="right"> <div class="right">
{{ item.date }} {{ item.createTime }}
</div> </div>
</li> </li>
</ul> </ul>
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
:label="e.title" :label="e.title"
:name="e.title" :name="e.title"
> >
<ul class="tabslist" style="height: 380px"> <ul class="tabslist" style="height: 380px" :loading="listLoading">
<li v-for="(item, index) in exampleList" :key="index"> <li v-for="(item, index) in exampleList" :key="index">
<div class="left"> <div class="left">
<div class="circle"></div> <div class="circle"></div>
...@@ -192,6 +192,7 @@ ...@@ -192,6 +192,7 @@
</template> </template>
<script> <script>
import { getRankTotal, getCurrentQuarter } from "@/api/Home" import { getRankTotal, getCurrentQuarter } from "@/api/Home"
import { articleList } from "@/api/operation-management"
export default { export default {
data() { data() {
return { return {
...@@ -245,30 +246,6 @@ export default { ...@@ -245,30 +246,6 @@ export default {
title: "典型案例小标题典型案例小标题", title: "典型案例小标题典型案例小标题",
date: "2022-09-26", date: "2022-09-26",
}, },
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
], ],
tabList: [ tabList: [
{ {
...@@ -322,12 +299,9 @@ export default { ...@@ -322,12 +299,9 @@ export default {
title: "典型案例小标题典型案例小标题", title: "典型案例小标题典型案例小标题",
date: "2022-09-26", date: "2022-09-26",
}, },
{
title: "典型案例小标题典型案例小标题",
date: "2022-09-26",
},
], ],
curTab: "新闻会议", curTab: "1",
listLoading: false,
rangeList: [], // 上报排名 rangeList: [], // 上报排名
curQuarterList: [], //当前季度排名 curQuarterList: [], //当前季度排名
typeList: [ typeList: [
...@@ -373,6 +347,9 @@ export default { ...@@ -373,6 +347,9 @@ export default {
showFixed: false, showFixed: false,
} }
}, },
created() {
this.getArticleList("1")
},
mounted() { mounted() {
this.getRankTotal() this.getRankTotal()
this.getCurrentQuarter() this.getCurrentQuarter()
...@@ -392,6 +369,29 @@ export default { ...@@ -392,6 +369,29 @@ export default {
}) })
}, },
methods: { methods: {
handleClick() {
this.getArticleList(this.curTab)
},
// 获取新闻会议tab的数据
getArticleList(moduleType) {
this.listLoading = true
let params = {
size: 10,
current: 1,
moduleType: moduleType,
}
articleList(params)
.then((res) => {
if (res.code == 1) {
if (["1", "2", "3"].includes(moduleType)) {
this.noticeList = [...res.data.records]
}
}
})
.catch((e) => {
this.listLoading = false
})
},
getRankTotal() { getRankTotal() {
getRankTotal().then((res) => { getRankTotal().then((res) => {
if (res.code == 1) { if (res.code == 1) {
...@@ -421,9 +421,11 @@ export default { ...@@ -421,9 +421,11 @@ export default {
height: 100%; height: 100%;
// background: blue; // background: blue;
background: #fff; background: #fff;
.video { .video {
width: 100%; width: 100%;
height: 400px; border-radius: 5px;
height: 420px;
object-fit: fill; object-fit: fill;
} }
} }
...@@ -432,12 +434,15 @@ export default { ...@@ -432,12 +434,15 @@ export default {
border-radius: 8px; border-radius: 8px;
overflow: hidden; overflow: hidden;
.tabslist { .tabslist {
height: 332px; height: 352px;
padding-right: 8px; padding-right: 8px;
overflow: hidden; overflow: hidden;
&:hover { display: flex;
overflow: overlay; flex-direction: column;
} justify-content: space-between;
// &:hover {
// overflow: overlay;
// }
li { li {
display: flex; display: flex;
......
<template> <template>
<!-- 组件 -->
<div> <div>
<el-container v-loading="fromLoading"> <el-container v-loading="fromLoading">
<el-main class="transition-box"> <el-main class="transition-box">
<el-empty v-if="!isEmpty" description="暂无数据"></el-empty> <el-empty v-if="!isEmpty && noData" description="暂无数据"></el-empty>
<template v-if="isEmpty"> <template v-if="isEmpty && !noData">
<div ref="my-form" class="my-form"> <div ref="my-form" class="my-form">
<template v-for="(item, index) in jsonList">
<custom-form <custom-form
:key="index"
ref="customForm" ref="customForm"
class="mb-20" class="mb-20"
:options="jsonList[1]" :options="item"
:form-edit="form" :form-edit="formList"
></custom-form> ></custom-form
<custom-form ></template>
ref="form"
:options="jsonList[2]"
class="mb-20"
:form-edit="form"
></custom-form>
<custom-form
ref="form"
:options="jsonList[3]"
class="mb-20"
:form-edit="form"
></custom-form>
<custom-form
ref="form"
class="mb-20"
:options="jsonList[4]"
:form-edit="form"
></custom-form>
</div> </div>
</template> </template>
</el-main> </el-main>
...@@ -55,20 +41,21 @@ import { mapGetters } from "vuex" ...@@ -55,20 +41,21 @@ import { mapGetters } from "vuex"
import CustomForm from "@/components/FormComponents/CustomForm/index" import CustomForm from "@/components/FormComponents/CustomForm/index"
import { getCurrentFormByType } from "@/api/coop-group.js" import { getCurrentFormByType } from "@/api/coop-group.js"
import { getFormDetail } from "@/api/field" import { getFormDetail } from "@/api/field"
import { getPatientDetail } from "@/api/patient.js"
export default { export default {
nameL: "组件",
components: { CustomForm }, components: { CustomForm },
props: {
patientId: String,
noData: Boolean,
},
data() { data() {
return { return {
fromLoading: true, fromLoading: false,
formTabs: [], formTabs: [],
formTabsList: [], formTabsList: [],
jsonList: [], jsonList: [],
form: { formList: {},
name: "123",
phone: "18712412341",
age: "18",
is_continue_follow: "1",
},
asideShow: true, asideShow: true,
screenList: [ screenList: [
{ {
...@@ -95,12 +82,30 @@ export default { ...@@ -95,12 +82,30 @@ export default {
return this.asideShow ? "200px" : "0px" return this.asideShow ? "200px" : "0px"
}, },
}, },
watch: {}, watch: {
created() { patientId(v) {
this.getCurrentFormByType() this.getCurrentFormByType()
}, },
},
created() {},
mounted() {}, mounted() {},
methods: { methods: {
// 获取当前用户的表单
getPatientDetail() {
console.log(this.formTabs)
for (let i = 0; i < this.formTabs.length; i++) {
getPatientDetail({
patientId: this.patientId,
formId: this.formTabs[i].formId,
}).then((res) => {
if (res.code == 1) {
const { data } = res.data
this.formList = { ...this.formList, ...data }
// console.log(this.formList)
}
})
}
},
getCurrentFormByType(type = 1) { getCurrentFormByType(type = 1) {
this.fromLoading = true this.fromLoading = true
getCurrentFormByType({ getCurrentFormByType({
...@@ -112,11 +117,11 @@ export default { ...@@ -112,11 +117,11 @@ export default {
const formTabs = [] const formTabs = []
this.formTabsList = res.data.map((item, index) => { this.formTabsList = res.data.map((item, index) => {
if (index === 0) { if (index === 0) {
formTabs.push({ // formTabs.push({
silent: false, // silent: false,
...item, // ...item,
label: item.tabName, // label: item.tabName,
}) // })
} else { } else {
formTabs.push({ formTabs.push({
id: item.id, id: item.id,
...@@ -152,17 +157,24 @@ export default { ...@@ -152,17 +157,24 @@ export default {
obj.closeBtn = true obj.closeBtn = true
obj.detail = true obj.detail = true
this.jsonList.push(obj) this.jsonList.push(obj)
if (i == 4) { if (i == this.formTabs.length - 1) {
console.log(this.jsonList) // console.log(this.jsonList)
this.fromLoading = false this.fromLoading = false
} }
} }
}) })
.finally(() => { .finally(() => {
// console.log(this.formTabs)
if (i < this.formTabs.length - 1) { if (i < this.formTabs.length - 1) {
i++ i++
this.initForm(i) this.initForm(i)
} }
// console.log(this.jsonList)
if (this.jsonList.length == this.formTabs.length) {
this.$nextTick(() => {
this.getPatientDetail()
})
}
}) })
}, },
}, },
......
This diff is collapsed.
...@@ -36,20 +36,22 @@ ...@@ -36,20 +36,22 @@
</div> </div>
</template> </template>
<script> <script>
import CustomsTable from "@/components/CustomsTable" // import CustomsTable from "@/components/CustomsTable"
import paginationMixin from "@/components/TabComponents/mixin" import paginationMixin from "@/components/TabComponents/mixin"
import { getFollowCheck,getFollowUncheck } from "@/api/followup" import { getFollowCheck, getFollowUncheck } from "@/api/followup"
import { getScreeningCheck, getScreeningUncheck } from "@/api/screeningAudit"
export default { export default {
components: { components: {
CustomsTable, // CustomsTable,
}, },
mixins: [paginationMixin], mixins: [paginationMixin],
data() { data() {
return { return {
type: "0", type: "", // 0是筛查 1是随访
auditStatus: "0", auditStatus: "", // 0 待审核 1 已审核
listLoading: false, listLoading: false,
tableData: [ tableData: [
<<<<<<< HEAD
{ {
"unionName": "合肥高新附院", "unionName": "合肥高新附院",
"unionId": "2", "unionId": "2",
...@@ -57,22 +59,31 @@ export default { ...@@ -57,22 +59,31 @@ export default {
"unCheckNums": 7, "unCheckNums": 7,
"checkNums": 0 "checkNums": 0
} }
=======
// {
// unionId: "2",
// unionName: "合肥高新附院",
// unCheckNums: 2,
// checkNums: 0,
// reportTime: "2022-12-09 09:12:35",
// },
>>>>>>> remotes/origin/dev
], ],
} }
}, },
watch: { watch: {
auditStatus(val) { auditStatus(val) {
sessionStorage.setItem('audit-status',val) sessionStorage.setItem("audit-status", val)
switch (this.type) { switch (this.type) {
case "1": case "1":
this.handleSearch() this.handleSearch()
break break
} }
console.log('status',val) console.log("status", val)
}, },
type(val) { type(val) {
console.log('type',val) console.log("type", val)
sessionStorage.setItem('audit-type',val) sessionStorage.setItem("audit-type", val)
switch (val) { switch (val) {
case "1": case "1":
this.handleSearch() this.handleSearch()
...@@ -80,8 +91,8 @@ export default { ...@@ -80,8 +91,8 @@ export default {
} }
}, },
}, },
computed:{ computed: {
columns(){ columns() {
const unCkeckColumns = [ const unCkeckColumns = [
{ {
label: "医联体", label: "医联体",
...@@ -152,7 +163,20 @@ export default { ...@@ -152,7 +163,20 @@ export default {
{ {
label: "审核状态", label: "审核状态",
minWidth: 120, minWidth: 120,
value: "unCheckNums", value: "checkStatus",
formatter: (row) => {
let text = ""
if (row.checkStatus == 3) {
text = "合格"
} else if (row.checkStatus == 4) {
text = "不合格"
} else if (row.checkStatus == 5) {
text = "驳回修改"
} else if (row.checkStatus) {
text = "--"
}
return text
},
}, },
{ {
label: "上报时间", label: "上报时间",
...@@ -173,17 +197,18 @@ export default { ...@@ -173,17 +197,18 @@ export default {
], ],
}, },
] ]
return this.auditStatus == "1" ? checkColumns:unCkeckColumns return this.auditStatus == "1" ? checkColumns : unCkeckColumns
} },
}, },
mounted() { mounted() {
if(sessionStorage.getItem('audit-status') || sessionStorage.getItem('audit-type') ){ if (
this.auditStatus = sessionStorage.getItem('audit-status') || "0" sessionStorage.getItem("audit-status") ||
this.type = sessionStorage.getItem('audit-type') || "0" sessionStorage.getItem("audit-type")
) {
this.auditStatus = sessionStorage.getItem("audit-status") || "0"
this.type = sessionStorage.getItem("audit-type") || "0"
} }
else{
this.handleSearch() this.handleSearch()
}
}, },
methods: { methods: {
handleClick() { handleClick() {
...@@ -193,6 +218,7 @@ export default { ...@@ -193,6 +218,7 @@ export default {
} else { } else {
this.columns[this.columns.length - 1].operations[0].label = "审核" this.columns[this.columns.length - 1].operations[0].label = "审核"
} }
this.handleSearch()
}, },
auditHandle(data, i) { auditHandle(data, i) {
if (this.type == "1") { if (this.type == "1") {
...@@ -207,27 +233,37 @@ export default { ...@@ -207,27 +233,37 @@ export default {
this.$router.push({ this.$router.push({
path: "/auditdetail", path: "/auditdetail",
query: { query: {
id: i, id: data["unionId"],
}, },
}) })
} }
}, },
async handleSearch() { async handleSearch() {
this.listLoading = true
let params = { let params = {
pageSize:this.pageSize, pageSize: this.pageSize,
pageNum:this.pageIndex pageNum: this.pageIndex,
} }
let res let res
switch (this.auditStatus) { switch (this.auditStatus) {
case "0": case "0":
if (this.type == "0") {
res = await getScreeningUncheck(params) //待审核
} else {
res = await getFollowUncheck(params) //待审核 res = await getFollowUncheck(params) //待审核
break; }
break
case "1": case "1":
if (this.type == "0") {
res = await getScreeningCheck(params) //待审核
} else {
res = await getFollowCheck(params) //已审核 res = await getFollowCheck(params) //已审核
break;
} }
this.tableData = res.data.records //调试注释 break
this.total= res.data.total }
this.tableData = res.data.records
this.total = res.data.total
this.listLoading = false
}, },
}, },
} }
......
...@@ -11,7 +11,6 @@ export default { ...@@ -11,7 +11,6 @@ export default {
}, },
provide() { provide() {
const showIndex = true const showIndex = true
return { return {
showIndex, showIndex,
} }
......
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