提交 e8db406d 编写于 作者: S shiziyuan9527

bug fix 修改组织的描述信息失败

上级 448dccdc
......@@ -48,7 +48,7 @@ public class OrganizationService {
private UserService userService;
public Organization addOrganization(Organization organization) {
checkOrgNameRepeat(organization);
checkOrganization(organization);
long currentTimeMillis = System.currentTimeMillis();
organization.setId(UUID.randomUUID().toString());
organization.setCreateTime(currentTimeMillis);
......@@ -66,12 +66,27 @@ public class OrganizationService {
return organizationMapper.selectByExample(example);
}
private void checkOrgNameRepeat(Organization organization) {
private void checkOrganization(Organization organization) {
if (StringUtils.isBlank(organization.getName())) {
MSException.throwException(Translator.get("organization_name_is_null"));
}
String id = organization.getId();
String name = organization.getName();
if (StringUtils.isNotBlank(id)) {
Organization org = organizationMapper.selectByPrimaryKey(id);
if (!StringUtils.equals(org.getName(), name)) {
checkOrgNameRepeat(name);
}
} else {
checkOrgNameRepeat(name);
}
}
public void checkOrgNameRepeat(String orgName) {
OrganizationExample organizationExample = new OrganizationExample();
organizationExample.createCriteria().andNameEqualTo(organization.getName());
organizationExample.createCriteria().andNameEqualTo(orgName);
if (organizationMapper.countByExample(organizationExample) > 0) {
MSException.throwException(Translator.get("organization_name_already_exists"));
}
......@@ -99,7 +114,7 @@ public class OrganizationService {
}
public void updateOrganization(Organization organization) {
checkOrgNameRepeat(organization);
checkOrganization(organization);
organization.setCreateTime(null);
organization.setUpdateTime(System.currentTimeMillis());
organizationMapper.updateByPrimaryKeySelective(organization);
......
......@@ -55,30 +55,39 @@ public class WorkspaceService {
MSException.throwException(Translator.get("workspace_name_is_null"));
}
// set organization id
workspace.setOrganizationId(SessionUtils.getCurrentOrganizationId());
String currentOrgId = SessionUtils.getCurrentOrganizationId();
workspace.setOrganizationId(currentOrgId);
long currentTime = System.currentTimeMillis();
WorkspaceExample example = new WorkspaceExample();
example.createCriteria()
.andOrganizationIdEqualTo(SessionUtils.getCurrentOrganizationId())
.andNameEqualTo(workspace.getName());
if (workspaceMapper.countByExample(example) > 0) {
MSException.throwException(Translator.get("workspace_name_already_exists"));
}
String wsName = workspace.getName();
if (StringUtils.isBlank(workspace.getId())) {
checkWsName(wsName, currentOrgId);
workspace.setId(UUID.randomUUID().toString());
workspace.setCreateTime(currentTime);
workspace.setUpdateTime(currentTime);
workspaceMapper.insertSelective(workspace);
} else {
Workspace ws = workspaceMapper.selectByPrimaryKey(workspace.getId());
if (!StringUtils.equals(ws.getName(), wsName)) {
checkWsName(wsName, currentOrgId);
}
workspace.setUpdateTime(currentTime);
workspaceMapper.updateByPrimaryKeySelective(workspace);
}
return workspace;
}
public void checkWsName(String wsName, String orgId) {
WorkspaceExample example = new WorkspaceExample();
example.createCriteria()
.andOrganizationIdEqualTo(orgId)
.andNameEqualTo(wsName);
if (workspaceMapper.countByExample(example) > 0) {
MSException.throwException(Translator.get("workspace_name_already_exists"));
}
}
public List<Workspace> getWorkspaceList(WorkspaceRequest request) {
WorkspaceExample example = new WorkspaceExample();
WorkspaceExample.Criteria criteria = example.createCriteria();
......@@ -259,12 +268,18 @@ public class WorkspaceService {
if (StringUtils.isBlank(workspace.getOrganizationId())) {
MSException.throwException(Translator.get("organization_id_is_null"));
}
WorkspaceExample example = new WorkspaceExample();
example.createCriteria()
.andOrganizationIdEqualTo(workspace.getOrganizationId())
.andNameEqualTo(workspace.getName());
if (workspaceMapper.countByExample(example) > 0) {
MSException.throwException(Translator.get("workspace_name_already_exists"));
String id = workspace.getId();
String orgId = workspace.getOrganizationId();
String name = workspace.getName();
if (StringUtils.isNotBlank(id)) {
Workspace ws = workspaceMapper.selectByPrimaryKey(id);
if (!StringUtils.equals(ws.getName(), name)) {
checkWsName(name, orgId);
}
} else {
checkWsName(name, orgId);
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册