index.vue 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <template>
  2. <view class='purchase-list'>
  3. <my-tabs @change="tapChange" :initIndex="initIndex"></my-tabs>
  4. <scroll-view class="purchase-body" scroll-y="true" @scrolltolower="scrolltolower" @scroll="scroll">
  5. <view v-if="initIndex === 0">
  6. <form-Create></form-Create>
  7. </view>
  8. <view v-if="initIndex === 1">
  9. <data-List v-for="(item,index) in listData" :key="index" :info="item"></data-List>
  10. </view>
  11. </scroll-view>
  12. </view>
  13. </template>
  14. <script>
  15. import { getTodoTaskPage, getDoneTaskPage,getMyProcessInstancePage } from "@/api/work/index"
  16. import myTabs from '../myTabs.vue'
  17. import dataList from '../dataList.vue'
  18. import formCreate from './formCreate.vue'
  19. import myPull from '@/static/js/myPull.js'
  20. export default {
  21. components:{myTabs,dataList,formCreate},
  22. data() {
  23. return {
  24. initIndex: 0,
  25. pageNo: 1,
  26. pageSize: 10
  27. }
  28. },
  29. onLoad(){
  30. this.refresh();
  31. },
  32. methods: {
  33. /**
  34. * @name 获取列表
  35. */
  36. getList(page,done){
  37. console.log(`获取第${page}页数据`);
  38. if(this.initIndex==1){
  39. getDoneTaskPage({pageNo:page,pageSize: this.pageSize}).then(response => {
  40. let dataList = response.data.list;
  41. let list = []
  42. dataList.forEach(v => {
  43. list.push({
  44. title:v.processInstance.name,
  45. status: v.name,
  46. time:v.createTime,
  47. nickname:v.processInstance.startUser.nickname
  48. })
  49. })
  50. done(list);
  51. });
  52. }
  53. },
  54. /**
  55. * @name 触底加载
  56. */
  57. scrolltolower(event){
  58. this.getList(this.page,this.__pulldone)
  59. },
  60. scroll(e){
  61. // 重新设置pulldown
  62. this.setPullDown(e.detail.scrollTop<10)
  63. },
  64. /**
  65. * @name 改变tab
  66. * @param val 索引
  67. */
  68. tapChange(val){
  69. this.initIndex=val;
  70. this.page = 1;
  71. this.getList(this.page,this.__pulldone)
  72. }
  73. },
  74. mixins:[myPull({})],
  75. }
  76. </script>
  77. <style lang='scss' scoped>
  78. .purchase-list {
  79. background-color: #f5f5f5;
  80. height: 100%;
  81. overflow: hidden;
  82. .purchase-body{
  83. height: calc(100% - 88upx);
  84. overflow: auto
  85. }
  86. }
  87. </style>