doum
2025-09-04 9d901b4215323c97a00a068cd962f5c9c04dadfa
admin/src/views/business/orders.vue
@@ -2,245 +2,131 @@
  <TableLayout :permissions="['business:orders:query']">
    <!-- 搜索表单 -->
    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
      <el-form-item label="主键" prop="id">
        <el-input v-model="searchForm.id" placeholder="请输入主键" @keypress.enter.native="search"></el-input>
      <el-form-item label="订单号" prop="releaseMemberId">
        <el-input v-model="searchForm.code" style="width: 120px"  clearable placeholder="请输入订单号" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="是否已删除 0未删除 1已删除" prop="deleted">
        <el-input v-model="searchForm.deleted" placeholder="请输入是否已删除 0未删除 1已删除" @keypress.enter.native="search"></el-input>
      <el-form-item label="接单方" prop="acceptName">
        <el-input v-model="searchForm.acceptName" style="width: 120px"  clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="创建人编码" prop="createUser">
        <el-input v-model="searchForm.createUser" placeholder="请输入创建人编码" @keypress.enter.native="search"></el-input>
      <el-form-item label="发单方" prop="releaseName">
        <el-input v-model="searchForm.releaseName" style="width: 120px"  clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="创建时间" prop="createTime">
        <el-date-picker v-model="searchForm.createTime" value-format="yyyy-MM-dd" placeholder="请输入创建时间" @change="search"/>
      <el-form-item label="订单类型" prop="type">
        <el-select v-model="searchForm.type"  style="width: 120px"  @keypress.enter.native="search" clearable placeholder="订单类型">
          <el-option label="用工单" :value="0"></el-option>
          <el-option label="货运单" :value="1"></el-option>
          <el-option label="订餐单" :value="2"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="更新人编码" prop="updateUser">
        <el-input v-model="searchForm.updateUser" placeholder="请输入更新人编码" @keypress.enter.native="search"></el-input>
      <el-form-item label="订单状态" prop="status">
        <el-select v-model="searchForm.status" style="width: 100px"  @keypress.enter.native="search" clearable placeholder="状态">
        <el-option label="待支付" :value="0"></el-option>
        <el-option label="待接单" :value="1"></el-option>
        <el-option label="已接单" :value="2"></el-option>
        <el-option label="进行中" :value="3"></el-option>
        <el-option label="已完成" :value="4"></el-option>
        <el-option label="已取消" :value="99"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="更新时间" prop="updateTime">
        <el-date-picker v-model="searchForm.updateTime" value-format="yyyy-MM-dd" placeholder="请输入更新时间" @change="search"/>
      <el-form-item label="发布时间"   prop="createTimeStart"  label-width="100px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.createTimeStart" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="开始时间" /> -
      </el-form-item>
      <el-form-item label="备注" prop="remark">
        <el-input v-model="searchForm.remark" placeholder="请输入备注" @keypress.enter.native="search"></el-input>
      <el-form-item label="" prop="createTimeEnd"   label-width="0px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.createTimeEnd" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="结束时间" />
      </el-form-item>
      <el-form-item label="发单方" prop="releaseMemberId">
        <el-input v-model="searchForm.releaseMemberId" placeholder="请输入发单方" @keypress.enter.native="search"></el-input>
      <el-form-item label="接单时间" prop="acceptTimeStart"  label-width="100px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.acceptTimeStart" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="开始时间" /> -
      </el-form-item>
      <el-form-item label="类型:0=用工;1=运货;2=订餐" prop="type">
        <el-input v-model="searchForm.type" placeholder="请输入类型:0=用工;1=运货;2=订餐" @keypress.enter.native="search"></el-input>
      <el-form-item label="" prop="acceptTimeEnd"  label-width="0px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.acceptTimeEnd" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="结束时间" />
      </el-form-item>
      <el-form-item label="开始时间 yyyy-MM-dd" prop="startDate">
        <el-date-picker v-model="searchForm.startDate" value-format="yyyy-MM-dd" placeholder="请输入开始时间 yyyy-MM-dd" @change="search"/>
      <el-form-item label="完成时间"    prop="doneTimeStart"   label-width="100px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.doneTimeStart" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="开始时间" /> -
      </el-form-item>
      <el-form-item label="结束时间 yyyy-MM-dd" prop="endDate">
        <el-date-picker v-model="searchForm.endDate" value-format="yyyy-MM-dd" placeholder="请输入结束时间 yyyy-MM-dd" @change="search"/>
      </el-form-item>
      <el-form-item label="地点信息/用车起点/用餐地点" prop="location">
        <el-input v-model="searchForm.location" placeholder="请输入地点信息/用车起点/用餐地点" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="地点描述" prop="locationRemark">
        <el-input v-model="searchForm.locationRemark" placeholder="请输入地点描述" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="经度" prop="lat">
        <el-input v-model="searchForm.lat" placeholder="请输入经度" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="省份" prop="province">
        <el-input v-model="searchForm.province" placeholder="请输入省份" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="城市" prop="city">
        <el-input v-model="searchForm.city" placeholder="请输入城市" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="区县" prop="area">
        <el-input v-model="searchForm.area" placeholder="请输入区县" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="纬度" prop="lgt">
        <el-input v-model="searchForm.lgt" placeholder="请输入纬度" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="需求类型(运货/用工):关联 category" prop="categoryId">
        <el-input v-model="searchForm.categoryId" placeholder="请输入需求类型(运货/用工):关联 category" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="用工类型:0=采摘工;1=分拣工;2=包装工;(用工订单)" prop="workType">
        <el-input v-model="searchForm.workType" placeholder="请输入用工类型:0=采摘工;1=分拣工;2=包装工;(用工订单)" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="计价数量1(天数/用车次数)" prop="priceNum1">
        <el-input v-model="searchForm.priceNum1" placeholder="请输入计价数量1(天数/用车次数)" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="计价数量2(用工数量/采摘数量/用车数量/)" prop="priceNum2">
        <el-input v-model="searchForm.priceNum2" placeholder="请输入计价数量2(用工数量/采摘数量/用车数量/)" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="需求补充" prop="supplement">
        <el-input v-model="searchForm.supplement" placeholder="请输入需求补充" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="费用标准" prop="price">
        <el-input v-model="searchForm.price" placeholder="请输入费用标准" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="预估费用" prop="estimatedAccount">
        <el-input v-model="searchForm.estimatedAccount" placeholder="请输入预估费用" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="实际支付费用" prop="payAccount">
        <el-input v-model="searchForm.payAccount" placeholder="请输入实际支付费用" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="实收费用" prop="reviceAccount">
        <el-input v-model="searchForm.reviceAccount" placeholder="请输入实收费用" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="费用说明" prop="priceRemark">
        <el-input v-model="searchForm.priceRemark" placeholder="请输入费用说明" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="用车类型(运货使用):0=天;1=次" prop="carType">
        <el-input v-model="searchForm.carType" placeholder="请输入用车类型(运货使用):0=天;1=次" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="运输品种(运货使用) 关联category表" prop="transportTypeId">
        <el-input v-model="searchForm.transportTypeId" placeholder="请输入运输品种(运货使用) 关联category表" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="运输重量/数量" prop="transportNum">
        <el-input v-model="searchForm.transportNum" placeholder="请输入运输重量/数量" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="运输单位(个/斤)" prop="transportUnit">
        <el-input v-model="searchForm.transportUnit" placeholder="请输入运输单位(个/斤)" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="用车终点地址" prop="locationEnd">
        <el-input v-model="searchForm.locationEnd" placeholder="请输入用车终点地址" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="用车终点经度" prop="latEnd">
        <el-input v-model="searchForm.latEnd" placeholder="请输入用车终点经度" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="用车终点纬度" prop="lgtEnd">
        <el-input v-model="searchForm.lgtEnd" placeholder="请输入用车终点纬度" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="途经点/餐标信息" prop="wayInfo">
        <el-input v-model="searchForm.wayInfo" placeholder="请输入途经点/餐标信息" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="订单编号" prop="code">
        <el-input v-model="searchForm.code" placeholder="请输入订单编号" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="订单状态:0=待接单;1=已接单;2=进行中;3=已完成;99=已取消;" prop="status">
        <el-input v-model="searchForm.status" placeholder="请输入订单状态:0=待接单;1=已接单;2=进行中;3=已完成;99=已取消;" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="接单时间" prop="acceptTime">
        <el-date-picker v-model="searchForm.acceptTime" value-format="yyyy-MM-dd" placeholder="请输入接单时间" @change="search"/>
      </el-form-item>
      <el-form-item label="接单人" prop="acceptMemberId">
        <el-input v-model="searchForm.acceptMemberId" placeholder="请输入接单人" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="接单类型:0=手动接单;1=系统派单;" prop="acceptType">
        <el-input v-model="searchForm.acceptType" placeholder="请输入接单类型:0=手动接单;1=系统派单;" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="开始作业时间" prop="workStartTime">
        <el-date-picker v-model="searchForm.workStartTime" value-format="yyyy-MM-dd" placeholder="请输入开始作业时间" @change="search"/>
      </el-form-item>
      <el-form-item label="完成时间" prop="finishTime">
        <el-date-picker v-model="searchForm.finishTime" value-format="yyyy-MM-dd" placeholder="请输入完成时间" @change="search"/>
      </el-form-item>
      <el-form-item label="平台提成比例" prop="platformRata">
        <el-input v-model="searchForm.platformRata" placeholder="请输入平台提成比例" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="微信平台交易订单号" prop="wxExternalNo">
        <el-input v-model="searchForm.wxExternalNo" placeholder="请输入微信平台交易订单号" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="是否评价:0=否;1=是" prop="commentStatus">
        <el-input v-model="searchForm.commentStatus" placeholder="请输入是否评价:0=否;1=是" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="评价内容" prop="commentInfo">
        <el-input v-model="searchForm.commentInfo" placeholder="请输入评价内容" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="评价星级1-5" prop="commentLevel">
        <el-input v-model="searchForm.commentLevel" placeholder="请输入评价星级1-5" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="评价时间" prop="commentTime">
        <el-date-picker v-model="searchForm.commentTime" value-format="yyyy-MM-dd" placeholder="请输入评价时间" @change="search"/>
      </el-form-item>
      <el-form-item label="评价类型:0=手动评价;1=系统自动评价;" prop="commentType">
        <el-input v-model="searchForm.commentType" placeholder="请输入评价类型:0=手动评价;1=系统自动评价;" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="取消时间" prop="cancelTime">
        <el-date-picker v-model="searchForm.cancelTime" value-format="yyyy-MM-dd" placeholder="请输入取消时间" @change="search"/>
      </el-form-item>
      <el-form-item label="是否已修改:0=否;1=是;" prop="isUpdate">
        <el-input v-model="searchForm.isUpdate" placeholder="请输入是否已修改:0=否;1=是;" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="接单方黑名单member:id 多个以,分割" prop="blackRecive">
        <el-input v-model="searchForm.blackRecive" placeholder="请输入接单方黑名单member:id 多个以,分割" @keypress.enter.native="search"></el-input>
      <el-form-item label="" prop="doneTimeEnd"  label-width="0px" >
        <el-date-picker type="datetime"  style="width: 150px"  v-model="searchForm.doneTimeEnd" clearable value-format="yyyy-MM-dd HH:mm:ss"
                        placeholder="结束时间" />
      </el-form-item>
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
        <el-button @click="reset">重置</el-button>
        <el-button type="primary" :loading="isWorking.export" @click="exportExcel">导出</el-button>
      </section>
    </el-form>
    <!-- 表格和分页 -->
    <template v-slot:table-wrap>
      <ul class="toolbar" v-permissions="['business:orders:create', 'business:orders:delete']">
<!--      <ul class="toolbar" v-permissions="['business:orders:create', 'business:orders:delete']">
        <li><el-button type="primary" @click="$refs.operaOrdersWindow.open('新建订单信息记录')" icon="el-icon-plus" v-permissions="['business:orders:create']">新建</el-button></li>
        <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:orders:delete']">删除</el-button></li>
      </ul>
      </ul>-->
      <el-table
         :height="tableHeightNew"
        v-loading="isWorking.search"
        :data="tableData.list"
        stripe
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55"></el-table-column>
        <el-table-column prop="id" label="主键" min-width="100px"></el-table-column>
        <el-table-column prop="deleted" label="是否已删除 0未删除 1已删除" min-width="100px"></el-table-column>
        <el-table-column prop="createUser" label="创建人编码" min-width="100px"></el-table-column>
        <el-table-column prop="createTime" label="创建时间" min-width="100px"></el-table-column>
        <el-table-column prop="updateUser" label="更新人编码" min-width="100px"></el-table-column>
        <el-table-column prop="updateTime" label="更新时间" min-width="100px"></el-table-column>
        <el-table-column prop="remark" label="备注" min-width="100px"></el-table-column>
        <el-table-column prop="releaseMemberId" label="发单方" min-width="100px"></el-table-column>
        <el-table-column prop="type" label="类型:0=用工;1=运货;2=订餐" min-width="100px"></el-table-column>
        <el-table-column prop="startDate" label="开始时间 yyyy-MM-dd" min-width="100px"></el-table-column>
        <el-table-column prop="endDate" label="结束时间 yyyy-MM-dd" min-width="100px"></el-table-column>
        <el-table-column prop="location" label="地点信息/用车起点/用餐地点" min-width="100px"></el-table-column>
        <el-table-column prop="locationRemark" label="地点描述" min-width="100px"></el-table-column>
        <el-table-column prop="lat" label="经度" min-width="100px"></el-table-column>
        <el-table-column prop="province" label="省份" min-width="100px"></el-table-column>
        <el-table-column prop="city" label="城市" min-width="100px"></el-table-column>
        <el-table-column prop="area" label="区县" min-width="100px"></el-table-column>
        <el-table-column prop="lgt" label="纬度" min-width="100px"></el-table-column>
        <el-table-column prop="categoryId" label="需求类型(运货/用工):关联 category" min-width="100px"></el-table-column>
        <el-table-column prop="workType" label="用工类型:0=采摘工;1=分拣工;2=包装工;(用工订单)" min-width="100px"></el-table-column>
        <el-table-column prop="priceNum1" label="计价数量1(天数/用车次数)" min-width="100px"></el-table-column>
        <el-table-column prop="priceNum2" label="计价数量2(用工数量/采摘数量/用车数量/)" min-width="100px"></el-table-column>
        <el-table-column prop="supplement" label="需求补充" min-width="100px"></el-table-column>
        <el-table-column prop="price" label="费用标准" min-width="100px"></el-table-column>
        <el-table-column prop="estimatedAccount" label="预估费用" min-width="100px"></el-table-column>
        <el-table-column prop="payAccount" label="实际支付费用" min-width="100px"></el-table-column>
        <el-table-column prop="reviceAccount" label="实收费用" min-width="100px"></el-table-column>
        <el-table-column prop="priceRemark" label="费用说明" min-width="100px"></el-table-column>
        <el-table-column prop="carType" label="用车类型(运货使用):0=天;1=次" min-width="100px"></el-table-column>
        <el-table-column prop="transportTypeId" label="运输品种(运货使用) 关联category表" min-width="100px"></el-table-column>
        <el-table-column prop="transportNum" label="运输重量/数量" min-width="100px"></el-table-column>
        <el-table-column prop="transportUnit" label="运输单位(个/斤)" min-width="100px"></el-table-column>
        <el-table-column prop="locationEnd" label="用车终点地址" min-width="100px"></el-table-column>
        <el-table-column prop="latEnd" label="用车终点经度" min-width="100px"></el-table-column>
        <el-table-column prop="lgtEnd" label="用车终点纬度" min-width="100px"></el-table-column>
        <el-table-column prop="wayInfo" label="途经点/餐标信息" min-width="100px"></el-table-column>
        <el-table-column prop="code" label="订单编号" min-width="100px"></el-table-column>
        <el-table-column prop="status" label="订单状态:0=待接单;1=已接单;2=进行中;3=已完成;99=已取消;" min-width="100px"></el-table-column>
        <el-table-column prop="acceptTime" label="接单时间" min-width="100px"></el-table-column>
        <el-table-column prop="acceptMemberId" label="接单人" min-width="100px"></el-table-column>
        <el-table-column prop="acceptType" label="接单类型:0=手动接单;1=系统派单;" min-width="100px"></el-table-column>
        <el-table-column prop="workStartTime" label="开始作业时间" min-width="100px"></el-table-column>
        <el-table-column prop="finishTime" label="完成时间" min-width="100px"></el-table-column>
        <el-table-column prop="platformRata" label="平台提成比例" min-width="100px"></el-table-column>
        <el-table-column prop="wxExternalNo" label="微信平台交易订单号" min-width="100px"></el-table-column>
        <el-table-column prop="commentStatus" label="是否评价:0=否;1=是" min-width="100px"></el-table-column>
        <el-table-column prop="commentInfo" label="评价内容" min-width="100px"></el-table-column>
        <el-table-column prop="commentLevel" label="评价星级1-5" min-width="100px"></el-table-column>
        <el-table-column prop="commentTime" label="评价时间" min-width="100px"></el-table-column>
        <el-table-column prop="commentType" label="评价类型:0=手动评价;1=系统自动评价;" min-width="100px"></el-table-column>
        <el-table-column prop="cancelTime" label="取消时间" min-width="100px"></el-table-column>
        <el-table-column prop="isUpdate" label="是否已修改:0=否;1=是;" min-width="100px"></el-table-column>
        <el-table-column prop="blackRecive" label="接单方黑名单member:id 多个以,分割" min-width="100px"></el-table-column>
        <el-table-column prop="code" label="订单编号" width="180px" fixed="left">
          <template slot-scope="{row}">
            <span style="cursor: pointer;color: #2E68EC" @click="openDetail(row)">{{row.code}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="statusName" label="订单状态" min-width="100px"  >
          <template slot-scope="{row}">
          <span :class="'orderstate'+row.status">{{row.statusName}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="type" label="订单类型" min-width="100px">
          <template slot-scope="{row}">
            <span v-if="row.type==0">用工单</span>
            <span v-if="row.type==1">货运单</span>
            <span v-if="row.type==2">订餐单</span>
          </template>
        </el-table-column>
        <el-table-column prop="orderContent" label="订单内容"  width="200px" :show-overflow-tooltip='true'></el-table-column>
        <el-table-column prop="releaseName" label="发单方"  min-width="100px" :show-overflow-tooltip='true'>
          <template slot-scope="{row}">
           <span v-if="row.releaseName || row.releasePhone">{{(row.releaseName||'') +' - ' +(row.releasePhone||'')  }}</span>
          </template>
        </el-table-column>
        <el-table-column prop="acceptName" label="接单方" min-width="100px" :show-overflow-tooltip='true'>
          <template slot-scope="{row}">
            <span v-if="row.acceptName || row.acceptPhone">{{(row.acceptName||'') +' - ' +(row.acceptPhone ||'')  }}</span>
          </template>
        </el-table-column>
        <el-table-column prop="createTime" label="发布时间" min-width="150px"></el-table-column>
        <el-table-column prop="acceptTime" label="接单时间" min-width="150px"></el-table-column>
        <el-table-column prop="finishTime" label="完成时间" min-width="150px"></el-table-column>
        <el-table-column prop="estimatedAccount" label="预估金额(元)" min-width="150px">
          <template slot-scope="{row}">
            <span class="yellowstate">{{((row.estimatedAccount || 0)/100).toFixed(2)}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="payAccount" label="实付金额(元)" min-width="150px">
          <template slot-scope="{row}">
            <span class="yellowstate">{{((row.payAccount || 0)/100).toFixed(2)}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="acceptType" label="接单类型" min-width="100px">
          <template slot-scope="{row}">
            <span v-if="row.acceptType==0">手动接单</span>
            <span v-if="row.acceptType==1">系统派单</span>
          </template>
        </el-table-column>
        <el-table-column
          v-if="containPermissions(['business:orders:update', 'business:orders:delete'])"
          label="操作"
          min-width="120"
          align="center"
          min-width="150"
          fixed="right"
        >
          <template slot-scope="{row}">
            <el-button type="text" @click="$refs.operaOrdersWindow.open('编辑订单信息记录', row)" icon="el-icon-edit" v-permissions="['business:orders:update']">编辑</el-button>
            <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:orders:delete']">删除</el-button>
            <el-button type="text" class="redstate" @click="cancelDo(row)" v-if="row.status>-1 && row.status<4" icon="el-icon-delete" v-permissions="['business:orders:update']">取消</el-button>
            <el-button type="text" @click="openDetail( row)" icon="el-icon-info"  >详情</el-button>
          </template>
        </el-table-column>
      </el-table>
@@ -252,7 +138,7 @@
      </pagination>
    </template>
    <!-- 新建/修改 -->
    <OperaOrdersWindow ref="operaOrdersWindow" @success="handlePageChange"/>
    <OperaOrderDetailWindow ref="OperaOrderDetailWindow" @success="handlePageChange"/>
  </TableLayout>
</template>
@@ -260,68 +146,27 @@
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaOrdersWindow from '@/components/business/OperaOrdersWindow'
import OperaOrderDetailWindow from '@/components/business/OperaOrderDetailWindow'
import { cancel } from '@/api/business/orders'
export default {
  name: 'Orders',
  extends: BaseTable,
  components: { TableLayout, Pagination, OperaOrdersWindow },
  components: { TableLayout, Pagination, OperaOrderDetailWindow },
  data () {
    return {
      // 搜索
      searchForm: {
        id: '',
        deleted: '',
        createUser: '',
        createTime: '',
        updateUser: '',
        updateTime: '',
        remark: '',
        releaseMemberId: '',
        type: '',
        startDate: '',
        endDate: '',
        location: '',
        locationRemark: '',
        lat: '',
        province: '',
        city: '',
        area: '',
        lgt: '',
        categoryId: '',
        workType: '',
        priceNum1: '',
        priceNum2: '',
        supplement: '',
        price: '',
        estimatedAccount: '',
        payAccount: '',
        reviceAccount: '',
        priceRemark: '',
        carType: '',
        transportTypeId: '',
        transportNum: '',
        transportUnit: '',
        locationEnd: '',
        latEnd: '',
        lgtEnd: '',
        wayInfo: '',
        code: '',
        status: '',
        acceptTime: '',
        acceptMemberId: '',
        acceptType: '',
        workStartTime: '',
        finishTime: '',
        platformRata: '',
        wxExternalNo: '',
        commentStatus: '',
        commentInfo: '',
        commentLevel: '',
        commentTime: '',
        commentType: '',
        cancelTime: '',
        isUpdate: '',
        blackRecive: ''
        acceptName: null,
        releaseName: null,
        type: null,
        createTimeEnd: null,
        createTimeStart: null,
        acceptTimeStart: null,
        acceptTimeEnd: null,
        doneTimeStart: null,
        doneTimeEnd: null,
        status: null,
        code: null
      }
    }
  },
@@ -333,6 +178,44 @@
      'field.main': 'id'
    })
    this.search()
  },
  reset () {
    this.searchForm = {
      acceptName: null,
      releaseName: null,
      type: null,
      createTimeEnd: null,
      createTimeStart: null,
      acceptTimeStart: null,
      acceptTimeEnd: null,
      doneTimeStart: null,
      doneTimeEnd: null,
      status: null,
      code: null
    }
    this.search()
  },
  methods: {
    openDetail (row) {
      this.$refs.OperaOrderDetailWindow.open('订单详情', row )
    },
    cancelDo (row) {
      this.$dialog.actionConfirm('您确认【取消】该订单吗?', '操作确认')
        .then(() => {
          this.dealing = true
          cancel(row.id)
            .then(res => {
              this.$tip.apiSuccess('操作成功')
              this.search()
            })
            .catch(e => {
              this.$tip.apiFailed(e)
            })
            .finally(() => {
              this.dealing = false
            })
        })
    }
  }
}
</script>