PatientBox.vue 24KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769
  1. <template>
  2. <div>
  3. <!-- <router-link to="/dialysis/details"> -->
  4. <div
  5. class="patient"
  6. v-for="schedule in schedules"
  7. v-if="schedule.patient"
  8. :class="borderColor(schedule)"
  9. @click.stop="detailAction(schedule)"
  10. :key="schedule.id"
  11. >
  12. <div class="kehu">
  13. <div class="tx">
  14. <img
  15. :src="
  16. schedule.patient.avatar.length > 0
  17. ? schedule.patient.avatar
  18. : '../../assets/home/analyze.png'
  19. "
  20. alt=""
  21. />
  22. <div>
  23. <div class="right">
  24. <h3 class="name">
  25. {{ schedule.patient.name
  26. }}<span class="yc" v-show="isAbnormal(schedule)">异常</span>
  27. </h3>
  28. <span class="num"
  29. >{{ genderText(schedule) }} | {{ getAge(schedule) }} 岁</span
  30. >
  31. </div>
  32. <div style="margin-top:5px;text-align:left;height:24px;">
  33. <span class="tip1" v-if="schedule.prescription == null || schedule.prescription.creater == 0" @click.stop="open(schedule)">
  34. 开处方
  35. </span>
  36. <span class="tip2" v-if="schedule.treatment_summary == null || schedule.treatment_summary.dialysis_summary == ''" @click.stop="open1(schedule)">
  37. 开小结
  38. </span>
  39. </div>
  40. </div>
  41. </div>
  42. <div>
  43. <div style="height:24px;margin-right: 10px;">
  44. <div class="online" v-show="computeState(schedule) != 4">
  45. <p :class="stateColor(schedule)">{{ stateText(schedule) }}</p>
  46. </div>
  47. </div>
  48. <div style="margin-top:13px;font-size:12px;color:#34495e;margin-right: 5px;" v-if="schedule.assessment_before_dislysis && patientStateVal == 1">签到时间:{{ getTime(schedule.assessment_before_dislysis.created_time) }}</div>
  49. </div>
  50. </div>
  51. <div class="function" :class="functionColor(schedule)">
  52. <ul>
  53. <li>
  54. <span class="iconfont">&#xe6f5;</span>班次 :
  55. {{ timeTypeText(schedule) }}
  56. </li>
  57. <li>
  58. <span class="iconfont">&#xe6de;</span>床位号 :
  59. {{ schedule.device_number.number }}
  60. </li>
  61. <li>
  62. <span class="iconfont">&#xe6f6;</span>透析模式 :
  63. {{
  64. schedule.mode_id &&
  65. $store.getters.treatment_mode[schedule.mode_id]
  66. ? $store.getters.treatment_mode[schedule.mode_id].name
  67. : ""
  68. }}
  69. </li>
  70. </ul>
  71. </div>
  72. </div>
  73. <!-- </router-link> -->
  74. <dialysis-prescription-dialog
  75. title="透析处方"
  76. ref="prescription"
  77. :patient="patient"
  78. :prescription="prescription"
  79. :solution="solution"
  80. @advice="adviceFunc"
  81. :niprocart_info="niprocart_info"
  82. :jms_info="jms_info"
  83. :fistula_needle_set_info="fistula_needle_set_info"
  84. :fistula_needle_set_16_info="fistula_needle_set_16_info"
  85. :hemoperfusion_info="hemoperfusion_info"
  86. :dialyser_sterilised_info="dialyser_sterilised_info"
  87. :filtryzer_info="filtryzer_info"
  88. :dialyzers_info="dialyzers_info"
  89. :injector_info="injector_info"
  90. :bloodlines_info="bloodlines_info"
  91. :tubingHemodialysis_info="tubingHemodialysis_info"
  92. :safe_package_info="safe_package_info"
  93. :aliquid_info="aliquid_info"
  94. :config="config"
  95. :admin_users="admin_users"
  96. :targetAdvices="longAdvices"
  97. :waitUploadAdvices="waitUploadAdvices"
  98. :is_open="is_open"
  99. :predialysis="predialysis_evaluation"
  100. :last_predialysis="lastPredialysisEvaluation"
  101. :record="assessment_after_dislysis"
  102. :last_record="lastAssessmentAfterDislysis"
  103. :last_prescription="lastDialysisPrescribe"
  104. :dry_weight="lastDryWeightDislysis"
  105. :schedual="temp_schedual"
  106. :date='date'
  107. ></dialysis-prescription-dialog>
  108. <treatment-summary-dialog
  109. title="治疗小结"
  110. ref="treatmentSummary"
  111. :patient="patient"
  112. :treatment_summary="treatment_summary"
  113. ></treatment-summary-dialog>
  114. </div>
  115. </template>
  116. <script>
  117. import { parseTime } from "@/utils";
  118. import { jsGetAge } from "@/utils/tools";
  119. import dialysisPrescriptionDialog from "../dialysis/details/dialog/dialysisPrescriptionDialog";
  120. import treatmentSummaryDialog from "../dialysis/details/dialog/treatmentSummaryDialog";
  121. import {
  122. getDialysisScheduleDetail,
  123. getLongAdvice,
  124. } from "@/api/dialysis_record";
  125. export default {
  126. name: "PatientBox",
  127. components:{
  128. dialysisPrescriptionDialog,
  129. treatmentSummaryDialog
  130. },
  131. data() {
  132. return {
  133. patients: [
  134. {
  135. state: 2,
  136. yc: false,
  137. name: "张三",
  138. sex: "女",
  139. age: 90
  140. },
  141. {
  142. state: 3,
  143. yc: true,
  144. name: "张三",
  145. sex: "女",
  146. age: 90
  147. },
  148. {
  149. state: 4,
  150. yc: true,
  151. name: "张三",
  152. sex: "女",
  153. age: 90
  154. },
  155. {
  156. state: 1,
  157. yc: true,
  158. name: "张三",
  159. sex: "女",
  160. age: 90
  161. }
  162. ],
  163. //
  164. longAdvices: [],
  165. waitUploadAdvices: [],
  166. is_open: 0,
  167. targetAdvices: [],
  168. patient: { id: 0 }, // 患者信息
  169. schedual: { id: 0 }, // 患者排班信息
  170. prescription: { id: 0 }, // 透析处方
  171. solution: { id: 0 }, // 透析方案
  172. system_prescribe: { id: 0 },
  173. receiver_treatment_access: { id: 0 }, // 接诊评估
  174. predialysis_evaluation: { id: 0 }, // 透前评估
  175. doctor_advices: [], // 临时医嘱
  176. double_check: { id: 0 }, // 双人核对
  177. assessment_after_dislysis: { id: 0 }, // 透后评估
  178. treatment_summary: { id: 0 }, // 治疗小结
  179. monitor_records: [], // 透析监测
  180. dialysis_order: { id: 0 }, // 透析记录
  181. admin_users: [], // 系统用户列表
  182. devices: [], // 设备
  183. device_numbers: [], // 床位号
  184. admin_user_map: {}, // {user_id: admin_user object}
  185. device_map: {}, // {device_id: device}
  186. device_number_map: {}, // {device_number_id: device_number}
  187. niprocart_info: [],
  188. jms_info: [],
  189. fistula_needle_set_info: [],
  190. fistula_needle_set_16_info: [],
  191. hemoperfusion_info: [],
  192. dialyser_sterilised_info: [],
  193. filtryzer_info: [],
  194. dialyzers_info: [],
  195. injector_info: [],
  196. bloodlines_info: [],
  197. tubingHemodialysis_info: [],
  198. safe_package_info: [],
  199. aliquid_info: [],
  200. config: {},
  201. lastPredialysisEvaluation: { id: 0 },
  202. lastMonitorRecord: { id: 0 },
  203. lastAssessmentAfterDislysis: { id: 0 },
  204. lastDryWeightDislysis: { id: 0 },
  205. headNurses: [],
  206. lastDialysisPrescribe: { id: 0 },
  207. temp_schedual: null,
  208. date:''
  209. };
  210. },
  211. props: {
  212. schedules: {
  213. type: Array
  214. },
  215. patientStateVal:Number
  216. },
  217. methods: {
  218. stateColor: function(schedual) {
  219. var state = this.computeState(schedual);
  220. if (state == 1) {
  221. return "blue";
  222. } else if (state == 2) {
  223. return "gray";
  224. } else if (state == 3) {
  225. return "red";
  226. } else {
  227. return "blue";
  228. }
  229. },
  230. functionColor: function(schedual) {
  231. var state = this.computeState(schedual);
  232. if (state == 1 || state == 3) {
  233. return "blue";
  234. } else if (state == 2) {
  235. return "gray";
  236. } else {
  237. return "blue";
  238. }
  239. },
  240. borderColor: function(schedual) {
  241. var yc = this.isAbnormal(schedual);
  242. if (yc == true) {
  243. return "red";
  244. } else {
  245. return "gray";
  246. }
  247. },
  248. stateText: function(schedual) {
  249. var state = this.computeState(schedual);
  250. if (state == 1) {
  251. return "已上机";
  252. } else if (state == 2) {
  253. return "已下机";
  254. } else if (state == 3) {
  255. return "监测中";
  256. } else {
  257. // return schedual.patient.gender == 1 ? "男" : "女"
  258. return "未上机";
  259. }
  260. },
  261. computeState: function(schedual) {
  262. if (schedual.dialysis_order == null) {
  263. // 未上机
  264. return 4;
  265. } else if (schedual.dialysis_order.stage == 2) {
  266. // 已下机
  267. return 2;
  268. } else if (
  269. schedual.dialysis_order.stage == 1 &&
  270. schedual.monitoring_records != null &&
  271. schedual.monitoring_records.length > 1
  272. ) {
  273. // 监测中
  274. return 3;
  275. } else {
  276. return 1;
  277. }
  278. },
  279. orderState: function(schedual) {
  280. if (schedual.dialysis_order == null) {
  281. // 未上机
  282. return 4;
  283. } else if (schedual.dialysis_order.stage == 2) {
  284. // 已下机
  285. return 2;
  286. } else if (
  287. schedual.dialysis_order.stage == 1 &&
  288. schedual.monitoring_records != null &&
  289. schedual.monitoring_records.length > 1
  290. ) {
  291. // 监测中
  292. return 3;
  293. } else {
  294. return 1;
  295. }
  296. },
  297. isAbnormal: function(schedual) {
  298. return false; // schedual.yc;
  299. },
  300. timeTypeText: function(schedual) {
  301. if (schedual.schedule_type == 1) {
  302. return "上午";
  303. } else if (schedual.schedule_type == 2) {
  304. return "下午";
  305. } else {
  306. return "晚上";
  307. }
  308. },
  309. genderText: function(schedual) {
  310. if (schedual.patient.gender == 0) {
  311. return "未知";
  312. } else if (schedual.patient.gender == 1) {
  313. return "男";
  314. } else {
  315. return "女";
  316. }
  317. },
  318. age: function(schedual) {
  319. if (schedual.patient.birthday == 0) {
  320. return "";
  321. } else {
  322. return jsGetAge(
  323. parseTime(schedual.patient.birthday, "{y}-{m}-{d}"),
  324. "-"
  325. );
  326. }
  327. // var now = new Date()
  328. // var nowYear = parseTime(now, "{y}")
  329. // var birthdayYear = parseTime(schedual.patient.birthday, "{y}")
  330. // // console.log(nowYear)
  331. // // console.log(birthdayYear)
  332. // return nowYear - birthdayYear
  333. },
  334. getAge: function(val) {
  335. var thisLen = val.patient.id_card_no.length;
  336. var birth = "";
  337. if (thisLen == 15) {
  338. birth = "19" + val.patient.id_card_no.substr(6, 6);
  339. } else {
  340. birth = val.patient.id_card_no.substr(6, 8);
  341. }
  342. var birthtwo =
  343. birth.substr(0, 4) +
  344. "-" +
  345. birth.substr(4, 2) +
  346. "-" +
  347. birth.substr(6, 2);
  348. var age = jsGetAge(birthtwo, "-");
  349. return age;
  350. },
  351. detailAction: function(schedual) {
  352. var patient_id = schedual.patient_id;
  353. var date = schedual.schedule_date;
  354. this.$router.push({
  355. path: "/dialysis/details",
  356. query: {
  357. patient_id: patient_id,
  358. date: date,
  359. patient_name: schedual.patient.name
  360. }
  361. });
  362. },
  363. //
  364. getScheduleDetail: function() {
  365. var dateStr = parseTime(this.date, "{y}-{m}-{d}");
  366. this.doctor_advices = [];
  367. getDialysisScheduleDetail(this.patient_id, dateStr).then(rs => {
  368. var resp = rs.data;
  369. if (resp.state == 1) {
  370. var patient = resp.data.patient; // 患者信息
  371. console.log("患者信息",patient)
  372. var schedual = resp.data.schedual; // 患者排班信息
  373. var prescription = resp.data.prescription; // 透析处方
  374. if(prescription!=null){
  375. if(prescription.body_fluid == -2 ){
  376. prescription.body_fluid = 0
  377. }
  378. }
  379. console.log("透析处方",prescription)
  380. var solution = resp.data.solution; // 透析方案
  381. var receiver_treatment_access = resp.data.receiver_treatment_access; // 接诊评估
  382. console.log("receiver_treatment_access",receiver_treatment_access)
  383. var predialysis_evaluation = resp.data.predialysis_evaluation; // 透前评估
  384. console.log("透前评估",predialysis_evaluation)
  385. if(predialysis_evaluation !=null){
  386. if(predialysis_evaluation.blood_access_part_id == -2){
  387. predialysis_evaluation.blood_access_part_id = 0
  388. }
  389. }
  390. var doctor_advices = resp.data.doctor_advices; // 临时医嘱
  391. //console.log("力气-------", doctor_advices);
  392. var double_check = resp.data.double_check; // 双人核对
  393. var assessment_after_dislysis = resp.data.assessment_after_dislysis; // 透后评估
  394. //console.log("透后品谷数", assessment_after_dislysis);
  395. var treatment_summary = resp.data.treatment_summary; // 治疗小结
  396. var monitor_records = resp.data.monitor_records; // 透析监测
  397. var dialysis_order = resp.data.dialysis_order; // 透析记录
  398. var niprocart_info = resp.data.niprocart_info;
  399. var jms_info = resp.data.jms_info;
  400. var fistula_needle_set_info = resp.data.fistula_needle_set_info;
  401. var fistula_needle_set_16_info = resp.data.fistula_needle_set_16_info;
  402. var hemoperfusion_info = resp.data.hemoperfusion_info;
  403. var dialyser_sterilised_info = resp.data.dialyser_sterilised_info;
  404. var filtryzer_info = resp.data.filtryzer_info;
  405. var dialyzers_info = resp.data.dialyzers_info;
  406. var injector_info = resp.data.injector_info;
  407. var bloodlines_info = resp.data.bloodlines_info;
  408. var tubingHemodialysis_info = resp.data.tubingHemodialysis_info;
  409. var safe_package_info = resp.data.safe_package_info;
  410. var aliquid_info = resp.data.aliquid_info;
  411. var lastPredialysisEvaluation = resp.data.lastPredialysisEvaluation;
  412. console.log("上次透前评估",lastPredialysisEvaluation)
  413. if(lastPredialysisEvaluation !=null){
  414. if(lastPredialysisEvaluation.blood_access_part_id == -2){
  415. lastPredialysisEvaluation.blood_access_part_id = 0
  416. }
  417. }
  418. var lastMonitorRecord = resp.data.lastMonitorRecord;
  419. var lastAssessmentAfterDislysis =
  420. resp.data.lastAssessmentAfterDislysis;
  421. var lastDialysisPrescribe = resp.data.lastDialysisPrescribe;
  422. var lastDryWeightDislysis = resp.data.lastDryWeightDislysis;
  423. var system_prescribe = resp.data.system_prescribe;
  424. this.$refs.prescription.setLastRecord(
  425. schedual,
  426. lastAssessmentAfterDislysis,
  427. lastPredialysisEvaluation,
  428. lastDialysisPrescribe,
  429. lastDryWeightDislysis,
  430. system_prescribe
  431. );
  432. var headNurses = resp.data.headNurse;
  433. var config = resp.data.config;
  434. this.lastPredialysisEvaluation = lastPredialysisEvaluation;
  435. this.lastMonitorRecord = lastMonitorRecord;
  436. this.lastAssessmentAfterDislysis = lastAssessmentAfterDislysis;
  437. this.lastDialysisPrescribe = lastDialysisPrescribe;
  438. this.lastDryWeightDislysis = lastDryWeightDislysis;
  439. this.headNurses = headNurses;
  440. this.system_prescribe = system_prescribe;
  441. this.niprocart_info = niprocart_info;
  442. this.jms_info = jms_info;
  443. this.fistula_needle_set_info = fistula_needle_set_info;
  444. this.fistula_needle_set_16_info = fistula_needle_set_16_info;
  445. this.hemoperfusion_info = hemoperfusion_info;
  446. this.dialyser_sterilised_info = dialyser_sterilised_info;
  447. this.filtryzer_info = filtryzer_info;
  448. this.dialyzers_info = dialyzers_info;
  449. this.injector_info = injector_info;
  450. this.bloodlines_info = bloodlines_info;
  451. this.tubingHemodialysis_info = tubingHemodialysis_info;
  452. this.safe_package_info = safe_package_info;
  453. this.aliquid_info = aliquid_info;
  454. this.config = config;
  455. this.patient = patient;
  456. this.schedual = schedual == null ? { id: 0 } : schedual;
  457. this.prescription = prescription == null ? { id: 0 } : prescription;
  458. console.log('this.prescription',this.prescription)
  459. this.solution = solution == null ? { id: 0 } : solution;
  460. console.log('this.solution',this.solution)
  461. this.receiver_treatment_access =
  462. receiver_treatment_access == null
  463. ? { id: 0 }
  464. : receiver_treatment_access;
  465. this.predialysis_evaluation =
  466. predialysis_evaluation == null ? { id: 0 } : predialysis_evaluation;
  467. this.doctor_advices = doctor_advices == null ? [] : doctor_advices;
  468. this.double_check = double_check == null ? { id: 0 } : double_check;
  469. this.assessment_after_dislysis =
  470. assessment_after_dislysis == null
  471. ? { id: 0 }
  472. : assessment_after_dislysis;
  473. this.treatment_summary =
  474. treatment_summary == null ? { id: 0 } : treatment_summary;
  475. this.monitor_records = monitor_records == null ? [] : monitor_records;
  476. this.dialysis_order =
  477. dialysis_order == null ? { id: 0 } : dialysis_order;
  478. // this.$refs.stat_order.setAdvices(this.doctor_advices)
  479. // this.$refs.monitoring.setRecords(this.monitor_records)
  480. this.admin_users = resp.data.doctors;
  481. this.devices = resp.data.devices;
  482. this.device_numbers = resp.data.device_numbers;
  483. var device_map = {};
  484. for (let index = 0; index < this.devices.length; index++) {
  485. const device = this.devices[index];
  486. device_map[device.id] = device;
  487. }
  488. this.device_map = device_map;
  489. var admin_map = {};
  490. for (let index = 0; index < this.admin_users.length; index++) {
  491. const admin = this.admin_users[index];
  492. admin_map[admin.id] = admin;
  493. }
  494. this.admin_user_map = admin_map;
  495. var device_number_map = {};
  496. for (let index = 0; index < this.device_numbers.length; index++) {
  497. const device_number = this.device_numbers[index];
  498. device_number_map[device_number.id] = device_number;
  499. }
  500. this.device_number_map = device_number_map;
  501. } else {
  502. this.$message.error(resp.msg);
  503. }
  504. if (this.lastDialysisPrescribe != null) {
  505. delete this.lastDialysisPrescribe.target_ultrafiltration;
  506. }
  507. if (this.solution != null) {
  508. delete this.solution.target_ultrafiltration;
  509. }
  510. });
  511. },
  512. getLongAdvice() {
  513. let params = {
  514. patient_id: this.patient_id
  515. };
  516. getLongAdvice(params).then(rs => {
  517. var resp = rs.data;
  518. if (resp.state == 1) {
  519. var status = parseInt(resp.data.status);
  520. switch (status) {
  521. case 2:
  522. var totalAdvice = resp.data.advices;
  523. var longAdvicesTwo = resp.data.advices_two;
  524. var waitUploadAdvices = [];
  525. for (let i = 0; i < totalAdvice.length; i++) {
  526. totalAdvice[i]["isCheck"] = 1;
  527. }
  528. for (let i = 0; i < totalAdvice.length; i++) {
  529. for (let a = 0; a < longAdvicesTwo.length; a++) {
  530. if (
  531. totalAdvice[i].template_id ==
  532. longAdvicesTwo[a].template_id &&
  533. totalAdvice[i].frequency_type ==
  534. longAdvicesTwo[a].frequency_type
  535. ) {
  536. totalAdvice[i]["isCheck"] = 0;
  537. }
  538. }
  539. }
  540. for (let i = 0; i < totalAdvice.length; i++) {
  541. if (totalAdvice[i].isCheck == 1) {
  542. waitUploadAdvices.push(totalAdvice[i]);
  543. }
  544. }
  545. this.is_open = resp.data.is_open_remind;
  546. this.longAdvices = totalAdvice;
  547. this.waitUploadAdvices = waitUploadAdvices;
  548. break;
  549. }
  550. } else {
  551. this.$message.error(resp.msg);
  552. }
  553. });
  554. },
  555. adviceFunc: function() {
  556. this.$emit("advice");
  557. },
  558. open(schedual){
  559. this.date = schedual.schedule_date
  560. this.patient_id = schedual.patient_id
  561. this.getScheduleDetail()
  562. this.getLongAdvice()
  563. this.$refs.prescription.show(this.prescription);
  564. },
  565. open1(schedual){
  566. this.date = schedual.schedule_date
  567. this.patient_id = schedual.patient_id
  568. this.getScheduleDetail()
  569. this.getLongAdvice()
  570. this.$refs.treatmentSummary.show(this.treatment_summary,this.date);
  571. },
  572. getTime(date){
  573. date = new Date(date * 1000)
  574. var Y = date.getFullYear() + '-';
  575. var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1);
  576. var D = (date.getDate() < 10 ? '0'+date.getDate() : date.getDate());
  577. var h = (date.getHours() < 10 ? '0'+date.getHours() : date.getHours());
  578. var m = (date.getMinutes() < 10 ? '0'+date.getMinutes() : date.getMinutes());
  579. var s = (date.getSeconds() < 10 ? '0'+date.getSeconds() : date.getSeconds());
  580. let strDate = h + ':' + m;
  581. return strDate;
  582. }
  583. },
  584. };
  585. </script>
  586. <style style="stylesheet/scss" lang="scss" scoped>
  587. .patient {
  588. border: 1px #e5e5ee solid;
  589. padding: 9px 0;
  590. margin: 0 15px 15px 0;
  591. float: left;
  592. width: 360px;
  593. cursor: pointer;
  594. .function {
  595. padding: 15px 5px 0 5px;
  596. color: #7b8a97;
  597. ul {
  598. @include display-flex;
  599. @include align-items-center;
  600. @include text-align;
  601. @include justify-content-between;
  602. li {
  603. font-size: 13px;
  604. @include display-flex;
  605. @include align-items-center;
  606. .iconfont {
  607. margin: 0 5px 0 0;
  608. font-size: 18px;
  609. }
  610. }
  611. }
  612. }
  613. .blue {
  614. color: $main-color;
  615. .iconfont {
  616. color: $main-color;
  617. }
  618. }
  619. .kehu {
  620. @include display-flex;
  621. // @include align-items-center;
  622. @include text-align;
  623. @include justify-content-between;
  624. border-bottom: 1px #e5e5e5 solid;
  625. padding: 0 0 10px 20px;
  626. .tx {
  627. @include display-flex;
  628. // @include align-items-center;
  629. width: 60%;
  630. img {
  631. width: 45px;
  632. height: 45px;
  633. border-radius: 50%;
  634. float: left;
  635. margin: 0 15px 0 0;
  636. }
  637. .right {
  638. // float: left;
  639. // text-align: left;
  640. display:flex;
  641. align-items: center;
  642. margin-top: 6px;
  643. .name {
  644. font-size: 15px;
  645. color: #34495e;
  646. font-weight: bold;
  647. height: 20px;
  648. line-height: 20px;
  649. margin-right:10px;
  650. .yc {
  651. background: #ff7979;
  652. color: #fff;
  653. height: 19px;
  654. line-height: 19px;
  655. font-size: 12px;
  656. width: 37px;
  657. border-radius: 4px;
  658. display: inline-block;
  659. text-align: center;
  660. margin-left: 6px;
  661. }
  662. }
  663. .num {
  664. font-size: 13px;
  665. color: #7b8a97;
  666. }
  667. }
  668. .tip1{
  669. background: #4fc7cb;
  670. border-radius: 5px;
  671. text-align: center;
  672. font-size: 12px;
  673. display: inline-block;
  674. width: 60px;
  675. color: #fff;
  676. width: 65px;
  677. height: 24px;
  678. line-height: 24px;
  679. }
  680. .tip2{
  681. background: #7bce91;
  682. border-radius: 5px;
  683. text-align: center;
  684. font-size: 12px;
  685. display: inline-block;
  686. width: 60px;
  687. color: #fff;
  688. width: 65px;
  689. height: 24px;
  690. line-height: 24px;
  691. }
  692. }
  693. .online {
  694. text-align: center;
  695. width: 30%;
  696. // border-left: 1px #e5e5e5 solid;
  697. p {
  698. background: #c6cdd2;
  699. color: #fff;
  700. width: 65px;
  701. height: 24px;
  702. line-height: 24px;
  703. border-radius: 4px;
  704. margin: 0 auto;
  705. font-size: 12px;
  706. margin-top:4px;
  707. }
  708. .blue {
  709. background: $main-color;
  710. }
  711. .red {
  712. background: #f18f68;
  713. }
  714. .green {
  715. background: #5bd18b;
  716. }
  717. .gray {
  718. background: #a8b3ba;
  719. }
  720. .lightGray {
  721. background: #c6cdd2;
  722. }
  723. .time {
  724. font-size: 26px;
  725. color: #34495e;
  726. }
  727. }
  728. }
  729. }
  730. .red {
  731. border: 1px #ff7979 solid;
  732. }
  733. </style>