From d388e896e5c9e2c4824afa814a8a729ff2e9dc32 Mon Sep 17 00:00:00 2001 From: riverflow <3011499946@qq.com> Date: Thu, 21 Aug 2025 20:55:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=90=8E=E7=AB=AF=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2=E5=92=8C=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E7=9A=84=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/controller/UserOrderController.java | 7 ++ .../com/itmk/web/order/entity/UserOrder.java | 4 +- .../itmk/web/order/entity/WxOrderParm.java | 1 + .../web/order/service/UserOrderService.java | 2 + .../service/impl/UserOrderServiceImpl.java | 22 ++++ order-system/src/api/order/OrderModel.ts | 8 ++ order-system/src/api/order/index.ts | 6 + .../src/compositions/order/useOrderTable.ts | 63 +++++++++++ order-system/src/views/order/Index.vue | 103 ++++++++++++++++-- 9 files changed, 208 insertions(+), 8 deletions(-) create mode 100644 order-system/src/api/order/OrderModel.ts create mode 100644 order-system/src/api/order/index.ts create mode 100644 order-system/src/compositions/order/useOrderTable.ts diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/controller/UserOrderController.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/controller/UserOrderController.java index 1a97744..33a8482 100644 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/controller/UserOrderController.java +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/controller/UserOrderController.java @@ -29,4 +29,11 @@ public class UserOrderController { IPage orderList = userOrderService.getOrderList(parm); return ResultUtils.success("查询成功!",orderList); } + + //pc端查询订单 + @GetMapping("/getPcOrderList") + public ResultVo getPcOrderList(WxOrderParm parm){ + IPage orderList = userOrderService.getPcOrderList(parm); + return ResultUtils.success("查询成功!",orderList); + } } diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/UserOrder.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/UserOrder.java index 80c51bc..d6775e5 100644 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/UserOrder.java +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/UserOrder.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import com.itmk.web.order_detail.entity.UserOrderDetail; import lombok.Data; @@ -22,10 +23,11 @@ public class UserOrder { private String phone; private String address; private BigDecimal price; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; private String status; -// 排除字段 + // 排除字段 @TableField(exist = false) private List goodsList = new ArrayList<>(); } diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/WxOrderParm.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/WxOrderParm.java index 3378190..0aeb403 100644 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/WxOrderParm.java +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/entity/WxOrderParm.java @@ -8,4 +8,5 @@ public class WxOrderParm { private String type; private Long currentPage; private Long pageSize; + private String userName; } \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/UserOrderService.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/UserOrderService.java index 57c7523..ece8310 100644 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/UserOrderService.java +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/UserOrderService.java @@ -10,4 +10,6 @@ public interface UserOrderService extends IService { void splaceOrder(OrderParm parm); IPage getOrderList(WxOrderParm parm); + + IPage getPcOrderList(WxOrderParm parm); } \ No newline at end of file diff --git a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/impl/UserOrderServiceImpl.java b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/impl/UserOrderServiceImpl.java index 21695c6..f97fc72 100644 --- a/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/impl/UserOrderServiceImpl.java +++ b/api-interface/itmk-base-parent/itmk-base-web/src/main/java/com/itmk/web/order/service/impl/UserOrderServiceImpl.java @@ -74,4 +74,26 @@ public class UserOrderServiceImpl extends ServiceImpl getPcOrderList(WxOrderParm parm) { + //查询订单 + QueryWrapper query = new QueryWrapper<>(); + query.lambda().like(StringUtils.isNotEmpty(parm.getUserName()),UserOrder::getUserName,parm.getUserName()) + .eq(StringUtils.isNotEmpty(parm.getType()),UserOrder::getStatus,parm.getType()) + .orderByDesc(UserOrder::getCreateTime); + IPage page = new Page<>(parm.getCurrentPage(),parm.getPageSize()); + IPage order = this.baseMapper.selectPage(page, query); + //有数据,查询子订单 + if(order.getRecords().size()>0){ + for (int i = 0;i queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(UserOrderDetail::getOrderId,order.getRecords().get(i).getOrderId()); + List list = userOrderDetailService.list(queryWrapper); + order.getRecords().get(i).setGoodsList(list); + } + + } + return order; + } } \ No newline at end of file diff --git a/order-system/src/api/order/OrderModel.ts b/order-system/src/api/order/OrderModel.ts new file mode 100644 index 0000000..45e6007 --- /dev/null +++ b/order-system/src/api/order/OrderModel.ts @@ -0,0 +1,8 @@ +//列表参数类型 +export type OrderListParm = { + currentPage:number; + pageSize:number; + type:string; + userName:string; + total:number; //分页的总条数 +} \ No newline at end of file diff --git a/order-system/src/api/order/index.ts b/order-system/src/api/order/index.ts new file mode 100644 index 0000000..65994e9 --- /dev/null +++ b/order-system/src/api/order/index.ts @@ -0,0 +1,6 @@ +import http from "../../http"; +import type { OrderListParm } from "./OrderModel"; +//列表 +export const gePcOrdertListApi = (parm:OrderListParm)=>{ + return http.get("/wxapi/order/getPcOrderList",parm) +} \ No newline at end of file diff --git a/order-system/src/compositions/order/useOrderTable.ts b/order-system/src/compositions/order/useOrderTable.ts new file mode 100644 index 0000000..44f1ff9 --- /dev/null +++ b/order-system/src/compositions/order/useOrderTable.ts @@ -0,0 +1,63 @@ +import type { OrderListParm } from '../../api/order/OrderModel' +import {nextTick, onMounted, reactive, ref} from 'vue' +import { gePcOrdertListApi } from '../../api/order' +export default function useOrderTable(){ + //表格高度 + const tableHeight = ref(0) + //表格数据 + const tableList = ref([]) + //表格查询的参数 + const listParm = reactive({ + currentPage:1, + pageSize:10, + type:'', + userName:'', + total:0 + }) + //列表 + const getList = async()=>{ + let res = await gePcOrdertListApi(listParm) + if(res && res.code == 200){ + //设置表格数据 + tableList.value = res.data.records; + //设置分页总条数 + listParm.total = res.data.total; + } + } + //搜索 + const searchBtn = ()=>{ + getList() + } + //重置 + const resetBtn = ()=>{ + listParm.currentPage = 1; + listParm.type = '' + getList() + } + //页容量改变触发 + const sizeChange = (size:number)=>{ + listParm.pageSize = size; + getList() + } + //页数改变触发 + const currentChange = (page:number)=>{ + listParm.currentPage = page; + getList() + } + onMounted(()=>{ + getList() + nextTick(()=>{ + tableHeight.value = window.innerHeight - 220 + }) + }) + return{ + tableList, + listParm, + getList, + searchBtn, + resetBtn, + sizeChange, + currentChange, + tableHeight + } +} \ No newline at end of file diff --git a/order-system/src/views/order/Index.vue b/order-system/src/views/order/Index.vue index 644b411..37440e5 100644 --- a/order-system/src/views/order/Index.vue +++ b/order-system/src/views/order/Index.vue @@ -1,13 +1,102 @@ - \ No newline at end of file + \ No newline at end of file