diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/controller/ServiceWorkOrdersTypeController.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/controller/ServiceWorkOrdersTypeController.java index 725498ed..82d06c3c 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/controller/ServiceWorkOrdersTypeController.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/controller/ServiceWorkOrdersTypeController.java @@ -107,7 +107,6 @@ public class ServiceWorkOrdersTypeController extends BaseController { /** * 查询【工单类型】树结构 */ - @SaCheckPermission("system:workOrdersType:list") @GetMapping("/typeTree") public R> typeTree() { return R.ok(serviceWorkOrdersTypeService.typeTree()); @@ -119,7 +118,6 @@ public class ServiceWorkOrdersTypeController extends BaseController { * @param bo 工单类型 * @return 工单类型列表 */ - @SaCheckPermission("system:workOrdersType:list") @GetMapping("/queryList") public R> queryList(ServiceWorkOrdersTypeBo bo) { return R.ok(serviceWorkOrdersTypeService.queryList(bo)); diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/CleanOrder.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/CleanOrder.java index 53cf2f3c..b897e896 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/CleanOrder.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/CleanOrder.java @@ -60,6 +60,14 @@ public class CleanOrder extends TenantEntity { * 保洁类型 */ private String type; + /** + * 签到方式(1现场拍照2摄像头签到) + */ + private String signType; + /** + * 签到图片 + */ + private String signImgUrl; /** * 评价 */ @@ -69,7 +77,7 @@ public class CleanOrder extends TenantEntity { */ private String serviceEvaluaText; /** - * 图片 + * 评价图片 */ private String imgUrl; /** diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/InspectionRoutePoint.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/InspectionRoutePoint.java index 7746ccfb..9ed9968b 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/InspectionRoutePoint.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/InspectionRoutePoint.java @@ -1,5 +1,7 @@ package org.dromara.property.domain; +import jakarta.validation.constraints.NotNull; +import org.dromara.common.core.validate.EditGroup; import org.dromara.common.tenant.core.TenantEntity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; @@ -55,9 +57,10 @@ public class InspectionRoutePoint extends TenantEntity { private String remark; /** - * 搜索值 + * 排序 */ - private String searchValue; + @NotNull(message = "排序不能为空", groups = { EditGroup.class }) + private Integer sort; } diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/ServiceWorkOrders.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/ServiceWorkOrders.java index a52fb76b..69c57064 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/ServiceWorkOrders.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/ServiceWorkOrders.java @@ -40,7 +40,7 @@ public class ServiceWorkOrders extends TenantEntity { */ private String orderName; /** - * 权重 + * 权重(1一般2紧急3危急) */ private String processingWeight; /** @@ -67,11 +67,11 @@ public class ServiceWorkOrders extends TenantEntity { /** * 处理人姓名 */ - private long handler; + private Long handler; /** * 抄送人 */ - private long ccPeople; + private Long ccPeople; /** * 地址 diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/TbVisitorManagement.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/TbVisitorManagement.java index ebfca824..391a472b 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/TbVisitorManagement.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/TbVisitorManagement.java @@ -43,6 +43,10 @@ public class TbVisitorManagement extends TenantEntity { * 访客电话 */ private String visitorPhone; + /** + * 身份证/军 + */ + private String idCard; /** * 拜访事由 diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/CleanOrderBo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/CleanOrderBo.java index fd6daed4..1d407561 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/CleanOrderBo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/CleanOrderBo.java @@ -49,6 +49,14 @@ public class CleanOrderBo extends BaseEntity { */ @NotBlank(message = "保洁类型不能为空", groups = { AddGroup.class, EditGroup.class }) private String type; + /** + * 签到方式(1现场拍照2摄像头签到) + */ + private String signType; + /** + * 签到图片 + */ + private String signImgUrl; /** * 保洁id */ diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/InspectionRoutePointBo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/InspectionRoutePointBo.java index c202fcd2..59e5c69b 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/InspectionRoutePointBo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/InspectionRoutePointBo.java @@ -33,6 +33,11 @@ public class InspectionRoutePointBo extends BaseEntity { */ // @NotNull(message = "巡检路线id不能为空", groups = { AddGroup.class, EditGroup.class }) private Long routeId; + /** + * 排序 + */ + @NotNull(message = "排序不能为空", groups = { EditGroup.class }) + private Integer sort; /** * 巡检点id diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/TbVisitorManagementBo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/TbVisitorManagementBo.java index 2da2f5b6..ca82d5a9 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/TbVisitorManagementBo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/bo/TbVisitorManagementBo.java @@ -51,7 +51,10 @@ public class TbVisitorManagementBo extends BaseEntity { */ @NotBlank(message = "访客电话不能为空", groups = { AddGroup.class, EditGroup.class }) private String visitorPhone; - + /** + * 身份证/军 + */ + private String idCard; /** * 拜访事由 */ diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/CleanOrderVo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/CleanOrderVo.java index e078a789..ca959c81 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/CleanOrderVo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/CleanOrderVo.java @@ -55,6 +55,14 @@ public class CleanOrderVo implements Serializable { * 保洁类型 */ private String type; + /** + * 签到方式(1现场拍照2摄像头签到) + */ + private String signType; + /** + * 签到图片 + */ + private String signImgUrl; /** * 评价 */ diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/InspectionRoutePointVo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/InspectionRoutePointVo.java index f3d4d648..f1213800 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/InspectionRoutePointVo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/InspectionRoutePointVo.java @@ -2,6 +2,8 @@ package org.dromara.property.domain.vo; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.NotNull; +import org.dromara.common.core.validate.EditGroup; import org.dromara.property.domain.InspectionRoutePoint; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; @@ -76,10 +78,10 @@ public class InspectionRoutePointVo implements Serializable { private String remark; /** - * 搜索值 + * 排序 */ - @ExcelProperty(value = "搜索值") - private String searchValue; + @NotNull(message = "排序不能为空", groups = { EditGroup.class }) + private Integer sort; } diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/TbVisitorManagementVo.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/TbVisitorManagementVo.java index 1edf997f..4f1bd4f6 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/TbVisitorManagementVo.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/domain/vo/TbVisitorManagementVo.java @@ -56,7 +56,10 @@ public class TbVisitorManagementVo implements Serializable { */ @ExcelProperty(value = "访客电话") private String visitorPhone; - + /** + * 身份证/军 + */ + private String idCard; /** * 拜访事由 */ diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java index 2acd2a14..e14f152b 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java @@ -97,7 +97,7 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS Page attendanceArrangementVoPage = result.setRecords(result.getRecords().stream().map(vo -> { //根据当前日期查询在开始时间和结束时间之间的排班信息 //从前端查询出来的当前日期,判断是否在排班时间内 - if (bo.getCurrentDate().isAfter(vo.getStartDate()) && bo.getCurrentDate().isBefore(vo.getEndDate())) { + if ((bo.getCurrentDate().isAfter(vo.getStartDate()) || bo.getCurrentDate().isEqual(vo.getStartDate())) && (bo.getCurrentDate().isBefore(vo.getEndDate()) || bo.getCurrentDate().isEqual(vo.getEndDate()))) { //1.查询人员表信息 //根据查询出来的result取出shceduleId Long scheduleId = vo.getId(); @@ -437,11 +437,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS judgeDate(bo, add); -// AttendanceArrangementGroup attendanceArrangementGroup = new AttendanceArrangementGroup(); -// //向排班和考勤组中间表中插入数据 -// attendanceArrangementGroup.setGroupId(add.getGroupId()); -// attendanceArrangementGroup.setArrangementId(bo.getId()); -// arrangementGroupMapper.insert(attendanceArrangementGroup); + + //取出当前新增的排班的id Long ArrangementId = add.getId(); @@ -479,21 +476,28 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS * @param bo 排班 * @return 是否修改成功 */ + @Transactional(rollbackFor = Exception.class) @Override public Boolean updateByBo(AttendanceArrangementBo bo) { AttendanceArrangement update = MapstructUtils.convert(bo, AttendanceArrangement.class); validEntityBeforeSave(update); - judgeDate(bo, update); +// judgeDate(bo, update); //取出当前排班的id + assert update != null; Long ArrangementId = update.getId(); - //用获取到的排班id向attendanceUserGroup表中更新数据 + //根据arrangementId查询出人员组的所有employeeId + List employeeIdList = userGroupMapper.selectList(Wrappers.lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId)) + .stream().map(AttendanceUserGroup::getEmployeeId).toList(); + //根据employeeId和ArrangementId删除attendanceUserGroup表中的数据 + userGroupMapper.delete(Wrappers.lambdaQuery().in(AttendanceUserGroup::getEmployeeId, employeeIdList) + .eq(AttendanceUserGroup::getScheduleId, ArrangementId)); + + + //用获取到的排班id向attendanceUserGroup表中批量插入数据 List userGroupList = bo.getUserGroupList(); - for (AttendanceUserGroup userGroup : userGroupList) { - userGroup.setScheduleId(ArrangementId); - userGroupMapper.updateById(userGroup); - } + userGroupMapper.insertBatch(userGroupList); return baseMapper.updateById(update) > 0; } diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersServiceImpl.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersServiceImpl.java index 17bd272f..b9372f60 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersServiceImpl.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersServiceImpl.java @@ -51,7 +51,6 @@ import java.util.stream.Collectors; public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService { private final ServiceWorkOrdersMapper baseMapper; - private final ServiceWorkOrdersTypeMapper serviceWorkOrdersTypeMapper; private final ServiceWorkOrdersTypeMapper typesMapper; private final ResidentPersonMapper residentPersonMapper; private final ServiceWorkOrdersRecordMapper workOrdersRecordMapper; @@ -160,11 +159,19 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService { } private LambdaQueryWrapper buildQueryWrapper(ServiceWorkOrdersBo bo) { + //查询类型下子类型id + LambdaQueryWrapper OrdersTypeWrapper = new LambdaQueryWrapper<>(); + OrdersTypeWrapper.eq(ServiceWorkOrdersType::getParentId,bo.getType()); + List serviceWorkOrdersTypes = typesMapper.selectList(OrdersTypeWrapper); + List typeIds = serviceWorkOrdersTypes.stream() + .map(ServiceWorkOrdersType::getId) + .collect(Collectors.toList()); + typeIds.add(bo.getType()); Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.orderByAsc(ServiceWorkOrders::getId); lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), ServiceWorkOrders::getOrderNo, bo.getOrderNo()); - lqw.eq(ObjectUtil.isNotEmpty(bo.getStatus()), ServiceWorkOrders::getStatus, bo.getStatus()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), ServiceWorkOrders::getStatus, bo.getStatus()); lqw.like(StringUtils.isNotBlank(bo.getOrderName()), ServiceWorkOrders::getOrderName, bo.getOrderName()); lqw.eq(bo.getDispatchTime() != null, ServiceWorkOrders::getDispatchTime, bo.getDispatchTime()); lqw.like(StringUtils.isNotBlank(bo.getInitiatorName()), ServiceWorkOrders::getInitiatorPeople, bo.getInitiatorName()); @@ -173,7 +180,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService { lqw.eq(bo.getPlanCompleTime() != null, ServiceWorkOrders::getPlanCompleTime, bo.getPlanCompleTime()); lqw.eq(bo.getCompleTime() != null, ServiceWorkOrders::getCompleTime, bo.getCompleTime()); lqw.eq(Objects.nonNull(bo.getServiceEvalua()), ServiceWorkOrders::getServiceEvalua, bo.getServiceEvalua()); - lqw.eq(Objects.nonNull(bo.getType()), ServiceWorkOrders::getType, bo.getType()); + lqw.in(Objects.nonNull(bo.getType()), ServiceWorkOrders::getType, typeIds); lqw.eq(StringUtils.isNotBlank(bo.getProcessingWeight()), ServiceWorkOrders::getProcessingWeight, bo.getProcessingWeight()); lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), ServiceWorkOrders::getSearchValue, bo.getSearchValue()); return lqw; @@ -459,7 +466,7 @@ public class ServiceWorkOrdersServiceImpl implements IServiceWorkOrdersService { Integer count = entry.getValue().intValue(); // 查询类型名称 - ServiceWorkOrdersType serviceWorkOrdersType = serviceWorkOrdersTypeMapper.selectById(typeId); + ServiceWorkOrdersType serviceWorkOrdersType = typesMapper.selectById(typeId); String type = serviceWorkOrdersType != null ? serviceWorkOrdersType.getOrderTypeName() : "未知类型"; // 添加到结果中 diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersTypeServiceImpl.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersTypeServiceImpl.java index 2a971429..48912b8b 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersTypeServiceImpl.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/ServiceWorkOrdersTypeServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.property.service.impl; import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; @@ -80,9 +81,11 @@ public class ServiceWorkOrdersTypeServiceImpl implements IServiceWorkOrdersTypeS LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.orderByAsc(ServiceWorkOrdersType::getSort); lqw.eq(StringUtils.isNotBlank(bo.getOrderTypeNo()), ServiceWorkOrdersType::getOrderTypeNo, bo.getOrderTypeNo()); + lqw.eq(StringUtils.isNotBlank(bo.getOrderTypeNo()), ServiceWorkOrdersType::getOrderTypeNo, bo.getOrderTypeNo()); lqw.like(StringUtils.isNotBlank(bo.getOrderTypeName()), ServiceWorkOrdersType::getOrderTypeName, bo.getOrderTypeName()); lqw.eq(StringUtils.isNotBlank(bo.getOperationMode()), ServiceWorkOrdersType::getOperationMode, bo.getOperationMode()); lqw.eq(StringUtils.isNotBlank(bo.getSearchValue()), ServiceWorkOrdersType::getSearchValue, bo.getSearchValue()); + lqw.eq(ObjectUtil.isNotEmpty(bo.getParentId()), ServiceWorkOrdersType::getParentId, bo.getParentId()); lqw.isNull(bo.getFilterSubNodes() != null && bo.getFilterSubNodes(), ServiceWorkOrdersType::getParentId); lqw.ne(bo.getExcludeId()!=null,ServiceWorkOrdersType::getId,bo.getExcludeId()); return lqw; diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/MachineTasks.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/MachineTasks.java index 10fd845f..af701d25 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/MachineTasks.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/MachineTasks.java @@ -18,6 +18,9 @@ import org.dromara.property.mapper.MachineMaintainPlanStaffMapper; import org.dromara.property.mapper.MachineMaintainTaskMapper; import org.dromara.property.mapper.ResidentPersonMapper; import org.dromara.property.service.IMachineMaintainPlanService; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -39,17 +42,21 @@ import static org.dromara.common.mybatis.core.mapper.BaseMapperPlus.log; * @Date:2025/7/17 09:25 * @Description: **/ -@Validated +@Component @RequiredArgsConstructor -@RestController -@RequestMapping("/machineTask") +//@Validated +//@RequiredArgsConstructor +//@RestController +//@RequestMapping("/machineTask") public class MachineTasks { private final IMachineMaintainPlanService machineMaintainPlanService; private final MachineMaintainTaskMapper machineMaintainTaskMapper; private final MachineMaintainPlanStaffMapper machineMaintainPlanStaffMapper; private final ResidentPersonMapper residentPersonMapper; - @GetMapping("/taskId") + //@GetMapping("/taskId") + @Scheduled(cron = "0 0 3 * * ?") + @Transactional(rollbackFor = Exception.class) public void doMachineMaintainPianTask() { // 查询所有启用状态的巡检计划 MachineMaintainPlanBo machineMaintainPlanBo= new MachineMaintainPlanBo(); diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/ServiceWorkOrderTasks.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/ServiceWorkOrderTasks.java new file mode 100644 index 00000000..a0ad8082 --- /dev/null +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/tasks/ServiceWorkOrderTasks.java @@ -0,0 +1,42 @@ +package org.dromara.property.tasks; + +import cn.hutool.core.collection.CollUtil; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.property.domain.ServiceWorkOrders; +import org.dromara.property.mapper.ServiceWorkOrdersMapper; +import org.springframework.stereotype.Component; + +import java.util.List; + +import org.dromara.common.log.annotation.Log; + +/** + * @Author:yuyongle + * @Date:2025/8/7 14:21 + * @Description:自动派单 + **/ +@Slf4j +@Component +@RequiredArgsConstructor +public class ServiceWorkOrderTasks { + private ServiceWorkOrdersMapper workOrdersMapper; + + //查询状态为创建工单的工单 + private void handleServiceWorkOrder() { + List serviceWorkOrderList = workOrdersMapper.selectList( + new LambdaQueryWrapper() + .eq(ServiceWorkOrders::getStatus, "0")); + if(CollUtil.isNotEmpty(serviceWorkOrderList)){ + serviceWorkOrderList.stream().forEach(s->{ + + }); + }else { + log.info("派单工单为:{}",serviceWorkOrderList.size()); + } + + } +} diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/controller/SisDataSyncController.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/controller/SisDataSyncController.java index c814f0ce..54b05439 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/controller/SisDataSyncController.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/controller/SisDataSyncController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpSession; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.R; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.idempotent.annotation.RepeatSubmit; @@ -11,6 +12,7 @@ import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; import org.dromara.sis.domain.bo.SisAuthRecordBo; +import org.dromara.sis.service.ISisDataSyncService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -26,12 +28,13 @@ import org.springframework.web.bind.annotation.RestController; * @since 2025-07-14 */ @Validated +@Slf4j @RequiredArgsConstructor @RestController @RequestMapping("/dataSync") public class SisDataSyncController extends BaseController { -// private + private final ISisDataSyncService sisDataSyncService; @SaCheckPermission("sis:dataSync:add") @@ -39,6 +42,7 @@ public class SisDataSyncController extends BaseController { @RepeatSubmit() @PostMapping("/add") public R add(@Validated(AddGroup.class) @RequestBody SisAuthRecordBo bo, HttpServletRequest request) { + log.info("开始同步报警记录数据..."); // return toAjax(); return R.ok(); } diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisDataSyncMapper.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisDataSyncMapper.java new file mode 100644 index 00000000..463b07d0 --- /dev/null +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/mapper/SisDataSyncMapper.java @@ -0,0 +1,7 @@ +package org.dromara.sis.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.sis.domain.SisAlarmEvents; + +public interface SisDataSyncMapper extends BaseMapper { +} diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/ISisDataSyncService.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/ISisDataSyncService.java new file mode 100644 index 00000000..ef7cff8e --- /dev/null +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/ISisDataSyncService.java @@ -0,0 +1,7 @@ +package org.dromara.sis.service; + +/** + * 告警数据同步Service接口 + */ +public interface ISisDataSyncService { +} diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisDataSyncServiceImpl.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisDataSyncServiceImpl.java new file mode 100644 index 00000000..29c6bbd3 --- /dev/null +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/service/impl/SisDataSyncServiceImpl.java @@ -0,0 +1,15 @@ +package org.dromara.sis.service.impl; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.sis.service.ISisDataSyncService; +import org.springframework.stereotype.Service; + +/** + * 告警数据同步Service业务层处理 + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class SisDataSyncServiceImpl implements ISisDataSyncService { +} diff --git a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/task/DataSyncTask.java b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/task/DataSyncTask.java index 53eae686..b9a4012d 100644 --- a/ruoyi-modules/Sis/src/main/java/org/dromara/sis/task/DataSyncTask.java +++ b/ruoyi-modules/Sis/src/main/java/org/dromara/sis/task/DataSyncTask.java @@ -77,7 +77,7 @@ public class DataSyncTask { // 提取操作记录数据 Map>> operatorMap = new HashMap<>(); for (Map recordMap : recordList) { - Long recordId = Long.valueOf((Integer)recordMap.get("Id")); + Long recordId = Long.valueOf((Integer) recordMap.get("Id")); List> operators = (List>) recordMap.get("TaskOperators"); if (operators != null && !operators.isEmpty()) { operatorMap.put(recordId, operators); @@ -88,14 +88,15 @@ public class DataSyncTask { sisAlarmEvents.setId(recordId); sisAlarmEvents.setType(Long.valueOf((Integer) recordMap.get("Type"))); sisAlarmEvents.setLevel(Long.valueOf((Integer) recordMap.get("Level"))); -// //报警设备ip -// sisAlarmEvents.setDeviceIp(); + sisAlarmEvents.setDeviceIp((String) recordMap.get("DeviceSipNum")); sisAlarmEvents.setDeviceName(recordMap.get("DeviceName").toString()); sisAlarmEvents.setDeviceGroupId(Long.valueOf((Integer) recordMap.get("GroupId"))); sisAlarmEvents.setDeviceGroupName(recordMap.get("GroupName").toString()); sisAlarmEvents.setReportTime((Date) recordMap.get("StartTime")); sisAlarmEvents.setState((Integer) recordMap.get("State")); - sisAlarmEvents.setWorkOrderId(Long.valueOf((Integer) recordMap.get("WorkOrderId"))); + if ((Integer) recordMap.get("State") == 3) { + sisAlarmEvents.setWorkOrderId(Long.valueOf((Integer) recordMap.get("WorkOrderId"))); + } //保存报警事件 sisAlarmEventsService.insertByBo(sisAlarmEvents);