luobinjie 4 months ago
parent
commit
1af812f100
  1. 10
      src/components/customerOrg/customerOrgEdit.vue
  2. 24
      src/components/doctorCheck/CheckItemList.vue
  3. 4
      src/components/doctorCheck/CheckSumSug.vue
  4. 138
      src/components/doctorCheck/QueueCheckList.vue
  5. 2
      src/components/occDisease/CheckDetails.vue
  6. 8
      src/components/patientRegister/PatientRegisterItem.vue
  7. 4
      src/components/patientRegister/patientRegisterAsbItem.vue
  8. 159
      src/components/queue/Queue.vue
  9. 55
      src/components/report/BtnReport.vue
  10. 25
      src/components/report/PatientRegisterListNobtn.vue
  11. 36
      src/components/sumDoctorCheck/CheckDetails.vue
  12. 2
      src/components/sumDoctorCheck/SumHistory.vue
  13. 4
      src/components/sumDoctorCheck/SumItems.vue
  14. 4
      src/views/charge/charge.vue
  15. 1
      src/views/user-list/UserList.vue

10
src/components/customerOrg/customerOrgEdit.vue

@ -93,7 +93,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item label="联系电话" prop="telephone">
<el-input class="enterToTab" v-model="form.telephone" placeholder="请输入联系电话" />
</el-form-item>
@ -108,6 +108,11 @@
<el-input class="enterToTab" v-model="form.postalCode" placeholder="请输入邮政编码" />
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="常用单位" prop="isRecommend">
<el-checkbox v-model="form.isRecommend" true-label="Y" false-label="N" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
@ -258,7 +263,8 @@ export default {
salesPerson: "",
salesPersonPhone: "",
medicalTypeId:'',
personnelTypeId:''
personnelTypeId:'',
isRecommend:'N',
}, //
formInit: {},
rules: {

24
src/components/doctorCheck/CheckItemList.vue

@ -776,6 +776,14 @@ export default {
this.moreResult.result = row.result;
this.moreResult.defaultResult = row.defaultResult;
this.moreResult.index = index;
if(!row.result){
this.selection.start = 0
this.selection.end = 0
}else{
this.selection.start = row.result.length
this.selection.end = row.result.length
}
console.log('显示模板初始光标',this.selection)
// "itemId": "3a0c517f-cbdb-9fff-e300-1f76b3e47580",
// "result": "00000",
// "diagnosisId": "3a0ed8a2-72d9-ee50-78aa-5b1f474f2921",
@ -834,16 +842,19 @@ export default {
//
clickResult(item) {
let moreResult = this.moreResult.result || ''
let moreResult = this.moreResult.result || ''
let resultIsNum = /^[-+]?(\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?$/.test(item.result);
// console.log('this.moreResult',JSON.stringify(this.moreResult))
// console.log('item',item)
// ==
if (!moreResult || moreResult == this.moreResult.defaultResult ) {
this.moreResult.result = item.result
this.selection.start = length(item.result) - 1
this.selection.start = item?.result.length||0
this.selection.end = this.selection.start
}else if(moreResult.includes(item.result)){
//
console.log('=默认结果光标',this.selection)
}else if(moreResult.includes(item.result) && !resultIsNum){
//
}else {
let choosedResult = item.result
if(this.LocalConfig.doctorCheck.isSplitChooseResult == 'Y') choosedResult = ';' + choosedResult
@ -1113,15 +1124,16 @@ export default {
result = symbols;
}
this.moreResult.result = result;
this.selection.start = this.selection.start + length(symbols);
this.selection.start = this.selection.start + symbols.length;
this.selection.end = this.selection.start;
console.log('插入结果后光标',this.selection)
},
//
getCaretPosition() {
let input = document.getElementById("resultBox");
this.selection.start = input.selectionStart;
this.selection.end = input.selectionEnd;
// console.log('selection',this.selection)
console.log('点击后光标',this.selection)
},
watchSelection() {
this.$nextTick(() => {

4
src/components/doctorCheck/CheckSumSug.vue

@ -65,9 +65,9 @@
bordercolor="#909399">
<colgroup>
<col width="150">
<col width="50">
<col min-width="120">
<col width="80">
<col width="120">
<col width="50">
</colgroup>
<thead>
<tr height="30">

138
src/components/doctorCheck/QueueCheckList.vue

@ -48,9 +48,9 @@
<el-input placeholder="候诊人员" v-model="patientName" size="small" style="width: 125px;" clearable />
</div>
-->
<div style="display: flex">
<div style="display: flex" @contextmenu.prevent="onContextmenu">
<el-table :data="waitDetail" style="width: 100%" border highlight-current-row @row-click="rowClickWait"
:row-style="{ height: '28px' }" :height="Math.floor((tableHeight - 72) / 3)">
:row-style="{ height: '28px' }" :height="Math.floor((tableHeight - 72) / 3)" @row-contextmenu="rClick">
<el-table-column prop="queueRegisterNumber" label="号" min-width="30" align="center" />
<el-table-column prop="patientName" label="姓名" min-width="80" align="center" />
<el-table-column prop="isVip" label="Vip" min-width="40" align="center">
@ -63,7 +63,7 @@
</el-table>
<div style="margin-top: 20px">
<div>
<el-button type="primary" class="commonbutton" @click="btnCall(waitRow.queueRegisterId, '1')"
<el-button type="primary" class="commonbutton" @click="btnCall(waitRow, '1')"
style="width: 40px; min-width: 40px; height: 26px">呼叫</el-button>
</div>
<div style="margin: 10px 0">
@ -83,8 +83,8 @@
</div>
</div>
<div style="margin-top: 6px">已呼人员</div>
<div style="display: flex">
<el-table :data="alreadyCalledDetail" style="width: 100%" border highlight-current-row
<div style="display: flex" @contextmenu.prevent="onContextmenu">
<el-table :data="alreadyCalledDetail" style="width: 100%" border highlight-current-row @row-contextmenu="rClick"
@row-click="rowClickAlready" :row-style="{ height: '28px' }" :height="Math.floor((tableHeight - 72) / 3)">
<el-table-column prop="queueRegisterNumber" label="号" min-width="30" align="center" />
<el-table-column prop="patientName" label="姓名" min-width="80" align="center" />
@ -104,9 +104,9 @@
</div>
</div>
<div style="margin-top: 6px">过号人员</div>
<div style="display: flex">
<div style="display: flex" @contextmenu.prevent="onContextmenu">
<el-table :data="overNumberDetail" style="width: 100%" border highlight-current-row @row-click="rowClickOver"
:row-style="{ height: '28px' }" :height="Math.floor((tableHeight - 72) / 3)">
:row-style="{ height: '28px' }" :height="Math.floor((tableHeight - 72) / 3)" @row-contextmenu="rClick">
<el-table-column prop="queueRegisterNumber" label="号" min-width="30" align="center" />
<el-table-column prop="patientName" label="姓名" min-width="80" align="center" />
<el-table-column prop="isVip" label="Vip" min-width="40" align="center">
@ -133,7 +133,7 @@
<!--组件弹窗-->
<div>
<!-- 修改信息 -->
<el-dialog title="分诊排队" :visible.sync="dialogWin.queue" width="800px" :append-to-body="true"
<el-dialog title="分诊排队" :visible.sync="dialogWinQueue" width="800px" :append-to-body="true"
:close-on-click-modal="false">
<Queue :refParams="queueParams" />
</el-dialog>
@ -187,7 +187,7 @@ export default {
//
clickTime1: 0,
clickTime2: 0,
dialogWinQueue:false,
};
},
@ -323,14 +323,17 @@ export default {
});
break;
case "1": //
// 1
if (!row.queueRegisterId) {
if (this.waitDetail.length > 0) row = this.waitDetail[0];
}
if (!row.queueRegisterId)
this.$message.warning({
showClose: true,
message: "未可操作的数据,或未选择候诊人员",
});
if (this.alreadyCalledDetail.length > 0) prePatientRegisterId = this.alreadyCalledDetail[0].patientRegisterId
break;
@ -373,6 +376,11 @@ export default {
completeFlag,
}).then((res) => {
if (res.code > -1) {
if(completeFlag == '1'){
this.waitRow = {}
}
//
this.getQueueRegisterList(
this.LocalConfig.doctorCheck.queueRoom,
this.LocalConfig.doctorCheck.queueItemTypeIds
@ -478,8 +486,17 @@ export default {
.then((res) => {
if (res.code > -1) {
this.waitDetail = res.data.waitDetail;
this.waitDetail.forEach(e => {
e.state = 'wait'
});
this.alreadyCalledDetail = res.data.alreadyCalledDetail;
this.alreadyCalledDetail.forEach(e => {
e.state = 'alreadyCall'
});
this.overNumberDetail = res.data.overNumberDetail;
this.overNumberDetail.forEach(e => {
e.state = 'over'
});
resolve(res);
} else {
@ -535,49 +552,90 @@ export default {
}
this.dataTransOpts.plus.queue++;
this.dialogWin.queue = true;
this.dialogWinQueue = true;
},
//
rowClickWait(row) {
this.clickTime1 = new Date().getTime()
setTimeout(() => {
if (this.clickTime1 > this.clickTime2) {
this.waitRow = row;
this.queueParams = {
patientRegisterId: row.patientRegisterId,
};
}
}, 400);
this.waitRow = row;
this.queueParams = {
patientRegisterId: row.patientRegisterId,
};
},
//
rowClickAlready(row) {
this.clickTime1 = new Date().getTime()
setTimeout(() => {
if (this.clickTime1 > this.clickTime2) {
this.alreadyRow = row;
this.queueParams = {
patientRegisterId: row.patientRegisterId,
};
}
}, 400);
this.alreadyRow = row;
this.queueParams = {
patientRegisterId: row.patientRegisterId,
};
},
//
rowClickOver(row) {
this.clickTime1 = new Date().getTime()
setTimeout(() => {
if (this.clickTime1 > this.clickTime2) {
this.overRow = row;
}
}, 400);
rowClickOver(row) {
this.overRow = row;
},
//
rClick(row, column, event) {
this.queueParams = {
patientRegisterId: row.patientRegisterId,
state: row.state,
queueRegisterId: row.queueRegisterId
};
},
//
onContextmenu(event) {
if (!this.queueParams.patientRegisterId) return false
//
let items = [];
if (this.queueParams.state == 'wait') {
items.push({
label: "呼叫",
onClick: () => {
this.btnCall(this.queueParams, '1')
},
})
items.push({
label: "取消排队",
onClick: () => {
postapi('/api/app/QueueRegister/DeleteByPatientRegisterId', {
patientRegisterId: this.queueParams.patientRegisterId
}).then(res => {
if (res.code > -1) {
this.$message.success({ showClose: true, message: '操作成功!' })
this.getQueueRegisterList(this.LocalConfig.doctorCheck.queueRoom, this.LocalConfig.doctorCheck.queueItemTypeIds)
}
})
},
})
}
items.push({
label: "排队",
onClick: () => {
this.fnQueue()
},
})
this.$contextmenu({
items,
event,
x: event.clientX,
y: event.clientY,
customClass: "custom-class",
zIndex: 3,
minWidth: 80,
});
return false;
},
},
//

2
src/components/occDisease/CheckDetails.vue

@ -82,7 +82,7 @@ export default {
}
})
.catch((err) => {
this.$message({ type: "error", message: `操作失败,原因:${err}` });
this.$message({ type: "error", message: `操作失败,原因(/api/app/OccupationalDisease/GetDetailResults)${err}` });
});
},

8
src/components/patientRegister/PatientRegisterItem.vue

@ -116,7 +116,7 @@
</div>
</template>
</el-table-column>
<el-table-column label="标准价" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="标准价" prop="standardPrice" min-width="60" align="center" />
<el-table-column label="折扣" prop="discount" min-width="60">
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.discount" size="small" @input="changeDiscount(scope.$index)" :disabled="scope.row.isCharge == 'Y' ? true:false"/>
@ -159,10 +159,10 @@
<el-checkbox :value="scope.row.isLock == 'Y'" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center"></el-table-column>
<el-table-column prop="creationTime" label="登记日期" win-width="90" align="center">
<el-table-column prop="creatorName" label="登记人" min-width="60" align="center"></el-table-column>
<el-table-column prop="creationTime" label="登记日期" width="130" align="center">
<template slot-scope="scope">
<div>{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD') : '' }}</div>
<div>{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD HH:mm') : '' }}</div>
</template>
</el-table-column>
</el-table>

4
src/components/patientRegister/patientRegisterAsbItem.vue

@ -45,9 +45,9 @@
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center" />
<el-table-column prop="creationTime" label="登记日期" min-width="90" align="center">
<el-table-column prop="creationTime" label="登记日期" min-width="130" align="center">
<template slot-scope="scope">
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD HH:mm") }}</div>
</template>
</el-table-column>
</el-table>

159
src/components/queue/Queue.vue

@ -9,62 +9,68 @@
<el-table-column label="候诊" min-width="40" prop="waitCount" align="center" />
</el-table>
</div>
<div style="width: 360px;margin: 0 5px;">
<div>未分诊组合项目</div>
<el-table :data="notTriageAsbitemList" border style="width: 100%" row-key="id" height="270" highlight-current-row
size="small" @row-click="rowClick" ref="notTriageAsbitemList">
<el-table-column label="科室" min-width="130" prop="itemTypeName" align="center" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName" align="center" />
</el-table>
<div style="margin-top: 5px;">已分诊科室</div>
<el-table :data="yesTriageAsbitemList" border style="width: 100%" row-key="id" height="270" highlight-current-row
size="small" ref="yesTriageAsbitemList">
<el-table-column label="科室" min-width="130" prop="asbitemName">
<template slot-scope="scope">
<div>
{{ scope.row.asbitemName }}
</div>
</template>
</el-table-column>
<el-table-column label="房间" prop="roomName" min-width="60" align="center" />
<el-table-column label="状态" prop="completeFlag" min-width="60" align="center">
<template slot-scope="scope">
<div>{{ dddw(dict.queueFlag,'id',scope.row.completeFlag,'displayName') }}</div>
</template>
</el-table-column>
<el-table-column label="排号人" prop="triageName" min-width="80" align="center"/>
</el-table>
</div>
<div style="width: 120px;">
<div>房间</div>
<el-table :data="roomsForAsbitem" border style="width: 100%" row-key="id" height="270" highlight-current-row
size="small" @row-click="rowClickRoom" ref="roomsForAsbitem">
<el-table-column label="房间" min-width="80" prop="roomName" align="center" />
</el-table>
<div style="margin: 25px 0 10px 10px;">
<el-button class="commonbutton" @click="btnQueue">人工分诊排队</el-button>
</div>
<div v-if="false" style="margin-left: 10px;">
<el-button class="commonbutton" @click="btnQueueAuto">AI智能分诊</el-button>
</div>
<div style="margin: 10px 0 5px 0;">当前人员</div>
<div style="height: 20px;margin-left: 20px;">
{{ queueRegister.patientName }}
</div>
<div style="margin: 10px 0 5px 0;">当前排队房间</div>
<div style="height: 20px;margin-left: 20px;">
{{ queueRegister.roomName }}
<div style="width: 485px;margin: 0 5px;">
<div style="display: flex;">
<div style="width: 360px;">
<div>未分诊组合项目</div>
<el-table :data="notTriageAsbitemList" border style="width: 100%" row-key="id" height="270"
highlight-current-row size="small" @row-click="rowClick" ref="notTriageAsbitemList">
<el-table-column label="科室" min-width="130" prop="itemTypeName" align="center" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName" align="center" />
</el-table>
</div>
<div style="width: 120px;margin-left: 5px;">
<div>房间</div>
<el-table :data="roomsForAsbitem" border style="width: 100%" row-key="id" height="270" highlight-current-row
size="small" @row-click="rowClickRoom" ref="roomsForAsbitem">
<el-table-column label="房间" min-width="80" prop="roomName" align="center" />
</el-table>
</div>
</div>
<div style="margin: 5px 0 5px 0;">当前候诊人数</div>
<div style="height: 25px;margin-left: 20px;">
{{ queueRegister.queueCount }}
<div style="display: flex; margin-top: 5px;">
<div>已分诊科室</div>
<div style="margin-left: 40px;">当前人员{{ queueRegister.patientName }}</div>
<div style="margin-left: 10px;">排队房间{{ queueRegister.roomName }}</div>
<div style="margin-left: 10px;">候诊人数{{ queueRegister.queueCount }}</div>
</div>
<div style="margin-left: 10px;">
<el-button class="commonbutton" @click="dialogWin.queue = false">关闭</el-button>
<div style="display: flex;">
<el-table :data="yesTriageAsbitemList" border row-key="id" height="270" highlight-current-row size="small"
ref="yesTriageAsbitemList">
<el-table-column label="房间" prop="roomName" min-width="80" align="center" />
<el-table-column label="项目" min-width="150" prop="asbitemName">
<template slot-scope="scope">
<div>
{{ scope.row.asbitemName }}
</div>
</template>
</el-table-column>
<el-table-column label="状态" prop="completeFlag" min-width="40" align="center">
<template slot-scope="scope">
<div>{{ dddw(dict.queueFlag, 'id', scope.row.completeFlag, 'displayName') }}</div>
</template>
</el-table-column>
<el-table-column label="排号人" prop="triageName" min-width="60" align="center" />
</el-table>
<div style="width: 120px;">
<div style="margin: 25px 0 10px 10px;">
<el-button class="commonbutton" @click="btnQueue">人工分诊排队</el-button>
</div>
<div v-if="false" style="margin-left: 10px;">
<el-button class="commonbutton" @click="btnQueueAuto">AI智能分诊</el-button>
</div>
<div style="margin-left: 10px;margin-bottom: 10px;">
<el-button class="commonbutton" @click="btnCancelQueue">取消排队</el-button>
</div>
<div style="margin-left: 10px;">
<el-button class="commonbutton" @click="dialogWin.queue = false">关闭</el-button>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
@ -122,7 +128,7 @@ export default {
})
.catch(err => {
console.log(err)
if(err != "patientRegisterId 无值") this.$message.error({ showClose: true, message: `${err}` })
if (err != "patientRegisterId 无值") this.$message.error({ showClose: true, message: `${err}` })
})
},
@ -136,10 +142,10 @@ export default {
if (res.code > -1) {
this.roomQueueList = res.data
this.roomsForAsbitem = []
if(patientRegisterId){
if (patientRegisterId) {
return postapi('/api/app/QueueRegister/GetNotTriageAsbitemList', { patientRegisterId })
}else{
reject('patientRegisterId 无值')
} else {
reject('patientRegisterId 无值')
}
} else {
reject(res.message)
@ -148,10 +154,10 @@ export default {
.then(res => {
if (res && res.code > -1) {
this.notTriageAsbitemList = res.data
if(patientRegisterId){
if (patientRegisterId) {
return postapi('/api/app/QueueRegister/GetYesTriageAsbitemList', { patientRegisterId })
}else{
reject('patientRegisterId 无值')
} else {
reject('patientRegisterId 无值')
}
} else {
reject(res.message)
@ -160,10 +166,10 @@ export default {
.then(res => {
if (res && res.code > -1) {
this.yesTriageAsbitemList = res.data
if(patientRegisterId){
if (patientRegisterId) {
return postapi('/api/app/QueueRegister/GetQueueRegisterByPatientRegisterId', { patientRegisterId })
}else{
reject('patientRegisterId 无值')
} else {
reject('patientRegisterId 无值')
}
} else {
reject(res.message)
@ -202,7 +208,7 @@ export default {
this.roomsForAsbitem = []
this.curRoomId = ''
postapi('/api/app/QueueRegister/GetRoomListByAsbitemId', {
patientRegisterId:this.refParams.patientRegisterId,
patientRegisterId: this.refParams.patientRegisterId,
asbitemId: this.curAsbitemId
}).then(res => {
if (res.code > -1) {
@ -230,7 +236,7 @@ export default {
patientRegisterId: this.refParams.patientRegisterId,
roomId: this.curRoomId
}).then(res => {
if(res.code > -1){
if (res.code > -1) {
this.$message.success({ showClose: true, message: '操作成功!' })
return this.dictInit()
}
@ -239,21 +245,38 @@ export default {
//
btnQueueAuto() {
console.log('this.refParams.patientRegisterId',this.refParams.patientRegisterId)
console.log('this.refParams.patientRegisterId', this.refParams.patientRegisterId)
if (!this.refParams.patientRegisterId) {
this.$message.warning({ showClose: true, message: '未获取到人员信息' })
return
}
}
postapi('/api/app/QueueRegister/AutomaticQueuingRoom', {
patientRegisterId: this.refParams.patientRegisterId
}).then(res => {
if(res.code > -1){
if (res.code > -1) {
this.$message.success({ showClose: true, message: '操作成功!' })
return this.dictInit()
}
})
})
},
//
btnCancelQueue(){
if (!this.refParams.patientRegisterId) {
this.$message.warning({ showClose: true, message: '未获取到人员信息' })
return
}
postapi('/api/app/QueueRegister/DeleteByPatientRegisterId', {
patientRegisterId: this.refParams.patientRegisterId
}).then(res => {
if (res.code > -1) {
this.$message.success({ showClose: true, message: '操作成功!' })
return this.dictInit()
}
})
}
},
//()

55
src/components/report/BtnReport.vue

@ -25,6 +25,9 @@
<div class="listBtn">
<el-button type="primary" class="commonbutton" @click="btnUpReport">上传Web</el-button>
</div>
<div class="listBtn">
<el-button type="primary" class="commonbutton" @click="btnCheckHistory">历次结果</el-button>
</div>
<div class="listBtn">
<download-excel :fields="jsonFields" :fetch="btnExport" type="xls" :name="xlsName">
<el-button type="" class="commonbutton" style="width:100%">人员信息导出</el-button>
@ -67,6 +70,30 @@
</div>
</div>
</el-dialog>
<el-dialog title="历次结果" :visible.sync="dialogVisibleCheckHistory" :close-on-click-modal="false"
width="900px">
<div>
<el-tabs v-model="tabChoosed">
<!---->
<el-tab-pane label="明细结果" name="2">
<CheckDetails :patientRegisterId="dataTransOpts.tableS.patient_register.id" :refParams="{ place: 'doctor' }" />
</el-tab-pane>
<el-tab-pane label="本次图文报告" name="4">
<ImageTextReport :refParams="{ place: 'doctor' }" />
</el-tab-pane>
<!-- <el-tab-pane label="项目对比" name="4">
<SumItemsType :patientId="doctorCheck.prBase.patientId" />
</el-tab-pane> -->
<el-tab-pane label="横向对比" name="5">
<SumItems :patientId="dataTransOpts.tableS.patient_register.id" :refParams="{ place: 'doctor' }" />
</el-tab-pane>
<el-tab-pane label="历次综述" name="6">
<SumHistory :patientId="dataTransOpts.tableS.patient_register.id" :refParams="{ place: 'doctor' }" />
</el-tab-pane>
</el-tabs>
</div>
</el-dialog>
</div>
</div>
</template>
@ -74,17 +101,32 @@
import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayExistObj, deepCopy, parseID,dddw } from "../../utlis/proFunc";
import { arrayExistObj, deepCopy, parseID, dddw } from "../../utlis/proFunc";
import ElProgressOCX from "../report/ElProgressOCX.vue";
//import PatientRegisterList from "../doctorCheck/PatientRegisterList.vue";
import CheckDetails from "../../components/sumDoctorCheck/CheckDetails.vue";
import SumItemsType from "../../components/sumDoctorCheck/SumItemsType.vue";
import SumItems from "../../components/sumDoctorCheck/SumItems.vue";
import SumHistory from "../../components/sumDoctorCheck/SumHistory.vue";
import OccDisease from "../../components/occDisease/OccDisease.vue"
import ImageTextReport from "../../components/occDisease/ImageTextReport.vue";
export default {
components: {
//PatientRegisterList,
ElProgressOCX
ElProgressOCX,
CheckDetails,
SumItemsType,
SumItems,
SumHistory,
OccDisease,
ImageTextReport
},
data() {
return {
dialogGetReport: false,
dialogVisibleCheckHistory: false,
tabChoosed:'2',
receiveReport: {
patientRegisterIds: [
],
@ -212,6 +254,13 @@ export default {
this.elProgress.display = false;
},
//
btnCheckHistory() {
if (!this.dataTransOpts.tableS.patient_register.id) return;
this.dialogVisibleCheckHistory = true;
this.dataTransOpts.refresh.sumDoctor.M++ //
this.dataTransOpts.plus.OccDisease++ //
},
exportZip() {
if (!this.$peisAPI) {
@ -694,7 +743,7 @@ export default {
//if (e.personnelTypeId) e.personnelTypeId = dddw(this.dict.personnelType, "id", e.personnelTypeId, "displayName")
if (e.isVip) e.isVip = e.isVip == "Y" ? "是" : "否"
if (e.isUpload) e.isUpload = e.isUpload == "Y" ? "是" : "否"
})
this.xlsName = '人员列表' + moment(new Date()).format('yyyyMMDDHHmmss') + '.xls'
return tableDatas;

25
src/components/report/PatientRegisterListNobtn.vue

@ -110,27 +110,26 @@ export default {
dragCol: [
{ label: "勾选", type: "selection", minWidth: 40, align: "center" },
{ label: "序号", prop: "sn", minWidth: 40, align: "center" },
{ label: "体检进度", prop: "completeFlag", minWidth: 90, align: "center" },
{ label: "体检日期", prop: "medicalStartDate", minWidth: 100, align: "center" },
{ label: "打印", prop: "isReportPrint", minWidth: 60, align: "center" },
{ label: "领取", prop: "isReceiveReport", minWidth: 60, align: "center" },
{ label: "预约备单", prop: "isUploadAppoint", minWidth: 90, align: "center" },
{ label: "上传", prop: "isUpload", minWidth: 60, align: "center" },
{ label: "条码号", prop: "patientRegisterNo", minWidth: 150, align: "center" },
{ label: "体检进度", prop: "completeFlag", minWidth: 90, align: "center" },
{ label: "体检日期", prop: "medicalStartDate", minWidth: 100, align: "center" },
{ label: "单位名称", prop: "customerOrgName", minWidth: 180, align: "left", showTooltip: true },
{ label: "部门名称", prop: "departmentName", minWidth: 150, align: "left", showTooltip: true },
{ label: "姓名", prop: "patientName", minWidth: 60, align: "center" },
{ label: "性别", prop: "sexName", minWidth: 60, align: "center" },
{ label: "年龄", prop: "age", minWidth: 60, align: "center" },
{ label: "民族", prop: "nationName", minWidth: 70, align: "center" },
{ label: "身份证号", prop: "idNo", minWidth: 160, align: "center" },
{ label: "条码号", prop: "patientRegisterNo", minWidth: 110, align: "center" },
{ label: "档案号", prop: "patientNo", minWidth: 80, align: "center" },
{ label: "次数", prop: "medicalTimes", minWidth: 60, align: "center" },
{ label: "备注", prop: "remark", minWidth: 150, align: "left" },
{ label: "分组/套餐", prop: "packGroup", minWidth: 150, align: "center" },
{ label: "体检次数", prop: "medicalTimes", minWidth: 90, align: "center" },
{ label: "单位名称", prop: "customerOrgName", minWidth: 180, align: "left", showTooltip: true },
{ label: "部门名称", prop: "departmentName", minWidth: 180, align: "left", showTooltip: true },
{ label: "手机", prop: "mobileTelephone", minWidth: 130, align: "center" },
{ label: "电话", prop: "telephone", minWidth: 130, align: "center" },
{ label: "档案号", prop: "patientNo", minWidth: 80, align: "center" },
{ label: "身份证号", prop: "idNo", minWidth: 160, align: "center" },
{ label: "出生日期", prop: "birthDate", minWidth: 90, align: "center" },
{ label: "婚姻", prop: "maritalStatusName", minWidth: 70, align: "center" },
{ label: "民族", prop: "nationName", minWidth: 70, align: "center" },
{ label: "婚姻", prop: "maritalStatusName", minWidth: 70, align: "center" },
{ label: "地址", prop: "address", minWidth: 400, align: "left", showTooltip: true },
{ label: "体检卡号", prop: "medicalCardNo", minWidth: 90, align: "center" },
{ label: "工卡号", prop: "jobCardNo", minWidth: 90, align: "center" },
@ -150,6 +149,8 @@ export default {
{ label: "领取人", prop: "reportReceiveName", minWidth: 70, align: "center" },
{ label: "领取时间", prop: "reportReceiveDate", minWidth: 140, align: "center" },
{ label: "锁住", prop: "isLock", minWidth: 60, align: "center" },
{ label: "预约备单", prop: "isUploadAppoint", minWidth: 90, align: "center" },
{ label: "上传", prop: "isUpload", minWidth: 60, align: "center" },
],
};

36
src/components/sumDoctorCheck/CheckDetails.vue

@ -1,5 +1,5 @@
<template>
<div v-if="details_disp_mode=='0'" :style="'overflow: scroll;width:100%;height:' + divHeight + 'px;'">
<div v-if="details_disp_mode == '0'" :style="'overflow: scroll;width:100%;height:' + divHeight + 'px;'">
<table width="100%" style="font-size:14px;">
<tbody v-for="(item, index) of tableData" :key="index">
<tr height="30">
@ -8,10 +8,11 @@
<tr>
<table v-for="(item2, index2) in item.asbitems" :key="index + '-' + index2" width="100%" border="1"
cellspacing="0" bordercolor="#909399" style="border-collapse:collapse;">
<tr height="24" >
<tr height="24">
<td width="200" class="tdCellClass">{{ item2.asbitemNames }}</td>
<td width="604" class="tdCellClass" colspan="7">{{ '检查日期:' + item2.checkDate.substring(0, 10) + ' 检查医生:' + item2.checkDoctorName
}}</td>
<td width="604" class="tdCellClass" colspan="7">{{ '检查日期:' + item2.checkDate.substring(0, 10) + ' 检查医生:' +
item2.checkDoctorName
}}</td>
</tr>
<tr style="text-align: center;" height="24">
@ -26,9 +27,12 @@
</tr>
<tr height="24" v-for="(item3, index3) in item2.items" :key="index + '-' + index2 + '-' + index3">
<td class="tdCellClass">{{ item3.itemName }}</td>
<td :style="`color: ${getColorStr(item3.reportFontColor)};`" class="tdCellClass">{{ item3.itemResult }}</td>
<td :style="`color: ${getColorStr(item3.previousReportFontColor)};`" class="tdCellClass">{{ item3.previousItemResult }}</td>
<td :style="`color: ${getColorStr(item3.previousTwoReportFontColor)};`" class="tdCellClass">{{ item3.previousTwoItemResult }}</td>
<td :style="`color: ${getColorStr(item3.reportFontColor)};`" class="tdCellClass">{{ item3.itemResult }}
</td>
<td :style="`color: ${getColorStr(item3.previousReportFontColor)};`" class="tdCellClass">{{
item3.previousItemResult }}</td>
<td :style="`color: ${getColorStr(item3.previousTwoReportFontColor)};`" class="tdCellClass">{{
item3.previousTwoItemResult }}</td>
<td align="center" class="tdCellClass">{{ item3.referenceRangeValue }}</td>
<td align="center" class="tdCellClass">{{ item3.criticalRangeValue }}</td>
<td align="center" class="tdCellClass">{{ item3.unit }}</td>
@ -111,11 +115,11 @@ export default {
tableData: [],
RegisterCheckList: [],
details: [],
details_disp_mode:'0', // 0 1
details_disp_mode: '0', // 0 1
};
},
created() {
created() {
// ( 0 1 )
postapi('/api/app/SysParmValue/GetSysParmValueBySysParmId', { sysParmId: 'details_disp_mode' })
.then(res => {
@ -166,16 +170,18 @@ export default {
console.log("获取结果明细 CheckDetails", res.data);
if (res.code != -1) {
this.tableData = res.data;
this.tableData.forEach(e => {
e.asbitems.forEach(e1 => {
this.RegisterCheckList.push(e1)
if (res.data && Array.isArray(res.data) && res.data.length > 0) {
this.tableData.forEach(e => {
e.asbitems.forEach(e1 => {
this.RegisterCheckList.push(e1)
});
});
});
this.details = deepCopy(this.RegisterCheckList[0])
this.details = deepCopy(this.RegisterCheckList[0])
}
}
})
.catch((err) => {
this.$message({ type: "error", message: `操作失败,原因:${err}` });
this.$message({ type: "error", message: `获取结果明细 CheckDetails 操作失败,原因:${err}` });
});
},

2
src/components/sumDoctorCheck/SumHistory.vue

@ -86,7 +86,7 @@ export default {
}
})
.catch((err) => {
this.$message({ type: "error", message: `操作失败,原因:${err}` });
this.$message({ type: "error", message: `获取历次综述 SumHistory 操作失败,原因:${err}` });
});
},

4
src/components/sumDoctorCheck/SumItems.vue

@ -125,7 +125,7 @@ export default {
}
})
.catch((err) => {
this.$message({ type: "error", message: `操作失败,原因:${err}` });
this.$message({ type: "error", message: `获取横向对比 SumItems 操作失败,原因:${err}` });
});
},
@ -153,7 +153,7 @@ export default {
}
})
.catch((err) => {
this.$message({ type: "error", message: `操作失败,原因:${err}` });
this.$message({ type: "error", message: `获取横向对比 SumItems 操作失败,原因:${err}` });
});
},

4
src/views/charge/charge.vue

@ -1124,7 +1124,7 @@ export default {
this.$message.warning("收费方式合计收款不可小于应收金额!");
return;
}
let chargeMoney = 0
let chargeMoney = Number(0)
this.chargePays.forEach(e => {
if (e.chargeMoney) {
if (e.payModeId == '01') {
@ -1141,7 +1141,7 @@ export default {
cardRegisterId: e.cardRegisterId,
});
}
chargeMoney += e.chargeMoney
chargeMoney += Number(e.chargeMoney)
}
});

1
src/views/user-list/UserList.vue

@ -92,6 +92,7 @@
min-width="50"
align="center"
></el-table-column>
<el-table-column prop="id" label="编号" min-width="200"></el-table-column>
<el-table-column prop="userName" label="账号" min-width="100">
</el-table-column>
<el-table-column prop="email" label="邮箱" min-width="150">

Loading…
Cancel
Save