You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

213 lines
5.5 KiB

<template>
<div>
<el-card>
<div slot="header">
体检人员登记
</div>
<div style="display: flex;">
<!-- 单位树组件 -->
<div
:style="
'border: 1px solid;width:200px; height:' +
(window.pageHeight < 600 ? 450 : window.pageHeight - 150) +
'px;'
"
>
<CustomerOrgTreeAll />
</div>
<div
:style="
'display:block;width:' +
(window.pageWidth - 200 - 50) +
'px;height:' +
(window.pageHeight < 600 ? 450 : window.pageHeight - 150) +
'px;' +
(window.pageHeight < 600 ? 'overflow-y: scroll;' : '')
"
>
<!-- 查询条件 -->
<PatientRegisterQuery />
<!-- 人员列表信息 -->
<PatientRegisterList />
</div>
</div>
</el-card>
</div>
</template>
<script>
import { mapState, mapActions } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate } from "../../utlis/proFunc";
import CustomerOrgTreeAll from "../../components/patientRegister/customerOrgTreeAll.vue";
import PatientRegisterQuery from "../../components/patientRegister/patientRegisterQuery.vue";
import PatientRegisterList from "../../components/patientRegister/PatientRegisterList.vue";
export default {
components: {
CustomerOrgTreeAll,
PatientRegisterQuery,
PatientRegisterList,
},
data() {
return {
CustomerOrgTreeStyle: "",
CustomerOrgRightStyle: "margin-left: 10px;",
};
},
//组件创建完成,一般页面初始布局放在这里
created() {},
//页面挂载完成,一般页面渲染数据放在这里
mounted() {
this.dictInit();
},
computed: {
...mapState(["window", "dict", "patientRegister", "customerOrg"]),
},
methods: {
...mapActions(["getCustomerOrgGroup"]),
//数据初始化
dictInit() {
//性别(仅档案用)
getapi("/api/app/sex").then((res) => {
if (res.code == 1) {
this.dict.sex = res.data;
}
});
//性别(查询)
getapi("/api/app/for-sex").then((res) => {
if (res.code == 1) {
this.dict.forSex = res.data;
}
});
//体检中心
getapi("/api/app/organization-units/organization-unit-by-is-peis").then(
(res) => {
if (res.code == 1) {
this.dict.organization = res.data;
}
}
);
//体检单位
getapi("/api/app/customer-org/in-filter").then((res) => {
if (res.code == 1) {
this.dict.customerOrg = res.data.items;
}
});
//体检类别
getapi("/api/app/medical-type/in-filter").then((res) => {
if (res.code == 1) {
this.dict.medicalType = res.data.items;
}
});
//人员类别
getapi("/api/app/personnel-type/in-filter").then((res) => {
if (res.code == 1) {
this.dict.personnelType = res.data.items;
}
});
//婚姻状况
getapi("/api/app/marital-statuses").then((res) => {
if (res.code == 1) {
this.dict.maritalStatus = res.data.items;
}
});
//性激素期
getapi("/api/app/sex-hormone-term/in-filter").then((res) => {
if (res.code == 1) {
this.dict.sexHormoneTerm = res.data.items;
}
});
//民族
getapi("/api/app/nation/in-filter").then((res) => {
if (res.code != -1) {
this.dict.nation = res.data;
}
});
//籍惯 ,出生地
getapi("/api/app/birth-place/in-filter").then((res) => {
if (res.code == 1) {
this.dict.birthPlace = res.data.items;
}
});
//套餐
getapi("/api/app/medical-package/in-filter").then((res) => {
if (res.code == 1) {
this.dict.medicalPackage = res.data.items;
}
});
//分组,所有分组,不限单位,不限次数
getapi("/api/app/customer-org-group").then((res) => {
if (res.code == 1) {
this.dict.customerOrgGroupAll = res.data.items;
}
});
//支付方式
getapi("/api/app/pay-mode").then((res) => {
if (res.code == 1) {
this.dict.payMode = res.data;
}
});
//体检类别 树结构
getapi("/api/app/item-type/by-code-all").then((res) => {
if (res.code == 1) {
this.dict.itemTypeTree = res.data;
tcdate(this.dict.itemTypeTree);
}
});
getapi("/api/app/asbitem/in-filter?Filter").then((res) => {
if (res.code == 1) {
this.dict.asbItemAll = res.data.items;
}
});
console.log("dict", this.dict);
},
},
//监听事件()
watch: {
//1级单位值改变,分组改变
"patientRegister.query.CustomerOrgParentId"(newVal, oldVal) {
console.log(
"watch patientRegister.query.CustomerOrgParentId newVal:",
newVal,
"oldVal:",
oldVal
);
if (newVal != oldVal && newVal !== this.dict.personOrgId) {
this.getCustomerOrgGroup(newVal);
}
},
},
};
</script>
<style scoped>
@import '../../assets/css/global_button.css';
@import '../../assets/css/global_dialog.css';
@import '../../assets/css/global_form.css';
@import '../../assets/css/global_input.css';
@import '../../assets/css/global_table.css';
@import '../../assets/css/global.css';
.box {
display: flex;
}
</style>