From 2f8e70ad2884d2b6b7443dfae0af11ae9cfc8b99 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 28 二月 2025 17:44:10 +0800 Subject: [PATCH] bug修改 --- manage/src/main/java/com/jilongda/manage/controller/TOrderController.java | 102 ++++++++++++++++++++++++++++++++------------------- 1 files changed, 64 insertions(+), 38 deletions(-) diff --git a/manage/src/main/java/com/jilongda/manage/controller/TOrderController.java b/manage/src/main/java/com/jilongda/manage/controller/TOrderController.java index b977a7c..f410ed4 100644 --- a/manage/src/main/java/com/jilongda/manage/controller/TOrderController.java +++ b/manage/src/main/java/com/jilongda/manage/controller/TOrderController.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.jilongda.common.Ticket.TAddOptometryVO; +import com.jilongda.common.Ticket.TOptometryDetailVO; import com.jilongda.common.Ticket.TOrderGoodsPrintVO; import com.jilongda.common.Ticket.TicketUtil; import com.jilongda.common.basic.ApiResult; @@ -182,6 +183,8 @@ } @Autowired private TTicketService tTicketService; + @Autowired + private TStoreService storeService; @ApiOperation(value = "添加订单") @PostMapping(value = "/addOrder") public ApiResult addOrder(@RequestBody TOrderDTO dto) { @@ -232,45 +235,52 @@ .one(); if (one!=null){ if (one.getTotal()-1<0 && lensSeries.getType()==1 ){ - return ApiResult.failed("库存不足"); + if (StringUtils.hasLength(orderGood.getRightLens())){ + orderService.removeById(dto); + return ApiResult.failed("镜片(R)库存不足,请重新选择"); + }else{ + orderService.removeById(dto); + return ApiResult.failed("镜片(L)库存不足,请重新选择"); + } } // 减少对应库存 one.setTotal(one.getTotal()-1); tLensGoods.add(one); -// // 生成销售订单主表 -// -// TWarehousing tWarehousing = new TWarehousing(); -// tWarehousing.setStatus(5); -// tWarehousing.setType(2); -// tWarehousing.setStoreId(dto.getStoreId()); -// tWarehousing.setRemark("销售订单-镜片"); -// tWarehousing.setOrderNum(dto.getId()+""); -// warehousingService.save(tWarehousing); -// // 生成明细记录 -// TLensWarehousingDetail tLensWarehousingDetail = new TLensWarehousingDetail(); -// tLensWarehousingDetail.setBrand(orderGood.getBrandName()); -// TSupplier supplier = supplierService.getById(lensSeries.getSupplierId()); -// if (supplier!=null){ -// tLensWarehousingDetail.setSupplier(supplier.getName()); -// } -// tLensWarehousingDetail.setSeries(lensSeries.getName()); -// tLensWarehousingDetail.setRefractiveIndex(orderGood.getRefractiveIndex()); -// if (StringUtils.hasLength(orderGood.getLLens())){ -// tLensWarehousingDetail.setBallMirror(orderGood.getLLens().split(",")[0]); -// tLensWarehousingDetail.setColumnMirror(orderGood.getLLens().split(",")[0]); -// } -// if (StringUtils.hasLength(orderGood.getRLens())){ -// tLensWarehousingDetail.setBallMirror(orderGood.getRLens().split(",")[0]); -// tLensWarehousingDetail.setColumnMirror(orderGood.getRLens().split(",")[0]); -// } -// tLensWarehousingDetail.setType(orderGood.getType()); -// tLensWarehousingDetail.setTotal(1); -// tLensWarehousingDetail.setSeriesId(lensSeries.getId()); -// tLensWarehousingDetail.setWarehousingId(tWarehousing.getId()); -// tLensWarehousingDetail.setOrderId(dto.getId()); -// lensWarehousingDetailService.save(tLensWarehousingDetail); + // 生成销售订单主表 + + TWarehousing tWarehousing = new TWarehousing(); + tWarehousing.setStatus(5); + tWarehousing.setType(2); + tWarehousing.setStoreId(dto.getStoreId()); + tWarehousing.setRemark("销售订单-镜片"); + tWarehousing.setOrderNum(dto.getId()+""); + warehousingService.save(tWarehousing); + // 生成明细记录 + TLensWarehousingDetail tLensWarehousingDetail = new TLensWarehousingDetail(); + tLensWarehousingDetail.setBrand(orderGood.getBrandName()); + TSupplier supplier = supplierService.getById(lensSeries.getSupplierId()); + if (supplier!=null){ + tLensWarehousingDetail.setSupplier(supplier.getName()); + } + tLensWarehousingDetail.setSeries(lensSeries.getName()); + tLensWarehousingDetail.setRefractiveIndex(orderGood.getRefractiveIndex()); + if (StringUtils.hasLength(orderGood.getLLens())){ + tLensWarehousingDetail.setBallMirror(orderGood.getLLens().split(",")[0]); + tLensWarehousingDetail.setColumnMirror(orderGood.getLLens().split(",")[0]); + } + if (StringUtils.hasLength(orderGood.getRLens())){ + tLensWarehousingDetail.setBallMirror(orderGood.getRLens().split(",")[0]); + tLensWarehousingDetail.setColumnMirror(orderGood.getRLens().split(",")[0]); + } + tLensWarehousingDetail.setType(orderGood.getType()); + tLensWarehousingDetail.setTotal(1); + tLensWarehousingDetail.setSeriesId(lensSeries.getId()); + tLensWarehousingDetail.setWarehousingId(tWarehousing.getId()); + tLensWarehousingDetail.setOrderId(dto.getId()); + lensWarehousingDetailService.save(tLensWarehousingDetail); }else { + orderService.removeById(dto); return ApiResult.failed("商品库存不足"); } }else{ @@ -283,7 +293,8 @@ .eq(TFrameGoods::getColor, orderGood.getColor()).one(); if (one!=null){ if (one.getTotal()-1<0){ - return ApiResult.failed("库存不足"); + orderService.removeById(dto); + return ApiResult.failed("镜架库存不足,请重新选择"); } // 增加对应库存 one.setTotal(one.getTotal()-1); @@ -320,7 +331,8 @@ frameWarehousingDetailService.save(tFrameWarehousingDetail); }else{ - return ApiResult.failed("商品库存不足"); + orderService.removeById(dto); + return ApiResult.failed("镜架库存不足,请重新选择"); } } } @@ -328,13 +340,17 @@ if (dto.getCouponId()!=null){ TCouponReceive couponReceive = couponReceiveService.getById(dto.getCouponId()); if (couponReceive==null){ + orderService.removeById(dto); return ApiResult.failed("优惠券不存在"); } List<TCouponReceive> couponReceives = couponReceiveService.lambdaQuery() .eq(TCouponReceive::getUserId, dto.getUserId()) .eq(TCouponReceive::getCouponId, couponReceive.getCouponId()) .orderByDesc(TCouponReceive::getCreateTime).list(); - if (couponReceives.isEmpty())return ApiResult.failed("优惠券不存在"); + if (couponReceives.isEmpty()){ + orderService.removeById(dto); + return ApiResult.failed("优惠券不存在"); + } TCouponReceive tCouponReceive = couponReceives.get(0); tCouponReceive.setStatus(2); tCouponReceive.setUseTime(LocalDateTime.now()); @@ -374,16 +390,16 @@ frameGoodsService.updateBatchById(tFrameGoods); TAddOptometryVO tAddOptometryVO = new TAddOptometryVO(); TTicket tTicket = tTicketService.lambdaQuery().eq(TTicket::getStoreId, dto.getStoreId()) - .eq(TTicket::getType,1) + .eq(TTicket::getType,2) .eq(TTicket::getStatus, 1).list().stream().findFirst().orElse(null); if (tTicket==null){ + orderService.removeById(dto); return ApiResult.failed("当前门店未绑定小票机"); } tAddOptometryVO.setSn(tTicket.getCloudId()+""); tAddOptometryVO.setPhone(dto.getPhone()); List<TOrderGoods> orderGoods1 = dto.getOrderGoods(); ArrayList<TOrderGoodsPrintVO> tOrderGoodsPrintVOS = new ArrayList<>(); - // 复制 for (TOrderGoods orderGood : orderGoods1) { TOrderGoodsPrintVO tOrderGoodsPrintVO = new TOrderGoodsPrintVO(); BeanUtils.copyProperties(orderGood,tOrderGoodsPrintVO); @@ -404,6 +420,16 @@ String format = simpleDateFormat.format(new Date()); tAddOptometryVO.setTime(format); tAddOptometryVO.setMachiningCode(dto.getMachiningCode()); + List<TOptometryDetailVO> tOptometryDetailVOS = new ArrayList<>(); + for (TOptometryDetail optometryDetail : dto.getOptometryDetails()) { + TOptometryDetailVO tOptometryDetailVO = new TOptometryDetailVO(); + BeanUtils.copyProperties(optometryDetail,tOptometryDetailVO); + tOptometryDetailVOS.add(tOptometryDetailVO); + } + tAddOptometryVO.setOptometryDetailVOS(tOptometryDetailVOS); + tAddOptometryVO.setShopName(storeService.getById(dto.getStoreId()).getName()); + System.err.println("加工单数据"); + System.err.println(tAddOptometryVO); if (dto.getIsMachining()==1){ // 打印加工单 TicketUtil.printMatch(tAddOptometryVO); -- Gitblit v1.7.1