6 changed files with 198 additions and 55 deletions
			
			
		| @ -0,0 +1,141 @@ | |||||
|  | <template> | ||||
|  |   <div id="multipleTable"> | ||||
|  |     <div v-if="curProject" class="project_title">医疗项目:{{ curProject.itemName }}</div> | ||||
|  |     <el-table | ||||
|  |       :data="dataList" | ||||
|  |       tooltip-effect="dark" | ||||
|  |       style="width: 100%" | ||||
|  |       @sort-change="sortList" | ||||
|  |     > | ||||
|  |       <el-table-column label="预约时间" header-align="center" align="center" width="110px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           {{ scope.row.appointDate ? scope.row.appointDate : '-' }} | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |       <el-table-column label="类型" prop="source" header-align="center" align="center" width="55px" /> | ||||
|  |       <el-table-column label="负责医生" header-align="center" align="center" width="100px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           {{ scope.row.doctorName ? scope.row.doctorName : '-' }} | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |       <el-table-column prop="patientName" label="患者姓名" header-align="center" align="center" width="100px" /> | ||||
|  |       <el-table-column prop="patientId" label="登记号" header-align="center" align="center" width="120px" /> | ||||
|  |       <el-table-column prop="patientPhone" label="电话" header-align="center" align="center" width="120px" /> | ||||
|  |       <el-table-column label="眼别" prop="eyeType" header-align="center" align="center" width="80px" /> | ||||
|  |       <el-table-column label="项目" prop="project" header-align="center" align="center" width="120px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           <div v-if="scope.row.project"> | ||||
|  |             <div v-for="item in scope.row.project.split(',')" :key="item"> | ||||
|  |               <div v-if="item!=='其他'"> | ||||
|  |                 {{ item }} | ||||
|  |               </div> | ||||
|  |               <div v-else> | ||||
|  |                 {{ `${item}: ${scope.row.otherProject}` }} | ||||
|  |               </div> | ||||
|  |             </div> | ||||
|  |           </div> | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |       <el-table-column label="准备工作" prop="preparation" header-align="center" align="center" width="120px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           <div> | ||||
|  |             <div v-if="showPreparation(scope.row.preparation,'医嘱已开')" :class="{active_check:showPreparation(scope.row.preparation,'医嘱已开')}"> | ||||
|  |               医嘱已开 | ||||
|  |             </div> | ||||
|  |             <div v-if="showPreparation(scope.row.preparation,'散瞳')" :class="{active_check:showPreparation(scope.row.preparation,'散瞳')}"> | ||||
|  |               散瞳 | ||||
|  |             </div> | ||||
|  |             <div v-if="showPreparation(scope.row.preparation,'表麻')" :class="{active_check:showPreparation(scope.row.preparation,'表麻')}"> | ||||
|  |               表麻 | ||||
|  |             </div> | ||||
|  |             <div v-if="showPreparation(scope.row.preparation,'全身检查完成')" :class="{active_check:showPreparation(scope.row.preparation,'全身检查完成')}"> | ||||
|  |               全身检查完成 | ||||
|  |             </div> | ||||
|  |             <div v-if="showPreparation(scope.row.preparation,'缩瞳')" :class="{active_check_red:showPreparation(scope.row.preparation,'缩瞳')}"> | ||||
|  |               缩瞳 | ||||
|  |             </div> | ||||
|  |           </div> | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |       <el-table-column sortable label="是否到达" header-align="center" align="center" width="110px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           <div> | ||||
|  |             <el-select v-model="scope.row.arrival" :class="{'active_check':scope.row.arrival==='Y'}" class="arrivalSelect" placeholder="" size="small" @change="value=>changeEyeType(value,scope)"> | ||||
|  |               <el-option | ||||
|  |                 v-for="item in arrivalList" | ||||
|  |                 :key="item.value" | ||||
|  |                 :label="item.label" | ||||
|  |                 :value="item.value" | ||||
|  |               /> | ||||
|  |             </el-select> | ||||
|  |             <div v-if="scope.row.arrivalDate && scope.row.arrival==='Y'"> | ||||
|  |               {{ scope.row.arrivalDate }} | ||||
|  |             </div> | ||||
|  |           </div> | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |       <el-table-column label="操作" class-name="hidden" header-align="center" align="center" width="200px"> | ||||
|  |         <template slot-scope="scope"> | ||||
|  |           <span class="call" @click="editOpera(scope.row)">{{ scope.row.appointDate ? "改约":"预约" }}</span> | ||||
|  |           <span class="cancel" @click="cancelClick(scope.row)">取消</span> | ||||
|  |           <span class="call" @click="checkPatientDetail(scope.row)">患者360</span> | ||||
|  |         </template> | ||||
|  |       </el-table-column> | ||||
|  |     </el-table> | ||||
|  |   </div> | ||||
|  | </template> | ||||
|  | 
 | ||||
|  | <script> | ||||
|  | export default { | ||||
|  |   name: 'PrintTable', | ||||
|  |   props: { | ||||
|  |     curProject: { | ||||
|  |       type: Object | ||||
|  |     }, | ||||
|  |     dataList: { | ||||
|  |       type: Array | ||||
|  |     }, | ||||
|  |     arrivalList: { | ||||
|  |       type: Array | ||||
|  |     } | ||||
|  |   }, | ||||
|  |   methods: { | ||||
|  |     sortList(val) { | ||||
|  |       if (val.order === 'ascending') { | ||||
|  |         val.order = 'asc' | ||||
|  |       } | ||||
|  |       if (val.order === 'descending') { | ||||
|  |         val.order = 'desc' | ||||
|  |       } | ||||
|  |       this.dataForm.arrivalSort = val.order | ||||
|  |       this.getDataList() | ||||
|  |     }, | ||||
|  |     showPreparation(scope, value) { | ||||
|  |       if (!scope) { | ||||
|  |         return false | ||||
|  |       } | ||||
|  |       return scope.includes(value) | ||||
|  |     } | ||||
|  |   } | ||||
|  | } | ||||
|  | </script> | ||||
|  | 
 | ||||
|  | <style lang="scss" scoped> | ||||
|  | .active_check{ | ||||
|  |   color: #409EFF; | ||||
|  | } | ||||
|  | .active_check_red{ | ||||
|  |   color: #ff0000; | ||||
|  | } | ||||
|  | .arrivalSelect{ | ||||
|  |   ::v-deep .el-input__suffix{ | ||||
|  |     display: none; | ||||
|  |   } | ||||
|  |   ::v-deep .el-input__inner{ | ||||
|  |     border: 0; | ||||
|  |     font-size: 16px; | ||||
|  |     text-align: center; | ||||
|  |     padding: 0; | ||||
|  |   } | ||||
|  | } | ||||
|  | </style> | ||||
					Loading…
					
					
				
		Reference in new issue