reserveStatus.js 1.63 KB
//0:待确认1:已定座2:确认到店(到店)3:用餐完成(离店)4:取消预定 5:C端在线预定(分配包间)6:拒单
const status=[
  '待确认',//0:待确认
  '已预订',//1:已定座
  '已完成',//2:确认到店(到店)
  '已完成',//3:用餐完成(离店)
  '已取消',//4:取消预定
  '已预订',//5:C端在线预定(分配包间)
  '已拒绝'//6:拒单
];
export default {
  reserve(detail){
    /*
    let ns = new Date() / 1000
    //取消
    detail.hasCancel=detail.status==4;
    //结束
    detail.hasOvered= (ns > detail.edate || (detail.status >= 2 && detail.status <= 3)) && detail.status!=6
    //正常运行已接单
    if(detail.type==0){//B端
      detail.hasRunning = !detail.hasOvered && !detail.hasCancel
    }else{//C端
      detail.hasRunning = !detail.hasOvered && !detail.hasCancel && detail.status==5
    }
    */
    detail.hasRunning=this.hasRunningFlag(detail)
    if(!detail.hasRunning){
      detail.hasCancel=detail.status==4;
      detail.hasOvered=detail.status!=0 && detail.status!=6;
    }
    //是否可以修改到店时间
    detail.hasUpdateDate=detail.type==1 && detail.is_set_ddate==0
    console.log('detail.hasUpdateDate',detail.hasUpdateDate)
    detail.getStatusStr='';
    if(detail.status>=0){
      detail.getStatusStr=status[detail.status];
    }
    return detail;
  },
  hasRunningFlag(detail){//判断订单正在运行
    let ns = new Date() / 1000
    let flag=true;
    if(detail.status==0 || detail.status==6 || detail.status==4) return false//未进行状态
    if(ns > detail.edate) return false//超时
    return flag
  }
}