remind.vue 2.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <template>
  2. <div class="main-contain">
  3. <div class="position">
  4. <bread-crumb :crumbs="crumbs"></bread-crumb>
  5. </div>
  6. <div class="app-container">
  7. <el-tabs v-model="activeName" ref="elTabs">
  8. <el-tab-pane name="thisWeek">
  9. <span slot="label"><i class="el-icon-date"></i> 本周({{theWeek.thisWeek}})</span>
  10. </el-tab-pane>
  11. <el-tab-pane name="nextWeek">
  12. <span slot="label"><i class="el-icon-date"></i> 下一周({{theWeek.nextWeek}})</span>
  13. </el-tab-pane>
  14. </el-tabs>
  15. <table-push v-if="activeName=='pushTime'"></table-push>
  16. <!-- <table-weeks v-else :week-time="activeName"> </table-weeks> -->
  17. <table-weeks v-if="activeName == 'thisWeek'"> </table-weeks>
  18. <nextTableWeeks v-if="activeName =='nextWeek'"></nextTableWeeks>
  19. </div>
  20. </div>
  21. </template>
  22. <script>
  23. import {getWeekPanels} from '@/api/schedule';
  24. import tableWeeks from './components/tableWeeks'
  25. import nextTableWeeks from './components/nextTableWeeks'
  26. import tablePush from './components/tablePush'
  27. import BreadCrumb from '../components/bread-crumb'
  28. export default {
  29. name:'remind',
  30. data() {
  31. return {
  32. crumbs: [
  33. { path: false, name: '排班管理' },
  34. { path: '/workforce/remind', name: '排班提醒' },
  35. ],
  36. activeName: 'thisWeek',
  37. theWeek:{thisWeek:0,nextWeek:0,}
  38. };
  39. },
  40. components:{
  41. BreadCrumb,
  42. tableWeeks,
  43. tablePush,
  44. nextTableWeeks
  45. },
  46. methods: {
  47. getWeekPanels(){
  48. getWeekPanels(0).then(response=>{
  49. if (response.data.state==0) {
  50. return false
  51. }
  52. this.theWeek.thisWeek = response.data.data.theWeek;
  53. console.log("上一周",this.theWeek.thisWeek)
  54. // this.theWeek.nextWeek = this.theWeek.thisWeek+1;
  55. let childrenRefs = this.$refs.elTabs.$children
  56. this.$nextTick(() => {
  57. childrenRefs.forEach(child => child.$forceUpdate())
  58. })
  59. });
  60. },
  61. handleClick(tab, event) {
  62. console.log(tab, event);
  63. },
  64. changeActiveName(val){
  65. console.log("val------",val)
  66. this.activeName = val
  67. }
  68. },
  69. created(){
  70. this.getWeekPanels();
  71. },
  72. watch:{
  73. activeName:function(val){
  74. console.log("val----",val)
  75. }
  76. }
  77. };
  78. </script>
  79. <style rel="stylesheet/css" lang="scss" scoped>
  80. </style>