Browse Source

rydj

master
pengjun 2 years ago
parent
commit
6b704d29fd
  1. 338
      src/components/patientRegister/PatientRegisterEdit.vue
  2. 124
      src/components/patientRegister/PatientRegisterList.vue
  3. 327
      src/components/patientRegister/customerOrgEdit.vue
  4. 54
      src/components/patientRegister/customerOrgTreeAll.vue
  5. 76
      src/components/patientRegister/patientRegisterAsbItem.vue
  6. 122
      src/components/patientRegister/patientRegisterQuery.vue
  7. 5
      src/store/index.js
  8. 47
      src/views/customerOrg/patientRegister.vue
  9. 12
      src/views/customerOrg/patientRegisterRecover.vue
  10. 12
      src/views/customerOrg/patientRegisterSign.vue

338
src/components/patientRegister/PatientRegisterEdit.vue

@ -0,0 +1,338 @@
<template>
<div style="display:flex">
<div>
<el-form ref="form" :model="customerOrg.customerOrgRd" label-width="110px" :rules="rules" size="medium">
<el-row>
<el-col :span="8">
<el-form-item label="单位名称" prop="displayName">
<el-input v-model="customerOrg.customerOrgRd.displayName"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="简称" prop="shortName">
<el-input v-model="customerOrg.customerOrgRd.shortName"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="发票抬头" prop="invoiceName">
<el-input v-model="customerOrg.customerOrgRd.invoiceName"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="上级单位" prop="parentId">
<el-cascader v-model="customerOrg.customerOrgRd.parentId" :options="customerOrg.customerOrgTree" :props="{ checkStrictly: true ,expandTrigger: 'hover',...customerOrg.treeprops}"
:show-all-levels="false" clearable filterable>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="联系电话" prop="telephone">
<el-input v-model="customerOrg.customerOrgRd.telephone"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="传真" prop="fax">
<el-input v-model="customerOrg.customerOrgRd.fax"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="邮政编码" prop="postalCode">
<el-input v-model="customerOrg.customerOrgRd.postalCode"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="地址" prop="address">
<el-input v-model="customerOrg.customerOrgRd.address"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="开户银行" prop="bank">
<el-input v-model="customerOrg.customerOrgRd.bank"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="银行账号" prop="accounts">
<el-input v-model="customerOrg.customerOrgRd.accounts"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位性质" prop="orgTypeId">
<el-select v-model="customerOrg.customerOrgRd.orgTypeId" placeholder="请选择" filterable>
<el-option v-for="item in data.customerOrgType" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位简码" prop="simpleCode">
<el-input v-model="customerOrg.customerOrgRd.simpleCode" placeholder="由系统自动生成" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="体检中心" prop="organizationUnitId">
<el-select v-model="customerOrg.customerOrgRd.organizationUnitId" placeholder="请选择" filterable>
<el-option v-for="item in data.organizationdata" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="备注" prop="remark">
<el-input v-model="customerOrg.customerOrgRd.remark"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="加锁" prop="isLock">
<el-radio v-model="customerOrg.customerOrgRd.isLock" label="Y"></el-radio>
<el-radio v-model="customerOrg.customerOrgRd.isLock" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="状态" prop="isActive">
<el-radio v-model="customerOrg.customerOrgRd.isActive" label="Y">启用</el-radio>
<el-radio v-model="customerOrg.customerOrgRd.isActive" label="N">停用</el-radio>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="显示顺序" prop="displayOrder">
<el-input v-model="customerOrg.customerOrgRd.displayOrder"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- -->
<el-divider/>
<el-row>
<el-col :span="5">
<el-form-item label="创建者">
<el-input v-model="customerOrg.customerOrgRd.creatorName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="创建时间" style="margin-left: -5%">
<el-input :value="customerOrg.customerOrgRd.creationTime | dateFormat" disabled style="width: 90%"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="修改者" style="margin-left: -25%">
<el-input v-model="customerOrg.customerOrgRd.creatorName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="修改时间" style="margin-left: -5%">
<el-input :value="customerOrg.customerOrgRd.lastModificationTime | dateFormat" disabled style="width: 90%"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px;" width="150px">
<div class="btn">
<el-button @click="" >读身份证</el-button>
</div>
<div class="btn">
<el-button type="success" @click="Onsubmit('form')" >保存</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="" >拍照</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="" >申请单</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="">打条码</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="" >打指引单</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="" >复制新增</el-button>
</div>
</div>
</div>
</template>
<script>
import { mapState,mapMutations } from 'vuex'
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate } from '../../utlis/proFunc'
export default {
components: {
},
data() {
return {
data: {
organizationdata: [], //
customerOrgType:[], //
},
pojo:{
displayName: "string",
shortName: "string",
invoiceName: "string",
parentId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
telephone: "string",
fax: "string",
postalCode: "string",
address: "string",
bank: "string",
accounts: "string",
orgTypeId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
remark: "string",
isLock: "N",
isActive: "Y",
organizationUnitId: "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}, //
rules: {
displayName: [
{ required: true, message: "请输入名称", trigger: "blur" },
],
shortName: [
{ required: true, message: "请输入简写", trigger: "blur" },
],
orgTypeId:[
{ required: true, message: "请输入单位性质"},
],
organizationUnitId: [
{ required: true, message: "请输入体检中心", trigger: "blur" },
],
displayOrder: [
{ required: true, message: "请输入显示顺序", trigger: "blur" },
],
},
isshow: false,
};
},
created() {
},
//
mounted() {
//
this.getoraniztion();
//
this.getOrgType()
},
computed:{
...mapState(['customerOrg']),
},
methods: {
...mapMutations(['setData']),
//
getoraniztion() {
getapi("/api/app/organization-units/organization-unit-by-is-peis").then(
(res) => {
this.data.organizationdata = res.data;
}
);
},
//
getOrgType() {
getapi("/api/app/customer-org-type/in-filter").then((res) => {
this.data.customerOrgType = res.data.items;
});
},
//
getCustomerOrgTree(){
getapi("/api/app/customer-org/by-code-all").then(
(res) => {
//customerOrgTree = res.data;
console.log('res.data',res.data)
this.setData({ key: 'customerOrg.customerOrgTree', value: res.data})
tcdate(this.customerOrg.customerOrgTree)
}
);
},
//
Onsubmit(formName) {
console.log('vuex data',this.customerOrg.customerOrgRd)
let vpojo = this.customerOrg.customerOrgRd
this.$refs[formName].validate((valid) => {
if (valid) {
//
this.pojo = {
displayName: vpojo.displayName,
shortName: vpojo.shortName,
invoiceName: vpojo.invoiceName,
parentId: vpojo.parentId,
telephone: vpojo.telephone,
fax: vpojo.fax,
postalCode: vpojo.postalCode,
address: vpojo.address,
bank: vpojo.bank,
accounts: vpojo.accounts,
orgTypeId: vpojo.orgTypeId,
remark: vpojo.remark,
isLock: vpojo.isLock,
isActive: vpojo.isActive,
organizationUnitId: vpojo.organizationUnitId
}
console.log('pojo',this.pojo)
if(this.customerOrg.customerOrgRd.id.length < 1){
//id
postapi(`/api/app/customer-org`, this.pojo).then(
(res) => {
this.$message.success("创健 操作成功");
this.setData({ key: 'customerOrg.customerOrgRd', value: res})
this.customerOrg.customerOrgId = res.id
this.getCustomerOrgTree()
}
);
}else{
//id
putapi(`/api/app/customer-org/${this.customerOrg.customerOrgRd.id}`, this.pojo).then(
(res) => {
this.$message.success("更新 操作成功");
this.getCustomerOrgTree()
}
);
}
} else {
alert('未通过数据校验');
return false;
}
});
},
//
add() {
this.customerOrg.customerOrgId = ''
this.customerOrg.customerOrgRd = {id:'',isLock: 'N',
isActive: 'Y'}
},
//
del(){
deletapi(`/api/app/customer-org/${this.customerOrg.customerOrgRd.id}`).then(
(res) => {
this.$message.success("删除 操作成功");
this.setData({ key: 'customerOrg.customerOrgRd', value:{id:''}})
this.getCustomerOrgTree()
}
);
}
},
};
</script>
<style scoped>
.btn {
margin-top: 10px;
}
</style>

124
src/components/patientRegister/PatientRegisterList.vue

@ -0,0 +1,124 @@
<template>
<div>
<div style="display: flex">
<el-table
:data="dataList"
border
style="width: 90%; height: 480px"
row-key="id"
size="small"
class="el-table__body-wrapper tbody"
highlight-current-row
@row-click="rowick"
ref="dataList"
>
<el-table-column prop="is_complete" label="完成" />
<el-table-column label="单位"></el-table-column>
<el-table-column label="部门"></el-table-column>
<el-table-column label="姓名"></el-table-column>
<el-table-column label="性别"></el-table-column>
<el-table-column label="年龄"></el-table-column>
<el-table-column label="条码号"></el-table-column>
<el-table-column label="档案号"></el-table-column>
<el-table-column label="计划ID"></el-table-column>
<el-table-column label="次数"></el-table-column>
<el-table-column label="分组/套餐"></el-table-column>
<el-table-column label="民族"></el-table-column>
</el-table>
<div style="margin-left: 10px;">
<div class="listBtn">
<el-button type="success" @click="add">人员登记</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="edit">编辑</el-button>
</div>
<div class="listBtn">
<el-button type="danger" @click="">删除</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="">拍照</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="">健康档案</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="">调整分组</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="">调整项目</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="">打指引单</el-button>
</div>
</div>
</div>
<!-- 体检人员登记 -->
<el-dialog
:title="patientRegister.patientRegisterId ? '编辑':'新增'"
:visible.sync="dialogVisible"
width="80%"
>
<PatientRegisterEdit :patientRegisterRd="patientRegisterRd"/>
</el-dialog>
</div>
</template>
<script>
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import PatientRegisterEdit from '../../components/patientRegister/PatientRegisterEdit.vue'
export default {
components: {
PatientRegisterEdit
},
data() {
return {
dataList:[],//
dialogVisible:false,
patientRegisterRd:{},//
};
},
created() {},
//
mounted() {
},
computed:{
...mapState(['patientRegister']),
},
methods: {
//
rowick(row) {
this.patientRegister.patientRegisterId = row.id
this.patientRegisterRd = row
},
//
add() {
this.patientRegister.patientRegisterId = ''
this.patientRegisterRd = {customerOrgId:this.patientRegister.query.customerOrgId}
this.dialogVisible = true
},
edit() {
if(!this.patientRegister.patientRegisterId){
alert("请选择人员")
return
}
this.dialogVisible = true
},
},
};
</script>
<style scoped>
.box {
display: flex;
}
.listBtn {
margin-top:10px;
}
</style>

327
src/components/patientRegister/customerOrgEdit.vue

@ -1,327 +0,0 @@
<template>
<div style="display: flex">
<div>
<el-form
ref="form"
:model="customerOrg.customerOrgRd"
label-width="110px"
:rules="rules"
size="medium"
>
<el-row>
<el-col :span="8">
<el-form-item label="单位名称" prop="displayName">
<el-input
v-model="customerOrg.customerOrgRd.displayName"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位分组" prop="shortName">
<el-input
v-model="customerOrg.customerOrgRd.shortName"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="姓名" prop="invoiceName">
<el-input
v-model="customerOrg.customerOrgRd.invoiceName"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="性别" prop="parentId">
<el-cascader
v-model="customerOrg.customerOrgRd.parentId"
:options="customerOrg.customerOrgTree"
:props="{
checkStrictly: true,
expandTrigger: 'hover',
...customerOrg.treeprops,
}"
:show-all-levels="false"
clearable
filterable
>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="档案号" prop="telephone">
<el-input
v-model="customerOrg.customerOrgRd.telephone"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="条码号" prop="fax">
<el-input v-model="customerOrg.customerOrgRd.fax"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="身份证" prop="postalCode">
<el-input
v-model="customerOrg.customerOrgRd.postalCode"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="全部" prop="isLock">
<el-radio v-model="customerOrg.customerOrgRd.isLock" label="Y"
>已登记</el-radio
>
<el-radio v-model="customerOrg.customerOrgRd.isLock" label="N"
>未登记</el-radio
>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="状态" prop="isActive">
<el-radio v-model="customerOrg.customerOrgRd.isActive" label="Y"
>启用</el-radio
>
<el-radio v-model="customerOrg.customerOrgRd.isActive" label="N"
>停用</el-radio
>
</el-form-item>
</el-col>
</el-row>
<!-- -->
<el-table>
<el-table-column label="单位"></el-table-column>
<el-table-column label="部门"></el-table-column>
<el-table-column label="姓名"></el-table-column>
<el-table-column label="性别"></el-table-column>
<el-table-column label="年龄"></el-table-column>
<el-table-column label="条码号"></el-table-column>
<el-table-column label="档案号"></el-table-column>
<el-table-column label="计划ID"></el-table-column>
<el-table-column label="次数"></el-table-column>
<el-table-column label="分组"></el-table-column>
<el-table-column label="套餐"></el-table-column>
<el-table-column label="名族"></el-table-column>
</el-table>
<!-- -->
<el-divider></el-divider>
<el-row>
<el-col :span="5">
<el-form-item label="创建者">
<el-input
v-model="customerOrg.customerOrgRd.creatorName"
disabled
></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="创建时间" style="margin-left: -5%">
<el-input
:value="customerOrg.customerOrgRd.creationTime | dateFormat"
disabled
style="width: 90%"
></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="修改者" style="margin-left: -25%">
<el-input
v-model="customerOrg.customerOrgRd.creatorName"
disabled
></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="修改时间" style="margin-left: -5%">
<el-input
:value="
customerOrg.customerOrgRd.lastModificationTime | dateFormat
"
disabled
style="width: 90%"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px; margin-top: 5%" width="150px">
<el-button type="primary" @click="add">新增</el-button>
<el-button
type="primary"
@click="Onsubmit('form')"
style="margin-left: 0; margin-top: 10px"
>保存</el-button
>
<el-button
type="primary"
@click="Onsubmit('form')"
style="margin-left: 0; margin-top: 10px"
>登记</el-button
>
<div style="margin-top: 10px">
<el-button type="danger" @click="del">删除</el-button>
</div>
</div>
</div>
</template>
<script>
import { mapState, mapMutations } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate } from "../../utlis/proFunc";
export default {
components: {},
data() {
return {
data: {
organizationdata: [], //
customerOrgType: [], //
},
pojo: {
displayName: "string",
shortName: "string",
invoiceName: "string",
parentId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
telephone: "string",
fax: "string",
postalCode: "string",
address: "string",
bank: "string",
accounts: "string",
orgTypeId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
remark: "string",
isLock: "N",
isActive: "Y",
organizationUnitId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
}, //
rules: {
displayName: [
{ required: true, message: "请输入名称", trigger: "blur" },
],
shortName: [{ required: true, message: "请输入简写", trigger: "blur" }],
orgTypeId: [{ required: true, message: "请输入单位性质" }],
organizationUnitId: [
{ required: true, message: "请输入体检中心", trigger: "blur" },
],
displayOrder: [
{ required: true, message: "请输入显示顺序", trigger: "blur" },
],
},
isshow: false,
};
},
created() {},
//
mounted() {
//
this.getoraniztion();
//
this.getOrgType();
},
computed: {
...mapState(["customerOrg"]),
},
methods: {
...mapMutations(["setData"]),
//
getoraniztion() {
getapi("/api/app/organization-units/organization-unit-by-is-peis").then(
(res) => {
this.data.organizationdata = res.data;
}
);
},
//
getOrgType() {
getapi("/api/app/customer-org-type/in-filter").then((res) => {
this.data.customerOrgType = res.data.items;
});
},
//
getCustomerOrgTree() {
getapi("/api/app/customer-org/by-code-all").then((res) => {
//customerOrgTree = res.data;
console.log("res.data", res.data);
this.setData({ key: "customerOrg.customerOrgTree", value: res.data });
tcdate(this.customerOrg.customerOrgTree);
});
},
//
Onsubmit(formName) {
console.log("vuex data", this.customerOrg.customerOrgRd);
let vpojo = this.customerOrg.customerOrgRd;
this.$refs[formName].validate((valid) => {
if (valid) {
//
this.pojo = {
displayName: vpojo.displayName,
shortName: vpojo.shortName,
invoiceName: vpojo.invoiceName,
parentId: vpojo.parentId,
telephone: vpojo.telephone,
fax: vpojo.fax,
postalCode: vpojo.postalCode,
address: vpojo.address,
bank: vpojo.bank,
accounts: vpojo.accounts,
orgTypeId: vpojo.orgTypeId,
remark: vpojo.remark,
isLock: vpojo.isLock,
isActive: vpojo.isActive,
organizationUnitId: vpojo.organizationUnitId,
};
console.log("pojo", this.pojo);
if (this.customerOrg.customerOrgRd.id.length < 1) {
//id
postapi(`/api/app/customer-org`, this.pojo).then((res) => {
this.$message.success("创健 操作成功");
this.setData({ key: "customerOrg.customerOrgRd", value: res });
this.getCustomerOrgTree();
});
} else {
//id
putapi(
`/api/app/customer-org/${this.customerOrg.customerOrgRd.id}`,
this.pojo
).then((res) => {
this.$message.success("更新 操作成功");
this.getCustomerOrgTree();
});
}
} else {
alert("未通过数据校验");
return false;
}
});
},
//
add() {
this.setData({ key: "customerOrg.customerOrgRd", value: { id: "" } });
},
//
del() {
deletapi(
`/api/app/customer-org/${this.customerOrg.customerOrgRd.id}`
).then((res) => {
this.$message.success("删除 操作成功");
this.setData({ key: "customerOrg.customerOrgRd", value: { id: "" } });
this.getCustomerOrgTree();
});
},
},
};
</script>
<style scoped>
</style>

54
src/components/patientRegister/customerOrgTreeAll.vue

@ -1,5 +1,5 @@
<template>
<el-tree :data="customerOrg.customerOrgTree" :props="customerOrg.treeprops" @node-click="treeclick"></el-tree>
<el-tree :data="patientRegister.customerOrgTreeAll" :props="customerOrg.treeprops" @node-click="treeclick"></el-tree>
</template>
<script>
@ -13,7 +13,7 @@ export default {
},
//<el-tree :data="$store.state.customerOrg.customerOrgTree" :props="$store.state.customerOrg.treeprops" @node-click="treeclick"></el-tree>
computed:{
...mapState(['patientRegister']),
...mapState(['customerOrg','patientRegister']),
},
//
created() {},
@ -27,62 +27,24 @@ export default {
methods: {
//
getCustomerOrgTree(){
//let customerOrgTree = []
// [
// {
// displayName: "", //
// id: "00000000-0000-0000-0000-000000000000", //
// //treeChildren: [],
// },
// {
// displayName: "", //
// id: "10000000-0000-0000-0000-000000000000", //
// //treeChildren: [],
// },
// ];
//console.log('getCustomerOrgTree start')
// api/app/organization-units/organization-unit-by-is-peis // api/app/customer-org/by-code-all
getCustomerOrgTree(){
getapi("/api/app/customer-org/by-code-all").then(
(res) => {
//customerOrgTree = res.data;
console.log('res.data',res.data)
this.patientRegister.customerOrgTree =[{displayName: "个人体检", id: "00000000-0000-0000-0000-000000000000"},...res.data]
tcdate(this.customerOrg.customerOrgTree)
this.patientRegister.customerOrgTreeAll =[{displayName: "个人体检", id: "00000000-0000-0000-0000-000000000000"},...res.data]
//tcdate(this.patientRegister.customerOrgTreeAll)
}
);
},
//
getCustomerOrgRegisterList(){
getapi("/api/app/customer-org-register/in_filter").then(
(res) => {
//console.log('res.data',res.data)
this.setData({ key: 'customerOrg.customerOrgRegisterList', value: res.data})
}
);
},
//
getCustomerOrgRegisterList(){
getapi("/api/app/customer-org-register/in_filter").then(
(res) => {
//console.log('res.data',res.data)
this.setData({ key: 'customerOrg.customerOrgRegisterList', value: res.data})
}
);
},
//
treeclick(data) {
//this.$message.success(data.id + " " + data.displayName);// api/app/customer-org/3a0c0439-a5ca-8a63-b2b9-e0eb24cb58b1
//getapi(`/api/app/customer-org/3a0c0439-a5ca-8a63-b2b9-e0eb24cb58b1`).then((res) => {
getapi(`/api/app/customer-org/${data.id}`).then((res) => {
//console.log("res.data", res.data);
this.setData({ key: 'customerOrg.customerOrgRd', value: res.data})
});
this.patientRegister.query.times++ //
this.patientRegister.query.customerOrgId = data.id
},
},
};
</script>

76
src/components/patientRegister/customerOrgRegister.vue → src/components/patientRegister/patientRegisterAsbItem.vue

@ -4,7 +4,7 @@
<el-table
:data="data.customerOrgRegister"
border
style="width: 90%; height: 350px"
style="width: 90%; height: 150px"
row-key="id"
size="small"
class="el-table__body-wrapper tbody"
@ -28,83 +28,11 @@
<el-table-column label="登记人"></el-table-column>
<el-table-column label="登记日期"></el-table-column>
</el-table>
<div style="margin-left: 10px; margin-top: 5%">
<div style="margin-top: 10px">
<el-button type="primary" @click="addTimes">增加次数</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="success" @click="editCustomerOrgRegister"
>体检完成</el-button
>
</div>
<div style="margin-top: 10px">
<el-button type="danger" @click="canselCustomerOrgRegister"
>取消完成</el-button
>
</div>
</div>
</div>
<!-- 体检次数 -->
<el-dialog
title="体检次数"
:visible.sync="dialogCustomerOrgRegister"
width="80%"
>
<div style="display: flex">
<div style="width: 95%">
<el-table
border=""
:data="formCustomerOrgRegister"
highlight-current-row
>
<el-table-column label="编号" prop="id"></el-table-column>
<el-table-column label="项目编号" prop="itemId"></el-table-column>
<el-table-column label="创建时间" width="200">
<template slot-scope="scope">
{{ scope.row.creationTime | dateFormat }}
</template>
</el-table-column>
<el-table-column label="修改时间" width="200">
<template slot-scope="scope">
{{ scope.row.lastModificationTime | dateFormat }}
</template>
</el-table-column>
<el-table-column label="结果" prop="result"></el-table-column>
<el-table-column label="项目结果">
<template slot-scope="scope">
{{ scope.row.id }}
</template>
</el-table-column>
<el-table-column label="诊断">
<template> </template>
</el-table-column>
</el-table>
</div>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="rurestdialogVisible = false"> </el-button>
<el-button type="primary" @click="rurestdialogVisible = false"
> </el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
import {
getporjectlists,
projectlist,
addproject,
priceitemlist,
posjrctid,
projectedit,
projectdeleft,
projttitem,
projectdreog,
} from "@/request/commonapi";
import { unitlist } from "@/request/systemapi";
import Sortable from "sortablejs";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
export default {
components: {},

122
src/components/patientRegister/patientRegisterQuery.vue

@ -0,0 +1,122 @@
<template>
<div style="display: flex;">
<div style="display: flex;flex-wrap: wrap;width:90%">
<div class="block query">
<span class="demonstration">登记日期</span>
<el-date-picker
v-model="patientRegister.query.dateRange"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions" size="small" style="width:240px;">
</el-date-picker>
</div>
<div class="query">
<span>条码号</span>
<el-input placeholder="条码号" v-model="patientRegister.query.patientRegisterNo" size="small" clearable style="width:150px;"/>
</div>
<div class="query">
<span>档案号</span>
<el-input placeholder="档案号" v-model="patientRegister.query.patientNo" size="small" clearable style="width:135px;"/>
</div>
<div class="query">
<span>姓名</span>
<el-input placeholder="姓名" v-model="patientRegister.query.patientName" size="small" clearable style="width:135px;"/>
</div>
<div class="query">
<span>性别</span>
<el-input placeholder="性别" v-model="patientRegister.query.sex" size="small" clearable style="width:80px;"/>
</div>
<div class="query">
<span>身份证号</span>
<el-input placeholder="身份证号" v-model="patientRegister.query.idCardNo" size="small" clearable style="width:200px;"/>
</div>
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px; margin-top: 5px;">
<div style="margin-top: 5px">
<el-button type="primary" @click="btnQuery">查询</el-button>
</div>
<div style="margin-top: 5px">
<el-button type="danger" @click="readIdCard">读身份证</el-button>
</div>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
export default {
components: {},
data() {
return {
dialogVisible:false,
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
},
};
},
created() {},
//
mounted() {
},
computed: {
...mapState(["patientRegister"]),
},
methods: {
//
btnQuery() {
alert("查询")
console.log('this.patientRegister.query.dateRange',this.patientRegister.query.dateRange)
},
//
readIdCard() {
alert("读身份证")
},
},
};
</script>
<style scoped>
.query{
margin-left:10px;
}
</style>

5
src/store/index.js

@ -27,7 +27,10 @@ export default new Vuex.Store({
patientRegister:{//人员登记
customerOrgTreeAll: [], //体检单位列表(含个人)
patientRegisterId:'', //当前单位ID(可根据此值是否为空,判断是新增还是编辑)
query:{},//查询条件
query:{
times:0, //触发查询次数
customerOrgId:'', //体检单位ID
},//查询条件
}

47
src/views/customerOrg/patientRegister.vue

@ -1,25 +1,25 @@
<template>
<div class="box">
<div>
<div style="width: 100%;">
<el-card>
<div style="display: flex">
<div style="display:flex;">
<!-- 单位树组件 -->
<div style="width: 15%; border:1px solid;">
<CustomerOrgTreeAll/>
</div>
<div style="width: 85%">
<!-- 单位详情 录入与编辑 -->
<CustomerOrgEdit/>
<!-- 体检次数 联系人 -->
<el-tabs style="margin-left: 10px;" >
<!-- 体检次数 -->
<el-tab-pane label="组合项目" name="first">
<CustomerOrgRegister/>
</el-tab-pane>
<!-- 联系人 -->
<el-tab-pane label="基本信息" name="second">
<ContactPerson/>
</el-tab-pane>
<div style="margin-left: 10px;width: 85%">
<!-- 查询条件 -->
<PatientRegisterQuery/>
<!-- 人员列表信息 -->
<PatientRegisterList/>
<!-- 给合项目 基本信息 -->
<el-tabs v-model="tabChoosed">
<!-- 给合项目 -->
<el-tab-pane label="组合项目" name="1">
<PatientRegisterAsbItem/>
</el-tab-pane>
</el-tabs>
</div>
</div>
@ -30,19 +30,20 @@
<script>
import CustomerOrgTreeAll from '../../components/patientRegister/customerOrgTreeAll.vue'
import CustomerOrgEdit from '../../components/patientRegister/customerOrgEdit.vue'
import CustomerOrgRegister from '../../components/patientRegister/customerOrgRegister.vue'
import ContactPerson from '../../components/patientRegister/ContactPerson.vue'
import PatientRegisterQuery from '../../components/patientRegister/patientRegisterQuery.vue'
import PatientRegisterList from '../../components/patientRegister/PatientRegisterList.vue'
import PatientRegisterAsbItem from '../../components/patientRegister/patientRegisterAsbItem.vue'
export default {
components: {
CustomerOrgTree,
CustomerOrgEdit,
CustomerOrgRegister,
ContactPerson
CustomerOrgTreeAll,
PatientRegisterQuery,
PatientRegisterList,
PatientRegisterAsbItem
},
data() {
return {
tabChoosed:'1',
};
},

12
src/views/customerOrg/patientRegisterRecover.vue

@ -5,7 +5,7 @@
<div style="display: flex">
<!-- 单位树组件 -->
<div style="width: 15%; border:1px solid;">
<CustomerOrgTree/>
<CustomerOrgTreeAll/>
</div>
<div style="width: 85%">
<!-- 单位详情 录入与编辑 -->
@ -14,7 +14,7 @@
<el-tabs style="margin-left: 10px;" >
<!-- 体检次数 -->
<el-tab-pane label="组合项目" name="first">
<CustomerOrgRegister/>
<PatientRegisterAsbItem/>
</el-tab-pane>
<!-- 联系人 -->
<el-tab-pane label="基本信息" name="second">
@ -29,15 +29,15 @@
</template>
<script>
import CustomerOrgTree from '../../components/patientRegister/customerOrgTree.vue'
import CustomerOrgTreeAll from '../../components/patientRegister/customerOrgTreeAll.vue'
import CustomerOrgEdit from '../../components/patientRegisterSign/customerOrgEdit.vue'
import CustomerOrgRegister from '../../components/patientRegister/customerOrgRegister.vue'
import PatientRegisterAsbItem from '../../components/patientRegister/patientRegisterAsbItem.vue'
import ContactPerson from '../../components/patientRegister/ContactPerson.vue'
export default {
components: {
CustomerOrgTree,
CustomerOrgTreeAll,
CustomerOrgEdit,
CustomerOrgRegister,
PatientRegisterAsbItem,
ContactPerson
},
data() {

12
src/views/customerOrg/patientRegisterSign.vue

@ -5,7 +5,7 @@
<div style="display: flex">
<!-- 单位树组件 -->
<div style="width: 15%; border:1px solid;">
<CustomerOrgTree/>
<customerOrgTreeAll/>
</div>
<div style="width: 85%">
<!-- 单位详情 录入与编辑 -->
@ -14,7 +14,7 @@
<el-tabs style="margin-left: 10px;">
<!-- 体检次数 -->
<el-tab-pane label="组合项目" name="first">
<CustomerOrgRegister/>
<PatientRegisterAsbItem/>
</el-tab-pane>
<!-- 联系人 -->
<el-tab-pane label="基本信息" name="second">
@ -29,15 +29,15 @@
</template>
<script>
import CustomerOrgTree from '../../components/patientRegister/customerOrgTree.vue'
import customerOrgTreeAll from '../../components/patientRegister/customerOrgTreeAll.vue'
import CustomerOrgEdit from '../../components/patientRegisterSign/customerOrgEdit.vue'
import CustomerOrgRegister from '../../components/patientRegister/customerOrgRegister.vue'
import PatientRegisterAsbItem from '../../components/patientRegister/patientRegisterAsbItem.vue'
import ContactPerson from '../../components/patientRegister/ContactPerson.vue'
export default {
components: {
CustomerOrgTree,
customerOrgTreeAll,
CustomerOrgEdit,
CustomerOrgRegister,
PatientRegisterAsbItem,
ContactPerson
},
data() {

Loading…
Cancel
Save