package cc.mrbird.febs.ai.controller.productPoint; import cc.mrbird.febs.ai.controller.fileUpload.FileUploadController; import cc.mrbird.febs.ai.entity.AiProductCategory; import cc.mrbird.febs.ai.entity.AiProductPoint; import cc.mrbird.febs.ai.service.AiProductPointService; import cc.mrbird.febs.common.annotation.ControllerEndpoint; import cc.mrbird.febs.common.controller.BaseController; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import javax.validation.constraints.NotNull; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; /** * @author Administrator */ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "/admin/productPoint") public class AiProductPointController extends BaseController { private final AiProductPointService service; @GetMapping("list") public FebsResponse list(AiProductPoint dto, QueryRequest request) { String companyId = getCurrentUserCompanyId(); dto.setCompanyId(companyId); Map data = getDataTable(service.listInPage(dto, request)); return new FebsResponse().success().data(data); } @PostMapping("add") @ControllerEndpoint(operation = "新增", exceptionMessage = "操作失败") public FebsResponse add(@RequestBody @Valid AiProductPoint dto) { String companyId = getCurrentUserCompanyId(); dto.setCompanyId(companyId); return service.add(dto); } @PostMapping("update") @ControllerEndpoint(operation = "更新", exceptionMessage = "操作失败") public FebsResponse update(@RequestBody @Valid AiProductPoint dto) { return service.update(dto); } @GetMapping("delete/{id}") @ControllerEndpoint(operation = "删除", exceptionMessage = "操作失败") public FebsResponse delete( @NotNull(message = "{required}") @PathVariable String id ) { return service.delete(id); } @GetMapping(value = "/pointTree") public FebsResponse pointTree() { String companyId = getCurrentUserCompanyId(); return new FebsResponse().success().data(service.pointTree(companyId)); } @GetMapping("fileList/parent") @ControllerEndpoint(exceptionMessage = "获取文件列表失败") public List parent(){ List list = new ArrayList<>(); try { String companyId = getCurrentUserCompanyId(); String uploadDir = FileUploadController.baseUploadDir + "/" + companyId; Path uploadPath = Paths.get(uploadDir); if (!Files.exists(uploadPath)) { return list; } Files.list(uploadPath).forEach(path -> { if (Files.isRegularFile(path)) { try { FileUploadController.FileInfo fileInfo = new FileUploadController.FileInfo(); fileInfo.setFileName(path.getFileName().toString()); list.add(fileInfo); } catch (Exception e) { e.printStackTrace(); } } }); return list; } catch (Exception e) { e.printStackTrace(); return list; } } }