mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 02:55:04 +08:00
update 订单详情 new收费明细
This commit is contained in:
@@ -15,6 +15,7 @@ import com.jsowell.common.core.redis.RedisCache;
|
||||
import com.jsowell.common.enums.InvoiceRecordEnum;
|
||||
import com.jsowell.common.enums.MemberWalletEnum;
|
||||
import com.jsowell.common.enums.ykc.ActionTypeEnum;
|
||||
import com.jsowell.common.enums.ykc.BillingTimeEnum;
|
||||
import com.jsowell.common.enums.ykc.OrderPayModeEnum;
|
||||
import com.jsowell.common.enums.ykc.OrderPayRecordEnum;
|
||||
import com.jsowell.common.enums.ykc.OrderStatusEnum;
|
||||
@@ -796,6 +797,41 @@ public class OrderService {
|
||||
OrderDetailInfoVO.BillingDetails billingDetails = new OrderDetailInfoVO.BillingDetails();
|
||||
BeanUtils.copyBeanProp(billingDetails, orderDetail);
|
||||
vo.setBillingDetails(billingDetails);
|
||||
|
||||
// new 收费明细
|
||||
OrderDetailInfoVO.ChargeDetail sharp = new OrderDetailInfoVO.ChargeDetail();
|
||||
sharp.setPeriodType(BillingTimeEnum.SHARP.getLabel());
|
||||
sharp.setElectricityPrice(orderDetail.getSharpElectricityPrice());
|
||||
sharp.setServicePrice(orderDetail.getSharpServicePrice());
|
||||
sharp.setUsedElectricity(orderDetail.getSharpUsedElectricity());
|
||||
sharp.setElectricityAmount(sharp.getElectricityPrice().multiply(sharp.getUsedElectricity()));
|
||||
sharp.setServiceAmount(sharp.getServicePrice().multiply(sharp.getUsedElectricity()));
|
||||
|
||||
OrderDetailInfoVO.ChargeDetail peak = new OrderDetailInfoVO.ChargeDetail();
|
||||
peak.setPeriodType(BillingTimeEnum.PEAK.getLabel());
|
||||
peak.setElectricityPrice(orderDetail.getPeakElectricityPrice());
|
||||
peak.setServicePrice(orderDetail.getPeakServicePrice());
|
||||
peak.setUsedElectricity(orderDetail.getPeakUsedElectricity());
|
||||
peak.setElectricityAmount(peak.getElectricityPrice().multiply(peak.getUsedElectricity()));
|
||||
peak.setServiceAmount(peak.getServicePrice().multiply(peak.getUsedElectricity()));
|
||||
|
||||
OrderDetailInfoVO.ChargeDetail flat = new OrderDetailInfoVO.ChargeDetail();
|
||||
flat.setPeriodType(BillingTimeEnum.PEAK.getLabel());
|
||||
flat.setElectricityPrice(orderDetail.getFlatElectricityPrice());
|
||||
flat.setServicePrice(orderDetail.getFlatServicePrice());
|
||||
flat.setUsedElectricity(orderDetail.getFlatUsedElectricity());
|
||||
flat.setElectricityAmount(flat.getElectricityPrice().multiply(flat.getUsedElectricity()));
|
||||
flat.setServiceAmount(flat.getServicePrice().multiply(flat.getUsedElectricity()));
|
||||
|
||||
OrderDetailInfoVO.ChargeDetail valley = new OrderDetailInfoVO.ChargeDetail();
|
||||
valley.setPeriodType(BillingTimeEnum.PEAK.getLabel());
|
||||
valley.setElectricityPrice(orderDetail.getValleyElectricityPrice());
|
||||
valley.setServicePrice(orderDetail.getValleyServicePrice());
|
||||
valley.setUsedElectricity(orderDetail.getValleyUsedElectricity());
|
||||
valley.setElectricityAmount(valley.getElectricityPrice().multiply(valley.getUsedElectricity()));
|
||||
valley.setServiceAmount(valley.getServicePrice().multiply(valley.getUsedElectricity()));
|
||||
|
||||
vo.setChargeDetails(Lists.newArrayList(sharp, peak, flat, valley));
|
||||
}
|
||||
|
||||
// 用户信息
|
||||
|
||||
@@ -35,7 +35,18 @@ public class OrderDetailInfoVO {
|
||||
|
||||
private RealTimeMonitorData lastMonitorData;
|
||||
|
||||
// billingDetails
|
||||
// 收费明细
|
||||
private List<ChargeDetail> chargeDetails;
|
||||
|
||||
@Data
|
||||
public static class ChargeDetail{
|
||||
private String periodType; // 时段类型
|
||||
private BigDecimal usedElectricity; // 用电量
|
||||
private BigDecimal electricityPrice; // 电费单价
|
||||
private BigDecimal servicePrice; // 服务费单价
|
||||
private BigDecimal electricityAmount; // 电费金额
|
||||
private BigDecimal serviceAmount; // 服务费金额
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class BillingDetails{
|
||||
|
||||
@@ -117,6 +117,19 @@
|
||||
<div class="marginTop"></div>
|
||||
</el-card>
|
||||
|
||||
<el-card class="cardStyle">
|
||||
<h3>收费明细new</h3>
|
||||
<el-table :data="tableData" border show-summary :summary-method="getSummaries">
|
||||
<el-table-column prop="periodType" label="时段类型" width="180" align="center"/>
|
||||
<el-table-column prop="electricityPrice" label="电费单价(元/千瓦时)" align="center"/>
|
||||
<el-table-column prop="servicePrice" label="服务费单价(元/千瓦时)" align="center"/>
|
||||
<el-table-column prop="usedElectricity" label="用电量(千瓦时)" align="center"/>
|
||||
<el-table-column prop="electricityAmount" label="电费金额(元)" align="center"/>
|
||||
<el-table-column prop="serviceAmount" label="服务费金额(元)" align="center"/>
|
||||
</el-table>
|
||||
<div class="marginTop"></div>
|
||||
</el-card>
|
||||
|
||||
<el-card class="cardStyle">
|
||||
<h3>实时订单数据</h3>
|
||||
<el-table style="width: 100%" :data="orderRealTimeInfo" border>
|
||||
@@ -225,12 +238,36 @@ export default {
|
||||
chargingAmount: null,
|
||||
chargingDegree: null,
|
||||
},
|
||||
tableData: []
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getOrderDetail();
|
||||
},
|
||||
methods: {
|
||||
getSummaries(param) {
|
||||
const { columns, data } = param;
|
||||
const sums = [];
|
||||
columns.forEach((column, index) => {
|
||||
if (index === 0) {
|
||||
sums[index] = '总价';
|
||||
return;
|
||||
}
|
||||
const values = data.map(item => Number(item[column.property]));
|
||||
if (column.property === 'usedElectricity' ||column.property ==='electricityAmount' || column.property==='serviceAmount' ) {
|
||||
sums[index] = values.reduce((prev, curr) => {
|
||||
const value = Number(curr);
|
||||
if (!isNaN(value)) {
|
||||
return prev + curr;
|
||||
} else {
|
||||
return prev;
|
||||
}
|
||||
}, 0);
|
||||
sums[index];
|
||||
}
|
||||
});
|
||||
return sums;
|
||||
},
|
||||
clickManualSettlement() {
|
||||
this.dialogVisible = true;
|
||||
},
|
||||
@@ -264,6 +301,7 @@ export default {
|
||||
console.log("this.pileIn", this.pileIn);
|
||||
this.orderRealTimeInfo = [data.orderRealTimeInfo];
|
||||
this.orderDetail = [data.billingDetails];
|
||||
this.tableData = data.chargeDetails;
|
||||
this.lastMonitorData = data.lastMonitorData;
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user