| | |
| | | if (list.size() == 0) { |
| | | return new HashMap(); |
| | | } |
| | | //元谋一期陆常丽需求把赠送金额与充值金额分开显示 |
| | | for (int i = list.size()-1; i >= 0 ; i--) { |
| | | Optional.ofNullable(list.get(i).getGift()).orElse(0d); |
| | | if (!list.get(i).getGift().equals(0d)){ |
| | | Double gift1 = list.get(i).getGift();//赠送金额 |
| | | String districtTitle = list.get(i).getDistrictTitle();//地址 |
| | | String clientNum = list.get(i).getClientNum();//农户编号 |
| | | String clientName = list.get(i).getClientName();//农户姓名 |
| | | String phone = list.get(i).getPhone();//手机号 |
| | | Date tradeTime = list.get(i).getTradeTime();//交易时间 |
| | | String orderNumber = list.get(i).getOrderNumber();//订单编号 |
| | | String cardNum = list.get(i).getCardNum();//卡编号 |
| | | String idCard = list.get(i).getIdCard();//身份证 |
| | | String cashierName = list.get(i).getCashierName();//操作人 |
| | | Double money = list.get(i).getMoney();//余额 |
| | | Double cardCost1 = list.get(i).getCardCost();//购卡金额 |
| | | Double tradeAmount = list.get(i).getTradeAmount();//交易金额 |
| | | Double waterCost1 = list.get(i).getWaterCost();//购水金额 |
| | | Double refundAmount1 = list.get(i).getRefundAmount();//返回金额 |
| | | String paymentName = list.get(i).getPaymentName();//支付方式 |
| | | String operateType = list.get(i).getOperateType();//业务类型 |
| | | String cardState = list.get(i).getCardState();//卡状态 |
| | | Long villageId = list.get(i).getVillageId();//村id |
| | | Long cashierId = list.get(i).getCashierId();//收银员id |
| | | |
| | | list.get(i).setGift(0d); |
| | | list.get(i).setMoney(money-gift1); |
| | | |
| | | VoTradeDetails voTradeDetail = new VoTradeDetails(); |
| | | voTradeDetail.setDistrictTitle(districtTitle);//2 |
| | | voTradeDetail.setClientNum(clientNum);//2 |
| | | voTradeDetail.setClientName(clientName);//2 |
| | | voTradeDetail.setPhone(phone);//2 |
| | | voTradeDetail.setOperateType("赠送");//2 |
| | | voTradeDetail.setTradeTime(tradeTime);//2 |
| | | voTradeDetail.setWaterCost(0d);//2 |
| | | voTradeDetail.setCardCost(0d);//2 |
| | | voTradeDetail.setGift(gift1);//2 |
| | | voTradeDetail.setTradeAmount(0d);//2 |
| | | voTradeDetail.setRefundAmount(refundAmount1);//2 |
| | | voTradeDetail.setMoney(money);//待2 |
| | | voTradeDetail.setPaymentName("赠送");//2 |
| | | voTradeDetail.setOrderNumber(orderNumber);//2 |
| | | voTradeDetail.setCardNum(cardNum);//2 |
| | | voTradeDetail.setIdCard(idCard);//2 |
| | | voTradeDetail.setCashierName(cashierName);//2 |
| | | voTradeDetail.setCashierId(cashierId);//2 |
| | | voTradeDetail.setCardState(cardState);//2 |
| | | voTradeDetail.setVillageId(villageId);//2 |
| | | |
| | | list.add(voTradeDetail); |
| | | itemTotal = itemTotal + 1; |
| | | } |
| | | } |
| | | list.sort(Comparator.comparing(VoTradeDetails::getTradeTime)); |
| | | rsVo.obj = list; |
| | | rsVo.calculateAndSet(itemTotal, params); |
| | | |
| | | // 遍历交易明细记录,汇总购水金额、购卡金额 |
| | | Double totalWaterCost = 0.0; |
| | |
| | | clientCard.setLastoper(LastOperateENUM.REFUND.getCode()); |
| | | return seClientCardMapper.updateByPrimaryKeySelective(clientCard); |
| | | } |
| | | |
| | | /** |
| | | * 修改反写水卡表的操作信息及余额 |
| | | * @param operateType |
| | | * @param cardId |
| | | * @return |
| | | */ |
| | | public Integer updateWriteBack(Integer operateType, Long cardId) { |
| | | SeCardOperate cardOperate = seCardOperateMapper.getCardOperate(operateType, cardId); |
| | | Date writeBackTime = Optional.ofNullable(cardOperate.getOperateDt()).orElse(new Date()); |
| | | Float money = cardOperate.getMoney(); |
| | | |
| | | SeClientCard clientCard = new SeClientCard(); |
| | | clientCard.setId(cardId); |
| | | clientCard.setRefunddt(writeBackTime); |
| | | clientCard.setMoney(money); |
| | | clientCard.setLastoper(LastOperateENUM.WRITE_BACK.getCode()); |
| | | return seClientCardMapper.updateByPrimaryKeySelective(clientCard); |
| | | } |
| | | } |