deviceList.vue 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <template>
  2. <div class='replenishment-stock-up-device-list'>
  3. <CustomList
  4. ref="customList"
  5. @onLoad="onLoad">
  6. <div class="list plr15 pt10">
  7. <van-checkbox-group v-model="result">
  8. <div @click="gotoUrl('./detail', {deviceId: item.id})" v-for="(item, i) in list" :key="i" class="item bgc-fff plr15 c-333 fs-14">
  9. <div class=" ptb10 kitbox">
  10. <div class="box-flex-1 fs-14">
  11. {{item.equName}}
  12. <!-- <van-checkbox :name="item.id">{{item.equName}}</van-checkbox> -->
  13. </div>
  14. <div class="">
  15. <van-tag type="success">在线</van-tag>
  16. <van-tag type="success" class="ml5">在售</van-tag>
  17. </div>
  18. </div>
  19. <div class="kitbox ptb10 pr40">
  20. <div class="pt2">空置率:</div>
  21. <div class="box-flex-1 pt10"><van-progress :percentage="item.kongzhilv? (item.kongzhilv*100) : 0" /></div>
  22. </div>
  23. <div class="lh20 ptb10 kitbox">
  24. <div class="box-flex-1">
  25. <div>待补商品数量:{{item.daibushangpinshuliang}}</div>
  26. <div>未设商品货道:{{item.weishezhishangpinhuodao}}</div>
  27. <div>设备所属:{{item.community}}</div>
  28. <div>设备编号:{{item.equNum}}</div>
  29. <div>上次补货时间:{{item.shangyicibuhuoshijian}}</div>
  30. </div>
  31. <div class="fs-20 c-pr">
  32. <van-icon name="arrow" />
  33. </div>
  34. </div>
  35. </div>
  36. </van-checkbox-group>
  37. </div>
  38. </CustomList>
  39. <!-- <div class="bot-banner ptb10 bgc-fff">
  40. <div class="kitbox fs-14">
  41. <div class="pr40 box-v-middle pl15">
  42. <van-checkbox v-model="selAll">全选</van-checkbox>
  43. </div>
  44. <div class="box-flex-1 plr15">
  45. <van-button @click="gotoUrl('./detail', {deviceIds: result.join(',')})" type="info" size="small" round block>下一步,查看缺货商品汇总</van-button>
  46. </div>
  47. </div>
  48. </div> -->
  49. </div>
  50. </template>
  51. <script>
  52. import medicineAbinetApi from '@/api/api-medicineAbinet'
  53. export default{
  54. name: 'replenishmentStockUpDeviceList',
  55. data(){
  56. return {
  57. list: [],
  58. result: [],
  59. selAll: false
  60. }
  61. },
  62. watch:{
  63. selAll(n){
  64. if(n){
  65. this.result = _.map(this.list, v=>{
  66. return v.id
  67. })
  68. } else {
  69. this.result = []
  70. }
  71. }
  72. },
  73. created() {
  74. },
  75. methods:{
  76. $refreshPage(){
  77. this.$refs.customList.refresh()
  78. },
  79. onLoad({page, pageSize, searchText}){
  80. var p = {
  81. content: searchText,
  82. userId: this.user.id,
  83. // startTime: startDate? this.$moment(startDate).format('YYYY-MM-DD 00:00:00') : '',
  84. // endTime: endDate? this.$moment(endDate).format('YYYY-MM-DD 23:59:59') : '',
  85. // content: searchForm.content,
  86. // community: len? this.community[len-1] : '',
  87. // sellState: searchForm.sellStatus,
  88. // page: page,
  89. // size: pageSize
  90. }
  91. console.log('params', p)
  92. medicineAbinetApi
  93. .getOutOfStockDeviceListByUserId(p)
  94. .then(res=>{
  95. console.log('getOutOfStockDeviceList', res)
  96. if(res.status == 200){
  97. var list = res.detailModelList
  98. this.list = page==1? list : this.list.concat(list)
  99. this.$refs.customList.endLoad(true, this.list.length)
  100. } else {
  101. this.list = []
  102. this.$refs.customList.endLoad(false, true)
  103. }
  104. }).catch(err=>{
  105. console.error(err)
  106. this.list = []
  107. this.$refs.customList.endLoad(false, true)
  108. })
  109. },
  110. },
  111. }
  112. </script>
  113. <style lang='scss' scoped>
  114. .replenishment-stock-up-device-list{
  115. .list{
  116. .item{
  117. margin-bottom: 10px;
  118. border-radius: 5px;
  119. &:last-child{
  120. margin-bottom: 0;
  121. }
  122. .van-icon{
  123. position: absolute;
  124. top: 50%;
  125. transform: translateY(calc(-50% - 15px));
  126. right: 0;
  127. color: #ccc;
  128. }
  129. }
  130. }
  131. .bot-banner{
  132. position: fixed;
  133. bottom: 0;
  134. left: 0;
  135. width: 100%;
  136. box-shadow: 0 0 5px #ccc;
  137. }
  138. ::v-deep .van-list__placeholder{
  139. height: 60px;
  140. }
  141. }
  142. </style>