wuxw
2024-12-13 686a9636efb01f9d5d55f3b069754a98d509a599
service-user/src/main/java/com/java110/user/cmd/user/QueryStorePrivilegeGroupCmd.java
@@ -33,11 +33,8 @@
    @Autowired
    private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
    }
    @Override
@@ -45,8 +42,7 @@
        String userId = context.getReqHeaders().get("user-id");
        String storeId = context.getReqHeaders().get("store-id");
        String communityId = context.getReqHeaders().get("communityId");
        if(StringUtil.isEmpty(userId)){
        if (StringUtil.isEmpty(userId)) {
            userId = reqJson.getString("userId");
        }
        // 判断是不是管理员,管理员反馈 物业 的所角色
@@ -57,7 +53,7 @@
        List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
        Assert.listOnlyOne(userDtos, "用户不存在");
        String storeTypeCd = "";
        if(!reqJson.containsKey("storeTypeCd") || StringUtil.isEmpty(reqJson.getString("storeTypeCd"))) {
        if (!reqJson.containsKey("storeTypeCd") || StringUtil.isEmpty(reqJson.getString("storeTypeCd"))) {
            StoreDto storeDto = new StoreDto();
            storeDto.setStoreId(storeId);
            storeDto.setPage(1);
@@ -65,32 +61,29 @@
            List<StoreDto> storeDtos = storeV1InnerServiceSMOImpl.queryStores(storeDto);
            Assert.listOnlyOne(storeDtos, "商户不存在");
            storeTypeCd = storeDtos.get(0).getStoreTypeCd();
        }else{
        } else {
            storeTypeCd = reqJson.getString("storeTypeCd");
        }
        DataQuery dataQuery = new DataQuery();
        dataQuery.setServiceCode("query.store.privilegeGroup");
        JSONObject param = new JSONObject();
        param.put("storeId", storeId);
        param.put("storeTypeCd", storeTypeCd);
        if(!UserDto.LEVEL_CD_ADMIN.equals(userDtos.get(0).getLevelCd())){
            param.put("communityId", communityId);
        }
        // modify by 吴学文 ,这块设计我感觉不合理呢,如果 我是物业公司管理员 我分配了 A小区管理员 张三 B小区管理李四,
        // 那么李四就没法再添加角色权限 因为他们添加的权限默认没有关联小区 所以显示不出来 别人认为这个就是个bug
//        if(!UserDto.LEVEL_CD_ADMIN.equals(userDtos.get(0).getLevelCd())){
//            param.put("communityId", communityId);
//        }
        dataQuery.setRequestParams(param);
        queryServiceSMOImpl.commonQueryService(dataQuery);
        ResponseEntity<String> privilegeGroup = dataQuery.getResponseEntity();
        if (privilegeGroup.getStatusCode() != HttpStatus.OK) {
            context.setResponseEntity(privilegeGroup);
            return ;
            return;
        }
        JSONObject privilegeGroupObj = JSONObject.parseObject(privilegeGroup.getBody().toString());
        Assert.jsonObjectHaveKey(privilegeGroupObj, "privilegeGroups", "查询菜单未返回privilegeGroups节点");
        JSONArray privilegeGroups = privilegeGroupObj.getJSONArray("privilegeGroups");
        context.setResponseEntity(new ResponseEntity<String>(privilegeGroups.toJSONString(), HttpStatus.OK));
    }
}