123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185 |
- <template>
- <div class="main-contain">
- <div class="position">
- <bread-crumb :crumbs="crumbs"></bread-crumb>
- <template>
- <el-button
- :loading="loading"
- size="small"
- icon="el-icon-printer"
- @click="printThisPage"
- type="primary"
- >打印</el-button
- >
- </template>
- </div>
- <div class="app-container" style="min-height:0;">
- <el-container class="newContainer">
- <div style="width:270px;margin-right:20px;">
- <div class="cell clearfix" style="margin-bottom:10px;">
- <el-input size="small" @keyup.enter.native='searchAction' v-model.trim="search_input" class="filter-item"/>
- <el-button size="small" class="filter-item" type="primary" @click="searchAction">搜索</el-button>
- </div>
- <el-table ref="tab" @row-click="changePatient" highlight-current-row :data="tableData" height="480" border style="width: 100%">
- <el-table-column prop="date" label="患者">
- <template slot-scope="scope">
- {{ scope.row.patient.name }}
- </template>
- </el-table-column>
- <el-table-column prop="name" label="透析号">
- <template slot-scope="scope">
- {{ scope.row.patient.dialysis_no }}
- </template>
- </el-table-column>
- </el-table>
- </div>
-
- <div class='dialysisPage' style="flex: 1;height: calc(100vh - 178px);overflow-x:auto;::-webkit-scrollbar:height:15px">
- <printOne v-bind:childResponse="childResponse"></printOne>
- </div>
- </el-container>
- </div>
- </div>
- </template>
-
- <script>
-
- import {
- getDialysisRecordInitData,
- getDialysisSchedules
- } from "@/api/dialysis_record";
- import { parseTime } from "@/utils";
- import { getDialysisRecord } from "@/api/dialysis";
- import { getDataConfig } from "@/utils/data";
- import { jsGetAge, uParseTime } from "@/utils/tools";
- // import LabelBox from "./printItem/LabelBox";
- import BreadCrumb from "@/xt_pages/components/bread-crumb";
- import print from "print-js";
- import printOne from "./template/printOne"
- export default {
- name: "dialysisPrintOrder",
- components: {
- BreadCrumb,
- printOne
- },
- data() {
- return {
- crumbs: [
- { path: false, name: "透析管理" },
- { path: false, name: "打印单" }
- ],
- childResponse: {},
- operators: [],
- adminUser: [],
- check: {},
- dialysisOrder: {
- DeviceNumber: []
- },
- operatorMaps: {},
- complications: [
- "低血压",
- "高血压",
- "心律失常",
- "头晕",
- "头痛",
- "呕吐",
- "抽搐",
- "出血",
- "心衰",
- "腹痛"
- ],
- jilurow: 0,
- advice_jilurow: 0,
- loading: false,
- orgname: "",
- patientInfo_gender_1: false,
- patientInfo_gender_2: false,
- patientInfo_source_2: false,
- patientInfo_source_1: false,
- modeOptions: {},
- replacementWays: [],
- perfusionApparatus: [],
- anticoagulantsConfit: {},
- bloodAccessParOpera: {},
- dialysateFormulationOptions: {},
-
- queryParams: {
- xtdate: "",
- xtno: ""
- },
- patientInfo: {
- birth: "",
- age: "",
- DialysisSchedule: {
- device_number: { number: "" },
- device_zone: { name: "" }
- },
- gender: 0
- },
- predialysis: {
- score: "",
- internal_fistula: "",
- internal_fistula_skin: "",
- catheter: "",
- blood_access_part_opera_name: ""
- },
- afterdialysis: {
- complications_index: ""
- },
- prescription: {
- dialysate_formulation_name: "",
- device: {}
- },
- advices: [],
- users: [],
- monitors: [],
- summary: {},
- receiverTreatmentAccess: {},
- org_template_info: {},
-
- doctor_advices: [],
- advice_groups: [],
-
- AlPanel: {
- id: 0,
- name: "",
- type: 1,
- shouji: 2,
- weichi: 2,
- zongliang: 2,
- gaimingcheng: -1,
- gaijiliang: -1,
- shouji_unit: "mg",
- weichi_unit: "mg/h",
- zongliang_unit: "mg",
- gaimingcheng_unit: "",
- gaijiliang_unit: ""
- },
-
-
- //
- tableData: [],
- selected_date: new Date(),
- // search_input 和 search_keyword,使输入关键字时不会经常刷新 filtedSchedules
- search_keyword: '', // 确定用于搜索的关键字
- search_input: '', // 输入中的关键字
- patient_state:[
- {value: 0,label: '全部'},
- {value: 1,label: '已签到'},
- {value: 2,label: '未签到'},
- {value: 3,label: '已上机'},
- {value: 4,label: '已下机'},
- ],
- patientStateVal: 0,
- treat_state:[
- {value: 0,label: '全部'},
- {value: 1,label: '待开处方'},
- {value: 2,label: '待开小结'},
- ],
- treatStateVal: 0,
- schedule_options:[
- {value: 0,label: '全部'},
- {value: 1,label: '上午'},
- {value: 2,label: '下午'},
- {value: 3,label: '晚上'},
- ],
- scheduleStateVal: 0,
- zone_options:[
- { id: 0, text: '全部' }
- ],
- zoneVal:0,
- };
- },
- methods: {
- getAdminUser(id) {
- if (id == 0) {
- return "";
- }
- if (id == undefined) {
- return "";
- }
- for (let i = 0; i < this.adminUser.length; i++) {
- if (this.adminUser[i].id == id) {
- return this.adminUser[i].name;
- }
- }
- },
- getTime(value, temp) {
- if (value == 0) {
- return "";
- }
- if (value != undefined) {
- return uParseTime(value, temp);
- }
- return "";
- },
- printThisPage() {
- var ptime = Math.round(new Date().getTime() / 1000);
- this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
-
- const style =
- '@media print {#prescription-print{font-size:14px;}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}.infoTitle{display: flex;border-bottom: 2px solid #000;margin-top:10px;line-height: 1px; padding:0 10px;}.infoTitle p{width: 200px;font-size:14px;}.infoMain{display: flex;flex-wrap: wrap;border-bottom: 2px solid #000;padding:0 10px;}.infoMain div{width: 50%;line-height: 24px;}.prescriptionBox{padding:0 10px;min-height:450px;}.Rp{font-size: 22px;font-weight: bold;}.drugsBox{padding-left: 40px;margin-bottom: 10px;margin-bottom: 10px;}.drugsBox div{line-height: 20px;} .drugsOne{line-height: 1px;} .drugsOne span{margin-right: 20px;} .doctorBox{display: flex; justify-content: space-between; padding:0 10px; line-height: 1px; border-bottom: 2px solid #000;} .actionBar{display: flex; justify-content: space-between; line-height: 1px; padding:0 10px;} .actionBar p{width:150px;}}';
- printJS({
- printable: "prescription-print",
- type: "html",
- style: style,
- scanStyles: false
- });
-
- // if (this.org_template_info.template_id == 1) {
- // printJS({
- // printable: "dialysis-print-box",
- // type: "html",
- // style: style,
- // scanStyles: false
- // });
- // }
- },
- printThisOnePage() {
- var ptime = Math.round(new Date().getTime() / 1000);
- this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
-
- const style =
- '@media print {.dialysis-print-order{width:960px;margin:0 auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:14px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;} .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;} .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}';
- const style2 =
- '@media print {.option_panel { margin: 0 5px 0 0; } .option_panel .check_box_panel { white-space: nowrap; outline: none; display: inline-block; line-height: 1; position: relative; vertical-align: middle; } .dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px}.option_panel .check_box_panel .check_box { display: inline-block; position: relative; border: 1px solid #000; box-sizing: border-box; width: 14px; height: 12px; background-color: #fff; } .check_box_panel .did_checked::after { content: "√"; font-size: 15px; } .print_page_main_content {background-color: white;width: 960px;margin: 0 auto 50px;padding: 0 0 0 0; page-break-after: always;}.print_page_main_content .order-yy-name {margin: auto;text-align: center;font-size: 20px;letter-spacing: 5px;}.print_page_main_content .order_title {text-align: center;font-size: 23px; line-height: 50px;font-weight: 500;} .row {font-size: 14px;line-height: 20px;padding: 5px 0;}.inline_block { display: inline-block;}.under_line_two {display: inline-block;border-bottom: 1px solid #999;text-align: left;white-space: nowrap;width: 50%;}.under_line {display: inline-block;border-bottom: 1px solid #999;text-align: center;white-space: nowrap; width: 50%;}.flex {display: -webkit-box;display: -moz-box; display: -ms-flexbox; display: -webkit-flex;display: flex;align-items: center;-webkit-align-items: center;box-align: center;-moz-box-align: center;-webkit-box-align: center;text-align: center;-webkit-justify-content: space-between;justify-content: space-between;-moz-box-pack: space-between;-webkit--moz-box-pack: space-between;box-pack: space-between;}.print_page_main_content .proj_table {width: 100%;border: 1px solid;border-collapse: collapse;padding: 2px;}.print_page_main_content .proj_table tbody tr td {border: 1px solid;font-size: 16px;padding: 3px 8px;line-height: 30px;}.print_page_main_content .proj_table .inside_table {width: 100%;border: hidden; border-collapse: collapse;}.print_page_main_content .proj_table .inside_table tr td {border: 1px solid; text-align: center;font-size: 14px;padding: 6px 5px;line-height: 16px;}.print-table-no {width: 100%;text-align: center;border-collapse: collapse;font-size: 14px;}.es-img {height: 30px;}.advice-name {text-align: left !important;line-height: 16px !important;}.advice-children {display: flex;}}.margin-bottom-50{margin-bottom:50px;}.margin-bottom-300 {margin-bottom:450px;}.margin-bottom-600 {margin-bottom:600px;}.margin-bottom-900 {margin-bottom:200px;}.print-yema{ position: absolute;top: 920px;left: 50%;} .print-yema2{ position: absolute;top: 400px;left: 50%;}.print-yema3{position: absolute;top: 1230px;left: 50%;}.print-yema4{position: absolute;top: 1370px;left: 50%;}.check_box{width:15px !important;height:15px !important;}.did_checke::after {font-size: 8px;margin-left: 2px;margin-top: 12px !important;position: absolute;}';
-
- if (this.org_template_info.template_id == 1) {
- printJS({
- printable: "dialysis-print-box",
- type: "html",
- style: style,
- scanStyles: false
- });
- } else if (
- this.org_template_info.template_id == 2 ||
- this.org_template_info.template_id == 0 ||
- this.org_template_info.template_id == 5 ||
- this.org_template_info.template_id == 22
- ) {
- printJS({
- printable: "dialysis-print-box-1-1",
- type: "html",
- style: style2,
- scanStyles: false
- });
- } else if(this.org_template_info.template_id == 14){
- printJS({
- printable: "new-dialysis-1",
- type: "html",
- style: style,
- scanStyles: false
- });
- } else if(this.org_template_info.template_id == 21){
- printJS({
- printable: "new-dialysis-1",
- type: "html",
- style: style,
- scanStyles: false
- });
- }
- },
- printThisTwoPage() {
- var ptime = Math.round(new Date().getTime() / 1000);
- this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
-
- const style =
- '@media print {.dialysis-print-order{width:960px;margin:0 auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:14px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;} .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;} .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}';
- const style2 =
- '@media print {.option_panel { margin: 0 5px 0 0; } .option_panel .check_box_panel { white-space: nowrap; outline: none; display: inline-block; line-height: 1; position: relative; vertical-align: middle; } .dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px}.option_panel .check_box_panel .check_box { display: inline-block; position: relative; border: 1px solid #000; box-sizing: border-box; width: 14px; height: 12px; background-color: #fff; } .check_box_panel .did_checked::after { content: "√"; font-size: 15px; } .print_page_main_content {background-color: white;width: 960px;margin: 0 auto 50px;padding: 0 0 0 0; page-break-after: always;}.print_page_main_content .order-yy-name {margin: auto;text-align: center;font-size: 20px;letter-spacing: 5px;}.print_page_main_content .order_title {text-align: center;font-size: 23px; line-height: 50px;font-weight: 500;} .row {font-size: 14px;line-height: 20px;padding: 5px 0;}.inline_block { display: inline-block;}.under_line_two {display: inline-block;border-bottom: 1px solid #999;text-align: left;white-space: nowrap;width: 50%;}.under_line {display: inline-block;border-bottom: 1px solid #999;text-align: center;white-space: nowrap; width: 50%;}.flex {display: -webkit-box;display: -moz-box; display: -ms-flexbox; display: -webkit-flex;display: flex;align-items: center;-webkit-align-items: center;box-align: center;-moz-box-align: center;-webkit-box-align: center;text-align: center;-webkit-justify-content: space-between;justify-content: space-between;-moz-box-pack: space-between;-webkit--moz-box-pack: space-between;box-pack: space-between;}.print_page_main_content .proj_table {width: 100%;border: 1px solid;border-collapse: collapse;padding: 2px;}.print_page_main_content .proj_table tbody tr td {border: 1px solid;font-size: 16px;padding: 3px 8px;line-height: 30px;}.print_page_main_content .proj_table .inside_table {width: 100%;border: hidden; border-collapse: collapse;}.print_page_main_content .proj_table .inside_table tr td {border: 1px solid; text-align: center;font-size: 14px;padding: 6px 5px;line-height: 16px;}.print-table-no {width: 100%;text-align: center;border-collapse: collapse;font-size: 14px;}.es-img {height: 30px;}.advice-name {text-align: left !important;line-height: 16px !important;}.advice-children {display: flex;}}.margin-bottom-50{margin-bottom:50px;}.margin-bottom-300 {margin-bottom:450px;}.margin-bottom-600 {margin-bottom:600px;}.margin-bottom-900 {margin-bottom:900px;}.print-yema{ position: absolute;top: 920px;left: 50%;} .print-yema2{ position: absolute;top: 400px;left: 50%;}.print-yema3{position: absolute;top: 1230px;left: 50%;}.print-yema4{position: absolute;top: 1370px;left: 50%;}.check_box{width:15px !important;height:15px !important;}.did_checke::after {font-size: 8px;margin-left: 2px;margin-top: 12px !important;position: absolute;}';
-
- if (this.org_template_info.template_id == 1) {
- printJS({
- printable: "dialysis-print-box",
- type: "html",
- style: style,
- scanStyles: false
- });
- } else if (
- this.org_template_info.template_id == 2 ||
- this.org_template_info.template_id == 0 ||
- this.org_template_info.template_id == 5 ||
- this.org_template_info.template_id == 22
- ) {
- printJS({
- printable: "dialysis-print-box-1-2",
- type: "html",
- style: style2,
- scanStyles: false
- });
- }else if(this.org_template_info.template_id == 14){
- printJS({
- printable: "new-dialysis-2",
- type: "html",
- style: style,
- scanStyles: false
- });
- } else if(this.org_template_info.template_id == 21){
- printJS({
- printable: "new-dialysis-2",
- type: "html",
- style: style,
- scanStyles: false
- });
- }
- },
- getNumber() {
- if (this.dialysisOrder != null) {
- return (
- this.patientInfo.DialysisSchedule.device_zone.name +
- this.dialysisOrder.DeviceNumber.number
- );
- } else {
- return (
- this.patientInfo.DialysisSchedule.device_zone.name +
- this.patientInfo.DialysisSchedule.device_number.number
- );
- }
- },
-
- getXuserName(id) {
- if (id <= 0) {
- return "";
- }
- var name = "";
- if (this.users == null || typeof this.users.length === "undefined") {
- return name;
- }
- var leng = this.users.length;
- if (leng == 0) {
- return name;
- }
- for (let index = 0; index < leng; index++) {
- if (this.users[index].id == id) {
- name = this.users[index].name;
- break;
- }
- }
- return name;
- },
- setAdminUserES(id) {
- console.log(id);
- if (id == 0) {
- return "";
- }
- if (id in this.operatorMaps) {
- return this.operatorMaps[id].url;
- } else {
- return "";
- }
- },
- modeName(mode_id) {
- return typeof this.modeOptions[mode_id] !== "undefined" &&
- typeof this.modeOptions[mode_id].name !== "undefined"
- ? this.modeOptions[mode_id].name
- : "";
- },
- getDialysisRecord() {
- this.loading = true;
-
- getDialysisRecord(this.queryParams).then(response => {
- if (response.data.state == 1) {
- this.childResponse = response;
- this.org_template_info = response.data.data.org_template_info;
- this.loading = false;
- // this.adminUser = response.data.data.users
- // this.users = response.data.data.users
- // this.patientInfo = response.data.data.patientInfo
- // this.patientInfo.birth = uParseTime(this.patientInfo.birthday, '{y}-{m}-{d}')
- // // this.patientInfo.age = jsGetAge(this.patientInfo.birth, '-')
- // if (response.data.data.patientInfo.first_dialysis_date != 0) {
- // this.patientInfo.first_dialysis_date = uParseTime(response.data.data.patientInfo.first_dialysis_date, '{y}-{m}-{d}')
- // } else {
- // this.patientInfo.first_dialysis_date = ''
- // }
- // this.check = response.data.data.check
- // this.predialysis = response.data.data.PredialysisEvaluation
- // this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(this.predialysis.blood_access_part_opera_id)
- // this.afterdialysis = response.data.data.AssessmentAfterDislysis
- // this.operators = response.data.data.operators
- // this.dialysisOrder = response.data.data.dialysisOrder === null ? null : response.data.data.dialysisOrder
-
- // if (this.operators.length > 0) {
- // var operatorsLen = this.operators.length
- // for (var index = 0; index < operatorsLen; index++) {
- // this.$set(this.operatorMaps, this.operators[index].creator, this.operators[index])
- // }
- // }
-
- // this.afterdialysis.txqnx = -1
- // if (this.afterdialysis.cruor.indexOf('0度') > -1) {
- // this.afterdialysis.txqnx = 0
- // }
- // if (this.afterdialysis.cruor.indexOf('Ⅰ度') > -1) {
- // this.afterdialysis.txqnx = 1
- // }
- // if (this.afterdialysis.cruor.indexOf('Ⅱ度') > -1) {
- // this.afterdialysis.txqnx = 2
- // }
- // if (this.afterdialysis.cruor.indexOf('Ⅲ度') > -1) {
- // this.afterdialysis.txqnx = 3
- // }
-
- // this.afterdialysis.complications = this.afterdialysis.complication.split(',')
- // this.afterdialysis.complications_other = []
- // this.afterdialysis.complications_index = []
- // var acllen = this.afterdialysis.complications.length
- // for (let index = 0; index < acllen; index++) {
- // if (this.complications.indexOf(this.afterdialysis.complications[index]) >= 0) {
- // this.afterdialysis.complications_index.push(this.afterdialysis.complications[index])
- // } else if (this.complications.indexOf(this.afterdialysis.complications[index]) < 0 && this.afterdialysis.complications_other.indexOf(this.afterdialysis.complications[index]) < 0) {
- // this.afterdialysis.complications_other.push(this.afterdialysis.complications[index])
- // }
- // }
- // this.afterdialysis.complications_other = this.afterdialysis.complications_other.join(',')
-
- // this.prescription = response.data.data.dialysisPrescription
- // this.receiverTreatmentAccess = response.data.data.receiverTreatmentAccess
-
- // this.prescription.mode = this.modeName(this.prescription.mode_id)
- // var rwLen = this.replacementWays.length
- // this.prescription.replacement = ''
- // for (let index = 0; index < rwLen; index++) {
- // if (this.replacementWays[index].id == this.prescription.replacement_way) {
- // this.prescription.replacement = this.replacementWays[index].name
- // break
- // }
- // }
-
- // this.prescription.dialysate_formulation_name = this.dialysateFormulationName(this.prescription.dialysate_formulation)
-
- // var paLen = this.perfusionApparatus.length
- // this.prescription.perfusion_apparatus_name = ''
- // for (let index = 0; index < paLen; index++) {
- // if (this.perfusionApparatus[index].id == this.prescription.perfusion_apparatus) {
- // this.prescription.perfusion_apparatus_name = this.perfusionApparatus[index].name
- // break
- // }
- // }
-
- // var acLen = this.anticoagulantsConfit.length
- // var thisALID = this.prescription.anticoagulant
- // this.prescription.anticoagulant_name = ''
-
- // if (typeof (this.anticoagulantsConfit[thisALID]) !== 'undefined' && this.anticoagulantsConfit[thisALID] != null) {
- // this.prescription.anticoagulant_name = this.anticoagulantsConfit[thisALID].name
- // this.AlPanel = this.anticoagulantsConfit[thisALID]
- // }
-
- // this.advices = response.data.data.advices
- // this.monitors = response.data.data.monitors
- // this.summary = response.data.data.summary
- // this.org_template_info = response.data.data.org_template_info
- // if (this.monitors.length < 8) {
- // var nl = 8 - this.monitors.length
- // for (let index = 0; index < nl; index++) {
- // this.monitors.push([])
- // }
- // }
- // this.jilurow = this.monitors.length + 1
-
- // this.advice_jilurow = this.advices.length + 1
-
- // var childMap = {}
- // for (const index in this.advices) {
- // if (this.advices[index].parent_id == 0) {
- // continue
- // }
- // if (!(this.advices[index].parent_id in childMap)) {
- // childMap[this.advices[index].parent_id] = []
- // }
- // childMap[this.advices[index].parent_id].push(this.advices[index])
- // }
-
- // var advices = []
- // for (const index in this.advices) {
- // if (this.advices[index].parent_id > 0) {
- // continue
- // }
- // var item = this.advices[index]
- // if (item.id in childMap) {
- // item.children = childMap[item.id]
- // } else {
- // item.children = []
- // }
- // advices.push(item)
- // }
-
- // var leftAdvice = []
- // var rightAdvice = []
- // var adlen = advices.length
-
- // var halfLen = adlen % 2 == 0 ? adlen / 2 : (adlen + 1) / 2
- // for (var i = 0; i < halfLen; i++) {
- // leftAdvice.push(advices[i])
- // rightAdvice.push(advices[i + halfLen])
- // }
- // if (halfLen < 5) {
- // var nl = 5 - leftAdvice.length
- // for (let index = 0; index < nl; index++) {
- // leftAdvice.push([])
- // }
- // var nl = 5 - rightAdvice.length
- // for (let index = 0; index < nl; index++) {
- // rightAdvice.push([])
- // }
- // }
-
- // this.advices = []
- // for (var i = 0; i < halfLen; i++) {
- // var item = []
- // item.push(leftAdvice[i])
- // item.push(rightAdvice[i])
- // this.advices.push(item)
- // }
- // this.loading = false
-
- // this.doctor_advices = response.data.data.advices == null ? [] : response.data.data.advices
-
- // for (let index = 0; index < this.doctor_advices.length; index++) {
- // this.doctor_advices[index]['isShow'] = 2
- // }
-
- // if (this.doctor_advices.length > 0) {
- // var group = this.newAdviceGroupObject()
- // var initGroupBlock = function(group, advice) {
- // group.group_no = advice.groupno
- // }
- // for (let index = this.doctor_advices.length - 1; index >= 0; index--) {
- // var new_advice_index = 0
-
- // if ('children' in this.doctor_advices[index] && this.doctor_advices[index].children.length > 0) {
- // new_advice_index = index + this.doctor_advices[index].children.length + 1
-
- // var doctor_advice = {
- // delivery_way: this.doctor_advices[index].delivery_way,
- // execution_frequency: this.doctor_advices[index].execution_frequency,
- // groupno: this.doctor_advices[index].groupno,
- // id: this.doctor_advices[index].id,
- // parent_id: this.doctor_advices[index].parent_id,
- // children: this.doctor_advices[index].children,
- // remark: this.doctor_advices[index].remark,
- // execution_staff: this.doctor_advices[index].execution_staff,
- // checker: this.doctor_advices[index].checker,
- // advice_doctor: this.doctor_advices[index].advice_doctor,
-
- // }
- // doctor_advice['isShow'] = 1
- // this.doctor_advices.splice(new_advice_index, 0, doctor_advice)
- // // this.doctor_advices.push(doctor_advice)
- // }
- // }
-
- // for (let index = 0; index < this.doctor_advices.length; index++) {
- // const advice = this.doctor_advices[index]
- // if (advice.groupno == 0) {
- // // 老版本的医嘱没有分组的概念,所以这一个 if 是解决这个问题的,将每个无分组的医嘱各自归为一组
- // if (advice.parent_id > 0) {
- // if (this.advice_groups.length > 0) {
- // var parent_group = this.advice_groups[
- // this.advice_groups.length - 1
- // ]
- // if (parent_group.advices.length > 0) {
- // if (parent_group.advices[0].id == advice.parent_id) {
- // parent_group.advices.push(advice)
- // }
- // }
- // }
- // continue
- // } else {
- // if (group.group_no > 0) {
- // this.advice_groups.push(group)
- // group = this.newAdviceGroupObject()
- // }
-
- // initGroupBlock(group, advice)
- // group.advices.push(advice)
- // this.advice_groups.push(group)
- // group = this.newAdviceGroupObject()
- // continue
- // }
- // }
-
- // if (group.group_no > 0 && group.group_no != advice.groupno) {
- // this.advice_groups.push(group)
- // group = this.newAdviceGroupObject()
- // }
- // if (group.group_no == 0) {
- // initGroupBlock(group, advice)
- // }
- // if (group.group_no == advice.groupno) {
- // group.advices.push(advice)
- // }
- // }
- // if (group.group_no > 0) {
- // // 上述的算法会导致最后一组没有加到advice_groups,这里要手动加上
- // this.advice_groups.push(group)
- // }
- // }
- // console.log(this.advice_groups)
- } else {
- this.loading = false;
- this.$message.error("请求数据失败");
- return false;
- }
- });
- },
- bloodAccessParOperaName(id) {
- if (id in this.bloodAccessParOpera) {
- return this.bloodAccessParOpera[id].name;
- }
- return "";
- },
- dialysateFormulationName(id) {
- if (id in this.dialysateFormulationOptions) {
- return this.dialysateFormulationOptions[id].name;
- }
- return "";
- },
- getAge: function(val) {
- if (
- this.org_template_info.template_id == 2 ||
- this.org_template_info.template_id == 0
- ) {
- if (val.age == 0) {
- return jsGetAge(val.birth, "-");
- } else {
- return val.age;
- }
- } else {
- return jsGetAge(val.birth, "-");
- }
- },
- newAdviceGroupObject: function() {
- return Object.assign(
- {},
- {
- group_no: 0,
- // advice_doctor: 0,
- // start_time: 0,
- advices: []
- // exec_staff: 0,
- // exec_time: 0,
- // checker: 0,
- }
- );
- },
- //日期
- handleScheduleDateChange: function(index) {
- this.treatStateVal = 0
- this.patientStateVal = 0
- this.zoneVal = 0
- this.scheduleStateVal = 0
- this.search_keyword = this.search_input = ''
- // this.$store.dispatch("SaveDialysisAreaSelectIndexs", {
- // zone: this.zone_selected,
- // schedule_type: this.schedule_type_selected,
- // schedule_date: this.selected_date,
- // })
- this.selected_date = index
- this.$store.dispatch('SetSelectedDate', { selected_date: index })
- this.requestDialysisSchedules()
- },
- //初始化数据
- getInitData: function() {
- getDialysisRecordInitData().then(rs => {
- var resp = rs.data
- if (resp.state == 1) {
- var zones = resp.data.zones
- var schedules = resp.data.schedules
- var zone_options = [{ id: 0, text: '全部' }]
- for (let z_i = 0; z_i < zones.length; z_i++) {
- const zone = zones[z_i]
- zone_options.push({ id: zone.id, text: zone.name })
- }
- this.zone_options = zone_options
- // this.zone_schedules = this.processedDialysisSchedules(schedules, this.zone_options)
- this.arr = this.processedDialysisSchedules(schedules, this.zone_options)
- this.requestDialysisSchedules()
- // this.getData()
- } else {
- this.$message.error(resp.msg)
- }
- })
- },
- // 班次
- handletimeType: function(index) {
- this.scheduleStateVal = index
- this.$store.dispatch('SetScheduleTypeSelected', { schedule_type_selected: index })
- this.search_keyword = this.search_input = ''
- this.getData()
- },
- //分区
- handleZoneChange: function(index) {
- this.zoneVal = index
- this.$store.dispatch('SetZoneSelected', { zone_selected: index })
- this.search_keyword = this.search_input = ''
- this.getData()
- },
- //患者状态
- handleStateChange: function(index) {
- this.patientStateVal = index
- this.$store.dispatch('SetPatientStateSelected', { patient_state_selected: index })
- this.search_keyword = this.search_input = ''
- this.getData()
- },
- handleTreatChange: function(index) {
- this.treatStateVal = index
- this.$store.dispatch('SetTreatStateSelected', { treat_state_selected: index })
- this.search_keyword = this.search_input = ''
- this.getData()
- },
- processedDialysisSchedules: function(schedules, zone_options) {
- var zoneMap = {}
- var scheduleMap = {}
- for (let z_i = 0; z_i < zone_options.length; z_i++) {
- const zone = zone_options[z_i]
- if (zone.id == 0) {
- continue
- }
- scheduleMap[zone.id] = []
- }
- for (let index = 0; index < schedules.length; index++) {
- const schedule = schedules[index]
- scheduleMap[schedule.device_number.zone.id].push(schedule)
- }
- var zone_schedules = []
- for (let index = 0; index < zone_options.length; index++) {
- const zone = zone_options[index]
- if (zone.id == 0) {
- continue
- }
- var schedules = scheduleMap[zone.id]
- zone_schedules.push({ zone_id: zone.id, zone_name: zone.text, schedules: schedules })
- }
- return zone_schedules
- },
- searchAction: function() {
- this.search_keyword = this.search_input
- this.scheduleStateVal = 0
- this.zoneVal = 0
- this.treatStateVal = 0
- this.patientStateVal = 0
- if(this.search_input != ''){
- let arr = []
- this.filtedSchedules.map(item => {
- arr.push(...item.schedules)
- })
- this.tableData = arr
-
- }else{
- this.getData()
- }
- },
- requestDialysisSchedules: function() {
- var ymd = parseTime(this.selected_date, '{y}-{m}-{d}')
- getDialysisSchedules(ymd).then(rs => {
- var resp = rs.data
- if (resp.state == 1) {
- var schedules = resp.data.schedules
- this.zone_schedules = this.processedDialysisSchedules(schedules, this.zone_options)
-
- let newArr = []
- this.zone_schedules.map(item => {
- newArr.push(...item.schedules)
- })
- this.tableData = newArr
- this.getData()
- } else {
- this.$message.error(resp.msg)
- }
- })
- },
- changePatient(schedual){
- console.log(schedual)
- var xtdate = parseTime(schedual.schedule_date, '{y}-{m}-{d}')
- this.$router.push(
- '/dialysis/print?xtdate=' + xtdate + '&xtno=' + schedual.patient.dialysis_no+"&patient_id="+schedual.patient.id
- )
- // this.patient_id = schedual.patient_id;
- // this.date = schedual.schedule_date;
- // // this.getScheduleDetail();
- // // this.getLongAdvice();
-
- // var patient_id = schedual.patient_id;
- // var date = schedual.schedule_date;
- // this.$router.push({
- // path: "/dialysis/details",
- // query: {
- // patient_id: patient_id,
- // date: date,
- // patient_name: schedual.patient.name
- // }
- // });
- },
- getData(){
- let patientArr = []
- patientArr = JSON.parse(JSON.stringify(this.zone_schedules))
- console.log('patientArr',patientArr)
- let arr1 = []
- if(this.patientStateVal == 0){
- arr1 = patientArr
- console.log(arr1)
- }else if(this.patientStateVal == 1){
- let arr = []
- arr = patientArr
- for (let i = 0; i <arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis == null || (arr[i].schedules[j].assessment_before_dislysis.weight_before == '' && arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure == '' && arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure == ''))) {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- console.log("执行1",arr)
- arr1 = arr
- }else if(this.patientStateVal == 2){
- let arr = []
- arr = patientArr
- for (let i = 0; i < arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis != null && (arr[i].schedules[j].assessment_before_dislysis.weight_before != 0 || arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure != 0 || arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure != 0))) {
- // 删除元素后改变i的值
- console.log('几次')
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- console.log("执行2",arr)
- arr1 = arr
- }else if(this.patientStateVal == 3){
- let arr = []
- arr = patientArr
- for (let i = 0; i <arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && (arr[i].schedules[j].dialysis_order == null || (arr[i].schedules[j].dialysis_order != null && arr[i].schedules[j].dialysis_order.stage != 1))) {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- console.log("执行1",arr)
- arr1 = arr
- }else if(this.patientStateVal == 4){
- let arr = []
- arr = patientArr
- for (let i = 0; i < arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && (arr[i].schedules[j].dialysis_order == null || (arr[i].schedules[j].dialysis_order != null && arr[i].schedules[j].dialysis_order.stage != 2))) {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- console.log("执行2",arr)
- arr1 = arr
- }
-
- let arr2 = []
- if(this.treatStateVal == 0){
- arr2 = JSON.parse(JSON.stringify(arr1))
- }else if(this.treatStateVal == 1){
- let arr = []
- arr = JSON.parse(JSON.stringify(arr1))
- for (let i = 0; i < arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && (arr[i].schedules[j].prescription != null || arr[i].schedules[j].prescription != null ? arr[i].schedules[j].prescription.creater != 0 : false)) {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- arr2 = arr
- }else if(this.treatStateVal == 2){
- let arr = []
- arr = JSON.parse(JSON.stringify(arr1))
- for (let i = 0; i < arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (arr[i].schedules.length > 0 && arr[i].schedules[j].treatment_summary != null && arr[i].schedules[j].treatment_summary.dialysis_summary != '') {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- arr2 = arr
- }
-
-
- let arr3 = []
- if(this.scheduleStateVal == 0){
- arr3 = JSON.parse(JSON.stringify(arr2))
- }else{
- let arr = []
- arr = JSON.parse(JSON.stringify(arr2))
- for (let i = 0; i < arr.length; i++) {
- for (let j = 0; j < arr[i].schedules.length; j++) {
- if (this.scheduleStateVal != arr[i].schedules[j].schedule_type) {
- // 删除元素后改变i的值
- arr[i].schedules.splice(j--, 1);
- }
- }
- }
- arr3 = arr
- console.log("上午",arr)
- }
-
-
- let arr4 = []
- if(this.zoneVal == 0){
- arr4 = JSON.parse(JSON.stringify(arr3))
- }else{
- let arr = []
- arr = JSON.parse(JSON.stringify(arr3))
- for (let i = 0; i < arr.length; i++) {
- if (this.zoneVal != arr[i].zone_id) {
- // 删除元素后改变i的值
- arr.splice(i--, 1);
- }
- }
- arr4 = arr
- }
- let newArr = []
- arr4.map(item => {
- newArr.push(...item.schedules)
- })
- this.tableData = newArr
- console.log('table',this.tableData)
- },
- },
- watch: {
- "patientInfo.gender": function() {
- if (this.patientInfo.gender == 1) {
- this.patientInfo_gender_1 = true;
- this.patientInfo_gender_2 = false;
- } else if (this.patientInfo.gender == 2) {
- this.patientInfo_gender_2 = true;
- this.patientInfo_gender_1 = false;
- } else {
- this.patientInfo_gender_2 = false;
- this.patientInfo_gender_1 = false;
- }
- },
- "patientInfo.source": function() {
- if (this.patientInfo.source == 1) {
- this.patientInfo_source_1 = true;
- this.patientInfo_source_2 = false;
- } else if (this.patientInfo.source == 2) {
- this.patientInfo_source_2 = true;
- this.patientInfo_source_1 = false;
- } else {
- this.patientInfo_source_2 = false;
- this.patientInfo_source_1 = false;
- }
- }
- },
- created() {
- },
- computed:{
- filtedSchedules: function() {
- var search_keyword = this.search_keyword
- if (search_keyword.length > 0) {
- var schedules = []
- for (let o_i = 0; o_i < this.zone_schedules.length; o_i++) {
- const scheduleInfo = this.zone_schedules[o_i]
- var originSchedules = scheduleInfo.schedules
- if (originSchedules.length == 0) {
- continue
- }
- var filtedSchedules = []
- for (let s_i = 0; s_i < originSchedules.length; s_i++) {
- const schedule = originSchedules[s_i]
- if (schedule.patient.name.indexOf(search_keyword) != -1) {
- filtedSchedules.push(schedule)
- // break
- }
- }
- if (filtedSchedules.length > 0) {
- schedules.push({ zone_id: scheduleInfo.zone_id, zone_name: scheduleInfo.zone_name, schedules: filtedSchedules })
- }
- }
- return schedules
- }
- }
- },
- };
- </script>
-
- <style>
- .dialysis-print-order {
- width: 960px;
- margin: 0 auto;
- }
-
- .dialysis-print-order .order-yy-name {
- margin: auto;
- text-align: center;
- font-size: 20px;
- letter-spacing: 5px;
- }
-
- .dialysis-print-order .order-title {
- margin: auto;
- font-weight: 600;
- text-align: center;
- font-size: 22px;
- padding: 10px;
- }
-
- .dialysis-print-order .table-box {
- width: 100%;
- line-height: 23px;
- font-size: 14px;
- }
-
- .dialysis-print-order .print-table {
- width: 100%;
- text-align: center;
- border-collapse: collapse;
- line-height: 40px;
- font-size: 14px;
- border-color: #000;
- }
-
- .dialysis-print-order .print-table-no {
- width: 100%;
- text-align: center;
- border-collapse: collapse;
- font-size: 14px;
- }
-
- .dialysis-print-order .under-line {
- border-bottom: 1px solid #999;
- width: 95%;
- text-align: center;
- margin-left: 2px;
- }
-
- .dialysis-print-order .title-box {
- text-align: center;
- font-size: 16px;
- }
-
- .dialysis-print-order .radio-lebel-box {
- font-weight: 400;
- cursor: pointer;
- }
-
- .dialysis-print-order .radio-no {
- opacity: 0;
- outline: none;
- position: absolute;
- margin: 0;
- width: 0;
- height: 0;
- z-index: -1;
- }
-
- .dialysis-print-order .radio-inner {
- white-space: nowrap;
- cursor: pointer;
- outline: none;
- display: inline-block;
- line-height: 1;
- position: relative;
- vertical-align: middle;
- }
-
- .dialysis-print-order .radio-fang {
- display: inline-block;
- position: relative;
- border: 1px solid #000;
- box-sizing: border-box;
- width: 14px;
- height: 14px;
- background-color: #fff;
- z-index: 1;
- transition: border-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46),
- background-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46);
- }
-
- .dialysis-print-order .is-checked-radio::after {
- content: "√";
- font-size: 15px;
- }
-
- .dialysis-print-order .print-table-no tr td {
- padding: 8px 5px;
- line-height: 25px;
- }
-
- .dialysis-print-order .print-table tr td {
- padding: 1px 1px;
- /*line-height: 25px;*/
- }
-
- .es-img {
- height: 30px;
- }
-
- .advice-name {
- text-align: left;
- }
-
- .advice-children {
- display: flex;
- }
-
- .title-box-pro {
- border: 0 #fff;
- line-height: 25px;
- height: 25px;
- text-align: left;
- padding-left: 10px !important;
- }
- .title-box-pro-tr {
- border: 0 #fff;
- }
- .text-align-left {
- text-align: left !important;
- padding-left: 10px !important;
- font-size: 14px !important;
- line-height: 25px;
- }
- .print-table-tr-new td {
- line-height: 20px !important;
- }
- .border-top-solid {
- border: solid 1px #000;
- }
- .print-template-two tr {
- line-height: 30px;
- }
-
- .table-box1 {
- border: 1px solid #000;
- width: 100%;
- line-height: 30px;
- font-size: 14px;
- border-collapse: collapse;
- }
- .table-box1 tr {
- border-bottom: 1px solid #000;
- }
- </style>
-
- <style lang="scss">
-
- .newContainer{
- .dialysisPage::-webkit-scrollbar {
- height: 15px;
- }
-
- .el-date-editor{
- .el-input__inner{
- padding-right:0px;
- }
- }
- .el-table td, .el-table th{
- text-align: center;
- }
- }
- .newContainer::-webkit-scrollbar{
- height: 15px !important;
- }
- </style>
|