diff --git a/admin-fe/src/router/routes.ts b/admin-fe/src/router/routes.ts index fe2e300..afe5a02 100644 --- a/admin-fe/src/router/routes.ts +++ b/admin-fe/src/router/routes.ts @@ -6,6 +6,7 @@ import Test from '../views/Test.vue' import AdminLayout from '../views/layout/AdminLayout.vue' import UserIndex from '../views/user/index.vue' import GoodsIndex from '../views/goods/index.vue' +import OrderIndex from '../views/goods/Order.vue' export const AdminRoutes: RouteRecordRaw[] = [ { @@ -32,6 +33,14 @@ export const AdminRoutes: RouteRecordRaw[] = [ title: '商品管理' } }, + { + path: 'order', + name: 'OrderIndex', + component: OrderIndex, + meta: { + title: '订单管理' + } + }, { path: 'test', name: 'TestIndex', diff --git a/admin-fe/src/service/types.d.ts b/admin-fe/src/service/types.d.ts index 31ed31d..4f289db 100644 --- a/admin-fe/src/service/types.d.ts +++ b/admin-fe/src/service/types.d.ts @@ -45,3 +45,16 @@ type GoodsModel = { updateTime?: string; status?: number; } +type OrderInfoModel = { + id?: string; + gid?: number; + orderTitle?: string; + price?: number; + count?: number; + uid?: number; + data?: any; + createTime?: string; + updateTime?: string; + status?: number; + owner?: UserInfoModel; +} \ No newline at end of file diff --git a/admin-fe/src/views/goods/Order.vue b/admin-fe/src/views/goods/Order.vue new file mode 100644 index 0000000..5d8e8ca --- /dev/null +++ b/admin-fe/src/views/goods/Order.vue @@ -0,0 +1,140 @@ + + + + + + 订单编号: + 标题: + 订单开始: + 订单结束: + + + 重置 + + 搜索 + + + + + 订单编号 + 标题 + 价格 + 数量 + 状态 + 用户 + 创建时间 + 操作 + + + {{ it.id }} + {{ it.orderTitle }} + {{ it.price }} + {{ it.count }} + {{ StatusEnum[it.status] || '未知' }} + {{ it.owner?.nickname }} + {{ it.createTime }} + + 确认 + 取消 + 完成 + 删除 + + + + + + + + + + \ No newline at end of file diff --git a/api/src/main/java/me/xiaoyan/point/api/controller/admin/OrderAdminController.java b/api/src/main/java/me/xiaoyan/point/api/controller/admin/OrderAdminController.java index 62a3a0d..6a3c692 100644 --- a/api/src/main/java/me/xiaoyan/point/api/controller/admin/OrderAdminController.java +++ b/api/src/main/java/me/xiaoyan/point/api/controller/admin/OrderAdminController.java @@ -12,6 +12,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @RestController +@RequestMapping("/admin/order") public class OrderAdminController { @Resource private OrderInfoService orderInfoService; @@ -51,4 +52,15 @@ public class OrderAdminController { .build() ); } + + @PutMapping("/{id}/status") + public boolean setStatus(@PathVariable("id") String id, int status) { + if (!StringUtils.hasText(id)) throw BizException.paramError(); + return orderInfoService.updateById( + OrderInfo.builder() + .id(id) + .status(status) + .build() + ); + } } diff --git a/api/src/main/java/me/xiaoyan/point/api/service/impl/OrderInfoServiceImpl.java b/api/src/main/java/me/xiaoyan/point/api/service/impl/OrderInfoServiceImpl.java index cc1bf86..11bdc92 100644 --- a/api/src/main/java/me/xiaoyan/point/api/service/impl/OrderInfoServiceImpl.java +++ b/api/src/main/java/me/xiaoyan/point/api/service/impl/OrderInfoServiceImpl.java @@ -12,6 +12,7 @@ import me.xiaoyan.point.api.pojo.dto.OrderStatus; import me.xiaoyan.point.api.pojo.vo.CreateOrderData; import me.xiaoyan.point.api.pojo.vo.OrderQueryParam; import me.xiaoyan.point.api.service.*; +import me.xiaoyan.point.api.util.DataStatus; import me.xiaoyan.point.api.util.OrderIdGenerator; import me.xiaoyan.point.api.util.QueryWrapperUtil; import org.springframework.stereotype.Service; @@ -89,6 +90,7 @@ public class OrderInfoServiceImpl extends ServiceImpl page = getBaseMapper().selectPage(param.getPage(), q); page.getRecords().forEach(o -> {