Commit 8a0562fb by Lee Munkyeong

Merge branch 'features/#458_create_new_group_table_for_communication' into 'features/abcomm_sp6'

Features/#458 create new group table for communication

See merge request !99
parents b80e56dd 4e243b6a
...@@ -8,16 +8,13 @@ import java.util.ArrayList; ...@@ -8,16 +8,13 @@ import java.util.ArrayList;
import jp.agentec.abook.abv.bl.common.constant.ABookCommConstants; import jp.agentec.abook.abv.bl.common.constant.ABookCommConstants;
import jp.agentec.abook.abv.bl.common.exception.AcmsException; import jp.agentec.abook.abv.bl.common.exception.AcmsException;
import jp.agentec.abook.abv.bl.common.exception.JSONValidationException; import jp.agentec.abook.abv.bl.common.exception.JSONValidationException;
import jp.agentec.abook.abv.bl.dto.ChatMessageDto; import jp.agentec.abook.abv.bl.dto.ChatGroupDto;
import jp.agentec.abook.abv.bl.dto.ChatRoomDto;
import jp.agentec.abook.abv.bl.dto.GroupDto;
import jp.agentec.abook.abv.bl.dto.ShopMemberDto; import jp.agentec.abook.abv.bl.dto.ShopMemberDto;
import jp.agentec.adf.util.DateTimeUtil;
public class GroupListJSON extends AcmsCommonJSON { public class GroupListJSON extends AcmsCommonJSON {
public ArrayList<GroupDto> groupList; public ArrayList<ChatGroupDto> groupList;
public String allGroupLastUpdateDate; public String allGroupLastUpdateDate;
public GroupListJSON(String jsonString) throws AcmsException { public GroupListJSON(String jsonString) throws AcmsException {
...@@ -34,14 +31,14 @@ public class GroupListJSON extends AcmsCommonJSON { ...@@ -34,14 +31,14 @@ public class GroupListJSON extends AcmsCommonJSON {
JSONArray groupListJsonArray = json.getJSONObject(ABookCommConstants.KEY.BODY).getJSONArray(ABookCommConstants.KEY.GROUP_INFO_LIST); JSONArray groupListJsonArray = json.getJSONObject(ABookCommConstants.KEY.BODY).getJSONArray(ABookCommConstants.KEY.GROUP_INFO_LIST);
if (groupListJsonArray == null) { return; } if (groupListJsonArray == null) { return; }
groupList = new ArrayList<GroupDto>(); groupList = new ArrayList<ChatGroupDto>();
for (int listCount = 0; listCount < groupListJsonArray.length(); listCount++) { for (int listCount = 0; listCount < groupListJsonArray.length(); listCount++) {
if (groupListJsonArray.getJSONObject(listCount).length() == 0) { if (groupListJsonArray.getJSONObject(listCount).length() == 0) {
break; break;
} }
JSONObject groupJSON = groupListJsonArray.getJSONObject(listCount); JSONObject groupJSON = groupListJsonArray.getJSONObject(listCount);
GroupDto groupDto = new GroupDto(); ChatGroupDto groupDto = new ChatGroupDto();
groupDto.groupId = groupJSON.getInt(ABookCommConstants.KEY.GROUP_ID); groupDto.groupId = groupJSON.getInt(ABookCommConstants.KEY.GROUP_ID);
if (groupJSON.has(ABookCommConstants.KEY.PARENT_GROUP_ID)) { if (groupJSON.has(ABookCommConstants.KEY.PARENT_GROUP_ID)) {
......
...@@ -11,6 +11,7 @@ import jp.agentec.abook.abv.bl.data.tables.LContentReadingLog; ...@@ -11,6 +11,7 @@ import jp.agentec.abook.abv.bl.data.tables.LContentReadingLog;
import jp.agentec.abook.abv.bl.data.tables.MAcms; import jp.agentec.abook.abv.bl.data.tables.MAcms;
import jp.agentec.abook.abv.bl.data.tables.MAppConfig; import jp.agentec.abook.abv.bl.data.tables.MAppConfig;
import jp.agentec.abook.abv.bl.data.tables.MCategory; import jp.agentec.abook.abv.bl.data.tables.MCategory;
import jp.agentec.abook.abv.bl.data.tables.MChatGroup;
import jp.agentec.abook.abv.bl.data.tables.MGroup; import jp.agentec.abook.abv.bl.data.tables.MGroup;
import jp.agentec.abook.abv.bl.data.tables.MMemberInfo; import jp.agentec.abook.abv.bl.data.tables.MMemberInfo;
import jp.agentec.abook.abv.bl.data.tables.MOperationGroupMaster; import jp.agentec.abook.abv.bl.data.tables.MOperationGroupMaster;
...@@ -111,6 +112,7 @@ public class ABVDataOpenHelper { ...@@ -111,6 +112,7 @@ public class ABVDataOpenHelper {
iTableScripts.add(new TTaskReportApproval()); iTableScripts.add(new TTaskReportApproval());
//ABCOMM関連テーブル //ABCOMM関連テーブル
iTableScripts.add(new MChatGroup());
iTableScripts.add(new MShopMember()); iTableScripts.add(new MShopMember());
iTableScripts.add(new TChatRoom()); iTableScripts.add(new TChatRoom());
iTableScripts.add(new TChatMessage()); iTableScripts.add(new TChatMessage());
......
...@@ -347,7 +347,6 @@ public class ShopMemberDao extends AbstractDao { ...@@ -347,7 +347,6 @@ public class ShopMemberDao extends AbstractDao {
try { try {
beginTransaction(); beginTransaction();
delete("r_collaboration_member", null, null); delete("r_collaboration_member", null, null);
delete("r_shop_member_group", null, null);
delete("m_shop_member", null, null); delete("m_shop_member", null, null);
commit(); commit();
} catch (Exception e) { } catch (Exception e) {
......
package jp.agentec.abook.abv.bl.data.tables;
import java.util.ArrayList;
import java.util.List;
import jp.agentec.abook.abv.bl.common.db.SQLiteDatabase;
import jp.agentec.adf.util.StringUtil;
/**
* AbookComm専用のグループマスターテーブルです。
* @author Lee mk
* @version 1.1.1
*/
public class MChatGroup extends SQLiteTableScript {
public MChatGroup() {
super();
}
@Override
public List<String> getCreateScript(int version) {
List<String> ddl = new ArrayList<String>();
StringBuffer sql = new StringBuffer();
// since DatabaseVersions.Ver1_0_0
sql.append(" CREATE TABLE m_chat_group ( ");
sql.append(" group_id INTEGER NOT NULL ");
sql.append(" , parent_group_id INTEGER NOT NULL ");
sql.append(" , group_name VARCHAR(64) NOT NULL ");
sql.append(" , favorite_register_date VARCHAR2(64) ");
sql.append(" , PRIMARY KEY (group_id) ");
sql.append(" ) ");
ddl.add(sql.toString());
StringUtil.clear(sql);
sql.append(" CREATE INDEX idx_chat_group_1 ON m_chat_group ( ");
sql.append(" parent_group_id ");
sql.append(" ) ");
ddl.add(sql.toString());
StringUtil.clear(sql);
return ddl;
}
@Override
public List<String> getUpgradeScript(int oldVersion, int newVersion) {
return null;
}
@Override
public List<String> getMigrationScript(SQLiteDatabase databaseConnection, int oldVersion, int newVersion, Object... params) {
return null;
}
}
package jp.agentec.abook.abv.bl.dto;
import java.util.List;
/**
* グループ情報を格納します。m_groupのPKであるgroup_relation_idはこのdtoの扱いません。内部的なキーはgetKyeValuesメソッドで定義してあります。
* @author Taejin Hong
* @version 1.1.0
*/
public class ChatGroupDto extends AbstractDto {
public int groupId;
public int parentGroupId = 0;
public String groupName;
public int contentCount = 0;
public String displayCount;
public String groupPath;
public String favoriteRegisterDate = "";
public int delFlg;
public List<ShopMemberDto> groupMembers;
public List<String> groupPathList;
public String updateDate;
public ChatGroupDto() {
}
public ChatGroupDto(int groupId, String groupName, int parentGroupId) {
this.groupId = groupId;
this.groupName = groupName;
this.parentGroupId = parentGroupId;
}
@Override
public Object[] getInsertValues() {
return new Object[]{ groupId, parentGroupId, groupName };
}
@Override
public String[] getKeyValues() {
return new String[]{"" + groupId};
}
}
...@@ -54,9 +54,9 @@ import jp.agentec.abook.abv.bl.common.exception.AcmsException; ...@@ -54,9 +54,9 @@ import jp.agentec.abook.abv.bl.common.exception.AcmsException;
import jp.agentec.abook.abv.bl.common.exception.NetworkDisconnectedException; import jp.agentec.abook.abv.bl.common.exception.NetworkDisconnectedException;
import jp.agentec.abook.abv.bl.common.log.Logger; import jp.agentec.abook.abv.bl.common.log.Logger;
import jp.agentec.abook.abv.bl.data.ABVDataCache; import jp.agentec.abook.abv.bl.data.ABVDataCache;
import jp.agentec.abook.abv.bl.dto.ChatGroupDto;
import jp.agentec.abook.abv.bl.dto.ChatMessageDto; import jp.agentec.abook.abv.bl.dto.ChatMessageDto;
import jp.agentec.abook.abv.bl.dto.ChatRoomDto; import jp.agentec.abook.abv.bl.dto.ChatRoomDto;
import jp.agentec.abook.abv.bl.dto.GroupDto;
import jp.agentec.abook.abv.bl.dto.PushMessageDto; import jp.agentec.abook.abv.bl.dto.PushMessageDto;
import jp.agentec.abook.abv.bl.logic.AbstractLogic; import jp.agentec.abook.abv.bl.logic.AbstractLogic;
import jp.agentec.abook.abv.bl.logic.CommunicationLogic; import jp.agentec.abook.abv.bl.logic.CommunicationLogic;
...@@ -1041,7 +1041,6 @@ public class ChatWebviewActivity extends ParentWebViewActivity { ...@@ -1041,7 +1041,6 @@ public class ChatWebviewActivity extends ParentWebViewActivity {
MyInfoJSON resultJson = AcmsClient.getInstance(ABVEnvironment.getInstance().networkAdapter).getMyInfo(sid); MyInfoJSON resultJson = AcmsClient.getInstance(ABVEnvironment.getInstance().networkAdapter).getMyInfo(sid);
if (resultJson.shopMemberDto != null) { if (resultJson.shopMemberDto != null) {
communicationLogic.insertMyInfo(resultJson.shopMemberDto); communicationLogic.insertMyInfo(resultJson.shopMemberDto);
communicationLogic.updateMyGroup(resultJson.shopMemberDto.groupIdList);
} }
} }
...@@ -1109,7 +1108,7 @@ public class ChatWebviewActivity extends ParentWebViewActivity { ...@@ -1109,7 +1108,7 @@ public class ChatWebviewActivity extends ParentWebViewActivity {
if (groupIds.equals(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString())) { if (groupIds.equals(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString())) {
editor.putString(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString(),resultJson.allGroupLastUpdateDate); editor.putString(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString(),resultJson.allGroupLastUpdateDate);
} else { } else {
for (GroupDto groupDto : resultJson.groupList) { for (ChatGroupDto groupDto : resultJson.groupList) {
editor.putString(Integer.toString(groupDto.groupId),groupDto.updateDate); editor.putString(Integer.toString(groupDto.groupId),groupDto.updateDate);
} }
} }
...@@ -1133,9 +1132,9 @@ public class ChatWebviewActivity extends ParentWebViewActivity { ...@@ -1133,9 +1132,9 @@ public class ChatWebviewActivity extends ParentWebViewActivity {
private void updateAllGroupInfo() throws NetworkDisconnectedException, AcmsException { private void updateAllGroupInfo() throws NetworkDisconnectedException, AcmsException {
updateGroupInfoFromServer(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString()); updateGroupInfoFromServer(ABookCommConstants.FLAG.GROUP_REQUEST_ALL.toString());
List<GroupDto> groupList = communicationLogic.getAllGroup(); List<ChatGroupDto> groupList = communicationLogic.getAllGroup();
for (GroupDto group : groupList) { for (ChatGroupDto group : groupList) {
updateGroupInfoFromServer(Integer.toString(group.groupId)); updateGroupInfoFromServer(Integer.toString(group.groupId));
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment