Browse Source

处理菜单

ljx 4 years ago
parent
commit
e3da890b76

+ 47 - 5
src/main/java/com/imed/costaccount/service/impl/CostIncomeGroupServiceImpl.java

@@ -135,6 +135,29 @@ public class CostIncomeGroupServiceImpl extends ServiceImpl<CostIncomeGroupMappe
         }
         }
         Map<Long, Long> responsibilityDepMap = responsibilityDepartmentList.stream().collect(Collectors.toMap(ResponsibilityDepartment::getDepartmentId, ResponsibilityDepartment::getResponsibilityId));
         Map<Long, Long> responsibilityDepMap = responsibilityDepartmentList.stream().collect(Collectors.toMap(ResponsibilityDepartment::getDepartmentId, ResponsibilityDepartment::getResponsibilityId));
         Map<Long, Long> accountProMap = accountingProductList.stream().collect(Collectors.toMap(AccountingProduct::getProductId, AccountingProduct::getAccountingId));
         Map<Long, Long> accountProMap = accountingProductList.stream().collect(Collectors.toMap(AccountingProduct::getProductId, AccountingProduct::getAccountingId));
+        checkImportData(list, incomeErrorMessageList, departmentMap, productMap, responsibilityMap, accountingMap, responsibilityDepMap, accountProMap);
+        if (!CollectionUtils.isEmpty(incomeErrorMessageList)){
+            // 说明存在错误数据
+            // TODO 不讲数据保存在收入归集表里面  直将信息保存在提交记录里面
+        }else {
+            // 实现厨具的存储
+
+        }
+        return Result.ok();
+    }
+
+    /**
+     *检验数据
+     * @param list 表单数据
+     * @param incomeErrorMessageList 存储错误信息的集合
+     * @param departmentMap 科室Map
+     * @param productMap 成本项目map
+     * @param responsibilityMap 责任中心Map
+     * @param accountingMap 会计科目Map
+     * @param responsibilityDepMap 责任中心科室对照Map
+     * @param accountProMap 责任中心Map
+     */
+    private void checkImportData(List<List<Object>> list, List<IncomeErrorMessage> incomeErrorMessageList, Map<String, Department> departmentMap, Map<String, Product> productMap, Map<Long, Responsibility> responsibilityMap, Map<Long, Accounting> accountingMap, Map<Long, Long> responsibilityDepMap, Map<Long, Long> accountProMap) {
         for (int i = 0; i < list.size(); i++) {
         for (int i = 0; i < list.size(); i++) {
             // 用来检验数据合理性的循环
             // 用来检验数据合理性的循环
             IncomeErrorMessage incomeErrorMessage = new IncomeErrorMessage();
             IncomeErrorMessage incomeErrorMessage = new IncomeErrorMessage();
@@ -172,24 +195,43 @@ public class CostIncomeGroupServiceImpl extends ServiceImpl<CostIncomeGroupMappe
                 }else {
                 }else {
                     // 检验对应的会计科目是否存在
                     // 检验对应的会计科目是否存在
                     Long id = product.getId();
                     Long id = product.getId();
-
+                    Long accountId = accountProMap.get(id);
+                    if (Objects.isNull(accountingMap.get(accountId))){
+                        incomeErrorMessage.setTotal(i);
+                        incomeErrorMessage.setErrMessage("代码:"+productCode+" 名称:"+productName+"成本项目对应的会计科目不存在");
+                        incomeErrorMessageList.add(incomeErrorMessage);
+                    }
                 }
                 }
+                // 开单科室
                 if (Objects.isNull(department)){
                 if (Objects.isNull(department)){
                     incomeErrorMessage.setTotal(i);
                     incomeErrorMessage.setTotal(i);
                     incomeErrorMessage.setErrMessage("代码:"+productCode+" 名称:"+productName+"开单科室不存在");
                     incomeErrorMessage.setErrMessage("代码:"+productCode+" 名称:"+productName+"开单科室不存在");
                     incomeErrorMessageList.add(incomeErrorMessage);
                     incomeErrorMessageList.add(incomeErrorMessage);
+                }else{
+                    Long id = department.getId();
+                    Long responsibilityId = responsibilityDepMap.get(id);
+                    if (Objects.isNull(responsibilityMap.get(responsibilityId))){
+                        incomeErrorMessage.setTotal(i);
+                        incomeErrorMessage.setErrMessage("代码:"+openDepartmentCode+" 名称:"+openDepartmentName+"科室对应的责任中心不存在");
+                        incomeErrorMessageList.add(incomeErrorMessage);
+                    }
                 }
                 }
+                //执行科室
                 if (Objects.isNull(department1)){
                 if (Objects.isNull(department1)){
                     incomeErrorMessage.setTotal(i);
                     incomeErrorMessage.setTotal(i);
                     incomeErrorMessage.setErrMessage("代码:"+productCode+" 名称:"+productName+"执行科室不存在");
                     incomeErrorMessage.setErrMessage("代码:"+productCode+" 名称:"+productName+"执行科室不存在");
                     incomeErrorMessageList.add(incomeErrorMessage);
                     incomeErrorMessageList.add(incomeErrorMessage);
+                }else{
+                    Long id = department1.getId();
+                    Long responsibilityId = responsibilityDepMap.get(id);
+                    if (Objects.isNull(responsibilityMap.get(responsibilityId))){
+                        incomeErrorMessage.setTotal(i);
+                        incomeErrorMessage.setErrMessage("代码:"+openDepartmentCode+" 名称:"+openDepartmentName+"科室对应的责任中心不存在");
+                        incomeErrorMessageList.add(incomeErrorMessage);
+                    }
                 }
                 }
-                // 检验科室对应的责任中心是否存在
-                // 检验成本项目对应的会计科目是否存在
-
             }
             }
         }
         }
-        return Result.ok();
     }
     }
 
 
     /**
     /**

+ 1 - 0
src/main/java/com/imed/costaccount/service/impl/MenuServiceImpl.java

@@ -90,6 +90,7 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements Me
             treeVOs.addAll(menus);
             treeVOs.addAll(menus);
 
 
         }
         }
+
         return new PageUtils(treeVOs, 0, 0, 0);
         return new PageUtils(treeVOs, 0, 0, 0);
     }
     }