血透系统PC前端

acceptsTreatmentDialog.vue 7.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <template>
  2. <el-dialog title="接诊评估"
  3. modal-append-to-body=“false”
  4. :visible.sync="isVisibility"
  5. width="854px">
  6. <el-form :model="receiveTreatmentAsses" label-width="80px">
  7. <el-form-item label="入室方式 : " v-if="isShow('入室方式')">
  8. <el-radio v-model="receiveTreatmentAsses.way" label="1">步行</el-radio>
  9. <el-radio v-model="receiveTreatmentAsses.way" label="2">扶行</el-radio>
  10. <el-radio v-model="receiveTreatmentAsses.way" label="3">轮椅</el-radio>
  11. <el-radio v-model="receiveTreatmentAsses.way" label="4">平车</el-radio>
  12. </el-form-item>
  13. <el-form-item label="病人意识 : " v-if="isShow('病人意识')">
  14. <el-radio v-model="receiveTreatmentAsses.consciousness" label="1">清醒</el-radio>
  15. <el-radio v-model="receiveTreatmentAsses.consciousness" label="2">嗜睡</el-radio>
  16. <el-radio v-model="receiveTreatmentAsses.consciousness" label="3">昏迷</el-radio>
  17. </el-form-item>
  18. <el-form-item label="病人食欲 : " v-if="isShow('病人食欲')">
  19. <el-radio v-model="receiveTreatmentAsses.appetite" label="1">正常</el-radio>
  20. <el-radio v-model="receiveTreatmentAsses.appetite" label="2">减退</el-radio>
  21. <el-radio v-model="receiveTreatmentAsses.appetite" label="3">恶心</el-radio>
  22. <el-radio v-model="receiveTreatmentAsses.appetite" label="4">呕吐</el-radio>
  23. <el-radio v-model="receiveTreatmentAsses.appetite" label="5">腹泻</el-radio>
  24. </el-form-item>
  25. <el-form-item label="病人情况 : " v-if="isShow('病人情况')">
  26. <el-radio v-model="receiveTreatmentAsses.condition" label="1">住院</el-radio>
  27. <el-radio v-model="receiveTreatmentAsses.condition" label="2">门诊</el-radio>
  28. <el-radio v-model="receiveTreatmentAsses.condition" label="3">手术期</el-radio>
  29. </el-form-item>
  30. <el-form-item label="体位 : " v-if="isShow('体位')">
  31. <el-radio v-model="receiveTreatmentAsses.posture" label="1">自动体位</el-radio>
  32. <el-radio v-model="receiveTreatmentAsses.posture" label="2">平卧位</el-radio>
  33. <el-radio v-model="receiveTreatmentAsses.posture" label="3">半卧位</el-radio>
  34. <el-radio v-model="receiveTreatmentAsses.posture" label="4">端坐位</el-radio>
  35. <el-radio v-model="receiveTreatmentAsses.posture" label="5">躁动不安</el-radio>
  36. </el-form-item>
  37. <el-form-item label="病情: " v-if="isShow('病情')">
  38. <el-radio v-model="receiveTreatmentAsses.sick_condition" label="1">一般</el-radio>
  39. <el-radio v-model="receiveTreatmentAsses.sick_condition" label="2">严重</el-radio>
  40. <el-radio v-model="receiveTreatmentAsses.sick_condition" label="3">危</el-radio>
  41. </el-form-item>
  42. <el-form-item label-width="100dp" label="跌倒分险评估评分 : "
  43. v-if="isShow('跌倒分险评估评分')">
  44. <el-input v-model="receiveTreatmentAsses.score" style="width: 100px"></el-input>
  45. </el-form-item>
  46. <el-form-item label="风险程度: " v-if="isShow('风险程度')">
  47. <el-radio v-model="receiveTreatmentAsses.danger_level" label="1">无</el-radio>
  48. <el-radio v-model="receiveTreatmentAsses.danger_level" label="2">低风险</el-radio>
  49. <el-radio v-model="receiveTreatmentAsses.danger_level" label="3">中度风险</el-radio>
  50. <el-radio v-model="receiveTreatmentAsses.danger_level" label="4">高风险</el-radio>
  51. </el-form-item>
  52. <el-form-item label="摄入量: " v-if="isShow('摄入量')">
  53. <el-radio v-model="receiveTreatmentAsses.intake" label="1">正常</el-radio>
  54. <el-radio v-model="receiveTreatmentAsses.intake" label="2">减少</el-radio>
  55. </el-form-item>
  56. <el-form-item label="营养状况: " v-if="isShow('营养状况')">
  57. <el-radio v-model="receiveTreatmentAsses.nutrition" label="1">正常</el-radio>
  58. <el-radio v-model="receiveTreatmentAsses.nutrition" label="2">营养不良</el-radio>
  59. </el-form-item>
  60. <el-form-item label="心理评估: " v-if="isShow('心理评估')">
  61. <el-radio v-model="receiveTreatmentAsses.psychological_assessment" label="1">正常</el-radio>
  62. <el-radio v-model="receiveTreatmentAsses.psychological_assessment" label="2">异常</el-radio>
  63. </el-form-item>
  64. <el-form-item label-width="100dp" label="心理评估异常情况 : "
  65. v-if="isShow('心理评估异常情况')&&receiveTreatmentAsses.psychological_assessment == 2">
  66. <el-input v-model="receiveTreatmentAsses.psychological_assessment_other"></el-input>
  67. </el-form-item>
  68. </el-form>
  69. <div slot="footer" class="dialog-footer">
  70. <el-button @click="handleCancle">取 消</el-button>
  71. <el-button type="primary" @click="handleComfirm">保 存</el-button>
  72. </div>
  73. </el-dialog>
  74. </template>
  75. <script>
  76. import {postAccepts} from "@/api/dialysis";
  77. import {uParseTime} from "@/utils/tools";
  78. import store from "@/store";
  79. export default {
  80. name: "acceptsTreatmentDialog",
  81. data() {
  82. return {
  83. isVisibility:false,
  84. record_date:'',
  85. receiveTreatmentAsses: {
  86. way: "1",
  87. consciousness: "1",
  88. appetite: "1",
  89. condition: "1",
  90. posture: "1",
  91. sick_condition: '1',
  92. danger_level: '1',
  93. intake: '1',
  94. nutrition: '1',
  95. psychological_assessment: '1',
  96. psychological_assessment_other: '',
  97. score:'',
  98. },
  99. };
  100. },
  101. methods:{
  102. isShow(name){
  103. var filedList = store.getters.xt_user.fileds
  104. for (let i = 0; i < filedList.length; i++){
  105. if(filedList[i].module == 2 &&filedList[i].filed_name_cn == name &&filedList[i].is_show == 1){
  106. return true
  107. }
  108. }
  109. return false
  110. },
  111. show() {
  112. this.isVisibility = true;
  113. },
  114. hide() {
  115. this.isVisibility = false;
  116. },
  117. handleCancle:function () {
  118. this.isVisibility = false;
  119. },
  120. handleComfirm:function () {
  121. let ParamsQuery = this.receiveTreatmentAsses;
  122. ParamsQuery["patient"] = this.patient.id;
  123. ParamsQuery["record_date"] = this.record_date;
  124. postAccepts(ParamsQuery).then(response => {
  125. if (response.data.state == 0) {
  126. this.$message.error(response.data.msg);
  127. return false;
  128. } else {
  129. this.$notify({
  130. title: "成功",
  131. message: "提交成功",
  132. type: "success",
  133. duration: 2000
  134. });
  135. let receive_treatment_asses_resp = response.data.data.receiveTreatmentAsses;
  136. //prop
  137. var receiver_treatment_access = this.receiver_treatment_access;
  138. for( var index in receive_treatment_asses_resp) {
  139. // receiver_treatment_access[index] = receive_treatment_asses_resp[index];
  140. this.$set(receiver_treatment_access, index, receive_treatment_asses_resp[index])
  141. }
  142. this.hide()
  143. }
  144. });
  145. }
  146. },
  147. props: {
  148. receiver_treatment_access : { // 双人核对
  149. type: Object,
  150. default: () => {
  151. return {id: 0}
  152. }
  153. },
  154. patient: { // 患者信息
  155. type: Object,
  156. default: () => {
  157. return {id: 0}
  158. }
  159. },
  160. }, watch: {
  161. isVisibility(val) {
  162. },
  163. "receiver_treatment_access.id": function () {
  164. if (this.receiver_treatment_access.id > 0) {
  165. for (var index in this.receiveTreatmentAsses) {
  166. this.receiveTreatmentAsses[index] = this.receiver_treatment_access[index] + "";
  167. }
  168. }
  169. },
  170. }, created() {
  171. var date = this.$route.query && this.$route.query.date;
  172. this.record_date = uParseTime(date, '{y}-{m}-{d}');
  173. },
  174. }
  175. </script>
  176. <style scoped>
  177. </style>