| | |
| | | package com.ruoyi.web.controller.api; |
| | | |
| | | import cn.hutool.core.collection.CollectionUtil; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | import com.ruoyi.common.constant.AmountConstant; |
| | | import com.ruoyi.common.enums.BillTypeEnum; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.system.dto.TBillDto; |
| | | import com.ruoyi.system.model.TOrderBill; |
| | |
| | | List<TOrderBill> orderBills = orderBillService.getByOrderNo(orderid); |
| | | List<TBillDto> bills = orderBills.stream().map(ob |
| | | -> tBillService.getDetailByBillId(ob.getBillId())).collect(Collectors.toList()); |
| | | |
| | | respBill.setBillNo(orderid); |
| | | List<String> types = bills.stream().map(bill -> BillTypeEnum.getByCode(Integer.parseInt(bill.getBillType())).getName()).distinct().collect(Collectors.toList()); |
| | | // 封装详细账单信息 |
| | | respBill.setBillName(order.getUserName()); |
| | | respBill.setFeeAmt(BigDecimal.valueOf(order.getAmount()).divide(AmountConstant.b100,2, RoundingMode.HALF_DOWN).toPlainString()); |
| | | respBill.setBillName("缴费:"+CollectionUtil.join(types,",")); |
| | | respBill.setOweAmt(BigDecimal.valueOf(order.getAmount()).divide(AmountConstant.b100,2, RoundingMode.HALF_DOWN).toPlainString()); |
| | | respBills.add(respBill); |
| | | respInfo.setCustName(order.getUserName()); |
| | | respInfo.setCustAddress(""); |
| | |
| | | respInfo.setAmtRule(amtRule); |
| | | /*QueryBillResponse.Message.Info.Bill.UnitDetail unitDetail = respBill.new UnitDetail( |
| | | "unitName", "6.66", "1");*/ |
| | | BigDecimal outstandAmount = bills.stream().map(TBillDto::getOutstandingMoney).reduce(BigDecimal::add).get(); |
| | | //欠费金额 |
| | | respBill.setOweAmt(outstandAmount.setScale(2,RoundingMode.HALF_DOWN).toPlainString()); |
| | | respBill.setFeeAmt("0.00"); |
| | | // |
| | | // QueryBillResponse.Message.Info.Bill.DescDetail descDtail1 = respBill.new DescDetail( |