| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- <template>
- <MeScroll :up="up" :down="down" @up="upFn" :fixed="false" @down="downFn" @init="initMeScroll">
- <scroll-view :scroll-y="true">
- <card @deleteItem="deleteItem" :list="list" @cancel="cancel"></card>
- </scroll-view>
- </MeScroll>
- </template>
- <script>
- import MeScroll from '@/comps/mescroll-uni/mescroll-uni.vue'
- import card from './card.vue'
- var app=getApp()
- export default {
- components:{
- MeScroll,card
- },
- props: {
- refresh:Boolean,
- type: Number,
- i: Number,
- item:Object
- },
- watch:{
- load() {
- this.mescroll.resetUpScroll()
- },
- },
- data() {
- return {
- isInit: false, // 是否初始化
- list: [], // 列表数据
- mescroll: null, // mescroll 对象
- // 上拉配置参数
- up: {
- noMoreSize: 4,
- auto: true,
- page: {
- page: 0,
- size: 10
- }
- },
- // 下拉配置参数
- down: {
- use: true,
- auto: false
- }
- }
- },
- watch:{
- type(val) {
- if(!this.isInit && val === this.i) {
- this.mescroll.resetUpScroll()
- }
- }
- },
- mounted() {
- if(!this.isInit && this.i === 0) {
- this.mescroll.resetUpScroll()
- }
- },
- methods: {
- /**
- * @param {Object} item 删除订单
- */
- deleteItem(item){
- let that=this
- app.globalData.twoFailHint("确定要取消该工单?",function(){
- //删除状态
- item.status=-1
- let operation='estateRepair/addEstateRepair'
- app.globalData.postRequest(item, operation, function (res) {
- if (res.data.add_result==true) {
- app.globalData.oneFailHint("删除成功成功");
- that.mescroll.resetUpScroll()
- }else{
- app.globalData.oneFailHint(res.data.add_result);
- }
- });
- })
- },
- /**
- * 取消订单
- * @param {Object} item 订单实体
- */
- cancel(item){
- let that=this
- app.globalData.twoFailHint("确定要取消该工单?",function(){
- item.handleStatus=-1
- let operation='estateRepair/addEstateRepair'
- app.globalData.postRequest(item, operation, function (res) {
- if (res.data.add_result==true) {
- app.globalData.oneFailHint("取消成功");
- that.mescroll.resetUpScroll()
- }else{
- app.globalData.oneFailHint(res.data.add_result);
- }
- });
- })
- },
- /**
- * @param {Object} mescroll 初始化组件
- */
- initMeScroll(mescroll) {
- this.mescroll = mescroll
- },
- /**
- * @param {Object} mescroll 上拉回调
- */
- upFn(mescroll) {
- let that=this
- let data={
- "page":{
- current:mescroll.num,
- size:mescroll.size
- },
- handleStatus:this.item.value
- }
- //已处理,待评价
- if (this.item.value==2) {
- //已处理
- data.handleStatus=1
- //待评价
- data.estimateStatus=0
- }
- let operation='estateRepair/estateRepairList'
- try{
- app.globalData.postRequest(data, operation, function (res) {
- let estateRepairList=res.data.estateRepairList
- let length=estateRepairList.records.length
- let data=estateRepairList.records
- mescroll.endBySize(length, estateRepairList.total);
- if(mescroll.num == 1) that.list = []; //如果是第一页需手动制空列表
- that.list=that.list.concat(data); //追加新数据
- });
- }catch(e){
- mescroll.endErr();
- }
- },
- /**
- * 下拉回调
- * */
- downFn(mescroll) {
- setTimeout(()=>{
- this.list=[]
- this.mescroll.resetUpScroll()
- uni.showToast({
- title:"刷新成功",
- icon:"none",
- duration:2000
- })
- },1500)
- },
- }
- }
- </script>
- <style lang="scss" scoped>
- view{
- box-sizing: border-box;
- }
- </style>
|