|  | @ -1,5 +1,6 @@
 | 
	
		
			
				|  |  | package com.yihu.jw.base.endpoint.module;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.yihu.jw.base.contant.CommonContant;
 | 
	
		
			
				|  |  | import com.yihu.jw.base.service.module.ModuleService;
 | 
	
		
			
				|  |  | import com.yihu.jw.base.util.ErrorCodeUtil;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.module.ModuleDO;
 | 
	
	
		
			
				|  | @ -14,11 +15,15 @@ import com.yihu.jw.rm.base.BaseRequestMapping;
 | 
	
		
			
				|  |  | import io.swagger.annotations.Api;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiOperation;
 | 
	
		
			
				|  |  | import io.swagger.annotations.ApiParam;
 | 
	
		
			
				|  |  | import org.apache.commons.lang3.StringUtils;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.http.MediaType;
 | 
	
		
			
				|  |  | import org.springframework.web.bind.annotation.*;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.ArrayList;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | import java.util.Map;
 | 
	
		
			
				|  |  | import java.util.stream.Collectors;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | /**
 | 
	
		
			
				|  |  |  * Endpoint - 模块
 | 
	
	
		
			
				|  | @ -40,10 +45,33 @@ public class ModuleEndpoint extends EnvelopRestEndpoint {
 | 
	
		
			
				|  |  |             @ApiParam(name = "json_data", value = "Json数据", required = true)
 | 
	
		
			
				|  |  |             @RequestBody String jsonData) throws Exception {
 | 
	
		
			
				|  |  |         ModuleDO module = toEntity(jsonData, ModuleDO.class);
 | 
	
		
			
				|  |  |         module = moduleService.save(module);
 | 
	
		
			
				|  |  |         int count = moduleService.isExistName(module.getName());
 | 
	
		
			
				|  |  |         if(count>0){
 | 
	
		
			
				|  |  |             return failed(errorCodeUtil.getErrorMsg(BaseErrorCode.Module.NAME_IS_EXIST), ObjEnvelop.class);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         module = moduleService.addModule(module);
 | 
	
		
			
				|  |  |         return success(module, ModuleVO.class);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.Module.STATUS)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "生效/失效")
 | 
	
		
			
				|  |  |     public Envelop status(
 | 
	
		
			
				|  |  |             @ApiParam(name = "id", value = "id", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "id") String id,
 | 
	
		
			
				|  |  |             @ApiParam(name = "status", value = "1生效,0失效", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "status") Integer status) {
 | 
	
		
			
				|  |  |         moduleService.updateStatus(id, status);
 | 
	
		
			
				|  |  |         return success("修改成功");
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.Module.IS_NAME_EXIST)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "名称是否存在",notes = "返回值中的obj=1表示名称已经存在,0表示名称不存在")
 | 
	
		
			
				|  |  |     public ObjEnvelop isNameExist(
 | 
	
		
			
				|  |  |             @ApiParam(name = "name", value = "名称", required = true)
 | 
	
		
			
				|  |  |             @RequestParam(value = "name") String name) {
 | 
	
		
			
				|  |  |         return success(moduleService.isExistName(name));
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @PostMapping(value = BaseRequestMapping.Module.DELETE)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "删除")
 | 
	
		
			
				|  |  |     public Envelop delete(
 | 
	
	
		
			
				|  | @ -62,6 +90,10 @@ public class ModuleEndpoint extends EnvelopRestEndpoint {
 | 
	
		
			
				|  |  |         if (null == module.getId()) {
 | 
	
		
			
				|  |  |             return failed(errorCodeUtil.getErrorMsg(BaseErrorCode.Common.ID_IS_NULL), ObjEnvelop.class);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         int count = moduleService.isExistName(module.getName());
 | 
	
		
			
				|  |  |         if(count > 1){
 | 
	
		
			
				|  |  |             return failed(errorCodeUtil.getErrorMsg(BaseErrorCode.Module.NAME_IS_EXIST), ObjEnvelop.class);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         module = moduleService.save(module);
 | 
	
		
			
				|  |  |         return success(module, ModuleVO.class);
 | 
	
		
			
				|  |  |     }
 | 
	
	
		
			
				|  | @ -97,4 +129,27 @@ public class ModuleEndpoint extends EnvelopRestEndpoint {
 | 
	
		
			
				|  |  |         return success(modules, ModuleVO.class);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @GetMapping(value = BaseRequestMapping.Module.FIND_ALL)
 | 
	
		
			
				|  |  |     @ApiOperation(value = "获取列表")
 | 
	
		
			
				|  |  |     public ListEnvelop<ModuleVO> findAll (
 | 
	
		
			
				|  |  |             @ApiParam(name = "status", value = "状态")
 | 
	
		
			
				|  |  |             @RequestParam(value = "status", required = false) String status) throws Exception {
 | 
	
		
			
				|  |  |         String filters = null;
 | 
	
		
			
				|  |  |         if(StringUtils.isNotBlank(status)){
 | 
	
		
			
				|  |  |             filters = "status="+status;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         List<ModuleDO> modules = moduleService.search(null, filters, null);
 | 
	
		
			
				|  |  |         List<ModuleVO> moduleVOs = convertToModels(modules,new ArrayList<>(modules.size()),ModuleVO.class);
 | 
	
		
			
				|  |  |         Map<String,List<ModuleVO>> map = moduleVOs.stream().collect(Collectors.groupingBy(ModuleVO::getParentId));
 | 
	
		
			
				|  |  |         moduleVOs.forEach(module->{
 | 
	
		
			
				|  |  |             List<ModuleVO> tmp = map.get(module.getId());
 | 
	
		
			
				|  |  |             module.setChildren(tmp);
 | 
	
		
			
				|  |  |         });
 | 
	
		
			
				|  |  |         moduleVOs = moduleVOs.stream()
 | 
	
		
			
				|  |  |                 .filter(module -> CommonContant.DEFAULT_PARENTID.equals(module.getParentId()))
 | 
	
		
			
				|  |  |                 .collect(Collectors.toList());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         return success(moduleVOs);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | }
 |