From f9691d544e62d6c04dbfe45d05a6c7bc5e004291 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 29 十二月 2023 11:52:29 +0800
Subject: [PATCH] 服务商

---
 admin/src/views/business/goodsorder.vue |  115 +++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 86 insertions(+), 29 deletions(-)

diff --git a/admin/src/views/business/goodsorder.vue b/admin/src/views/business/goodsorder.vue
index 2107caa..a721331 100644
--- a/admin/src/views/business/goodsorder.vue
+++ b/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>
@@ -11,11 +11,11 @@
       <el-form-item label="浜ゆ槗鍗曞彿" prop="onlineOrderid">
         <el-input v-model="searchForm.onlineOrderid" placeholder="璇疯緭鍏ヤ氦鏄撳崟鍙�" @keypress.enter.native="search"></el-input>
       </el-form-item>
-      <el-form-item label="鏄惁缁撶畻" prop="status">
-        <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨">
+      <el-form-item label="鏄惁缁撶畻" prop="closeStatus">
+        <el-select v-model="searchForm.closeStatus" placeholder="璇烽�夋嫨">
           <el-option
             label="鏈粨绠�"
-            :value="1">
+            :value="0">
           </el-option>
           <el-option
             label="宸茬粨绠�"
@@ -27,15 +27,14 @@
         <el-date-picker
           v-model="value1"
           type="daterange"
+          @change="selectDate"
           range-separator="鑷�"
           start-placeholder="寮�濮嬫棩鏈�"
-          end-placeholder="缁撴潫鏃ユ湡">
-        </el-date-picker>
+          end-placeholder="缁撴潫鏃ユ湡"
+          format="yyyy-MM-dd"
+          value-format="yyyy-MM-dd HH:mm:ss"
+        ></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,13 +51,20 @@
         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="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="closeDate" label="閫�娆剧粨绠楁椂闂�" min-width="140px" 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="235px" 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="145px" align="center"></el-table-column>
+        <el-table-column prop="refundMoney" label="閫�鎶奸噾(鍏冿級" min-width="90px" align="center"></el-table-column>
+        <el-table-column prop="closeMoney" label="缁撶畻閲戦(鍏冿級" min-width="100px" align="center">
+          <template slot-scope="{row}">
+            <span v-if="row.closeMoney > row.money">{{row.money}}</span>
+            <span v-else>{{row.closeMoney}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="closeDate" label="缁撶畻鏃堕棿" min-width="140px" align="center"></el-table-column>
+        <el-table-column prop="refundDate" label="閫�娆炬椂闂�" min-width="140px" align="center"></el-table-column>
 
 
         <!-- <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
@@ -85,9 +91,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 && (row.memberRidesStatus > 1 || !row.memberRidesStatus)" style="color: red">缁撶畻</el-button>
+            <el-button type="text" @click="refenMoney(row)"  v-if="row.status == 4 && (row.refundMoney < row.money)">閫�娆�</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -98,6 +104,8 @@
       >
       </pagination>
     </template>
+    <GoodsOrderDetail ref="goodsOrderDetail" />
+    <BackGoodsorderWindow ref="backGoodsorderWindow" @success="handlePageChange" />
   </TableLayout>
 </template>
 
@@ -105,10 +113,14 @@
 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'
+import { formatDateTime } from '@/utils/util'
 export default {
   name: 'Goodsorder',
   extends: BaseTable,
-  components: { TableLayout, Pagination },
+  components: { TableLayout, Pagination, GoodsOrderDetail, BackGoodsorderWindow },
   data () {
     return {
       // 鎼滅储
@@ -121,9 +133,10 @@
         isdeleted: '',
         info: '',
         code: '',
-        memberId: '',
+        openid: '',
         money: '',
         status: '',
+        closeStatus: '',
         preOrderid: '',
         onlineOrderid: '',
         payStatus: '',
@@ -131,13 +144,11 @@
         payDate: '',
         type: '',
         closeMoney: '',
-        closeId: '',
-        closeDate: '',
-        closeInfo: '',
-        closeUserId: '',
-        closeType: ''
+        startDate: '',
+        endDate: '',
+
       },
-      value1: []
+      value1: [new Date(), new Date()]
     }
   },
   created () {
@@ -147,13 +158,59 @@
       'field.id': 'id',
       'field.main': 'id'
     })
+    this.searchForm.startDate = formatDateTime(new Date(), 'yyyy-MM-dd') + ' 00:00:00'
     this.search()
   },
   methods: {
     reset() {
       this.value1 = []
+      this.searchForm.startDate = ''
+      this.searchForm.endDate = ''
       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('缁撶畻鎴愬姛')
+              this.search()
+            })
+            .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)
+        })
     }
   }
 }

--
Gitblit v1.9.3