|
@@ -13,7 +13,7 @@ import com.xy.entity.DeviceCharging;
|
|
import com.xy.entity.DeviceChargingHistory;
|
|
import com.xy.entity.DeviceChargingHistory;
|
|
import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.SysDictRedis;
|
|
import com.xy.entity.SysDictRedis;
|
|
-import com.xy.mapper.DeviceInfoMapper;
|
|
|
|
|
|
+import com.xy.mapper.DeviceChargingMapper;
|
|
import com.xy.service.DeviceChargingHistoryServiceImpl;
|
|
import com.xy.service.DeviceChargingHistoryServiceImpl;
|
|
import com.xy.service.DeviceChargingServiceImpl;
|
|
import com.xy.service.DeviceChargingServiceImpl;
|
|
import com.xy.service.DeviceInfoServiceImpl;
|
|
import com.xy.service.DeviceInfoServiceImpl;
|
|
@@ -46,7 +46,7 @@ public class DeviceChargingJob {
|
|
|
|
|
|
private MercAccountService mercAccountService;
|
|
private MercAccountService mercAccountService;
|
|
|
|
|
|
- private DeviceInfoMapper deviceInfoMapper;
|
|
|
|
|
|
+ private DeviceChargingMapper deviceChargingMapper;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 扣除设备服务费试用天数
|
|
* 扣除设备服务费试用天数
|
|
@@ -55,7 +55,7 @@ public class DeviceChargingJob {
|
|
*/
|
|
*/
|
|
@XxlJob("deviceChargingX")
|
|
@XxlJob("deviceChargingX")
|
|
public ReturnT<String> deviceChargingX() {
|
|
public ReturnT<String> deviceChargingX() {
|
|
- deviceInfoMapper.updateChargingX(LocalDateTime.now());
|
|
|
|
|
|
+ deviceChargingMapper.updateChargingX();
|
|
log.info("设备试用时间扣除完成~");
|
|
log.info("设备试用时间扣除完成~");
|
|
return ReturnT.SUCCESS;
|
|
return ReturnT.SUCCESS;
|
|
}
|
|
}
|
|
@@ -108,7 +108,6 @@ public class DeviceChargingJob {
|
|
Integer y = Integer.valueOf(sysDictRedisY.getValue());
|
|
Integer y = Integer.valueOf(sysDictRedisY.getValue());
|
|
//开始计费
|
|
//开始计费
|
|
deviceChargingsJMaps.forEach((deviceId, deviceCharging) -> {
|
|
deviceChargingsJMaps.forEach((deviceId, deviceCharging) -> {
|
|
- deviceCharging.setUpdateTime(now);
|
|
|
|
//发起扣款
|
|
//发起扣款
|
|
DeviceInfo deviceInfo = deviceInfosJMaps.get(deviceId);
|
|
DeviceInfo deviceInfo = deviceInfosJMaps.get(deviceId);
|
|
if (deviceInfo.getMercId() == -1) {
|
|
if (deviceInfo.getMercId() == -1) {
|
|
@@ -124,27 +123,22 @@ public class DeviceChargingJob {
|
|
//扣款成功
|
|
//扣款成功
|
|
if (r.getCode() == R.Enum.SUCCESS.getCode()) {
|
|
if (r.getCode() == R.Enum.SUCCESS.getCode()) {
|
|
LocalDateTime newTimeOut = DataTime.toLocal(DataTime.getStringAround(1, 0, 0, 0, 0, 0, DataTime.toString(deviceCharging.getTimeout())));
|
|
LocalDateTime newTimeOut = DataTime.toLocal(DataTime.getStringAround(1, 0, 0, 0, 0, 0, DataTime.toString(deviceCharging.getTimeout())));
|
|
- deviceCharging.setChargingMoney(balance)
|
|
|
|
- .setChargingSumMoney(deviceCharging.getChargingSumMoney() + balance)
|
|
|
|
- .setChargingType(DictSonEnum.DEVICE_CHARGING_100.getKeyInt())
|
|
|
|
- .setStatus(true)
|
|
|
|
|
|
+ deviceCharging.setChargingSumMoney(deviceCharging.getChargingSumMoney() + balance)
|
|
.setTimeout(newTimeOut);
|
|
.setTimeout(newTimeOut);
|
|
DeviceChargingHistory deviceChargingHistory = new DeviceChargingHistory()
|
|
DeviceChargingHistory deviceChargingHistory = new DeviceChargingHistory()
|
|
|
|
+ .createId()
|
|
.setDeviceId(deviceId)
|
|
.setDeviceId(deviceId)
|
|
- .setDeviceType(deviceCharging.getDeviceType())
|
|
|
|
.setChargingMoney(balance)
|
|
.setChargingMoney(balance)
|
|
.setChargingType(DictSonEnum.DEVICE_CHARGING_100.getKeyInt())
|
|
.setChargingType(DictSonEnum.DEVICE_CHARGING_100.getKeyInt())
|
|
- .setStatus(true)
|
|
|
|
- .setCreateTime(now)
|
|
|
|
- .setTimeout(newTimeOut);
|
|
|
|
|
|
+ .setChargingDateTime(newTimeOut)
|
|
|
|
+ .setCreateTime(now);
|
|
deviceChargingHistories.add(deviceChargingHistory);
|
|
deviceChargingHistories.add(deviceChargingHistory);
|
|
}
|
|
}
|
|
//扣款失败
|
|
//扣款失败
|
|
if (r.getCode() == R.Enum.FAIL.getCode()) {
|
|
if (r.getCode() == R.Enum.FAIL.getCode()) {
|
|
- deviceCharging.setStatus(false);
|
|
|
|
//当前时间 - 过期时间 > y && 试用期 <= 0 则冻结设备
|
|
//当前时间 - 过期时间 > y && 试用期 <= 0 则冻结设备
|
|
long day = DataTime.diff(now, deviceCharging.getTimeout(), "d");
|
|
long day = DataTime.diff(now, deviceCharging.getTimeout(), "d");
|
|
- if (day > y && deviceInfo.getChargingX() <= 0) {
|
|
|
|
|
|
+ if (day > y && deviceCharging.getChargingX() <= 0) {
|
|
DeviceInfoDto.Update update = new DeviceInfoDto.Update()
|
|
DeviceInfoDto.Update update = new DeviceInfoDto.Update()
|
|
.setDeviceId(deviceId);
|
|
.setDeviceId(deviceId);
|
|
update.setFreezeStatus(2);
|
|
update.setFreezeStatus(2);
|