From da9dd83d29bea820efcc4d39b9e5194d4a4a15e0 Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Fri, 16 May 2025 10:36:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=A1=AB=E6=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/screen/vo/WorkReportVo.java | 31 ++++++++++ .../controller/WorkReportController.java | 45 +++++++++++++++ .../screen/mapper/IWorkReportMapper.java | 35 ++++++++++++ .../screen/service/IWorkReportService.java | 34 +++++++++++ .../service/impl/WorkReportServiceImpl.java | 57 +++++++++++++++++++ .../resources/mapper/WorkReportMapper.xml | 27 +++++++++ 6 files changed, 229 insertions(+) create mode 100644 securitycontrol-commons/securitycontrol-commons-entity/src/main/java/com/securitycontrol/entity/screen/vo/WorkReportVo.java create mode 100644 securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/controller/WorkReportController.java create mode 100644 securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/mapper/IWorkReportMapper.java create mode 100644 securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/IWorkReportService.java create mode 100644 securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/impl/WorkReportServiceImpl.java create mode 100644 securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/WorkReportMapper.xml diff --git a/securitycontrol-commons/securitycontrol-commons-entity/src/main/java/com/securitycontrol/entity/screen/vo/WorkReportVo.java b/securitycontrol-commons/securitycontrol-commons-entity/src/main/java/com/securitycontrol/entity/screen/vo/WorkReportVo.java new file mode 100644 index 0000000..1c21cf8 --- /dev/null +++ b/securitycontrol-commons/securitycontrol-commons-entity/src/main/java/com/securitycontrol/entity/screen/vo/WorkReportVo.java @@ -0,0 +1,31 @@ +package com.securitycontrol.entity.screen.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * @className:WorkReportVo + * @author:cwchen + * @date:2025-05-16-9:17 + * @version:1.0 + * @description:工作完成情况填报-vo + */ +@Data +public class WorkReportVo { + + private String id; + + private String workContent; + + @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8") + private Date workDate; + + private String completionStatus; + + private String fillStatus; + + private Date fillTime = new Date(); +} diff --git a/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/controller/WorkReportController.java b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/controller/WorkReportController.java new file mode 100644 index 0000000..4be23de --- /dev/null +++ b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/controller/WorkReportController.java @@ -0,0 +1,45 @@ +package com.securitycontrol.screen.controller; + +import com.securitycontrol.common.core.web.controller.BaseController; +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.common.core.web.page.TableDataInfo; +import com.securitycontrol.common.log.annotation.Log; +import com.securitycontrol.common.log.enums.OperationType; +import com.securitycontrol.entity.screen.dto.ScreenParamDto; +import com.securitycontrol.entity.screen.vo.WorkReportVo; +import com.securitycontrol.screen.service.IWorkReportService; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @className:WorkReportController + * @author:cwchen + * @date:2025-05-15-19:42 + * @version:1.0 + * @description:工作完成情况填报 + */ +@RestController +@RequestMapping("/largeScreen/workReport/") +public class WorkReportController extends BaseController { + + @Resource(name = "IWorkReportService") + private IWorkReportService service; + + @ApiOperation(value = "工作完成情况填报列表") + @GetMapping("getWorkLists") + @Log(title = "工作完成情况填报列表", menu = "工作完成情况填报->工作完成情况填报列表", grade = OperationType.QUERY_BUSINESS, details = "查询告警管理列表", type = "业务日志") + public TableDataInfo getWorkLists(ScreenParamDto dto) { + startLayPage(); + List list = service.getWorkLists(dto); + return getDataTableLayui(list); + } + + @ApiOperation(value = "填报工作情况") + @PostMapping("fillWorkSituation") + public AjaxResult fillWorkSituation(@RequestBody WorkReportVo vo){ + return service.fillWorkSituation(vo); + } +} diff --git a/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/mapper/IWorkReportMapper.java b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/mapper/IWorkReportMapper.java new file mode 100644 index 0000000..e6e0851 --- /dev/null +++ b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/mapper/IWorkReportMapper.java @@ -0,0 +1,35 @@ +package com.securitycontrol.screen.mapper; + +import com.securitycontrol.entity.screen.dto.ScreenParamDto; +import com.securitycontrol.entity.screen.vo.WorkReportVo; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @className:IWorkReportMapper + * @author:cwchen + * @date:2025-05-15-19:43 + * @version:1.0 + * @description:工作完成情况-数据层 + */ +@Repository("IWorkReportMapper") +public interface IWorkReportMapper { + /** + * 工作完成情况填报列表 + * @param dto + * @return List + * @author cwchen + * @date 2025/5/16 9:20 + */ + List getWorkLists(ScreenParamDto dto); + + /** + * 填写工作情况 + * @param vo + * @return void + * @author cwchen + * @date 2025/5/16 9:40 + */ + void fillWorkSituation(WorkReportVo vo); +} diff --git a/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/IWorkReportService.java b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/IWorkReportService.java new file mode 100644 index 0000000..09f1e2a --- /dev/null +++ b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/IWorkReportService.java @@ -0,0 +1,34 @@ +package com.securitycontrol.screen.service; + +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.entity.screen.dto.ScreenParamDto; +import com.securitycontrol.entity.screen.vo.WorkReportVo; + +import java.util.List; + +/** + * @className:WorkReportService + * @author:cwchen + * @date:2025-05-15-19:42 + * @version:1.0 + * @description:工作完成情况填报-业务层 + */ +public interface IWorkReportService { + /** + * 工作完成情况填报列表 + * @param dto + * @return List + * @author cwchen + * @date 2025/5/16 9:18 + */ + List getWorkLists(ScreenParamDto dto); + + /** + * 填报工作情况 + * @param vo + * @return AjaxResult + * @author cwchen + * @date 2025/5/16 9:37 + */ + AjaxResult fillWorkSituation(WorkReportVo vo); +} diff --git a/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/impl/WorkReportServiceImpl.java b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/impl/WorkReportServiceImpl.java new file mode 100644 index 0000000..4f4b86a --- /dev/null +++ b/securitycontrol-model/securitycontrol-screen/src/main/java/com/securitycontrol/screen/service/impl/WorkReportServiceImpl.java @@ -0,0 +1,57 @@ +package com.securitycontrol.screen.service.impl; + +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.entity.screen.dto.ScreenParamDto; +import com.securitycontrol.entity.screen.vo.WorkReportVo; +import com.securitycontrol.screen.mapper.IWorkReportMapper; +import com.securitycontrol.screen.service.IWorkReportService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +/** + * @className:WorkReportServiceImpl + * @author:cwchen + * @date:2025-05-15-19:43 + * @version:1.0 + * @description:工作完成情况填报-业务逻辑层 + */ +@Service(value = "IWorkReportService") +@Slf4j +public class WorkReportServiceImpl implements IWorkReportService { + + @Resource(name = "IWorkReportMapper") + private IWorkReportMapper mapper; + + @Override + public List getWorkLists(ScreenParamDto dto) { + List list = null; + try { + list = Optional.ofNullable(mapper.getWorkLists(dto)).orElseGet(ArrayList::new); + return list; + } catch (Exception e) { + log.error(e.toString(),e); + return new ArrayList<>(); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public AjaxResult fillWorkSituation(WorkReportVo vo) { + try { + mapper.fillWorkSituation(vo); + return AjaxResult.success("操作成功"); + } catch (Exception e) { + log.error(e.toString(), e); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("操作失败"); + } + } +} diff --git a/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/WorkReportMapper.xml b/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/WorkReportMapper.xml new file mode 100644 index 0000000..cfb3041 --- /dev/null +++ b/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/WorkReportMapper.xml @@ -0,0 +1,27 @@ + + + + + + INSERT INTO jj_class_completion(class_id,completion_status,fill_time) VALUES ( + #{id},#{completionStatus},#{fillTime} + ) + + + + + + \ No newline at end of file