package com.parttime.constants;
import android.text.TextUtils;
import com.carson.constant.ConstantForSaveList;
import com.easemob.chat.EMGroup;
import com.easemob.chat.EMGroupManager;
import com.google.gson.Gson;
import com.parttime.net.GroupSettingRequest;
import com.parttime.pojo.GroupDescription;
import com.parttime.utils.SharePreferenceUtil;
import com.quark.jianzhidaren.ApplicationControl;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.List;
import java.util.Map;
/**
* Created by dehua on 15/8/2.
*/
public class ConstantForSaveListHelper {
public void updateGroupAppliantCacheIsComment(String groupId, String userId){
if(ConstantForSaveList.groupAppliantCache != null) {
GroupSettingRequest.AppliantResult appliantResult = ConstantForSaveList.groupAppliantCache.get(groupId);
if(appliantResult != null && appliantResult.userList != null){
for(GroupSettingRequest.UserVO userVO : appliantResult.userList){
if(userVO == null){
continue;
}
if(userId.equals(String.valueOf(userVO.userId))){
userVO.isCommented = GroupSettingRequest.UserVO.ISCOMMENT_OK;
break;
}
}
}
}
}
public static void cacheGroupType(){
Map<String,GroupDescription> cache = ConstantForSaveList.groupDescriptionMapCache;
List<EMGroup> groups = EMGroupManager.getInstance().getAllGroups();
if(groups != null){
Gson gson = new Gson();
for (EMGroup group : groups){
if(group != null){
String groupId = group.getGroupId();
String description = group.getDescription();
GroupDescription gd = cache.get(groupId);
try {
if(!TextUtils.isEmpty(description)){
description = URLDecoder.decode(description, "UTF-8");
GroupDescription groupDescription = gson.fromJson(description, GroupDescription.class);
if (groupDescription == null) {
continue;
}
if(gd != null){
if(gd.info != null && ! gd.info.equals(groupDescription.info)){
groupDescription.isNew = true;
}else{
continue;
}
}
cache.put(groupId, groupDescription);
}
}catch (Exception ignore){
}
}
}
SharePreferenceUtil.getInstance(ApplicationControl.getInstance()).saveSharedPreferences(
SharedPreferenceConstants.GROUP_NOTICE_CONFIGGURE,
gson.toJson(cache));
}
}
}