From e23c8975e6bb0934cb5db46a94d0f83c9739d9ab Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Sun, 20 Mar 2022 16:33:17 +0800 Subject: [PATCH] 重构:套餐项目 --- zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java | 93 +++++++++------------------------------------- 1 files changed, 19 insertions(+), 74 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java index f6bb406..7489538 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java @@ -56,14 +56,8 @@ @Autowired private SysOrderItemDao orderItemDao; @Autowired - private SysProjUseDao sysProjUseDao; private SysProjUseService sysProjUseService; - - @Autowired - private SysStoreInfoDao storeInfoDao; - @Autowired - private CodeService codeService; @Autowired SysVipInfoDao sysVipInfoDao; @Autowired @@ -103,26 +97,12 @@ @Autowired private AchieveNewDao achieveNewDao; - @Autowired - private WarehouseDao warehouseDao; @Autowired private ShoppingGoodsService shoppingGoodsService; @Autowired private SysOrderFlowDao sysOrderFlowDao; - - @Autowired - private SysSupplierInfoDao sysSupplierInfoDao; - - @Autowired - private SysInstoreInfoDao sysInstoreInfoDao; - - @Autowired - private SysInstoreDetailDao sysInstoreDetailDao; - - @Autowired - private SysInstoreInfoService sysInstoreInfoService; @Autowired BusParameterSettingsDao parameterSettingsDao; @@ -495,14 +475,17 @@ //新增会员卡金额 MoneyCardUse cardUser = moneyCardUseDao.selectVipCard(czVo.getVipId()); - MoneyCardPayDto moneyCardPayDto = new MoneyCardPayDto(); - moneyCardPayDto.setRealMoney(MoneyUtil.add(cardUser.getRealMoney(), czVo.getBjmoney())); - moneyCardPayDto.setGiftMoney(MoneyUtil.add(cardUser.getGiftMoney(), czVo.getGiftMoney())); - moneyCardPayDto.setCarUseId(cardUser.getId()); - moneyCardPayDto.setOrderId(order.getId()); - moneyCardPayDto.setOrderNo(order.getOrderNo()); - moneyCardPayDto.setType(MoneyCardUseFlow.USE_TYPE_CZ); - moneyCardUseService.changeMoneyCard(Arrays.asList(moneyCardPayDto)); + MoneyCardOperationDto moneyCardOperationDto = new MoneyCardOperationDto(); + moneyCardOperationDto.setRealMoney(czVo.getBjmoney()); + moneyCardOperationDto.setGiftMoney(czVo.getGiftMoney()); + moneyCardOperationDto.setCarUseId(cardUser.getId()); + moneyCardOperationDto.setOrderId(order.getId()); + moneyCardOperationDto.setOrderNo(order.getOrderNo()); + moneyCardOperationDto.setType(MoneyCardUseFlow.USE_TYPE_CZ); + + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + moneyCardOperationDto.setUpdateUser(user.getSuId()); + moneyCardUseService.changeMoneyCard(Arrays.asList(moneyCardOperationDto)); // 更新订单主表信息 payEndUpdateOrderInfo(order); @@ -566,7 +549,6 @@ @Override public void orderTk(SysOrder sysOrder) { - SysOrder oldOrder = sysOrderDao.selectById(sysOrder.getOldOrderId()); //创建并保存退款订单 sysOrder = sysOrderServiceHelper.createTkOrder(sysOrder); // 添加订单收款流水 @@ -574,6 +556,7 @@ //退款退套餐退项目 refundProjUse(sysOrder); //删除积分 + SysOrder oldOrder = sysOrderDao.selectById(sysOrder.getOldOrderId()); scoreVipDetailService.removeByBusinessId(oldOrder.getVipId(), oldOrder.getId()); // 设置业绩 @@ -616,17 +599,20 @@ || Dictionary.SHOPPING_GOODS_TYPE_XM.equals(item.getType())) { ProjUseOperationDto dto = new ProjUseOperationDto(); dto.setGoodsId(item.getGoodsId()); - dto.setCount(item.getCount()); + dto.setCount(item.getRefundCount()); dto.setOrderItemId(item.getOldItemId()); + dto.setUpdateUserId(user.getSuId()); projUseDtoList.add(dto); - }else if (Dictionary.SHOPPING_GOODS_TYPE_CZK.equals(item.getType())) { + }else if (Dictionary.SHOPPING_GOODS_TYPE_CZK.equals(item.getType())) { MoneyCardOperationDto moneyCardOperationDto = new MoneyCardOperationDto(); moneyCardOperationDto.setOrderId(sysOrder.getId()); + moneyCardOperationDto.setOrderNo(sysOrder.getOrderNo()); moneyCardOperationDto.setOrderItemId(item.getOldItemId()); - moneyCardOperationDto.setType(MoneyCardUseFlow.USE_TYPE_ORDRE_CANCEL); + moneyCardOperationDto.setType(MoneyCardUseFlow.USE_TYPE_ORDRE_TK); moneyCardOperationDto.setUpdateUser(user.getSuId()); moneyCardOperationDto.setOrderNo(sysOrder.getOrderNo()); + moneyCardOperationDto.setRealMoney(item.getZkPrice()); moneyCardOperationDtos.add(moneyCardOperationDto); } } @@ -636,7 +622,7 @@ // 家居产品退库存 if (CollectionUtils.isNotEmpty(returnGoodsList)) { LogUtil.info("订单退款:退产品库存:{}", JSON.toJSONString(returnGoodsList)); - refundInstore(returnGoodsList); + sysOrderServiceHelper.refundInstore(returnGoodsList); } } @@ -651,50 +637,9 @@ } } - /** - * 退款入库 - */ - private void refundInstore(@NotEmpty List<SysOrderItem> items) { - SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); - SysSupplierInfo supplierInfo = new SysSupplierInfo(); - supplierInfo.setShopId(user.getShopId()); - supplierInfo = sysSupplierInfoDao.selectByModel(supplierInfo).get(0); - Warehouse warehouse = warehouseDao.findShopWarehouse(user.getShopId()).get(0); - SysInstoreInfo instoreInfo = new SysInstoreInfo(); - instoreInfo.setInstoreType(SysInstoreInfo.INSTORE_TYPE_RETURN); - instoreInfo.setInstoreDate(new Date()); - instoreInfo.setSupplierId(supplierInfo.getId().toString()); - instoreInfo.setStoreId(warehouse.getId()); - instoreInfo.setCheckStatus(Dictionary.CHECK_STATUS_DSH); - // 设置入库单编号 - instoreInfo.setInstoreId(DateUtil.getTimeMark()); - instoreInfo.setShopId(user.getShopId()); - instoreInfo.setCompanyId(user.getCompanyId()); - sysInstoreInfoDao.insert(instoreInfo); - Double total = 0.0; - List<SysInstoreDetail> instoreDetails = new ArrayList<>(); - for (SysOrderItem item : items) { - ShoppingGoods goods = shoppingGoodsDao.selectById(item.getGoodsId()); - SysInstoreDetail sysInstoreDetail = new SysInstoreDetail(); - sysInstoreDetail.setAmount(item.getCount().doubleValue()); - sysInstoreDetail.setPrice(item.getZkPrice()); - sysInstoreDetail.setSkuId(goods.getId()); - total = MoneyUtil.add(MoneyUtil.mul(Double.parseDouble(sysInstoreDetail.getAmount() + ""), sysInstoreDetail.getPrice()), total); - sysInstoreDetail.setInstoreId(instoreInfo.getId()); - // 设置小计 - sysInstoreDetail.setPriceTotal(MoneyUtil.mul(Double.parseDouble(sysInstoreDetail.getAmount() + ""), sysInstoreDetail.getPrice())); - instoreDetails.add(sysInstoreDetail); - - } - instoreInfo.setSumall(total); - sysInstoreInfoDao.update(instoreInfo); - sysInstoreDetailDao.batchInsert(instoreDetails); - - sysInstoreInfoService.check(instoreInfo); - } @Override public BigDecimal findVipArrearsByVipId(Long vipId) { -- Gitblit v1.9.1