index.vue 2.8 KB

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