You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

641 lines
22 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. <template>
  2. <div>
  3. <div>
  4. <div style="display: flex;justify-content:space-between;">
  5. <div class="contenttitle">
  6. 体检登记 /<span class="contenttitleBold">体检人员登记</span>
  7. </div>
  8. <div style="position: absolute;top:50px;right:10px;z-index: 2000;">
  9. <el-image
  10. style="margin-right:115px; width: 112px; height: 120px;"
  11. :src="peoplePhoto"
  12. >
  13. <div slot="placeholder" class="image-slot">
  14. 加载中<span class="dot">...</span>
  15. </div>
  16. </el-image>
  17. </div>
  18. </div>
  19. <div style="display: flex;">
  20. <div :style="`width:${window.pageWidth - 120}px;`">
  21. <div style="display: flex;justify-content:space-between;z-index:-1;" >
  22. <div>
  23. <PatientRegisterBase />
  24. </div>
  25. <div>
  26. <el-image
  27. :style="'margin-top:-80px; width: 120px; height: 130px;z-index:-1;'"
  28. :src="peoplePhoto"
  29. >
  30. <div slot="placeholder" class="image-slot">
  31. 加载中<span class="dot">...</span>
  32. </div>
  33. </el-image>
  34. </div>
  35. </div>
  36. <div style="display: flex;">
  37. <el-tabs v-model="activeName" tab-position="bottom" style="width: 200px;">
  38. <el-tab-pane label="组合项目" name="asbitem">
  39. <RegisterCheckList />
  40. </el-tab-pane>
  41. <el-tab-pane label="叫号" name="call">
  42. <div :style="`height:${window.pageHeight < 600 ? 400:window.pageHeight-200}px;`">叫号</div>
  43. </el-tab-pane>
  44. </el-tabs>
  45. <div :style="'width:' + (window.pageWidth - 200 - 110 - 15) + 'px;'" >
  46. <div :style="'margin-left: 2px;width:' + (window.pageWidth - 200 - 110 - 15 - 2) + 'px;'" >
  47. <CheckItemList :isCheckPicture="isCheckPicture" :registerCheckId="dataTransOpts.tableS.register_check.id"/>
  48. </div>
  49. <div v-if="isCheckPicture" class="demo-image__preview" :style="'margin-top: 2px;margin-left: 2px;height:110px;width:' + (window.pageWidth - 200 - 110 - 45 - 2) + 'px;'">
  50. <CheckPicture />
  51. </div>
  52. <div :style="'margin-top: 2px;margin-left: 2px;width:' + (window.pageWidth - 200 - 110 - 15 - 2) + 'px;'">
  53. <CheckSumSug :registerCheckId="dataTransOpts.tableS.register_check.id" :isCheckPicture="isCheckPicture" :optGrant="optGrant" :addSummary="addSummary" :btnMakeDiagnosis="btnMakeDiagnosis" :save="save" :audit="audit" :unAudit="unAudit" :btnLineUp="btnLineUp"/>
  54. </div>
  55. <div :style="'margin-top: 2px;width:' + (window.pageWidth - 200 - 110 - 15 - 2) + 'px;'">
  56. <RegisterCheckEdit :registerCheckId="dataTransOpts.tableS.register_check.id"/>
  57. </div>
  58. </div>
  59. </div>
  60. </div>
  61. <div style="width:110px;">
  62. <ButtonList :optGrant="optGrant" :addSummary="addSummary" :btnMakeDiagnosis="btnMakeDiagnosis" :save="save" :audit="audit" :unAudit="unAudit"/>
  63. </div>
  64. </div>
  65. </div>
  66. </div>
  67. </template>
  68. <script>
  69. import { mapState } from "vuex";
  70. import { getapi, postapi, putapi, deletapi } from "@/api/api";
  71. import { arrayExistObj,tcdate,photoParse } from "../../utlis/proFunc";
  72. import PatientRegisterBase from "../../components/doctorCheck/PatientRegisterBase.vue";
  73. import ButtonList from "../../components/doctorCheck/ButtonList.vue";
  74. import CheckPicture from "../../components/doctorCheck/CheckPicture.vue";
  75. import RegisterCheckList from "../../components/doctorCheck/RegisterCheckList.vue";
  76. import CheckItemList from "../../components/doctorCheck/CheckItemList.vue";
  77. import CheckSumSug from "../../components/doctorCheck/CheckSumSug.vue";
  78. import RegisterCheckEdit from "../../components/doctorCheck/RegisterCheckEdit.vue";
  79. import moment from 'moment';
  80. export default {
  81. components: {
  82. RegisterCheckList,
  83. PatientRegisterBase,
  84. ButtonList,
  85. CheckPicture,
  86. CheckItemList,
  87. CheckSumSug,
  88. RegisterCheckEdit
  89. },
  90. data() {
  91. return {
  92. peoplePhoto:'', //人员照片
  93. activeName:'asbitem',
  94. isCheckPicture:true, //是否显示结果图片
  95. };
  96. },
  97. created() {
  98. if (this.$peisAPI) {
  99. // this.$message.info("此功能,需要在壳客户端才可运行!");
  100. // console.log('this.$peisAPI',this.$peisAPI)
  101. this.$peisAPI.getIsCheckPicture().then(res =>{
  102. if(res) this.isCheckPicture = res
  103. })
  104. }
  105. },
  106. //挂载完成
  107. mounted() {
  108. this.dictInit();
  109. },
  110. computed: {
  111. ...mapState(["window","dataTransOpts","dict", "patientRegister", "customerOrg", "doctorCheck","sumDoctorCheck"]),
  112. },
  113. methods: {
  114. //数据初始化
  115. dictInit() {
  116. //性别(仅档案用)
  117. getapi("/api/app/sex").then((res) => {
  118. if (res.code == 1) {
  119. this.dict.sex = res.data;
  120. }
  121. });
  122. //性别(查询)
  123. getapi("/api/app/for-sex").then((res) => {
  124. if (res.code == 1) {
  125. this.dict.forSex = res.data;
  126. }
  127. });
  128. //体检中心
  129. getapi("/api/app/organization-units/organization-unit-by-is-peis").then(
  130. (res) => {
  131. if (res.code == 1) {
  132. this.dict.organization = res.data;
  133. }
  134. }
  135. );
  136. //体检单位
  137. getapi("/api/app/customer-org/in-filter").then((res) => {
  138. if (res.code == 1) {
  139. this.dict.customerOrg = res.data.items;
  140. }
  141. });
  142. //体检类别
  143. getapi("/api/app/medical-type/in-filter").then((res) => {
  144. if (res.code == 1) {
  145. this.dict.medicalType = res.data.items;
  146. }
  147. });
  148. //人员类别
  149. getapi("/api/app/personnel-type/in-filter").then((res) => {
  150. if (res.code == 1) {
  151. this.dict.personnelType = res.data.items;
  152. }
  153. });
  154. //婚姻状况
  155. getapi("/api/app/marital-statuses").then((res) => {
  156. if (res.code == 1) {
  157. this.dict.maritalStatus = res.data.items;
  158. }
  159. });
  160. //性激素期
  161. getapi("/api/app/sex-hormone-term/in-filter").then((res) => {
  162. if (res.code == 1) {
  163. this.dict.sexHormoneTerm = res.data.items;
  164. }
  165. });
  166. //民族
  167. getapi("/api/app/nation/in-filter").then((res) => {
  168. if (res.code == 1) {
  169. this.dict.nation = res.data.items;
  170. }
  171. });
  172. //籍惯 ,出生地
  173. getapi("/api/app/birth-place/in-filter").then((res) => {
  174. if (res.code == 1) {
  175. this.dict.birthPlace = res.data.items;
  176. }
  177. });
  178. //套餐
  179. postapi("/api/app/medicalpackage/getmedicalpackagelist",{}).then((res) => {
  180. if (res.code == 1) {
  181. this.dict.medicalPackage = res.data;
  182. }
  183. });
  184. //分组,所有分组,不限单位,不限次数
  185. getapi("/api/app/customer-org-group").then((res) => {
  186. if (res.code == 1) {
  187. this.dict.customerOrgGroupAll = res.data.items;
  188. }
  189. });
  190. //支付方式
  191. getapi("/api/app/pay-mode").then((res) => {
  192. if (res.code == 1) {
  193. this.dict.payMode = res.data;
  194. }
  195. });
  196. //体检类别 树结构
  197. getapi("/api/app/item-type/by-code-all").then((res) => {
  198. if (res.code == 1) {
  199. this.dict.itemTypeTree = res.data;
  200. tcdate(this.dict.itemTypeTree);
  201. }
  202. });
  203. //所有组合项目
  204. postapi("/api/app/asbitem/getasbitemlist",{isFilterActive:'Y'}).then((res) => {
  205. if (res.code == 1) {
  206. this.dict.asbItemAll = res.data;
  207. }
  208. });
  209. //获取体检单位列表树信息
  210. getapi("/api/app/customerorg/getbycodeall").then((res) => {
  211. //customerOrgTree = res.data;
  212. console.log("res.data", res.data);
  213. this.patientRegister.customerOrgTreeAll = res.data;
  214. tcdate(this.patientRegister.customerOrgTreeAll)
  215. });
  216. console.log("dict", this.dict);
  217. },
  218. //操作判断
  219. optGrant(optType) {
  220. let ret = ''
  221. if (!this.doctorCheck.RegisterCheckEdit.id) return '请选择组合项目'
  222. if (this.doctorCheck.RegisterCheckEdit.isLock == 'Y') return '组合项目已锁定,不可执行此操作'
  223. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '2') return '组合项目已弃检,不可执行此操作'
  224. if (optType == 'save') {
  225. // if (!this.doctorCheck.RegisterCheckEdit.checkDoctorId) return "请选择检查医生"
  226. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '1') return "该项目项目已保存,不可再执行此操作,如需操作请点【修改结果】"
  227. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'Y') return '组合项目已审核,请先取消审核,方可执行此操作!'
  228. }
  229. if (optType == 'edit') {
  230. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '0') return "该检查项目尚未保存,无需执行此操作"
  231. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'Y') return '组合项目已审核,请先取消审核,方可执行此操作!'
  232. }
  233. if (optType == 'del') {
  234. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '0') return "该检查项目尚未保存,无需执行此操作"
  235. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'Y') return '组合项目已审核,请先取消审核,方可执行此操作!'
  236. }
  237. if (optType == 'audit') {
  238. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '0') return "该检查项目尚未保存,无需执行此操作"
  239. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'Y') return "该检查项目已审核,无需再执行此操作"
  240. }
  241. if (optType == 'unAudit') {
  242. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '0') return "该检查项目尚未保存,无需执行此操作"
  243. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'N') return "该检查项目尚未审核,无需执行此操作"
  244. }
  245. if (optType == 'delItem' || optType == 'refuseItem' || optType == 'makeDiagnosis' ) {
  246. if (this.doctorCheck.RegisterCheckEdit.completeFlag == '1') return "该项目项目已保存,不可再执行此操作,如需操作请点【修改结果】"
  247. if (this.doctorCheck.RegisterCheckEdit.isAudit == 'Y') return "该检查项目已审核,请先取消审核"
  248. }
  249. return ret
  250. },
  251. // 生成小结
  252. btnMakeDiagnosis(){
  253. let ret = this.optGrant('makeDiagnosis')
  254. if (ret) {
  255. this.$message.warning(ret)
  256. return
  257. }
  258. if(this.doctorCheck.checkItemList.length == 0){
  259. this.$message.warning("系统错误,组合项目没有明细")
  260. return
  261. }
  262. console.log('生成小结');
  263. if(this.doctorCheck.checkSummaryList.length > 0){
  264. this.$confirm("已经有小结,是否重新生成小结?", "提示", {
  265. confirmButtonText: "是",
  266. cancelButtonText: "否",
  267. type: "warning",
  268. }).then(() => {
  269. this.makeDiagnosisFun();
  270. }).catch((err) => {
  271. if (err == "cancel") {
  272. this.$message.info("已取消");
  273. }
  274. });
  275. }else{
  276. this.makeDiagnosisFun();
  277. }
  278. },
  279. // 生成小结的函数
  280. makeDiagnosisFun(){
  281. // /api/app/diagnosisfunction/getdiagnosisresult
  282. // {
  283. // "registerCheckId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  284. // "items": [
  285. // {
  286. // "itemId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  287. // "result": "string"
  288. // }
  289. // ]
  290. // }
  291. let body = {
  292. registerCheckId:'',
  293. items:[]
  294. }
  295. this.doctorCheck.checkItemList.forEach((e,index) =>{
  296. if(index == 0) body.registerCheckId = e.registerCheckId
  297. body.items.push({
  298. itemId:e.itemId,
  299. result:e.result
  300. })
  301. })
  302. console.log(`/api/app/diagnosisfunction/getdiagnosisresult`, body)
  303. this.doctorCheck.checkSummaryList = []
  304. this.doctorCheck.checkSuggestionList = []
  305. postapi(`/api/app/diagnosisfunction/getdiagnosisresult`, body)
  306. .then((res) => {
  307. if (res.code != -1) {
  308. // console.log(res.data)
  309. // {
  310. // "diagnosisResultDetails": [
  311. // {
  312. // "diagnosisResult": "超重"
  313. // }
  314. // ],
  315. // "diagnosisSuggestionDetails": [
  316. // {
  317. // "diagnosisSuggestion": "定期复查"
  318. // },
  319. // {
  320. // "diagnosisSuggestion": "控制热量摄入,适当运动"
  321. // }
  322. // ]
  323. // }
  324. // 小结
  325. res.data.diagnosisResultDetails.forEach(e =>{
  326. this.doctorCheck.checkSummaryList.push({
  327. id:Math.random(),
  328. registerCheckId:body.registerCheckId,
  329. summary:e.diagnosisResult,
  330. summaryFlag:'Y'
  331. })
  332. })
  333. // 建议
  334. res.data.diagnosisSuggestionDetails.forEach(e =>{
  335. this.doctorCheck.checkSuggestionList.push({
  336. id:Math.random(),
  337. registerCheckId:body.registerCheckId,
  338. suggestion:e.diagnosisSuggestion
  339. })
  340. })
  341. console.log("操作成功!")
  342. }
  343. })
  344. .catch((err) => {
  345. this.$message({ type: "error", message: `生成小结失败,原因:${err}` });
  346. });
  347. },
  348. // 手动新增小结与建议
  349. addSummary() {
  350. let ret = this.optGrant('makeDiagnosis')
  351. if (ret) {
  352. this.$message.warning(ret)
  353. return
  354. }
  355. this.doctorCheck.checkSummaryList.push({
  356. id:Math.random(),
  357. registerCheckId: this.doctorCheck.RegisterCheckEdit.id,
  358. summary: '',
  359. summaryFlag: 'N',
  360. })
  361. this.doctorCheck.checkSuggestionList.push({
  362. id:Math.random(),
  363. registerCheckId: this.doctorCheck.RegisterCheckEdit.id,
  364. suggestion: '',
  365. })
  366. },
  367. //保存数据
  368. save() {
  369. let ret = this.optGrant('save')
  370. if (ret) {
  371. this.$message.warning(ret)
  372. return
  373. }
  374. //更新明细
  375. this.updateCheckItemList();
  376. //更新检查项目与医生
  377. this.updateDoctorCheck();
  378. //更新小结
  379. this.saveCheckSummary();
  380. //更新建议
  381. this.saveCheckSuggestion(true);
  382. },
  383. //更新检查医生
  384. updateDoctorCheck(successTip) {
  385. let checkDate = this.doctorCheck.RegisterCheckEdit.checkDate||new Date();
  386. checkDate = moment(new Date(checkDate)).format('yyyy-MM-DD'); //yyyy-MM-DD HH:mm:ss
  387. let checkDoctorId = this.doctorCheck.RegisterCheckEdit.checkDoctorId||window.sessionStorage.getItem("user");
  388. let body = {
  389. registerCheckId: this.doctorCheck.RegisterCheckEdit.id,
  390. checkDoctorId,
  391. checkDate
  392. }
  393. console.log(`/api/app/registercheck/updatecheckdoctor`, body)
  394. postapi(`/api/app/registercheck/updatecheckdoctor`, body)
  395. .then((res) => {
  396. console.log("updateDoctorCheck", res.data);
  397. if (res.code != -1) {
  398. console.log("更新检查医生 成功", res.data);
  399. this.doctorCheck.RegisterCheckEdit.completeFlag = '1';
  400. //更新组合项目列表记录状态
  401. let lfind = arrayExistObj(this.doctorCheck.RegisterCheckList,'id',body.registerCheckId)
  402. if(lfind > -1) this.doctorCheck.RegisterCheckList[lfind].completeFlag = '1'
  403. if(successTip) console.log("操作成功!")
  404. }
  405. })
  406. .catch((err) => {
  407. this.$message({ type: "error", message: `更新检查医生失败,原因:${err}` });
  408. });
  409. },
  410. //更新检查项目明细
  411. updateCheckItemList(successTip) {
  412. let checkDate = this.doctorCheck.RegisterCheckEdit.checkDate||new Date();
  413. checkDate = moment(new Date(checkDate)).format('yyyy-MM-DD'); //yyyy-MM-DD HH:mm:ss
  414. let checkDoctorId = this.doctorCheck.RegisterCheckEdit.checkDoctorId||window.sessionStorage.getItem("user");
  415. let body = []
  416. for (let i = 0; i < this.doctorCheck.checkItemList.length; i++) {
  417. body.push({
  418. registerCheckId: this.doctorCheck.checkItemList[i].registerCheckId,
  419. itemId: this.doctorCheck.checkItemList[i].itemId,
  420. result: this.doctorCheck.checkItemList[i].result,
  421. checkDoctorName: checkDoctorId,
  422. checkDate,
  423. })
  424. }
  425. console.log(`/api/app/registercheckitem/updateregistercheckitemmany`, body)
  426. postapi(`/api/app/registercheckitem/updateregistercheckitemmany`, body)
  427. .then((res) => {
  428. console.log("updateCheckItemList", res.data);
  429. if (res.code != -1) {
  430. console.log("更新检查项目明细成功", res.data);
  431. if(successTip) console.log("操作成功!")
  432. }
  433. })
  434. .catch((err) => {
  435. this.$message({ type: "error", message: `更新检查项目明细失败,原因:${err}` });
  436. });
  437. },
  438. //更新小结
  439. saveCheckSummary(successTip) {
  440. let details = []
  441. this.doctorCheck.checkSummaryList.forEach(item => {
  442. details.push({
  443. registerCheckId: item.registerCheckId,
  444. summary: item.summary,
  445. summaryFlag: item.summaryFlag,
  446. })
  447. });
  448. let body = {
  449. registerCheckId:this.doctorCheck.RegisterCheckEdit.id,
  450. details
  451. }
  452. console.log(`/api/app/registerchecksummary/createregisterchecksummarymany`, body)
  453. postapi(`/api/app/registerchecksummary/createregisterchecksummarymany`, body)
  454. .then((res) => {
  455. console.log("saveCheckSummary", res.data);
  456. if (res.code != -1) {
  457. console.log("更新小结 成功", res.data);
  458. if(successTip) console.log("操作成功!")
  459. }
  460. })
  461. .catch((err) => {
  462. this.$message({ type: "error", message: `更新小结失败,原因:${err}` });
  463. });
  464. },
  465. //更新建议
  466. saveCheckSuggestion(successTip) {
  467. let details = []
  468. this.doctorCheck.checkSuggestionList.forEach(item => {
  469. details.push({
  470. registerCheckId: item.registerCheckId,
  471. suggestion: item.suggestion
  472. })
  473. });
  474. let body = {
  475. registerCheckId:this.doctorCheck.RegisterCheckEdit.id,
  476. details
  477. }
  478. console.log(`/api/app/registerchecksuggestion/createregisterchecksuggestionmany`, body)
  479. postapi(`/api/app/registerchecksuggestion/createregisterchecksuggestionmany`, body)
  480. .then((res) => {
  481. console.log("saveCheckSuggestion", res.data);
  482. if (res.code != -1) {
  483. //this.doctorCheck.RegisterCheckEdit.completeFlag = '1';
  484. if(successTip) console.log("操作成功!")
  485. }
  486. })
  487. .catch((err) => {
  488. this.$message({ type: "error", message: `更新建议失败,原因:${err}` });
  489. });
  490. },
  491. //审核
  492. audit() {
  493. let ret = this.optGrant('audit')
  494. if (ret) {
  495. this.$message.warning(ret)
  496. return
  497. }
  498. let body = {
  499. registerCheckId: this.doctorCheck.RegisterCheckEdit.id,
  500. //auditorUserId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  501. //auditTime: "string" 不传时,取当前时间
  502. }
  503. console.log(`/api/app/registercheck/updateauditordoctor`, body)
  504. postapi(`/api/app/registercheck/updateauditordoctor`, body)
  505. .then((res) => {
  506. console.log("audit", res.data);
  507. if (res.code != -1) {
  508. this.doctorCheck.RegisterCheckEdit.isAudit = 'Y';
  509. this.$message({ type: "success", message: `组合项目审核成功` });
  510. }
  511. })
  512. .catch((err) => {
  513. this.$message({ type: "error", message: `组合项目审核失败,原因:${err}` });
  514. });
  515. },
  516. //取消审核
  517. unAudit() {
  518. let ret = this.optGrant('unAudit')
  519. if (ret) {
  520. this.$message.warning(ret)
  521. return
  522. }
  523. console.log(`/api/app/registercheck/updateisaudit?RegisterCheckId=${this.doctorCheck.RegisterCheckEdit.id}&IsAudit=N`)
  524. postapi(`/api/app/registercheck/updateisaudit?RegisterCheckId=${this.doctorCheck.RegisterCheckEdit.id}&IsAudit=N`)
  525. .then((res) => {
  526. console.log("unAudit", res.data);
  527. if (res.code != -1) {
  528. this.doctorCheck.RegisterCheckEdit.isAudit = 'N';
  529. this.$message({ type: "success", message: `组合项目取消审核成功` });
  530. }
  531. })
  532. .catch((err) => {
  533. this.$message({ type: "error", message: `组合项目取消审核失败,原因:${err}` });
  534. });
  535. },
  536. // 排队
  537. btnLineUp(){
  538. console.log('排队')
  539. },
  540. },
  541. //监听事件()
  542. watch: {
  543. // //1级单位值改变,分组改变
  544. // "patientRegister.query.CustomerOrgParentId"(newVal, oldVal) {
  545. // console.log(
  546. // "watch patientRegister.query.CustomerOrgParentId newVal:",
  547. // newVal,
  548. // " oldVal:",
  549. // oldVal
  550. // );
  551. // if (newVal != oldVal && newVal !== this.dict.personOrgId) {
  552. // this.getCustomerOrgGroup(newVal);
  553. // }
  554. // },
  555. "patientRegister.photo":{
  556. immediate:true,
  557. // deep:true,
  558. handler(newVal, oldVal) {
  559. //console.log('patientRegister.patientRegisterRd.id newVal:',newVal,' oldVal:',oldVal)
  560. if (newVal != oldVal) {
  561. this.peoplePhoto = photoParse(newVal)
  562. }
  563. }
  564. },
  565. },
  566. };
  567. </script>
  568. <style scoped>
  569. @import '../../assets/css/global_card.css';
  570. @import '../../assets/css/global_input.css';
  571. @import '../../assets/css/global_table.css';
  572. @import '../../assets/css/global.css';
  573. </style>