pengjun 1 week ago
parent
commit
f704ab594b
  1. 168
      src/components/patientRegister/PatientRegisterEdit.vue
  2. 146
      src/components/patientRegister/ThirdLisRequest.vue
  3. 148
      src/components/patientRegister/ThirdPacsRequest.vue

168
src/components/patientRegister/PatientRegisterEdit.vue

@ -24,8 +24,7 @@
:disabled="(form.customerOrgId == dict.personOrgId) || !form.id">同步团检预约</el-button> :disabled="(form.customerOrgId == dict.personOrgId) || !form.id">同步团检预约</el-button>
</div> </div>
<div style="margin-left: 5px;" v-show="checkPagePriv(pagePriv.privs, '分诊排队')"> <div style="margin-left: 5px;" v-show="checkPagePriv(pagePriv.privs, '分诊排队')">
<el-button type="primary" class="commonbutton" @click="fnQueue"
:disabled="!form.id">分诊排队</el-button>
<el-button type="primary" class="commonbutton" @click="fnQueue" :disabled="!form.id">分诊排队</el-button>
</div> </div>
</div> </div>
</div> </div>
@ -546,7 +545,7 @@
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '收费')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '收费')" class="btn">
<el-button type="success" class="commonbutton" @click="toCharge(form)" :disabled="!form.id">收费</el-button> <el-button type="success" class="commonbutton" @click="toCharge(form)" :disabled="!form.id">收费</el-button>
</div>
</div>
<div v-show="checkPagePriv(pagePriv.privs, '复制分组')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '复制分组')" class="btn">
<el-button class="commonbutton" @click="btnCopyGroup" <el-button class="commonbutton" @click="btnCopyGroup"
:disabled="form.isLock == 'Y' || form.completeFlag == '3' ? true : false">复制分组</el-button> :disabled="form.isLock == 'Y' || form.completeFlag == '3' ? true : false">复制分组</el-button>
@ -563,10 +562,10 @@
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item command="收费申请" v-show="checkPagePriv(pagePriv.privs, '收费申请')" <el-dropdown-item command="收费申请" v-show="checkPagePriv(pagePriv.privs, '收费申请')"
:disabled="!form.id">收费申请</el-dropdown-item> :disabled="!form.id">收费申请</el-dropdown-item>
<el-dropdown-item command="检验申请" v-show="checkPagePriv(pagePriv.privs, '检验申请')"
:disabled="!form.id" divided>检验申请</el-dropdown-item>
<el-dropdown-item command="检查申请" v-show="checkPagePriv(pagePriv.privs, '检查申请')"
:disabled="!form.id" divided>检查申请</el-dropdown-item>
<el-dropdown-item command="检验申请" v-show="checkPagePriv(pagePriv.privs, '检验申请')" :disabled="!form.id"
divided>检验申请</el-dropdown-item>
<el-dropdown-item command="检查申请" v-show="checkPagePriv(pagePriv.privs, '检查申请')" :disabled="!form.id"
divided>检查申请</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@ -719,13 +718,13 @@
<!-- 第三方申请 检验申请 --> <!-- 第三方申请 检验申请 -->
<el-dialog title="检验申请" :visible.sync="dialogWin.ThirdLisRequest" width="800px" :show-close="false" <el-dialog title="检验申请" :visible.sync="dialogWin.ThirdLisRequest" width="800px" :show-close="false"
:close-on-click-modal="false" :append-to-body="true" @close="closeDialogCharge"> :close-on-click-modal="false" :append-to-body="true" @close="closeDialogCharge">
<ThirdLisRequest :patientRegister="form" />
<ThirdLisRequest :refParams="thirdLisRequestParams" />
</el-dialog> </el-dialog>
<!-- 第三方申请 检查申请 --> <!-- 第三方申请 检查申请 -->
<el-dialog title="检查申请" :visible.sync="dialogWin.ThirdPacsRequest" width="800px" :show-close="false" <el-dialog title="检查申请" :visible.sync="dialogWin.ThirdPacsRequest" width="800px" :show-close="false"
:close-on-click-modal="false" :append-to-body="true" @close="closeDialogCharge"> :close-on-click-modal="false" :append-to-body="true" @close="closeDialogCharge">
<ThirdPacsRequest :patientRegister="form" />
<ThirdPacsRequest :refParams="thirdPacsRequestParams" />
</el-dialog> </el-dialog>
<!-- 分诊排队 --> <!-- 分诊排队 -->
@ -1078,9 +1077,9 @@ export default {
thirdInterfaceId: '', // thirdInterfaceId: '', //
queueParams: { queueParams: {
patientRegisterId:'',
patientName:'',
queueTimes:0, //
patientRegisterId: '',
patientName: '',
queueTimes: 0, //
}, // }, //
//** //**
@ -1105,7 +1104,18 @@ export default {
hc_warn_mode: '1', //0-1-2- hc_warn_mode: '1', //0-1-2-
dictSalesman: [] //
dictSalesman: [], //
// -- lis
thirdLisRequestParams: {
patientRegisterId: '',
brushTimes: 0,
},
// -- pacs
thirdPacsRequestParams: {
patientRegisterId: '',
brushTimes: 0,
},
}; };
}, },
@ -1189,10 +1199,10 @@ export default {
}, },
// //
dispThirdRequest(){
return this.checkPagePriv(this.pagePriv.privs, '收费申请')||this.checkPagePriv(this.pagePriv.privs, '检验申请')||this.checkPagePriv(this.pagePriv.privs, '检查申请')
dispThirdRequest() {
return this.checkPagePriv(this.pagePriv.privs, '收费申请') || this.checkPagePriv(this.pagePriv.privs, '检验申请') || this.checkPagePriv(this.pagePriv.privs, '检查申请')
}, },
}, },
methods: { methods: {
...mapActions(['getPatientRegisterAbs']), ...mapActions(['getPatientRegisterAbs']),
@ -1479,10 +1489,10 @@ export default {
initFormData(patientRegisterId) { initFormData(patientRegisterId) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.peoplePhoto = '' // this.peoplePhoto = '' //
this.form.photo = ''
this.form.photo = ''
this.dataTransOpts.copyGroup.asbItem = [] // this.dataTransOpts.copyGroup.asbItem = [] //
console.log('this.dataTransOpts.copyGroup.asbItem',JSON.stringify(this.dataTransOpts.copyGroup.asbItem))
console.log('this.dataTransOpts.copyGroup.asbItem',this.dataTransOpts.copyGroup.asbItem)
console.log('this.dataTransOpts.copyGroup.asbItem', JSON.stringify(this.dataTransOpts.copyGroup.asbItem))
console.log('this.dataTransOpts.copyGroup.asbItem', this.dataTransOpts.copyGroup.asbItem)
this.peisid = window.sessionStorage.getItem('peisid'); this.peisid = window.sessionStorage.getItem('peisid');
let customerOrgId, customerOrgName, customerOrgParentId let customerOrgId, customerOrgName, customerOrgParentId
@ -1817,8 +1827,8 @@ export default {
// //
fnQueue() { fnQueue() {
if(!this.form.id){
this.$message.warning({showClose:true,message:'请先保存人员信息,再执行此操作!'})
if (!this.form.id) {
this.$message.warning({ showClose: true, message: '请先保存人员信息,再执行此操作!' })
return return
} }
this.dialogWin.queue1 = true this.dialogWin.queue1 = true
@ -2477,7 +2487,7 @@ export default {
this.dataTransOpts.tableS.patient_register.id = '' this.dataTransOpts.tableS.patient_register.id = ''
this.peoplePhoto = '/pic/Photo.jpg' this.peoplePhoto = '/pic/Photo.jpg'
this.patientRegister.patientRegisterId = ''; this.patientRegister.patientRegisterId = '';
this.form.id = ''; this.form.id = '';
this.form.patientId = '00000000-0000-0000-0000-000000000000'; this.form.patientId = '00000000-0000-0000-0000-000000000000';
this.form.patientRegisterNo = ''; this.form.patientRegisterNo = '';
@ -2494,7 +2504,7 @@ export default {
this.form.mobileTelephone = ''; // this.form.mobileTelephone = ''; //
this.form.telephone = ''; // this.form.telephone = ''; //
this.form.address = ''; // this.form.address = ''; //
}, },
// //
@ -3113,7 +3123,7 @@ export default {
}, },
// //
btnMoreThird(oprType){
btnMoreThird(oprType) {
switch (oprType) { switch (oprType) {
case "收费申请": case "收费申请":
this.thirdChargeRequest(this.form) this.thirdChargeRequest(this.form)
@ -3123,7 +3133,7 @@ export default {
break; break;
case "检查申请": case "检查申请":
this.thirdPacsRequest(this.form) this.thirdPacsRequest(this.form)
break;
break;
default: default:
break; break;
} }
@ -3213,11 +3223,11 @@ export default {
}, },
// //
checkPatientCompleteFlag(form){
checkPatientCompleteFlag(form) {
let message = '' let message = ''
if(!form?.id){
if (!form?.id) {
message = "请先保存人员信息!" message = "请先保存人员信息!"
}else if(form?.completeFlag == '0'){
} else if (form?.completeFlag == '0') {
message = "预登记的人员不可执行此操作!" message = "预登记的人员不可执行此操作!"
} }
return message return message
@ -3225,66 +3235,62 @@ export default {
// -- // --
thirdLisRequest(form) { thirdLisRequest(form) {
let message = this.checkPatientCompleteFlag(form)
if(message){
this.$message.warning({ showClose: true, message})
return
}
this.dialogWin.ThirdLisRequest = true
// this.getAsb(form.id)
// .then(() => {
// let chargeMoney = Number(0)
// //,021
// this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
// if (e.payTypeFlag == '0') chargeMoney += Number(e.total)
// });
// if (chargeMoney == 0) {
// this.$message.warning({ showClose: true, message: '退' })
// } else {
// //
// this.dataTransOpts.refresh.charge.S++
// this.dialogWin.ThirdChargeRequest = true
// }
// })
// .catch(err => {
// this.$message.error(err.message)
// })
// let message = this.checkPatientCompleteFlag(form)
// if (message) {
// this.$message.warning({ showClose: true, message })
// return
// }
if (!form?.id) {
this.$message.warning({ showClose: true, message: '尚未保存人员信息,不可执行此操作!' })
return
}
// lis
postapi('/api/app/LisRequest/CreateLisRequestByPatientRegisterId', { patientRegisterId: form.id })
.then(res => {
if (res.code > -1) return postapi('/api/app/LisRequest/GetSendLisRequestList', { patientRegisterId: form.id, execFlag: '0' })
})
.then(res => {
if (res?.code > -1 && res?.data.length > 0) {
this.thirdLisRequestParams.patientRegisterId = form.id
this.thirdLisRequestParams.brushTimes++
this.dialogWin.ThirdLisRequest = true
} else {
this.$message.warning({ showClose: true, message: '没有检验项目需发送申请' })
}
})
}, },
// -- // --
thirdPacsRequest(form) { thirdPacsRequest(form) {
let message = this.checkPatientCompleteFlag(form)
if(message){
this.$message.warning({ showClose: true, message})
return
}
this.dialogWin.ThirdPacsRequest = true
// this.getAsb(form.id)
// .then(() => {
// let chargeMoney = Number(0)
// //,021
// this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
// if (e.payTypeFlag == '0') chargeMoney += Number(e.total)
// });
// if (chargeMoney == 0) {
// this.$message.warning({ showClose: true, message: '退' })
// } else {
// //
// this.dataTransOpts.refresh.charge.S++
// this.dialogWin.ThirdChargeRequest = true
// }
// })
// .catch(err => {
// this.$message.error(err.message)
// })
// let message = this.checkPatientCompleteFlag(form)
// if(message){
// this.$message.warning({ showClose: true, message})
// return
// }
if (!form?.id) {
this.$message.warning({ showClose: true, message: '尚未保存人员信息,不可执行此操作!' })
return
}
//
postapi('/api/app/RegisterCheck/GetPacsRequestListByPatientRegisterId', { patientRegisterId: form.id, execFlag: '0' })
.then(res => {
if (res.code > -1 && res.data.length > 0) {
this.thirdPacsRequestParams.patientRegisterId = form.id
this.thirdPacsRequestParams.brushTimes++
this.dialogWin.ThirdPacsRequest = true
} else {
this.$message.warning({ showClose: true, message: '没有检查项目需发送申请' })
}
})
}, },
// -- // --
thirdChargeRequest(form) { thirdChargeRequest(form) {
let message = this.checkPatientCompleteFlag(form) let message = this.checkPatientCompleteFlag(form)
if(message){
this.$message.warning({ showClose: true, message})
return
if (message) {
this.$message.warning({ showClose: true, message })
return
} }
this.getAsb(form.id) this.getAsb(form.id)

146
src/components/patientRegister/ThirdLisRequest.vue

@ -2,33 +2,25 @@
<div style="margin-top: -10px;"> <div style="margin-top: -10px;">
<div> <div>
<el-tabs v-model="tabChoosed" style="margin-top: 0px;"> <el-tabs v-model="tabChoosed" style="margin-top: 0px;">
<el-tab-pane label="待收费项目" name="1">
<el-table :data="tableData" border style="width: 100%" row-key="id" height="450" highlight-current-row
<el-tab-pane label="待发检验申请项目" name="1">
<el-table :data="tableDataReq0" border style="width: 100%" row-key="id" height="450" highlight-current-row
size="small" @selection-change="handleSelectionChange" :row-style="{ height: '25px' }"> size="small" @selection-change="handleSelectionChange" :row-style="{ height: '25px' }">
<el-table-column type="selection" align="center" width="40" /> <el-table-column type="selection" align="center" width="40" />
<el-table-column type="index" label="序号" align="center" width="40" /> <el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
<el-table-column prop="standardPrice" label="标准金额" min-width="70" align="center" />
<el-table-column label="姓名" prop="patientName" min-width="70" align="center" />
<el-table-column label="申请ID" min-width="320" prop="lisRequestId"></el-table-column>
<el-table-column label="申请号" prop="lisRequestNo" min-width="150" align="center"></el-table-column>
<el-table-column prop="requestDate" label="申请时间" min-width="150" align="center" />
</el-table> </el-table>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="已收费项目" name="2">
<el-table :data="hisRequestData" border style="width: 100%" row-key="id" height="160" highlight-current-row
<el-tab-pane label="已发检验申请项目" name="2">
<el-table :data="tableDataReq1" border style="width: 100%" row-key="id" height="160" highlight-current-row
size="small" @row-click="rowClick" :row-style="{ height: '25px' }"> size="small" @row-click="rowClick" :row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" /> <el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="申请单号" min-width="100" prop="chargeRequestNo" align="center" />
<el-table-column prop="hisChargeNo" label="his收费单" min-width="80" align="center" />
<el-table-column prop="charges" label="金额" min-width="80" align="center" />
<el-table-column prop="chargeRequestFlag" label="收费状态" width="80" align="center">
<template slot-scope="scope">
<div>{{ setChargeRequestFlag(scope.row.chargeRequestFlag) }}</div>
</template>
</el-table-column>
<el-table-column prop="ch" label="收费人员" min-width="80" align="center" />
<el-table-column prop="creationTime" label="申请时间" min-width="150" align="center" />
<el-table-column label="姓名" prop="patientName" min-width="70" align="center" />
<el-table-column label="申请ID" min-width="320" prop="lisRequestId"></el-table-column>
<el-table-column label="申请号" prop="lisRequestNo" min-width="150" align="center"></el-table-column>
<el-table-column prop="requestDate" label="申请时间" min-width="150" align="center" />
<el-table-column label="操作" width="50" align="center"> <el-table-column label="操作" width="50" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-dropdown> <el-dropdown>
@ -36,24 +28,26 @@
<i class="el-icon-s-operation" style="font-size: 24px;color: blue;cursor:pointer;"></i> <i class="el-icon-s-operation" style="font-size: 24px;color: blue;cursor:pointer;"></i>
</span> </span>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="refreshRequest(scope.row)">刷新状态</el-dropdown-item>
<el-dropdown-item @click.native="cancelRequest(scope.row)" <el-dropdown-item @click.native="cancelRequest(scope.row)"
:disabled="setBtnDisabled(scope.row, 'cancel')">撤消申请</el-dropdown-item> :disabled="setBtnDisabled(scope.row, 'cancel')">撤消申请</el-dropdown-item>
<!--
<el-dropdown-item @click.native="refreshRequest(scope.row)">刷新状态</el-dropdown-item>
<el-dropdown-item @click.native="chargeBack(scope.row)" <el-dropdown-item @click.native="chargeBack(scope.row)"
:disabled="setBtnDisabled(scope.row, 'chargeBack')">退费申请</el-dropdown-item> :disabled="setBtnDisabled(scope.row, 'chargeBack')">退费申请</el-dropdown-item>
-->
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div style="padding: 10px 0 5px 0;">申请单包含项目</div> <div style="padding: 10px 0 5px 0;">申请单包含项目</div>
<el-table :data="hisRequestDataDetails" border style="width: 100%" row-key="id" height="256"
<el-table :data="tableDataReq1Details" border style="width: 100%" row-key="id" height="256"
highlight-current-row size="small" :row-style="{ height: '25px' }"> highlight-current-row size="small" :row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" /> <el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column> <el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column> <el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column> <el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
</el-table> </el-table>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
@ -66,7 +60,7 @@
<el-button class="commonbutton" @click="btnRefresh">刷新</el-button> <el-button class="commonbutton" @click="btnRefresh">刷新</el-button>
</div> </div>
<div style="margin-left: 10px" v-show="tabChoosed == '1'"> <div style="margin-left: 10px" v-show="tabChoosed == '1'">
<el-button class="commonbutton" @click="btnSubmit">收费申请</el-button>
<el-button class="commonbutton" @click="btnSubmit">检验申请申请</el-button>
</div> </div>
<div style="margin-left: 10px"> <div style="margin-left: 10px">
<el-button class="commonbutton" @click="dialogWin.ThirdLisRequest = false">关闭</el-button> <el-button class="commonbutton" @click="dialogWin.ThirdLisRequest = false">关闭</el-button>
@ -83,14 +77,14 @@ import { dddw, arrayExistObj, deepCopy } from "../../utlis/proFunc";
// import // import
export default { export default {
props: ["patientRegister"],
props: ["refParams"],
data() { data() {
return { return {
tabChoosed: '1', tabChoosed: '1',
tableData: [], //
tableDataReq0: [], //
selectedData: [], // selectedData: [], //
hisRequestData: [], //
hisRequestDataDetails: [], //
tableDataReq1: [], //
tableDataReq1Details: [], //
}; };
}, },
@ -99,7 +93,7 @@ export default {
}, },
mounted() { mounted() {
this.initData(this.patientRegister.id);
this.initData(this.refParams.patientRegisterId);
}, },
computed: { computed: {
...mapState(["dict", "dataTransOpts", "dialogWin"]), ...mapState(["dict", "dataTransOpts", "dialogWin"]),
@ -107,50 +101,47 @@ export default {
methods: { methods: {
initData(patientRegisterId) { initData(patientRegisterId) {
this.tableData = []
this.hisRequestData = []
this.hisRequestDataDetails = []
this.tableDataReq0 = []
this.tableDataReq1 = []
this.tableDataReq1Details = []
if (!patientRegisterId) return if (!patientRegisterId) return
//
//
this.asbList(patientRegisterId) this.asbList(patientRegisterId)
//
//
this.requestList(patientRegisterId) this.requestList(patientRegisterId)
}, },
//
//
asbList(patientRegisterId) { asbList(patientRegisterId) {
this.tableData = []
postapi('/api/app/registerasbitem/GetCanChargeAsbitemsByPatientRegisterId', { patientRegisterId })
this.tableDataReq0 = []
postapi('/api/app/LisRequest/GetSendLisRequestList', { patientRegisterId, execFlag: '0' })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
res.data.forEach(e => {
e.total = Number(e.chargePrice * e.amount)
this.tableData.push(e)
});
this.tableDataReq0 = res.data
} }
}) })
}, },
//
//
requestList(patientRegisterId) { requestList(patientRegisterId) {
this.hisRequestData = []
this.hisRequestDataDetails = []
postapi('/api/app/ChargeRequest/GetChargeRequestsByPatientRegisterId', { patientRegisterId })
this.tableDataReq1 = []
this.tableDataReq1Details = []
postapi('/api/app/LisRequest/GetSendLisRequestList', { patientRegisterId, execFlag: '1' })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
this.hisRequestData = res.data
this.tableDataReq1 = res.data
} }
}) })
}, },
setChargeRequestFlag(chargeRequestFlag) { setChargeRequestFlag(chargeRequestFlag) {
let ret = '收费申请'
let ret = '检验申请申请'
switch (chargeRequestFlag) { switch (chargeRequestFlag) {
case '1': case '1':
ret = '已收费'
ret = '已检验申请'
break; break;
case '2': case '2':
ret = '作废申请' ret = '作废申请'
@ -186,21 +177,18 @@ export default {
// //
rowClick(row) { rowClick(row) {
this.hisRequestDataDetails = []
postapi('/api/app/ChargeRequest/GetChargeRequestAsbitemsByChargeRequestId', { chargeRequestId: row.id })
this.tableDataReq1Details = []
postapi('/api/app/LisRequest/GetRequestAsbitemByLisRequestIdList', { lisRequestId: row.lisRequestId })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
res.data.forEach(e => {
e.total = Number(e.chargePrice * e.amount)
this.hisRequestDataDetails.push(e)
});
this.tableDataReq1Details = res.data
} }
}) })
}, },
//
//
refreshRequest(row) { refreshRequest(row) {
console.log('refreshRequest',row)
console.log('refreshRequest', row)
postapi('/api/app/ChargeRequest/SyncChargeRequestFlagFromInterface', { chargeRequestId: row.id }) postapi('/api/app/ChargeRequest/SyncChargeRequestFlagFromInterface', { chargeRequestId: row.id })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
@ -211,10 +199,11 @@ export default {
// //
cancelRequest(row) { cancelRequest(row) {
postapi('/api/app/ChargeRequest/CancelChargeRequest', { chargeRequestId: row.id })
postapi('/api/app/LisRequest/CancelThirdLisRequest', { lisRequestId: row.lisRequestId })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
row.chargeRequestFlag = "2"
//
this.requestList(this.refParams.patientRegisterId)
} }
}) })
}, },
@ -232,32 +221,27 @@ export default {
// //
btnRefresh() { btnRefresh() {
if (this.tabChoosed == '1') { if (this.tabChoosed == '1') {
this.asbList(this.patientRegister.id)
this.asbList(this.refParams.patientRegisterId)
} else { } else {
this.requestList(this.patientRegister.id)
this.requestList(this.refParams.patientRegisterId)
} }
}, },
btnSubmit() {
//
async btnSubmit() {
if (this.selectedData.length == 0) { if (this.selectedData.length == 0) {
this.$message.warning({ showClose: true, message: `请勾选要发送收费申请的检查项目!` });
this.$message.warning({ showClose: true, message: `请勾选要发送检验申请申请的检查项目!` });
return; return;
} }
let body = {
patientRegisterId: this.patientRegister.id,
registerCheckAsbitems: []
}
this.selectedData.forEach(e => {
body.registerCheckAsbitems.push({ registerCheckAsbitemId: e.registerCheckAsbitemId })
});
for (let index = 0; index < this.selectedData.length; index++) {
let e = this.selectedData[index];
await postapi('/api/app/LisRequest/SendThirdLisRequest', { lisRequestId: e.lisRequestId })
}
//
this.asbList(this.refParams.patientRegisterId)
postapi("/api/app/ChargeRequest/Create", body)
.then(res => {
if (res.code > -1) {
this.initData(this.patientRegister.id)
}
});
}, },
}, },
@ -265,12 +249,12 @@ export default {
// //
watch: { watch: {
// //
"dataTransOpts.refresh.charge.S": {
"refParams.brushTimes": {
// immediate: true, // // immediate: true, //
// // deep: true, // // // deep: true, //
handler(newVal, oldVal) { handler(newVal, oldVal) {
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id)
if (newVal != oldVal) this.initData(this.patientRegister.id)
console.log(`watch: 检验申请 newVal: ${newVal}, oldVal: ${oldVal}, 人员ID: `, this.refParams.patientRegisterId)
if (newVal != oldVal) this.initData(this.refParams.patientRegisterId)
} }
}, },
@ -278,12 +262,12 @@ export default {
// immediate: true, // // immediate: true, //
// // deep: true, // // // deep: true, //
handler(newVal, oldVal) { handler(newVal, oldVal) {
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id)
console.log(`watch: 检验申请 newVal: ${newVal}, oldVal: ${oldVal}, 人员ID: `, this.refParams.patientRegisterId)
if (newVal != oldVal) { if (newVal != oldVal) {
if (newVal == '1') { if (newVal == '1') {
this.asbList(this.patientRegister.id)
this.asbList(this.refParams.patientRegisterId)
} else { } else {
this.requestList(this.patientRegister.id)
this.requestList(this.refParams.patientRegisterId)
} }
} }
} }

148
src/components/patientRegister/ThirdPacsRequest.vue

@ -2,33 +2,25 @@
<div style="margin-top: -10px;"> <div style="margin-top: -10px;">
<div> <div>
<el-tabs v-model="tabChoosed" style="margin-top: 0px;"> <el-tabs v-model="tabChoosed" style="margin-top: 0px;">
<el-tab-pane label="待收费项目" name="1">
<el-table :data="tableData" border style="width: 100%" row-key="id" height="450" highlight-current-row
<el-tab-pane label="待发申请检查项目" name="1">
<el-table :data="tableDataReq0" border style="width: 100%" row-key="id" height="450" highlight-current-row
size="small" @selection-change="handleSelectionChange" :row-style="{ height: '25px' }"> size="small" @selection-change="handleSelectionChange" :row-style="{ height: '25px' }">
<el-table-column type="selection" align="center" width="40" /> <el-table-column type="selection" align="center" width="40" />
<el-table-column type="index" label="序号" align="center" width="40" /> <el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="检查ID" min-width="320" prop="registerCheckId"></el-table-column>
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column> <el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
<el-table-column prop="standardPrice" label="标准金额" min-width="70" align="center" />
<el-table-column label="申请号" min-width="120" prop="checkRequestNo"></el-table-column>
<el-table-column prop="execFlag" label="状态" min-width="70" align="center" />
</el-table> </el-table>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="已收费项目" name="2">
<el-table :data="hisRequestData" border style="width: 100%" row-key="id" height="160" highlight-current-row
<el-tab-pane label="已发申请检查项目" name="2">
<el-table :data="tableDataReq1" border style="width: 100%" row-key="id" height="450" highlight-current-row
size="small" @row-click="rowClick" :row-style="{ height: '25px' }"> size="small" @row-click="rowClick" :row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" /> <el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="申请单号" min-width="100" prop="chargeRequestNo" align="center" />
<el-table-column prop="hisChargeNo" label="his收费单" min-width="80" align="center" />
<el-table-column prop="charges" label="金额" min-width="80" align="center" />
<el-table-column prop="chargeRequestFlag" label="收费状态" width="80" align="center">
<template slot-scope="scope">
<div>{{ setChargeRequestFlag(scope.row.chargeRequestFlag) }}</div>
</template>
</el-table-column>
<el-table-column prop="ch" label="收费人员" min-width="80" align="center" />
<el-table-column prop="creationTime" label="申请时间" min-width="150" align="center" />
<el-table-column label="检查ID" min-width="320" prop="registerCheckId"></el-table-column>
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="申请号" min-width="120" prop="checkRequestNo"></el-table-column>
<el-table-column prop="execFlag" label="状态" min-width="70" align="center" />
<el-table-column label="操作" width="50" align="center"> <el-table-column label="操作" width="50" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-dropdown> <el-dropdown>
@ -36,25 +28,18 @@
<i class="el-icon-s-operation" style="font-size: 24px;color: blue;cursor:pointer;"></i> <i class="el-icon-s-operation" style="font-size: 24px;color: blue;cursor:pointer;"></i>
</span> </span>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="refreshRequest(scope.row)">刷新状态</el-dropdown-item>
<el-dropdown-item @click.native="cancelRequest(scope.row)" <el-dropdown-item @click.native="cancelRequest(scope.row)"
:disabled="setBtnDisabled(scope.row, 'cancel')">撤消申请</el-dropdown-item> :disabled="setBtnDisabled(scope.row, 'cancel')">撤消申请</el-dropdown-item>
<!--
<el-dropdown-item @click.native="refreshRequest(scope.row)">刷新状态</el-dropdown-item>
<el-dropdown-item @click.native="chargeBack(scope.row)" <el-dropdown-item @click.native="chargeBack(scope.row)"
:disabled="setBtnDisabled(scope.row, 'chargeBack')">退费申请</el-dropdown-item> :disabled="setBtnDisabled(scope.row, 'chargeBack')">退费申请</el-dropdown-item>
-->
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div style="padding: 10px 0 5px 0;">申请单包含项目</div>
<el-table :data="hisRequestDataDetails" border style="width: 100%" row-key="id" height="256"
highlight-current-row size="small" :row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
</el-table>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
@ -66,7 +51,7 @@
<el-button class="commonbutton" @click="btnRefresh">刷新</el-button> <el-button class="commonbutton" @click="btnRefresh">刷新</el-button>
</div> </div>
<div style="margin-left: 10px" v-show="tabChoosed == '1'"> <div style="margin-left: 10px" v-show="tabChoosed == '1'">
<el-button class="commonbutton" @click="btnSubmit">收费申请</el-button>
<el-button class="commonbutton" @click="btnSubmit">检查申请</el-button>
</div> </div>
<div style="margin-left: 10px"> <div style="margin-left: 10px">
<el-button class="commonbutton" @click="dialogWin.ThirdPacsRequest = false">关闭</el-button> <el-button class="commonbutton" @click="dialogWin.ThirdPacsRequest = false">关闭</el-button>
@ -83,14 +68,14 @@ import { dddw, arrayExistObj, deepCopy } from "../../utlis/proFunc";
// import // import
export default { export default {
props: ["patientRegister"],
props: ["refParams"],
data() { data() {
return { return {
tabChoosed: '1', tabChoosed: '1',
tableData: [], //
tableDataReq0: [], //
selectedData: [], // selectedData: [], //
hisRequestData: [], //
hisRequestDataDetails: [], //
tableDataReq1: [], //
tableDataReq1Details: [], //
}; };
}, },
@ -99,7 +84,7 @@ export default {
}, },
mounted() { mounted() {
this.initData(this.patientRegister.id);
this.initData(this.refParams.patientRegisterId);
}, },
computed: { computed: {
...mapState(["dict", "dataTransOpts", "dialogWin"]), ...mapState(["dict", "dataTransOpts", "dialogWin"]),
@ -107,50 +92,46 @@ export default {
methods: { methods: {
initData(patientRegisterId) { initData(patientRegisterId) {
this.tableData = []
this.hisRequestData = []
this.hisRequestDataDetails = []
this.tableDataReq0 = []
this.tableDataReq1 = []
this.tableDataReq1Details = []
if (!patientRegisterId) return if (!patientRegisterId) return
//
//
this.asbList(patientRegisterId) this.asbList(patientRegisterId)
//
//
this.requestList(patientRegisterId) this.requestList(patientRegisterId)
}, },
//
//
asbList(patientRegisterId) { asbList(patientRegisterId) {
this.tableData = []
postapi('/api/app/registerasbitem/GetCanChargeAsbitemsByPatientRegisterId', { patientRegisterId })
this.tableDataReq0 = []
postapi('/api/app/RegisterCheck/GetPacsRequestListByPatientRegisterId', { patientRegisterId, execFlag: '0' })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
res.data.forEach(e => {
e.total = Number(e.chargePrice * e.amount)
this.tableData.push(e)
});
this.tableDataReq0 = res.data
} }
}) })
}, },
//
//
requestList(patientRegisterId) { requestList(patientRegisterId) {
this.hisRequestData = []
this.hisRequestDataDetails = []
postapi('/api/app/ChargeRequest/GetChargeRequestsByPatientRegisterId', { patientRegisterId })
this.tableDataReq1 = []
postapi('/api/app/RegisterCheck/GetPacsRequestListByPatientRegisterId', { patientRegisterId, execFlag: '1' })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
this.hisRequestData = res.data
this.tableDataReq1 = res.data
} }
}) })
}, },
setChargeRequestFlag(chargeRequestFlag) { setChargeRequestFlag(chargeRequestFlag) {
let ret = '收费申请'
let ret = '检查申请'
switch (chargeRequestFlag) { switch (chargeRequestFlag) {
case '1': case '1':
ret = '已收费'
ret = '已检查'
break; break;
case '2': case '2':
ret = '作废申请' ret = '作废申请'
@ -186,21 +167,12 @@ export default {
// //
rowClick(row) { rowClick(row) {
this.hisRequestDataDetails = []
postapi('/api/app/ChargeRequest/GetChargeRequestAsbitemsByChargeRequestId', { chargeRequestId: row.id })
.then(res => {
if (res.code > -1) {
res.data.forEach(e => {
e.total = Number(e.chargePrice * e.amount)
this.hisRequestDataDetails.push(e)
});
}
})
}, },
//
//
refreshRequest(row) { refreshRequest(row) {
console.log('refreshRequest',row)
console.log('refreshRequest', row)
postapi('/api/app/ChargeRequest/SyncChargeRequestFlagFromInterface', { chargeRequestId: row.id }) postapi('/api/app/ChargeRequest/SyncChargeRequestFlagFromInterface', { chargeRequestId: row.id })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
@ -209,12 +181,13 @@ export default {
}) })
}, },
// //
cancelRequest(row) { cancelRequest(row) {
postapi('/api/app/ChargeRequest/CancelChargeRequest', { chargeRequestId: row.id })
postapi('/api/app/RegisterCheck/CancelThirdPacsRequest', { registerCheckId: row.registerCheckId })
.then(res => { .then(res => {
if (res.code > -1) { if (res.code > -1) {
row.chargeRequestFlag = "2"
this.requestList(this.refParams.patientRegisterId)
} }
}) })
}, },
@ -232,32 +205,27 @@ export default {
// //
btnRefresh() { btnRefresh() {
if (this.tabChoosed == '1') { if (this.tabChoosed == '1') {
this.asbList(this.patientRegister.id)
this.asbList(this.refParams.patientRegisterId)
} else { } else {
this.requestList(this.patientRegister.id)
this.requestList(this.refParams.patientRegisterId)
} }
}, },
btnSubmit() {
//
async btnSubmit() {
if (this.selectedData.length == 0) { if (this.selectedData.length == 0) {
this.$message.warning({ showClose: true, message: `请勾选要发送收费申请的检查项目!` });
this.$message.warning({ showClose: true, message: `请勾选要发送检查申请的检查项目!` });
return; return;
} }
let body = {
patientRegisterId: this.patientRegister.id,
registerCheckAsbitems: []
for (let index = 0; index < this.selectedData.length; index++) {
let e = this.selectedData[index];
await postapi("/api/app/RegisterCheck/SendThirdPacsRequest", { registerCheckId: e.registerCheckId })
} }
this.selectedData.forEach(e => {
body.registerCheckAsbitems.push({ registerCheckAsbitemId: e.registerCheckAsbitemId })
});
//
this.asbList(this.refParams.patientRegisterId)
postapi("/api/app/ChargeRequest/Create", body)
.then(res => {
if (res.code > -1) {
this.initData(this.patientRegister.id)
}
});
}, },
}, },
@ -265,12 +233,12 @@ export default {
// //
watch: { watch: {
// //
"dataTransOpts.refresh.charge.S": {
"refParams.brushTimes": {
// immediate: true, // // immediate: true, //
// // deep: true, // // // deep: true, //
handler(newVal, oldVal) { handler(newVal, oldVal) {
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id)
if (newVal != oldVal) this.initData(this.patientRegister.id)
console.log(`watch: 检查申请 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.refParams.patientRegisterId)
if (newVal != oldVal) this.initData(this.refParams.patientRegisterId)
} }
}, },
@ -278,12 +246,12 @@ export default {
// immediate: true, // // immediate: true, //
// // deep: true, // // // deep: true, //
handler(newVal, oldVal) { handler(newVal, oldVal) {
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id)
console.log(`watch: 检查申请 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.refParams.patientRegisterId)
if (newVal != oldVal) { if (newVal != oldVal) {
if (newVal == '1') { if (newVal == '1') {
this.asbList(this.patientRegister.id)
this.asbList(this.refParams.patientRegisterId)
} else { } else {
this.requestList(this.patientRegister.id)
this.requestList(this.refParams.patientRegisterId)
} }
} }
} }

Loading…
Cancel
Save