equipmentSratisticsList.vue 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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. adminId: '',
  33. merchantList:[{equipmentList:[]}],
  34. extraIcon: {
  35. color: '#4cd964',
  36. size: '22',
  37. type: 'spinner'
  38. }
  39. }
  40. },
  41. computed: {
  42. ...mapState(['loginUser']),
  43. adminIdData:{
  44. get(){
  45. return this.adminId;
  46. }
  47. },
  48. merchantListSize:{
  49. get(){
  50. console.log('merchantList1',this.merchantList.length)
  51. return this.merchantList.length;
  52. }
  53. }
  54. },
  55. onShow(state){
  56. this.adminId = this.loginUser.id;
  57. this.init();
  58. },
  59. onPullDownRefresh() {
  60. this.init();
  61. },
  62. methods: {
  63. ...mapActions('chart', ['getEquipmentListByUser']),
  64. async init(){
  65. await this.getEquipmentListData();
  66. },
  67. openEquipmentStatisticsByAdmin(merchant){
  68. const adminId = merchant.id;
  69. const pname = merchant.name;
  70. uni.navigateTo({
  71. url: '/pages/Charts/equipmentStatistics?adminId=' + adminId+'&pname='+pname,
  72. });
  73. },
  74. getMerchantTitle(merchant){
  75. return merchant.name?merchant.name:merchant.username;
  76. },
  77. getEquipmentListData(){
  78. console.log('getEquipmentListData')
  79. this.getEquipmentListByUser(this.loginUser)
  80. .then(data => {
  81. this.merchantList = data;
  82. console.log('merchantList2',this.merchantList.length)
  83. uni.stopPullDownRefresh();
  84. }
  85. , _ => void uni.stopPullDownRefresh());
  86. }
  87. }
  88. }
  89. </script>
  90. <style>
  91. </style>