From b73a823a3a73addec48affd517aa2e83b2c7156c Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期三, 04 一月 2023 15:52:19 +0800
Subject: [PATCH] fix: 暂存保存发送人
---
ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java | 210 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 171 insertions(+), 39 deletions(-)
diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
index 4ddf56a..ca8d45e 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
@@ -1,18 +1,27 @@
package com.ycl.controller.caseHandler;
-
-import com.alibaba.druid.util.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.annotation.LogSave;
import com.ycl.api.CommonResult;
import com.ycl.controller.BaseController;
+import com.ycl.common.constant.BaseCaseStatus;
+import com.ycl.common.util.UtilNumber;
+import com.ycl.dto.caseHandler.QueryForViolationParam;
import com.ycl.dto.casePool.IllegalBuildingParam;
+import com.ycl.dto.casePool.VideoInspectParam;
import com.ycl.dto.casePool.ViolationParam;
import com.ycl.entity.caseHandler.BaseCase;
+import com.ycl.entity.caseHandler.BaseCaseDetail;
+import com.ycl.entity.caseHandler.DisposeRecord;
import com.ycl.service.caseHandler.IBaseCaseService;
import com.ycl.service.caseHandler.IDisposeRecordService;
import com.ycl.service.caseHandler.IIllegalBuildingService;
import com.ycl.service.caseHandler.IViolationsService;
+import com.ycl.utils.EasyExcelUtils;
+import com.ycl.vo.casePool.QueryForViolationVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -22,7 +31,9 @@
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
-import java.util.Arrays;
+import javax.servlet.http.HttpServletResponse;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.List;
@@ -35,7 +46,7 @@
* @since 2022-09-24
*/
@RestController
-@RequestMapping("/base-case")
+@RequestMapping("/base_case")
@Api(tags = "妗堜欢姹�")
public class BaseCaseController extends BaseController {
@@ -50,6 +61,9 @@
@Autowired
IDisposeRecordService iDisposeRecordService;
+ @Autowired
+ UtilNumber utilNumber;
+
@Autowired
public void setBaseCaseService(IBaseCaseService baseCaseService) {
@@ -58,7 +72,7 @@
@ApiOperation(value = "涓婁紶甯傚钩鍙�")
@PostMapping("/upload-event")
- public CommonResult uploadEvent(@RequestParam Integer caseId, CommonResult<Object> success) {
+ public CommonResult uploadEvent(@RequestParam Long caseId, CommonResult<Object> success) {
String msg = baseCaseService.uploadEvent(caseId);
if (StringUtils.isEmpty(msg)) {
return success;
@@ -73,27 +87,25 @@
* @Param [size, current, state, type, resource]
**/
@ApiOperation(value = "鏌ヨ杩濊杩濆缓")
- @GetMapping("/query/{type}")
+ @GetMapping("/query")
@ApiImplicitParams({
- @ApiImplicitParam(name = "state", value = "澶勭悊鐘舵��(0璇姤 1涓婃姤 2绔嬫 3娲鹃仯 4澶勭疆 5鏍告煡 6缁撴7澶勭悊涓�)", dataType = "Integer"),
- @ApiImplicitParam(name = "type", value = "01 杩濊,02 杩濆缓", dataType = "Integer")
+ @ApiImplicitParam(name = "state", value = "澶勭悊鐘舵��(0-寰呭鐞�1-璇姤2-涓婃姤3-鍐嶅涔�/鍐嶈缁�4鏆備笉澶勭悊5绔嬫6璋冨害7澶勭疆8鏍告煡9缁撴)", dataType = "Integer"),
+ @ApiImplicitParam(name = "type", value = "1 杩濊,2 杩濆缓", dataType = "Integer"),
+ @ApiImplicitParam(name = "resource", value = "1 瑙嗛,2 鎵嬪姩", dataType = "Integer")
})
public CommonResult searchViolation(@RequestParam Integer size,
@RequestParam Integer current,
@RequestParam Integer state,
- @PathVariable(value = "type") Integer type,
- @RequestParam Integer resource) {
+ @RequestParam(required = false) Integer type,
+ @RequestParam(required = false) Integer resource) {
if (state != null) {
- Page<Object> page = new Page<>();
- page.setCurrent(current);
- page.setSize(size);
Page<Object> queryList;
- Integer violation = 01;
- Integer illegalBuilding = 02;
+ Integer violation = 1;
+ Integer illegalBuilding = 2;
if (type == violation) {
- queryList = baseCaseService.listViolationsPage(page, state, resource);
+ queryList = baseCaseService.listViolationsPage(new Page<>().setCurrent(current).setSize(size), state, resource);
} else if (type == illegalBuilding) {
- queryList = baseCaseService.listIllegalBuilding(page, state, resource);
+ queryList = baseCaseService.listIllegalBuilding(new Page<>().setCurrent(current).setSize(size), state, resource);
} else {
return CommonResult.failed("bad request url");
}
@@ -110,11 +122,12 @@
@ApiOperation(value = "鍒犻櫎杩濊/杩濆缓妗堜欢")
@DeleteMapping("/deletion")
@ApiImplicitParams({
- @ApiImplicitParam(name = "type", value = "01 杩濊,02 杩濆缓", dataType = "Integer")
+ @ApiImplicitParam(name = "type", value = "1 杩濊,2 杩濆缓", dataType = "Integer")
})
+ @LogSave(operationType = "浜嬮」澶勭疆绠$悊", contain = "鍒犻櫎妗堜欢")
public CommonResult removeCase(@RequestParam Integer id, @RequestParam Integer type) {
- Integer violationType = 01;
- Integer illegalBuildingType = 02;
+ Integer violationType = 1;
+ Integer illegalBuildingType = 2;
if (id != null) {
if (type == violationType) {
return CommonResult.success(violationsService.removeById(id));
@@ -131,22 +144,22 @@
* @Description delete illegal buildings or violations
* @Param [ids, type]
**/
- @ApiOperation(value = "鍒犻櫎杩濊/杩濆缓妗堜欢")
+ @ApiOperation(value = "鎵瑰鐞�-鍒犻櫎杩濊/杩濆缓妗堜欢")
@DeleteMapping("/batch_deletion")
@ApiImplicitParams({
- @ApiImplicitParam(name = "type", value = "01 杩濊,02 杩濆缓", dataType = "Integer")
+ @ApiImplicitParam(name = "type", value = "1 杩濊,2 杩濆缓", dataType = "Integer")
})
- public CommonResult removeCases(@RequestParam String[] ids, @RequestParam Integer type) {
- Integer violationType = 01;
- Integer illegalBuildingType = 02;
- List<String> idList = Arrays.asList(ids);
- if (!idList.isEmpty()) {
+ @LogSave(operationType = "浜嬮」澶勭疆绠$悊", contain = "鎵归噺鍒犻櫎妗堜欢")
+ public CommonResult removeCases(@RequestParam List<Long> ids, @RequestParam Integer type) {
+ Integer violationType = 1;
+ Integer illegalBuildingType = 2;
+ if (!ids.isEmpty()) {
+ CommonResult.success(baseCaseService.removeBatchByIds(ids));
if (type == violationType) {
- return CommonResult.success(violationsService.removeBatchByIds(idList));
+ return CommonResult.success(violationsService.removeBatchByIds(ids));
} else if (type == illegalBuildingType) {
- return CommonResult.success(illegalBuildingService.removeBatchByIds(idList));
+ return CommonResult.success(illegalBuildingService.removeBatchByIds(ids));
}
- return CommonResult.success(baseCaseService.removeBatchByIds(idList));
}
return CommonResult.failed("request parameter is null");
}
@@ -158,9 +171,18 @@
**/
@ApiOperation(value = "娣诲姞杩濊妗堜欢")
@PostMapping("/addition_violation")
+ @LogSave(operationType = "浜嬮」澶勭疆绠$悊", contain = "鏂板杩濆缓妗堜欢")
public CommonResult addViolationCase(@RequestBody @Validated ViolationParam violationParam) {
+ Integer violation = 1;
+ Integer resource = 2;
BaseCase baseCase = new BaseCase();
BeanUtils.copyProperties(violationParam, baseCase);
+ baseCase.setEventSource(resource);
+ baseCase.setCategory(violation);
+ baseCase.setCode(utilNumber.createCaseCode());
+ baseCase.setState(BaseCaseStatus.PENDING);
+ baseCase.setAlarmTime(LocalDateTime.parse(violationParam.getAlarmTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ baseCase.setCreateTime(LocalDateTime.now());
baseCaseService.save(baseCase);
return CommonResult.success(baseCaseService.saveViolationCase(violationParam, baseCase.getId()));
}
@@ -172,9 +194,18 @@
**/
@ApiOperation(value = "娣诲姞杩濆缓妗堜欢")
@PostMapping("/addition_illegal_building")
+ @LogSave(operationType = "浜嬮」澶勭疆绠$悊", contain = "鏂板杩濊妗堜欢")
public CommonResult addIllegalBuildingCase(@RequestBody @Validated IllegalBuildingParam illegalBuildingParam) {
+ Integer illegalBuilding = 2;
+ Integer resource = 2;
BaseCase baseCase = new BaseCase();
BeanUtils.copyProperties(illegalBuildingParam, baseCase);
+ baseCase.setCategory(illegalBuilding);
+ baseCase.setEventSource(resource);
+ baseCase.setCode(utilNumber.createCaseCode());
+ baseCase.setState(BaseCaseStatus.PENDING);
+ baseCase.setAlarmTime(LocalDateTime.parse(illegalBuildingParam.getAlarmTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ baseCase.setCreateTime(LocalDateTime.now());
baseCaseService.save(baseCase);
return CommonResult.success(baseCaseService.saveIllegalBuildingCase(illegalBuildingParam, baseCase.getId()));
}
@@ -184,11 +215,11 @@
@ApiImplicitParams({
@ApiImplicitParam(name = "code", value = "浜嬩欢缂栧彿")
})
- public CommonResult baseCaseDetail(@PathVariable(value = "code") String code) {
+ public CommonResult<BaseCaseDetail> baseCaseDetail(@PathVariable(value = "code") String code) {
return CommonResult.success(baseCaseService.baseCaseDetail(code));
}
- @ApiOperation("浜哄伐璺緞妗堜欢鍥剧墖灞曠ず")
+ @ApiOperation(value = "浜哄伐璺緞妗堜欢鍥剧墖灞曠ず")
@GetMapping("/hand_work_case_images")
@ApiImplicitParams({
@ApiImplicitParam(name = "type", value = "01 杩濊,02 杩濆缓", dataType = "Integer")
@@ -197,16 +228,117 @@
return CommonResult.success(baseCaseService.listCaseImages(id, type));
}
- @ApiOperation("妗堜欢鏆備笉澶勭悊")
- @GetMapping("/case_leave")
+ /**
+ * @return com.ycl.api.CommonResult
+ * @Description case status update
+ * @Param [caseId, status]
+ **/
+ @ApiOperation(value = "妗堜欢鐘舵�佷慨鏀�")
+ @PutMapping("/case_status_update")
@ApiImplicitParams({
- @ApiImplicitParam(name = "type", value = "01 杩濊,02 杩濆缓", dataType = "Integer")
+ @ApiImplicitParam(value = "澶勭悊鐘舵��(0-寰呭鐞�1-璇姤2-涓婃姤3-鍐嶅涔�/鍐嶈缁�4鏆備笉澶勭悊5绔嬫6璋冨害7澶勭疆8鏍告煡9缁撴)", name = "state")
})
- public CommonResult updateCaseStatus(@RequestParam Integer caseId) {
- Integer leaveType = 8;
+ public CommonResult updateCaseStatus(@RequestParam Integer caseId, @RequestParam Integer state) {
return CommonResult.success(baseCaseService
.update(new LambdaUpdateWrapper<BaseCase>()
.eq(BaseCase::getId, caseId)
- .set(BaseCase::getState, leaveType)));
+ .set(BaseCase::getState, state)));
}
-}
+
+ @ApiOperation(value = "妗堜欢鎵瑰湪瀛︿範")
+ @PutMapping("/batch_case_study")
+ public CommonResult batchHandCaseByStudy(@RequestParam List<Long> ids) {
+ ids.stream().forEach(item ->
+ {
+ BaseCase baseCase = new BaseCase();
+ baseCase.setId(item);
+ baseCase.setState(3);
+ baseCaseService.updateById(baseCase);
+ });
+ return CommonResult.success("success");
+ }
+
+ @ApiOperation(value = "妗堜欢鎵规殏涓嶅鐞�")
+ @PutMapping("/batch_case_Ignore")
+ public CommonResult batchHandCaseByIgnore(@RequestParam List<Long> ids) {
+ ids.stream().forEach(item ->
+ {
+ BaseCase baseCase = new BaseCase();
+ baseCase.setId(item);
+ baseCase.setState(4);
+ baseCaseService.updateById(baseCase);
+ });
+ return CommonResult.success("success");
+ }
+
+ /**
+ * @return com.ycl.api.CommonResult
+ * @Description reset case
+ * @Param [caseId]
+ **/
+ @ApiOperation(value = "鏆備笉澶勭疆閲嶆柊澶勭疆")
+ @PutMapping("/reset")
+ public CommonResult resetCase(@RequestParam Integer caseId) {
+ Integer firstNum = 1;
+ Integer state = iDisposeRecordService
+ .list(new LambdaQueryWrapper<DisposeRecord>()
+ .eq(DisposeRecord::getBaseCaseId, caseId).
+ orderByDesc(DisposeRecord::getCreateTime)).get(firstNum).getState();
+ return CommonResult.success(baseCaseService
+ .update(new LambdaUpdateWrapper<BaseCase>()
+ .eq(BaseCase::getId, caseId)
+ .set(BaseCase::getState, state)));
+ }
+
+ @ApiOperation(value = "缁撴")
+ @PutMapping("/end_case")
+ @LogSave(operationType = "浜嬮」澶勭疆绠$悊", contain = "妗堜欢缁撴")
+ public CommonResult endCase(@RequestParam Long caseId, @RequestParam String result, @RequestParam String opinion) {
+ baseCaseService.endCase(caseId, result, opinion);
+ return CommonResult.success("end case success~!");
+ }
+
+ @ApiOperation(value = "鏌ヨ妗堝嵎")
+ @GetMapping("/query_case")
+ public CommonResult queryCase(@RequestParam Integer pageSize,
+ @RequestParam Integer current,
+ @RequestParam(required = false) String number,
+ @RequestParam(required = false) Integer communityId,
+ @RequestParam(required = false) Integer categories,
+ @RequestParam(required = false) String startTime,
+ @RequestParam(required = false) String endTime,
+ @RequestParam(required = false) String site) {
+ return CommonResult.success(baseCaseService.selectPage(new Page<BaseCase>().setCurrent(current).setSize(pageSize), number, communityId, categories, startTime, endTime, site));
+ }
+
+ @GetMapping("/query_for_violation")
+ @ApiOperation("杩濊妫�绱�")
+ public CommonResult queryForViolation(QueryForViolationParam queryForViolationParam) {
+ return CommonResult.success(baseCaseService.selectViolation(queryForViolationParam));
+ }
+
+ @PostMapping("/query_for_violation/export")
+ @ApiOperation("杩濊妫�绱�-瀵煎嚭")
+ public void queryForViolationExport(HttpServletResponse response, QueryForViolationParam queryForViolationParam) {
+ String sheetName = "杩濊鏁版嵁";
+ EasyExcelUtils.export(response, sheetName, QueryForViolationVO.class, baseCaseService.selectViolationList(queryForViolationParam));
+ }
+
+ @GetMapping("/video_inspection")
+ @ApiOperation("棰勮鐮斿垽")
+ public CommonResult searchVideoInspection(@RequestParam Integer current) {
+ return CommonResult.success(baseCaseService.selectVideoInspection(current));
+ }
+
+ @GetMapping("/video_inspection/Count")
+ @ApiOperation("棰勮鐮斿垽宸︿笂瑙掑緟瀹℃牳妗堜欢,浠婃棩瀹℃牳,浠婃棩鍦ㄥ涔�")
+ public CommonResult searchCount() {
+ return CommonResult.success(baseCaseService.selectCount());
+ }
+
+ @PutMapping("/video_inspection")
+ @ApiOperation("棰勮鐮斿垽纭畾")
+ public CommonResult searchCount(@RequestBody VideoInspectParam violationParam) {
+ return CommonResult.success(baseCaseService.updateCase(violationParam));
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0