6 changed files with 406 additions and 398 deletions
-
164src/components/patientRegister/AsbChargeRequest.vue
-
93src/components/patientRegister/PatientRegisterEdit.vue
-
17src/components/patientRegister/PatientRegisterItem.vue
-
1src/components/report/BtnReport.vue
-
1src/store/index.js
-
528src/views/doctorCheck/unitphysicalexamination.vue
@ -0,0 +1,164 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<div> |
||||
|
<el-tabs v-model="tabChoosed" style="margin-top: 0px;"> |
||||
|
<el-tab-pane label="待收费项目" name="1"> |
||||
|
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id" |
||||
|
height="500" highlight-current-row size="small" @selection-change="handleSelectionChange" |
||||
|
:row-style="{ height: '25px' }"> |
||||
|
<el-table-column type="selection" 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> |
||||
|
</el-tab-pane> |
||||
|
<el-tab-pane label="已收费项目" name="2"> |
||||
|
|
||||
|
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id" |
||||
|
height="180" highlight-current-row size="small" @selection-change="handleSelectionChange" |
||||
|
: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 prop="total" label="金额" min-width="60" align="center" /> |
||||
|
<el-table-column prop="ch" label="收费人员" min-width="80" align="center" /> |
||||
|
<el-table-column prop="ch" label="收费时间" min-width="150" align="center" /> |
||||
|
<el-table-column label="操作" width="150" align="center"> |
||||
|
<template slot-scope="scope"> |
||||
|
<div style="display: flex;justify-content: space-between;"> |
||||
|
<div> |
||||
|
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false" |
||||
|
style="width:80px;">撤消申请</el-button> |
||||
|
</div> |
||||
|
<div> |
||||
|
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false" |
||||
|
style="width:50px;">退费</el-button> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<div style="padding: 10px 0 5px 0;">申请单包含项目</div> |
||||
|
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id" |
||||
|
height="286" highlight-current-row size="small" @selection-change="handleSelectionChange" |
||||
|
: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="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> |
||||
|
|
||||
|
</el-tab-pane> |
||||
|
</el-tabs> |
||||
|
</div> |
||||
|
<!-- 按钮区域 --> |
||||
|
<div style="display: flex; margin-top: 10px; justify-content: space-between;"> |
||||
|
<div></div> |
||||
|
<div style="display: flex;"> |
||||
|
<div style="margin-left: 10px" v-show="tabChoosed == '1'"> |
||||
|
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false">收费申请</el-button> |
||||
|
</div> |
||||
|
<div style="margin-left: 10px"> |
||||
|
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false">关闭</el-button> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { mapState } from "vuex"; |
||||
|
import { getapi, postapi, putapi, deletapi } from "@/api/api"; |
||||
|
import { dddw, arrayExistObj, deepCopy } from "../../utlis/proFunc"; |
||||
|
|
||||
|
// import |
||||
|
export default { |
||||
|
props: ["patientRegister"], |
||||
|
data() { |
||||
|
return { |
||||
|
tabChoosed: '1', |
||||
|
tableData: [], //组合项目数据 过滤后显示的数据 |
||||
|
spanRow: [], //{ startRow: 0, endRow: 0 } 合并行 |
||||
|
tableDataAll: [], //组合项目数据(该客户所有数据) |
||||
|
selectedData: [], //选中的组合项目 |
||||
|
finalSelected: [], //取消合并时与selectedData一致,合并时要追 其他未勾选合并的项目 |
||||
|
}; |
||||
|
}, |
||||
|
|
||||
|
created() { }, |
||||
|
|
||||
|
mounted() { |
||||
|
this.initData(this.patientRegister.id); |
||||
|
}, |
||||
|
computed: { |
||||
|
...mapState(["dict", "dataTransOpts", "dialogWin"]), |
||||
|
}, |
||||
|
methods: { |
||||
|
|
||||
|
initData() { |
||||
|
// |
||||
|
}, |
||||
|
|
||||
|
handleSelectionChange(v) { |
||||
|
this.selectedData = v; |
||||
|
}, |
||||
|
|
||||
|
btnSubmit(mergeType) { |
||||
|
let registerCheckIds = []; |
||||
|
let count = (mergeType == '+') ? 2 : 1 |
||||
|
if (this.selectedData.length < count) { |
||||
|
this.$message.warning({ showClose: true, message: `请至少勾选 ${count} 个以上要${mergeType == '+' ? '合并' : '取消合并'}的检查项目!` }); |
||||
|
return; |
||||
|
} |
||||
|
this.selectedData.forEach(e => { |
||||
|
registerCheckIds.push(e.registerCheckId) |
||||
|
}); |
||||
|
|
||||
|
if (mergeType == '+') { |
||||
|
postapi("/api/app/registerasbitem/MergeRegisterAsbitem", { registerCheckIds }).then( |
||||
|
(res) => { |
||||
|
if (res.code != -1) { |
||||
|
console.log("操作成功!"); |
||||
|
this.getAsbItemList(this.id); |
||||
|
} |
||||
|
} |
||||
|
); |
||||
|
} else { |
||||
|
postapi("/api/app/registerasbitem/cancelmergeregisterasbitem", { registerCheckIds }).then( |
||||
|
(res) => { |
||||
|
if (res.code != -1) { |
||||
|
console.log("操作成功!"); |
||||
|
this.getAsbItemList(this.id); |
||||
|
} |
||||
|
} |
||||
|
); |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
//监听事件 |
||||
|
watch: { |
||||
|
// |
||||
|
"dataTransOpts.refresh.charge.S": { |
||||
|
// immediate: true, // 立即执行 |
||||
|
// // deep: true, // 深度监听复杂类型内变化 |
||||
|
handler(newVal, oldVal) { |
||||
|
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id) |
||||
|
if (newVal != oldVal) this.initData(this.patientRegister.id) |
||||
|
} |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
<style scoped> |
||||
|
@import "../../assets/css/global_input.css"; |
||||
|
@import "../../assets/css/global_table.css"; |
||||
|
@import "../../assets/css/global.css"; |
||||
|
</style> |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue