Browse Source

费用报销导入税率税额处理。 导出已填工时情况表时,部门不显示

seyason 2 years ago
parent
commit
c75c97ded0

+ 4 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ExpenseSheetServiceImpl.java

@@ -573,9 +573,12 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
                         //计算税额
                         BigDecimal bd = new BigDecimal(amountCell.getNumericCellValue());
                         bigDecimal=bigDecimal.add(BigDecimal.valueOf(amountCell.getNumericCellValue()));
+
                         if (taxPercentCell != null) {
+                            //税率是加百分号后显示的数据
+                            BigDecimal taxRate = new BigDecimal(taxPercentCell.getNumericCellValue()).divide(new BigDecimal(100));
                             //原始金额
-                            BigDecimal divide = bd.divide(BigDecimal.valueOf((1 + taxPercentCell.getNumericCellValue())),2,BigDecimal.ROUND_HALF_UP);
+                            BigDecimal divide = bd.divide(taxRate.add(new BigDecimal(1)),2,BigDecimal.ROUND_HALF_UP);
                             BigDecimal subtract = bd.subtract(divide);
                             expenseItem.setTaxValue(subtract.doubleValue());
                         }

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -3413,7 +3413,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             //dataItem.add(userMonthWork.name+(worktimeList.size()==0?"(未填)":""));
             if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
                 dataItem.add("$userName="+(userMonthWork.corpwxUserId==null?"":userMonthWork.corpwxUserId)+"$"+(worktimeList.size()==0?"("+MessageUtils.message("entry.noFill")+")":""));
-                dataItem.add("$departmentName="+(userMonthWork.corpwxDeptId==null?"":userMonthWork.corpwxDeptId)+"$");
+                dataItem.add("$departmentName="+(userMonthWork.departmentName==null?"":userMonthWork.departmentName)+"$");
             }else {
                 dataItem.add(userMonthWork.name+(worktimeList.size()==0?"("+MessageUtils.message("entry.noFill")+")":""));
                 dataItem.add(userMonthWork.departmentName);

+ 17 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java

@@ -438,12 +438,25 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
                 if (row == null) {
                     continue;
                 }
+                if (ExcelUtil.isRowEmpty(row)) {
+                    continue;
+                }
+                System.out.println("rowIndex==="+rowIndex);
+                XSSFCell nameCell = row.getCell(1);
+                if (nameCell == null) {
+                    break;
+                }
+                System.out.println("name==="+nameCell.getStringCellValue());
                 XSSFCell executorCell = row.getCell(3);
-                String[] executorNameArray = executorCell.getStringCellValue().split(",");
-                for (String s : executorNameArray) {
-                    if(!userNameList.contains(s)&&!s.equals("")&&!s.equals("执行人")){
-                        userNameList.add(s);
+                if (executorCell != null) {
+                    String[] executorNameArray = executorCell.getStringCellValue().split(",");
+                    for (String s : executorNameArray) {
+                        if(!userNameList.contains(s)&&!s.equals("")&&!s.equals("执行人")){
+                            userNameList.add(s);
+                        }
                     }
+                } else {
+                    System.out.println("===执行人为空===");
                 }
             }
             System.out.println("参与搜素的人员列表"+userNameList + userNameList.size());

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/ExcelUtil.java

@@ -409,7 +409,7 @@ public class ExcelUtil {
         for (int i = row.getFirstCellNum(); i < row.getLastCellNum(); i++) {
             Cell cell = row.getCell(i);
             if (cell != null && cell.getCellTypeEnum() != CellType.BLANK){
-                System.out.println(i+":"+cell.getCellTypeEnum());
+//                System.out.println(i+":"+cell.getCellTypeEnum());
                 return false;
             }
         }