@@ -0,0 +1,18 @@
|
||||
package com.cloudhandson.vpdbackoffice.domain.ords;
|
||||
|
||||
public record OrdsHandlerView(
|
||||
String schemaName,
|
||||
String moduleName,
|
||||
String basePath,
|
||||
String template,
|
||||
String method,
|
||||
String sourceType,
|
||||
String source,
|
||||
String parameters,
|
||||
String packageSource
|
||||
) {
|
||||
|
||||
public String fullPath() {
|
||||
return "/ords/" + schemaName + "/" + basePath + template;
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,8 @@ public record PermissionView(
|
||||
String objectName,
|
||||
String action,
|
||||
String rules,
|
||||
String visibleColumns
|
||||
String visibleColumns,
|
||||
String filterPreview,
|
||||
String nullPolicyPreview
|
||||
) {
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.cloudhandson.vpdbackoffice.mapper;
|
||||
|
||||
import com.cloudhandson.vpdbackoffice.domain.ords.OrdsHandlerView;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface OrdsMetadataMapper {
|
||||
|
||||
List<OrdsHandlerView> findHandlers();
|
||||
|
||||
String findHandlerPackageSource();
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.cloudhandson.vpdbackoffice.service;
|
||||
|
||||
import com.cloudhandson.vpdbackoffice.domain.ords.OrdsHandlerView;
|
||||
import com.cloudhandson.vpdbackoffice.mapper.OrdsMetadataMapper;
|
||||
import java.util.List;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class OrdsMetadataService {
|
||||
|
||||
private final OrdsMetadataMapper mapper;
|
||||
|
||||
public OrdsMetadataService(OrdsMetadataMapper mapper) {
|
||||
this.mapper = mapper;
|
||||
}
|
||||
|
||||
public List<OrdsHandlerView> findHandlers() {
|
||||
String packageSource = mapper.findHandlerPackageSource();
|
||||
return mapper.findHandlers().stream()
|
||||
.map(handler -> new OrdsHandlerView(
|
||||
handler.schemaName(),
|
||||
handler.moduleName(),
|
||||
handler.basePath(),
|
||||
handler.template(),
|
||||
handler.method(),
|
||||
handler.sourceType(),
|
||||
handler.source(),
|
||||
handler.parameters(),
|
||||
packageSource
|
||||
))
|
||||
.toList();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.cloudhandson.vpdbackoffice.web;
|
||||
|
||||
import com.cloudhandson.vpdbackoffice.service.OrdsMetadataService;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
@Controller
|
||||
public class OrdsHandlerController {
|
||||
|
||||
private final OrdsMetadataService ordsMetadataService;
|
||||
|
||||
public OrdsHandlerController(OrdsMetadataService ordsMetadataService) {
|
||||
this.ordsMetadataService = ordsMetadataService;
|
||||
}
|
||||
|
||||
@GetMapping("/ords-handlers")
|
||||
public String handlers(Model model) {
|
||||
model.addAttribute("handlers", ordsMetadataService.findHandlers());
|
||||
return "ords-handlers";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user