diff --git a/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java b/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java
index d86be70..40d0c4b 100644
--- a/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java
+++ b/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java
@@ -108,7 +108,7 @@ public enum SickHelpCalc {
double subsidyRatio = 0d;
//年度补助最高金额
- double maxSubsidyMoney = 30000.00;
+ double maxSubsidyMoney = 60000.00;
//自付金额
double spd = sr.getSelfPayMoney().doubleValue();
@@ -134,68 +134,99 @@ public enum SickHelpCalc {
int howManyDidNotApplyYears = sickHelpApply.howManyYearsDidNotApply(sr.getLoginName(), calcYear);
- if (howManyDidNotApplyYears >= 15) {
- otherSubsidyRatio = 0.1d;
- sr.setSubsidyDesc("满十五年且未补助");
- } else if (howManyDidNotApplyYears >= 5) {
- otherSubsidyRatio = howManyDidNotApplyYears >= 10 ? 0.1d : howManyDidNotApplyYears * 0.01;
- sr.setSubsidyDesc("满五年且未补助");
+
+ if (howManyDidNotApplyYears >= 5) {
+ otherSubsidyRatio = Math.min(howManyDidNotApplyYears, 10) * 0.01;
+ sr.setSubsidyDesc("满" + howManyDidNotApplyYears + "年且未补助");
}
+// if (howManyDidNotApplyYears >= 15) {
+// otherSubsidyRatio = 0.1d;
+// sr.setSubsidyDesc("满十五年且未补助");
+// } else if (howManyDidNotApplyYears >= 5) {
+// otherSubsidyRatio = howManyDidNotApplyYears >= 10 ? 0.1d : howManyDidNotApplyYears * 0.01;
+// sr.setSubsidyDesc("满五年且未补助");
+// }
+
sr.setOtherSubsidyRatio(otherSubsidyRatio);
//按照比例算出来的钱
double subsidyMoney = 0.00d;
- if (spd > 30000) {
- subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((20000 - 10000) * (0.40d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((30000 - 20000) * (0.50d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((spd - 30000) * (0.60d + otherSubsidyRatio));
+
+ /**
+ * 具体补助标准为:
+ * (一)超过1万元―5万元(不含1万元)之间的部分,补助比例为30%。
+ * (二)5万元―10万元(不含5万元)之间的部分,补助比例为40%。
+ * (三)10万元以上的部分(不含10万元)补助比例为50%。
+ * (四)个人年度分段累计获得补助最高限额为6万元。
+ * (五)对于连续参加互助会满5年未申请补助的会员,在申请补助时比例可增加5%,并逐年递增1%,最高递增比例可达10%。
+ */
+ if (spd > 100000) {
+ subsidyMoney = subsidyMoney + ((50000 - 10000) * (0.30d + otherSubsidyRatio));
+ subsidyMoney = subsidyMoney + ((100000 - 50000) * (0.40d + otherSubsidyRatio));
+ subsidyMoney = subsidyMoney + ((spd - 100000) * (0.50d + otherSubsidyRatio));
+ }else if (spd > 50000) {
+ subsidyMoney = subsidyMoney + ((50000 - 10000) * (0.30d + otherSubsidyRatio));
+ subsidyMoney = subsidyMoney + ((spd - 50000) * (0.40d + otherSubsidyRatio));
+ }else if (spd > 10000) {
+ subsidyMoney = subsidyMoney + ((spd - 10000) * (0.30d + otherSubsidyRatio));
}
- if (spd > 20000 && spd <= 30000) {
- subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((20000 - 10000) * (0.40d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((spd - 20000) * (0.50d + otherSubsidyRatio));
- }
+// if (spd > 30000) {
+// subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((20000 - 10000) * (0.40d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((30000 - 20000) * (0.50d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((spd - 30000) * (0.60d + otherSubsidyRatio));
+// }
+//
+// if (spd > 20000 && spd <= 30000) {
+// subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((20000 - 10000) * (0.40d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((spd - 20000) * (0.50d + otherSubsidyRatio));
+// }
+//
+// if (spd > 10000 && spd <= 20000) {
+// subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
+// subsidyMoney = subsidyMoney + ((spd - 10000) * (0.40d + otherSubsidyRatio));
+// }
+//
+// if (spd > 4000 && spd <= 10000) {
+// subsidyMoney = subsidyMoney + ((spd - 4000) * (0.25d + otherSubsidyRatio));
+// }
- if (spd > 10000 && spd <= 20000) {
- subsidyMoney = subsidyMoney + ((10000 - 4000) * (0.25d + otherSubsidyRatio));
- subsidyMoney = subsidyMoney + ((spd - 10000) * (0.40d + otherSubsidyRatio));
- }
-
- if (spd > 4000 && spd <= 10000) {
- subsidyMoney = subsidyMoney + ((spd - 4000) * (0.25d + otherSubsidyRatio));
+ //个人年度分段累计获得补助最高限额为6万元。
+ if (subsidyMoney > maxSubsidyMoney) {
+ subsidyMoney = maxSubsidyMoney;
}
sr.setNoLimitSubsidyMoney(NumberUtil.round(subsidyMoney, 2, RoundingMode.UP));
+ sr.setSubsidyMoney(NumberUtil.round(subsidyMoney, 0, RoundingMode.UP));
- if (subsidyMoney > 30000) {
- if (howManyDidNotApplyYears >= 15) {
- sr.setSubsidyMoney(NumberUtil.round(subsidyMoney, 0, RoundingMode.UP));
- } else {
- sr.setSubsidyMoney(NumberUtil.round(30000, 0, RoundingMode.UP));
- }
- } else {
- sr.setSubsidyMoney(NumberUtil.round(subsidyMoney, 0, RoundingMode.UP));
- }
+// if (subsidyMoney > 30000) {
+// if (howManyDidNotApplyYears >= 15) {
+// sr.setSubsidyMoney(NumberUtil.round(subsidyMoney, 0, RoundingMode.UP));
+// } else {
+// sr.setSubsidyMoney(NumberUtil.round(30000, 0, RoundingMode.UP));
+// }
+// } else {
+// sr.setSubsidyMoney(NumberUtil.round(subsidyMoney, 0, RoundingMode.UP));
+// }
sr.setIsAccept(null);
//补助说明
-
- if (otherSubsidyRatio == 0.05) {
- sr.setSubsidyDesc("满五年且未补助");
- } else if (otherSubsidyRatio == 0.15) {
- sr.setSubsidyDesc("满十五年且未补助");
- } else if (otherSubsidyRatio == 0) {
- if (sr.getLastTimeSubsidyYear() == null) {
- sr.setSubsidyDesc("未满五年");
- } else {
- sr.setSubsidyDesc("是");
- }
- }
+// if (otherSubsidyRatio == 0.05) {
+// sr.setSubsidyDesc("满五年且未补助");
+// } else if (otherSubsidyRatio == 0.15) {
+// sr.setSubsidyDesc("满十五年且未补助");
+// } else if (otherSubsidyRatio == 0) {
+// if (sr.getLastTimeSubsidyYear() == null) {
+// sr.setSubsidyDesc("未满五年");
+// } else {
+// sr.setSubsidyDesc("是");
+// }
+// }
return sr;
}
diff --git a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java
index eda84f8..711fdc1 100644
--- a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java
+++ b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java
@@ -38,9 +38,10 @@ public class SickHelpImportController {
static {
// excelTemplateEntityList.add(new ExcelExportEntity("申报年度", "year", 20));
- excelTemplateEntityList.add(new ExcelExportEntity("人员代码", "loginName", 20));
+ excelTemplateEntityList.add(new ExcelExportEntity("工号", "loginName", 20));
excelTemplateEntityList.add(new ExcelExportEntity("姓名", "userName", 20));
// excelTemplateEntityList.add(new ExcelExportEntity("单位", "unitName", 20));
+ excelTemplateEntityList.add(new ExcelExportEntity("两项自付之和金额(元)", "selfPayTotalMoney", 25));
excelTemplateEntityList.add(new ExcelExportEntity("个人支付金额(元)", "selfPayMoney", 20));
// excelTemplateEntityList.add(new ExcelExportEntity("账号", "hospitalAccount", 20));
// excelTemplateEntityList.add(new ExcelExportEntity("补助金额(元)", "", 20));
diff --git a/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java b/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java
index b7c36d5..1db3636 100644
--- a/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java
+++ b/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java
@@ -33,7 +33,7 @@ public class SickHelp {
@Column
@Comment("工号")
@ColDefine(type = ColType.VARCHAR, width = 50)
- @Excel(name = "人员代码", width = 20)
+ @Excel(name = "工号", width = 20)
private String loginName;
@Column
@@ -73,6 +73,13 @@ public class SickHelp {
@JsonField(forceString = true)
private BigDecimal selfPayMoney;
+ @Column
+ @Comment("两项自付之和金额(元)")
+ @ColDefine(type = ColType.FLOAT, width = 10, precision = 2)
+ @Excel(name = "两项自付之和金额(元)", numFormat = "#.##", width = 20)
+ @JsonField(forceString = true)
+ private BigDecimal selfPayTotalMoney;
+
@Column
@Comment("按照比例计算的补助金额(元)")
@ColDefine(type = ColType.FLOAT, width = 10, precision = 2)
diff --git a/src/main/resources/views/platform/sickHelp/import/excel.html b/src/main/resources/views/platform/sickHelp/import/excel.html
index be05ab5..438f198 100644
--- a/src/main/resources/views/platform/sickHelp/import/excel.html
+++ b/src/main/resources/views/platform/sickHelp/import/excel.html
@@ -103,7 +103,9 @@ layout("/layouts/platform.html"){
-
+
+
+