equipmentSratisticsList.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  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="firstMerchantAdminId" :adminId="firstMerchantAdminId" 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. import {
  24. dateUtils
  25. } from '@/common/util.js';
  26. export default {
  27. components: {
  28. uniCollapse,
  29. uniCollapseItem,
  30. uniList,
  31. uniListItem
  32. },
  33. data() {
  34. return {
  35. globalUser:{},
  36. merchantList:[{equipmentList:[]}],
  37. extraIcon: {
  38. color: '#4cd964',
  39. size: '22',
  40. type: 'spinner'
  41. }
  42. }
  43. },
  44. computed: {
  45. ...mapState(['loginUser']),
  46. firstMerchantAdminId:{
  47. get(){
  48. console.log('firstMerchantAdminId',this.merchantList[0].id)
  49. return this.merchantList[0].id;
  50. }
  51. },
  52. merchantListSize:{
  53. get(){
  54. console.log('merchantList1',this.merchantList.length)
  55. return this.merchantList.length;
  56. }
  57. }
  58. },
  59. onShow(state){
  60. this.globalUser = uni.getStorageSync("globalUser");
  61. this.globalUser.todayDate = dateUtils.getCurrentDate();
  62. this.init();
  63. },
  64. onLoad(state){
  65. // this.init();
  66. },
  67. onPullDownRefresh() {
  68. this.init();
  69. },
  70. methods: {
  71. ...mapActions('chart', ['getEquipmentListByUser']),
  72. async init(){
  73. await this.getEquipmentListData();
  74. },
  75. openEquipmentStatisticsByAdmin(merchant){
  76. const adminId = merchant.id;
  77. const pname = merchant.name;
  78. uni.navigateTo({
  79. url: '/pages/Charts/equipmentStatistics?adminId=' + adminId+'&pname='+pname,
  80. });
  81. },
  82. getMerchantTitle(merchant){
  83. return merchant.name?merchant.name:merchant.username;
  84. },
  85. getEquipmentListData(){
  86. // console.log('getEquipmentListData')
  87. this.getEquipmentListByUser(this.globalUser)
  88. .then(data => {
  89. this.merchantList = data;
  90. console.log('getEquipmentListData',this.merchantList)
  91. uni.stopPullDownRefresh();
  92. }
  93. , _ => void uni.stopPullDownRefresh());
  94. }
  95. }
  96. }
  97. </script>
  98. <style>
  99. </style>