Elizabeth's proactive approach involves introducing urinal toilet attachment , an ingenious concept that optimizes space and functionality.

index.vue 57KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497
  1. <template>
  2. <div class="main-contain">
  3. <div class="position">
  4. <bread-crumb :crumbs='crumbs'></bread-crumb>
  5. </div>
  6. <div v-if="this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028"
  7. class="app-container">
  8. <div class="nameTitle">患者基本信息:</div>
  9. <div class="formMain">
  10. <el-form class="basicForm" :model="form" :rules="rules2" ref="form" label-width="100px">
  11. <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
  12. <el-autocomplete
  13. class="checkSearch"
  14. popper-class="my-autocomplete"
  15. v-model="form.name"
  16. :fetch-suggestions="querySearchAsync"
  17. :trigger-on-focus="false"
  18. placeholder="请输入病人名字"
  19. @select="handleSelect"
  20. style="width:160px;"
  21. >
  22. <i class="el-icon-search el-input__icon" slot="suffix"></i>
  23. <template slot-scope="{ item }">
  24. <div class="name">{{ item.name }}</div>
  25. </template>
  26. </el-autocomplete>
  27. </el-form-item>
  28. <el-form-item label="性别:" prop="sex" :validate-event="is_Name">
  29. <el-select v-model="form.sex" placeholder="请选择">
  30. <el-option
  31. v-for="item in sex"
  32. :key="item.value"
  33. :label="item.label"
  34. :value="item.value">
  35. </el-option>
  36. </el-select>
  37. </el-form-item>
  38. <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
  39. <el-input v-model="form.age"></el-input>
  40. </el-form-item>
  41. <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
  42. <el-date-picker v-model="form.birthday" type="date" @change="getBirthday"
  43. placeholder="选择日期"></el-date-picker>
  44. </el-form-item>
  45. <el-form-item label="手机号码:" prop="phone">
  46. <el-input v-model="form.phone"></el-input>
  47. </el-form-item>
  48. <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
  49. <el-select v-model="form.certificates" placeholder="请选择">
  50. <el-option
  51. v-for="item in certificates"
  52. :key="item.value"
  53. :label="item.label"
  54. :value="item.value">
  55. </el-option>
  56. </el-select>
  57. </el-form-item>
  58. <el-form-item label="证件号码:" prop="idCard" :validate-event="is_Name">
  59. <el-input v-model="form.idCard"></el-input>
  60. </el-form-item>
  61. <el-form-item label="结算类型:">
  62. <el-select v-model="form.settlementValue" placeholder="请选择">
  63. <el-option
  64. v-for="item in settlement"
  65. :key="item.value"
  66. :label="item.label"
  67. :value="item.value">
  68. </el-option>
  69. </el-select>
  70. </el-form-item>
  71. <el-form-item label="社保类型:">
  72. <el-select v-model="form.social_type" placeholder="请选择">
  73. <!-- <el-option
  74. v-for="(item,index) in getDictionaryDataConfig('system','social_type')"
  75. :key="index"
  76. :label="item.name"
  77. :value="item.id">
  78. </el-option> -->
  79. <el-option
  80. v-for="item in medicalCare"
  81. :key="item.value"
  82. :label="item.label"
  83. :value="item.value">
  84. </el-option>
  85. </el-select>
  86. </el-form-item>
  87. <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
  88. <el-select v-model="form.id_card_type" placeholder="请选择">
  89. <el-option
  90. v-for="item in IDCardTypes"
  91. :key="item.value"
  92. :label="item.label"
  93. :value="item.value">
  94. </el-option>
  95. </el-select>
  96. </el-form-item>
  97. <el-form-item class="specialFormItem" label="医保卡号:">
  98. <div style="display:flex;">
  99. <el-input v-model="form.medicalInsuranceCard"></el-input>
  100. <el-button style="margin-left:10px;" type="primary" @click="readingSZ"
  101. v-loading="read_loading">读卡
  102. </el-button>
  103. </div>
  104. </el-form-item>
  105. </el-form>
  106. </div>
  107. <div class="nameTitle">患者挂号信息:</div>
  108. <div class="formMain">
  109. <el-form class="basicForm" :model="form" :rules="rules2" ref="form" label-width="100px">
  110. <el-form-item label="挂号类型:" prop="register" :validate-event="is_Name">
  111. <el-select v-model="form.register" placeholder="请选择" @change="changeReg">
  112. <el-option
  113. v-for="item in his_registers"
  114. :key="item.value"
  115. :label="item.label"
  116. :value="item.value">
  117. </el-option>
  118. </el-select>
  119. </el-form-item>
  120. <el-form-item label="医疗类别:" :validate-event="is_Name" prop="medicalCare">
  121. <el-select v-model="form.medicalCare" placeholder="请选择">
  122. <el-option
  123. v-for="(item,index) in medical_care"
  124. :key="index"
  125. :label="item.label"
  126. :value="item.value">
  127. </el-option>
  128. </el-select>
  129. </el-form-item>
  130. <el-form-item label="医生:" prop="doctor" :validate-event="is_Name">
  131. <el-select v-model="form.doctor" placeholder="请选择" @change="changeDoctor">
  132. <el-option
  133. v-for="item in doctorList"
  134. :key="item.admin_user_id"
  135. :label="item.user_name"
  136. :value="item.admin_user_id">
  137. </el-option>
  138. </el-select>
  139. </el-form-item>
  140. <el-form-item label="科室:" prop="department" :validate-event="is_Name">
  141. <el-select v-model="form.department" placeholder="请选择">
  142. <el-option
  143. v-for="item in departmentList"
  144. :key="item.id"
  145. :label="item.name"
  146. :value="item.id">
  147. </el-option>
  148. </el-select>
  149. </el-form-item>
  150. <el-form-item label="挂号费:">
  151. <el-input v-model="form.registrationFee" readonly></el-input>
  152. </el-form-item>
  153. <el-form-item label="诊疗费:">
  154. <el-input v-model="form.medicalExpenses" readonly></el-input>
  155. </el-form-item>
  156. <el-form-item label="合计:">
  157. <el-input v-model.number="total" readonly></el-input>
  158. </el-form-item>
  159. </el-form>
  160. <el-button style="float:right" v-loading="loadingone" @click="saveHisPatient9504('form')"
  161. type="primary">挂号
  162. </el-button>
  163. </div>
  164. </div>
  165. <div v-else class="app-container">
  166. <div class="nameTitle">患者基本信息:</div>
  167. <div class="formMain">
  168. <el-form class="basicForm" :model="form" :rules="rules" ref="form" label-width="100px">
  169. <!--<el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">-->
  170. <!--&lt;!&ndash; <el-input v-model="form.name"></el-input> &ndash;&gt;-->
  171. <!--<el-select v-model="form.name" placeholder="请选择" @change="changeName">-->
  172. <!--<el-option-->
  173. <!--v-for="item,index in patient"-->
  174. <!--:key="index"-->
  175. <!--:label="item.name"-->
  176. <!--:value="item.id">-->
  177. <!--</el-option>-->
  178. <!--</el-select>-->
  179. <!--</el-form-item>-->
  180. <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
  181. <el-autocomplete
  182. class="checkSearch"
  183. popper-class="my-autocomplete"
  184. v-model="form.name"
  185. :fetch-suggestions="querySearchAsync"
  186. :trigger-on-focus="false"
  187. placeholder="请输入病人名字"
  188. @select="handleSelect"
  189. style="width:160px;"
  190. >
  191. <i class="el-icon-search el-input__icon" slot="suffix"></i>
  192. <template slot-scope="{ item }">
  193. <div class="name">{{ item.name }}</div>
  194. </template>
  195. </el-autocomplete>
  196. </el-form-item>
  197. <el-form-item label="性别:" prop="sex" :validate-event="is_Name">
  198. <el-select v-model="form.sex" placeholder="请选择">
  199. <el-option
  200. v-for="item in sex"
  201. :key="item.value"
  202. :label="item.label"
  203. :value="item.value">
  204. </el-option>
  205. </el-select>
  206. </el-form-item>
  207. <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
  208. <el-input v-model="form.age"></el-input>
  209. </el-form-item>
  210. <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
  211. <el-date-picker v-model="form.birthday" type="date" @change="getBirthday"
  212. placeholder="选择日期"></el-date-picker>
  213. </el-form-item>
  214. <el-form-item label="手机号码:" prop="phone">
  215. <el-input v-model="form.phone"></el-input>
  216. </el-form-item>
  217. <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
  218. <el-select v-model="form.certificates" placeholder="请选择">
  219. <el-option
  220. v-for="item in certificates"
  221. :key="item.value"
  222. :label="item.label"
  223. :value="item.value">
  224. </el-option>
  225. </el-select>
  226. </el-form-item>
  227. <el-form-item label="证件号码:" prop="idCard" :validate-event="is_Name">
  228. <el-input v-model="form.idCard"></el-input>
  229. </el-form-item>
  230. <el-form-item label="结算类型:">
  231. <el-select v-model="form.settlementValue" placeholder="请选择">
  232. <el-option
  233. v-for="item in settlement"
  234. :key="item.value"
  235. :label="item.label"
  236. :value="item.value">
  237. </el-option>
  238. </el-select>
  239. </el-form-item>
  240. <el-form-item label="社保类型:">
  241. <el-select v-model="form.social_type" placeholder="请选择">
  242. <!-- <el-option
  243. v-for="(item,index) in getDictionaryDataConfig('system','social_type')"
  244. :key="index"
  245. :label="item.name"
  246. :value="item.id">
  247. </el-option> -->
  248. <el-option
  249. v-for="item in medicalCare"
  250. :key="item.value"
  251. :label="item.label"
  252. :value="item.value">
  253. </el-option>
  254. </el-select>
  255. </el-form-item>
  256. <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
  257. <el-select v-model="form.id_card_type" placeholder="请选择">
  258. <el-option
  259. v-for="item in IDCardTypes"
  260. :key="item.value"
  261. :label="item.label"
  262. :value="item.value">
  263. </el-option>
  264. </el-select>
  265. </el-form-item>
  266. <el-form-item class="specialFormItem" label="医保卡号:">
  267. <div style="display:flex;">
  268. <el-input v-model="form.medicalInsuranceCard"></el-input>
  269. <el-button style="margin-left:10px;" type="primary" @click="reading">读卡</el-button>
  270. </div>
  271. </el-form-item>
  272. </el-form>
  273. </div>
  274. <div class="nameTitle">患者挂号信息:</div>
  275. <div class="formMain">
  276. <el-form class="basicForm" :model="form" :rules="rules" ref="form" label-width="100px">
  277. <el-form-item label="挂号类型:" prop="register" :validate-event="is_Name">
  278. <el-select v-model="form.register" placeholder="请选择">
  279. <el-option
  280. v-for="item in his_registers"
  281. :key="item.value"
  282. :label="item.label"
  283. :value="item.value">
  284. </el-option>
  285. </el-select>
  286. </el-form-item>
  287. <el-form-item label="处方类型:" prop="p_type" :validate-event="is_Name">
  288. <el-select style="margin-right:5px;width:100px;" v-model="form.p_type" placeholder=""
  289. >
  290. <el-option
  291. v-for="(item,index) in registers"
  292. :key="index"
  293. :label="item.label"
  294. :value="item.value">
  295. </el-option>
  296. </el-select>
  297. </el-form-item>
  298. <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
  299. <el-select style="margin-right:5px;width:100px;" v-model="form.sick_type" placeholder="">
  300. <el-option
  301. v-for="(item,index) in sick"
  302. :key="index"
  303. :label="item.class_name"
  304. :value="item.id">
  305. </el-option>
  306. </el-select>
  307. </el-form-item>
  308. <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
  309. <el-select style="margin-right:5px;width:100px;" v-model="form.diagnosis" placeholder="">
  310. <el-option
  311. v-for="(item,index) in diagnoses"
  312. :key="index"
  313. :label="item.class_name"
  314. :value="item.id">
  315. </el-option>
  316. </el-select>
  317. </el-form-item>
  318. <el-form-item label="医疗类别:">
  319. <el-select v-model="form.medicalCare" placeholder="请选择">
  320. <el-option
  321. v-for="(item,index) in medical_care"
  322. :key="index"
  323. :label="item.label"
  324. :value="item.value">
  325. </el-option>
  326. </el-select>
  327. </el-form-item>
  328. <el-form-item label="医生:" prop="doctor" :validate-event="is_Name">
  329. <el-select v-model="form.doctor" placeholder="请选择" @change="changeDoctor">
  330. <el-option
  331. v-for="item in doctorList"
  332. :key="item.admin_user_id"
  333. :label="item.user_name"
  334. :value="item.admin_user_id">
  335. </el-option>
  336. </el-select>
  337. </el-form-item>
  338. <el-form-item label="科室:" prop="department" :validate-event="is_Name">
  339. <el-select v-model="form.department" placeholder="请选择">
  340. <el-option
  341. v-for="item in departmentList"
  342. :key="item.id"
  343. :label="item.name"
  344. :value="item.id">
  345. </el-option>
  346. </el-select>
  347. </el-form-item>
  348. <!-- <el-form-item>
  349. <el-checkbox v-model="form.costChecked">是否需要工本费</el-checkbox>
  350. </el-form-item> -->
  351. <el-form-item label="挂号费:">
  352. <el-input v-model.number="form.registrationFee"></el-input>
  353. </el-form-item>
  354. <el-form-item label="诊疗费:">
  355. <el-input v-model.number="form.medicalExpenses"></el-input>
  356. </el-form-item>
  357. <el-form-item label="工本费:">
  358. <el-input v-model.number="form.cost"></el-input>
  359. </el-form-item>
  360. <el-form-item label="合计:">
  361. <el-input v-model.number="total" readonly></el-input>
  362. </el-form-item>
  363. <el-form-item>
  364. <!-- <el-input v-model="form.name"></el-input> -->
  365. </el-form-item>
  366. </el-form>
  367. <el-button style="float:right" @click="saveHisPatient('form')" v-loading="loadingone" type="primary">挂号</el-button>
  368. </div>
  369. </div>
  370. </div>
  371. </template>
  372. <script>
  373. import { PostSearch } from '@/api/patient'
  374. import BreadCrumb from '@/xt_pages/components/bread-crumb'
  375. import { basename } from 'path'
  376. import {
  377. getAllDoctorList,
  378. getPatientDetail,
  379. getTodaySchedulePatient,
  380. getUnRegisterHisPatientList,
  381. saveHisPatient
  382. } from '@/api/project/project'
  383. import { getDictionaryDataConfig } from '@/utils/data'
  384. import { jsGetAge, uParseTime } from '@/utils/tools'
  385. import { getInitData } from '@/api/his/his'
  386. import axios from 'axios'
  387. const moment = require('moment')
  388. export default {
  389. components: {
  390. BreadCrumb
  391. },
  392. data() {
  393. return {
  394. loadingone: false,
  395. read_loading: false,
  396. registers: [
  397. { value: 11, label: '普通门诊' },
  398. { value: 12, label: '门诊挂号' },
  399. { value: 13, label: '急诊' },
  400. { value: 14, label: '门诊特殊病' },
  401. { value: 15, label: '门诊统筹' },
  402. { value: 16, label: '门诊慢性病' },
  403. { value: 21, label: '普通住院' }
  404. ],
  405. sick: [],
  406. diagnoses: [],
  407. crumbs: [
  408. { path: false, name: '门诊挂号' },
  409. { path: false, name: '门诊挂号' }
  410. ],
  411. form: {
  412. id: 0,
  413. p_type: '',
  414. sick_type: '',
  415. diagnosis: '',
  416. settlementValue: '',
  417. medicalInsuranceCard: '',
  418. name: '',
  419. sex: '',
  420. certificates: 1,
  421. medicalCare: '',
  422. birthday: '',
  423. age: '',
  424. idCard: '',
  425. register: '',
  426. doctor: '',
  427. department: '',
  428. costChecked: false,
  429. registrationFee: '',
  430. medicalExpenses: '',
  431. cost: '',
  432. total: '',
  433. phone: '',
  434. social_type: '',
  435. id_card_type: 2
  436. },
  437. medical_care: [
  438. { value: 11, label: '普通门诊' },
  439. { value: 12, label: '家庭通道' },
  440. { value: 13, label: '门诊大病' },
  441. { value: 14, label: '重疾特药' },
  442. { value: 15, label: '门诊慢病' },
  443. { value: 16, label: '门诊特检' },
  444. { value: 17, label: '健康体检' },
  445. { value: 18, label: '预防接种' },
  446. { value: 19, label: '门诊输血' },
  447. { value: 91, label: '新冠肺炎门诊' }
  448. ],
  449. settlement:
  450. [
  451. { value: 1, label: '医保' },
  452. { value: 2, label: '自费' },
  453. { value: 3, label: '公费' },
  454. { value: 4, label: '农保' },
  455. { value: 5, label: '会员' },
  456. { value: 6, label: '职工' },
  457. { value: 7, label: '合同' }
  458. ],
  459. sex: [{
  460. value: 1,
  461. label: '男'
  462. }, {
  463. value: 2,
  464. label: '女'
  465. }],
  466. certificates: [{
  467. value: 1,
  468. label: '内地身份证'
  469. }, {
  470. value: 2,
  471. label: '社保卡'
  472. }, {
  473. value: 3,
  474. label: '护照'
  475. }, {
  476. value: 4,
  477. label: '军官证'
  478. }, {
  479. value: 5,
  480. label: '台胞证'
  481. }, {
  482. value: 6,
  483. label: '港澳地区身份证'
  484. }],
  485. IDCardTypes: [{
  486. value: 1,
  487. label: '社保卡'
  488. }, {
  489. value: 2,
  490. label: '身份证'
  491. }, {
  492. value: 3,
  493. label: '电子凭证'
  494. }],
  495. medicalCare: [{
  496. value: 1,
  497. label: '职工基本医疗保险'
  498. }, {
  499. value: 2,
  500. label: '公务员医疗补助'
  501. }, {
  502. value: 3,
  503. label: '大额医疗费用补助'
  504. }, {
  505. value: 4,
  506. label: '离休人员医疗'
  507. }, {
  508. value: 5,
  509. label: '城乡居民基本医疗保险'
  510. }, {
  511. value: 6,
  512. label: '城乡居民大病医疗保险'
  513. },
  514. {
  515. value: 7,
  516. label: '生育保险'
  517. }],
  518. his_registers: [{
  519. value: 1,
  520. label: '普通'
  521. }, {
  522. value: 2,
  523. label: '主治'
  524. }, {
  525. value: 3,
  526. label: '主任'
  527. }, {
  528. value: 4,
  529. label: '免收诊金'
  530. }, {
  531. value: 5,
  532. label: '专家'
  533. }],
  534. baseinfo: {
  535. certno: '440221195903290027',
  536. psn_no: '0221201972',
  537. gend: '2',
  538. brdy: '1960-03-29',
  539. naty: '01',
  540. psn_cert_type: '01',
  541. psn_name: '杨美英',
  542. age: 60.7
  543. },
  544. rules2: {
  545. name: [{ required: true, message: '患者姓名不能为空', trigger: 'blur' }],
  546. sex: [{ required: true, message: '患者性别不能为空', trigger: 'blur' }],
  547. idCard: [{ required: true, message: '证件号码不能为空', trigger: 'blur' }],
  548. register: [{ required: true, message: '请选择挂号类型', trigger: 'blur' }],
  549. doctor: [{ required: true, message: '请选择医生', trigger: 'blur' }],
  550. department: [{ required: true, message: '请填写科室', trigger: 'blur' }],
  551. age: [{ required: true, message: '患者年龄不能为空', trigger: 'blur' }],
  552. birthday: [{ required: true, message: '患者出生日期不能为空', trigger: 'blur' }],
  553. certificates: [{ required: true, message: '证件类型不能为空', trigger: 'change' }],
  554. id_card_type: [{ required: true, message: '读卡类型不能为空', trigger: 'change' }],
  555. medicalCare: [{ required: true, message: '医疗类别不能为空', trigger: 'change' }]
  556. },
  557. rules: {
  558. name: [{ required: true, message: '患者姓名不能为空', trigger: 'blur' }],
  559. sex: [{ required: true, message: '患者性别不能为空', trigger: 'blur' }],
  560. idCard: [{ required: true, message: '证件号码不能为空', trigger: 'blur' }],
  561. register: [{ required: true, message: '请选择挂号类型', trigger: 'blur' }],
  562. doctor: [{ required: true, message: '请选择医生', trigger: 'blur' }],
  563. department: [{ required: true, message: '请填写科室', trigger: 'blur' }],
  564. age: [{ required: true, message: '患者年龄不能为空', trigger: 'blur' }],
  565. birthday: [{ required: true, message: '患者出生日期不能为空', trigger: 'blur' }],
  566. certificates: [{ required: true, message: '证件类型不能为空', trigger: 'change' }],
  567. id_card_type: [{ required: true, message: '读卡类型不能为空', trigger: 'change' }],
  568. p_type: [{ required: true, message: '处方类型不能为空', trigger: 'change' }],
  569. sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
  570. diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
  571. },
  572. doctorList: [],
  573. departmentList: [],
  574. check: 0,
  575. show: false,
  576. is_Name: false,
  577. patient: [],
  578. scialType: []
  579. }
  580. },
  581. computed: {
  582. total() {
  583. if (this.form.registrationFee || this.form.medicalExpenses || this.form.cost) {
  584. return parseFloat(this.form.registrationFee ? this.form.registrationFee : 0) + parseFloat(this.form.medicalExpenses ? this.form.medicalExpenses : 0) + parseFloat(this.form.cost ? this.form.cost : 0)
  585. }
  586. }
  587. },
  588. methods: {
  589. changeReg() {
  590. console.log(this.form.register)
  591. if (this.form.register != 4) {
  592. this.form.registrationFee = 10
  593. } else {
  594. this.form.registrationFee = 0
  595. }
  596. },
  597. handleSelect(val) {
  598. this.form.id = val.id
  599. this.form.name = val.name
  600. this.form.sex = val.gender
  601. this.form.age = val.age
  602. this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}')
  603. this.form.phone = val.phone
  604. this.form.idCard = val.id_card_no
  605. var thisLen = this.form.idCard.length
  606. var birth = ''
  607. if (thisLen == 15) {
  608. birth = '19' + this.form.idCard.substr(6, 6)
  609. } else {
  610. birth = this.form.idCard.substr(6, 8)
  611. }
  612. var births =
  613. birth.substr(0, 4) +
  614. '-' +
  615. birth.substr(4, 2) +
  616. '-' +
  617. birth.substr(6, 2)
  618. this.form.age = jsGetAge(births, '-')
  619. },
  620. querySearchAsync(keyword, cb) {
  621. let key = ''
  622. if (keyword != undefined) {
  623. key = keyword
  624. }
  625. let searchArray = []
  626. PostSearch(key).then(response => {
  627. if (response.data.state == 1) {
  628. searchArray = response.data.data.patient
  629. cb(searchArray)
  630. } else {
  631. cb([])
  632. }
  633. })
  634. },
  635. readingSZ() {
  636. var that = this
  637. if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
  638. this.$message.error('请先选择读卡类型')
  639. return
  640. }
  641. this.read_loading = true
  642. let params = {
  643. 'id_card_type': this.form.id_card_type
  644. }
  645. axios.get('http://127.0.0.1:9532/sz/api/readcard', {
  646. params: params
  647. })
  648. .then(function(response) {
  649. if (response.data.state == 0) {
  650. that.read_loading = false
  651. that.$message.error(response.data.msg)
  652. return false
  653. } else {
  654. that.read_loading = false
  655. var patient = response.data.data.patient
  656. if (that.form.id_card_type == 1) {
  657. that.form.id = patient.id
  658. that.form.name = patient.name
  659. that.form.sex = patient.gender
  660. that.form.age = patient.age
  661. that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
  662. that.form.phone = patient.phone
  663. that.form.idCard = patient.id_card_no
  664. that.form.medicalInsuranceCard = response.data.data.health_card_no
  665. } else if (that.form.id_card_type == 2) {
  666. this.form.id = patient.id
  667. that.form.name = patient.name
  668. that.form.sex = patient.gender
  669. that.form.age = patient.age
  670. that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
  671. that.form.phone = patient.phone
  672. that.form.idCard = patient.id_card_no
  673. }
  674. that.$message({ message: '读卡成功', type: 'success' })
  675. }
  676. })
  677. .catch(function(error) {
  678. })
  679. },
  680. reading(medicalInsuranceCard) {
  681. var that = this
  682. if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
  683. this.$message.error('请先选择读卡类型')
  684. return
  685. }
  686. let params = {
  687. 'id_card_type': this.form.id_card_type
  688. }
  689. axios.get('http://127.0.0.1:9532/api/sscard', {
  690. params: params
  691. })
  692. .then(function(response) {
  693. if (response.data.state == 0) {
  694. that.$message.error(response.data.msg)
  695. return false
  696. } else {
  697. var patient = response.data.data.patient
  698. if (that.form.id_card_type == 1) {
  699. that.form.name = patient.ID
  700. that.form.sex = patient.gender
  701. that.form.age = patient.age
  702. that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
  703. that.form.phone = patient.phone
  704. that.form.idCard = patient.id_card_no
  705. that.form.medicalInsuranceCard = response.data.data.number
  706. } else if (that.form.id_card_type == 2) {
  707. that.form.name = patient.ID
  708. that.form.sex = patient.gender
  709. that.form.age = patient.age
  710. that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
  711. that.form.phone = patient.phone
  712. that.form.idCard = patient.id_card_no
  713. }
  714. that.$message({ message: '读卡成功', type: 'success' })
  715. }
  716. })
  717. .catch(function(error) {
  718. })
  719. },
  720. getBirthday(date) {
  721. console.log(date)
  722. let curTime = moment(new Date(date)).format('YYYY-MM-DD')
  723. console.log('curTime22222', curTime)
  724. console.log(this.jsGetAge(curTime))
  725. this.form.age = this.jsGetAge(curTime)
  726. },
  727. jsGetAge(strBirthday) { //传入形式yyyy-MM-dd
  728. //strBirthday = util.formatTime(strBirthday);转换成yyyy-MM-dd形式
  729. var returnAge
  730. var strBirthdayArr = strBirthday.split('-')
  731. var birthYear = strBirthdayArr[0]
  732. var birthMonth = strBirthdayArr[1]
  733. var birthDay = strBirthdayArr[2]
  734. var d = new Date()
  735. var nowYear = d.getFullYear()
  736. var nowMonth = d.getMonth() + 1
  737. var nowDay = d.getDate()
  738. if (nowYear == birthYear) {
  739. returnAge = 0 //同年 则为0岁
  740. } else {
  741. var ageDiff = nowYear - birthYear //年之差
  742. if (ageDiff > 0) {
  743. if (nowMonth == birthMonth) {
  744. var dayDiff = nowDay - birthDay //日之差
  745. if (dayDiff < 0) {
  746. returnAge = ageDiff - 1
  747. } else {
  748. returnAge = ageDiff
  749. }
  750. } else {
  751. var monthDiff = nowMonth - birthMonth //月之差
  752. if (monthDiff < 0) {
  753. returnAge = ageDiff - 1
  754. } else {
  755. returnAge = ageDiff
  756. }
  757. }
  758. } else {
  759. returnAge = -1 //返回-1 表示出生日期输入错误 晚于今天
  760. }
  761. }
  762. return returnAge //返回周岁年龄
  763. },
  764. getForm() {
  765. this.form.total = this.total
  766. if (localStorage.getItem('temp')) {
  767. let a = JSON.parse(localStorage.getItem('temp'))
  768. // let arr = []
  769. this.form.create_time = new Date(new Date().toLocaleDateString()).getTime() / 1000
  770. this.form.org_id = this.$store.getters.xt_user.org_id
  771. a.push(this.form)
  772. console.log(111, a)
  773. localStorage.setItem('temp', JSON.stringify(a))
  774. Object.keys(this.form).forEach((key) => {
  775. this.form[key] = ''
  776. })
  777. this.$message({ message: '添加成功', type: 'success' })
  778. } else {
  779. let arr = []
  780. this.form.create_time = new Date(new Date().toLocaleDateString()).getTime() / 1000
  781. this.form.org_id = this.$store.getters.xt_user.org_id
  782. arr.push(this.form)
  783. localStorage.setItem('temp', JSON.stringify(arr))
  784. Object.keys(this.form).forEach((key) => {
  785. this.form[key] = ''
  786. })
  787. this.$message({ message: '添加成功', type: 'success' })
  788. }
  789. },
  790. getAllDoctorList() {
  791. getAllDoctorList().then(response => {
  792. if (response.data.state == 1) {
  793. var doctor = response.data.data.doctor
  794. console.log('doctor-----', doctor)
  795. this.doctorList = doctor
  796. var department = response.data.data.department
  797. console.log('department', department)
  798. this.departmentList = department
  799. }
  800. })
  801. }, saveHisPatient9504(formName) {
  802. if (this.form.name == '') {
  803. this.$message.error('患者姓名不能为空')
  804. this.is_Name = true
  805. return
  806. }
  807. if (this.form.sex == '') {
  808. this.$message.error('患者性别不能为空')
  809. }
  810. if (this.form.register == '') {
  811. this.$message.error('挂号类型不能为空')
  812. this.is_Name = true
  813. return
  814. }
  815. // if (this.form.doctor == '') {
  816. // this.$message.error('医生不能为空')
  817. // this.is_Name = true
  818. // return
  819. // }
  820. if (this.form.department == '') {
  821. this.$message.error('科室不能为空')
  822. this.is_Name = true
  823. return
  824. }
  825. if (this.form.age == '') {
  826. this.$message.error('患者年龄不能为空')
  827. this.is_Name = true
  828. return
  829. }
  830. if (this.form.birthday == '') {
  831. this.$message.error('出生日期不能为空')
  832. this.is_Name = true
  833. return
  834. }
  835. if (this.form.id_card_type == '') {
  836. this.$message.error('读卡类型不能为空')
  837. this.is_Name = true
  838. return
  839. }
  840. if (this.form.idCard == '') {
  841. this.$message.error('证件号码不能为空')
  842. this.is_Name = true
  843. return
  844. }
  845. this.$refs[formName].validate((valid) => {
  846. if (valid) {
  847. var params = {
  848. id: this.form.id,
  849. settlement_value: this.form.settlementValue,
  850. medical_insurance_card: this.form.medicalInsuranceCard,
  851. name: this.form.name,
  852. sex: this.form.sex,
  853. id_card_type: this.form.id_card_type,
  854. certificates: this.form.certificates,
  855. medical_care: this.form.medicalCare,
  856. birthday: moment(new Date(this.form.birthday)).format('YYYY-MM-DD'),
  857. age: parseInt(this.form.age),
  858. id_card: this.form.idCard,
  859. register: this.form.register,
  860. doctor: this.form.doctor,
  861. department: this.form.department,
  862. costChecked: this.check,
  863. registration_fee: this.form.registrationFee,
  864. medical_expenses: this.form.medicalExpenses,
  865. cost: this.form.cost,
  866. total: this.total,
  867. phone: this.form.phone,
  868. social_type: this.form.social_type,
  869. p_type: this.form.p_type,
  870. diagnosis: this.form.diagnosis,
  871. sick_type: this.form.sick_type
  872. }
  873. params['record_time'] = this.record_date
  874. params['admin_user_id'] = this.$store.getters.xt_user.user.id
  875. this.loadingone = true
  876. if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
  877. var that = this
  878. axios.get('http://127.0.0.1:9532/sz/api/register/get', {
  879. params: params,
  880. headers: {
  881. 'Permission': 5
  882. }
  883. })
  884. .then(function(response) {
  885. if (response.data.state == 0) {
  886. that.$message.error(response.data.msg)
  887. that.loadingone = false
  888. return false
  889. } else {
  890. if (response.data.data.failed_code == -10) {
  891. that.$message.error(response.data.data.msg)
  892. } else {
  893. that.$message({ message: '挂号成功', type: 'success' })
  894. that.form.settlementValue = ''
  895. that.form.medicalInsuranceCard = ''
  896. that.form.name = ''
  897. that.form.sex = ''
  898. that.form.certificates = ''
  899. that.form.medicalCare = ''
  900. that.form.birthday = ''
  901. that.form.age = ''
  902. that.form.idCard = ''
  903. that.form.register = ''
  904. that.form.doctor = ''
  905. that.form.department = ''
  906. that.form.costChecked = false
  907. that.form.registrationFee = ''
  908. that.form.medicalExpenses = ''
  909. that.form.cost = ''
  910. that.form.total = ''
  911. that.form.phone = ''
  912. that.form.social_type = ''
  913. that.loadingone = false
  914. that.form.p_type = 14
  915. that.form.sick_type = that.sick[0].id
  916. that.form.diagnosis = that.diagnoses[0].id
  917. }
  918. }
  919. })
  920. .catch(function(error) {
  921. })
  922. } else if (this.$store.getters.xt_user.org_id == 9919 || this.$store.getters.xt_user.org_id == 10106 || this.$store.getters.xt_user.org_id == 9538 || this.$store.getters.xt_user.org_id == 9990) {
  923. var that = this
  924. axios.get('http://127.0.0.1:9532/api/register/get', {
  925. params: params,
  926. headers: {
  927. 'Permission': 5
  928. }
  929. })
  930. .then(function(response) {
  931. if (response.data.state == 0) {
  932. that.$message.error(response.data.msg)
  933. that.loadingone = false
  934. that.$refs.register.hide()
  935. return false
  936. } else {
  937. that.loadingone = false
  938. if (response.data.data.failed_code == -10) {
  939. that.$message.error(response.data.data.msg)
  940. return
  941. } else {
  942. that.$message({ message: '挂号成功', type: 'success' })
  943. that.form.settlementValue = ''
  944. that.form.medicalInsuranceCard = ''
  945. that.form.name = ''
  946. that.form.sex = ''
  947. that.form.certificates = ''
  948. that.form.medicalCare = ''
  949. that.form.birthday = ''
  950. that.form.age = ''
  951. that.form.idCard = ''
  952. that.form.register = ''
  953. that.form.doctor = ''
  954. that.form.department = ''
  955. that.form.costChecked = false
  956. that.form.registrationFee = ''
  957. that.form.medicalExpenses = ''
  958. that.form.cost = ''
  959. that.form.total = ''
  960. that.form.phone = ''
  961. that.form.social_type = ''
  962. that.form.p_type = 14
  963. that.form.sick_type = that.sick[0].id
  964. that.form.diagnosis = that.diagnoses[0].id
  965. }
  966. // var his_info = response.data.data.his_info
  967. // that.hisPatientInfo = his_info
  968. }
  969. })
  970. .catch(function(error) {
  971. })
  972. } else {
  973. var that = this
  974. saveHisPatient(params).then(response => {
  975. if (response.data.state == 1) {
  976. var patient = response.data.data.patient
  977. this.getTodaySchedulePatient()
  978. this.$message({ message: '挂号成功', type: 'success' })
  979. this.form.settlementValue = ''
  980. this.form.medicalInsuranceCard = ''
  981. this.form.name = ''
  982. this.form.sex = ''
  983. this.form.certificates = ''
  984. this.form.medicalCare = ''
  985. this.form.birthday = ''
  986. this.form.age = ''
  987. this.form.idCard = ''
  988. this.form.register = ''
  989. this.form.doctor = ''
  990. this.form.department = ''
  991. this.form.costChecked = false
  992. this.form.registrationFee = ''
  993. this.form.medicalExpenses = ''
  994. this.form.cost = ''
  995. this.form.total = ''
  996. this.form.phone = ''
  997. this.form.social_type = ''
  998. this.loadingone = false
  999. this.form.p_type = 14
  1000. this.form.sick_type = this.sick[0].id
  1001. this.form.diagnosis = this.diagnoses[0].id
  1002. } else {
  1003. this.$message.error('今日患者已挂号!')
  1004. }
  1005. })
  1006. }
  1007. }
  1008. })
  1009. },
  1010. saveHisPatient(formName) {
  1011. if (this.form.name == '') {
  1012. this.$message.error('患者姓名不能为空')
  1013. this.is_Name = true
  1014. return
  1015. }
  1016. if (this.form.sex == '') {
  1017. this.$message.error('患者性别不能为空')
  1018. }
  1019. if (this.form.register == '') {
  1020. this.$message.error('挂号类型不能为空')
  1021. this.is_Name = true
  1022. return
  1023. }
  1024. if (this.form.doctor == '') {
  1025. this.$message.error('医生不能为空')
  1026. this.is_Name = true
  1027. return
  1028. }
  1029. if (this.form.department == '') {
  1030. this.$message.error('科室不能为空')
  1031. this.is_Name = true
  1032. return
  1033. }
  1034. if (this.form.age == '') {
  1035. this.$message.error('患者年龄不能为空')
  1036. this.is_Name = true
  1037. return
  1038. }
  1039. if (this.form.birthday == '') {
  1040. this.$message.error('出生日期不能为空')
  1041. this.is_Name = true
  1042. return
  1043. }
  1044. if (this.form.id_card_type == '') {
  1045. this.$message.error('读卡类型不能为空')
  1046. this.is_Name = true
  1047. return
  1048. }
  1049. if (this.form.idCard == '') {
  1050. this.$message.error('证件号码不能为空')
  1051. this.is_Name = true
  1052. return
  1053. }
  1054. if (this.form.p_type == '') {
  1055. this.$message.error('处方类型不能为空')
  1056. this.is_Name = true
  1057. return
  1058. }
  1059. if (this.form.diagnosis == '') {
  1060. this.$message.error('诊断不能为空')
  1061. this.is_Name = true
  1062. return
  1063. }
  1064. if (this.form.sick_type == '') {
  1065. this.$message.error('大病类别不能为空')
  1066. this.is_Name = true
  1067. return
  1068. }
  1069. this.$refs[formName].validate((valid) => {
  1070. if (valid) {
  1071. if (this.form.costChecked == true) {
  1072. this.check = 1
  1073. }
  1074. if (this.form.costChecked == false) {
  1075. this.check = 2
  1076. }
  1077. if (this.form.idCard == '') {
  1078. this.show = true
  1079. }
  1080. var params = {
  1081. id: this.form.id,
  1082. settlement_value: this.form.settlementValue,
  1083. medical_insurance_card: this.form.medicalInsuranceCard,
  1084. name: this.form.name,
  1085. sex: this.form.sex,
  1086. id_card_type: this.form.id_card_type,
  1087. certificates: this.form.certificates,
  1088. medical_care: this.form.medicalCare,
  1089. birthday: moment(new Date(this.form.birthday)).format('YYYY-MM-DD'),
  1090. age: parseInt(this.form.age),
  1091. id_card: this.form.idCard,
  1092. register: this.form.register,
  1093. doctor: this.form.doctor,
  1094. department: this.form.department,
  1095. costChecked: this.check,
  1096. registration_fee: this.form.registrationFee,
  1097. medical_expenses: this.form.medicalExpenses,
  1098. cost: this.form.cost,
  1099. total: this.total,
  1100. phone: this.form.phone,
  1101. social_type: this.form.social_type,
  1102. p_type: this.form.p_type,
  1103. diagnosis: this.form.diagnosis,
  1104. sick_type: this.form.sick_type
  1105. }
  1106. params['record_time'] = this.record_date,
  1107. params['admin_user_id'] = this.$store.getters.xt_user.user.id
  1108. this.loadingone = true
  1109. if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
  1110. var that = this
  1111. axios.get('http://127.0.0.1:9532/sz/api/register/get', {
  1112. params: params,
  1113. headers: {
  1114. 'Permission': 5
  1115. }
  1116. })
  1117. .then(function(response) {
  1118. if (response.data.state == 0) {
  1119. that.$message.error(response.data.msg)
  1120. that.loadingone = false
  1121. that.$refs.register.hide()
  1122. return false
  1123. } else {
  1124. that.loadingone = false
  1125. if (response.data.data.failed_code == -10) {
  1126. that.$message.error(response.data.data.msg)
  1127. } else {
  1128. that.$message({ message: '挂号成功', type: 'success' })
  1129. that.form.settlementValue = ''
  1130. that.form.medicalInsuranceCard = ''
  1131. that.form.name = ''
  1132. that.form.sex = ''
  1133. that.form.certificates = ''
  1134. that.form.medicalCare = ''
  1135. that.form.birthday = ''
  1136. that.form.age = ''
  1137. that.form.idCard = ''
  1138. that.form.register = ''
  1139. that.form.doctor = ''
  1140. that.form.department = ''
  1141. that.form.costChecked = false
  1142. that.form.registrationFee = ''
  1143. that.form.medicalExpenses = ''
  1144. that.form.cost = ''
  1145. that.form.total = ''
  1146. that.form.phone = ''
  1147. that.form.social_type = ''
  1148. that.form.p_type = 14
  1149. that.form.sick_type = that.sick[0].id
  1150. that.form.diagnosis = that.diagnoses[0].id
  1151. }
  1152. }
  1153. })
  1154. .catch(function(error) {
  1155. })
  1156. } else if (this.$store.getters.xt_user.org_id == 9919 || this.$store.getters.xt_user.org_id == 10106 || this.$store.getters.xt_user.org_id == 4 || this.$store.getters.xt_user.org_id == 9538 || this.$store.getters.xt_user.org_id == 9990) {
  1157. var that = this
  1158. axios.get('http://127.0.0.1:9532/api/register/get', {
  1159. params: params,
  1160. headers: {
  1161. 'Permission': 5
  1162. }
  1163. })
  1164. .then(function(response) {
  1165. if (response.data.state == 0) {
  1166. that.$message.error(response.data.msg)
  1167. that.loadingone = false
  1168. return false
  1169. } else {
  1170. that.loadingone = false
  1171. if (response.data.data.failed_code == -10) {
  1172. that.$message.error(response.data.data.msg)
  1173. } else {
  1174. that.$message({ message: '挂号成功', type: 'success' })
  1175. that.form.settlementValue = ''
  1176. that.form.medicalInsuranceCard = ''
  1177. that.form.name = ''
  1178. that.form.sex = ''
  1179. that.form.certificates = ''
  1180. that.form.medicalCare = ''
  1181. that.form.birthday = ''
  1182. that.form.age = ''
  1183. that.form.idCard = ''
  1184. that.form.register = ''
  1185. that.form.doctor = ''
  1186. that.form.department = ''
  1187. that.form.costChecked = false
  1188. that.form.registrationFee = ''
  1189. that.form.medicalExpenses = ''
  1190. that.form.cost = ''
  1191. that.form.total = ''
  1192. that.form.phone = ''
  1193. that.form.social_type = ''
  1194. that.form.p_type = 14
  1195. that.form.sick_type = that.sick[0].id
  1196. that.form.diagnosis = that.diagnoses[0].id
  1197. }
  1198. }
  1199. })
  1200. .catch(function(error) {
  1201. })
  1202. } else {
  1203. saveHisPatient(params).then(response => {
  1204. if (response.data.state == 1) {
  1205. var patient = response.data.data.patient
  1206. this.getTodaySchedulePatient()
  1207. this.$message({ message: '挂号成功', type: 'success' })
  1208. this.form.settlementValue = ''
  1209. this.form.medicalInsuranceCard = ''
  1210. this.form.name = ''
  1211. this.form.sex = ''
  1212. this.form.certificates = ''
  1213. this.form.medicalCare = ''
  1214. this.form.birthday = ''
  1215. this.form.age = ''
  1216. this.form.idCard = ''
  1217. this.form.register = ''
  1218. this.form.doctor = ''
  1219. this.form.department = ''
  1220. this.form.costChecked = false
  1221. this.form.registrationFee = ''
  1222. this.form.medicalExpenses = ''
  1223. this.form.cost = ''
  1224. this.form.total = ''
  1225. this.form.phone = ''
  1226. this.form.social_type = ''
  1227. this.loadingone = false
  1228. this.form.p_type = 14
  1229. this.form.sick_type = this.sick[0].id
  1230. this.form.diagnosis = this.diagnoses[0].id
  1231. } else {
  1232. this.$message.error('今日患者已挂号!')
  1233. }
  1234. })
  1235. }
  1236. }
  1237. })
  1238. },
  1239. getTodaySchedulePatient() {
  1240. var nowDate = new Date()
  1241. var nowYear = nowDate.getFullYear()
  1242. var nowMonth = nowDate.getMonth() + 1
  1243. var nowDay = nowDate.getDate()
  1244. this.record_date =
  1245. nowYear +
  1246. '-' +
  1247. (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
  1248. '-' +
  1249. (nowDay < 10 ? '0' + nowDay : nowDay)
  1250. let params = {
  1251. record_date: this.record_date
  1252. }
  1253. getUnRegisterHisPatientList(params).then(response => {
  1254. if (response.data.state == 1) {
  1255. var patient = response.data.data.list
  1256. console.log('今日排班', patient)
  1257. this.patient = patient
  1258. }
  1259. })
  1260. },
  1261. getDictionaryDataConfig(module, filed_name) {
  1262. return getDictionaryDataConfig(module, filed_name)
  1263. },
  1264. changeDoctor(id) {
  1265. for (let i = 0; i < this.doctorList.length; i++) {
  1266. if (this.doctorList[i].admin_user_id == id) {
  1267. if (this.doctorList[i].department_id == 0) {
  1268. this.form.department = this.departmentList[0].id
  1269. } else {
  1270. this.form.department = this.doctorList[i].department_id
  1271. }
  1272. }
  1273. }
  1274. },
  1275. changeName(id) {
  1276. this.form.sex = ''
  1277. this.form.age = ''
  1278. this.form.birthday = ''
  1279. this.form.phone = ''
  1280. this.form.idCard = ''
  1281. getPatientDetail(id).then(response => {
  1282. if (response.data.state == 1) {
  1283. var patient = response.data.data.patient
  1284. console.log('patient', patient)
  1285. this.form.sex = patient.gender
  1286. this.form.age = patient.age
  1287. this.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
  1288. this.form.phone = patient.phone
  1289. this.form.idCard = patient.id_card_no
  1290. }
  1291. })
  1292. }, getInitData() {
  1293. getInitData().then(response => {
  1294. if (response.data.state == 0) {
  1295. this.$message.error(response.data.msg)
  1296. return false
  1297. } else {
  1298. this.doctors = response.data.data.doctors
  1299. this.department = response.data.data.department
  1300. this.sick = response.data.data.sick
  1301. this.diagnoses = response.data.data.diagnose
  1302. this.form.p_type = 14
  1303. this.form.sick_type = this.sick[0].id
  1304. this.form.diagnosis = this.diagnoses[0].id
  1305. }
  1306. })
  1307. }
  1308. },
  1309. created() {
  1310. if(this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028){
  1311. this.form.certificates = 2
  1312. this.form.id_card_type = 1
  1313. }else{
  1314. this.form.certificates = 1
  1315. this.form.id_card_type = 2
  1316. }
  1317. this.getInitData()
  1318. //获取当前机构有人员信息
  1319. this.getAllDoctorList()
  1320. //获取今日排班的患者
  1321. this.getTodaySchedulePatient()
  1322. }
  1323. }
  1324. </script>
  1325. <style lang="scss" scoped>
  1326. .nameTitle {
  1327. font-weight: bold;
  1328. font-size: 16px;
  1329. }
  1330. .formMain {
  1331. /*/ / padding: 10 px 90 px;*/
  1332. width: 80%;
  1333. margin: 0 auto;
  1334. }
  1335. .basicForm {
  1336. display: flex;
  1337. flex-wrap: wrap;
  1338. justify-content: space-between;
  1339. .el-form-item {
  1340. width: 33%;
  1341. }
  1342. .specialFormItem {
  1343. width: 66.5%;
  1344. .el-input {
  1345. min-width: 150px;
  1346. }
  1347. }
  1348. .el-select {
  1349. width: 100%;
  1350. }
  1351. .el-input {
  1352. width: 100%;
  1353. }
  1354. }
  1355. .el-form-item__error {
  1356. color: #F56C6C;
  1357. font-size: 12px;
  1358. line-height: 1;
  1359. padding-top: 4px;
  1360. position: absolute;
  1361. top: 100%;
  1362. left: 0;
  1363. }
  1364. </style>