From 831e3312572cf29dd91cbd882ef3dce809ac852d Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 14 六月 2023 20:58:04 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/1.1' into 1.1 --- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java | 97 ++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 77 insertions(+), 20 deletions(-) diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java index 1fa9b8b..65d89a1 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java @@ -19,30 +19,36 @@ import com.stylefeng.guns.core.log.LogObjectHolder; import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.shiro.ShiroUser; +import com.stylefeng.guns.core.util.ObsUploadUtil; import com.stylefeng.guns.core.util.SinataUtil; import com.stylefeng.guns.core.util.ToolUtil; +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; import javax.naming.NoPermissionException; +import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; import java.io.File; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.UUID; +import java.io.InputStream; +import java.util.*; +import java.util.stream.Collectors; /** * 系统管理员控制器 @@ -64,6 +70,10 @@ @Autowired private ITDriverService itDriverService; + @Autowired + private ITAgentService agentService; + @Autowired + private ITBranchOfficeService branchOfficeService; /** @@ -184,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); + } } } @@ -196,7 +232,6 @@ */ @RequestMapping("/add") @BussinessLog(value = "添加管理员", key = "account", dict = UserDict.class) - @Permission(Const.ADMIN_NAME) @ResponseBody public Tip add(@Valid UserDto user, BindingResult result) { if (result.hasErrors()) { @@ -298,7 +333,6 @@ */ @RequestMapping("/reset") @BussinessLog(value = "重置管理员密码", key = "userId", dict = UserDict.class) - @Permission(Const.ADMIN_NAME) @ResponseBody public Tip reset(@RequestParam Integer userId) { if (ToolUtil.isEmpty(userId)) { @@ -321,7 +355,6 @@ */ @RequestMapping("/freeze") @BussinessLog(value = "冻结用户", key = "userId", dict = UserDict.class) - @Permission(Const.ADMIN_NAME) @ResponseBody public Tip freeze(@RequestParam Integer userId) { if (ToolUtil.isEmpty(userId)) { @@ -342,7 +375,7 @@ itCompanyService.updateById(company); //设置该分公司下的所有司机状态 - itDriverService.updateCompanyDriverState(3,company.getId()); +// itDriverService.updateCompanyDriverState(3,company.getId()); }else if (user.getRoleType() == 3){ //查询加盟商 @@ -351,7 +384,7 @@ itCompanyService.updateById(franchisee); //设置该加盟商下的所有司机状态 - itDriverService.updateFranchiseeDriverState(3,franchisee.getId()); +// itDriverService.updateFranchiseeDriverState(3,franchisee.getId()); } return SUCCESS_TIP; } @@ -361,7 +394,6 @@ */ @RequestMapping("/unfreeze") @BussinessLog(value = "解除冻结用户", key = "userId", dict = UserDict.class) - @Permission(Const.ADMIN_NAME) @ResponseBody public Tip unfreeze(@RequestParam Integer userId) { if (ToolUtil.isEmpty(userId)) { @@ -378,7 +410,7 @@ itCompanyService.updateById(company); //设置该分公司下的所有司机状态 - itDriverService.updateCompanyDriverState(2,company.getId()); +// itDriverService.updateCompanyDriverState(2,company.getId()); }else if (user.getRoleType() == 3){ //查询加盟商 @@ -387,7 +419,7 @@ itCompanyService.updateById(franchisee); //设置该加盟商下的所有司机状态 - itDriverService.updateFranchiseeDriverState(2,franchisee.getId()); +// itDriverService.updateFranchiseeDriverState(2,franchisee.getId()); } return SUCCESS_TIP; } @@ -397,7 +429,6 @@ */ @RequestMapping("/setRole") @BussinessLog(value = "分配角色", key = "userId,roleIds", dict = UserDict.class) - @Permission(Const.ADMIN_NAME) @ResponseBody public Tip setRole(@RequestParam("userId") Integer userId, @RequestParam("roleIds") String roleIds) { if (ToolUtil.isOneEmpty(userId, roleIds)) { @@ -431,6 +462,32 @@ return pictureName; } + @ResponseBody + @RequestMapping("/saveApk") + public String saveApk(@RequestPart("myfile") MultipartFile file, HttpServletRequest request){ + Map<String, Object> m = new HashMap<>(); + try { + String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(file.getOriginalFilename()); + try { + String fileSavePath = gunsProperties.getFileUploadPath()+"apk\\"; + InputStream inputStream = file.getInputStream(); + String name1 = file.getOriginalFilename(); + name1 = UUIDUtil.getRandomCode() + name1.substring(name1.lastIndexOf(".")); + String s = OBSUtil.putObjectToBucket(inputStream, name1); +// String s = OssUploadUtil.ossUpload(request, file); + // file.transferTo(new File(fileSavePath + pictureName)); + return s; + } catch (Exception e) { + e.printStackTrace(); + } + m.put("imgUrl", gunsProperties.getFileUploadPath()+"apk/"+pictureName); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + /** * 判断当前登录的用户是否有操作这个用户的权限 */ -- Gitblit v1.7.1