equipmentSratisticsList.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <template>
  2. <view v-if="merchantListSize>1">
  3. <uni-collapse :accordion="true">
  4. <uni-list>
  5. <view v-for="merchant in merchantList" :key="merchant.id">
  6. <uni-list-item :title="getMerchantTitle(merchant)" @click="openEquipmentStatisticsByAdmin(merchant)"/>
  7. </view>
  8. </uni-list>
  9. </uni-collapse>
  10. </view>
  11. <view v-else>
  12. <equipmentStatistics v-if="merchantList[0].id" :adminId="adminId" style="padding: 20upx;"></equipmentStatistics>
  13. <view v-else style="text-align: center;">暂无数据</view>
  14. </view>
  15. </template>
  16. <script>
  17. import {mapState,mapActions,mapMutations} from 'vuex'
  18. import uniCollapse from '@/components/uni-collapse/uni-collapse.vue'
  19. import uniCollapseItem from '@/components/uni-collapse-item/uni-collapse-item.vue'
  20. import uniList from '@/components/uni-list/uni-list.vue'
  21. import uniListItem from '@/components/uni-list-item/uni-list-item.vue'
  22. import {equipmentStatistics} from '@/pages/Charts/equipmentStatistics';
  23. export default {
  24. components: {
  25. uniCollapse,
  26. uniCollapseItem,
  27. uniList,
  28. uniListItem
  29. },
  30. data() {
  31. return {
  32. globalUser:{},
  33. adminId: '',
  34. merchantList:[{equipmentList:[]}],
  35. extraIcon: {
  36. color: '#4cd964',
  37. size: '22',
  38. type: 'spinner'
  39. }
  40. }
  41. },
  42. computed: {
  43. ...mapState(['loginUser']),
  44. adminIdData:{
  45. get(){
  46. return this.adminId;
  47. }
  48. },
  49. merchantListSize:{
  50. get(){
  51. console.log('merchantList1',this.merchantList.length)
  52. return this.merchantList.length;
  53. }
  54. }
  55. },
  56. onShow(state){
  57. this.globalUser = uni.getStorageSync("globalUser");
  58. this.adminId = this.globalUser.id;
  59. this.init();
  60. },
  61. onLoad(state){
  62. // this.init();
  63. },
  64. onPullDownRefresh() {
  65. this.init();
  66. },
  67. methods: {
  68. ...mapActions('chart', ['getEquipmentListByUser']),
  69. async init(){
  70. await this.getEquipmentListData();
  71. },
  72. openEquipmentStatisticsByAdmin(merchant){
  73. const adminId = merchant.id;
  74. const pname = merchant.name;
  75. uni.navigateTo({
  76. url: '/pages/Charts/equipmentStatistics?adminId=' + adminId+'&pname='+pname,
  77. });
  78. },
  79. getMerchantTitle(merchant){
  80. return merchant.name?merchant.name:merchant.username;
  81. },
  82. getEquipmentListData(){
  83. // console.log('getEquipmentListData')
  84. this.getEquipmentListByUser(this.globalUser)
  85. .then(data => {
  86. this.merchantList = data;
  87. // console.log('merchantList2',this.merchantList.length)
  88. uni.stopPullDownRefresh();
  89. }
  90. , _ => void uni.stopPullDownRefresh());
  91. }
  92. }
  93. }
  94. </script>
  95. <style>
  96. </style>