人民医院前端

orderSelect.vue 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <template>
  2. <uni-data-picker class="uni_item" placeholder="请选择工单类别" :readonly="readonly" :localdata="dataOrderType" v-model="WorkOrderCategory" @nodeclick="nodeclick" @popupclosed="popupclosed">
  3. </uni-data-picker>
  4. </template>
  5. <script>
  6. import pageData from "@/pages/myTask/repairList/addRepair/pageData.js"
  7. export default {
  8. data() {
  9. return {
  10. order: '',
  11. WorkOrderCategory: '',
  12. dataOrderType: []
  13. }
  14. },
  15. props: {
  16. orderType: {},
  17. typeid: {},
  18. readonly:false
  19. },
  20. created() {
  21. this.getDpartment()
  22. },
  23. methods: {
  24. getDpartment() {
  25. pageData.getGongDanType(this.typeid,(res, data) => {
  26. this.dataOrderType = res
  27. if(this.orderType) {
  28. this.getOrder(res, data, this.orderType)
  29. }
  30. })
  31. },
  32. getOrder(data, tree, id) {
  33. let newtext = ''
  34. for (const i in tree) {
  35. if (tree[i].id == id) {
  36. this.getTree(data, tree[i].text)
  37. } else if (tree[i].children) {
  38. this.getOrder(data, tree[i].children, id)
  39. }
  40. }
  41. },
  42. getTree(tree, text) {
  43. for (const i in tree) {
  44. if (tree[i].text == text) {
  45. this.WorkOrderCategory = tree[i].value
  46. } else if (tree[i].children) {
  47. this.getTree(tree[i].children, text)
  48. }
  49. }
  50. },
  51. nodeclick(data) {
  52. this.order = data.value
  53. this.$emit('post-select-data',data.value,data.id)
  54. },
  55. popupclosed() {
  56. this.WorkOrderCategory = this.order
  57. }
  58. }
  59. }
  60. </script>
  61. <style>
  62. </style>