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

prescriptionTable.vue 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426
  1. <template>
  2. <div class="prescriptionTable">
  3. <el-table
  4. v-if="prescription.type == 1"
  5. :data="prescription.advices"
  6. border
  7. style="width: 99%"
  8. :row-style="changColor"
  9. :row-class-name="tableRowClassName"
  10. :header-cell-style="{
  11. color: '#606266',
  12. }"
  13. highlight-current-row
  14. >
  15. <el-table-column
  16. fixed
  17. align="center"
  18. type="index"
  19. width="40"
  20. label="序号"
  21. ></el-table-column>
  22. <el-table-column fixed align="center" prop="name" width="400" label="名称">
  23. <template slot-scope="scope"
  24. ><span :title="scope.row.drug_name">{{
  25. scope.row.drug_name
  26. }}</span></template
  27. >
  28. </el-table-column>
  29. <el-table-column align="center" prop="name" width="70" label="单次用量">
  30. <template slot-scope="scope">
  31. <!--<el-input v-model="scope.row.single_dose" readonly style="width:65%;"></el-input>-->
  32. <div>
  33. {{ scope.row.single_dose }}&nbsp;&nbsp;{{
  34. scope.row.single_dose_unit
  35. }}
  36. </div>
  37. </template>
  38. </el-table-column>
  39. <el-table-column align="center" prop="name" width="80" label="用法">
  40. <template slot-scope="scope">
  41. <!--<el-input v-model="scope.row.delivery_way" readonly></el-input>-->
  42. <div>{{ scope.row.delivery_way }}</div>
  43. </template>
  44. </el-table-column>
  45. <el-table-column align="center" prop="name" width="80" label="频率">
  46. <template slot-scope="scope">
  47. <div>{{ scope.row.execution_frequency }}</div>
  48. <!--<el-input v-model="scope.row.execution_frequency" readonly></el-input>-->
  49. </template>
  50. </el-table-column>
  51. <el-table-column align="center" prop="day" width="80" label="天数">
  52. <template slot-scope="scope">{{ scope.row.day }}天</template>
  53. </el-table-column>
  54. <el-table-column align="center" prop="name" width="80" label="总量">
  55. <template slot-scope="scope">
  56. <!--<el-input v-model="scope.row.prescribing_number" style="width:60%" readonly placeholder=""></el-input>-->
  57. <div>
  58. {{ scope.row.prescribing_number }}&nbsp;&nbsp;{{
  59. scope.row.prescribing_number_unit
  60. }}
  61. </div>
  62. </template>
  63. </el-table-column>
  64. <el-table-column align="center" prop="name" width="80" label="单价">
  65. <template slot-scope="scope">
  66. <div>{{ scope.row.retail_price }}元</div>
  67. <!--<el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>-->
  68. </template>
  69. </el-table-column>
  70. <el-table-column align="center" prop="name" width="80" label="执行状态">
  71. <template slot-scope="scope">
  72. <div>{{ scope.row.execution_state == 1 ? "已执行" : "未执行" }}</div>
  73. </template>
  74. </el-table-column>
  75. <el-table-column align="center" prop="name" width="320" label="医保编码">
  76. <template slot-scope="scope">
  77. <div>{{ scope.row.code }}</div>
  78. </template>
  79. </el-table-column>
  80. <el-table-column align="center" prop="name" width="80" label="规格/型号">
  81. <template slot-scope="scope">
  82. <div>{{ scope.row.spec }}</div>
  83. </template>
  84. </el-table-column>
  85. <el-table-column align="center" prop="name" width="60" label="金额">
  86. <template slot-scope="scope">
  87. <div>{{ scope.row.det_item_fee_sumamt }}</div>
  88. </template>
  89. </el-table-column>
  90. <el-table-column align="center" prop="name" width="120" label="生产厂家">
  91. <template slot-scope="scope">
  92. <div>{{ getName(scope.row.name_id) }}</div>
  93. </template>
  94. </el-table-column>
  95. <el-table-column align="center" prop="name" width="90" label="全自费金额">
  96. <template slot-scope="scope">
  97. <div>{{ scope.row.fulamt_ownpay_amt }}元</div>
  98. </template>
  99. </el-table-column>
  100. <el-table-column align="center" prop="name" width="90" label="超限价金额">
  101. <template slot-scope="scope">
  102. <div>{{ scope.row.overlmt_amt }}元</div>
  103. </template>
  104. </el-table-column>
  105. <el-table-column
  106. align="center"
  107. prop="name"
  108. width="90"
  109. label="先行自付金额"
  110. >
  111. <template slot-scope="scope">
  112. <div>{{ scope.row.preselfpay_amt }}元</div>
  113. </template>
  114. </el-table-column>
  115. <el-table-column
  116. align="center"
  117. prop="name"
  118. width="90"
  119. label="符合正常范围金额"
  120. >
  121. <template slot-scope="scope">
  122. <div>{{ scope.row.inscp_scp_amt }}元</div>
  123. </template>
  124. </el-table-column>
  125. <el-table-column align="center" prop="name" width="50" label="备注">
  126. <template slot-scope="scope">
  127. <!--<el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder="" readonly></el-input>-->
  128. <div>{{ scope.row.remark }}</div>
  129. </template>
  130. </el-table-column>
  131. </el-table>
  132. <el-table
  133. v-if="prescription.type == 2"
  134. :data="prescription.project"
  135. border
  136. style="width: 99%"
  137. :row-style="changColor"
  138. :header-cell-style="{
  139. backgroundColor: 'rgb(245, 247, 250)',
  140. color: '#606266',
  141. }"
  142. highlight-current-row
  143. >
  144. <el-table-column
  145. fixed
  146. align="center"
  147. type="index"
  148. width="40"
  149. label="序号"
  150. ></el-table-column>
  151. <el-table-column fixed align="center" prop="project_name" width="400" label="名称">
  152. <template slot-scope="scope">{{ scope.row.project_name }}</template>
  153. </el-table-column>
  154. <el-table-column
  155. align="center"
  156. prop="statistical_classification"
  157. width="100"
  158. label="组"
  159. >
  160. <template slot-scope="scope">{{
  161. scope.row.type == 2
  162. ? getGroup(scope.row.statistical_classification)
  163. : "耗材"
  164. }}</template>
  165. </el-table-column>
  166. <el-table-column
  167. align="center"
  168. prop="single_dose"
  169. width="80"
  170. label="单次用量"
  171. >
  172. <template slot-scope="scope"
  173. >{{ scope.row.single_dose }}{{ scope.row.unit }}</template
  174. >
  175. </el-table-column>
  176. <el-table-column
  177. align="center"
  178. prop="delivery_way"
  179. width="80"
  180. label="用法"
  181. >
  182. <template slot-scope="scope">{{ scope.row.delivery_way }}</template>
  183. </el-table-column>
  184. <el-table-column
  185. align="center"
  186. prop="execution_frequency"
  187. width="80"
  188. label="频率"
  189. >
  190. <template slot-scope="scope">{{
  191. scope.row.execution_frequency
  192. }}</template>
  193. </el-table-column>
  194. <el-table-column
  195. align="center"
  196. prop="number_days"
  197. width="50"
  198. label="天数"
  199. >
  200. <template slot-scope="scope">{{ scope.row.number_days }}天</template>
  201. </el-table-column>
  202. <el-table-column align="center" prop="total" width="50" label="总量">
  203. <template slot-scope="scope">
  204. <div>{{ scope.row.total }} {{ scope.row.unit }}</div>
  205. </template>
  206. </el-table-column>
  207. <el-table-column align="center" prop="name" width="50" label="单价">
  208. <template slot-scope="scope">{{ scope.row.price }}元</template>
  209. </el-table-column>
  210. <el-table-column align="center" prop="name" width="60" label="执行状态">
  211. <template slot-scope="scope">
  212. <div>{{ scope.row.execution_state == 1 ? "已执行" : "未执行" }}</div>
  213. </template>
  214. </el-table-column>
  215. <el-table-column align="center" prop="name" width="120" label="医保编码">
  216. <template slot-scope="scope">
  217. <div>{{ scope.row.medical_code }}</div>
  218. </template>
  219. </el-table-column>
  220. <el-table-column align="center" prop="name" width="80" label="规格/型号">
  221. <template slot-scope="scope">
  222. <div>{{ scope.row.spec }}</div>
  223. </template>
  224. </el-table-column>
  225. <el-table-column align="center" prop="name" width="60" label="金额">
  226. <template slot-scope="scope">
  227. <div>{{ scope.row.det_item_fee_sumamt }}元</div>
  228. </template>
  229. </el-table-column>
  230. <el-table-column align="center" prop="name" width="120" label="生产厂家">
  231. <template slot-scope="scope">
  232. <div>{{ getName(scope.row.name_id) }}</div>
  233. </template>
  234. </el-table-column>
  235. <el-table-column align="center" prop="name" width="90" label="全自费金额">
  236. <template slot-scope="scope">
  237. <div>{{ scope.row.fulamt_ownpay_amt }}元</div>
  238. </template>
  239. </el-table-column>
  240. <el-table-column align="center" prop="name" width="90" label="超限价金额">
  241. <template slot-scope="scope">
  242. <div>{{ scope.row.overlmt_amt }}元</div>
  243. </template>
  244. </el-table-column>
  245. <el-table-column
  246. align="center"
  247. prop="name"
  248. width="90"
  249. label="先行自付金额"
  250. >
  251. <template slot-scope="scope">
  252. <div>{{ scope.row.preselfpay_amt }}元</div>
  253. </template>
  254. </el-table-column>
  255. <el-table-column
  256. align="center"
  257. prop="name"
  258. width="90"
  259. label="符合正常范围金额"
  260. >
  261. <template slot-scope="scope">
  262. <div>{{ scope.row.inscp_scp_amt }}元</div>
  263. </template>
  264. </el-table-column>
  265. <el-table-column align="center" prop="name" width="50" label="备注">
  266. <template slot-scope="scope">{{ scope.row.remark }}</template>
  267. </el-table-column>
  268. </el-table>
  269. <div class="additionalBox">
  270. <div
  271. class="additionalOne"
  272. v-for="(item, index) in prescription.addition"
  273. :key="index"
  274. >
  275. <span :title="item.item_name">{{ item.item_name }}</span>
  276. <el-input
  277. v-model="item.price"
  278. placeholder=""
  279. style="width: 50px"
  280. readonly
  281. ></el-input>
  282. <el-input
  283. v-model="item.count"
  284. placeholder=""
  285. style="width: 50px"
  286. readonly
  287. ></el-input>
  288. <!--<i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>-->
  289. </div>
  290. </div>
  291. </div>
  292. </template>
  293. <script>
  294. import { getInitData } from "@/api/his/his";
  295. import { getDictionaryDataConfig } from "@/utils/data";
  296. export default {
  297. props: {
  298. prescription: Object,
  299. manufacturers: Array,
  300. },
  301. data() {
  302. return {
  303. drugways: [],
  304. efs: [],
  305. };
  306. },
  307. mounted() {
  308. // getInitData().then(response => {
  309. // if (response.data.state == 0) {
  310. // this.$message.error(response.data.msg)
  311. // return false
  312. // } else {
  313. // this.drugways = response.data.data.drugways
  314. // this.efs = response.data.data.efs
  315. // }
  316. // })
  317. },
  318. methods: {
  319. changColor({ row, rowIndex }) {
  320. if (rowIndex % 2 == 1) { // 变颜色的条件
  321. return {
  322. backgroundColor: "#C4E1FF",
  323. color: '#303133' // 这个return的就是样式 可以是color 也可以是backgroundColor
  324. }
  325. }else{
  326. return {
  327. backgroundColor:"#ACD6FF",
  328. color: '#303133'
  329. }
  330. }
  331. },
  332. getName(id) {
  333. let name = "";
  334. for (let i = 0; i < this.manufacturers.length; i++) {
  335. if (id == this.manufacturers[i].id) {
  336. name = this.manufacturers[i].manufacturer_name;
  337. }
  338. }
  339. return name;
  340. },
  341. getGroup(id) {
  342. var name = "";
  343. var statistics_category = getDictionaryDataConfig(
  344. "system",
  345. "statistics_category"
  346. );
  347. console.log("2235", statistics_category);
  348. for (let i = 0; i < statistics_category.length; i++) {
  349. if (id == statistics_category[i].id) {
  350. name = statistics_category[i].name;
  351. }
  352. }
  353. return name;
  354. },
  355. },
  356. };
  357. </script>
  358. <style lang="scss">
  359. .prescriptionTable {
  360. .additionalBox {
  361. margin-top: 20px;
  362. display: flex;
  363. flex-wrap: wrap;
  364. .additionalOne {
  365. margin-right: 20px;
  366. margin-bottom: 10px;
  367. display: flex;
  368. align-items: center;
  369. > span {
  370. white-space: nowrap;
  371. overflow: hidden;
  372. text-overflow: ellipsis;
  373. width: 80px;
  374. display: inline-block;
  375. font-size: 14px;
  376. }
  377. }
  378. .deleteIcon {
  379. color: red;
  380. margin-left: 5px;
  381. }
  382. }
  383. .el-table th .cell,
  384. .el-table td .cell {
  385. padding: 0 2px;
  386. white-space: pre-line;
  387. }
  388. .el-icon-delete {
  389. color: red;
  390. }
  391. }
  392. </style>