forked from Gitlink/microservices
Merge pull request '异步初始化专区数据' (#107) from otto/ruoyi-gitlink:member_operate into dev
This commit is contained in:
commit
a81783bbcf
|
|
@ -102,7 +102,7 @@ public interface RemoteCmsService {
|
||||||
@PostMapping("/doc/initCmsDir/{zoneId}")
|
@PostMapping("/doc/initCmsDir/{zoneId}")
|
||||||
public R<Object> initCmsDir(@PathVariable(value = "zoneId") Long zoneId
|
public R<Object> initCmsDir(@PathVariable(value = "zoneId") Long zoneId
|
||||||
, @RequestBody Object cmsDirInput
|
, @RequestBody Object cmsDirInput
|
||||||
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
, @RequestHeader(SecurityConstants.USER_KEY) String userKey);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化新闻
|
* 初始化新闻
|
||||||
|
|
@ -115,5 +115,17 @@ public interface RemoteCmsService {
|
||||||
@PostMapping("/doc/initCmsDoc/{dirId}")
|
@PostMapping("/doc/initCmsDoc/{dirId}")
|
||||||
public R<Boolean> initCmsDoc(@PathVariable(value = "dirId") Long dirId
|
public R<Boolean> initCmsDoc(@PathVariable(value = "dirId") Long dirId
|
||||||
, @RequestBody Object cmsDocInputDto
|
, @RequestBody Object cmsDocInputDto
|
||||||
|
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source
|
||||||
|
, @RequestHeader(SecurityConstants.USER_KEY) String userKey);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过组织Id删除专区对应项目
|
||||||
|
*
|
||||||
|
* @param deptId 组织Id
|
||||||
|
* @param source 来源
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@DeleteMapping("/project/removeByDeptId/{deptId}")
|
||||||
|
public R<Boolean> removeByDeptId(@PathVariable(value = "deptId") Long deptId
|
||||||
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -69,4 +69,15 @@ public interface RemoteZoneService {
|
||||||
@GetMapping("/zoneDetail/getZoneHomePageCmsSizeByDeptId/{deptId}")
|
@GetMapping("/zoneDetail/getZoneHomePageCmsSizeByDeptId/{deptId}")
|
||||||
public R<Long> getZoneHomePageCmsSizeByDeptId(@PathVariable(value = "deptId") Long deptId
|
public R<Long> getZoneHomePageCmsSizeByDeptId(@PathVariable(value = "deptId") Long deptId
|
||||||
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过组织名称删除专区
|
||||||
|
*
|
||||||
|
* @param deptName 组织名称
|
||||||
|
* @param source 来源
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@DeleteMapping("/zoneDetail/{deptName}")
|
||||||
|
public R<Boolean> deleteByDeptName(@PathVariable(value = "deptName") String deptName
|
||||||
|
, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,14 +52,19 @@ public class RemoteCmsFallbackFactory implements FallbackFactory<RemoteCmsServic
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public R<Object> initCmsDir(Long zoneId, Object cmsDirInput, String source) {
|
public R<Object> initCmsDir(Long zoneId, Object cmsDirInput, String userKey) {
|
||||||
return R.fail("初始化栏目失败:" + throwable.getMessage());
|
return R.fail("初始化栏目失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public R<Boolean> initCmsDoc(Long dirId, Object cmsDocInputDto, String source) {
|
public R<Boolean> initCmsDoc(Long dirId, Object cmsDocInputDto, String source, String userKey) {
|
||||||
return R.fail("初始化文章失败:" + throwable.getMessage());
|
return R.fail("初始化文章失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<Boolean> removeByDeptId(Long deptId, String source) {
|
||||||
|
return R.fail("删除专区项目失败:" + throwable.getMessage());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,11 @@ public class RemoteZoneFallbackFactory implements FallbackFactory<RemoteZoneServ
|
||||||
public R<Long> getZoneHomePageCmsSizeByDeptId(Long deptId, String source) {
|
public R<Long> getZoneHomePageCmsSizeByDeptId(Long deptId, String source) {
|
||||||
return R.fail("通过组织Id获取专区详情对象失败:" + throwable.getMessage());
|
return R.fail("通过组织Id获取专区详情对象失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<Boolean> deleteByDeptName(String deptName, String source) {
|
||||||
|
return R.fail("通过组织名称删除特色专区失败:" + throwable.getMessage());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -269,7 +269,6 @@ public class CmsDocController extends BaseController {
|
||||||
/**
|
/**
|
||||||
* 内部接口,初始化栏目
|
* 内部接口,初始化栏目
|
||||||
*/
|
*/
|
||||||
@InnerAuth
|
|
||||||
@PostMapping("/initCmsDir/{zoneId}")
|
@PostMapping("/initCmsDir/{zoneId}")
|
||||||
@Log(title = "初始化栏目", businessType = BusinessType.INSERT)
|
@Log(title = "初始化栏目", businessType = BusinessType.INSERT)
|
||||||
@ApiOperation(value = "初始化栏目", hidden = true)
|
@ApiOperation(value = "初始化栏目", hidden = true)
|
||||||
|
|
|
||||||
|
|
@ -300,7 +300,7 @@ public class CmsDocServiceImpl implements ICmsDocService {
|
||||||
CmsDoc dirDoc = selectCmsDir(dirId);
|
CmsDoc dirDoc = selectCmsDir(dirId);
|
||||||
CmsDoc cmsDoc = cmsDocInputDto.toCmsDoc(dirDoc);
|
CmsDoc cmsDoc = cmsDocInputDto.toCmsDoc(dirDoc);
|
||||||
|
|
||||||
if (isCurrentUserZoneAdmin(dirDoc.getDeptId())|| isNoAuditRequired(dirDoc.getDeptId())) {
|
if (isNoAuditRequired(dirDoc.getDeptId()) || isCurrentUserZoneAdmin(dirDoc.getDeptId())) {
|
||||||
cmsDoc.setAuditStatus(DocAuditStatus.AUDIT_PASS.getAuditCode()); //文章自动置为审核通过状态值
|
cmsDoc.setAuditStatus(DocAuditStatus.AUDIT_PASS.getAuditCode()); //文章自动置为审核通过状态值
|
||||||
return insertCommonCmsDoc(cmsDoc,
|
return insertCommonCmsDoc(cmsDoc,
|
||||||
"创建文章:" + StringUtils.truncateStringAndConcatenatingSpecifiedString(cmsDoc.getName(), 100, "..."),
|
"创建文章:" + StringUtils.truncateStringAndConcatenatingSpecifiedString(cmsDoc.getName(), 100, "..."),
|
||||||
|
|
|
||||||
|
|
@ -156,4 +156,15 @@ public class CmsProjectController extends BaseController {
|
||||||
public AjaxResult remove(@ApiParam(name = "deptIds", value = "组织Id列表") @PathVariable Long[] deptIds) {
|
public AjaxResult remove(@ApiParam(name = "deptIds", value = "组织Id列表") @PathVariable Long[] deptIds) {
|
||||||
return toAjax(cmsProjectService.deleteCmsProjectByIds(deptIds));
|
return toAjax(cmsProjectService.deleteCmsProjectByIds(deptIds));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 内部接口-通过组织Id删除专区对应项目
|
||||||
|
*/
|
||||||
|
@InnerAuth
|
||||||
|
@Log(title = "专区对应项目", businessType = BusinessType.DELETE)
|
||||||
|
@ApiOperation(value = "内部接口-通过组织Id删除专区对应项目", hidden = true)
|
||||||
|
@DeleteMapping("/removeByDeptId/{deptId}")
|
||||||
|
public R<Boolean> removeByDeptId(@PathVariable(value = "deptId") Long deptId) {
|
||||||
|
return R.ok(cmsProjectService.deleteCmsProjectByDeptId(deptId) > 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ public interface ICmsProjectService {
|
||||||
* @param id 专区对应项目主键
|
* @param id 专区对应项目主键
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteCmsProjectById(Long id);
|
public int deleteCmsProjectByDeptId(Long deptId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过组织创建特色专区的新闻动态项目
|
* 通过组织创建特色专区的新闻动态项目
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,19 @@
|
||||||
package com.ruoyi.cms.project.service.impl;
|
package com.ruoyi.cms.project.service.impl;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.ruoyi.cms.doc.domain.CmsDir;
|
||||||
|
import com.ruoyi.cms.doc.domain.CmsDocBaseDto;
|
||||||
|
import com.ruoyi.cms.doc.domain.CmsDocSearchVo;
|
||||||
import com.ruoyi.cms.doc.service.ICmsAsyncService;
|
import com.ruoyi.cms.doc.service.ICmsAsyncService;
|
||||||
import com.ruoyi.cms.doc.service.ICmsDocService;
|
import com.ruoyi.cms.doc.service.ICmsDocService;
|
||||||
import com.ruoyi.cms.project.domain.CmsProject;
|
import com.ruoyi.cms.project.domain.CmsProject;
|
||||||
import com.ruoyi.cms.project.mapper.CmsProjectMapper;
|
import com.ruoyi.cms.project.mapper.CmsProjectMapper;
|
||||||
import com.ruoyi.cms.project.service.ICmsProjectService;
|
import com.ruoyi.cms.project.service.ICmsProjectService;
|
||||||
import com.ruoyi.cms.utils.CmsGitLinkRequestUrl;
|
import com.ruoyi.cms.utils.CmsGitLinkRequestUrl;
|
||||||
import com.ruoyi.common.core.enums.SystemRole;
|
|
||||||
import com.ruoyi.common.core.utils.PinYinStringUtils;
|
|
||||||
import com.ruoyi.common.core.constant.SecurityConstants;
|
import com.ruoyi.common.core.constant.SecurityConstants;
|
||||||
|
import com.ruoyi.common.core.enums.SystemRole;
|
||||||
import com.ruoyi.common.core.exception.ServiceException;
|
import com.ruoyi.common.core.exception.ServiceException;
|
||||||
|
import com.ruoyi.common.core.utils.PinYinStringUtils;
|
||||||
import com.ruoyi.common.core.utils.StringUtils;
|
import com.ruoyi.common.core.utils.StringUtils;
|
||||||
import com.ruoyi.common.datascope.annotation.DataScope;
|
import com.ruoyi.common.datascope.annotation.DataScope;
|
||||||
import com.ruoyi.common.httpClient.util.GitLinkRequestHelper;
|
import com.ruoyi.common.httpClient.util.GitLinkRequestHelper;
|
||||||
|
|
@ -126,6 +129,18 @@ public class CmsProjectServiceImpl implements ICmsProjectService {
|
||||||
if (cmsProject == null) {
|
if (cmsProject == null) {
|
||||||
throw new ServiceException("组织对应项目不存在(组织Id[" + deptId + "])");
|
throw new ServiceException("组织对应项目不存在(组织Id[" + deptId + "])");
|
||||||
}
|
}
|
||||||
|
// 删除专区下所有栏目及文章
|
||||||
|
List<CmsDir> cmsDirList = cmsDocService.selectCmsDocDirList(deptId, false);
|
||||||
|
for (CmsDir cmsDir : cmsDirList) {
|
||||||
|
CmsDocSearchVo cmsDocSearchVo = new CmsDocSearchVo();
|
||||||
|
cmsDocSearchVo.setDeptId(deptId);
|
||||||
|
cmsDocSearchVo.setDirName(cmsDir.getName());
|
||||||
|
List<CmsDocBaseDto> cmsDocList = cmsDocService.selectCmsDocList(cmsDir.getId(), cmsDocSearchVo);
|
||||||
|
for (CmsDocBaseDto cmsDocBaseDto : cmsDocList) {
|
||||||
|
cmsDocService.deleteCmsDocById(cmsDocBaseDto.getId());
|
||||||
|
}
|
||||||
|
cmsDocService.deleteCmsDocById(cmsDir.getId());
|
||||||
|
}
|
||||||
JSONObject result = gitLinkRequestHelper.doDelete(CmsGitLinkRequestUrl.DELETE_PROJECT(cmsProject));
|
JSONObject result = gitLinkRequestHelper.doDelete(CmsGitLinkRequestUrl.DELETE_PROJECT(cmsProject));
|
||||||
String message = result.getString("message");
|
String message = result.getString("message");
|
||||||
if ("success".equals(message)) {
|
if ("success".equals(message)) {
|
||||||
|
|
@ -144,8 +159,8 @@ public class CmsProjectServiceImpl implements ICmsProjectService {
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int deleteCmsProjectById(Long id) {
|
public int deleteCmsProjectByDeptId(Long deptId) {
|
||||||
return cmsProjectMapper.deleteCmsProjectById(id);
|
return deleteCmsProjectByIds(new Long[]{deptId});
|
||||||
}
|
}
|
||||||
|
|
||||||
private Long getOrganizationId() {
|
private Long getOrganizationId() {
|
||||||
|
|
|
||||||
|
|
@ -163,14 +163,13 @@ public class SysDeptController extends BaseController
|
||||||
public AjaxResult remove(@PathVariable Long deptId)
|
public AjaxResult remove(@PathVariable Long deptId)
|
||||||
{
|
{
|
||||||
deptService.checkUnchangeableDept(deptId);
|
deptService.checkUnchangeableDept(deptId);
|
||||||
if (deptService.hasChildByDeptId(deptId))
|
if (deptService.hasChildByDeptId(deptId)) {
|
||||||
{
|
|
||||||
return warn("存在下级部门,不允许删除");
|
return warn("存在下级部门,不允许删除");
|
||||||
}
|
}
|
||||||
if (deptService.checkDeptExistUser(deptId))
|
// if (deptService.checkDeptExistUser(deptId))
|
||||||
{
|
// {
|
||||||
return warn("部门存在用户,不允许删除");
|
// return warn("部门存在用户,不允许删除");
|
||||||
}
|
// }
|
||||||
deptService.checkDeptDataScope(deptId);
|
deptService.checkDeptDataScope(deptId);
|
||||||
return toAjax(deptService.deleteDeptById(deptId));
|
return toAjax(deptService.deleteDeptById(deptId));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -114,7 +114,8 @@ public class SysDeptRoleServiceImpl implements ISysDeptRoleService {
|
||||||
for (Long roleId : roleIds) {
|
for (Long roleId : roleIds) {
|
||||||
SysDeptRole sysDeptRole = sysDeptRoleMapper.selectSysDeptRoleByDeptIdAndRoleId(deptId, roleId);
|
SysDeptRole sysDeptRole = sysDeptRoleMapper.selectSysDeptRoleByDeptIdAndRoleId(deptId, roleId);
|
||||||
if (sysDeptRole == null) {
|
if (sysDeptRole == null) {
|
||||||
throw new ServiceException("部门下不存在该可选角色(部门名称[" + sysDept.getDeptName() + "],角色Id[" + roleId + "])");
|
// throw new ServiceException("部门下不存在该可选角色(部门名称[" + sysDept.getDeptName() + "],角色Id[" + roleId + "])");
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<SysUserDeptRole> userIdentifyList = sysUserDeptRoleMapper.selectSysUserDeptRoleByDeptIdAndRoleId(deptId, roleId);
|
List<SysUserDeptRole> userIdentifyList = sysUserDeptRoleMapper.selectSysUserDeptRoleByDeptIdAndRoleId(deptId, roleId);
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.ruoyi.system.service.impl;
|
||||||
import com.ruoyi.common.core.constant.CacheConstants;
|
import com.ruoyi.common.core.constant.CacheConstants;
|
||||||
import com.ruoyi.common.core.constant.SecurityConstants;
|
import com.ruoyi.common.core.constant.SecurityConstants;
|
||||||
import com.ruoyi.common.core.constant.UserConstants;
|
import com.ruoyi.common.core.constant.UserConstants;
|
||||||
|
import com.ruoyi.common.core.enums.SystemRole;
|
||||||
import com.ruoyi.common.core.exception.ServiceException;
|
import com.ruoyi.common.core.exception.ServiceException;
|
||||||
import com.ruoyi.common.core.text.Convert;
|
import com.ruoyi.common.core.text.Convert;
|
||||||
import com.ruoyi.common.core.utils.StringUtils;
|
import com.ruoyi.common.core.utils.StringUtils;
|
||||||
|
|
@ -18,7 +19,9 @@ import com.ruoyi.system.api.utils.FeginUtils;
|
||||||
import com.ruoyi.system.domain.vo.TreeSelect;
|
import com.ruoyi.system.domain.vo.TreeSelect;
|
||||||
import com.ruoyi.system.mapper.SysDeptMapper;
|
import com.ruoyi.system.mapper.SysDeptMapper;
|
||||||
import com.ruoyi.system.mapper.SysRoleMapper;
|
import com.ruoyi.system.mapper.SysRoleMapper;
|
||||||
|
import com.ruoyi.system.service.ISysDeptRoleService;
|
||||||
import com.ruoyi.system.service.ISysDeptService;
|
import com.ruoyi.system.service.ISysDeptService;
|
||||||
|
import com.ruoyi.system.service.ISysUserDeptRoleService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
@ -41,6 +44,12 @@ public class SysDeptServiceImpl implements ISysDeptService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private SysRoleMapper roleMapper;
|
private SysRoleMapper roleMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysDeptRoleService sysDeptRoleService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysUserDeptRoleService sysUserDeptRoleService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private RemoteZoneService remoteZoneService;
|
private RemoteZoneService remoteZoneService;
|
||||||
|
|
||||||
|
|
@ -288,6 +297,12 @@ public class SysDeptServiceImpl implements ISysDeptService {
|
||||||
switch (deptTypeData.getDictLabel()) {
|
switch (deptTypeData.getDictLabel()) {
|
||||||
case CacheConstants.SYS_DICT_DEPT_TYPE_TSZQ:
|
case CacheConstants.SYS_DICT_DEPT_TYPE_TSZQ:
|
||||||
if (isAdd) {
|
if (isAdd) {
|
||||||
|
// 设置该组织下可选角色为:专区管理员、专区运营人员、专区会员
|
||||||
|
SysRole zoneAdminRole = roleMapper.selectRoleByKey(SystemRole.ZONE_ADMIN.getRoleKey());
|
||||||
|
SysRole zoneOperatorRole = roleMapper.selectRoleByKey(SystemRole.ZONE_OPERATOR.getRoleKey());
|
||||||
|
SysRole zoneMemberRole = roleMapper.selectRoleByKey(SystemRole.ZONE_MEMBER.getRoleKey());
|
||||||
|
Long[] roleIds = new Long[]{zoneAdminRole.getRoleId(), zoneOperatorRole.getRoleId(), zoneMemberRole.getRoleId()};
|
||||||
|
sysDeptRoleService.addSysRoleListForSysDept(dept.getDeptId(), roleIds);
|
||||||
errorMessage = createProjectByDept(dept);
|
errorMessage = createProjectByDept(dept);
|
||||||
} else {
|
} else {
|
||||||
errorMessage = updateProjectByDept(dept);
|
errorMessage = updateProjectByDept(dept);
|
||||||
|
|
@ -308,6 +323,7 @@ public class SysDeptServiceImpl implements ISysDeptService {
|
||||||
if (!result) {
|
if (!result) {
|
||||||
if (isAdd) {
|
if (isAdd) {
|
||||||
deleteDeptById(dept.getDeptId());
|
deleteDeptById(dept.getDeptId());
|
||||||
|
|
||||||
}
|
}
|
||||||
throw new ServiceException(errorMessage);
|
throw new ServiceException(errorMessage);
|
||||||
}
|
}
|
||||||
|
|
@ -439,6 +455,17 @@ public class SysDeptServiceImpl implements ISysDeptService {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int deleteDeptById(Long deptId) {
|
public int deleteDeptById(Long deptId) {
|
||||||
|
SysDept dept = selectDeptById(deptId);
|
||||||
|
// 删除专区相关数据
|
||||||
|
remoteZoneService.deleteByDeptName(dept.getDeptName(), SecurityConstants.INNER);
|
||||||
|
// 删除专区下用户
|
||||||
|
sysUserDeptRoleService.deleteSysUserDeptRoleByDeptId(deptId);
|
||||||
|
// 删除组织前先删除组织下角色
|
||||||
|
SysRole zoneAdminRole = roleMapper.selectRoleByKey(SystemRole.ZONE_ADMIN.getRoleKey());
|
||||||
|
SysRole zoneOperatorRole = roleMapper.selectRoleByKey(SystemRole.ZONE_OPERATOR.getRoleKey());
|
||||||
|
SysRole zoneMemberRole = roleMapper.selectRoleByKey(SystemRole.ZONE_MEMBER.getRoleKey());
|
||||||
|
Long[] roleIds = new Long[]{zoneAdminRole.getRoleId(), zoneOperatorRole.getRoleId(), zoneMemberRole.getRoleId()};
|
||||||
|
sysDeptRoleService.deleteSysRoleListForSysDept(dept.getDeptId(), roleIds);
|
||||||
return deptMapper.deleteDeptById(deptId);
|
return deptMapper.deleteDeptById(deptId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -133,4 +133,15 @@ public class ZoneDetailController extends BaseController {
|
||||||
public AjaxResult publish(@PathVariable("id") Long id) {
|
public AjaxResult publish(@PathVariable("id") Long id) {
|
||||||
return toAjax(zoneDetailService.publishZoneDetail(id));
|
return toAjax(zoneDetailService.publishZoneDetail(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过组织名称删除特色专区
|
||||||
|
*/
|
||||||
|
@InnerAuth
|
||||||
|
@Log(title = "特色专区详情", businessType = BusinessType.DELETE)
|
||||||
|
@DeleteMapping("/{deptName}")
|
||||||
|
@ApiOperation(value = "删除特色专区")
|
||||||
|
public R<Boolean> deleteByDeptId(@PathVariable(value = "deptName") String deptName) {
|
||||||
|
return R.ok(zoneDetailService.deleteZoneDetailByDeptName(deptName) > 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -82,8 +82,17 @@ public interface ZoneDetailMapper {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过专区标识查找专区
|
* 通过专区标识查找专区
|
||||||
|
*
|
||||||
* @param zoneKey
|
* @param zoneKey
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
ZoneDetail selectZoneDetailByKey(String zoneKey);
|
ZoneDetail selectZoneDetailByKey(String zoneKey);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据名称查找专区
|
||||||
|
*
|
||||||
|
* @param name
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
ZoneDetail selectZoneDetailByName(String name);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,6 @@ import com.ruoyi.zone.resource.domain.ZoneResourceType;
|
||||||
* @date 2023-05-09
|
* @date 2023-05-09
|
||||||
*/
|
*/
|
||||||
public interface IZoneAsyncService {
|
public interface IZoneAsyncService {
|
||||||
/**
|
|
||||||
* 异步初始化专区数据
|
|
||||||
*
|
|
||||||
* @param zoneDetail 专区详情
|
|
||||||
*/
|
|
||||||
void asyncInitZoneData(ZoneDetail zoneDetail);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 异步更新该专区下当前资源类型对应的资源更新为目标资源类型
|
* 异步更新该专区下当前资源类型对应的资源更新为目标资源类型
|
||||||
|
|
@ -29,4 +23,16 @@ public interface IZoneAsyncService {
|
||||||
* 自动识别专区资源对应类型
|
* 自动识别专区资源对应类型
|
||||||
*/
|
*/
|
||||||
void asyncUpdateType();
|
void asyncUpdateType();
|
||||||
|
|
||||||
|
void initHomePage(ZoneDetail zoneDetail);
|
||||||
|
|
||||||
|
void initCms(ZoneDetail zoneDetail);
|
||||||
|
|
||||||
|
void initProject(ZoneDetail zoneDetail);
|
||||||
|
|
||||||
|
void initMember(ZoneDetail zoneDetail);
|
||||||
|
|
||||||
|
void initPartners(ZoneDetail zoneDetail);
|
||||||
|
|
||||||
|
void initResource(ZoneDetail zoneDetail);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -68,9 +68,10 @@ public interface IZoneDetailService {
|
||||||
* 删除特色专区详情信息
|
* 删除特色专区详情信息
|
||||||
*
|
*
|
||||||
* @param id 特色专区详情主键
|
* @param id 特色专区详情主键
|
||||||
|
* @param deptName
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteZoneDetailById(Long id);
|
public int deleteZoneDetailByDeptName(String deptName);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过组织新增特色专区
|
* 通过组织新增特色专区
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||||
import com.ruoyi.common.core.constant.SecurityConstants;
|
import com.ruoyi.common.core.constant.SecurityConstants;
|
||||||
import com.ruoyi.common.core.utils.DateUtils;
|
import com.ruoyi.common.core.utils.DateUtils;
|
||||||
import com.ruoyi.common.redis.service.RedisService;
|
import com.ruoyi.common.redis.service.RedisService;
|
||||||
|
import com.ruoyi.common.security.utils.SecurityUtils;
|
||||||
import com.ruoyi.system.api.RemoteCmsService;
|
import com.ruoyi.system.api.RemoteCmsService;
|
||||||
import com.ruoyi.system.api.utils.FeginUtils;
|
import com.ruoyi.system.api.utils.FeginUtils;
|
||||||
import com.ruoyi.zone.detail.domain.ZoneDetail;
|
import com.ruoyi.zone.detail.domain.ZoneDetail;
|
||||||
|
|
@ -34,9 +35,11 @@ import com.ruoyi.zone.project.service.IZoneProjectTypeService;
|
||||||
import com.ruoyi.zone.resource.domain.ZoneResource;
|
import com.ruoyi.zone.resource.domain.ZoneResource;
|
||||||
import com.ruoyi.zone.resource.domain.ZoneResourceToType;
|
import com.ruoyi.zone.resource.domain.ZoneResourceToType;
|
||||||
import com.ruoyi.zone.resource.domain.ZoneResourceType;
|
import com.ruoyi.zone.resource.domain.ZoneResourceType;
|
||||||
|
import com.ruoyi.zone.resource.domain.vo.ZoneResourceDomainInputVo;
|
||||||
import com.ruoyi.zone.resource.domain.vo.ZoneResourceTypeInputVo;
|
import com.ruoyi.zone.resource.domain.vo.ZoneResourceTypeInputVo;
|
||||||
import com.ruoyi.zone.resource.mapper.ZoneResourceMapper;
|
import com.ruoyi.zone.resource.mapper.ZoneResourceMapper;
|
||||||
import com.ruoyi.zone.resource.mapper.ZoneResourceToTypeMapper;
|
import com.ruoyi.zone.resource.mapper.ZoneResourceToTypeMapper;
|
||||||
|
import com.ruoyi.zone.resource.service.IZoneResourceDomainService;
|
||||||
import com.ruoyi.zone.resource.service.IZoneResourceService;
|
import com.ruoyi.zone.resource.service.IZoneResourceService;
|
||||||
import com.ruoyi.zone.resource.service.IZoneResourceTypeService;
|
import com.ruoyi.zone.resource.service.IZoneResourceTypeService;
|
||||||
import com.ruoyi.zone.utils.ZoneConstants;
|
import com.ruoyi.zone.utils.ZoneConstants;
|
||||||
|
|
@ -102,6 +105,9 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
@Autowired
|
@Autowired
|
||||||
@Lazy
|
@Lazy
|
||||||
private IZoneResourceTypeService zoneResourceTypeService;
|
private IZoneResourceTypeService zoneResourceTypeService;
|
||||||
|
@Autowired
|
||||||
|
@Lazy
|
||||||
|
private IZoneResourceDomainService zoneResourceDomainService;
|
||||||
|
|
||||||
@Value("${zone.initData.gitlinkProjectId}")
|
@Value("${zone.initData.gitlinkProjectId}")
|
||||||
private Long gitlinkProjectId;
|
private Long gitlinkProjectId;
|
||||||
|
|
@ -118,17 +124,26 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
@Value("${zone.initData.gitLinkUserName4}")
|
@Value("${zone.initData.gitLinkUserName4}")
|
||||||
private String gitLinkUserName4;
|
private String gitLinkUserName4;
|
||||||
|
|
||||||
|
@Async
|
||||||
@Override
|
@Override
|
||||||
public void asyncInitZoneData(ZoneDetail zoneDetail) {
|
public void initResource(ZoneDetail zoneDetail) {
|
||||||
initHomePage(zoneDetail);
|
ZoneResourceDomainInputVo zoneResourceDomainInputVo = new ZoneResourceDomainInputVo();
|
||||||
initCms(zoneDetail);
|
zoneResourceDomainInputVo.setZoneId(zoneDetail.getId());
|
||||||
initProject(zoneDetail);
|
zoneResourceDomainInputVo.setName("资源领域一");
|
||||||
initMember(zoneDetail);
|
zoneResourceDomainService.insertZoneResourceDomain(zoneResourceDomainInputVo);
|
||||||
initPartners(zoneDetail);
|
zoneResourceDomainInputVo = new ZoneResourceDomainInputVo();
|
||||||
initResourceType(zoneDetail);
|
zoneResourceDomainInputVo.setZoneId(zoneDetail.getId());
|
||||||
}
|
zoneResourceDomainInputVo.setName("资源领域二");
|
||||||
|
zoneResourceDomainService.insertZoneResourceDomain(zoneResourceDomainInputVo);
|
||||||
|
zoneResourceDomainInputVo = new ZoneResourceDomainInputVo();
|
||||||
|
zoneResourceDomainInputVo.setZoneId(zoneDetail.getId());
|
||||||
|
zoneResourceDomainInputVo.setName("资源领域三");
|
||||||
|
zoneResourceDomainService.insertZoneResourceDomain(zoneResourceDomainInputVo);
|
||||||
|
zoneResourceDomainInputVo = new ZoneResourceDomainInputVo();
|
||||||
|
zoneResourceDomainInputVo.setZoneId(zoneDetail.getId());
|
||||||
|
zoneResourceDomainInputVo.setName("资源领域四");
|
||||||
|
zoneResourceDomainService.insertZoneResourceDomain(zoneResourceDomainInputVo);
|
||||||
|
|
||||||
private void initResourceType(ZoneDetail zoneDetail) {
|
|
||||||
ZoneResourceTypeInputVo zoneResourceTypeInputVo = new ZoneResourceTypeInputVo();
|
ZoneResourceTypeInputVo zoneResourceTypeInputVo = new ZoneResourceTypeInputVo();
|
||||||
zoneResourceTypeInputVo.setZoneId(zoneDetail.getId());
|
zoneResourceTypeInputVo.setZoneId(zoneDetail.getId());
|
||||||
zoneResourceTypeInputVo.setName("图片文件");
|
zoneResourceTypeInputVo.setName("图片文件");
|
||||||
|
|
@ -237,7 +252,9 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initPartners(ZoneDetail zoneDetail) {
|
@Async
|
||||||
|
@Override
|
||||||
|
public void initPartners(ZoneDetail zoneDetail) {
|
||||||
//初始化合作伙伴默认分类
|
//初始化合作伙伴默认分类
|
||||||
ZonePartnersTypeInputVo zonePartnersTypeInputVo = new ZonePartnersTypeInputVo();
|
ZonePartnersTypeInputVo zonePartnersTypeInputVo = new ZonePartnersTypeInputVo();
|
||||||
zonePartnersTypeInputVo.setName(ZoneConstants.DEFAULT_TYPE_NAME);
|
zonePartnersTypeInputVo.setName(ZoneConstants.DEFAULT_TYPE_NAME);
|
||||||
|
|
@ -245,7 +262,9 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
zonePartnersTypeService.insertZonePartnersType(zonePartnersTypeInputVo);
|
zonePartnersTypeService.insertZonePartnersType(zonePartnersTypeInputVo);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initHomePage(ZoneDetail zoneDetail) {
|
@Async
|
||||||
|
@Override
|
||||||
|
public void initHomePage(ZoneDetail zoneDetail) {
|
||||||
//region 初始化首页配置
|
//region 初始化首页配置
|
||||||
ZoneDetailUpdateVo zoneDetailUpdateVo = new ZoneDetailUpdateVo();
|
ZoneDetailUpdateVo zoneDetailUpdateVo = new ZoneDetailUpdateVo();
|
||||||
zoneDetailUpdateVo.setId(zoneDetail.getId());
|
zoneDetailUpdateVo.setId(zoneDetail.getId());
|
||||||
|
|
@ -262,63 +281,36 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
//endregion
|
//endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initCms(ZoneDetail zoneDetail) {
|
private void initCms(Long zoneId, String count, int sort) {
|
||||||
//region 初始化资讯
|
|
||||||
//初始化栏目
|
//初始化栏目
|
||||||
JSONObject cmsDirInput = new JSONObject();
|
JSONObject cmsDirInput = new JSONObject();
|
||||||
//初始化第一条新闻
|
//初始化第一条新闻
|
||||||
cmsDirInput.put("name", "栏目一");
|
cmsDirInput.put("name", "栏目一".replaceAll("一", count));
|
||||||
cmsDirInput.put("sort", 1);
|
cmsDirInput.put("sort", sort);
|
||||||
Object cmsDirObj = FeginUtils.getReturnData(
|
Object cmsDirObj = FeginUtils.getReturnData(
|
||||||
remoteCmsService.initCmsDir(zoneDetail.getId(), cmsDirInput, SecurityConstants.INNER)
|
remoteCmsService.initCmsDir(zoneId, cmsDirInput, SecurityUtils.getUserKey())
|
||||||
);
|
);
|
||||||
JSONObject cmsDir = JSONObject.parseObject(JSON.toJSONString(cmsDirObj));
|
JSONObject cmsDir = JSONObject.parseObject(JSON.toJSONString(cmsDirObj));
|
||||||
JSONObject cmsDocInput = new JSONObject();
|
JSONObject cmsDocInput = new JSONObject();
|
||||||
cmsDocInput.put("name", "第一条新闻");
|
cmsDocInput.put("name", "第一条新闻".replaceAll("一", count));
|
||||||
cmsDocInput.put("content", encodeContent("第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容行第一条新闻的新闻详情正文内容..."));
|
cmsDocInput.put("content", encodeContent("第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容行第一条新闻的新闻详情正文内容...".replaceAll("一", count)));
|
||||||
cmsDocInput.put("headImg", "https://www.gitlink.org.cn/api/attachments/421073");
|
cmsDocInput.put("headImg", "https://www.gitlink.org.cn/api/attachments/421073");
|
||||||
cmsDocInput.put("summary", "第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容行第一条新闻的新闻详情正文内容...");
|
cmsDocInput.put("summary", "第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容第一条新闻的新闻详情正文内容行第一条新闻的新闻详情正文内容...".replaceAll("一", count));
|
||||||
remoteCmsService.initCmsDoc(cmsDir.getLong("id"), cmsDocInput, SecurityConstants.INNER);
|
remoteCmsService.initCmsDoc(cmsDir.getLong("id"), cmsDocInput, SecurityConstants.INNER, SecurityUtils.getUserKey());
|
||||||
//初始化第二条新闻
|
|
||||||
cmsDirInput.put("name", "栏目二");
|
|
||||||
cmsDirInput.put("sort", 2);
|
|
||||||
cmsDirObj = FeginUtils.getReturnData(
|
|
||||||
remoteCmsService.initCmsDir(zoneDetail.getId(), cmsDirInput, SecurityConstants.INNER)
|
|
||||||
);
|
|
||||||
cmsDir = JSONObject.parseObject(JSON.toJSONString(cmsDirObj));
|
|
||||||
cmsDocInput = new JSONObject();
|
|
||||||
cmsDocInput.put("name", "第二条新闻");
|
|
||||||
cmsDocInput.put("content", encodeContent("第二条新闻的新闻详情正文内容第二条新闻的新闻详情正文内容第二条新闻的新闻详情正文内..."));
|
|
||||||
cmsDocInput.put("summary", "第二条新闻的新闻详情正文内容第二条新闻的新闻详情正文内容第二条新闻的新闻详情正文内...");
|
|
||||||
remoteCmsService.initCmsDoc(cmsDir.getLong("id"), cmsDocInput, SecurityConstants.INNER);
|
|
||||||
//初始化第三条新闻
|
|
||||||
cmsDirInput.put("name", "栏目三");
|
|
||||||
cmsDirInput.put("sort", 3);
|
|
||||||
cmsDirObj = FeginUtils.getReturnData(
|
|
||||||
remoteCmsService.initCmsDir(zoneDetail.getId(), cmsDirInput, SecurityConstants.INNER)
|
|
||||||
);
|
|
||||||
cmsDir = JSONObject.parseObject(JSON.toJSONString(cmsDirObj));
|
|
||||||
cmsDocInput = new JSONObject();
|
|
||||||
cmsDocInput.put("name", "第三条新闻");
|
|
||||||
cmsDocInput.put("content", encodeContent("第三条新闻的新闻详情正文内容第三条新闻的新闻详情正文内容第三条新闻的新闻详情正文内..."));
|
|
||||||
cmsDocInput.put("summary", "第三条新闻的新闻详情正文内容第三条新闻的新闻详情正文内容第三条新闻的新闻详情正文内...");
|
|
||||||
remoteCmsService.initCmsDoc(cmsDir.getLong("id"), cmsDocInput, SecurityConstants.INNER);
|
|
||||||
//初始化第四条新闻
|
|
||||||
cmsDirInput.put("name", "栏目四");
|
|
||||||
cmsDirInput.put("sort", 4);
|
|
||||||
cmsDirObj = FeginUtils.getReturnData(
|
|
||||||
remoteCmsService.initCmsDir(zoneDetail.getId(), cmsDirInput, SecurityConstants.INNER)
|
|
||||||
);
|
|
||||||
cmsDir = JSONObject.parseObject(JSON.toJSONString(cmsDirObj));
|
|
||||||
cmsDocInput = new JSONObject();
|
|
||||||
cmsDocInput.put("name", "第四条新闻");
|
|
||||||
cmsDocInput.put("content", encodeContent("第四条新闻的新闻详情正文内容第四条新闻的新闻详情正文内容第四条新闻的新闻详情正文内..."));
|
|
||||||
cmsDocInput.put("summary", "第四条新闻的新闻详情正文内容第四条新闻的新闻详情正文内容第四条新闻的新闻详情正文内...");
|
|
||||||
remoteCmsService.initCmsDoc(cmsDir.getLong("id"), cmsDocInput, SecurityConstants.INNER);
|
|
||||||
//endregion
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initProject(ZoneDetail zoneDetail) {
|
@Async
|
||||||
|
@Override
|
||||||
|
public void initCms(ZoneDetail zoneDetail) {
|
||||||
|
initCms(zoneDetail.getId(), "一", 1);
|
||||||
|
initCms(zoneDetail.getId(), "二", 2);
|
||||||
|
initCms(zoneDetail.getId(), "三", 3);
|
||||||
|
initCms(zoneDetail.getId(), "四", 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Async
|
||||||
|
@Override
|
||||||
|
public void initProject(ZoneDetail zoneDetail) {
|
||||||
//region 初始化项目
|
//region 初始化项目
|
||||||
//初始化项目类型
|
//初始化项目类型
|
||||||
ZoneProjectTypeInputVo zoneProjectTypeInputVo = new ZoneProjectTypeInputVo();
|
ZoneProjectTypeInputVo zoneProjectTypeInputVo = new ZoneProjectTypeInputVo();
|
||||||
|
|
@ -351,7 +343,9 @@ public class ZoneAsyncServiceImpl implements IZoneAsyncService {
|
||||||
//endregion
|
//endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initMember(ZoneDetail zoneDetail) {
|
@Async
|
||||||
|
@Override
|
||||||
|
public void initMember(ZoneDetail zoneDetail) {
|
||||||
//region 初始化会员
|
//region 初始化会员
|
||||||
//初始化会员类别
|
//初始化会员类别
|
||||||
ZoneMemberTypeInputVo zoneMemberTypeInputVo = new ZoneMemberTypeInputVo();
|
ZoneMemberTypeInputVo zoneMemberTypeInputVo = new ZoneMemberTypeInputVo();
|
||||||
|
|
|
||||||
|
|
@ -27,11 +27,17 @@ import com.ruoyi.system.api.utils.FeginUtils;
|
||||||
import com.ruoyi.zone.detail.domain.ZoneDetail;
|
import com.ruoyi.zone.detail.domain.ZoneDetail;
|
||||||
import com.ruoyi.zone.detail.domain.vo.*;
|
import com.ruoyi.zone.detail.domain.vo.*;
|
||||||
import com.ruoyi.zone.detail.mapper.ZoneDetailMapper;
|
import com.ruoyi.zone.detail.mapper.ZoneDetailMapper;
|
||||||
|
import com.ruoyi.zone.detail.service.IZoneAsyncService;
|
||||||
import com.ruoyi.zone.detail.service.IZoneDetailService;
|
import com.ruoyi.zone.detail.service.IZoneDetailService;
|
||||||
import com.ruoyi.zone.member.domain.vo.ZoneMemberSearchVo;
|
import com.ruoyi.zone.member.domain.vo.ZoneMemberSearchVo;
|
||||||
|
import com.ruoyi.zone.member.mapper.ZoneMemberLevelMapper;
|
||||||
import com.ruoyi.zone.member.mapper.ZoneMemberMapper;
|
import com.ruoyi.zone.member.mapper.ZoneMemberMapper;
|
||||||
|
import com.ruoyi.zone.member.mapper.ZoneMemberTypeMapper;
|
||||||
import com.ruoyi.zone.project.domain.vo.ZoneProjectSearchVo;
|
import com.ruoyi.zone.project.domain.vo.ZoneProjectSearchVo;
|
||||||
import com.ruoyi.zone.project.mapper.ZoneProjectMapper;
|
import com.ruoyi.zone.project.mapper.ZoneProjectMapper;
|
||||||
|
import com.ruoyi.zone.project.mapper.ZoneProjectTypeMapper;
|
||||||
|
import com.ruoyi.zone.resource.mapper.ZoneResourceDomainMapper;
|
||||||
|
import com.ruoyi.zone.resource.mapper.ZoneResourceTypeMapper;
|
||||||
import com.ruoyi.zone.utils.ZoneConstants;
|
import com.ruoyi.zone.utils.ZoneConstants;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
|
@ -63,11 +69,21 @@ public class ZoneDetailServiceImpl implements IZoneDetailService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private RemoteUserService remoteUserService;
|
private RemoteUserService remoteUserService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ZoneAsyncServiceImpl zoneAsyncService;
|
private IZoneAsyncService zoneAsyncService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ZoneProjectMapper zoneProjectMapper;
|
private ZoneProjectMapper zoneProjectMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private ZoneProjectTypeMapper zoneProjectTypeMapper;
|
||||||
|
@Autowired
|
||||||
private ZoneMemberMapper zoneMemberMapper;
|
private ZoneMemberMapper zoneMemberMapper;
|
||||||
|
@Autowired
|
||||||
|
private ZoneMemberTypeMapper zoneMemberTypeMapper;
|
||||||
|
@Autowired
|
||||||
|
private ZoneMemberLevelMapper zoneMemberLevelMapper;
|
||||||
|
@Autowired
|
||||||
|
private ZoneResourceTypeMapper zoneResourceTypeMapper;
|
||||||
|
@Autowired
|
||||||
|
private ZoneResourceDomainMapper zoneResourceDomainMapper;
|
||||||
@Value("${zone.zoneAdminUrl}")
|
@Value("${zone.zoneAdminUrl}")
|
||||||
private String zoneAdminUrl;
|
private String zoneAdminUrl;
|
||||||
@Value("${zone.zoneConfigurationUrl}")
|
@Value("${zone.zoneConfigurationUrl}")
|
||||||
|
|
@ -243,11 +259,28 @@ public class ZoneDetailServiceImpl implements IZoneDetailService {
|
||||||
* 删除特色专区详情信息
|
* 删除特色专区详情信息
|
||||||
*
|
*
|
||||||
* @param id 特色专区详情主键
|
* @param id 特色专区详情主键
|
||||||
|
* @param deptName
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int deleteZoneDetailById(Long id) {
|
public int deleteZoneDetailByDeptName(String deptName) {
|
||||||
return zoneDetailMapper.deleteZoneDetailById(id);
|
ZoneDetail zoneDetail = zoneDetailMapper.selectZoneDetailByName(deptName);
|
||||||
|
if (zoneDetail == null) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
// 1、删除专区对应项目
|
||||||
|
remoteCmsService.removeByDeptId(zoneDetail.getDeptId(), SecurityConstants.INNER);
|
||||||
|
// 2、删除专区会员、会员类别、会员等级
|
||||||
|
zoneMemberMapper.deleteZoneMemberByZoneId(zoneDetail.getId());
|
||||||
|
zoneMemberTypeMapper.deleteZoneMemberTypeByZoneId(zoneDetail.getId());
|
||||||
|
zoneMemberLevelMapper.deleteZoneMemberLevelByZoneId(zoneDetail.getId());
|
||||||
|
// 3、删除专区项目、项目类别、项目
|
||||||
|
zoneProjectMapper.deleteZoneProjectByZoneId(zoneDetail.getId());
|
||||||
|
zoneProjectTypeMapper.deleteZoneProjectTypeByZoneId(zoneDetail.getId());
|
||||||
|
// 4、删除专区资源类型、资源领域
|
||||||
|
zoneResourceTypeMapper.deleteZoneResourceTypeByZoneId(zoneDetail.getId());
|
||||||
|
zoneResourceDomainMapper.deleteZoneResourceDomainByZoneId(zoneDetail.getId());
|
||||||
|
return zoneDetailMapper.deleteZoneDetailById(zoneDetail.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -283,7 +316,12 @@ public class ZoneDetailServiceImpl implements IZoneDetailService {
|
||||||
zoneDetail.setKey(zoneKey);
|
zoneDetail.setKey(zoneKey);
|
||||||
boolean isSuccess = insertZoneDetail(zoneDetail) > 0;
|
boolean isSuccess = insertZoneDetail(zoneDetail) > 0;
|
||||||
if (isSuccess) {
|
if (isSuccess) {
|
||||||
zoneAsyncService.asyncInitZoneData(zoneDetail);
|
zoneAsyncService.initHomePage(zoneDetail);
|
||||||
|
zoneAsyncService.initCms(zoneDetail);
|
||||||
|
zoneAsyncService.initProject(zoneDetail);
|
||||||
|
zoneAsyncService.initMember(zoneDetail);
|
||||||
|
zoneAsyncService.initPartners(zoneDetail);
|
||||||
|
zoneAsyncService.initResource(zoneDetail);
|
||||||
}
|
}
|
||||||
|
|
||||||
return isSuccess;
|
return isSuccess;
|
||||||
|
|
|
||||||
|
|
@ -131,4 +131,12 @@ public interface ZoneMemberLevelMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区Id删除专区会员等级
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneMemberLevelByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -128,4 +128,12 @@ public interface ZoneMemberMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer batchUpdateSortIncreased(@Param("zoneMember") ZoneMember zoneMember, @Param("setSort") Integer setSort);
|
Integer batchUpdateSortIncreased(@Param("zoneMember") ZoneMember zoneMember, @Param("setSort") Integer setSort);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过专区id删除专区会员
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneMemberByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -131,4 +131,12 @@ public interface ZoneMemberTypeMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区Id删除会员类别
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneMemberTypeByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -650,6 +650,7 @@ public class ZoneMemberServiceImpl implements IZoneMemberService {
|
||||||
String imageUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s", gitLinkUrl, imagePath));
|
String imageUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s", gitLinkUrl, imagePath));
|
||||||
zoneMember.setImageUrl(imageUrl);
|
zoneMember.setImageUrl(imageUrl);
|
||||||
zoneMember.setIsAudit(ZoneConstants.MEMBER_AUDIT_PASS);
|
zoneMember.setIsAudit(ZoneConstants.MEMBER_AUDIT_PASS);
|
||||||
|
createMemberUserIdentify(zoneDetail, sysUser);
|
||||||
zoneMember.setUserId(sysUser.getUserId());
|
zoneMember.setUserId(sysUser.getUserId());
|
||||||
zoneMember.setDeptId(zoneDetail.getDeptId());
|
zoneMember.setDeptId(zoneDetail.getDeptId());
|
||||||
zoneMember.setCreateTime(DateUtils.getNowDate());
|
zoneMember.setCreateTime(DateUtils.getNowDate());
|
||||||
|
|
|
||||||
|
|
@ -147,4 +147,12 @@ public interface ZoneProjectMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer selectHomepageCount(Long zoneId);
|
Integer selectHomepageCount(Long zoneId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区id删除专区项目
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneProjectByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -135,4 +135,12 @@ public interface ZoneProjectTypeMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
Integer batchUpdateSortIncreased(@Param("zoneId") Long zoneId, @Param("setSort") Integer setSort);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区Id删除项目类型
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneProjectTypeByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -70,4 +70,12 @@ public interface ZoneResourceDomainMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
ZoneResourceDomain selectZoneResourceDomainByNameAndZoneId(@Param("name") String name, @Param("zoneId") Long zoneId);
|
ZoneResourceDomain selectZoneResourceDomainByNameAndZoneId(@Param("name") String name, @Param("zoneId") Long zoneId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区Id删除资源领域
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneResourceDomainByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -86,4 +86,12 @@ public interface ZoneResourceTypeMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<ZoneResourceType> selectContainFileZoneResourceTypeList(ZoneResourceType zoneResourceType);
|
List<ZoneResourceType> selectContainFileZoneResourceTypeList(ZoneResourceType zoneResourceType);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据专区Id删除资源类型
|
||||||
|
*
|
||||||
|
* @param zoneId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int deleteZoneResourceTypeByZoneId(Long zoneId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@
|
||||||
<result property="template" column="template"/>
|
<result property="template" column="template"/>
|
||||||
<result property="helperShow" column="helper_show"/>
|
<result property="helperShow" column="helper_show"/>
|
||||||
<result property="helperTitle" column="helper_title"/>
|
<result property="helperTitle" column="helper_title"/>
|
||||||
<result property="docNeedAudit" column=" doc_need_audit"/>
|
<result property="docNeedAudit" column="doc_need_audit"/>
|
||||||
<result property="resourceNeedAudit" column="resource_need_audit"/>
|
<result property="resourceNeedAudit" column="resource_need_audit"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
@ -150,6 +150,10 @@
|
||||||
<include refid="selectZoneDetailVo"/>
|
<include refid="selectZoneDetailVo"/>
|
||||||
where `key` = #{key}
|
where `key` = #{key}
|
||||||
</select>
|
</select>
|
||||||
|
<select id="selectZoneDetailByName" resultMap="ZoneDetailResult">
|
||||||
|
<include refid="selectZoneDetailVo"/>
|
||||||
|
where `name` = #{name}
|
||||||
|
</select>
|
||||||
|
|
||||||
<insert id="insertZoneDetail" parameterType="ZoneDetail" useGeneratedKeys="true" keyProperty="id">
|
<insert id="insertZoneDetail" parameterType="ZoneDetail" useGeneratedKeys="true" keyProperty="id">
|
||||||
insert into zone_detail
|
insert into zone_detail
|
||||||
|
|
@ -185,7 +189,7 @@
|
||||||
<if test="template != null">template,</if>
|
<if test="template != null">template,</if>
|
||||||
<if test="helperTitle != null">helper_title,</if>
|
<if test="helperTitle != null">helper_title,</if>
|
||||||
<if test="helperShow != null">helper_show,</if>
|
<if test="helperShow != null">helper_show,</if>
|
||||||
<if test="docNeedAudit != null"> doc_need_audit,</if>
|
<if test="docNeedAudit != null">doc_need_audit,</if>
|
||||||
<if test="resourceNeedAudit != null">resource_need_audit,</if>
|
<if test="resourceNeedAudit != null">resource_need_audit,</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
|
@ -260,7 +264,7 @@
|
||||||
<if test="template != null">template = #{template},</if>
|
<if test="template != null">template = #{template},</if>
|
||||||
<if test="helperShow != null">helper_show = #{helperShow},</if>
|
<if test="helperShow != null">helper_show = #{helperShow},</if>
|
||||||
<if test="helperTitle != null">helper_title = #{helperTitle},</if>
|
<if test="helperTitle != null">helper_title = #{helperTitle},</if>
|
||||||
<if test="docNeedAudit != null"> doc_need_audit = #{docNeedAudit},</if>
|
<if test="docNeedAudit != null">doc_need_audit = #{docNeedAudit},</if>
|
||||||
<if test="resourceNeedAudit != null">resource_need_audit = #{resourceNeedAudit},</if>
|
<if test="resourceNeedAudit != null">resource_need_audit = #{resourceNeedAudit},</if>
|
||||||
</trim>
|
</trim>
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
|
|
|
||||||
|
|
@ -169,4 +169,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneMemberLevelByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_member_level
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -341,4 +341,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneMemberByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_member
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -169,4 +169,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneMemberTypeByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_member_type
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -251,4 +251,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneProjectByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_project
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -177,4 +177,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneProjectTypeByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_project_type
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -122,4 +122,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneResourceDomainByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_resource_domain
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -153,4 +153,9 @@
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
<delete id="deleteZoneResourceTypeByZoneId">
|
||||||
|
delete
|
||||||
|
from zone_resource_type
|
||||||
|
where zone_id = #{zoneId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -0,0 +1,56 @@
|
||||||
|
-- 对没有资源领域的专区初始化数据
|
||||||
|
INSERT INTO `zone_resource_domain` (`name`, `sort`, `dept_id`, `del_flag`, `create_by`, `create_time`, `update_by`,
|
||||||
|
`update_time`, `zone_id`)
|
||||||
|
SELECT '资源领域一',
|
||||||
|
1,
|
||||||
|
dept_id,
|
||||||
|
'0',
|
||||||
|
'admin',
|
||||||
|
NOW(),
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
id
|
||||||
|
from zone_detail
|
||||||
|
where id not in (select zone_id from zone_resource_domain where name not in ('资源领域二', '资源领域三', '资源领域四'));
|
||||||
|
|
||||||
|
INSERT INTO `zone_resource_domain` (`name`, `sort`, `dept_id`, `del_flag`, `create_by`, `create_time`, `update_by`,
|
||||||
|
`update_time`, `zone_id`)
|
||||||
|
SELECT '资源领域二',
|
||||||
|
2,
|
||||||
|
dept_id,
|
||||||
|
'0',
|
||||||
|
'admin',
|
||||||
|
NOW(),
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
id
|
||||||
|
from zone_detail
|
||||||
|
where id not in (select zone_id from zone_resource_domain where name not in ('资源领域一', '资源领域三', '资源领域四'));
|
||||||
|
|
||||||
|
INSERT INTO `zone_resource_domain` (`name`, `sort`, `dept_id`, `del_flag`, `create_by`, `create_time`, `update_by`,
|
||||||
|
`update_time`, `zone_id`)
|
||||||
|
SELECT '资源领域三',
|
||||||
|
3,
|
||||||
|
dept_id,
|
||||||
|
'0',
|
||||||
|
'admin',
|
||||||
|
NOW(),
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
id
|
||||||
|
from zone_detail
|
||||||
|
where id not in (select zone_id from zone_resource_domain where name not in ('资源领域一', '资源领域二', '资源领域四'));
|
||||||
|
|
||||||
|
INSERT INTO `zone_resource_domain` (`name`, `sort`, `dept_id`, `del_flag`, `create_by`, `create_time`, `update_by`,
|
||||||
|
`update_time`, `zone_id`)
|
||||||
|
SELECT '资源领域四',
|
||||||
|
4,
|
||||||
|
dept_id,
|
||||||
|
'0',
|
||||||
|
'admin',
|
||||||
|
NOW(),
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
id
|
||||||
|
from zone_detail
|
||||||
|
where id not in (select zone_id from zone_resource_domain where name not in ('资源领域一', '资源领域二', '资源领域三'));
|
||||||
Loading…
Reference in New Issue