auditionClass.vue 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <template>
  2. <div class="auditionClass">
  3. <save-form
  4. :inline="true"
  5. class="searchForm"
  6. ref="searchForm"
  7. @submit="FetchList"
  8. @reset="reset"
  9. :model.sync="searchForm"
  10. >
  11. <el-form-item prop="organId">
  12. <el-select
  13. class="multiple"
  14. filterable
  15. v-model.trim="searchForm.organId"
  16. multiple
  17. collapse-tags
  18. clearable
  19. placeholder="请选择分部"
  20. >
  21. <el-option
  22. v-for="(item, index) in selects.branchs"
  23. :key="index"
  24. :label="item.name"
  25. :value="item.id"
  26. ></el-option>
  27. </el-select>
  28. </el-form-item>
  29. <el-form-item>
  30. <el-button native-type="submit" type="danger">搜索</el-button>
  31. <el-button native-type="reset" type="primary">重置</el-button>
  32. </el-form-item>
  33. </save-form>
  34. <Statistics :groupType='groupType' />
  35. <TableList :groupType='groupType' />
  36. </div>
  37. </template>
  38. <script>
  39. import Statistics from './components/index';
  40. import TableList from './components/tableList';
  41. export default {
  42. name: "auditionClass",
  43. components: {
  44. Statistics,
  45. TableList
  46. },
  47. provide() {
  48. return {
  49. organId: () => this.searchForm.organId.join(","),
  50. isSearch: ()=> this.isSearch,
  51. };
  52. },
  53. data() {
  54. return {
  55. groupType: 'PRACTICE',
  56. searchForm: {
  57. organId: [],
  58. },
  59. isSearch: false,
  60. }
  61. },
  62. async mounted() {
  63. },
  64. methods: {
  65. __init() {
  66. },
  67. FetchList() {
  68. this.isSearch = !this.isSearch;
  69. },
  70. reset() {
  71. this.searchForm.organId = [];
  72. this.FetchList();
  73. },
  74. }
  75. };
  76. </script>
  77. <style lang="scss" scoped>
  78. .rows {
  79. > div {
  80. margin-bottom: 20px;
  81. }
  82. }
  83. ::v-deep .el-card__body .statistic {
  84. margin-bottom: 15px;
  85. padding: 0;
  86. }
  87. .statistic {
  88. .statistic-content > span {
  89. font-size: 22px !important;
  90. &:first-child {
  91. font-size: 14px !important;
  92. }
  93. }
  94. }
  95. </style>