Просмотр исходного кода

[电表管理][修改][定时任务]

release_toaliyun_real
gongbiao 6 лет назад
Родитель
Сommit
eda8682a47
1 измененных файлов: 22 добавлений и 11 удалений
  1. +22
    -11
      mallinkSchedule/src/main/java/com/iformall/schedule/PowerBillAutoBuildSchedule.java

+ 22
- 11
mallinkSchedule/src/main/java/com/iformall/schedule/PowerBillAutoBuildSchedule.java Просмотреть файл

@@ -1,5 +1,6 @@
package com.iformall.schedule; package com.iformall.schedule;


import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.iformall.domain.dto.KwMeterDataDto; import com.iformall.domain.dto.KwMeterDataDto;
import com.iformall.domain.po.*; import com.iformall.domain.po.*;
@@ -91,35 +92,45 @@ public class PowerBillAutoBuildSchedule {
Date lastdate = monthDate.get("lastdate"); Date lastdate = monthDate.get("lastdate");
MallUserInfo mallUserInfo = getMallUserInfo(); MallUserInfo mallUserInfo = getMallUserInfo();
WxBillDaily wxBillDaily = getBillDaily(wxMerchantPowerBillConfig); WxBillDaily wxBillDaily = getBillDaily(wxMerchantPowerBillConfig);
JSONObject priceDetal = new JSONObject();
Date receiveDate = getReceiveDate(Integer.parseInt(wxPowerBillAutoConfig.getReceiveDay())); Date receiveDate = getReceiveDate(Integer.parseInt(wxPowerBillAutoConfig.getReceiveDay()));
long receivePay = 0L;
long receivePay;
String unitPrice;
long usedPower = 0L;
Long merchantId = wxMerchantPowerBillConfig.getMerchantId(); Long merchantId = wxMerchantPowerBillConfig.getMerchantId();
if (wxMerchantPowerBillConfig.getBuildWay().equals(EnumPowerBillBuildWay.METER.getCode())) { if (wxMerchantPowerBillConfig.getBuildWay().equals(EnumPowerBillBuildWay.METER.getCode())) {
//根据日期拉取电量 单价 * 电量 = 电费 //根据日期拉取电量 单价 * 电量 = 电费
int usedPower = getUsedPower(startdate, lastdate, merchantId);
usedPower = getUsedPower(startdate, lastdate, merchantId);
if (usedPower == 0) { if (usedPower == 0) {
logger.info("没有电量使用,不生成账单>>>>商户ID:" + merchantId); logger.info("没有电量使用,不生成账单>>>>商户ID:" + merchantId);
return; return;
} }
String price = wxMerchantPowerBillConfig.getPrice();
priceDetal.put("unitPrice", price);
priceDetal.put("power", usedPower);
receivePay = new BigDecimal(price).multiply(new BigDecimal(100))
//按电表 单价从商户配置表中取 因为会修改
unitPrice = wxMerchantPowerBillConfig.getPrice();
receivePay = new BigDecimal(unitPrice).multiply(new BigDecimal(100))
.multiply(new BigDecimal(usedPower)).longValue(); .multiply(new BigDecimal(usedPower)).longValue();
} else { } else {
String unitPrice = wxPowerBillAutoConfig.getUnitPrice();
//按固定金额 单位从统一配置表中取
unitPrice = wxPowerBillAutoConfig.getUnitPrice();
String price = wxMerchantPowerBillConfig.getPrice(); String price = wxMerchantPowerBillConfig.getPrice();
priceDetal.put("unitPrice", unitPrice);
priceDetal.put("power", 0);
receivePay = new BigDecimal(price).multiply(new BigDecimal(100)).longValue(); receivePay = new BigDecimal(price).multiply(new BigDecimal(100)).longValue();
} }

JSONArray priceDetals = new JSONArray();
JSONObject priceDetal = new JSONObject();
priceDetal.put("key", "unitPrice");
priceDetal.put("value", unitPrice);
priceDetals.add(priceDetal);
priceDetal = new JSONObject();
priceDetal.put("key", "power");
priceDetal.put("value", usedPower);
priceDetals.add(priceDetal);

wxBillDaily.setReceivePay(receivePay); wxBillDaily.setReceivePay(receivePay);
wxBillDaily.setNeedPay(receivePay); wxBillDaily.setNeedPay(receivePay);
wxBillDaily.setReceiveDate(receiveDate); wxBillDaily.setReceiveDate(receiveDate);
wxBillDaily.setStarttime(startdate); wxBillDaily.setStarttime(startdate);
wxBillDaily.setEndtime(enddate); wxBillDaily.setEndtime(enddate);
wxBillDaily.setPriceDetail(priceDetal.toJSONString());
wxBillDaily.setPriceDetail(priceDetals.toJSONString());
wxBillDailyService.saveOrUpdate(wxBillDaily, mallUserInfo); wxBillDailyService.saveOrUpdate(wxBillDaily, mallUserInfo);


} }


Загрузка…
Отмена
Сохранить