|
@@ -120,7 +120,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
|
|
|
|
//需要更新成本的人员数据
|
|
//需要更新成本的人员数据
|
|
List<User> updateUserList = new ArrayList<>();
|
|
List<User> updateUserList = new ArrayList<>();
|
|
- LocalDate now = LocalDate.now();
|
|
|
|
|
|
+
|
|
String startStr = yearMonth + "-01";
|
|
String startStr = yearMonth + "-01";
|
|
String endStr = yearMonth + "-31";
|
|
String endStr = yearMonth + "-31";
|
|
//获取人员该月份填写的日报的总时长
|
|
//获取人员该月份填写的日报的总时长
|
|
@@ -134,7 +134,6 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
//由于第一行需要指明列对应的标题
|
|
//由于第一行需要指明列对应的标题
|
|
int rowNum = sheet.getLastRowNum();
|
|
int rowNum = sheet.getLastRowNum();
|
|
for (int rowIndex = 0; rowIndex <= sheet.getLastRowNum(); rowIndex++) {
|
|
for (int rowIndex = 0; rowIndex <= sheet.getLastRowNum(); rowIndex++) {
|
|
-
|
|
|
|
Row row = sheet.getRow(rowIndex);
|
|
Row row = sheet.getRow(rowIndex);
|
|
if (row == null) {
|
|
if (row == null) {
|
|
continue;
|
|
continue;
|
|
@@ -142,7 +141,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
if (ExcelUtil.isRowEmpty(row)) {
|
|
if (ExcelUtil.isRowEmpty(row)) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- //姓名 工资 奖金 津贴 养老保险 医疗保险 失业保险 住房公积金 其他; 可能有自定义的项
|
|
|
|
|
|
+ //姓名 工资 奖金 津贴 养老保险 医疗保险 失业保险 (新增工伤保险) 住房公积金 其他; 可能有自定义的项
|
|
Cell nameCell = row.getCell(0);
|
|
Cell nameCell = row.getCell(0);
|
|
Cell salaryCell = row.getCell(1);
|
|
Cell salaryCell = row.getCell(1);
|
|
Cell bonusCell = row.getCell(2);
|
|
Cell bonusCell = row.getCell(2);
|
|
@@ -150,8 +149,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
Cell inOldCell = row.getCell(4);
|
|
Cell inOldCell = row.getCell(4);
|
|
Cell inMedicalCell = row.getCell(5);
|
|
Cell inMedicalCell = row.getCell(5);
|
|
Cell inJobCell = row.getCell(6);
|
|
Cell inJobCell = row.getCell(6);
|
|
- Cell houseFundCell = row.getCell(7);
|
|
|
|
- Cell otherCell = row.getCell(8);
|
|
|
|
|
|
+ Cell injuryCell = row.getCell(7);
|
|
|
|
+ Cell houseFundCell = row.getCell(8);
|
|
|
|
+// Cell otherCell = row.getCell(9);
|
|
Cell field1 = cusColList.size() > 0?row.getCell(9):null;
|
|
Cell field1 = cusColList.size() > 0?row.getCell(9):null;
|
|
Cell field2 = cusColList.size() > 1?row.getCell(10):null;
|
|
Cell field2 = cusColList.size() > 1?row.getCell(10):null;
|
|
Cell field3 = cusColList.size() > 2?row.getCell(11):null;
|
|
Cell field3 = cusColList.size() > 2?row.getCell(11):null;
|
|
@@ -165,15 +165,21 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
inMedicalCell.setCellType(CellType.STRING);
|
|
inMedicalCell.setCellType(CellType.STRING);
|
|
inJobCell.setCellType(CellType.STRING);
|
|
inJobCell.setCellType(CellType.STRING);
|
|
houseFundCell.setCellType(CellType.STRING);
|
|
houseFundCell.setCellType(CellType.STRING);
|
|
- if (otherCell != null)otherCell.setCellType(CellType.STRING);
|
|
|
|
|
|
+// if (otherCell != null)otherCell.setCellType(CellType.STRING);
|
|
if (field1 != null)field1.setCellType(CellType.STRING);
|
|
if (field1 != null)field1.setCellType(CellType.STRING);
|
|
if (field2 != null)field2.setCellType(CellType.STRING);
|
|
if (field2 != null)field2.setCellType(CellType.STRING);
|
|
if (field3 != null)field3.setCellType(CellType.STRING);
|
|
if (field3 != null)field3.setCellType(CellType.STRING);
|
|
|
|
|
|
String name = nameCell.getStringCellValue().trim().replaceAll("\\u00a0", "");
|
|
String name = nameCell.getStringCellValue().trim().replaceAll("\\u00a0", "");
|
|
Finance finance = new Finance();
|
|
Finance finance = new Finance();
|
|
|
|
+
|
|
if (name.equals("姓名") && rowIndex == 0) {
|
|
if (name.equals("姓名") && rowIndex == 0) {
|
|
//跳过第一行标题
|
|
//跳过第一行标题
|
|
|
|
+ if (!"工伤保险".equals(injuryCell.getStringCellValue())) {
|
|
|
|
+ //缺少工伤保险,需要新的财务报表模板
|
|
|
|
+ msg.setError("缺少工伤保险栏,请重新下载财务模板填写上传");
|
|
|
|
+ return msg;
|
|
|
|
+ }
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
finance.setCompanyId(companyId);
|
|
finance.setCompanyId(companyId);
|
|
@@ -233,6 +239,13 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
finance.setInsuranceOld(value);
|
|
finance.setInsuranceOld(value);
|
|
total = total.add(value);
|
|
total = total.add(value);
|
|
}
|
|
}
|
|
|
|
+ if (injuryCell != null) {
|
|
|
|
+ injuryCell.setCellType(CellType.STRING);
|
|
|
|
+ String item = injuryCell.getStringCellValue();
|
|
|
|
+ BigDecimal value = item != null ? new BigDecimal(item.trim().replaceAll("\\u00a0", "")) : BigDecimal.valueOf(0);
|
|
|
|
+ finance.setInsuranceInjury(value);
|
|
|
|
+ total = total.add(value);
|
|
|
|
+ }
|
|
if (houseFundCell != null) {
|
|
if (houseFundCell != null) {
|
|
houseFundCell.setCellType(CellType.STRING);
|
|
houseFundCell.setCellType(CellType.STRING);
|
|
String item = houseFundCell.getStringCellValue();
|
|
String item = houseFundCell.getStringCellValue();
|
|
@@ -240,13 +253,13 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
finance.setHouseFund(value);
|
|
finance.setHouseFund(value);
|
|
total = total.add(value);
|
|
total = total.add(value);
|
|
}
|
|
}
|
|
- if (otherCell != null) {
|
|
|
|
- otherCell.setCellType(CellType.STRING);
|
|
|
|
- String item = otherCell.getStringCellValue();
|
|
|
|
- BigDecimal value = item != null ? new BigDecimal(item.trim().replaceAll("\\u00a0", "")) : BigDecimal.valueOf(0);
|
|
|
|
- finance.setOthers(value);
|
|
|
|
- total = total.add(value);
|
|
|
|
- }
|
|
|
|
|
|
+// if (otherCell != null) {
|
|
|
|
+// otherCell.setCellType(CellType.STRING);
|
|
|
|
+// String item = otherCell.getStringCellValue();
|
|
|
|
+// BigDecimal value = item != null ? new BigDecimal(item.trim().replaceAll("\\u00a0", "")) : BigDecimal.valueOf(0);
|
|
|
|
+// finance.setOthers(value);
|
|
|
|
+// total = total.add(value);
|
|
|
|
+// }
|
|
if (field1 != null) {
|
|
if (field1 != null) {
|
|
field1.setCellType(CellType.STRING);
|
|
field1.setCellType(CellType.STRING);
|
|
String item = field1.getStringCellValue();
|
|
String item = field1.getStringCellValue();
|
|
@@ -296,7 +309,10 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
financeList.add(finance);
|
|
financeList.add(finance);
|
|
|
|
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ if (financeList.size() == 0) {
|
|
|
|
+ msg.setError("请填写数据再上传");
|
|
|
|
+ return msg;
|
|
|
|
+ }
|
|
//批量插入
|
|
//批量插入
|
|
financeService.saveOrUpdateBatch(financeList);
|
|
financeService.saveOrUpdateBatch(financeList);
|
|
if (syncUserCost) {
|
|
if (syncUserCost) {
|
|
@@ -384,8 +400,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
BigDecimal totalOld = BigDecimal.valueOf(0);
|
|
BigDecimal totalOld = BigDecimal.valueOf(0);
|
|
BigDecimal totalMedical = BigDecimal.valueOf(0);
|
|
BigDecimal totalMedical = BigDecimal.valueOf(0);
|
|
BigDecimal totalLoseJob = BigDecimal.valueOf(0);
|
|
BigDecimal totalLoseJob = BigDecimal.valueOf(0);
|
|
|
|
+ BigDecimal totalInjury = BigDecimal.valueOf(0);
|
|
BigDecimal totalHouse = BigDecimal.valueOf(0);
|
|
BigDecimal totalHouse = BigDecimal.valueOf(0);
|
|
- BigDecimal totalOther = BigDecimal.valueOf(0);
|
|
|
|
|
|
+// BigDecimal totalOther = BigDecimal.valueOf(0);
|
|
BigDecimal totalField1 = cusColList.size() > 0?BigDecimal.valueOf(0):null;
|
|
BigDecimal totalField1 = cusColList.size() > 0?BigDecimal.valueOf(0):null;
|
|
BigDecimal totalField2 = cusColList.size() > 1?BigDecimal.valueOf(0):null;
|
|
BigDecimal totalField2 = cusColList.size() > 1?BigDecimal.valueOf(0):null;
|
|
BigDecimal totalField3 = cusColList.size() > 2?BigDecimal.valueOf(0):null;
|
|
BigDecimal totalField3 = cusColList.size() > 2?BigDecimal.valueOf(0):null;
|
|
@@ -400,8 +417,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
headList.add("养老保险(元)");
|
|
headList.add("养老保险(元)");
|
|
headList.add("医疗保险(元)");
|
|
headList.add("医疗保险(元)");
|
|
headList.add("失业保险(元)");
|
|
headList.add("失业保险(元)");
|
|
|
|
+ headList.add("工伤保险(元)");
|
|
headList.add("住房公积金(元)");
|
|
headList.add("住房公积金(元)");
|
|
- headList.add("其他(元)");
|
|
|
|
|
|
+// headList.add("其他(元)");
|
|
for (FinanceTblcuscol col : cusColList) {
|
|
for (FinanceTblcuscol col : cusColList) {
|
|
headList.add(col.getFieldName());
|
|
headList.add(col.getFieldName());
|
|
}
|
|
}
|
|
@@ -453,8 +471,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
BigDecimal old = new BigDecimal(0);
|
|
BigDecimal old = new BigDecimal(0);
|
|
BigDecimal medical = new BigDecimal(0);
|
|
BigDecimal medical = new BigDecimal(0);
|
|
BigDecimal loseJob = new BigDecimal(0);
|
|
BigDecimal loseJob = new BigDecimal(0);
|
|
|
|
+ BigDecimal injury = new BigDecimal(0);
|
|
BigDecimal house = new BigDecimal(0);
|
|
BigDecimal house = new BigDecimal(0);
|
|
- BigDecimal other = new BigDecimal(0);
|
|
|
|
|
|
+// BigDecimal other = new BigDecimal(0);
|
|
BigDecimal field1Item = new BigDecimal(0);
|
|
BigDecimal field1Item = new BigDecimal(0);
|
|
BigDecimal field2Item = new BigDecimal(0);
|
|
BigDecimal field2Item = new BigDecimal(0);
|
|
BigDecimal field3Item = new BigDecimal(0);
|
|
BigDecimal field3Item = new BigDecimal(0);
|
|
@@ -467,12 +486,13 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
old = userFinance.getInsuranceOld().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
old = userFinance.getInsuranceOld().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
medical = userFinance.getInsuranceMedical().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
medical = userFinance.getInsuranceMedical().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
loseJob = userFinance.getInsuranceLosejob().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
loseJob = userFinance.getInsuranceLosejob().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
|
|
+ injury = userFinance.getInsuranceInjury().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
house = userFinance.getHouseFund().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
house = userFinance.getHouseFund().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
- if (userFinance.getOthers() == null) {
|
|
|
|
- other = new BigDecimal(0);
|
|
|
|
- } else {
|
|
|
|
- other = userFinance.getOthers().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
|
|
- }
|
|
|
|
|
|
+// if (userFinance.getOthers() == null) {
|
|
|
|
+// other = new BigDecimal(0);
|
|
|
|
+// } else {
|
|
|
|
+// other = userFinance.getOthers().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
|
|
+// }
|
|
if (userFinance.getCustomField1() != null) {
|
|
if (userFinance.getCustomField1() != null) {
|
|
field1Item = userFinance.getCustomField1().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
field1Item = userFinance.getCustomField1().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
}
|
|
}
|
|
@@ -496,8 +516,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
item.old = item.old.add(old);
|
|
item.old = item.old.add(old);
|
|
item.medical = item.medical.add(medical);
|
|
item.medical = item.medical.add(medical);
|
|
item.loseJob = item.loseJob.add(loseJob);
|
|
item.loseJob = item.loseJob.add(loseJob);
|
|
|
|
+ item.injury = item.injury.add(injury);
|
|
item.house = item.house.add(house);
|
|
item.house = item.house.add(house);
|
|
- item.other = item.other.add(other);
|
|
|
|
|
|
+// item.other = item.other.add(other);
|
|
item.field1 = item.field1.add(field1Item);
|
|
item.field1 = item.field1.add(field1Item);
|
|
item.field2 = item.field2.add(field2Item);
|
|
item.field2 = item.field2.add(field2Item);
|
|
item.field3 = item.field3.add(field3Item);
|
|
item.field3 = item.field3.add(field3Item);
|
|
@@ -513,8 +534,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
item.old = old;
|
|
item.old = old;
|
|
item.medical = medical;
|
|
item.medical = medical;
|
|
item.loseJob = loseJob;
|
|
item.loseJob = loseJob;
|
|
|
|
+ item.injury = injury;
|
|
item.house = house;
|
|
item.house = house;
|
|
- item.other = other;
|
|
|
|
|
|
+// item.other = other;
|
|
item.field1 = field1Item;
|
|
item.field1 = field1Item;
|
|
item.field2 = field2Item;
|
|
item.field2 = field2Item;
|
|
item.field3 = field3Item;
|
|
item.field3 = field3Item;
|
|
@@ -526,8 +548,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
totalOld = totalOld.add(old);
|
|
totalOld = totalOld.add(old);
|
|
totalMedical = totalMedical.add(medical);
|
|
totalMedical = totalMedical.add(medical);
|
|
totalLoseJob = totalLoseJob.add(loseJob);
|
|
totalLoseJob = totalLoseJob.add(loseJob);
|
|
|
|
+ totalInjury = totalInjury.add(injury);
|
|
totalHouse = totalHouse.add(house);
|
|
totalHouse = totalHouse.add(house);
|
|
- totalOther = totalOther.add(other);
|
|
|
|
|
|
+// totalOther = totalOther.add(other);
|
|
if (totalField1 != null) {
|
|
if (totalField1 != null) {
|
|
totalField1 = totalField1.add(field1Item);
|
|
totalField1 = totalField1.add(field1Item);
|
|
}
|
|
}
|
|
@@ -548,8 +571,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
totalOld = totalOld.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalOld = totalOld.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalMedical = totalMedical.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalMedical = totalMedical.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalLoseJob = totalLoseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalLoseJob = totalLoseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
+ totalInjury = totalInjury.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalHouse = totalHouse.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalHouse = totalHouse.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
- totalOther = totalOther.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
+// totalOther = totalOther.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
if (totalField1 != null) {
|
|
if (totalField1 != null) {
|
|
totalField1 = totalField1.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
totalField1 = totalField1.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
}
|
|
}
|
|
@@ -567,8 +591,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
p.old = p.old.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.old = p.old.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.medical = p.medical.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.medical = p.medical.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.loseJob = p.loseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.loseJob = p.loseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
+ p.injury = p.injury.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.house = p.house.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.house = p.house.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
- p.other = p.other.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
+// p.other = p.other.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field1 = p.field1.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field1 = p.field1.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field2 = p.field2.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field2 = p.field2.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field3 = p.field3.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
p.field3 = p.field3.setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
@@ -584,8 +609,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
rowData.add(p.old.toPlainString());
|
|
rowData.add(p.old.toPlainString());
|
|
rowData.add(p.medical.toPlainString());
|
|
rowData.add(p.medical.toPlainString());
|
|
rowData.add(p.loseJob.toPlainString());
|
|
rowData.add(p.loseJob.toPlainString());
|
|
|
|
+ rowData.add(p.injury.toPlainString());
|
|
rowData.add(p.house.toPlainString());
|
|
rowData.add(p.house.toPlainString());
|
|
- rowData.add(p.other.toPlainString());
|
|
|
|
|
|
+// rowData.add(p.other.toPlainString());
|
|
if (cusColList.size() > 0) {
|
|
if (cusColList.size() > 0) {
|
|
rowData.add(p.field1.toPlainString());
|
|
rowData.add(p.field1.toPlainString());
|
|
}
|
|
}
|
|
@@ -621,8 +647,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
BigDecimal old = userFinance.getInsuranceOld().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal old = userFinance.getInsuranceOld().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal medical = userFinance.getInsuranceMedical().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal medical = userFinance.getInsuranceMedical().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal loseJob = userFinance.getInsuranceLosejob().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal loseJob = userFinance.getInsuranceLosejob().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
|
|
+ BigDecimal injury = userFinance.getInsuranceInjury().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal house = userFinance.getHouseFund().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal house = userFinance.getHouseFund().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
- BigDecimal other = userFinance.getOthers() == null?new BigDecimal(0):userFinance.getOthers().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
+// BigDecimal other = userFinance.getOthers() == null?new BigDecimal(0):userFinance.getOthers().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field1 = userFinance.getCustomField1() == null? new BigDecimal(0):userFinance.getCustomField1().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field1 = userFinance.getCustomField1() == null? new BigDecimal(0):userFinance.getCustomField1().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field2 = userFinance.getCustomField2() == null? new BigDecimal(0):userFinance.getCustomField2().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field2 = userFinance.getCustomField2() == null? new BigDecimal(0):userFinance.getCustomField2().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field3 = userFinance.getCustomField3() == null? new BigDecimal(0):userFinance.getCustomField3().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
BigDecimal field3 = userFinance.getCustomField3() == null? new BigDecimal(0):userFinance.getCustomField3().multiply(new BigDecimal(workingTime)).divide(userTime.get(creatorId).workingTime, 4, BigDecimal.ROUND_HALF_UP);
|
|
@@ -634,8 +661,9 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
membRowData.add(old.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(old.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(medical.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(medical.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(loseJob.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(loseJob.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
|
|
+ membRowData.add(injury.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(house.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(house.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
- membRowData.add(other.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
|
|
|
|
+// membRowData.add(other.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
//自定义字段
|
|
//自定义字段
|
|
if (cusColList.size() > 0) {
|
|
if (cusColList.size() > 0) {
|
|
membRowData.add(field1.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
membRowData.add(field1.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
@@ -652,7 +680,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
- String total = totalMoneyCost.toString();
|
|
|
|
|
|
+
|
|
//合计
|
|
//合计
|
|
List<String> sumRow = new ArrayList<String>();
|
|
List<String> sumRow = new ArrayList<String>();
|
|
sumRow.add("合计");
|
|
sumRow.add("合计");
|
|
@@ -664,12 +692,14 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
sumRow.add(totalOld.toString());
|
|
sumRow.add(totalOld.toString());
|
|
sumRow.add(totalMedical.toString());
|
|
sumRow.add(totalMedical.toString());
|
|
sumRow.add(totalLoseJob.toString());
|
|
sumRow.add(totalLoseJob.toString());
|
|
|
|
+ sumRow.add(totalInjury.toString());
|
|
sumRow.add(totalHouse.toString());
|
|
sumRow.add(totalHouse.toString());
|
|
- sumRow.add(totalOther.toString());
|
|
|
|
- sumRow.add(totalMoneyCost.toString());
|
|
|
|
|
|
+// sumRow.add(totalOther.toString());
|
|
|
|
+
|
|
if (cusColList.size() > 0) sumRow.add(totalField1.toString());
|
|
if (cusColList.size() > 0) sumRow.add(totalField1.toString());
|
|
if (cusColList.size() > 1) sumRow.add(totalField2.toString());
|
|
if (cusColList.size() > 1) sumRow.add(totalField2.toString());
|
|
if (cusColList.size() > 2) sumRow.add(totalField3.toString());
|
|
if (cusColList.size() > 2) sumRow.add(totalField3.toString());
|
|
|
|
+ sumRow.add(totalMoneyCost.toString());
|
|
allList.add(sumRow);
|
|
allList.add(sumRow);
|
|
//生成excel文件导出
|
|
//生成excel文件导出
|
|
String fileName = "财务人员成本_"+System.currentTimeMillis();
|
|
String fileName = "财务人员成本_"+System.currentTimeMillis();
|
|
@@ -797,7 +827,6 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public HttpRespMsg getNoProjectUsers(String yearMonth, HttpServletRequest request) {
|
|
public HttpRespMsg getNoProjectUsers(String yearMonth, HttpServletRequest request) {
|
|
-
|
|
|
|
Integer companyId = userMapper.selectById(request.getHeader("Token")).getCompanyId();
|
|
Integer companyId = userMapper.selectById(request.getHeader("Token")).getCompanyId();
|
|
|
|
|
|
//获取月成本列表
|
|
//获取月成本列表
|