|
@@ -38,6 +38,7 @@ import java.io.InputStream;
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
import java.math.RoundingMode;
|
|
|
import java.net.URLEncoder;
|
|
import java.net.URLEncoder;
|
|
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
@@ -75,7 +76,7 @@ public class AssetServiceImpl extends BaseServiceImpl<AssetMapper, AssetEntity>
|
|
|
// 仪器设置的算法:当前时间为2025年01月-2024年5月,差额为9个月,因为折旧从次月开始,所以已使用月数为8个月(即9-1=8),再将使用寿命-已使用月份数=0时,即已足额折旧。
|
|
// 仪器设置的算法:当前时间为2025年01月-2024年5月,差额为9个月,因为折旧从次月开始,所以已使用月数为8个月(即9-1=8),再将使用寿命-已使用月份数=0时,即已足额折旧。
|
|
|
// 无形资产:当月即摊销,不需要-1
|
|
// 无形资产:当月即摊销,不需要-1
|
|
|
|
|
|
|
|
- long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(cn.hutool.core.date.DateUtil.date(), asset.getKssj(), false);
|
|
|
|
|
|
|
+ long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(DateUtil.parse(asset.getYearAndMonth(), DateUtil.PATTERN_YYYYMM) , asset.getKssj(), false);
|
|
|
// 这里
|
|
// 这里
|
|
|
if (!isFixedAsset(asset.getZclb())) {
|
|
if (!isFixedAsset(asset.getZclb())) {
|
|
|
ysysm++;
|
|
ysysm++;
|
|
@@ -87,8 +88,8 @@ public class AssetServiceImpl extends BaseServiceImpl<AssetMapper, AssetEntity>
|
|
|
|
|
|
|
|
// public static void main(String[] args) {
|
|
// public static void main(String[] args) {
|
|
|
//
|
|
//
|
|
|
-//// long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(DateUtil.parse("202501", DateUtil.PATTERN_YYYYMM), DateUtil.parse("202405", DateUtil.PATTERN_YYYYMM), true);
|
|
|
|
|
-// long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(new Date(), new Date(), true);
|
|
|
|
|
|
|
+// long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(DateUtil.parse("202501", DateUtil.PATTERN_YYYYMM), DateUtil.parse("2024-05-01", DateUtil.PATTERN_DATE), false);
|
|
|
|
|
+//// long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(new Date(), new Date(), true);
|
|
|
// System.out.println(ysysm);
|
|
// System.out.println(ysysm);
|
|
|
// }
|
|
// }
|
|
|
|
|
|
|
@@ -264,11 +265,11 @@ public class AssetServiceImpl extends BaseServiceImpl<AssetMapper, AssetEntity>
|
|
|
|
|
|
|
|
|
|
|
|
|
if (Func.equals(dbAsset.getStatus(), AssetStatusEnum.正常.getCode()) || Func.equals(dbAsset.getStatus(), AssetStatusEnum.停用.getCode())) {
|
|
if (Func.equals(dbAsset.getStatus(), AssetStatusEnum.正常.getCode()) || Func.equals(dbAsset.getStatus(), AssetStatusEnum.停用.getCode())) {
|
|
|
- if (Func.isNull(asset.getYsysm())) {
|
|
|
|
|
|
|
+// if (Func.isNull(asset.getYsysm())) {
|
|
|
//使用寿命-已使用月份数=0时,即已足额折旧
|
|
//使用寿命-已使用月份数=0时,即已足额折旧
|
|
|
// 仪器设置的算法:当前时间为2025年01月-2024年5月,差额为9个月,因为折旧从次月开始,所以已使用月数为8个月(即9-1=8),再将使用寿命-已使用月份数=0时,即已足额折旧。
|
|
// 仪器设置的算法:当前时间为2025年01月-2024年5月,差额为9个月,因为折旧从次月开始,所以已使用月数为8个月(即9-1=8),再将使用寿命-已使用月份数=0时,即已足额折旧。
|
|
|
// 无形资产:当月即摊销,不需要-1
|
|
// 无形资产:当月即摊销,不需要-1
|
|
|
- long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(cn.hutool.core.date.DateUtil.date(), asset.getKssj(), false);
|
|
|
|
|
|
|
+ long ysysm = cn.hutool.core.date.DateUtil.betweenMonth(DateUtil.parse(asset.getYearAndMonth(), DateUtil.PATTERN_YYYYMM), asset.getKssj(), false);
|
|
|
// 这里
|
|
// 这里
|
|
|
if (!Func.equals("仪器设备", asset.getZclb())) {
|
|
if (!Func.equals("仪器设备", asset.getZclb())) {
|
|
|
ysysm++;
|
|
ysysm++;
|
|
@@ -278,7 +279,7 @@ public class AssetServiceImpl extends BaseServiceImpl<AssetMapper, AssetEntity>
|
|
|
if (asset.getSysm() - asset.getYsysm() <= 0) {
|
|
if (asset.getSysm() - asset.getYsysm() <= 0) {
|
|
|
asset.setStatus(AssetStatusEnum.已足额折旧.getCode());
|
|
asset.setStatus(AssetStatusEnum.已足额折旧.getCode());
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
|
|
+// }
|
|
|
return this.updateById(asset);
|
|
return this.updateById(asset);
|
|
|
}
|
|
}
|
|
|
|
|
|