Skip to content

Commit

Permalink
Update
Browse files Browse the repository at this point in the history
  • Loading branch information
hrxiang committed May 20, 2022
1 parent b366ae0 commit 9298872
Show file tree
Hide file tree
Showing 11 changed files with 475 additions and 1 deletion.
2 changes: 1 addition & 1 deletion OpenIM-SDK/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ dependencies {
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

implementation 'io.openim:core-sdk:2.0.8.+@aar'
implementation 'io.openim:core-sdk:2.0.9.4@aar'
implementation 'com.alibaba:fastjson:1.1.72.android'
// implementation 'com.google.code.gson:gson:2.8.7'
}
15 changes: 15 additions & 0 deletions OpenIM-SDK/src/main/java/io/openim/android/sdk/OpenIMClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@
import io.openim.android.sdk.listener.BaseImpl;
import io.openim.android.sdk.listener.OnBase;
import io.openim.android.sdk.listener.OnConnListener;
import io.openim.android.sdk.listener.OnFileUploadProgressListener;
import io.openim.android.sdk.listener._ConnListener;
import io.openim.android.sdk.listener._FileUploadProgressListener;
import io.openim.android.sdk.manager.ConversationManager;
import io.openim.android.sdk.manager.FriendshipManager;
import io.openim.android.sdk.manager.GroupManager;
import io.openim.android.sdk.manager.MessageManager;
import io.openim.android.sdk.manager.OrganizationManager;
import io.openim.android.sdk.manager.SignalingManager;
import io.openim.android.sdk.manager.UserInfoManager;
import io.openim.android.sdk.manager.WorkMomentsManager;
Expand All @@ -29,6 +32,7 @@ public class OpenIMClient {
public UserInfoManager userInfoManager;
public SignalingManager signalingManager;
public WorkMomentsManager workMomentsManager;
public OrganizationManager organizationManager;

private OpenIMClient() {
// imManager = new ImManager();
Expand All @@ -39,6 +43,7 @@ private OpenIMClient() {
userInfoManager = new UserInfoManager();
signalingManager = new SignalingManager();
workMomentsManager = new WorkMomentsManager();
organizationManager = new OrganizationManager();
}

private static class Singleton {
Expand Down Expand Up @@ -114,5 +119,15 @@ public long getLoginStatus() {
public void wakeUp(OnBase<String> base) {
Open_im_sdk.wakeUp(BaseImpl.stringBase(base), ParamsUtil.buildOperationID());
}


/**
* 上传文件到服务器
*
* @param path 路径
*/
public void uploadFile(OnFileUploadProgressListener listener, String path) {
Open_im_sdk.uploadFile(new _FileUploadProgressListener(listener), ParamsUtil.buildOperationID(), path);
}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package io.openim.android.sdk.listener;


/**
* 消息发送监听
*/
public interface OnFileUploadProgressListener extends OnBase<String> {
/**
* 上传失败
*/
void onError(int code, String error);

/**
* 上传进度
*/
void onProgress(long progress);

/**
* 上传成功
*/
void onSuccess(String s);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package io.openim.android.sdk.listener;

public interface OnOrganizationListener {
/**
* 组织架构更新
*/
void onOrganizationUpdated();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package io.openim.android.sdk.listener;

import io.openim.android.sdk.utils.CommonUtil;

final public class _FileUploadProgressListener implements open_im_sdk_callback.SendMsgCallBack {
private final OnFileUploadProgressListener base;

public _FileUploadProgressListener(OnFileUploadProgressListener base) {
this.base = base;
}

@Override
public void onError(int i, String s) {
if (null != base) {
CommonUtil.returnError(base, i, s);
}
}

@Override
public void onProgress(long l) {
if (null != base) {
CommonUtil.runMainThread(() -> base.onProgress(l));
}
}

@Override
public void onSuccess(String s) {
if (null != base) {
CommonUtil.runMainThread(() -> base.onSuccess(s));
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package io.openim.android.sdk.listener;

import io.openim.android.sdk.utils.CommonUtil;

public class _OrganizationListener implements open_im_sdk_callback.OnOrganizationListener {
private final OnOrganizationListener listener;

public _OrganizationListener(OnOrganizationListener listener) {
this.listener = listener;
}


@Override
public void onOrganizationUpdated() {
if (null != listener) {
CommonUtil.runMainThread(listener::onOrganizationUpdated);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
package io.openim.android.sdk.manager;

import java.util.List;

import io.openim.android.sdk.listener.BaseImpl;
import io.openim.android.sdk.listener.OnBase;
import io.openim.android.sdk.listener.OnOrganizationListener;
import io.openim.android.sdk.listener._OrganizationListener;
import io.openim.android.sdk.models.DeptInfo;
import io.openim.android.sdk.models.DeptMemberAndSubDept;
import io.openim.android.sdk.models.DeptMemberInfo;
import io.openim.android.sdk.models.UserInDept;
import io.openim.android.sdk.utils.ParamsUtil;
import open_im_sdk.Open_im_sdk;

public class OrganizationManager {
/**
* 设置组织架构信息更新回调
*/
public void setOnOrganizationListener(OnOrganizationListener listener) {
Open_im_sdk.setOrganizationListener(new _OrganizationListener(listener));
}

/**
* 获取部门子部门
*
* @param departmentID 部门id
* @param offset 开始index
* @param count 查询总数
* @param base callback List<{@link DeptInfo}>
*/
public void getSubDepartment(OnBase<List<DeptInfo>> base, String departmentID, long offset, long count) {
Open_im_sdk.getSubDepartment(BaseImpl.arrayBase(base, DeptInfo.class), ParamsUtil.buildOperationID(), departmentID, offset, count);
}

/**
* 获取部门成员
*
* @param departmentID 部门id
* @param offset 开始index
* @param count 查询总数
* @param base callback List<{@link DeptMemberInfo}>
*/
public void getDepartmentMember(OnBase<List<DeptMemberInfo>> base, String departmentID, long offset, long count) {
Open_im_sdk.getDepartmentMember(BaseImpl.arrayBase(base, DeptMemberInfo.class), ParamsUtil.buildOperationID(), departmentID, offset, count);
}

/**
* 获取用户的当前部门
*
* @param userID 用户id
*/
public void getUserInDepartment(OnBase<List<UserInDept>> base, String userID) {
Open_im_sdk.getUserInDepartment(BaseImpl.arrayBase(base, UserInDept.class), ParamsUtil.buildOperationID(), userID);
}

/**
* 获取部门子部门跟成员
*
* @param departmentID 部门id
* @param departmentOffset 开始下标
* @param departmentCount 总数
* @param memberOffset 开始下标
* @param memberCount 总数
*/
public void getDepartmentMemberAndSubDepartment(OnBase<List<DeptMemberAndSubDept>> base, String departmentID, long departmentOffset, long departmentCount, long memberOffset, long memberCount) {
Open_im_sdk.getDepartmentMemberAndSubDepartment(BaseImpl.arrayBase(base, DeptMemberAndSubDept.class), ParamsUtil.buildOperationID(), departmentID, departmentOffset, departmentCount, memberOffset, memberCount);
}
}
106 changes: 106 additions & 0 deletions OpenIM-SDK/src/main/java/io/openim/android/sdk/models/DeptInfo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
package io.openim.android.sdk.models;

/**
* 部门信息
*/
public class DeptInfo {
private String departmentID;
private String faceURL;
private String name;
private String parentID;
private int order;
private int departmentType;
private long createTime;
private int subDepartmentNum;
private int memberNum;
private String ex;
private String attachedInfo;

public String getDepartmentID() {
return departmentID;
}

public void setDepartmentID(String departmentID) {
this.departmentID = departmentID;
}

public String getFaceURL() {
return faceURL;
}

public void setFaceURL(String faceURL) {
this.faceURL = faceURL;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getParentID() {
return parentID;
}

public void setParentID(String parentID) {
this.parentID = parentID;
}

public int getOrder() {
return order;
}

public void setOrder(int order) {
this.order = order;
}

public int getDepartmentType() {
return departmentType;
}

public void setDepartmentType(int departmentType) {
this.departmentType = departmentType;
}

public long getCreateTime() {
return createTime;
}

public void setCreateTime(long createTime) {
this.createTime = createTime;
}

public int getSubDepartmentNum() {
return subDepartmentNum;
}

public void setSubDepartmentNum(int subDepartmentNum) {
this.subDepartmentNum = subDepartmentNum;
}

public int getMemberNum() {
return memberNum;
}

public void setMemberNum(int memberNum) {
this.memberNum = memberNum;
}

public String getEx() {
return ex;
}

public void setEx(String ex) {
this.ex = ex;
}

public String getAttachedInfo() {
return attachedInfo;
}

public void setAttachedInfo(String attachedInfo) {
this.attachedInfo = attachedInfo;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package io.openim.android.sdk.models;

import java.util.List;

public class DeptMemberAndSubDept {
List<DeptInfo> departmentList;
List<DeptMemberInfo> departmentMemberList;

public List<DeptInfo> getDepartmentList() {
return departmentList;
}

public void setDepartmentList(List<DeptInfo> departmentList) {
this.departmentList = departmentList;
}

public List<DeptMemberInfo> getDepartmentMemberList() {
return departmentMemberList;
}

public void setDepartmentMemberList(List<DeptMemberInfo> departmentMemberList) {
this.departmentMemberList = departmentMemberList;
}
}
Loading

0 comments on commit 9298872

Please sign in to comment.