Browse Source

doctor seo

master
pengjun 2 years ago
parent
commit
856497ac63
  1. 26
      src/components/customerOrg/ContactPerson.vue
  2. 16
      src/components/customerOrg/customerOrgRegister.vue
  3. 14
      src/components/doctorCheck/ButtonList.vue
  4. 39
      src/components/doctorCheck/RegisterCheckEdit.vue
  5. 10
      src/components/patientRegister/PatientRegisterEdit.vue
  6. 87
      src/components/patientRegister/PatientRegisterList.vue
  7. 62
      src/components/patientRegister/patientRegisterAsbItem.vue
  8. 82
      src/components/sumDoctorCheck/SumPREdit.vue

26
src/components/customerOrg/ContactPerson.vue

@ -4,19 +4,19 @@
<div :style="'width:' + (window.pageWidth - 200 - 120 - 50) + 'px;'">
<el-table :data="customerOrg.contactPersonList" border :height="(window.pageHeight < 600 ? 84:window.pageHeight - 432)/2"
size="small" highlight-current-row @row-click="rowClick" ref="customerOrg.contactPersonList">
<el-table-column prop="displayName" label="姓名" />
<el-table-column prop="title" label="职务" />
<el-table-column prop="remark" label="备注" />
<el-table-column prop="creatorName" label="创建者" width="" />
<el-table-column prop="creationTime" label="创建时间" width="180">
<el-table-column prop="displayName" label="姓名" min-width="70" align="center"/>
<el-table-column prop="title" label="职务" min-width="70" align="center"/>
<el-table-column prop="remark" label="备注" min-width="150" align="center"/>
<el-table-column prop="creatorName" label="创建者" min-width="70" align="center" />
<el-table-column prop="creationTime" label="创建时间" min-width="120" align="center">
<template slot-scope="scope">
<div v-if="scope.row.creationTime">
{{ moment(scope.row.creationTime).format('yyyy-MM-DD HH:mm:ss') }}
</div>
</template>
</el-table-column>
<el-table-column prop="lastModifierName" label="修改者" />
<el-table-column prop="lastModificationTime" label="修改时间" width="180">
<el-table-column prop="lastModifierName" label="修改者" min-width="70" align="center"/>
<el-table-column prop="lastModificationTime" label="修改时间" min-width="120" align="center">
<template slot-scope="scope">
<div v-if="scope.row.lastModificationTime">
{{ moment(scope.row.lastModificationTime).format('yyyy-MM-DD HH:mm:ss') }}
@ -27,24 +27,24 @@
<el-table :data="customerOrg.contactMethodList" border :height="(window.pageHeight < 600 ? 84:window.pageHeight - 432)/2"
size="small" highlight-current-row @row-click="rowClickMethod" ref="customerOrg.contactMethodList">
<el-table-column prop="contactMethodType" label="类型">
<el-table-column prop="contactMethodType" label="类型" width="60" align="center">
<template slot-scope="scope">
<div>
{{ scope.row.contactMethodType === "0" ? "手机" : "邮箱" }}
</div>
</template>
</el-table-column>
<el-table-column prop="contactMethodValue" label="联系方式" width="150"/>
<el-table-column prop="creatorName" label="创建者" width="" />
<el-table-column prop="creationTime" label="创建时间" width="180">
<el-table-column prop="contactMethodValue" label="联系方式" min-width="120" align="center"/>
<el-table-column prop="creatorName" label="创建者" min-width="70" align="center" />
<el-table-column prop="creationTime" label="创建时间" min-width="120" align="center">
<template slot-scope="scope">
<div v-if="scope.row.creationTime">
{{ moment(scope.row.creationTime).format('yyyy-MM-DD HH:mm:ss') }}
</div>
</template>
</el-table-column>
<el-table-column prop="lastModifierName" label="修改者" />
<el-table-column prop="lastModificationTime" label="修改时间" width="180">
<el-table-column prop="lastModifierName" label="修改者" min-width="70" align="center"/>
<el-table-column prop="lastModificationTime" label="修改时间" min-width="120" align="center">
<template slot-scope="scope">
<div v-if="scope.row.lastModificationTime">
{{ moment(scope.row.lastModificationTime).format('yyyy-MM-DD HH:mm:ss') }}

16
src/components/customerOrg/customerOrgRegister.vue

@ -3,32 +3,32 @@
<div :style="'width:' + (window.pageWidth - 200 - 120 - 50) + 'px;'">
<el-table :data="customerOrg.customerOrgRegisterList" border :height="window.pageHeight < 600 ? 168:window.pageHeight - 432" size="small"
highlight-current-row @row-click="rowClick" ref="customerOrg.customerOrgRegisterList">
<el-table-column prop="medicalTimes" label="体检次数" />
<el-table-column prop="beginTime" label="开始日期">
<el-table-column prop="medicalTimes" label="体检次数" width="70" align="center"/>
<el-table-column prop="beginTime" label="开始日期" min-width="80" align="center">
<template slot-scope="scope">
{{ moment(scope.row.beginTime).format('yyyy-MM-DD') }}
</template>
</el-table-column>
<el-table-column prop="endTime" label="结束日期">
<el-table-column prop="endTime" label="结束日期" min-width="80" align="center">
<template slot-scope="scope">
{{ moment(scope.row.endTime).format('yyyy-MM-DD') }}
</template>
</el-table-column>
<el-table-column prop="isComplete" label="完成标志">
<el-table-column prop="isComplete" label="完成标志" width="70" align="center">
<template slot-scope="scope">
<div>{{ scope.row.isComplete === "Y" ? "是" : "否" }}</div>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="创建者" width="" />
<el-table-column prop="creationTime" label="创建时间" width="200">
<el-table-column prop="creatorName" label="创建者" min-width="70" align="center" />
<el-table-column prop="creationTime" label="创建时间" min-width="120" align="center" >
<template slot-scope="scope">
<div v-if="scope.row.creationTime">
{{ moment(scope.row.creationTime).format('yyyy-MM-DD HH:mm:ss') }}
</div>
</template>
</el-table-column>
<el-table-column prop="lastModifierName" label="修改者" />
<el-table-column prop="lastModificationTime" label="修改时间" width="200">
<el-table-column prop="lastModifierName" label="修改者" min-width="70" align="center" />
<el-table-column prop="lastModificationTime" label="修改时间" min-width="120" align="center" >
<template slot-scope="scope">
<div v-if="scope.row.lastModificationTime">
{{ moment(scope.row.lastModificationTime).format('yyyy-MM-DD HH:mm:ss') }}

14
src/components/doctorCheck/ButtonList.vue

@ -27,10 +27,10 @@
</div>
-->
<div>
<el-button type="primary" class="btnClass" @click="edit">修改结果</el-button>
<el-button type="primary" class="btnClass" @click="btnEdit">修改结果</el-button>
</div>
<div>
<el-button type="primary" class="btnClass" @click="del">删除结果</el-button>
<el-button type="primary" class="btnClass" @click="btnDel">删除结果</el-button>
</div>
<div>
<el-button type="primary" class="btnClass" @click="refuseItem" style="font-size:11px;">放弃明细项目检查</el-button>
@ -251,7 +251,7 @@ export default {
},
computed: {
...mapState(["window", "dict", "patientRegister", "doctorCheck","sumDoctorCheck"]),
...mapState(["window", "dataTransOpts", "dict", "patientRegister", "doctorCheck","sumDoctorCheck"]),
},
methods: {
@ -409,7 +409,7 @@ export default {
},
//
edit() {
btnEdit() {
let ret = this.optGrant('edit')
if (ret) {
this.$message.warning(ret)
@ -419,7 +419,7 @@ export default {
},
//
del() {
btnDel() {
let ret = this.optGrant('del')
if (ret) {
this.$message.warning(ret)
@ -433,7 +433,9 @@ export default {
this.doctorCheck.RegisterCheckEdit.completeFlag = '0';
let lfind = arrayExistObj(this.doctorCheck.RegisterCheckList,'id',this.doctorCheck.RegisterCheckEdit.id)
if(lfind > -1) this.doctorCheck.RegisterCheckList[lfind].completeFlag = '0'
//
this.dataTransOpts.refresh.register_check_item.M++
this.dataTransOpts.refresh.register_check.S++
console.log("操作成功!");
}
});

39
src/components/doctorCheck/RegisterCheckEdit.vue

@ -3,7 +3,19 @@
<div style="display: flex; flex-wrap: wrap;height:32px; width: 100%">
<div>
<span class="query">检查医生</span>
<el-input v-model="doctorCheck.RegisterCheckEdit.checkDoctorId" size="small" style="width: 80px" />
<el-select
v-model="doctorCheck.RegisterCheckEdit.checkDoctorId"
filterable clearable
placeholder="Select"
style="width: 80px" size="small"
>
<el-option
v-for="item in users"
:key="item.id"
:label="item.userName"
:value="item.id"
/>
</el-select>
</div>
<div>
<span class="query">检查日期</span>
@ -30,12 +42,14 @@
import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayExistObj } from '@/utlis/proFunc';
export default {
components: {},
props:["registerCheckId"],
data() {
return {
users:[],
dialogVisible: false,
};
},
@ -43,7 +57,9 @@ export default {
created() {},
//
mounted() {},
mounted() {
this.dictInit()
},
computed: {
...mapState(["window","dataTransOpts","dict", "doctorCheck","patientRegister", "customerOrg"]),
@ -52,11 +68,29 @@ export default {
},
},
methods: {
//
dictInit(){
getapi('/api/identity/users/getlist')
.then(res =>{
if(res.code != -1){
this.users = res.data.items
}
})
},
getRegisterCheck(id){
if(id){
getapi(`/api/app/registercheck/getregistercheck?id=${id}`).then(res =>{
if(res.code != -1){
this.doctorCheck.RegisterCheckEdit = res.data
// userId
if(res.data.checkDoctorId){
let lfind = arrayExistObj(this.users,'id',res.data.checkDoctorId)
if(lfind == -1){
this.users.push({id:res.data.checkDoctorId,userName:res.data.checkDoctorId})
}
}
}
})
}else{
@ -95,6 +129,7 @@ export default {
</script>
<style scoped>
.query {
font-size: 14px;
margin-left: 10px;
margin-right: 2px;
padding: 1px 1px;

10
src/components/patientRegister/PatientRegisterEdit.vue

@ -411,7 +411,7 @@
<el-dialog title="人员档案列表" :visible.sync="dialogVisible" width="800px" :show-close="false" :close-on-click-modal="false"
:append-to-body="true">
<el-table :data="patientList" border width="800" height="480" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowick" ref="patientList">
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowick" @row-dblclick="patientDblclick" ref="patientList">
<el-table-column type="index" width="30" />
<el-table-column prop="patientNo" label="档案号" />
<el-table-column prop="lastTime" label="末次体检" width="100">
@ -933,7 +933,8 @@ export default {
objCopy(this.formInit, this.form);
this.form.organizationUnitId = this.peisid;
}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}`)
this.form = res.data
}
this.initBox();
@ -1286,6 +1287,11 @@ export default {
this.patientChoosed = row;
},
patientDblclick(row){
this.patientChoosed = row;
this.choosePatient()
},
//
choosePatient() {
if (!this.patientChoosed) {

87
src/components/patientRegister/PatientRegisterList.vue

@ -818,17 +818,20 @@ export default {
if(lfind > -1){
//
this.dataTransOpts.tableS.patient_register.id = this.patientRegister.prList[lfind].id
setTimeout(() => {
this.dataTransOpts.refresh.register_asbitem.M++
}, 20);
//
if(this.patientRegister.patientRegisterRd.id != this.patientRegister.prList[lfind].id){
this.setForm(this.patientRegister.prList[lfind])
// this.patientRegister.query.customerOrgParentId = this.patientRegister.prList[lfind].customerOrgParentId;
this.patientRegister.customerOrgGroupChange = 0; //0
this.patientRegister.medicalPackageChange = 0; //0
// this.getCustomerOrgGroup(this.patientRegister.prList[lfind].customerOrgParentId);
this.dict.asbItem = [...this.dict.asbItemAll];
this.getPatientRegisterAbs(this.patientRegister.prList[lfind].id);
}
// if(this.patientRegister.patientRegisterRd.id != this.patientRegister.prList[lfind].id){
// this.setForm(this.patientRegister.prList[lfind])
// // this.patientRegister.query.customerOrgParentId = this.patientRegister.prList[lfind].customerOrgParentId;
// this.patientRegister.customerOrgGroupChange = 0; //0
// this.patientRegister.medicalPackageChange = 0; //0
// // this.getCustomerOrgGroup(this.patientRegister.prList[lfind].customerOrgParentId);
// this.dict.asbItem = [...this.dict.asbItemAll];
// this.getPatientRegisterAbs(this.patientRegister.prList[lfind].id);
// }
}
},
@ -922,43 +925,41 @@ export default {
},
//
closeDialogPR(){
async closeDialogPR(){
// dataTransOpts.tableS.patient_register.id ()
if(!this.dataTransOpts.tableS.patient_register.id) return
//
this.patientRegister.prList.forEach(e =>{
e.choosed = false
})
let body = Object.assign({patientRegisterNo:this.patientRegister.patientRegisterRd.patientRegisterNo},this.loadOpts)
postapi("/api/app/patientregister/getlistinfilter", body).then(res =>{
console.log('closeDialogPR',res.data.items)
if(res.code != -1 && res.data.items.length > 0){
let currentRow = Object.assign({},res.data.items[0])
let lfind = arrayExistObj(this.patientRegister.prList,'id',currentRow.id)
if(lfind > -1){
currentRow = this.patientRegister.prList[lfind]
objCopy(Object.assign({},res.data.items[0]),currentRow)
this.patientRegister.prList[lfind].choosed = true
}else{
lfind = this.patientRegister.prList.length
currentRow.choosed = true
currentRow.index = lfind
this.patientRegister.prList.push(currentRow)
}
let res = await postapi(`/api/app/patientregister/getinfoorpatient?PatientRegisterId=${this.dataTransOpts.tableS.patient_register.id}`)
if(res.code != 1) return
let lfind = arrayExistObj(this.patientRegister.prList,'id',this.dataTransOpts.tableS.patient_register.id)
if(lfind > -1){
objCopy(res.data,this.patientRegister.prList[lfind])
}else{
lfind = this.patientRegister.prList.length
this.patientRegister.prList.push(res.data)
this.patientRegister.prList[lfind].index = lfind
this.patientRegister.prList[lfind].choosed = true
}
if(lfind > -1){
setTimeout(() => {
this.$refs['info'].setCurrentRow(currentRow)
this.setForm(currentRow)
// this.patientRegister.query.customerOrgParentId = this.patientRegister.prList[lfind].customerOrgParentId;
this.patientRegister.customerOrgGroupChange = 0; //0
this.patientRegister.medicalPackageChange = 0; //0
// this.getCustomerOrgGroup(this.patientRegister.prList[lfind].customerOrgParentId);
this.dict.asbItem = [...this.dict.asbItemAll];
this.getPatientRegisterAbs(currentRow.id);
}, 100)
}
}
})
// register_asbitem
if(lfind > -1){
this.dataTransOpts.refresh.register_asbitem.M++
// setTimeout(() => {
// this.$refs['info'].setCurrentRow(currentRow)
// this.setForm(currentRow)
// // this.patientRegister.query.customerOrgParentId = this.patientRegister.prList[lfind].customerOrgParentId;
// this.patientRegister.customerOrgGroupChange = 0; //0
// this.patientRegister.medicalPackageChange = 0; //0
// // this.getCustomerOrgGroup(this.patientRegister.prList[lfind].customerOrgParentId);
// this.dict.asbItem = [...this.dict.asbItemAll];
// this.getPatientRegisterAbs(currentRow.id);
// }, 100)
}
},
//
@ -1787,7 +1788,7 @@ export default {
//
if(newVal && newVal != oldVal){
this.patientRegister.prList = []
this.patientRegister.patientRegisterAbs = []
this.dataTransOpts.tableM.register_asbitem = []
}
}
},

62
src/components/patientRegister/patientRegisterAsbItem.vue

@ -1,7 +1,7 @@
<template>
<div>
<div style="display: flex">
<el-table :data="patientRegister.patientRegisterAbs" border
<el-table :data="dataTransOpts.tableM.register_asbitem" border
:height="window.pageHeight < 600 ? 100 : Math.floor((window.pageHeight - 302) / 3)" size="small"
highlight-current-row :summary-method="getSummaries" show-summary
ref="patientRegister.patientRegisterAbs">
@ -17,23 +17,19 @@
<el-table-column prop="chargePrice" label="价格" align="center" />
<el-table-column prop="payTypeFlag" label="支付方式" align="center" >
<template slot-scope="scope">
<div>
{{
ldddw(dict.payType, "id", scope.row.payTypeFlag, "displayName")
}}
</div>
<div>{{ dddw(dict.payType, "id", scope.row.payTypeFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="isCharge" label="收费" width="50" align="center">
<el-table-column prop="isCharge" label="收费" min-width="50" align="center">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isCharge == 'Y'" align="center" />
</template>
</el-table-column>
<el-table-column prop="checkCompleteFlag" label="状态" align="center" >
<el-table-column prop="checkCompleteFlag" label="状态" min-width="50" align="center" >
<template slot-scope="scope">
<div>
{{
ldddw(
dddw(
dict.checkCompleteFlag,
"id",
scope.row.checkCompleteFlag,
@ -43,15 +39,15 @@
</div>
</template>
</el-table-column>
<el-table-column prop="isLock" label="锁" width="50" align="center" >
<el-table-column prop="isLock" label="锁" min-width="50" align="center" >
<template slot-scope="scope">
<el-checkbox :value="scope.row.isLock == 'Y'" align="center" />
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" align="center" />
<el-table-column prop="creationTime" label="登记日期" width="90" align="center" >
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center" />
<el-table-column prop="creationTime" label="登记日期" min-width="90" align="center" >
<template slot-scope="scope">
<div>{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}</div>
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
</template>
</el-table-column>
</el-table>
@ -62,6 +58,8 @@
import moment from "moment";
import { mapState } from "vuex";
import { dddw } from "../../utlis/proFunc";
import { getapi, postapi, putapi, deletapi } from "../../api/api";
export default {
components: {},
data() {
@ -82,15 +80,29 @@ export default {
mounted() { },
computed: {
...mapState(["window", "dict", "patientRegister"]),
...mapState(["window", "dataTransOpts", "dict", "patientRegister"]),
},
methods: {
ldddw(arrayData, key, value, display) {
return dddw(arrayData, key, value, display);
},
dddw,moment,
//
retrieveRegister_asbitem(id){
if(!id){
this.dataTransOpts.tableM.register_asbitem = []
return
}
getapi(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`)
.then(res => {
console.log(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`, res)
if (res.code != -1) {
res.data.forEach(e => {
e.standTotal = e.amount * e.standardPrice
e.total = e.amount * e.chargePrice
});
this.dataTransOpts.tableM.register_asbitem = res.data
}
})
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
},
// :row-class-name="tableRowClassName"
@ -142,6 +154,18 @@ export default {
return sums;
},
},
//
watch: {
//ID
"dataTransOpts.refresh.register_asbitem.M":{
immediate:true,
handler(newVal, oldVal) {
console.log(`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`);
this.retrieveRegister_asbitem(this.dataTransOpts.tableS.patient_register.id)
}
},
}
};
</script>
<style scoped>

82
src/components/sumDoctorCheck/SumPREdit.vue

@ -1,37 +1,61 @@
<template>
<div style="display: flex;height:32px;">
<div style="display: flex;height:32px;margin-top: 2px;">
<div style="display: flex; flex-wrap: wrap;height:32px; width: 100%">
<div class="query">
<span>总检医生</span>
<el-input v-model="sumDoctorCheck.sumPREdit.summaryDoctor" size="small" style="width: 80px" />
<div>
<span class="query">总检医生</span>
<el-select
v-model="sumDoctorCheck.sumPREdit.summaryDoctor"
filterable clearable :disabled="sumDoctorCheck.sumPREdit.completeFlag == '3' ? true:false"
placeholder="请选择"
style="width: 80px" size="small"
>
<el-option
v-for="item in users"
:key="item.id"
:label="item.userName"
:value="item.id"
/>
</el-select>
</div>
<div class="query">
<span>总检日期</span>
<el-date-picker v-model="sumDoctorCheck.sumPREdit.summaryDate" value-format="yyyy-MM-dd"
<div>
<span class="query">总检日期</span>
<el-date-picker v-model="sumDoctorCheck.sumPREdit.summaryDate" value-format="yyyy-MM-dd"
:disabled="sumDoctorCheck.sumPREdit.completeFlag == '3' ? true:false"
type="date" style="width: 90px" size="small" />
</div>
<div class="query" style="margin-top: 5px;">
<span>总检</span>
<div style="margin-top: 3px;">
<span class="query">总检</span>
<el-checkbox :value="sumDoctorCheck.sumPREdit.completeFlag == '3'" disabled></el-checkbox>
</div>
<div class="query">
<span>审核医生</span>
<el-input v-model="sumDoctorCheck.sumPREdit.auditDoctor" size="small" style="width: 80px" disabled/>
<div>
<span class="query">审核医生</span>
<el-select
v-model="sumDoctorCheck.sumPREdit.auditDoctor"
disabled placeholder="请选择"
style="width: 80px" size="small"
>
<el-option
v-for="item in users"
:key="item.id"
:label="item.userName"
:value="item.id"
/>
</el-select>
</div>
<div class="query">
<span>审核日期</span>
<el-input :value="sumDoctorCheck.sumPREdit.auditDate ? lmoment(sumDoctorCheck.sumPREdit.auditDate, 'yyyy-MM-DD') :''" style="width: 90px" size="small" disabled></el-input>
<div>
<span class="query">审核日期</span>
<el-date-picker v-model="sumDoctorCheck.sumPREdit.auditDate" value-format="yyyy-MM-dd"
disabled type="date" style="width: 90px" size="small" />
</div>
<div class="query" style="margin-top: 5px;">
<span>审核</span>
<div style="margin-top: 3px;">
<span class="query">审核</span>
<el-checkbox :value="sumDoctorCheck.sumPREdit.isAudit == 'Y'" disabled></el-checkbox>
</div>
</div>
</div>
</div>
</template>
<script>
import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
@ -47,22 +71,32 @@ export default {
created() {},
//
mounted() {},
mounted() {
this.dictInit()
},
computed: {
...mapState(["dict", "doctorCheck","sumDoctorCheck"]),
},
methods: {
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
//
dictInit(){
getapi('/api/identity/users/getlist')
.then(res =>{
if(res.code != -1){
this.users = res.data.items
}
})
},
},
};
</script>
<style scoped>
.query {
font-size: 14px;
margin-left: 10px;
margin-top: 5px;
padding: 1px 1px;
}
</style>
Loading…
Cancel
Save