|
|
|
@ -1,14 +1,17 @@ |
|
|
|
package com.thing.qingyuan.carbon.service.impl; |
|
|
|
|
|
|
|
import com.mybatisflex.core.query.QueryWrapper; |
|
|
|
import com.thing.common.orm.service.impl.BaseServiceImpl; |
|
|
|
import com.thing.qingyuan.carbon.dto.QyCarbonAssetDTO; |
|
|
|
import com.thing.qingyuan.carbon.entity.QyCarbonAssetEntity; |
|
|
|
import com.thing.qingyuan.carbon.dto.QyCarbonQuotaInfoDTO; |
|
|
|
import com.thing.qingyuan.carbon.dto.QyCcerInfoDTO; |
|
|
|
import com.thing.qingyuan.carbon.entity.QyCarbonQuotaInfoEntity; |
|
|
|
import com.thing.qingyuan.carbon.entity.QyCcerInfoEntity; |
|
|
|
import com.thing.qingyuan.carbon.entity.QyGreenCertificateInfoEntity; |
|
|
|
import com.thing.qingyuan.carbon.mapper.QyCarbonAssetMapper; |
|
|
|
import com.thing.qingyuan.carbon.service.QyCarbonAssetService; |
|
|
|
import com.thing.qingyuan.carbon.service.QyCarbonQuotaInfoService; |
|
|
|
import com.thing.qingyuan.carbon.service.QyCcerInfoService; |
|
|
|
import com.thing.qingyuan.carbon.service.QyGreenCertificateInfoService; |
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
@ -25,12 +28,12 @@ import static com.thing.qingyuan.carbon.entity.table.QyCcerInfoEntityTableDef.QY |
|
|
|
import static com.thing.qingyuan.carbon.entity.table.QyGreenCertificateInfoEntityTableDef.QY_GREEN_CERTIFICATE_INFO_ENTITY; |
|
|
|
|
|
|
|
@Service |
|
|
|
public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMapper, QyCarbonAssetEntity> implements QyCarbonAssetService { |
|
|
|
@RequiredArgsConstructor |
|
|
|
public class QyCarbonAssetServiceImpl implements QyCarbonAssetService { |
|
|
|
|
|
|
|
@Override |
|
|
|
public QueryWrapper getWrapper(Map<String, Object> params) { |
|
|
|
return null; |
|
|
|
} |
|
|
|
private final QyCarbonQuotaInfoService qyCarbonQuotaInfoService; |
|
|
|
private final QyCcerInfoService qyCcerInfoService; |
|
|
|
private final QyGreenCertificateInfoService qyGreenCertificateInfoService; |
|
|
|
|
|
|
|
/** |
|
|
|
* 计算当前碳资产,包括碳配额,CCER,绿证 |
|
|
|
@ -40,54 +43,54 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
public Map<String, String> countCarbonAsset() { |
|
|
|
//查询待发放碳配额 |
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getState,"1"); |
|
|
|
// sum1 为待发放碳配额 |
|
|
|
String sum1 = mapper.selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
String sum1 = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
|
|
|
|
//查询待申请CCER |
|
|
|
QueryWrapper queryWrapper1 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CCER_INFO_ENTITY) |
|
|
|
.eq(QyCcerInfoEntity::getState,"1"); |
|
|
|
// sum2 为待申请CCER |
|
|
|
String sum2 = mapper.selectOneByQueryAs(queryWrapper1, String.class); |
|
|
|
String sum2 = qyCcerInfoService.getMapper().selectOneByQueryAs(queryWrapper1, String.class); |
|
|
|
|
|
|
|
//查询待发放绿证 |
|
|
|
QueryWrapper queryWrapper2 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY) |
|
|
|
.eq(QyGreenCertificateInfoEntity::getState,"1"); |
|
|
|
// sum3 为待发放绿证 |
|
|
|
String sum3 = mapper.selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
String sum3 = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
|
|
|
|
//统计当前状态下 碳配额,ccer,绿证总和 |
|
|
|
BigDecimal addTotal = new BigDecimal(sum1).add(new BigDecimal(sum2)).add(new BigDecimal(sum3)); |
|
|
|
|
|
|
|
// 查询已发放碳配额 |
|
|
|
QueryWrapper queryWrapper3 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getState,"2"); |
|
|
|
// sum4 为已发放碳配额 |
|
|
|
String sum4 = mapper.selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
String sum4 = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
|
|
|
|
// 查询已申请ccer |
|
|
|
QueryWrapper queryWrapper4 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CCER_INFO_ENTITY) |
|
|
|
.eq(QyCcerInfoEntity::getState,"2"); |
|
|
|
// sum5 为已申请ccer |
|
|
|
String sum5 = mapper.selectOneByQueryAs(queryWrapper4, String.class); |
|
|
|
String sum5 = qyCcerInfoService.getMapper().selectOneByQueryAs(queryWrapper4, String.class); |
|
|
|
|
|
|
|
// 查询已发放绿证 |
|
|
|
QueryWrapper queryWrapper5 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY) |
|
|
|
.eq(QyGreenCertificateInfoEntity::getState,"2"); |
|
|
|
// sum6 为已发放绿证 |
|
|
|
String sum6 = mapper.selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
String sum6 = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
|
|
|
|
//统计当前状态下,碳配额,ccer,绿证总和 |
|
|
|
BigDecimal addTotal1 = new BigDecimal(sum4).add(new BigDecimal(sum5)).add(new BigDecimal(sum6)); |
|
|
|
@ -114,22 +117,22 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
@Override |
|
|
|
public Map<String, String> countTotalCarbonAsset() { |
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY); |
|
|
|
//sum1 当前碳配额 |
|
|
|
String sum1 = mapper.selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
String sum1 = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
|
|
|
|
QueryWrapper queryWrapper1 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CCER_INFO_ENTITY); |
|
|
|
//sum2 当前CCER |
|
|
|
String sum2 = mapper.selectOneByQueryAs(queryWrapper1, String.class); |
|
|
|
String sum2 = qyCcerInfoService.getMapper().selectOneByQueryAs(queryWrapper1, String.class); |
|
|
|
|
|
|
|
QueryWrapper queryWrapper2 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY); |
|
|
|
//sum3 当前绿证 |
|
|
|
String sum3 = mapper.selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
String sum3 = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
|
|
|
|
//资产综合 |
|
|
|
BigDecimal sumTotal = new BigDecimal(sum1).add(new BigDecimal(sum2)).add(new BigDecimal(sum3)); |
|
|
|
@ -154,17 +157,17 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
/* |
|
|
|
==============================统计买入量============================================================== |
|
|
|
*/ |
|
|
|
//查询碳配额买入碳资产 |
|
|
|
/*//查询碳配额买入碳资产 |
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"1"); |
|
|
|
//numTotal 为碳配额中买入碳资产量 |
|
|
|
String carbonTotal = mapper.selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
String carbonTotal = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
|
|
|
|
//查询ccer买入碳资产 |
|
|
|
QueryWrapper queryWrapper1 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_CCER_INFO_ENTITY) |
|
|
|
.eq(QyCcerInfoEntity::getAssetState,"1"); |
|
|
|
//ccerTotal 为ccer中买入碳资产量 |
|
|
|
@ -172,22 +175,22 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
|
|
|
|
//查询绿证买入碳资产 |
|
|
|
QueryWrapper queryWrapper2 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.TOTAL).as("total")) |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY) |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"1"); |
|
|
|
//greenTotal 为绿证买入碳资产量 |
|
|
|
String greenTotal = mapper.selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
String greenTotal = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==============================统计核销量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额核销量 |
|
|
|
QueryWrapper queryWrapper3 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.VERIFICATION_VOLUME).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"2"); |
|
|
|
//carbonVolume 为碳配额核销量 |
|
|
|
String carbonVolume = mapper.selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
String carbonVolume = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
|
|
|
|
//查询ccer核销量 |
|
|
|
QueryWrapper queryWrapper4 = QueryWrapper.create() |
|
|
|
@ -203,19 +206,19 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY) |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"2"); |
|
|
|
//greenVolume 为绿证核销量 |
|
|
|
String greenVolume = mapper.selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
String greenVolume = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==============================统计发放量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额卖出量 |
|
|
|
QueryWrapper queryWrapper6 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"3"); |
|
|
|
//carbonSell 为碳配额卖出 |
|
|
|
String carbonSell = mapper.selectOneByQueryAs(queryWrapper6, String.class); |
|
|
|
String carbonSell = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper6, String.class); |
|
|
|
|
|
|
|
//查询ccer卖出量 |
|
|
|
QueryWrapper queryWrapper7 = QueryWrapper.create() |
|
|
|
@ -231,7 +234,7 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY) |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"3"); |
|
|
|
//greenSell 为绿证卖出 |
|
|
|
String greenSell = mapper.selectOneByQueryAs(queryWrapper8, String.class); |
|
|
|
String greenSell = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper8, String.class); |
|
|
|
|
|
|
|
//总买入碳资产 |
|
|
|
BigDecimal buyTotal = new BigDecimal(greenTotal).multiply(new BigDecimal("0.5703")).add(new BigDecimal(carbonTotal)).add(new BigDecimal(ccerTotal)); |
|
|
|
@ -239,13 +242,13 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
BigDecimal verTotal = new BigDecimal(greenVolume).multiply(new BigDecimal("0.5703")).add(new BigDecimal(carbonVolume)).add(new BigDecimal(ccerVolume)); |
|
|
|
//总卖出碳资产 |
|
|
|
BigDecimal sellTotal = new BigDecimal(greenSell).multiply(new BigDecimal("0.5703")).add(new BigDecimal(carbonSell)).add(new BigDecimal(ccerSell)); |
|
|
|
|
|
|
|
*/ |
|
|
|
//存入结果 |
|
|
|
HashMap<String, String> temMap = new HashMap<>(); |
|
|
|
//返回结果 买入 核销 卖出 |
|
|
|
temMap.put("buy", buyTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : buyTotal.toString()); |
|
|
|
/* temMap.put("buy", buyTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : buyTotal.toString()); |
|
|
|
temMap.put("ver", verTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : verTotal.toString()); |
|
|
|
temMap.put("sell", sellTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : sellTotal.toString()); |
|
|
|
temMap.put("sell", sellTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : sellTotal.toString());*/ |
|
|
|
return temMap; |
|
|
|
} |
|
|
|
|
|
|
|
@ -254,19 +257,42 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
* @return 返回一个map |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public Map<String, String> countRecentCarbonAsset(String startTime, String endTime) { |
|
|
|
public List<QyCarbonAssetDTO> countRecentCarbonAsset(Long startTime, Long endTime) { |
|
|
|
//查询碳配额买入碳资产 |
|
|
|
//查询碳配额这段时间的账户总额度 |
|
|
|
List<QyCarbonQuotaInfoDTO> carbonQuotaList = qyCarbonQuotaInfoService.getMapper().selectListByQueryAs( |
|
|
|
QueryWrapper.create() |
|
|
|
.ge(QyCarbonQuotaInfoEntity::getIssueDate, startTime) |
|
|
|
.lt(QyCarbonQuotaInfoEntity::getIssueDate, endTime) |
|
|
|
, QyCarbonQuotaInfoDTO.class); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//查询CCER这段时间的账户总额度 |
|
|
|
List<QyCcerInfoDTO> ccerInfoList = qyCcerInfoService.getMapper().selectListByQueryAs( |
|
|
|
QueryWrapper.create().ge(QyCcerInfoEntity::getIssueDate, startTime) |
|
|
|
.lt(QyCcerInfoEntity::getIssueDate, endTime) |
|
|
|
, QyCcerInfoDTO.class); |
|
|
|
|
|
|
|
//查询绿证这段时间的账户总额度 |
|
|
|
List<QyCcerInfoDTO> ccerInfoDTOList = qyGreenCertificateInfoService.getMapper().selectListByQueryAs( |
|
|
|
QueryWrapper.create().ge(QyGreenCertificateInfoEntity::getIssueDate, startTime) |
|
|
|
.lt(QyGreenCertificateInfoEntity::getIssueDate, endTime) |
|
|
|
, QyCcerInfoDTO.class); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
|
==============================统计买入量============================================================== |
|
|
|
*/ |
|
|
|
//查询碳配额买入碳资产 |
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
/* QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY) |
|
|
|
.where("issue_date >= '" + startTime + "' AND issue_date <'" + endTime + "'") |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"1"); |
|
|
|
//numTotal 为碳配额中买入碳资产量 |
|
|
|
String carbonTotal = mapper.selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
String carbonTotal = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper, String.class); |
|
|
|
|
|
|
|
//查询ccer买入碳资产 |
|
|
|
QueryWrapper queryWrapper1 = QueryWrapper.create() |
|
|
|
@ -284,11 +310,11 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("date_issue >= '" + startTime + "' AND date_issue < '" + endTime + "'") |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"1"); |
|
|
|
//greenTotal 为绿证买入碳资产量 |
|
|
|
String greenTotal = mapper.selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
String greenTotal = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper2, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==============================统计核销量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额核销量 |
|
|
|
QueryWrapper queryWrapper3 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.VERIFICATION_VOLUME).as("total")) |
|
|
|
@ -296,7 +322,7 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("verification_date >= '" + startTime + "' AND verification_date <= '" + endTime + "'") |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"2"); |
|
|
|
//carbonVolume 为碳配额核销量 |
|
|
|
String carbonVolume = mapper.selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
String carbonVolume = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
|
|
|
|
//查询ccer核销量 |
|
|
|
QueryWrapper queryWrapper4 = QueryWrapper.create() |
|
|
|
@ -314,11 +340,11 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("verification_date >= '" + startTime + "' AND verification_date <= '" + endTime + "'") |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"2"); |
|
|
|
//greenVolume 为绿证核销量 |
|
|
|
String greenVolume = mapper.selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
String greenVolume = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==============================统计发放量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额卖出量 |
|
|
|
QueryWrapper queryWrapper6 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
@ -326,7 +352,7 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("issue_date >= '" + startTime + "' AND issue_date <= '" + endTime + "'") |
|
|
|
.eq(QyCarbonQuotaInfoEntity::getAssetState,"3"); |
|
|
|
//carbonSell 为碳配额卖出 |
|
|
|
String carbonSell = mapper.selectOneByQueryAs(queryWrapper6, String.class); |
|
|
|
String carbonSell = qyCarbonQuotaInfoService.getMapper().selectOneByQueryAs(queryWrapper6, String.class); |
|
|
|
|
|
|
|
//查询ccer卖出量 |
|
|
|
QueryWrapper queryWrapper7 = QueryWrapper.create() |
|
|
|
@ -344,11 +370,11 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("date_issue >= '" + startTime + "' AND date_issue <= '" + endTime + "'") |
|
|
|
.eq(QyGreenCertificateInfoEntity::getAssetState,"3"); |
|
|
|
//greenSell 为绿证卖出 |
|
|
|
String greenSell = mapper.selectOneByQueryAs(queryWrapper8, String.class); |
|
|
|
String greenSell = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper8, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==================================碳配额数量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额量总量 |
|
|
|
QueryWrapper queryWrapper9 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
@ -356,9 +382,9 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY); |
|
|
|
//numTotal 为碳配额量总量 |
|
|
|
String carbonSum = mapper.selectOneByQueryAs(queryWrapper9, String.class); |
|
|
|
/* |
|
|
|
*//* |
|
|
|
==================================CCER数量==================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询ccer总量 |
|
|
|
QueryWrapper queryWrapper11 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
@ -366,20 +392,20 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.from(QY_CCER_INFO_ENTITY); |
|
|
|
//ccerNum 为ccer总量 |
|
|
|
String ccerSum= mapper.selectOneByQueryAs(queryWrapper11, String.class); |
|
|
|
/* |
|
|
|
*//* |
|
|
|
====================================绿证数量===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询绿证总量 |
|
|
|
QueryWrapper queryWrapper13 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
.where("date_issue >= '" + startTime + "' AND date_issue <= '" + endTime + "'") |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY); |
|
|
|
//greenTotal 为绿证总量 |
|
|
|
String greenSum = mapper.selectOneByQueryAs(queryWrapper13, String.class); |
|
|
|
String greenSum = qyGreenCertificateInfoService.getMapper().selectOneByQueryAs(queryWrapper13, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
======================================统计账户总余额======================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//统计碳配额总余额 |
|
|
|
BigDecimal carbonAccount = new BigDecimal(carbonSum).subtract(new BigDecimal(carbonVolume)); |
|
|
|
//统计ccer总余额 |
|
|
|
@ -395,16 +421,16 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
BigDecimal verTotal = new BigDecimal(greenVolume).multiply(new BigDecimal("0.5703")).add(new BigDecimal(carbonVolume)).add(new BigDecimal(ccerVolume)); |
|
|
|
//总卖出碳资产 |
|
|
|
BigDecimal sellTotal = new BigDecimal(greenSell).multiply(new BigDecimal("0.5703")).add(new BigDecimal(carbonSell)).add(new BigDecimal(ccerSell)); |
|
|
|
|
|
|
|
*/ |
|
|
|
//存入结果 |
|
|
|
HashMap<String, String> temMap = new HashMap<>(); |
|
|
|
//返回结果 买入 核销 卖出 |
|
|
|
temMap.put("buy", buyTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : buyTotal.toString()); |
|
|
|
/*temMap.put("buy", buyTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : buyTotal.toString()); |
|
|
|
temMap.put("ver", verTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : verTotal.toString()); |
|
|
|
temMap.put("sell", sellTotal.compareTo(BigDecimal.ZERO) == 0 ? "0" : sellTotal.toString()); |
|
|
|
//账户余额 |
|
|
|
temMap.put("carbonRemain",remain.toString()); |
|
|
|
return temMap; |
|
|
|
temMap.put("carbonRemain",remain.toString());*/ |
|
|
|
return null; |
|
|
|
} |
|
|
|
/** |
|
|
|
* 获取碳资产对应标签的单价,数量,余额,账户总余额 |
|
|
|
@ -413,7 +439,7 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
@Override |
|
|
|
public Map<String, String> calculateAsset(String startTime, String endTime) { |
|
|
|
|
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
/* QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select( |
|
|
|
QY_CARBON_QUOTA_INFO_ENTITY.ISSUE_DATE.as("deal_time"), |
|
|
|
QY_CARBON_QUOTA_INFO_ENTITY.PRICE |
|
|
|
@ -443,9 +469,9 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
==================================碳配额数量和金额 ===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额量总量 |
|
|
|
QueryWrapper queryWrapper = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.CARBON_QUOTA).as("total")) |
|
|
|
@ -460,9 +486,9 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.from(QY_CARBON_QUOTA_INFO_ENTITY); |
|
|
|
// sum 为碳配额总金额 |
|
|
|
String carbonPrice = mapper.selectOneByQueryAs(queryWrapper1, String.class); |
|
|
|
/* |
|
|
|
*//* |
|
|
|
==================================CCER数量和金额==================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询ccer总量 |
|
|
|
QueryWrapper queryWrapper2 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CCER_INFO_ENTITY.RECORD_EMISSION).as("total")) |
|
|
|
@ -478,9 +504,9 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
//sum1 为ccer总金额 |
|
|
|
String ccerPrice= mapper.selectOneByQueryAs(queryWrapper3, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
====================================绿证数量和金额===================================================================== |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询绿证总量 |
|
|
|
QueryWrapper queryWrapper4 = QueryWrapper.create() |
|
|
|
.select(sum(QY_GREEN_CERTIFICATE_INFO_ENTITY.GREEN_TOTAL).as("total")) |
|
|
|
@ -496,9 +522,9 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
// sum2 为绿证总金额 |
|
|
|
String greenPrice = mapper.selectOneByQueryAs(queryWrapper5, String.class); |
|
|
|
|
|
|
|
/* |
|
|
|
*//* |
|
|
|
====================================核销量================================================================= |
|
|
|
*/ |
|
|
|
*//* |
|
|
|
//查询碳配额核销量 |
|
|
|
QueryWrapper queryWrapper6 = QueryWrapper.create() |
|
|
|
.select(sum(QY_CARBON_QUOTA_INFO_ENTITY.VERIFICATION_VOLUME).as("total")) |
|
|
|
@ -522,13 +548,13 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
.where("verification_date >= '" + startTime + "' AND verification_date <= '" + endTime + "'") |
|
|
|
.from(QY_GREEN_CERTIFICATE_INFO_ENTITY); |
|
|
|
//greenVer 为绿证核销量 |
|
|
|
String greenVer = mapper.selectOneByQueryAs(queryWrapper8, String.class); |
|
|
|
String greenVer = mapper.selectOneByQueryAs(queryWrapper8, String.class);*/ |
|
|
|
|
|
|
|
/* |
|
|
|
======================================统计账户总余额======================================================== |
|
|
|
*/ |
|
|
|
//统计碳配额总余额 |
|
|
|
BigDecimal carbonAccount = new BigDecimal(carbonTotal).subtract(new BigDecimal(carbonVer)); |
|
|
|
/* BigDecimal carbonAccount = new BigDecimal(carbonTotal).subtract(new BigDecimal(carbonVer)); |
|
|
|
//统计ccer总余额 |
|
|
|
BigDecimal ccerAccount = new BigDecimal(ccerTotal).subtract(new BigDecimal(ccerVer)); |
|
|
|
//统计绿证总余额 |
|
|
|
@ -559,10 +585,10 @@ public class QyCarbonAssetServiceImpl extends BaseServiceImpl<QyCarbonAssetMappe |
|
|
|
temMap.put("ccerRemain",ccerAccount.toString()); |
|
|
|
//绿证金额,总余额 |
|
|
|
temMap.put("greenPrice", StringUtils.isBlank(greenPrice) ? "0" : greenPrice); |
|
|
|
temMap.put("greenRemain",greenAccount.toString()); |
|
|
|
temMap.put("greenRemain",greenAccount.toString());*/ |
|
|
|
|
|
|
|
|
|
|
|
return temMap; |
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
} |