|
|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
+ <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px">
|
|
|
<el-form-item label="公司名" prop="companyId">
|
|
|
<el-select filterable v-model="queryParams.companyId" placeholder="请选择公司名" @change="companyChange" clearable size="small">
|
|
|
<el-option
|
|
|
@@ -15,122 +15,98 @@
|
|
|
<el-form-item>
|
|
|
<treeselect style="width: 220px" :clearable="false" v-model="queryParams.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="订单号" prop="orderCode">
|
|
|
+
|
|
|
+ <el-form-item label="商品名称" prop="productName">
|
|
|
<el-input
|
|
|
- v-model="queryParams.orderCode"
|
|
|
- placeholder="请输入订单号"
|
|
|
+ v-model="queryParams.productName"
|
|
|
+ placeholder="请输入商品名称"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="用户ID" prop="userId">
|
|
|
+
|
|
|
+ <el-form-item label="商品规格" prop="productSpec">
|
|
|
<el-input
|
|
|
- v-model="queryParams.userId"
|
|
|
- placeholder="请输入用户ID"
|
|
|
+ v-model="queryParams.productSpec"
|
|
|
+ placeholder="请输入商品规格"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="收货人" prop="userName">
|
|
|
+
|
|
|
+ <el-form-item label="商品数量" prop="totalNum">
|
|
|
<el-input
|
|
|
- v-model="queryParams.userName"
|
|
|
- placeholder="请输入收货人"
|
|
|
+ v-model="queryParams.totalNum"
|
|
|
+ placeholder="请输入商品数量"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="手机号" prop="userPhone">
|
|
|
+
|
|
|
+ <el-form-item label="销售价格" prop="price">
|
|
|
<el-input
|
|
|
- v-model="queryParams.userPhone"
|
|
|
- placeholder="请输入手机号"
|
|
|
+ v-model="queryParams.price"
|
|
|
+ placeholder="请输入销售价格"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="地址" prop="userAddress">
|
|
|
+
|
|
|
+ <el-form-item label="收货地址" prop="userAddress">
|
|
|
<el-input
|
|
|
v-model="queryParams.userAddress"
|
|
|
- placeholder="请输入地址"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="支付金额" prop="payMoney">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.payMoney"
|
|
|
- placeholder="请输入支付金额"
|
|
|
+ placeholder="请输入收货地址"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="订单金额" prop="totalPrice">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.totalPrice"
|
|
|
- placeholder="请输入订单金额"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="物流编号" prop="deliveryCode">
|
|
|
+
|
|
|
+ <el-form-item label="商品ID" prop="productId">
|
|
|
<el-input
|
|
|
- v-model="queryParams.deliveryCode"
|
|
|
- placeholder="请输入物流编号"
|
|
|
+ v-model="queryParams.productId"
|
|
|
+ placeholder="请输入商品ID"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="物流名称" prop="deliveryName">
|
|
|
+
|
|
|
+ <el-form-item label="成本价格" prop="cost">
|
|
|
<el-input
|
|
|
- v-model="queryParams.deliveryName"
|
|
|
- placeholder="请输入物流名称"
|
|
|
+ v-model="queryParams.cost"
|
|
|
+ placeholder="请输入成本价格"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="物流单号" prop="deliverySn">
|
|
|
+
|
|
|
+ <el-form-item label="供应商" prop="supplierName">
|
|
|
<el-input
|
|
|
- v-model="queryParams.deliverySn"
|
|
|
- placeholder="请输入物流单号"
|
|
|
+ v-model="queryParams.supplierName"
|
|
|
+ placeholder="请输入供应商名称"
|
|
|
clearable
|
|
|
size="small"
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <!-- 修改支付时间为范围选择 -->
|
|
|
- <el-form-item label="支付时间" prop="payTimeRange">
|
|
|
+ <!-- 下单时间范围选择 -->
|
|
|
+ <el-form-item label="下单时间" prop="orderTimeRange">
|
|
|
<el-date-picker
|
|
|
- v-model="payTimeRange"
|
|
|
+ v-model="orderTimeRange"
|
|
|
type="daterange"
|
|
|
range-separator="至"
|
|
|
start-placeholder="开始日期"
|
|
|
end-placeholder="结束日期"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
size="small"
|
|
|
- @change="handlePayTimeChange"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
-
|
|
|
- <!-- 修改完成时间为范围选择 -->
|
|
|
- <el-form-item label="完成时间" prop="finishTimeRange">
|
|
|
- <el-date-picker
|
|
|
- v-model="finishTimeRange"
|
|
|
- type="daterange"
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- size="small"
|
|
|
- @change="handleFinishTimeChange"
|
|
|
+ @change="handleOrderTimeChange"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
|
|
|
@@ -162,40 +138,59 @@
|
|
|
|
|
|
<el-table border v-loading="loading" :data="liveOrderList" @selection-change="handleSelectionChange">
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
- <el-table-column label="订单号" align="center" prop="orderCode" />
|
|
|
- <el-table-column label="所属公司" align="center" prop="companyName" />
|
|
|
- <el-table-column label="所属员工" align="center" prop="companyUserName" />
|
|
|
- <el-table-column label="用户ID" align="center" prop="userId" />
|
|
|
- <el-table-column label="收货人" align="center" prop="userName" />
|
|
|
- <el-table-column label="手机号" align="center" prop="userPhone" />
|
|
|
- <el-table-column label="地址" align="center" prop="userAddress" />
|
|
|
- <el-table-column label="支付金额" align="center" prop="payMoney" />
|
|
|
- <el-table-column label="订单金额" align="center" prop="totalPrice" />
|
|
|
- <el-table-column label="物流编号" align="center" prop="deliveryCode" />
|
|
|
- <el-table-column label="物流名称" align="center" prop="deliveryName" />
|
|
|
- <el-table-column label="物流单号" align="center" prop="deliverySn" />
|
|
|
- <el-table-column label="物流状态" align="center" prop="deliveryStatus">
|
|
|
- <template slot-scope="item">
|
|
|
- <dict-tag :options="deliveryStatusOptions" :value="item.row.deliveryStatus"/>
|
|
|
+ <el-table-column label="销售ID" align="center" prop="companyUserId" >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span v-if="scope.row.companyUserId > 0" >{{ scope.row.companyUserId }}</span>
|
|
|
+ <span v-else>-</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="绑定销售昵称" align="center" prop="companyUserName" />
|
|
|
+ <el-table-column label="客户编码" align="center" prop="userId" />
|
|
|
+ <el-table-column label="会员等级" align="center" prop="userLevel">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="销售绑定手机号" align="center" prop="companyUserPhone" />
|
|
|
+ <el-table-column label="销售创建时间" align="center" prop="companyUserCreateTime" width="180">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ scope.row.companyUserCreateTime }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="客户ID" align="center" prop="userId" />
|
|
|
+ <el-table-column label="客户昵称" align="center" prop="nickName" />
|
|
|
+ <el-table-column label="客户绑定手机号" align="center" prop="userBindPhone" />
|
|
|
+ <el-table-column label="收货手机号" align="center" prop="userPhone" />
|
|
|
+ <el-table-column label="累计成交笔数" align="center" prop="totalOrderCount" />
|
|
|
+ <el-table-column label="累计成交总额" align="center" prop="totalOrderAmount" />
|
|
|
+ <el-table-column label="最新绑定时间" align="center" prop="latestBindTime" width="180">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ scope.row.latestBindTime }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="物流跟踪状态" align="center" prop="deliveryType">
|
|
|
- <template slot-scope="item">
|
|
|
- <dict-tag :options="deliveryTypeOptions" :value="item.row.deliveryType"/>
|
|
|
+ <el-table-column label="客户状态" align="center" prop="customerStatus">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <dict-tag :options="customerStatusOptions" :value="scope.row.customerStatus"/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="支付时间" align="center" prop="payTime" width="180">
|
|
|
+ <el-table-column label="所属店铺" align="center" prop="storeId" />
|
|
|
+ <el-table-column label="所属店铺名称" align="center" prop="storeName" />
|
|
|
+ <el-table-column label="商品ID" align="center" prop="productId" />
|
|
|
+ <el-table-column label="商品名称" align="center" prop="productName" width="150" />
|
|
|
+ <el-table-column label="商品规格" align="center" prop="productSpec" width="120" />
|
|
|
+ <el-table-column label="商品数量" align="center" prop="totalNum" />
|
|
|
+ <el-table-column label="销售价格" align="center" prop="totalPrice" />
|
|
|
+ <el-table-column label="成本价格" align="center" prop="costPrice" />
|
|
|
+ <el-table-column label="收货地址" align="center" prop="userAddress" width="200" />
|
|
|
+ <el-table-column label="对应供应商" align="center" prop="supplierName" width="120" />
|
|
|
+ <el-table-column label="下单时间" align="center" prop="createTime" width="180">
|
|
|
<template slot-scope="scope">
|
|
|
- <span>{{ scope.row.payTime }}</span>
|
|
|
+ <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="状态" align="center" prop="status" >
|
|
|
- <template slot-scope="item">
|
|
|
- <dict-tag :options="orderStatusOptions" :value="item.row.status"/>
|
|
|
+ <el-table-column label="订单状态" align="center" prop="status">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <dict-tag :options="orderStatusOptions" :value="scope.row.status"/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="备注" align="center" prop="remark" />
|
|
|
- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
|
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
|
size="mini"
|
|
|
@@ -226,7 +221,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { listLiveOrder, exportLiveOrder } from "@/api/live/liveOrder";
|
|
|
+import { listLiveOrderZm, exportLiveOrderZm } from "@/api/live/liveOrder";
|
|
|
import liveOrderDetails from './liveOrderDetails.vue';
|
|
|
import {getCompanyList} from "@/api/company/company";
|
|
|
import Treeselect from "@riophae/vue-treeselect";
|
|
|
@@ -241,6 +236,8 @@ export default {
|
|
|
return {
|
|
|
// 字典
|
|
|
orderStatusOptions: [],
|
|
|
+ memberLevelOptions: [],
|
|
|
+ customerStatusOptions: [],
|
|
|
// 遮罩层
|
|
|
loading: true,
|
|
|
// 导出遮罩层
|
|
|
@@ -257,34 +254,32 @@ export default {
|
|
|
total: 0,
|
|
|
// 订单表格数据
|
|
|
liveOrderList: [],
|
|
|
- deliveryStatusOptions: [],
|
|
|
- deliveryTypeOptions: [],
|
|
|
+ // 公司列表
|
|
|
+ companys: [],
|
|
|
+ companyId: null,
|
|
|
+ // 部门树选项
|
|
|
+ deptOptions: [],
|
|
|
|
|
|
- // 支付时间范围选择器绑定的值
|
|
|
- payTimeRange: [],
|
|
|
- // 完成时间范围选择器绑定的值
|
|
|
- finishTimeRange: [],
|
|
|
+ // 下单时间范围选择器绑定的值
|
|
|
+ orderTimeRange: [],
|
|
|
|
|
|
// 查询参数
|
|
|
queryParams: {
|
|
|
pageNum: 1,
|
|
|
liveId: null,
|
|
|
pageSize: 10,
|
|
|
- orderSn: null,
|
|
|
- userId: null,
|
|
|
- userName: null,
|
|
|
- mobile: null,
|
|
|
- address: null,
|
|
|
- payMoney: null,
|
|
|
- orderMoney: null,
|
|
|
- deliveryCode: null,
|
|
|
- deliveryName: null,
|
|
|
- deliverySn: null,
|
|
|
- // 移除单个时间字段,改为范围字段
|
|
|
- payStartTime: null,
|
|
|
- payEndTime: null,
|
|
|
- finishTimeStart: null,
|
|
|
- finishTimeEnd: null,
|
|
|
+ companyId: null,
|
|
|
+ deptId: null,
|
|
|
+ productName: null,
|
|
|
+ productSpec: null,
|
|
|
+ productNum: null,
|
|
|
+ salePrice: null,
|
|
|
+ userAddress: null,
|
|
|
+ productId: null,
|
|
|
+ costPrice: null,
|
|
|
+ supplierName: null,
|
|
|
+ orderStartTime: null,
|
|
|
+ orderEndTime: null,
|
|
|
status: null,
|
|
|
},
|
|
|
orderOptions: [],
|
|
|
@@ -311,35 +306,24 @@ export default {
|
|
|
this.getDicts("sys_order_status").then(response => {
|
|
|
this.orderOptions = response.data;
|
|
|
});
|
|
|
- this.getDicts("store_order_delivery_status").then(response => {
|
|
|
- this.deliveryStatusOptions = response.data;
|
|
|
+ this.getDicts("sys_user_level").then(response => {
|
|
|
+ this.memberLevelOptions = response.data;
|
|
|
});
|
|
|
- this.getDicts("logistics_status").then(response => {
|
|
|
- this.deliveryTypeOptions = response.data;
|
|
|
+ this.getDicts("sys_customer_status").then(response => {
|
|
|
+ this.customerStatusOptions = response.data;
|
|
|
});
|
|
|
},
|
|
|
methods: {
|
|
|
parseTime,
|
|
|
|
|
|
- // 支付时间范围选择变化处理
|
|
|
- handlePayTimeChange(value) {
|
|
|
- if (value && value.length === 2) {
|
|
|
- this.queryParams.payStartTime = value[0] + ' 00:00:00';
|
|
|
- this.queryParams.payEndTime = value[1] + ' 23:59:59';
|
|
|
- } else {
|
|
|
- this.queryParams.payStartTime = null;
|
|
|
- this.queryParams.payEndTime = null;
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
- // 完成时间范围选择变化处理
|
|
|
- handleFinishTimeChange(value) {
|
|
|
+ // 下单时间范围选择变化处理
|
|
|
+ handleOrderTimeChange(value) {
|
|
|
if (value && value.length === 2) {
|
|
|
- this.queryParams.finishTimeStart = value[0] + ' 00:00:00';
|
|
|
- this.queryParams.finishTimeEnd = value[1] + ' 23:59:59';
|
|
|
+ this.queryParams.createTimeStart = value[0] + ' 00:00:00';
|
|
|
+ this.queryParams.createTimeEnd = value[1] + ' 23:59:59';
|
|
|
} else {
|
|
|
- this.queryParams.finishTimeStart = null;
|
|
|
- this.queryParams.finishTimeEnd = null;
|
|
|
+ this.queryParams.createTimeStart = null;
|
|
|
+ this.queryParams.createTimeEnd = null;
|
|
|
}
|
|
|
},
|
|
|
|
|
|
@@ -365,7 +349,7 @@ export default {
|
|
|
/** 查询订单列表 */
|
|
|
getList() {
|
|
|
this.loading = true;
|
|
|
- listLiveOrder(this.queryParams).then(response => {
|
|
|
+ listLiveOrderZm(this.queryParams).then(response => {
|
|
|
this.liveOrderList = response.rows;
|
|
|
this.total = response.total;
|
|
|
this.loading = false;
|
|
|
@@ -386,13 +370,10 @@ export default {
|
|
|
resetQuery() {
|
|
|
this.resetForm("queryForm");
|
|
|
// 同时清空范围选择器的值
|
|
|
- this.payTimeRange = [];
|
|
|
- this.finishTimeRange = [];
|
|
|
+ this.orderTimeRange = [];
|
|
|
// 清空时间范围参数
|
|
|
- this.queryParams.payStartTime = null;
|
|
|
- this.queryParams.payEndTime = null;
|
|
|
- this.queryParams.finishTimeStart = null;
|
|
|
- this.queryParams.finishTimeEnd = null;
|
|
|
+ this.queryParams.orderStartTime = null;
|
|
|
+ this.queryParams.orderEndTime = null;
|
|
|
this.handleQuery();
|
|
|
},
|
|
|
|
|
|
@@ -412,7 +393,7 @@ export default {
|
|
|
type: "warning"
|
|
|
}).then(() => {
|
|
|
this.exportLoading = true;
|
|
|
- return exportLiveOrder(queryParams);
|
|
|
+ return exportLiveOrderZm(queryParams);
|
|
|
}).then(response => {
|
|
|
this.download(response.msg);
|
|
|
this.exportLoading = false;
|