|
@@ -550,41 +550,50 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
|
for (SysRoleFunction sysRoleFunction : funList) {
|
|
|
functionIdList.add(sysRoleFunction.getFunctionId());
|
|
|
}
|
|
|
+ //获取当前公司开启了得报表
|
|
|
+ List<CompanyReport> companyReportList = companyReportMapper.selectList(new QueryWrapper<CompanyReport>().eq("company_id", company.getId()));
|
|
|
+ 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>().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(f->functionIdList.contains(f.getId())).collect(Collectors.toList());
|
|
|
user.setFunctionList(functionList);
|