From d3844ee25fbb06b656b5521978f083695d194b07 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Tue, 29 Apr 2025 09:56:11 +0800 Subject: [PATCH] feat(mall): 添加门票核销功能 --- src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java | 98 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 90 insertions(+), 8 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java index ae86f42..7973074 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java @@ -10,6 +10,7 @@ import cc.mrbird.febs.common.enumerates.OrderStatusEnum; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.FebsUtil; +import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.common.utils.SpringContextHolder; import cc.mrbird.febs.common.utils.excl.ExcelSheetPO; import cc.mrbird.febs.common.utils.excl.ExcelUtil; @@ -20,6 +21,8 @@ import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.IAdminMallGoodsService; import cc.mrbird.febs.mall.service.IAdminMallOrderService; +import cc.mrbird.febs.mall.service.IApiMallTeamLeaderService; +import cc.mrbird.febs.mall.service.MallInvoiceService; import cc.mrbird.febs.mall.vo.AdminAddAddressTreeVo; import cc.mrbird.febs.mall.vo.AdminMallOrderRefundAddressVo; import cc.mrbird.febs.pay.model.OrderStateDto; @@ -64,6 +67,9 @@ private final MallTeamLeaderMapper mallTeamLeaderMapper; private final MallMemberMapper mallMemberMapper; private final DataDictionaryCustomMapper dataDictionaryCustomMapper; + private final RedisUtils redisUtils; + + private final IApiMallTeamLeaderService apiMallTeamLeaderService; @@ -110,6 +116,15 @@ @ControllerEndpoint(operation = "订单列表-发货", exceptionMessage = "操作失败") public FebsResponse deliverGoods(@Valid DeliverGoodsDto deliverGoodsDto) { return adminMallOrderService.deliverGoods(deliverGoodsDto); + } + + /** + * 订单列表-修改物流编号 + */ + @PostMapping("deliverGoodsUpdate") + @ControllerEndpoint(operation = "订单列表-修改物流编号", exceptionMessage = "操作失败") + public FebsResponse deliverGoodsUpdate(@Valid DeliverGoodsDto deliverGoodsDto) { + return adminMallOrderService.deliverGoodsUpdate(deliverGoodsDto); } /** @@ -172,6 +187,16 @@ @ControllerEndpoint(operation = "订单退款-拒绝", exceptionMessage = "操作失败") public FebsResponse disagreeRefund(@NotNull(message = "{required}") @PathVariable Long id) { return adminMallOrderService.disagreeRefund(id); + } + + /** + * 退款操作 + * @return + */ + @PostMapping(value = "/refundOperation") + @ControllerEndpoint(operation = "订单退款", exceptionMessage = "操作失败") + public FebsResponse refundOperation(ApiLeaderRefundOrderDto apiLeaderRefundOrderDto) { + return apiMallTeamLeaderService.leaderRefundOrder(apiLeaderRefundOrderDto); } /** @@ -279,7 +304,9 @@ orderSheet.setSheetName(title); orderSheet.setTitle(title); // String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"}; - String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"}; +// String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"}; +// String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"}; + String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "备注", "物流单号", "物流公司", "物流公司码"}; orderSheet.setHeaders(header); QueryRequest request = new QueryRequest(); @@ -301,9 +328,9 @@ for (MallOrderInfo item : dataList) { List<Object> temp = new ArrayList<>(); temp.add(item.getOrderNo()); - temp.add(item.getAmount()); - temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); - temp.add("快递配送"); +// temp.add(item.getAmount()); +// temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); +// temp.add("快递配送"); temp.add(item.getName()); temp.add(item.getPhone()); temp.add(item.getAddress()); @@ -312,9 +339,9 @@ for (MallOrderItem itemItem : item.getItems()) { if (StrUtil.isNotBlank(sb)) { - sb.append(";" + itemItem.getGoodsName() + "*" + itemItem.getCnt()); + sb.append(";" + itemItem.getGoodsName()+"-"+itemItem.getSkuName() + "*" + itemItem.getCnt()); } else { - sb.append(itemItem.getGoodsName() + "*" + itemItem.getCnt()); + sb.append(itemItem.getGoodsName()+"-"+itemItem.getSkuName() + "*" + itemItem.getCnt()); } } temp.add(sb.toString()); @@ -322,6 +349,7 @@ temp.add(""); } + temp.add(item.getRemark()); // temp.add(item.getStatus()); list.add(temp); } @@ -521,7 +549,7 @@ } String fileName = file.getOriginalFilename(); - String dirPath = "/home/javaweb/webresource/qianAYi/"; + String dirPath = "/home/javaweb/webresource/blnka/"; File saveFile = new File(new File(dirPath).getAbsolutePath() + File.separator + fileName); if (!saveFile.exists()) { @@ -627,10 +655,64 @@ if (parentId == null) { ViewMallOrderController.orderIdsStr = ""; } - long[] longs = StrUtil.splitToLong(ViewMallOrderController.orderIdsStr, ','); + String existToken = redisUtils.getString("ADMIN_GOODS_CNT"); + long[] longs = StrUtil.splitToLong(existToken, ','); mallOrderItem.setOrderIdsStr(longs); Map<String, Object> data = getDataTable(adminMallOrderService.goodsStatistics(mallOrderItem,request)); return new FebsResponse().success().data(data); } + + private final MallInvoiceService mallInvoiceService; + /** + * 发票列表 + * @param mallInvoiceDto + * @param request + * @return + */ + @GetMapping("invoiceList") + public FebsResponse invoiceList(AdminMallInvoiceDto mallInvoiceDto, QueryRequest request) { + Map<String, Object> data = getDataTable(mallInvoiceService.getInvoiceList(mallInvoiceDto, request)); + return new FebsResponse().success().data(data); + } + + /** + * 发票列表-订单子表 + */ + @GetMapping(value = "/invoiceItemList") + public FebsResponse invoiceItemList() { + return new FebsResponse().success().data(mallInvoiceService.invoiceItemList()); + } + + /** + * 发票列表-上传发票 + */ + @PostMapping("addInvoiceUrl") + @ControllerEndpoint(operation = " 发票列表-上传发票", exceptionMessage = "操作失败") + public FebsResponse addInvoiceUrl(@Valid MallInvoice mallInvoice) { + return mallInvoiceService.addInvoiceUrl(mallInvoice); + } + + /** + * 发票列表-更新抬头 + * @param id + * @return + */ + @GetMapping("updateInvoiceDetail/{id}") + @ControllerEndpoint(operation = "发票列表-更新抬头", exceptionMessage = "操作失败") + public FebsResponse updateInvoiceDetail(@NotNull(message = "{required}") @PathVariable Long id) { + return mallInvoiceService.updateInvoiceDetail(id); + } + + /** + * 发票列表-更新订单状态 + * @param id + * @return + */ + @GetMapping("updateOrderDetail/{id}") + @ControllerEndpoint(operation = "发票列表-更新订单状态", exceptionMessage = "操作失败") + public FebsResponse updateOrderDetail(@NotNull(message = "{required}") @PathVariable Long id) { + return mallInvoiceService.updateOrderDetail(id); + } + } -- Gitblit v1.9.1