gatherStatistics.vue 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709
  1. <template>
  2. <div>
  3. <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
  4. <div>
  5. <el-select size="small" v-model="item_type" placeholder="请选择"
  6. style="width:150px;margin-left:10px;" @change="changeItem">
  7. <el-option
  8. label="全部"
  9. value="0">
  10. </el-option>
  11. <el-option
  12. v-for="(item,index) in items"
  13. :key="index"
  14. :label="item.name"
  15. :value="item.id">
  16. </el-option>
  17. </el-select>
  18. <el-input
  19. size="small"
  20. style="width: 150px"
  21. v-model="keywords"
  22. class="filter-item"
  23. placeholder="请输入项目名称"
  24. />
  25. <el-button
  26. size="small"
  27. style="margin: 0 10px"
  28. class="filter-item"
  29. type="primary"
  30. @click="searchAction"
  31. >搜索
  32. </el-button>
  33. <el-date-picker
  34. v-model="chargeDate"
  35. type="daterange"
  36. value-format="yyyy-MM-dd"
  37. range-separator="至"
  38. start-placeholder="开始日期"
  39. @change="changeDate"
  40. end-placeholder="结束日期">
  41. </el-date-picker>
  42. <el-button type="primary" size="small" @click="toPrint">打印</el-button>
  43. <el-button type="primary" size="small" @click="toPrintInvoice">发票打印</el-button>
  44. </div>
  45. <div>
  46. </div>
  47. </div>
  48. <el-table :data="list" border :row-style="{ color: '#303133' }" ref="table"
  49. :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
  50. max-height="600"
  51. v-loading="detail_loading"
  52. highlight-current-row>
  53. <el-table-column type="index" label="序号" width="60px" align="center">
  54. <template slot-scope="scope">{{scope.row.index}}</template>
  55. </el-table-column>
  56. <el-table-column align="center" prop="name" label="处方日期">
  57. <template slot-scope="scope">
  58. <span v-if="scope.row.record_date > 0">{{getTimes(scope.row.record_date)}} </span>
  59. </template>
  60. </el-table-column>
  61. <el-table-column align="center" prop="name" label="费用分类">
  62. <template slot-scope="scope">
  63. {{ scope.row.med_chrgitm_type }}
  64. </template>
  65. </el-table-column>
  66. <el-table-column align="center" prop="name" label="项目名称">
  67. <template slot-scope="scope">
  68. <span>{{scope.row.name}}</span>
  69. </template>
  70. </el-table-column>
  71. <el-table-column align="center" prop="name" label="规格型号">
  72. <template slot-scope="scope">
  73. {{ scope.row.spec }}
  74. </template>
  75. </el-table-column>
  76. <el-table-column align="center" prop="name" label="数量">
  77. <template slot-scope="scope">
  78. {{ scope.row.count }}{{ scope.row.unit }}
  79. </template>
  80. </el-table-column>
  81. <el-table-column align="center" prop="name" label="单价">
  82. <template slot-scope="scope">
  83. {{scope.row.price}}
  84. </template>
  85. </el-table-column>
  86. <el-table-column align="center" prop="name" label="金额">
  87. <template slot-scope="scope">
  88. <span v-if="scope.row.is_total == 1">{{ scope.row.total }}</span>
  89. <span v-if="scope.row.is_total == 2">{{ (scope.row.price * scope.row.count).toFixed(2) }}</span>
  90. </template>
  91. </el-table-column>
  92. <el-table-column align="center" prop="name" label="医保类别">
  93. <template slot-scope="scope">
  94. <span v-if="scope.row.chrgitm_lv== '01'">甲类</span>
  95. <span v-if="scope.row.chrgitm_lv== '02'">乙类</span>
  96. <span v-if="scope.row.chrgitm_lv== '03'">自费</span>
  97. </template>
  98. </el-table-column>
  99. </el-table>
  100. <div>
  101. <div class="listInfo">
  102. <div>西药:</div>
  103. <div>中成药:{{chineseTraditionalMedicineCostTotal}}</div>
  104. <div>中草药:</div>
  105. </div>
  106. <div class="listInfo">
  107. <div>检查费:{{checkCostTotal}}</div>
  108. <div>输氧费:</div>
  109. <div>手术费:</div>
  110. </div>
  111. <div class="listInfo">
  112. <div>化验费:{{laboratoryCostTotal}}</div>
  113. <div>输血费:</div>
  114. <div>诊断费:{{zhenChaCostTotal}}</div>
  115. </div>
  116. <div class="listInfo">
  117. <div>治疗费:</div>
  118. <div>护理费:</div>
  119. <div>床位费:{{bedCostTotal}}</div>
  120. </div>
  121. <div class="listInfo" style="margin-bottom: 20px;">
  122. <div>麻醉费:</div>
  123. <div>材料费:{{materialCostTotal}}</div>
  124. <div>其他:{{otherCostTotal}}</div>
  125. </div>
  126. </div>
  127. </div>
  128. </template>
  129. <script>
  130. import BreadCrumb from '@/xt_pages/components/bread-crumb'
  131. import { getGatherDetailList } from '@/api/his/his_tools'
  132. import { uParseTime } from '@/utils/tools'
  133. const moment = require('moment')
  134. export default {
  135. components: {
  136. BreadCrumb
  137. },
  138. props: {
  139. patient_id: {
  140. type: Number,
  141. default: 0
  142. }
  143. },
  144. data() {
  145. return {
  146. detail_loading: false,
  147. tempArr: [],
  148. pos: 0,
  149. search_input: '',
  150. sameRowArr: [],
  151. keywords: '',
  152. tableData: [],
  153. tableList:[],
  154. chargeDate: [moment(new Date()).add('year', 0).format('YYYY-MM-DD'), moment(new Date()).add('year', 0).format('YYYY-MM-DD')],
  155. item_type: '0',
  156. items: [
  157. { id: 1, name: '药品' },
  158. { id: 3, name: '耗材' },
  159. { id: 2, name: '项目' }
  160. ],
  161. list:[],
  162. his_patient:{},
  163. hisDepatment:[],
  164. chineseTraditionalMedicineCostTotal:0,
  165. checkCostTotal:0,
  166. laboratoryCostTotal:0,
  167. zhenChaCostTotal:0,
  168. bedCostTotal:0,
  169. materialCostTotal:0,
  170. otherCostTotal:0,
  171. }
  172. },
  173. methods: {
  174. searchAction(){
  175. this.getGatherDetailList()
  176. },
  177. changeDate() {
  178. this.getGatherDetailList()
  179. },
  180. changeItem() {
  181. this.getGatherDetailList()
  182. },
  183. getGatherDetailList() {
  184. let start_time = this.chargeDate[0]
  185. let end_time = this.chargeDate[1]
  186. let params = {
  187. patient_id:this.patient_id,
  188. start_time: start_time,
  189. end_time: end_time,
  190. type: this.item_type,
  191. keyword: this.keywords
  192. }
  193. getGatherDetailList(params).then(response=>{
  194. if (response.data.state == 0) {
  195. this.$message.error(response.data.msg)
  196. return false
  197. } else {
  198. this.order = response.data.data.order
  199. this.patient = response.data.data.patient
  200. this.admin = response.data.data.admin_info
  201. this.his_hospital = response.data.data.his_hospital
  202. var order_info = response.data.data.order_info
  203. console.log(" 汇总order_info2332322323232323",order_info)
  204. if(order_info!=undefined&&order_info ==null){
  205. this.list = []
  206. return
  207. }
  208. this.his_patient = response.data.data.his_patient
  209. this.hisDepatment = response.data.data.hisDepatment
  210. this.list = []
  211. if(this.$store.getters.xt_user.org_id == 10215 || this.$store.getters.xt_user.org_id == 0){
  212. //获取所有项目类型进行去重
  213. let med_chrgitm_types = []
  214. for (let i = 0; i < order_info.length; i++) {
  215. med_chrgitm_types.push(order_info[i].med_chrgitm_type)
  216. }
  217. const obj = {}
  218. med_chrgitm_types = med_chrgitm_types.reduce((cur, next) => {
  219. obj[next] ? '' : obj[next] = true && cur.push(next)
  220. return cur
  221. }, []) // 设置cur默认类型为数组,并且初始值为空的数组
  222. let tempOrderInfo = []
  223. console.log("med_chrgitm_types3323232323232233",med_chrgitm_types)
  224. for (let i = 0; i < med_chrgitm_types.length; i++) {
  225. let obj = {
  226. total: 0,
  227. details: [],
  228. is_total:0,
  229. }
  230. let tempDetails = []
  231. for (let b = 0; b < order_info.length; b++) {
  232. if (med_chrgitm_types[i] == order_info[b].med_chrgitm_type) {
  233. tempDetails.push(order_info[b])
  234. }
  235. }
  236. obj.details = this.setNewData(tempDetails)
  237. this.list = []
  238. this.list = this.list.concat(obj.details)
  239. for(let i=0;i<this.list.length;i++){
  240. if(this.list[i].is_total == 1){
  241. this.list[i].index = "合计"
  242. }else{
  243. this.list[i].index = i+1
  244. }
  245. }
  246. }
  247. let newobj = {}
  248. newobj['total'] = this.order.medfee_sumamt
  249. newobj['is_total'] = 1
  250. this.list = []
  251. this.list.push(newobj)
  252. var new_arr = []
  253. if(this.keywords!=""){
  254. for(let i=0;i<this.list.length;i++){
  255. if(this.list[i].is_total == 2){
  256. if(this.list[i].name.indexOf(this.keywords)>-1){
  257. new_arr.push(this.list[i])
  258. }
  259. }
  260. }
  261. var new_arr_two = []
  262. for(let i=0;i<tempDetails.length;i++){
  263. if(tempDetails[i].advice_id >0){
  264. tempDetails[i].name = tempDetails[i].advice.advice_name
  265. }
  266. if(tempDetails[i].project_id > 0){
  267. if(tempDetails[i].type == 2 ){
  268. tempDetails[i].name = tempDetails[i].project.project_name
  269. }
  270. if(tempDetails[i].type == 3){
  271. tempDetails[i].name = tempDetails[i].good_info.good_name
  272. }
  273. }
  274. if(tempDetails[i].name.indexOf(this.keywords) > -1){
  275. new_arr_two.push(tempDetails[i])
  276. }
  277. }
  278. this.list = []
  279. this.list = new_arr
  280. obj.details = []
  281. obj.details = this.setNewData(new_arr_two)
  282. obj.total = this.getTotal(obj.details)
  283. obj.details.push({
  284. total: obj.total,
  285. is_total: 1,
  286. })
  287. for(let i=0;i<obj.details.length;i++){
  288. if(obj.details[i].is_total == 1){
  289. obj.details[i].index = "合计"
  290. }else{
  291. obj.details[i].index = i+1
  292. }
  293. }
  294. this.list = obj.details
  295. }
  296. }else{
  297. //获取所有项目类型进行去重
  298. let med_chrgitm_types = []
  299. if(order_info!=undefined && order_info.length > 0){
  300. for (let i = 0; i < order_info.length; i++) {
  301. med_chrgitm_types.push(order_info[i].med_chrgitm_type)
  302. }
  303. }
  304. const obj = {}
  305. med_chrgitm_types = med_chrgitm_types.reduce((cur, next) => {
  306. obj[next] ? '' : obj[next] = true && cur.push(next)
  307. return cur
  308. }, []) // 设置cur默认类型为数组,并且初始值为空的数组
  309. let tempOrderInfo = []
  310. console.log("med_chrgitm_type323223322323233223",med_chrgitm_types)
  311. for (let i = 0; i < med_chrgitm_types.length; i++) {
  312. let obj = {
  313. total: 0,
  314. details: []
  315. }
  316. let tempDetails = []
  317. for (let b = 0; b < order_info.length; b++) {
  318. if (med_chrgitm_types[i] == order_info[b].med_chrgitm_type) {
  319. tempDetails.push(order_info[b])
  320. }
  321. }
  322. console.log("tempDetails2332323232",tempDetails)
  323. obj.details = this.setNewData(tempDetails)
  324. console.log("2332233232322323",obj.details)
  325. obj.total = this.getTotal(obj.details)
  326. obj.details.push({
  327. total: obj.total,
  328. is_total: 1,
  329. })
  330. this.list = []
  331. this.list = this.list.concat(obj.details)
  332. for(let i=0;i<this.list.length;i++){
  333. if(this.list[i].is_total == 1){
  334. this.list[i].index = "合计"
  335. }else{
  336. this.list[i].index = i+1
  337. }
  338. }
  339. console.log("list2323223232323",this.list)
  340. var new_arr = []
  341. if(this.keywords!=""){
  342. for(let i=0;i<this.list.length;i++){
  343. if(this.list[i].is_total == 2){
  344. if(this.list[i].name.indexOf(this.keywords)>-1){
  345. new_arr.push(this.list[i])
  346. }
  347. }
  348. }
  349. var new_arr_two = []
  350. for(let i=0;i<tempDetails.length;i++){
  351. if(tempDetails[i].advice_id >0){
  352. tempDetails[i].name = tempDetails[i].advice.advice_name
  353. }
  354. if(tempDetails[i].project_id > 0){
  355. if(tempDetails[i].type == 2 ){
  356. tempDetails[i].name = tempDetails[i].project.project_name
  357. }
  358. if(tempDetails[i].type == 3){
  359. tempDetails[i].name = tempDetails[i].good_info.good_name
  360. }
  361. }
  362. if(tempDetails[i].name.indexOf(this.keywords) > -1){
  363. new_arr_two.push(tempDetails[i])
  364. }
  365. }
  366. this.list = []
  367. this.list = new_arr
  368. obj.details = []
  369. obj.details = this.setNewData(new_arr_two)
  370. obj.total = this.getTotal(obj.details)
  371. obj.details.push({
  372. total: obj.total,
  373. is_total: 1,
  374. })
  375. for(let i=0;i<obj.details.length;i++){
  376. if(obj.details[i].is_total == 1){
  377. obj.details[i].index = "合计"
  378. }else{
  379. obj.details[i].index = i+1
  380. }
  381. }
  382. console.log("obj23323232323232323232",obj.details)
  383. this.list = obj.details
  384. }
  385. }
  386. }
  387. }
  388. })
  389. },
  390. getAdviceName(id){
  391. var drug_name = ""
  392. for(let i= 0;i<this.tableData.length;i++){
  393. if(id == this.tableData[i].advice_id){
  394. drug_name = this.tableData[i].advice.advice_name
  395. }
  396. }
  397. return drug_name
  398. },
  399. getProjectName(id){
  400. var project_name = ""
  401. for(let i=0;i<this.tableData.length;i++){
  402. if(id == this.tableData[i].project_id){
  403. project_name = this.tableData[i].project.project.project_name
  404. }
  405. }
  406. return project_name
  407. },
  408. setNewData(details) {
  409. // console.log("detail23332323232322332332322323232332",details)
  410. let drug_ids = []
  411. let project_ids = []
  412. for (let i = 0; i < details.length; i++) {
  413. if (details[i].advice && details[i].advice.id > 0 && details[i].advice.prescription && details[i].advice.prescription.type == 1) { //药品
  414. let obj = {
  415. id: details[i].advice.drug_id,
  416. price: details[i].advice.price,
  417. record_date:details[i].advice.advice_date
  418. }
  419. drug_ids.push(obj)
  420. } else if (details[i].project && details[i].project.id > 0 && details[i].project.prescription && details[i].project.prescription.type == 2) { //项目
  421. let obj = {
  422. id: details[i].project.project_id,
  423. price: details[i].project.price,
  424. record_date:details[i].project.record_date
  425. }
  426. project_ids.push(obj)
  427. }
  428. }
  429. let new_drug_ids = this.unique(drug_ids)
  430. let new_project_ids = this.unique(project_ids)
  431. let list = []
  432. if (new_drug_ids.length > 0 && new_project_ids.length == 0) {
  433. for (let i = 0; i < new_drug_ids.length; i++) {
  434. let obj = {}
  435. let count = 0
  436. for (let a = 0; a < details.length; a++) {
  437. if (new_drug_ids[i].id == details[a].advice.drug_id && new_drug_ids[i].price == details[a].advice.price) {
  438. obj['name'] = details[a].advice.advice_name
  439. obj['spec'] = details[a].advice.drug.dose + details[a].advice.drug.dose_unit+"*" + details[a].advice.drug.min_number + details[a].advice.drug.min_unit+"/"+ details[a].advice.drug.max_unit
  440. obj['unit'] = details[a].advice.drug.min_unit
  441. obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
  442. obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
  443. obj['price'] = parseFloat(details[a].pric)
  444. obj['is_total'] = 2
  445. obj['record_date'] = details[a].advice.record_date
  446. obj['chrgitm_lv'] = details[a].chrgitm_lv
  447. count = count + details[a].cnt
  448. }
  449. }
  450. obj['count'] = count
  451. list.push(obj)
  452. }
  453. }
  454. if (new_drug_ids.length == 0 && new_project_ids.length > 0) {
  455. for (let i = 0; i < new_project_ids.length; i++) {
  456. let obj = {}
  457. let count = 0
  458. for (let a = 0; a < details.length; a++) {
  459. if (new_project_ids[i].id == details[a].project.project_id && new_project_ids[i].price == details[a].project.price) {
  460. if( details[a].project.type == 2){
  461. obj['name'] = details[a].project.project.project_name
  462. obj['spec'] = details[a].project.project.project_name
  463. obj['unit'] = details[a].project.project.unit
  464. obj['record_date'] = details[a].project.record_date
  465. }else if(details[a].project.type == 3){
  466. obj['name'] = details[a].project.good_info.good_name
  467. obj['spec'] = details[a].project.good_info.specification_name
  468. obj['unit'] = details[a].project.good_info.packing_unit
  469. obj['record_date'] = details[a].project.record_date
  470. }
  471. obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
  472. obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
  473. obj['price'] = parseFloat(details[a].pric)
  474. obj['chrgitm_lv'] = details[a].chrgitm_lv
  475. obj['is_total'] = 2
  476. count = count + details[a].cnt
  477. }
  478. }
  479. obj['count'] = count
  480. list.push(obj)
  481. }
  482. }
  483. if (new_drug_ids.length > 0 && new_project_ids.length > 0) {
  484. for (let i = 0; i < new_drug_ids.length; i++) {
  485. let obj = {}
  486. let count = 0
  487. for (let a = 0; a < details.length; a++) {
  488. if (new_drug_ids[i].id == details[a].advice.drug_id && new_drug_ids[i].price == details[a].advice.price) {
  489. obj['name'] = details[a].advice.advice_name
  490. obj['spec'] = details[a].advice.drug.dose + details[a].advice.drug.dose_unit+"*" + details[a].advice.drug.min_number + details[a].advice.drug.min_unit+"/"+ details[a].advice.drug.max_unit
  491. obj['unit'] = details[a].advice.drug.min_unit
  492. obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
  493. obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
  494. obj['price'] = parseFloat(details[a].pric)
  495. obj['is_total'] = 2
  496. obj['record_date'] = details[a].advice.record_date
  497. obj['chrgitm_lv'] = details[a].chrgitm_lv
  498. count = count + details[a].cnt
  499. }
  500. }
  501. obj['count'] = count
  502. list.push(obj)
  503. }
  504. for (let i = 0; i < new_project_ids.length; i++) {
  505. let obj = {}
  506. let count = 0
  507. for (let a = 0; a < details.length; a++) {
  508. if (new_project_ids[i].id == details[a].project.project_id && new_project_ids[i].price == details[a].project.price) {
  509. if( details[a].project.type == 2){
  510. obj['name'] = details[a].project.project.project_name
  511. obj['spec'] = ''
  512. obj['unit'] = details[a].project.project.unit
  513. }else if(details[a].project.type == 3){
  514. obj['name'] = details[a].project.good_info.good_name
  515. obj['spec'] = ''
  516. obj['unit'] = details[a].project.good_info.packing_unit
  517. }
  518. obj['medicine_insurance_kind'] = this.getMedicineInsuranceType(details[a].chrgitm_lv)
  519. obj['med_chrgitm_type'] = this.getType(details[a].med_chrgitm_type)
  520. obj['price'] = parseFloat(details[a].pric)
  521. obj['is_total'] = 2
  522. obj['record_date'] = details[a].project.record_date
  523. obj['chrgitm_lv'] = details[a].chrgitm_lv
  524. count = count + details[a].cnt
  525. }
  526. }
  527. obj['count'] = count
  528. list.push(obj)
  529. }
  530. }
  531. return list
  532. },
  533. getMedicineInsuranceType(type) {
  534. switch (type) {
  535. case "01":
  536. return '甲类'
  537. break
  538. case "02":
  539. return '乙类'
  540. break
  541. case "03":
  542. return '自费'
  543. break
  544. }
  545. },
  546. getType(med_chrgitm_type){
  547. switch (med_chrgitm_type) {
  548. case '01':
  549. return '床位费'
  550. break
  551. case '02':
  552. return '诊察费'
  553. break
  554. case '03':
  555. return '检查费'
  556. break
  557. case '04':
  558. return '化验费'
  559. break
  560. case '05':
  561. return '治疗费'
  562. break
  563. case '06':
  564. return '手术费'
  565. break
  566. case '07':
  567. return '护理费'
  568. break
  569. case '08':
  570. return '材料费'
  571. break
  572. case '09':
  573. return '西药费'
  574. break
  575. case '10':
  576. return '中药饮片费'
  577. break
  578. case '11':
  579. return '中成药费'
  580. break
  581. case '12':
  582. return '一般诊疗费'
  583. break
  584. case '13':
  585. return '挂号费'
  586. break
  587. case '14':
  588. return '其他费'
  589. break
  590. }
  591. },
  592. unique(array) {
  593. // res用来存储结果
  594. var res = []
  595. for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
  596. for (var j = 0, resLen = res.length; j < resLen; j++) {
  597. if (array[i].id === res[j].id && array[i].price === res[j].price) {
  598. break
  599. }
  600. }
  601. // 如果array[i]是唯一的,那么执行完循环,j等于resLen
  602. if (j === resLen) {
  603. res.push(array[i])
  604. }
  605. }
  606. return res
  607. },
  608. getTotal:function(items){
  609. let total = 0
  610. for(let i = 0; i < items.length; i++){
  611. total = Number(total) + Number((parseFloat(items[i].count) * parseFloat(items[i].price)).toFixed(2))
  612. }
  613. return total.toFixed(2)
  614. },
  615. getTimes(time) {
  616. if(time < 0){
  617. return ""
  618. }else{
  619. return uParseTime(time, '{y}-{m}-{d}')
  620. }
  621. },
  622. toPrint(){
  623. this.$router.push({path:"/hisTool/gatherPrint?patient_id="+this.patient_id+"&start_time="+this.chargeDate[0]+"&end_time="+this.chargeDate[1]+"&type="+this.item_type +"&keyword="+this.keywords})
  624. },
  625. toPrintInvoice(){
  626. this.$router.push({path:"/hisTool/gatherPrintInvoice?patient_id="+this.patient_id+"&start_time="+this.chargeDate[0]+"&end_time="+this.chargeDate[1]+"&type="+this.item_type +"&keyword="+this.keywords})
  627. }
  628. },
  629. created() {
  630. this.getGatherDetailList()
  631. },
  632. watch:{
  633. "patient_id":function(){
  634. this.patient_id = this.patient_id
  635. this.getGatherDetailList()
  636. }
  637. }
  638. }
  639. </script>
  640. <style lang="scss" scoped>
  641. .listInfo{
  642. display: flex;
  643. justify-content: space-around;
  644. div{
  645. width: 200px;
  646. }
  647. }
  648. </style>