Procházet zdrojové kódy

Merge branch 'master' of http://47.100.37.243:10080/wutt/manHourHousekeeper

ggooalice před 2 roky
rodič
revize
50d67a428d

+ 38 - 32
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/UserServiceImpl.java

@@ -555,40 +555,46 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
         List<Integer> formIds = companyReportList.stream().map(CompanyReport::getReportFormId).collect(Collectors.toList());
         if (functionIdList.size() > 0) {
             //根据功能id获取可用的操作代码
-            QueryWrapper<SysFunction> functionQueryWrapper = new QueryWrapper<SysFunction>().eq("package_time", 1);
-            if (company.getPackageProject() == 1) {
-                functionQueryWrapper.or().eq("package_project", 1);
-            }
-            if (company.getPackageOa() == 1) {
-                functionQueryWrapper.or().eq("package_oa", 1);
-            }
-            if (company.getPackageExpense() == 1) {
-                functionQueryWrapper.or().eq("package_expense", 1);
-            }
-            if (company.getPackageCustomer() == 1) {
-                functionQueryWrapper.or().eq("package_customer", 1);
-            }
-            if (company.getPackageEngineering() == 1) {
-                functionQueryWrapper.or().eq("package_engineering", 1);
-            }
-            if (company.getPackageContract() == 1) {
-                functionQueryWrapper.or().eq("package_contract", 1);
-            }
-            if (company.getPackageEtimecard()== 1) {
-                functionQueryWrapper.or().eq("package_etimecard", 1);
-            }
-            if (company.getPackageFinance() == 1) {
-                functionQueryWrapper.or().eq("package_finance", 1);
-            }
-            if (timeType.getShowCorpwxCardtime() == 1) {
-                functionQueryWrapper.or().eq("sync_corpwx_time", 1);
-            }
-            if (timeType.getFinanceAudit() == 1) {
-                functionQueryWrapper.or().eq("finance_audit", 1);
-            }
+            QueryWrapper<SysFunction> functionQueryWrapper = new QueryWrapper<SysFunction>().and(wrapper1->wrapper1.isNull("report_form_id").or().in("report_form_id",formIds)).and(wrapper->{
+                wrapper.eq("package_time", 1);
+                if (company.getPackageProject() == 1) {
+                    wrapper.or().eq("package_project", 1);
+                }
+                if (company.getPackageOa() == 1) {
+                    wrapper.or().eq("package_oa", 1);
+                }
+                if (company.getPackageExpense() == 1) {
+                    wrapper.or().eq("package_expense", 1);
+                }
+                if (company.getPackageCustomer() == 1) {
+                    wrapper.or().eq("package_customer", 1);
+                }
+                if (company.getPackageEngineering() == 1) {
+                    wrapper.or().eq("package_engineering", 1);
+                }
+                if (company.getPackageContract() == 1) {
+                    wrapper.or().eq("package_contract", 1);
+                }
+                if (company.getPackageEtimecard()== 1) {
+                    wrapper.or().eq("package_etimecard", 1);
+                }
+                if (company.getPackageFinance() == 1) {
+                    wrapper.or().eq("package_finance", 1);
+                }
+//            if (company.getPackageProvider() == 1) {
+//                wrapper.or().eq("package_provider", 1);
+//            }
+                if (timeType.getSyncCorpwxTime() == 1) {
+                    wrapper.or().eq("sync_corpwx_time", 1);
+                }
+                //开通财务审核功能的
+                if (timeType.getFinanceAudit() == 1) {
+                    wrapper.or().eq("finance_audit", 1);
+                }
+                return wrapper;
+            });
             functionQueryWrapper.orderByAsc("seq");
             List<SysFunction> functionList = sysFunctionMapper.selectList(functionQueryWrapper);
-            functionList=functionList.stream().filter(fl->fl.getReportFormId()==null||(fl.getReportFormId()!=null&&formIds.contains(fl.getReportFormId()))).collect(Collectors.toList());
             functionList = functionList.stream().filter(f->functionIdList.contains(f.getId())).collect(Collectors.toList());
             user.setFunctionList(functionList);
         } else {