Mr.Zhang
2023-10-18 0046d701fb2878895359b0ffe7a5354c4ccab7e4
admin/src/views/business/goodsorder.vue
@@ -2,8 +2,8 @@
  <TableLayout :permissions="['business:goodsorder:query']">
    <!-- 搜索表单 -->
    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
      <el-form-item label="用户" prop="memberId">
        <el-input v-model="searchForm.memberId" placeholder="请输入" @keypress.enter.native="search"></el-input>
      <el-form-item label="用户" prop="openid">
        <el-input v-model="searchForm.openid" 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>
@@ -15,7 +15,7 @@
        <el-select v-model="searchForm.status" placeholder="请选择">
          <el-option
            label="未结算"
            :value="1">
            :value="0">
          </el-option>
          <el-option
            label="已结算"
@@ -27,15 +27,12 @@
        <el-date-picker
          v-model="value1"
          type="daterange"
          @change="selectDate"
          range-separator="至"
          start-placeholder="开始日期"
          end-placeholder="结束日期">
        </el-date-picker>
      </el-form-item>
      <!-- <el-form-item label="结算类型 0自动结算 1平台人工结算 2系统自动结算" prop="closeType">
        <el-input v-model="searchForm.closeType" placeholder="请输入结算类型 0自动结算 1平台人工结算 2系统自动结算" @keypress.enter.native="search"></el-input>
      </el-form-item> -->
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
        <el-button @click="reset">重置</el-button>
@@ -52,12 +49,13 @@
        stripe
        border
      >
        <el-table-column prop="code" label="订单编号" min-width="130px" align="center"></el-table-column>
        <el-table-column prop="onlineOrderid" label="交易单号" min-width="180px" align="center"></el-table-column>
        <el-table-column prop="money" label="押金(元)" min-width="100px" align="center"></el-table-column>
        <el-table-column prop="openid" label="用户" min-width="225px" align="center"></el-table-column>
        <el-table-column prop="id" label="订单编号" min-width="225px" align="center"></el-table-column>
        <el-table-column prop="onlineOrderid" label="交易单号" min-width="225px" align="center"></el-table-column>
        <el-table-column prop="money" label="押金(元)" min-width="80px" align="center"></el-table-column>
        <el-table-column prop="payDate" label="交押金时间" min-width="140px" align="center"></el-table-column>
        <el-table-column prop="closeMoney" label="退押金(元)" min-width="100px" align="center"></el-table-column>
        <el-table-column prop="closeMoney" label="结算金额(元)" min-width="100px" align="center"></el-table-column>
        <el-table-column prop="refundMoney" label="退押金(元)" min-width="80px" align="center"></el-table-column>
        <el-table-column prop="closeMoney" label="结算金额(元)" min-width="90px" align="center"></el-table-column>
        <el-table-column prop="closeDate" label="退款结算时间" min-width="140px" align="center"></el-table-column>
@@ -85,9 +83,9 @@
          fixed="right"
        >
          <template slot-scope="{row}">
            <el-button type="text" @click="deleteById(row)">订单详情</el-button>
            <el-button type="text" @click="deleteById(row)">退款</el-button>
            <el-button type="text" @click="deleteById(row)" style="color: red">结算</el-button>
            <el-button type="text" @click="showDetail(row)">订单详情</el-button>
            <el-button type="text" @click="statement(row)" v-if="row.status != 4" style="color: red">结算</el-button>
            <el-button type="text" @click="refenMoney(row)" v-else>退款</el-button>
          </template>
        </el-table-column>
      </el-table>
@@ -98,6 +96,8 @@
      >
      </pagination>
    </template>
    <GoodsOrderDetail ref="goodsOrderDetail" />
    <BackGoodsorderWindow ref="backGoodsorderWindow" @success="handlePageChange" />
  </TableLayout>
</template>
@@ -105,10 +105,13 @@
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import GoodsOrderDetail from '@/components/business/goodsOrderDetail'
import BackGoodsorderWindow from '@/components/business/backGoodsorderWindow'
import { getDetail, getGoodsorderCanBanlanceDTO, closerGoodsorder } from '@/api/business/goodsorder'
export default {
  name: 'Goodsorder',
  extends: BaseTable,
  components: { TableLayout, Pagination },
  components: { TableLayout, Pagination, GoodsOrderDetail, BackGoodsorderWindow },
  data () {
    return {
      // 搜索
@@ -121,7 +124,7 @@
        isdeleted: '',
        info: '',
        code: '',
        memberId: '',
        openid: '',
        money: '',
        status: '',
        preOrderid: '',
@@ -131,11 +134,9 @@
        payDate: '',
        type: '',
        closeMoney: '',
        closeId: '',
        closeDate: '',
        closeInfo: '',
        closeUserId: '',
        closeType: ''
        startDate: '',
        endDate: '',
      },
      value1: []
    }
@@ -154,6 +155,48 @@
      this.value1 = []
      this.$refs.searchForm.resetFields()
      this.search()
    },
    selectDate(v) {
      this.searchForm.startDate = ''
      this.searchForm.endDate = ''
      if (v) {
        this.searchForm.startDate = v[0]
        this.searchForm.endDate = v[1]
      }
      this.search()
    },
    showDetail({id}) {
      getDetail(id)
        .then(res => {
          this.$refs.goodsOrderDetail.open('订单详情',res)
        })
        .catch(err => {
          this.$tip.apiFailed(err)
        })
    },
    statement({id}) {
      this.$dialog.messageWaring('当前订单可能有未完成的骑行,确定强制结算?', '强制结算')
        .then(() => {
          closerGoodsorder(id)
            .then(() => {
              this.$tip.apiSuccess('结算成功')
            })
            .catch(err => {
              this.$tip.apiFailed(err)
            })
        })
        .catch(() => {})
    },
    refenMoney({id}) {
      getGoodsorderCanBanlanceDTO({orderId:id})
        .then(res => {
          this.$refs.backGoodsorderWindow.open('强制退款', {orderId:id, ...res})
        })
        .catch(err => {
          this.$tip.apiFailed(err)
        })
    }
  }
}