puzhibing
2023-06-01 c4a098e3f88bc5071e36b92b9e5dcceb51129957
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java
@@ -25,17 +25,19 @@
import com.stylefeng.guns.modular.system.controller.util.UUIDUtil;
import com.stylefeng.guns.modular.system.dao.UserMapper;
import com.stylefeng.guns.modular.system.factory.UserFactory;
import com.stylefeng.guns.modular.system.model.TAgent;
import com.stylefeng.guns.modular.system.model.TBranchOffice;
import com.stylefeng.guns.modular.system.model.TCompany;
import com.stylefeng.guns.modular.system.model.User;
import com.stylefeng.guns.modular.system.service.ITCompanyService;
import com.stylefeng.guns.modular.system.service.ITDriverService;
import com.stylefeng.guns.modular.system.service.IUserService;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.transfer.UserDto;
import com.stylefeng.guns.modular.system.util.OssUploadUtil;
import com.stylefeng.guns.modular.system.util.huawei.OBSUtil;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -46,6 +48,7 @@
import java.io.File;
import java.io.InputStream;
import java.util.*;
import java.util.stream.Collectors;
/**
 * 系统管理员控制器
@@ -67,6 +70,10 @@
    @Autowired
    private ITDriverService itDriverService;
    @Autowired
    private ITAgentService agentService;
    @Autowired
    private ITBranchOfficeService branchOfficeService;
    /**
@@ -187,10 +194,36 @@
            page.setRecords(userService.getUserListPage(page,null, name, beginTime, endTime, deptid));
            return super.packForBT(page);
        } else {
            DataScope dataScope = new DataScope(ShiroKit.getDeptDataScope());
            Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
            page.setRecords(userService.getUserListPage(page,dataScope, name, beginTime, endTime, deptid));
            return super.packForBT(page);
            Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
            Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
            if(roleType == 3){
                // 查询下级分公司账号
                TAgent tAgent = agentService.selectById(objectId);
                List<TBranchOffice> branchOffices = branchOfficeService.selectList(new EntityWrapper<TBranchOffice>()
                        .eq("agentId", tAgent.getId()));
                List<Integer> officeIds = branchOffices.stream().map(TBranchOffice::getId).collect(Collectors.toList());
                if(CollectionUtils.isEmpty(officeIds)){
                    Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
                    page.setRecords(new ArrayList<>());
                    return super.packForBT(page);
                }
//                List<User> userList = userService.selectList(new EntityWrapper<User>()
//                        .in("object_id", officeIds));
//                List<Integer> userIds = userList.stream().map(User::getId).collect(Collectors.toList());
                DataScope dataScope = new DataScope(ShiroKit.getDeptDataScope());
                Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
                List<Map<String, Object>> userListPage = userService.getUserListPageAgent(page, null, name, beginTime, endTime, deptid,officeIds);
                page.setRecords(userListPage);
                return super.packForBT(page);
            }else {
                Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
                page.setRecords(new ArrayList<>());
                return super.packForBT(page);
            }
        }
    }