|
@@ -9,19 +9,23 @@
|
|
|
v-model="search.beginDate" placeholder="起始日期"></el-date-picker>
|
|
|
<el-date-picker style="margin-right: 20px;width: 250px" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
|
|
|
v-model="search.endDate" placeholder="截止日期"></el-date-picker>
|
|
|
- <el-button type="primary" @click="getData">搜索</el-button>
|
|
|
- <el-button type="success" @click="exExcel">生成Excel</el-button>
|
|
|
+ <el-button type="primary" @click="getData">检索</el-button>
|
|
|
+ <buttonExportExcel ref="exportExcelRef" @click="exportExcel">生成Excel</buttonExportExcel>
|
|
|
</div>
|
|
|
<el-table :data="tableData" border style="margin-top: 20px">
|
|
|
- <el-table-column label="门店"></el-table-column>
|
|
|
- <el-table-column label="客户"></el-table-column>
|
|
|
- <el-table-column label="交易类型"></el-table-column>
|
|
|
- <el-table-column label="交易日期"></el-table-column>
|
|
|
- <el-table-column label="成交金额"></el-table-column>
|
|
|
- <el-table-column label="会员状态"></el-table-column>
|
|
|
- <el-table-column label="联系电话"></el-table-column>
|
|
|
+ <el-table-column prop="storeName" label="门店"></el-table-column>
|
|
|
+ <el-table-column prop="memberName" label="会员" min-width="150px"></el-table-column>
|
|
|
+ <el-table-column prop="mobileNumber" label="联系电话" min-width="150px"></el-table-column>
|
|
|
+ <el-table-column prop="goodsName" label="货品"></el-table-column>
|
|
|
+ <el-table-column prop="goodsPrice" label="定价"></el-table-column>
|
|
|
+ <el-table-column prop="discountAmount" label="折扣"></el-table-column>
|
|
|
+ <el-table-column prop="orderAmount" label="订单价"></el-table-column>
|
|
|
+ <el-table-column prop="memberCouponName" label="优惠券"></el-table-column>
|
|
|
+ <el-table-column prop="actualAmount" label="实付金额"></el-table-column>
|
|
|
+ <el-table-column prop="saleCount" label="数量"></el-table-column>
|
|
|
+ <el-table-column prop="createTime" label="订单创建时间" min-width="150px"></el-table-column>
|
|
|
</el-table>
|
|
|
- <el-pagination style="background: #ffffff;padding: 20px 0px"
|
|
|
+ <el-pagination style="background: #ffffff;padding: 20px 0"
|
|
|
v-model:current-page="page.pageNumber"
|
|
|
v-model:page-size="page.pageSize"
|
|
|
:page-sizes="page.pageSizes"
|
|
@@ -39,15 +43,17 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { ref, reactive, onMounted, provide } from "vue";
|
|
|
+import { ref, reactive, onMounted } from "vue";
|
|
|
import { order, orderExport, store } from "/@/api/controllerUrls";
|
|
|
-import { exportExcel } from "/@/utils/excel.js";
|
|
|
import request from "/@/api/request";
|
|
|
+import buttonExportExcel from "/@/components/common/buttonExportExcel.vue";
|
|
|
|
|
|
let tableData = ref([]);
|
|
|
|
|
|
let storeList = ref([]);
|
|
|
|
|
|
+let exportExcelRef = ref();
|
|
|
+
|
|
|
let search = reactive({
|
|
|
storeId: "",
|
|
|
beginDate: "",
|
|
@@ -74,7 +80,7 @@ function getData() {
|
|
|
endDate: search.endDate,
|
|
|
storeId: search.storeId
|
|
|
}).then((res) => {
|
|
|
- if (res.code == 1) {
|
|
|
+ if (res.code === 1) {
|
|
|
tableData.value = res.data.list;
|
|
|
page.total = +res.data.total;
|
|
|
}
|
|
@@ -83,24 +89,39 @@ function getData() {
|
|
|
|
|
|
function getInitData() {
|
|
|
request.index(store, {}, "list").then((res) => {
|
|
|
- if (res.code == 1) {
|
|
|
+ if (res.code === 1) {
|
|
|
storeList.value = res.data;
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-async function exExcel() {
|
|
|
- const titleArr = ["姓名", "年龄"];//表头中文名
|
|
|
- const res = await request.index(orderExport, {
|
|
|
- limit: page.pageSize,
|
|
|
- page: page.pageNumber,
|
|
|
+
|
|
|
+async function exportExcel() {
|
|
|
+ const columns = [
|
|
|
+ { name: "storeName", label: "门店" },
|
|
|
+ { name: "goodsName", label: "货品" },
|
|
|
+ { name: "goodsPrice", label: "定价" },
|
|
|
+ { name: "discountAmount", label: "折扣" },
|
|
|
+ { name: "orderAmount", label: "订单价" },
|
|
|
+ { name: "memberCouponName", label: "优惠券" },
|
|
|
+ { name: "actualAmount", label: "实付金额" },
|
|
|
+ { name: "saleCount", label: "数量" },
|
|
|
+ { name: "memberName", label: "会员" },
|
|
|
+ { name: "mobileNumber", label: "联系电话" },
|
|
|
+ { name: "createTime", label: "订单创建时间" }
|
|
|
+ ];//表头中文名
|
|
|
+ const res = await request.edit(orderExport, {
|
|
|
beginDate: search.beginDate,
|
|
|
endDate: search.endDate,
|
|
|
storeId: search.storeId
|
|
|
}, "");
|
|
|
- if (res.code == 1) {
|
|
|
+ if (res.code === 1) {
|
|
|
let data = res.data;
|
|
|
- exportExcel(data, "订单列表", titleArr, "sheet1");
|
|
|
+ data.forEach(item => {
|
|
|
+ item["memberCouponName"] = item.memberCouponName ? item.memberCouponName : "";
|
|
|
+ // item["storeName"] = item.storeName ? item.storeName : "";
|
|
|
+ });
|
|
|
+ exportExcelRef.value.open(data, columns);
|
|
|
}
|
|
|
|
|
|
|