Browse Source

doctor

master
pengjun 2 years ago
parent
commit
93bf943bcb
  1. 116
      src/components/doctorCheck/ButtonList.vue
  2. 6
      src/components/doctorCheck/RegisterCheckList.vue
  3. 27
      src/components/patientRegister/PatientRegisterEdit.vue
  4. 4
      src/components/patientRegister/PatientRegisterItem.vue
  5. 1
      src/components/patientRegister/PatientRegisterList.vue
  6. 1
      src/store/index.js

116
src/components/doctorCheck/ButtonList.vue

@ -16,10 +16,10 @@
<el-button type="primary" class="btnClass" @click="btnDelPr">删除人员</el-button> <el-button type="primary" class="btnClass" @click="btnDelPr">删除人员</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs,'上一人')"> <div v-show="checkPagePriv(pagePriv.privs,'上一人')">
<el-button type="primary" class="btnClass" @click="btnPrev">上一人</el-button>
<el-button type="primary" class="btnClass" @click="btnStep(-1)">上一人</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs,'下一人')"> <div v-show="checkPagePriv(pagePriv.privs,'下一人')">
<el-button type="primary" class="btnClass" @click="btnNext">下一人</el-button>
<el-button type="primary" class="btnClass" @click="btnStep(1)">下一人</el-button>
</div> </div>
<!-- <!--
<div> <div>
@ -85,12 +85,13 @@
<!-- 体检人员登记 --> <!-- 体检人员登记 -->
<el-dialog <el-dialog
:title="doctorCheck.prBase.id ? '体检人员--编辑' : '体检人员--新增'" :title="doctorCheck.prBase.id ? '体检人员--编辑' : '体检人员--新增'"
:visible.sync="dialogVisible"
:visible.sync="dialogWin.PatientRegisterEdit"
:close-on-click-modal="false" :close-on-click-modal="false"
fullscreen
fullscreen @close="closeDialogWinPatientRegisterEdit"
> >
<!-- :formInitData="formData" --> <!-- :formInitData="formData" -->
<PatientRegisterEdit style="z-index:30001;" <PatientRegisterEdit style="z-index:30001;"
:isDoctor="'1'"
:patientRegisterId = "doctorCheck.prBase.id" :patientRegisterId = "doctorCheck.prBase.id"
:editTimes="editTimes" :editTimes="editTimes"
:refreshRegister="refreshRegister" :refreshRegister="refreshRegister"
@ -172,6 +173,7 @@ export default {
}, },
medicalStartDate:'', // medicalStartDate:'', //
medicalStartDateTemp:'', // medicalStartDateTemp:'', //
refreshPatientRegisterList:0, // // /
medicalStartDateDatas:[], // () medicalStartDateDatas:[], // ()
dialogVisibleSetStartDate:false, // dialogVisibleSetStartDate:false, //
@ -259,7 +261,7 @@ export default {
}, },
computed: { computed: {
...mapState(["window", "dataTransOpts", "dict", "patientRegister", "doctorCheck","sumDoctorCheck"]),
...mapState(["window", "dialogWin", "dataTransOpts", "dict", "patientRegister", "doctorCheck","sumDoctorCheck"]),
}, },
methods: { methods: {
@ -277,6 +279,9 @@ export default {
btnSetStartDate(){ btnSetStartDate(){
this.medicalStartDate = this.medicalStartDateTemp this.medicalStartDate = this.medicalStartDateTemp
this.dialogVisibleSetStartDate = false this.dialogVisibleSetStartDate = false
setTimeout(() => {
this.refreshPatientRegisterList++
}, 20);
if(this.nextTodialogVisible) this.btnAddPr() if(this.nextTodialogVisible) this.btnAddPr()
}, },
@ -285,12 +290,12 @@ export default {
// debugger // debugger
if(this.medicalStartDate){ if(this.medicalStartDate){
//this.formData = Object.assign({},this.formInitData,{medicalStartDate:moment(this.medicalStartDate).format('yyyy-MM-DD')}) //this.formData = Object.assign({},this.formInitData,{medicalStartDate:moment(this.medicalStartDate).format('yyyy-MM-DD')})
this.doctorCheck.prBase.id = ''
this.dialogVisible = true
this.dataTransOpts.tableS.patient_register.id = ''
this.dialogWin.PatientRegisterEdit = true
setTimeout(() => {
this.dataTransOpts.refresh.patient_register.S++
}, 20);
this.patientRegister.photo = '' this.patientRegister.photo = ''
setTimeout(() =>{
this.editTimes++
},100)
}else{ }else{
this.nextTodialogVisible = true this.nextTodialogVisible = true
this.dialogVisibleSetStartDate = true this.dialogVisibleSetStartDate = true
@ -299,11 +304,11 @@ export default {
// //
btnDelPr(){ btnDelPr(){
if(!this.doctorCheck.prBase.id){
if(!this.dataTransOpts.tableS.patient_register.id){
this.$message.warning("未选中要删除的人员记录") this.$message.warning("未选中要删除的人员记录")
return return
} }
let id = this.doctorCheck.prBase.id
let id = this.dataTransOpts.tableS.patient_register.id
this.$confirm("此操作将永久删除该记录, 是否继续?", "提示", { this.$confirm("此操作将永久删除该记录, 是否继续?", "提示", {
confirmButtonText: "是", confirmButtonText: "是",
cancelButtonText: "否", cancelButtonText: "否",
@ -314,9 +319,12 @@ export default {
}).then((res) => { }).then((res) => {
if(res.code != -1){ if(res.code != -1){
console.log("操作成功!") console.log("操作成功!")
this.doctorCheckPrBaseInit();
let lfind = arrayExistObj(this.medicalStartDateDatas,'id',id)
if(lfind > -1) this.medicalStartDateDatas.splice(lfind,1)
// this.doctorCheckPrBaseInit();
this.dataTransOpts.tableS.patient_register.id = ''
setTimeout(() => {
// /
this.closeDialogWinPatientRegisterEdit()
}, 20);
} }
}).catch((err) => { }).catch((err) => {
if (err == "cancel") { if (err == "cancel") {
@ -330,7 +338,7 @@ export default {
// //
btnEditPr() { btnEditPr() {
if(!this.doctorCheck.prBase.id){
if(!this.dataTransOpts.tableS.patient_register.id){
this.$message.warning("未选中要编辑的人员记录") this.$message.warning("未选中要编辑的人员记录")
return return
} }
@ -339,12 +347,20 @@ export default {
// this.formData = Object.assign({},this.doctorCheck.prBase) // this.formData = Object.assign({},this.doctorCheck.prBase)
//console.log(this.patientRegister.patientRegisterRd,this.patientRegister.prList) //console.log(this.patientRegister.patientRegisterRd,this.patientRegister.prList)
this.dialogVisible = true;
this.editTimes++; //
this.dialogWin.PatientRegisterEdit = true;
setTimeout(() => {
this.dataTransOpts.refresh.patient_register.S++
}, 20);
}, },
//
btnPrev(){
// / /
closeDialogWinPatientRegisterEdit(){
this.dataTransOpts.refresh.patient_register.S++ //
this.refreshPatientRegisterList++ // /
},
// () step 1 -1
btnStep(step){
if(!this.medicalStartDate){ if(!this.medicalStartDate){
this.$message.warning("请先设置体检日期") this.$message.warning("请先设置体检日期")
return return
@ -354,53 +370,33 @@ export default {
return return
} }
let lstep = -1
if(step && step > 0) lstep = 1
let lfind = -1 let lfind = -1
if(this.doctorCheck.prBase.id){
lfind = arrayExistObj(this.medicalStartDateDatas,'id',this.doctorCheck.prBase.id)
if(lfind == 0){
let patientRegisterId = this.dataTransOpts.tableS.patient_register.id
if(patientRegisterId){
lfind = arrayExistObj(this.medicalStartDateDatas,'id',patientRegisterId)
if(lfind > - 1){
if(lstep < 0 && lfind == 0){
this.$message.warning("已是第一个人") this.$message.warning("已是第一个人")
return return
}else if(lstep > 0 && lfind == this.medicalStartDateDatas.length - 1){
this.$message.warning("已是最后一人")
return
} }
if(lfind > - 1) lfind--
}
//
if(lfind < 0){
if(this.medicalStartDateDatas && this.medicalStartDateDatas.length > 0){
this.findPR(this.medicalStartDateDatas[0])
lfind = Number(lfind) + Number(lstep)
this.dataTransOpts.tableS.patient_register.id = this.medicalStartDateDatas[lfind].id
} }
}else{ }else{
if(this.medicalStartDateDatas && this.medicalStartDateDatas.length > 0){ if(this.medicalStartDateDatas && this.medicalStartDateDatas.length > 0){
this.findPR(this.medicalStartDateDatas[lfind])
this.dataTransOpts.tableS.patient_register.id = this.medicalStartDateDatas[0].id
} }
} }
},
//
btnNext(){
if(!this.medicalStartDate){
this.$message.warning("请先设置体检日期")
return
}
if(this.medicalStartDateDatas.length == 0) {
this.$message.warning("当前设置的体检日期,无体检人员信息")
return
}
let lfind = 0
if(this.doctorCheck.prBase.id){
lfind = arrayExistObj(this.medicalStartDateDatas,'id',this.doctorCheck.prBase.id)
lfind++
}
//
if(this.medicalStartDateDatas.length > lfind){
this.findPR(this.medicalStartDateDatas[lfind])
}else{
this.$message.warning("已是最后一人")
}
setTimeout(() => {
this.dataTransOpts.refresh.patient_register.S++
}, 20);
}, },
// //
@ -590,10 +586,10 @@ export default {
}, },
// //
"medicalStartDate":{
immediate:true,
"refreshPatientRegisterList":{
// immediate:true,
handler(newVal,oldVal){ handler(newVal,oldVal){
if(newVal){
if(newVal != oldVal){
let body = { let body = {
customerOrgs: [ customerOrgs: [
{ {

6
src/components/doctorCheck/RegisterCheckList.vue

@ -74,7 +74,11 @@ export default {
if(!patientRegisterId){ if(!patientRegisterId){
this.doctorCheck.RegisterCheckList = [] this.doctorCheck.RegisterCheckList = []
this.doctorCheck.RegisterCheckId = '' this.doctorCheck.RegisterCheckId = ''
// this.doctorCheck.RegisterCheckEdit = {}
this.dataTransOpts.tableS.register_check.id = ''
setTimeout(() => {
this.dataTransOpts.refresh.register_check.S++
this.dataTransOpts.refresh.register_check_item.M++
}, 20);
return return
} }
console.log(`/api/app/register-check/register-check-or-asbitem/${patientRegisterId}`) console.log(`/api/app/register-check/register-check-or-asbitem/${patientRegisterId}`)

27
src/components/patientRegister/PatientRegisterEdit.vue

@ -6,16 +6,15 @@
<div v-show="checkPagePriv(pagePriv.privs,'查找')" style="position: absolute;top:28px;left:180px;"> <div v-show="checkPagePriv(pagePriv.privs,'查找')" style="position: absolute;top:28px;left:180px;">
<PatientRegisterEditQuery/> <PatientRegisterEditQuery/>
</div> </div>
<div> <div>
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium"> <el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium">
<el-row> <el-row>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="单位名称" prop="customerOrgId"> <el-form-item label="单位名称" prop="customerOrgId">
<el-cascader v-model="form.customerOrgId" :options="patientRegister.customerOrgTreeAll" <el-cascader v-model="form.customerOrgId" :options="patientRegister.customerOrgTreeAll"
:style="'width:' + Math.floor((window.pageWidth - 490) / 4.8) + 'px;'" filterable=""
:style="'width:' + Math.floor((window.pageWidth - 510) / 4.8) + 'px;'" filterable popper-class="example"
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }" :props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }"
:show-all-levels="false" :disabled="(form.id || form.registerManType == 'customer') ? true:false" size="small">
:disabled="(form.completeFlag == '3' || isDoctor != '1') ? true:false" size="small">
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -490,7 +489,8 @@ export default {
Charge, Charge,
PatientRegisterEditQuery PatientRegisterEditQuery
}, },
props: ['patientRegisterId','editTimes','refreshRegister'],
// isDoctor: '0:/1:()'
props: ['isDoctor','patientRegisterId','editTimes','refreshRegister'],
data() { data() {
return { return {
pagePriv:{ pagePriv:{
@ -783,6 +783,8 @@ export default {
objCopy(this.formInit, this.form); objCopy(this.formInit, this.form);
this.form.organizationUnitId = this.peisid; // this.form.organizationUnitId = this.peisid; //
this.form.customerOrgId = this.patientRegister.query.customerOrgId // this.form.customerOrgId = this.patientRegister.query.customerOrgId //
this.form.customerOrgParentId = await this.getParentCustomerOrgId(this.form.customerOrgId) //
}else{ }else{
// let res = await getapi(`/api/app/patient-register/${patientRegisterId}`) // let res = await getapi(`/api/app/patient-register/${patientRegisterId}`)
let res = await postapi(`/api/app/patientregister/getinfoorpatient?PatientRegisterId=${patientRegisterId}`) let res = await postapi(`/api/app/patientregister/getinfoorpatient?PatientRegisterId=${patientRegisterId}`)
@ -799,16 +801,30 @@ export default {
// //
async changeCustomerOrgId(v){ async changeCustomerOrgId(v){
let customerOrgParentId = await this.getParentCustomerOrgId(v) let customerOrgParentId = await this.getParentCustomerOrgId(v)
if(customerOrgParentId){ if(customerOrgParentId){
// /
if(this.form.customerOrgParentId != customerOrgParentId){
if (customerOrgParentId == this.dict.personOrgId) { if (customerOrgParentId == this.dict.personOrgId) {
this.form.customerOrgRegisterId = null this.form.customerOrgRegisterId = null
this.form.customerOrgGroupId = null this.form.customerOrgGroupId = null
this.form.medicalPackageId = null
this.patientRegister.customerOrgGroup = [] this.patientRegister.customerOrgGroup = []
}else{ }else{
this.form.customerOrgRegisterId = null
this.form.customerOrgGroupId = null
this.form.medicalPackageId = null this.form.medicalPackageId = null
// //
this.getCustomerOrgRegisterList(customerOrgParentId) this.getCustomerOrgRegisterList(customerOrgParentId)
} }
if(this.form.customerOrgParentId == this.dict.personOrgId){
this.changeMedicalPackageId()
}else{
this.changeCustomerOrgGroupId()
}
this.form.customerOrgParentId = customerOrgParentId
}
} }
}, },
@ -1201,7 +1217,7 @@ export default {
delete body.isLockBox; delete body.isLockBox;
delete body.photo; delete body.photo;
if(this.form.registerManType == 'customer') delete body.medicalStartDate;
// if(this.form.registerManType == 'customer') delete body.medicalStartDate;
if(this.form.id) delete body.medicalStartDate; if(this.form.id) delete body.medicalStartDate;
setNull(body, this.defaultNull); setNull(body, this.defaultNull);
@ -1677,7 +1693,6 @@ export default {
// //
watch: { watch: {
//ID //ID
"dataTransOpts.refresh.patient_register.S":{ "dataTransOpts.refresh.patient_register.S":{
immediate:true, immediate:true,

4
src/components/patientRegister/PatientRegisterItem.vue

@ -39,7 +39,7 @@
</el-button> </el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs,'全添加')" class="btnList"> <div v-show="checkPagePriv(pagePriv.privs,'全添加')" class="btnList">
<el-button type="success" class="commonbutton" @click="addAbs(asbItemChoosed,'all')" style="width:90px;" :disabled="isComplete">全添加 <i class="el-icon-d-arrow-right"></i>
<el-button type="success" class="difference" @click="addAbs(asbItemChoosed,'all')" style="width:90px;" :disabled="isComplete">全添加 <i class="el-icon-d-arrow-right"></i>
</el-button> </el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs,'移除')" class="btnList"> <div v-show="checkPagePriv(pagePriv.privs,'移除')" class="btnList">
@ -47,7 +47,7 @@
</el-button> </el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs,'全移除')" class="btnList"> <div v-show="checkPagePriv(pagePriv.privs,'全移除')" class="btnList">
<el-button type="danger" class="commonbutton" @click="delAbs(patientRegisterAbsChoosed,'all')" style="width:90px;" :disabled="isComplete"><i class="el-icon-d-arrow-left"> 全移除</i>
<el-button type="danger" class="difference" @click="delAbs(patientRegisterAbsChoosed,'all')" style="width:90px;" :disabled="isComplete"><i class="el-icon-d-arrow-left"> 全移除</i>
</el-button> </el-button>
</div> </div>
<!-- 不显示保存当已选组合有修改时失去焦点自动保存 <!-- 不显示保存当已选组合有修改时失去焦点自动保存

1
src/components/patientRegister/PatientRegisterList.vue

@ -211,6 +211,7 @@
> >
<!-- :formInitData="patientRegister.patientRegisterRd" --> <!-- :formInitData="patientRegister.patientRegisterRd" -->
<PatientRegisterEdit <PatientRegisterEdit
:isDoctor="'0'"
:patientRegisterId = "patientRegister.patientRegisterRd.id" :patientRegisterId = "patientRegister.patientRegisterRd.id"
:editTimes="editTimes" :editTimes="editTimes"
:refreshRegister="refreshRegister" :refreshRegister="refreshRegister"

1
src/store/index.js

@ -341,6 +341,7 @@ export default new Vuex.Store({
// 弹窗控制 // 弹窗控制
dialogWin: { dialogWin: {
PatientList: false, // 体检人员档案列表 PatientList: false, // 体检人员档案列表
PatientRegisterEdit: false, // 体检人员登记 新增/编辑
PatientRegisterForChoose: false, // 体检人员登记列表 PatientRegisterForChoose: false, // 体检人员登记列表
PatientRegisterEditItemBatch: false, //批量调整项目 PatientRegisterEditItemBatch: false, //批量调整项目
PatientRegisterEditGroupBatch: false, //批量调整分组 PatientRegisterEditGroupBatch: false, //批量调整分组

Loading…
Cancel
Save