mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-07-03 13:38:02 +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.InvoiceRecordEnum;
|
||||||
import com.jsowell.common.enums.MemberWalletEnum;
|
import com.jsowell.common.enums.MemberWalletEnum;
|
||||||
import com.jsowell.common.enums.ykc.ActionTypeEnum;
|
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.OrderPayModeEnum;
|
||||||
import com.jsowell.common.enums.ykc.OrderPayRecordEnum;
|
import com.jsowell.common.enums.ykc.OrderPayRecordEnum;
|
||||||
import com.jsowell.common.enums.ykc.OrderStatusEnum;
|
import com.jsowell.common.enums.ykc.OrderStatusEnum;
|
||||||
@@ -796,6 +797,41 @@ public class OrderService {
|
|||||||
OrderDetailInfoVO.BillingDetails billingDetails = new OrderDetailInfoVO.BillingDetails();
|
OrderDetailInfoVO.BillingDetails billingDetails = new OrderDetailInfoVO.BillingDetails();
|
||||||
BeanUtils.copyBeanProp(billingDetails, orderDetail);
|
BeanUtils.copyBeanProp(billingDetails, orderDetail);
|
||||||
vo.setBillingDetails(billingDetails);
|
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;
|
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
|
@Data
|
||||||
public static class BillingDetails{
|
public static class BillingDetails{
|
||||||
|
|||||||
@@ -117,6 +117,19 @@
|
|||||||
<div class="marginTop"></div>
|
<div class="marginTop"></div>
|
||||||
</el-card>
|
</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">
|
<el-card class="cardStyle">
|
||||||
<h3>实时订单数据</h3>
|
<h3>实时订单数据</h3>
|
||||||
<el-table style="width: 100%" :data="orderRealTimeInfo" border>
|
<el-table style="width: 100%" :data="orderRealTimeInfo" border>
|
||||||
@@ -225,12 +238,36 @@ export default {
|
|||||||
chargingAmount: null,
|
chargingAmount: null,
|
||||||
chargingDegree: null,
|
chargingDegree: null,
|
||||||
},
|
},
|
||||||
|
tableData: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getOrderDetail();
|
this.getOrderDetail();
|
||||||
},
|
},
|
||||||
methods: {
|
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() {
|
clickManualSettlement() {
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
},
|
},
|
||||||
@@ -264,6 +301,7 @@ export default {
|
|||||||
console.log("this.pileIn", this.pileIn);
|
console.log("this.pileIn", this.pileIn);
|
||||||
this.orderRealTimeInfo = [data.orderRealTimeInfo];
|
this.orderRealTimeInfo = [data.orderRealTimeInfo];
|
||||||
this.orderDetail = [data.billingDetails];
|
this.orderDetail = [data.billingDetails];
|
||||||
|
this.tableData = data.chargeDetails;
|
||||||
this.lastMonitorData = data.lastMonitorData;
|
this.lastMonitorData = data.lastMonitorData;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user