This commit is contained in:
parent
fb6c9bfc51
commit
d35c87033d
|
|
@ -28,6 +28,7 @@ public interface ComplexQueryService {
|
||||||
/**
|
/**
|
||||||
* 导出综合查询工程机具使用列表
|
* 导出综合查询工程机具使用列表
|
||||||
* @param bean
|
* @param bean
|
||||||
|
* @return
|
||||||
*/
|
*/
|
||||||
List<ProjUsingRecord> exportProjUsingRecord(ProjUsingRecord bean);
|
List<ProjUsingRecord> exportProjUsingRecord(ProjUsingRecord bean);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.math.RoundingMode;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
@ -55,11 +56,11 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
@Override
|
@Override
|
||||||
public List<ProjUsingRecord> exportProjUsingRecord(ProjUsingRecord bean) {
|
public List<ProjUsingRecord> exportProjUsingRecord(ProjUsingRecord bean) {
|
||||||
// 使用 BigDecimal 常量初始化
|
// 使用 BigDecimal 常量初始化
|
||||||
BigDecimal totalLeaseNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalLeaseNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalBackNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalBackNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalUsNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalUsNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalUsPrice = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalUsPrice = BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalTotalPrice = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalTotalPrice = BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP);
|
||||||
List<ProjUsingRecord> list = complexQueryMapper.getProjUsingRecordList(bean);
|
List<ProjUsingRecord> list = complexQueryMapper.getProjUsingRecordList(bean);
|
||||||
if (CollectionUtils.isNotEmpty(list)) {
|
if (CollectionUtils.isNotEmpty(list)) {
|
||||||
ProjUsingRecord projUsingRecord = new ProjUsingRecord();
|
ProjUsingRecord projUsingRecord = new ProjUsingRecord();
|
||||||
|
|
@ -71,11 +72,11 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
totalTotalPrice = totalTotalPrice.add(record.getTotalPrice());
|
totalTotalPrice = totalTotalPrice.add(record.getTotalPrice());
|
||||||
}
|
}
|
||||||
// 设置 ProjUsingDto 总结数据
|
// 设置 ProjUsingDto 总结数据
|
||||||
projUsingRecord.setLeaseNum(totalLeaseNum.setScale(3, BigDecimal.ROUND_HALF_UP));
|
projUsingRecord.setLeaseNum(totalLeaseNum.setScale(3, RoundingMode.HALF_UP));
|
||||||
projUsingRecord.setBackNum(totalBackNum.setScale(3, BigDecimal.ROUND_HALF_UP));
|
projUsingRecord.setBackNum(totalBackNum.setScale(3, RoundingMode.HALF_UP));
|
||||||
projUsingRecord.setUsNum(totalUsNum.setScale(3, BigDecimal.ROUND_HALF_UP));
|
projUsingRecord.setUsNum(totalUsNum.setScale(3, RoundingMode.HALF_UP));
|
||||||
projUsingRecord.setUsPrice(totalUsPrice.setScale(2, BigDecimal.ROUND_HALF_UP));
|
projUsingRecord.setUsPrice(totalUsPrice.setScale(2, RoundingMode.HALF_UP));
|
||||||
projUsingRecord.setTotalPrice(totalTotalPrice.setScale(2, BigDecimal.ROUND_HALF_UP));
|
projUsingRecord.setTotalPrice(totalTotalPrice.setScale(2, RoundingMode.HALF_UP));
|
||||||
projUsingRecord.setUnit("合计");
|
projUsingRecord.setUnit("合计");
|
||||||
list.add(0,projUsingRecord);
|
list.add(0,projUsingRecord);
|
||||||
}
|
}
|
||||||
|
|
@ -162,16 +163,16 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<RetainedEquipmentInfo> getRetainedEquipmentList(RetainedEquipmentInfo bean) {
|
public List<RetainedEquipmentInfo> getRetainedEquipmentList(RetainedEquipmentInfo bean) {
|
||||||
BigDecimal totalPrice = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalPrice = BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalStoreNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalStoreNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalUsNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalUsNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalRepairNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalRepairNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalInputNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalInputNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalRepairInputNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalRepairInputNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal totalAllNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal totalAllNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal fiveReplacementNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal fiveReplacementNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal tenReplacementNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal tenReplacementNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
BigDecimal tenPlusReplacementNum = BigDecimal.ZERO.setScale(3, BigDecimal.ROUND_HALF_UP);
|
BigDecimal tenPlusReplacementNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
|
||||||
String fiveReplacementRate = "0%";
|
String fiveReplacementRate = "0%";
|
||||||
String tenReplacementRate = "0%";
|
String tenReplacementRate = "0%";
|
||||||
String tenPlusReplacementRate = "0%";
|
String tenPlusReplacementRate = "0%";
|
||||||
|
|
@ -189,7 +190,7 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
tenPlusReplacementNum = tenPlusReplacementNum.add(retainedEquipmentInfo.getTenPlusReplacementNum());
|
tenPlusReplacementNum = tenPlusReplacementNum.add(retainedEquipmentInfo.getTenPlusReplacementNum());
|
||||||
BigDecimal equipmentPrice = retainedEquipmentInfo.getAllNum()
|
BigDecimal equipmentPrice = retainedEquipmentInfo.getAllNum()
|
||||||
.multiply(retainedEquipmentInfo.getBuyPrice())
|
.multiply(retainedEquipmentInfo.getBuyPrice())
|
||||||
.divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP);
|
.divide(new BigDecimal(10000), 2, RoundingMode.HALF_UP);
|
||||||
totalPrice = totalPrice.add(equipmentPrice);
|
totalPrice = totalPrice.add(equipmentPrice);
|
||||||
BigDecimal allNum = retainedEquipmentInfo.getAllNum();
|
BigDecimal allNum = retainedEquipmentInfo.getAllNum();
|
||||||
if (allNum.compareTo(BigDecimal.ZERO) == 0) {
|
if (allNum.compareTo(BigDecimal.ZERO) == 0) {
|
||||||
|
|
@ -198,17 +199,17 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
tenPlusReplacementRate = "0%";
|
tenPlusReplacementRate = "0%";
|
||||||
} else {
|
} else {
|
||||||
fiveReplacementRate = retainedEquipmentInfo.getFiveReplacementNum()
|
fiveReplacementRate = retainedEquipmentInfo.getFiveReplacementNum()
|
||||||
.divide(allNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(allNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
tenReplacementRate = retainedEquipmentInfo.getTenReplacementNum()
|
tenReplacementRate = retainedEquipmentInfo.getTenReplacementNum()
|
||||||
.divide(allNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(allNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
tenPlusReplacementRate = retainedEquipmentInfo.getTenPlusReplacementNum()
|
tenPlusReplacementRate = retainedEquipmentInfo.getTenPlusReplacementNum()
|
||||||
.divide(allNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(allNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
}
|
}
|
||||||
retainedEquipmentInfo.setTotalPrice(equipmentPrice);
|
retainedEquipmentInfo.setTotalPrice(equipmentPrice);
|
||||||
retainedEquipmentInfo.setFiveReplacementRate(fiveReplacementRate);
|
retainedEquipmentInfo.setFiveReplacementRate(fiveReplacementRate);
|
||||||
|
|
@ -221,17 +222,17 @@ public class ComplexQueryServiceImpl implements ComplexQueryService {
|
||||||
tenPlusReplacementRate = "0%";
|
tenPlusReplacementRate = "0%";
|
||||||
} else {
|
} else {
|
||||||
fiveReplacementRate = fiveReplacementNum
|
fiveReplacementRate = fiveReplacementNum
|
||||||
.divide(totalAllNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(totalAllNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
tenReplacementRate = tenReplacementNum
|
tenReplacementRate = tenReplacementNum
|
||||||
.divide(totalAllNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(totalAllNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
tenPlusReplacementRate = tenPlusReplacementNum
|
tenPlusReplacementRate = tenPlusReplacementNum
|
||||||
.divide(totalAllNum, 4, BigDecimal.ROUND_HALF_DOWN)
|
.divide(totalAllNum, 4, RoundingMode.HALF_DOWN)
|
||||||
.multiply(new BigDecimal(100))
|
.multiply(new BigDecimal(100))
|
||||||
.setScale(2, BigDecimal.ROUND_HALF_UP) + "%";
|
.setScale(2, RoundingMode.HALF_UP) + "%";
|
||||||
}
|
}
|
||||||
if (bean.getIsExport() == 0) {
|
if (bean.getIsExport() == 0) {
|
||||||
RetainedEquipmentInfo retainedEquipmentInfo = new RetainedEquipmentInfo();
|
RetainedEquipmentInfo retainedEquipmentInfo = new RetainedEquipmentInfo();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue