SearchWidgetExample.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. <template>
  2. <h1>搜索框</h1>
  3. <h2>1. 部门选择</h2>
  4. <SearchWidget
  5. info-window-no="279750"
  6. :field-value="fieldValue1"
  7. title-name="部门"
  8. display-name="organization.name"
  9. :where-clause-source="whereClauseSource"
  10. @value-changed="fieldValue1Changed"
  11. />
  12. 您选择的部门是:
  13. <span
  14. v-for="item, index in fieldValue1.displayValue"
  15. :key="index"
  16. >
  17. {{ item }}
  18. </span>
  19. <h2>2. 用户选择</h2>
  20. <SearchWidget
  21. info-window-no="050408"
  22. :field-value="fieldValue2"
  23. :where-clause-source="whereClauseSource2"
  24. title-name="用户"
  25. display-name="name"
  26. @value-changed="fieldValue2Changed"
  27. />
  28. 您选择的用户是:
  29. <span
  30. v-for="item, index in fieldValue2.displayValue"
  31. :key="index"
  32. >
  33. {{ item }}
  34. </span>
  35. <h2>3. 用户多选</h2>
  36. <MultiSearchWidget
  37. info-window-no="050408"
  38. :field-value="fieldValue3"
  39. :where-clause-source="whereClauseSource3"
  40. title-name="用户"
  41. display-name="name"
  42. @value-changed="fieldValue3Changed"
  43. />
  44. <div>
  45. 您选择的用户姓名是:
  46. <span
  47. v-for="item, index in fieldValue3.displayValue"
  48. :key="'displayValue' + index"
  49. >
  50. {{ item }} <span v-if="index > 0">,</span>
  51. </span>
  52. </div>
  53. <div>
  54. 您选择的用户id是:
  55. <span
  56. v-for="item, index in fieldValue3.ids"
  57. :key="'id' + index"
  58. >
  59. {{ item }} <span v-if="index > 0">,</span>
  60. </span>
  61. </div>
  62. </template>
  63. <script>
  64. import SearchWidget from '@/info/search-widget.js';
  65. import MultiSearchWidget from '@/info/multi-search-widget.js';
  66. export default {
  67. components: {
  68. SearchWidget,
  69. MultiSearchWidget,
  70. },
  71. data: function () {
  72. return {
  73. fieldValue1: {
  74. displayValue: [],
  75. fieldType: 'Key',
  76. id: null,
  77. },
  78. fieldValue2: {
  79. id: null,
  80. displayValue: [''],
  81. fieldType: 'Key',
  82. },
  83. whereClauseSource: {
  84. customerDataDimensions: [{
  85. fieldName: 'client.id',
  86. dataDimensionTypeNo: '202201191757',
  87. defaultDataDimensionTypeValueNo: '3',
  88. }],
  89. },
  90. whereClauseSource2: {
  91. customerDataDimensions:[{
  92. fieldName: 'client.id',
  93. dataDimensionTypeNo: '202201191757',
  94. defaultDataDimensionTypeValueNo: '1',
  95. }],
  96. },
  97. fieldValue3: {
  98. id: null,
  99. ids: [],
  100. displayValue: [],
  101. fieldType: 'Key',
  102. },
  103. whereClauseSource3: {
  104. customerDataDimensions:[{
  105. fieldName: 'client.id',
  106. dataDimensionTypeNo: '202201191757',
  107. defaultDataDimensionTypeValueNo: '1',
  108. }],
  109. },
  110. };
  111. },
  112. methods: {
  113. fieldValue1Changed: function (newFieldValue) {
  114. this.fieldValue1 = newFieldValue;
  115. },
  116. fieldValue2Changed: function(newFieldValue){
  117. this.fieldValue2 = newFieldValue;
  118. },
  119. fieldValue3Changed: function(newFieldValue){
  120. console.log(newFieldValue);
  121. this.fieldValue3 = newFieldValue;
  122. },
  123. },
  124. };
  125. </script>