| | |
| | | @Autowired |
| | | private ShoppingGoodsService shoppingGoodsService; |
| | | |
| | | @Autowired |
| | | private SysOrderFlowDao sysOrderFlowDao; |
| | | |
| | | @Override |
| | | public int add(SysOrder sysOrder) { |
| | | return sysOrderDao.insert(sysOrder); |
| | |
| | | // 如果支付方式是非现金则记录现金支付金额 |
| | | if (!item.getPayMethod().equals(PayMethodEnum.VIP_CARD.getCode())) { |
| | | xjMoney = MoneyUtil.add(xjMoney, item.getPayMoney()); |
| | | item.setCashPay(item.getPayMoney()); |
| | | // item.setCashPay(item.getPayMoney()); |
| | | } else { |
| | | cardMoney = MoneyUtil.add(cardMoney, item.getPayMoney()); |
| | | item.setCardPay(item.getPayMoney()); |
| | | // item.setCardPay(item.getPayMoney()); |
| | | |
| | | } |
| | | |
| | |
| | | // 订单欠款减去支付金额 设置实际欠款 |
| | | Double itemZkTotal = MoneyUtil.mul(item.getZkPrice(), Double.valueOf(item.getCount())); |
| | | zkTotal=MoneyUtil.add(zkTotal, itemZkTotal); |
| | | item.setArrears(MoneyUtil.sub(itemZkTotal, item.getPayMoney())); |
| | | // item.setArrears(MoneyUtil.sub(itemZkTotal, item.getPayMoney())); |
| | | |
| | | |
| | | // 如果存在欠款,将条目状态设置为欠款 |
| | | if (item.getArrears() > 0) { |
| | | item.setStatus(Dictionary.ORDER_STATU_QK); |
| | | } else if (item.getArrears() < 0) { |
| | | item.setPayMoney(item.getZkPrice()); |
| | | item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | } else { |
| | | item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | } |
| | | // if (item.getArrears() > 0) { |
| | | // item.setStatus(Dictionary.ORDER_STATU_QK); |
| | | // } else if (item.getArrears() < 0) { |
| | | // item.setPayMoney(item.getZkPrice()); |
| | | // item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | // } else { |
| | | // item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | // } |
| | | item.setStatus(Dictionary.ORDER_STATU_DFK); |
| | | } |
| | | double arrears; |
| | | SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); |
| | | // 如果是收款,收款可以改变订单价格,所以需要求和出 订单折后价来计算本次欠款 |
| | | arrears = MoneyUtil.sub(zkTotal, MoneyUtil.add(cardMoney, xjMoney)); |
| | | sysOrder.setZkTotal(zkTotal); |
| | | sysOrder.setArrears(arrears); |
| | | sysOrder.setCardPay(cardMoney); |
| | | sysOrder.setCashPay(xjMoney); |
| | | // sysOrder.setArrears(arrears); |
| | | // sysOrder.setCardPay(cardMoney); |
| | | // sysOrder.setCashPay(xjMoney); |
| | | sysOrder.setStatu(Dictionary.ORDER_STATU_DFK); |
| | | sysOrder.setStaffId(user.getSuId()); |
| | | sysOrder.setCompanyId(user.getCompanyId()); |
| | |
| | | */ |
| | | private void changeOrderStatu(SysOrder sourceOrder) { |
| | | |
| | | boolean haQk=false; |
| | | for (SysOrderFlow flow : sourceOrder.getFlows()) { |
| | | // 若使用储值卡付款 |
| | | if (SysOrderFlow.PAY_METHOD_CARD.equals(flow.getPayMethod())) { |
| | | |
| | | for(SysOrderItem sysOrderItem:sourceOrder.getItems()){ |
| | | |
| | | if(!sysOrderItem.getStatus().equals(Dictionary.ORDER_STATU_QK)){ |
| | | SysOrderItem updateItem=new SysOrderItem(); |
| | | updateItem.setId(sysOrderItem.getId()); |
| | | updateItem.setStatus(Dictionary.ORDER_STATU_YFK); |
| | | |
| | | if (sysOrderItem.getPayMethod().equals(Dictionary.PAY_TYPE_MOENY_CARD ) ) { |
| | | |
| | | if(sysOrderItem.getPayMethodDetail()!=null){ |
| | | // 查询要支付的充值卡 |
| | | MoneyCardUse moneyCardUse = moneyCardUseDao.selectById(Long.parseLong(sysOrderItem.getPayMethodDetail())); |
| | | // 扣除付款卡金额并添加流水 |
| | | cardPaySk(moneyCardUse, sourceOrder, sysOrderItem); |
| | | }else{ |
| | | throw new GlobleException("请选择支付的会员卡"); |
| | | } |
| | | |
| | | |
| | | } |
| | | orderItemDao.update(updateItem); |
| | | }else { |
| | | haQk=true; |
| | | } |
| | | } |
| | | //更新收款状态 |
| | | if(haQk){ |
| | | sourceOrder.setStatu(Dictionary.ORDER_STATU_QK); |
| | | }else{ |
| | | sourceOrder.setStatu(Dictionary.ORDER_STATU_YFK); |
| | | } |
| | | // boolean haQk=false; |
| | | // |
| | | // for(SysOrderItem sysOrderItem:sourceOrder.getItems()){ |
| | | // |
| | | // if(!sysOrderItem.getStatus().equals(Dictionary.ORDER_STATU_QK)){ |
| | | // SysOrderItem updateItem=new SysOrderItem(); |
| | | // updateItem.setId(sysOrderItem.getId()); |
| | | // updateItem.setStatus(Dictionary.ORDER_STATU_YFK); |
| | | // |
| | | // if (sysOrderItem.getPayMethod().equals(Dictionary.PAY_TYPE_MOENY_CARD ) ) { |
| | | // |
| | | // if(sysOrderItem.getPayMethodDetail()!=null){ |
| | | // // 查询要支付的充值卡 |
| | | // MoneyCardUse moneyCardUse = moneyCardUseDao.selectById(Long.parseLong(sysOrderItem.getPayMethodDetail())); |
| | | // // 扣除付款卡金额并添加流水 |
| | | // cardPaySk(moneyCardUse, sourceOrder, sysOrderItem); |
| | | // }else{ |
| | | // throw new GlobleException("请选择支付的会员卡"); |
| | | // } |
| | | // |
| | | // |
| | | // } |
| | | // orderItemDao.update(updateItem); |
| | | // }else { |
| | | // haQk=true; |
| | | // } |
| | | // } |
| | | |
| | | |
| | | // 更新收款状态 |
| | | sourceOrder.setStatu(Dictionary.ORDER_STATU_YFK); |
| | | sysOrderDao.update(sourceOrder); |
| | | |
| | | |
| | |
| | | public List<RankingVo> findApiShopAchieveRanking(SysOrder sysOrder) { |
| | | return sysOrderDao.selectShopAchieveRanking(sysOrder); |
| | | } |
| | | |
| | | @Override |
| | | public List<RankingVo> findStaffSaleAchieveRanking(SysOrder sysOrder) { |
| | | return sysOrderDao.selectStaffSaleAchieveRanking(sysOrder); |
| | | } |
| | | } |