prescribeDetails.vue 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. <template>
  2. <div style="background-color: #f0f2f5; padding-bottom: 20px; min-height: 100%; " >
  3. <div style="padding: 20px; background-color: #fff;">
  4. 处方详情
  5. </div>
  6. <div class="content" v-if="item!=null">
  7. <div class="desct">
  8. 基本信息
  9. </div>
  10. <el-descriptions :column="3" border >
  11. <el-descriptions-item label="处方单编号" >
  12. <span v-if="item!=null">
  13. {{item.prescribeCode}}
  14. </span>
  15. </el-descriptions-item>
  16. <el-descriptions-item label="病情描述" >
  17. <span v-if="item!=null">{{item.patientDescs}}</span>
  18. </el-descriptions-item>
  19. <el-descriptions-item label="既往史" >
  20. <span v-if="item!=null">{{item.historyIllness}}</span>
  21. </el-descriptions-item>
  22. <el-descriptions-item label="患者年龄" >
  23. <span v-if="item!=null">{{item.patientAge}}</span>
  24. </el-descriptions-item>
  25. <el-descriptions-item label="患者姓名" >
  26. <span v-if="item!=null">{{item.patientName}}</span>
  27. </el-descriptions-item>
  28. <el-descriptions-item label="体重" >
  29. <span v-if="item!=null">{{item.weight}}</span>
  30. </el-descriptions-item>
  31. <el-descriptions-item label="是否有过敏史" >
  32. <dict-tag :options="orOptions" :value="item.historyAllergic"/>
  33. </el-descriptions-item>
  34. <el-descriptions-item label="过敏史" >
  35. <span v-if="item!=null">{{item.weight}}</span>
  36. </el-descriptions-item>
  37. <el-descriptions-item label="肝功能是否异常" >
  38. <span v-if="item!=null">{{item.liverUnusual}}</span>
  39. </el-descriptions-item>
  40. <el-descriptions-item label="肾功能是否异常" >
  41. <span v-if="item!=null">{{item.renalUnusual}}</span>
  42. </el-descriptions-item>
  43. <el-descriptions-item label="是否是备孕/怀孕/哺乳期" >
  44. <dict-tag :options="orOptions" :value="item.isLactation"/>
  45. </el-descriptions-item>
  46. <el-descriptions-item label="患者电话" >
  47. <span v-if="item!=null">{{item.patientTel}}</span>
  48. </el-descriptions-item>
  49. <el-descriptions-item label="药师名称" >
  50. <span v-if="item!=null">{{item.doctorDrugName}}</span>
  51. </el-descriptions-item>
  52. <el-descriptions-item label="医生名称" >
  53. <span v-if="item!=null">{{item.doctorName}}</span>
  54. </el-descriptions-item>
  55. <el-descriptions-item label="审核时间" >
  56. <span v-if="item!=null">{{item.auditTime}}</span>
  57. </el-descriptions-item>
  58. <el-descriptions-item label="创建时间" >
  59. <span v-if="item!=null">{{item.createTime}}</span>
  60. </el-descriptions-item>
  61. </el-descriptions>
  62. </div>
  63. <div class="content" v-if="item!=null" style="padding-bottom: 70px;">
  64. <div class="desct">
  65. 商品信息
  66. </div>
  67. <el-table
  68. border
  69. v-if="prod!=null"
  70. :data="prod"
  71. size="small"
  72. style="width: 100%;margin-top: 20px" >
  73. <el-table-column label="商品图片" width="150" align="center">
  74. <template slot-scope="scope">
  75. <img :src="scope.row.drugImgUrl" style="height: 50px">
  76. </template>
  77. </el-table-column>
  78. <el-table-column prop="drugName" label="药品名称" width="120" align="center"></el-table-column>
  79. <el-table-column prop="drugSpec" label="药品包装规格" width="120" align="center"></el-table-column>
  80. <el-table-column prop="drugPrice" label="药品单价" width="120" align="center"></el-table-column>
  81. <el-table-column prop="drugNum" label="药品数量" width="120" align="center"></el-table-column>
  82. <el-table-column prop="drugUnit" label="药品单位" width="120" align="center"></el-table-column>
  83. <el-table-column prop="usageMethod" label="使用方法" width="120" align="center"></el-table-column>
  84. <el-table-column prop="usageFrequency_unit" label="药品频次" width="120" align="center"></el-table-column>
  85. <el-table-column prop="usageFrequencyUnit" label="每次用药数量" width="120" align="center"></el-table-column>
  86. <el-table-column label="小计" align="center" width="120">
  87. <template slot-scope="scope" >
  88. ¥{{(scope.row.drugNum*scope.row.drugPrice).toFixed(2)}}
  89. </template>
  90. </el-table-column>
  91. </el-table>
  92. <div style="float: right;margin: 20px" v-if="item.prescribeType==2">
  93. 剂数:<span class="color-danger">{{JSON.parse(item.usageJson).counts}}</span>
  94. </div>
  95. </div>
  96. <div class="content" v-if="item!=null">
  97. <div class="desct">
  98. 处方单
  99. </div>
  100. <div style="text-align: center;">
  101. <el-popover
  102. placement="right"
  103. title=""
  104. <img slot="reference" :src="item.prescribeImgUrl" width="500px">
  105. </el-popover>
  106. </div>
  107. </div>
  108. </div>
  109. </template>
  110. <script>
  111. import { listPrescribe, getPrescribe, delPrescribe, addPrescribe, updatePrescribe, exportPrescribe,getDrugInfo } from "@/api/store/prescribe";
  112. export default {
  113. name: "orderDe",
  114. props:["data"],
  115. data() {
  116. return {
  117. pjtUrl: process.env.VUE_APP_BASE_API+"/",
  118. money:null,
  119. moneyVisible:false,
  120. rules:{},
  121. sendVisible:false,
  122. logs:[],
  123. PayOptions:[],
  124. orOptions:[],
  125. item:null,
  126. prod:null,
  127. mrules:{
  128. },
  129. form: {
  130. deliveryCode: null,
  131. deliveryName:null,
  132. deliverySn:null,
  133. orderId:null,
  134. }
  135. }
  136. },
  137. created() {
  138. this.getDicts("sys_inquiry_pay").then(response => {
  139. this.PayOptions = response.data;
  140. });
  141. },
  142. methods: {
  143. moneyCancel(){
  144. this.money=null;
  145. this.moneyVisible=false;
  146. },
  147. getDetails(orderId) {
  148. this.item=null;
  149. getPrescribe(orderId).then(response => {
  150. this.item = response.data;
  151. });
  152. getDrugInfo(orderId).then(response => {
  153. this.prod = response.data;
  154. console.log(this.prod)
  155. });
  156. },
  157. }
  158. }
  159. </script>
  160. <style>
  161. .content{
  162. height: 100%;
  163. background-color: #fff;
  164. padding: 0px 20px;
  165. }
  166. </style>
  167. <style>
  168. .content{
  169. height: 100%;
  170. background-color: #fff;
  171. padding: 0px 20px 20px;
  172. margin: 20px;
  173. }
  174. .el-descriptions-item__label.is-bordered-label{
  175. font-weight: normal;
  176. }
  177. .desct{
  178. padding-top: 20px;
  179. padding-bottom: 20px;
  180. color: #524b4a;
  181. font-weight: bold;
  182. }
  183. </style>
  184. <style scoped>
  185. .order-content{
  186. margin: 10px;
  187. }
  188. .operate-container {
  189. background: #F2F6FC;
  190. height: 60px;
  191. margin: -20px -20px 0;
  192. line-height: 60px;
  193. }
  194. .operate-button-container {
  195. float: right;
  196. margin-right: 20px
  197. }
  198. </style>