| | |
| | | // 计算订单折扣金额,收款情况下 计算订单总额 |
| | | double zkTotal = 0.0; |
| | | |
| | | // 判断是否为退款 |
| | | String orderStatus = Dictionary.ORDER_STATU_DFK; |
| | | if (Dictionary.ORDER_STATU_TK.equals(sysOrder.getStatu())) { |
| | | orderStatus = Dictionary.ORDER_STATU_TK; |
| | | } |
| | | |
| | | // 页面的pageOrder 参数只包含支付金额信息,不带有购买商品 |
| | | for (SysOrderItem item : sysOrder.getItems()) { |
| | | // 若为退款,则先更新原有数量 |
| | | if (orderStatus.equals(Dictionary.ORDER_STATU_TK)) { |
| | | SysOrderItem sysOrderItem = new SysOrderItem(); |
| | | sysOrderItem.setId(item.getId()); |
| | | sysOrderItem.setCount(item.getPreCount() - item.getCount()); |
| | | orderItemDao.update(sysOrderItem); |
| | | } |
| | | item.setId(null); |
| | | |
| | | ShoppingGoods shoppingGoods = shoppingGoodsDao.selectById(item.getGoodsId()); |
| | | item.setType(shoppingGoods.getGoodType()); |
| | |
| | | // 订单欠款减去支付金额 设置实际欠款 |
| | | Double itemZkTotal = MoneyUtil.mul(item.getZkPrice(), Double.valueOf(item.getCount())); |
| | | zkTotal=MoneyUtil.add(zkTotal, itemZkTotal); |
| | | item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | item.setStatus(orderStatus); |
| | | } |
| | | |
| | | SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); |
| | | sysOrder.setZkTotal(zkTotal); |
| | | sysOrder.setStatu(Dictionary.ORDER_STATU_DFK); |
| | | sysOrder.setStatu(orderStatus); |
| | | sysOrder.setStaffId(user.getSuId()); |
| | | sysOrder.setCompanyId(user.getCompanyId()); |
| | | |
| | |
| | | ShoppingGoods goods = shoppingGoodsDao.selectById(goodsId); |
| | | flow.setFlowContent(goods.getName() + "等" + sourceOrder.getItems().size() + "件产品"); |
| | | |
| | | flow.setOrderId(sourceOrder.getId()); |
| | | if (Dictionary.ORDER_STATU_TK.equals(sourceOrder.getStatu())) { |
| | | flow.setOrderId(sourceOrder.getOldOrderId()); |
| | | } else { |
| | | flow.setOrderId(sourceOrder.getId()); |
| | | } |
| | | |
| | | flow.setVipId(sourceOrder.getVipId()); |
| | | flow.setFlowType(SysOrderFlow.FLOW_TYPE_BUY); |
| | | // 若使用储值卡付款 |
| | |
| | | } |
| | | sysOrderFlowDao.insert(flow); |
| | | i++; |
| | | } |
| | | |
| | | if (Dictionary.ORDER_STATU_TK.equals(sourceOrder.getStatu())) { |
| | | orderStatus = Dictionary.ORDER_STATU_TK; |
| | | } |
| | | |
| | | // 更新收款状态 |
| | |
| | | public List<RankingVo> findStaffSaleAchieveRanking(SysOrder sysOrder) { |
| | | return sysOrderDao.selectStaffSaleAchieveRanking(sysOrder); |
| | | } |
| | | |
| | | @Override |
| | | public void refundOrderMoney(SysOrder pageOrder) { |
| | | |
| | | // 插入订单流水 |
| | | changeOrderStatu(pageOrder); |
| | | |
| | | for (SysOrderItem item : pageOrder.getItems()) { |
| | | |
| | | SysProjUse queryProjUse = new SysProjUse(); |
| | | queryProjUse.setIsOver(Dictionary.FLAG_NO_N); |
| | | queryProjUse.setStatus(Dictionary.TAOCAN_STATUS_YX); |
| | | queryProjUse.setOrderItemId(item.getId()); |
| | | // 修改项目信息 |
| | | if (Dictionary.SHOPPING_GOODS_TYPE_XM.equals(item.getType()) && Dictionary.SHOPPING_GOODS_TYPE_JJCP.equals(item.getType())) { |
| | | SysProjUse sysProjUse = sysProjUseDao.selectByModel(queryProjUse).get(0); |
| | | |
| | | int sub = sysProjUse.getSurplusCount() - item.getCount(); |
| | | sysProjUse.setSurplusCount(sub); |
| | | if (sub <= 0) { |
| | | sysProjUse.setIsOver(Dictionary.FLAG_YES_Y); |
| | | sysProjUse.setStatus(Dictionary.TAOCAN_STATUS_WX); |
| | | } |
| | | sysProjUseDao.update(sysProjUse); |
| | | } |
| | | |
| | | if (Dictionary.SHOPPING_GOODS_TYPE_TC.equals(item.getType())) { |
| | | queryProjUse.setTaocanId(-1L); |
| | | SysProjUse sysProjUse = sysProjUseDao.selectByModel(queryProjUse).get(0); |
| | | sysProjUse.setIsOver(Dictionary.FLAG_YES_Y); |
| | | sysProjUse.setStatus(Dictionary.TAOCAN_STATUS_WX); |
| | | |
| | | sysProjUseDao.update(sysProjUse); |
| | | } |
| | | |
| | | if (Dictionary.SHOPPING_GOODS_TYPE_CZK.equals(item.getType())) { |
| | | MoneyCardUse queryCardUse = new MoneyCardUse(); |
| | | queryCardUse.setIsOver(Dictionary.FLAG_NO_N); |
| | | queryCardUse.setStatus(Dictionary.TAOCAN_STATUS_YX); |
| | | queryCardUse.setOrderItemId(item.getId()); |
| | | |
| | | MoneyCardUse moneyCardUse = moneyCardUseDao.selectByModel(queryCardUse).get(0); |
| | | moneyCardUse.setIsOver(Dictionary.FLAG_YES_Y); |
| | | moneyCardUse.setStatus(Dictionary.MONEYCARD_STATUS_WX); |
| | | moneyCardUseDao.update(moneyCardUse); |
| | | } |
| | | |
| | | // TODO 综合卡退款 |
| | | if (Dictionary.SHOPPING_GOODS_TYPE_ZHK.equals(item.getType())) { |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | // 设置会员充值卡使用情况 |
| | | addMoneyCardUse(pageOrder); |
| | | |
| | | // 新增出库单 |
| | | addOutStore(pageOrder); |
| | | |
| | | // 改变客户项目套餐使用情况 |
| | | addTaocanProj(pageOrder); |
| | | |
| | | // 设置业绩 |
| | | achieveNewService.addAchaeveByOrder(pageOrder); |
| | | |
| | | setShopSelCount(pageOrder); |
| | | } |
| | | } |