zhanghua
2025-07-16 c4c1c6cf89781eb06dc02b677a8954fdb2666c43
ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
@@ -13,6 +13,7 @@
import com.ycl.controller.BaseController;
import com.ycl.common.constant.BaseCaseStatus;
import com.ycl.common.util.UtilNumber;
import com.ycl.dto.caseHandler.CheckParam;
import com.ycl.dto.caseHandler.QueryForViolationParam;
import com.ycl.dto.casePool.IllegalBuildingParam;
import com.ycl.dto.casePool.VideoInspectParam;
@@ -30,6 +31,7 @@
import com.ycl.service.resources.IVideoResourcesService;
import com.ycl.utils.EasyExcelUtils;
import com.ycl.vo.casePool.QueryForViolationVO;
import com.ycl.vo.casePool.WorkOrderVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -44,6 +46,7 @@
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
@@ -133,7 +136,7 @@
    @ApiOperation(value = "查询违规违建")
    @GetMapping("/query")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "state", value = "处理状态(0-待处理1-误报2-上报3-再学习/再训练4暂不处理5立案6调度7处置8核查9结案)", dataType = "Integer"),
            @ApiImplicitParam(name = "state", value = "处理状态(wait(0-待处理)  handle(5立案6调度7处置8核查)  finish(1-误报2-上报3-再学习/再训练4暂不处理 9结案)", dataType = "String"),
            @ApiImplicitParam(name = "type", value = "1 违规,2 违建", dataType = "Integer"),
            @ApiImplicitParam(name = "resource", value = "1 视频,2 手动", dataType = "Integer"),
            @ApiImplicitParam(name = "code", dataType = "String"),
@@ -147,7 +150,7 @@
    })
    public CommonResult searchViolation(@RequestParam Integer size,
                                        @RequestParam Integer current,
                                        @RequestParam(required = false) Integer state,
                                        @RequestParam(required = false) String state,
                                        @RequestParam Integer type,
                                        @RequestParam(required = false) Integer resource,
                                        @RequestParam(required = false) String code,
@@ -161,10 +164,35 @@
                                        @RequestParam(required = false) Integer videoId) {
        Page<Object> queryList;
        // 处理状态(wait(0-待处理)  handle(5立案6调度7处置8核查)  finish(1-误报2-上报3-再学习/再训练4暂不处理 9结案)
        List<Integer> stateList = new ArrayList<>();
        switch (state) {
            case "wait":
                stateList.add(0);
                break;
            case "handle":
                stateList.add(5);
                stateList.add(6);
                stateList.add(7);
                stateList.add(8);
                break;
            case "finish":
                stateList.add(1);
                stateList.add(2);
                stateList.add(3);
                stateList.add(4);
                stateList.add(9);
                break;
            case "-1":
                break;
            default:
                stateList.add(Integer.valueOf(state));
                break;
        }
        if (type == 1) {
            queryList = baseCaseService.listViolationsPage(current, size, state, resource, code, categoryBig, categorySmall, street, site, startTime, endTime, violationsTypeId, videoId);
            queryList = baseCaseService.listViolationsPage(current, size, stateList, resource, code, categoryBig, categorySmall, street, site, startTime, endTime, violationsTypeId, videoId);
        } else if (type == 2) {
            queryList = baseCaseService.listIllegalBuilding(current, size, state, resource);
            queryList = baseCaseService.listIllegalBuilding(current, size, stateList, resource);
        } else {
            return CommonResult.failed("bad request url");
        }
@@ -328,7 +356,7 @@
                ImageResources imageResources = new ImageResources();
                imageResources.setType("01");
                imageResources.setBelongToId(baseCase.getId());
                imageResources.setUrl(illegalBuildingParam.getImageUrls().toString());
                imageResources.setUrl(String.join(",", illegalBuildingParam.getImageUrls()));
                imageResources.setCreateTime(LocalDateTime.now());
                imageResources.setCreateUser(user.getUserId());
                iImageResourcesService.save(imageResources);
@@ -458,6 +486,19 @@
        return CommonResult.success("end case success~!");
    }
    @ApiOperation(value = "批量结案")
    @RequestMapping(value = "/end_case_batch", method = RequestMethod.POST)
    @ResponseBody
    @LogSave(operationType = "批量结案", contain = "批量结案")
    public CommonResult endCaseBatch(@RequestBody CheckParam checkParam) {
        checkParam.getIds().forEach(o -> {
            String result = "结案";
            String opinion = "同意结案";
            baseCaseService.endCase(o, result, opinion);
        });
        return CommonResult.success("end case success~!");
    }
    @ApiOperation(value = "查询案卷")
    @GetMapping("/query_case")
    public CommonResult<Page<BaseCase>> queryCase(@RequestParam Integer pageSize,
@@ -516,4 +557,21 @@
    public CommonResult searchCount(@RequestBody VideoInspectParam violationParam) {
        return CommonResult.success(baseCaseService.updateCase(violationParam));
    }
    @GetMapping("/work_order")
    @ApiOperation("工单统计")
    public CommonResult getWorkOrder(@RequestParam Integer currentPage,
                                     @RequestParam Integer pageSize,
                                     @RequestParam(required = false) String keyword,
                                     @RequestParam(required = false) String startTime,
                                     @RequestParam(required = false) String endTime) {
        return CommonResult.success(baseCaseService.getWorkOrder(currentPage, pageSize, keyword, startTime, endTime));
    }
    @PostMapping("/work_order/export")
    @ApiOperation("工单统计-导出")
    public void getWorkOrderExport(HttpServletResponse response, QueryForViolationParam param) {
        String sheetName = "工单数据";
        EasyExcelUtils.export(response, sheetName, WorkOrderVO.class, baseCaseService.getWorkOrderList(param.getKeyword(), param.getStartTime(), param.getEndTime()));
    }
}