Skip to content

Commit 5e0bd4c

Browse files
committed
perf[litemall-admin,litemall-admin-api]: 订单页面可以查询订单时间
1 parent 02a704c commit 5e0bd4c

File tree

4 files changed

+49
-8
lines changed

4 files changed

+49
-8
lines changed

litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/service/AdminOrderService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ public class AdminOrderService {
5151
@Autowired
5252
private LogHelper logHelper;
5353

54-
public Object list(Integer userId, String orderSn, List<Short> orderStatusArray,
54+
public Object list(Integer userId, String orderSn, LocalDateTime start, LocalDateTime end, List<Short> orderStatusArray,
5555
Integer page, Integer limit, String sort, String order) {
56-
List<LitemallOrder> orderList = orderService.querySelective(userId, orderSn, orderStatusArray, page, limit,
56+
List<LitemallOrder> orderList = orderService.querySelective(userId, orderSn, start, end, orderStatusArray, page, limit,
5757
sort, order);
5858
return ResponseUtil.okList(orderList);
5959
}

litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/web/AdminOrderController.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@
1111
import org.linlinjava.litemall.core.validator.Order;
1212
import org.linlinjava.litemall.core.validator.Sort;
1313
import org.springframework.beans.factory.annotation.Autowired;
14+
import org.springframework.format.annotation.DateTimeFormat;
1415
import org.springframework.validation.annotation.Validated;
1516
import org.springframework.web.bind.annotation.*;
1617

1718
import javax.validation.constraints.NotNull;
19+
import java.time.LocalDateTime;
1820
import java.util.List;
1921

2022
@RestController
@@ -44,12 +46,14 @@ public class AdminOrderController {
4446
@RequiresPermissionsDesc(menu = {"商场管理", "订单管理"}, button = "查询")
4547
@GetMapping("/list")
4648
public Object list(Integer userId, String orderSn,
49+
@RequestParam(required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime start,
50+
@RequestParam(required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime end,
4751
@RequestParam(required = false) List<Short> orderStatusArray,
4852
@RequestParam(defaultValue = "1") Integer page,
4953
@RequestParam(defaultValue = "10") Integer limit,
5054
@Sort @RequestParam(defaultValue = "add_time") String sort,
5155
@Order @RequestParam(defaultValue = "desc") String order) {
52-
return adminOrderService.list(userId, orderSn, orderStatusArray, page, limit, sort, order);
56+
return adminOrderService.list(userId, orderSn, start, end, orderStatusArray, page, limit, sort, order);
5357
}
5458

5559
/**

litemall-admin/src/views/mall/order.vue

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@
33

44
<!-- 查询和其他操作 -->
55
<div class="filter-container">
6-
<el-input v-model="listQuery.userId" clearable class="filter-item" style="width: 200px;" placeholder="请输入用户ID" />
7-
<el-input v-model="listQuery.orderSn" clearable class="filter-item" style="width: 200px;" placeholder="请输入订单编号" />
6+
<el-input v-model="listQuery.userId" clearable class="filter-item" style="width: 160px;" placeholder="请输入用户ID" />
7+
<el-input v-model="listQuery.orderSn" clearable class="filter-item" style="width: 160px;" placeholder="请输入订单编号" />
8+
<el-date-picker v-model="listQuery.timeArray" type="datetimerange" class="filter-item" range-separator="" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" />
89
<el-select v-model="listQuery.orderStatusArray" multiple style="width: 200px" class="filter-item" placeholder="请选择订单状态">
910
<el-option v-for="(key, value) in statusMap" :key="key" :label="key" :value="value" />
1011
</el-select>
@@ -159,11 +160,9 @@ const statusMap = {
159160
101: '未付款',
160161
102: '用户取消',
161162
103: '系统取消',
162-
200: '已付款团购',
163163
201: '已付款',
164164
202: '申请退款',
165165
203: '已退款',
166-
204: '已超时团购',
167166
301: '已发货',
168167
401: '用户收货',
169168
402: '系统收货'
@@ -187,10 +186,38 @@ export default {
187186
limit: 20,
188187
id: undefined,
189188
name: undefined,
189+
timeArray: [],
190190
orderStatusArray: [],
191191
sort: 'add_time',
192192
order: 'desc'
193193
},
194+
pickerOptions: {
195+
shortcuts: [{
196+
text: '最近一周',
197+
onClick(picker) {
198+
const end = new Date()
199+
const start = new Date()
200+
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
201+
picker.$emit('pick', [start, end])
202+
}
203+
}, {
204+
text: '最近一个月',
205+
onClick(picker) {
206+
const end = new Date()
207+
const start = new Date()
208+
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
209+
picker.$emit('pick', [start, end])
210+
}
211+
}, {
212+
text: '最近三个月',
213+
onClick(picker) {
214+
const end = new Date()
215+
const start = new Date()
216+
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
217+
picker.$emit('pick', [start, end])
218+
}
219+
}]
220+
},
194221
statusMap,
195222
orderDialogVisible: false,
196223
orderDetail: {
@@ -221,6 +248,10 @@ export default {
221248
checkPermission,
222249
getList() {
223250
this.listLoading = true
251+
if (this.listQuery.timeArray.length === 2) {
252+
this.listQuery.start = this.listQuery.timeArray[0]
253+
this.listQuery.end = this.listQuery.timeArray[1]
254+
}
224255
listOrder(this.listQuery).then(response => {
225256
this.list = response.data.data.list
226257
this.total = response.data.data.total

litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallOrderService.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ public List<LitemallOrder> queryByOrderStatus(Integer userId, List<Short> orderS
9292
return litemallOrderMapper.selectByExample(example);
9393
}
9494

95-
public List<LitemallOrder> querySelective(Integer userId, String orderSn, List<Short> orderStatusArray, Integer page, Integer limit, String sort, String order) {
95+
public List<LitemallOrder> querySelective(Integer userId, String orderSn, LocalDateTime start, LocalDateTime end, List<Short> orderStatusArray, Integer page, Integer limit, String sort, String order) {
9696
LitemallOrderExample example = new LitemallOrderExample();
9797
LitemallOrderExample.Criteria criteria = example.createCriteria();
9898

@@ -102,6 +102,12 @@ public List<LitemallOrder> querySelective(Integer userId, String orderSn, List<S
102102
if (!StringUtils.isEmpty(orderSn)) {
103103
criteria.andOrderSnEqualTo(orderSn);
104104
}
105+
if(start != null){
106+
criteria.andAddTimeGreaterThanOrEqualTo(start);
107+
}
108+
if(end != null){
109+
criteria.andAddTimeLessThanOrEqualTo(end);
110+
}
105111
if (orderStatusArray != null && orderStatusArray.size() != 0) {
106112
criteria.andOrderStatusIn(orderStatusArray);
107113
}

0 commit comments

Comments
 (0)