other.vue 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <template>
  2. <div v-loading="loading">
  3. <div class="white-box">
  4. <el-table class="table-box" :data="tableData" style="width: 100%;">
  5. <el-table-column label="期数" prop="PERIOD_NUM.value">
  6. </el-table-column>
  7. <el-table-column label="销售奖金" prop="BONUS_TG.value">
  8. </el-table-column>
  9. <el-table-column label="业绩奖金" prop="ORI_BONUS_QY.value">
  10. </el-table-column>
  11. <el-table-column label="管理奖金" prop="ORI_BONUS_BS_MNT.value">
  12. </el-table-column>
  13. <el-table-column label="绩效奖金" prop="ORI_BONUS_BS_ABBR.value">
  14. </el-table-column>
  15. <el-table-column label="季度分红" prop="ORI_BONUS_QUARTER.value">
  16. </el-table-column>
  17. <el-table-column label="旅游积分" prop="BONUS_TOURISM.value">
  18. </el-table-column>
  19. <el-table-column label="车房积分" prop="BONUS_GARAGE.value">
  20. </el-table-column>
  21. <el-table-column label="合计" prop="BONUS_TOTAL.value">
  22. </el-table-column>
  23. <el-table-column label="实发" prop="BONUS_REAL.value">
  24. </el-table-column>
  25. <el-table-column >
  26. <template slot-scope="scope">
  27. <el-button type="primary" size="small" @click.native="showFlow(scope.row.PERIOD_NUM.value)">查看全部</el-button>
  28. </template>
  29. </el-table-column>
  30. </el-table>
  31. </div>
  32. <el-dialog :title="`${periodNum}期奖金`" :visible.sync="dialogFlowVisible" width="70%">
  33. <el-descriptions title="" class="bonus-list" v-if="newData" :column="2">
  34. <el-descriptions-item class="bonus-item" label="期数">{{newData.PERIOD_NUM.value}}</el-descriptions-item>
  35. <el-descriptions-item class="bonus-item" label="会员等级">{{newData.LAST_DEC_LV.value}}</el-descriptions-item>
  36. <el-descriptions-item class="bonus-item" label="销售奖金">{{newData.ORI_BONUS_TG.value}}</el-descriptions-item>
  37. <el-descriptions-item class="bonus-item" label="业绩奖金">{{newData.ORI_BONUS_QY.value}}</el-descriptions-item>
  38. <el-descriptions-item class="bonus-item" label="管理奖金">{{newData.ORI_BONUS_BS_MNT.value}}</el-descriptions-item>
  39. <el-descriptions-item class="bonus-item" label="绩效奖金">{{newData.ORI_BONUS_BS_ABBR.value}}</el-descriptions-item>
  40. <el-descriptions-item class="bonus-item" label="季度分红">{{newData.ORI_BONUS_QUARTER.value}}</el-descriptions-item>
  41. <el-descriptions-item class="bonus-item" label="旅游积分">{{newData.BONUS_TOURISM.value}}</el-descriptions-item>
  42. <el-descriptions-item class="bonus-item" label="车房积分">{{newData.BONUS_GARAGE.value}}</el-descriptions-item>
  43. <el-descriptions-item class="bonus-item" label="合计">{{newData.BONUS_TOTAL.value}}</el-descriptions-item>
  44. <el-descriptions-item class="bonus-item" label="实发奖金">{{newData.BONUS_REAL.value}}</el-descriptions-item>
  45. <el-descriptions-item class="bonus-item" label="一市场新增">{{newData.PV_1L.value}}</el-descriptions-item>
  46. <el-descriptions-item class="bonus-item" label="一市场结余">{{newData.SURPLUS_1L.value}}</el-descriptions-item>
  47. <el-descriptions-item class="bonus-item" label="二市场新增">{{newData.PV_2L.value}}</el-descriptions-item>
  48. <el-descriptions-item class="bonus-item" label="二市场结余">{{newData.SURPLUS_2L.value}}</el-descriptions-item>
  49. <el-descriptions-item class="bonus-item" label="三市场新增">{{newData.PV_3L.value}}</el-descriptions-item>
  50. <el-descriptions-item class="bonus-item" label="三市场结余">{{newData.SURPLUS_3L.value}}</el-descriptions-item>
  51. </el-descriptions>
  52. </el-dialog>
  53. </div>
  54. </template>
  55. <script>
  56. import network from '@/utils/network'
  57. import tool from '@/utils/tool'
  58. export default {
  59. name: 'bonus_other',
  60. components: {},
  61. mounted() {
  62. this.getData()
  63. },
  64. data() {
  65. return {
  66. allData: null,
  67. tableKey: null,
  68. newData: null,
  69. loading: true,
  70. tableData: null,
  71. dialogFlowVisible:false,
  72. periodNum: '',
  73. dialogLoading: false,
  74. tool: tool,
  75. }
  76. },
  77. methods: {
  78. getData() {
  79. let vueObj = this
  80. vueObj.loading = true
  81. network.getData('bonus/other').then(response => {
  82. vueObj.tableData = response.tableData
  83. vueObj.tableKey = response.tableKey
  84. vueObj.loading = false
  85. }).catch(response => {
  86. vueObj.loading = false
  87. })
  88. },
  89. showFlow(periodNum){
  90. let vueObj = this
  91. this.$message({
  92. message: '正在获取数据',
  93. type: 'info'
  94. })
  95. this.periodNum = periodNum
  96. vueObj.dialogFlowVisible = true
  97. vueObj.dialogLoading = true
  98. this.getFlowData()
  99. },
  100. getFlowData() {
  101. let vueObj = this
  102. network.getData('bonus/new',{periodNum: vueObj.periodNum}).then(response => {
  103. vueObj.newData = response
  104. vueObj.dialogLoading = false
  105. }).catch(response => {
  106. vueObj.dialogLoading = false
  107. })
  108. },
  109. }
  110. }
  111. </script>
  112. <style>
  113. .other-table-box .el-table__header-wrapper{display: none;}
  114. .other-table-box .el-table__body tr:hover>td{background-color: #fff!important;}
  115. .other-table-box .el-table__body tr td:not(:last-child):hover{background-color: #f5f5f5!important;}
  116. .bonus-list:after{content: '';clear: both;display: table;}
  117. .bonus-list{width: 360px;}
  118. .bonus-list .bonus-item{float: left;width: 33.333%;background: #fff;height:36px;line-height:36px;border: 1px solid #ddd;margin: -1px 0 0 -1px;box-sizing: border-box;}
  119. .bonus-item{text-align: center;}
  120. .bonus-item:hover{background: #f5f5f5;cursor: pointer;}
  121. </style>