From c76a3b1194f320bf84061676d14200f7e78f044e Mon Sep 17 00:00:00 2001 From: maven <2163098428@qq.com> Date: 星期五, 29 八月 2025 17:51:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java | 27 ++++ src/main/java/com/ruoyi/collaborativeApproval/controller/NoticeController.java | 63 ++++++++++ src/main/java/com/ruoyi/collaborativeApproval/dto/NoticeDTO.java | 11 + src/main/java/com/ruoyi/device/mapper/DeviceLedgerMapper.java | 4 src/main/java/com/ruoyi/collaborativeApproval/pojo/Notice.java | 78 +++++++++++++ src/main/java/com/ruoyi/collaborativeApproval/service/impl/NoticeServiceImpl.java | 45 +++++++ src/main/resources/mapper/device/DeviceMaintenanceMapper.xml | 35 +++-- src/main/java/com/ruoyi/collaborativeApproval/mapper/NoticeMapper.java | 20 +++ src/main/resources/mapper/device/DeviceLedgerMapper.xml | 9 + src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java | 6 + src/main/java/com/ruoyi/collaborativeApproval/service/NoticeService.java | 17 ++ src/main/resources/mapper/collaborativeApproval/NoticeMapper.xml | 21 +++ 12 files changed, 319 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/ruoyi/collaborativeApproval/controller/NoticeController.java b/src/main/java/com/ruoyi/collaborativeApproval/controller/NoticeController.java new file mode 100644 index 0000000..df8e248 --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/controller/NoticeController.java @@ -0,0 +1,63 @@ +package com.ruoyi.collaborativeApproval.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.collaborativeApproval.dto.NoticeDTO; +import com.ruoyi.collaborativeApproval.service.NoticeService; +import com.ruoyi.framework.aspectj.lang.annotation.Log; +import com.ruoyi.framework.aspectj.lang.enums.BusinessType; +import com.ruoyi.framework.web.controller.BaseController; +import com.ruoyi.framework.web.domain.AjaxResult; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@AllArgsConstructor +@Api(tags = "閫氱煡鍏憡") +@RequestMapping("/collaborativeApproval/notice") +public class NoticeController extends BaseController { + + private final NoticeService noticeService; + + @GetMapping("/page") + @Log(title = "鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER) + @ApiOperation("鍒嗛〉鏌ヨ") + public AjaxResult listPage(Page page, NoticeDTO noticeDTO){ + return AjaxResult.success(noticeService.listPage(page, noticeDTO)); + } + + @PostMapping("/add") + @Log(title = "鏂板", businessType = BusinessType.INSERT) + @ApiOperation("鏂板") + public AjaxResult add(@RequestBody NoticeDTO noticeDTO){ + return AjaxResult.success(noticeService.save(noticeDTO)); + } + + @PutMapping("/update") + @Log(title = "淇敼", businessType = BusinessType.UPDATE) + @ApiOperation("淇敼") + public AjaxResult update(@RequestBody NoticeDTO noticeDTO){ + return AjaxResult.success(noticeService.updateById(noticeDTO)); + } + + @DeleteMapping("/{ids}") + @Log(title = "鍒犻櫎", businessType = BusinessType.DELETE) + @ApiOperation("鍒犻櫎") + public AjaxResult delete(@PathVariable("ids") List<Long> ids){ + if (CollectionUtils.isEmpty(ids)) { + throw new RuntimeException("璇蜂紶鍏ヨ鍒犻櫎鐨処D"); + } + return AjaxResult.success(noticeService.removeBatchByIds(ids)); + } + + @GetMapping("/count") + @Log(title = "鑾峰彇鍏憡鏁伴噺", businessType = BusinessType.OTHER) + @ApiOperation("鑾峰彇鍏憡鏁伴噺") + public AjaxResult count(){ + return AjaxResult.success(noticeService.selectCount()); + } +} diff --git a/src/main/java/com/ruoyi/collaborativeApproval/dto/NoticeDTO.java b/src/main/java/com/ruoyi/collaborativeApproval/dto/NoticeDTO.java new file mode 100644 index 0000000..ade8acb --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/dto/NoticeDTO.java @@ -0,0 +1,11 @@ +package com.ruoyi.collaborativeApproval.dto; + +import com.ruoyi.collaborativeApproval.pojo.Notice; +import lombok.Data; + +@Data +public class NoticeDTO extends Notice { + private String CreateUserName; + + private Long count; +} diff --git a/src/main/java/com/ruoyi/collaborativeApproval/mapper/NoticeMapper.java b/src/main/java/com/ruoyi/collaborativeApproval/mapper/NoticeMapper.java new file mode 100644 index 0000000..1b6d67d --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/mapper/NoticeMapper.java @@ -0,0 +1,20 @@ +package com.ruoyi.collaborativeApproval.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.collaborativeApproval.dto.NoticeDTO; +import com.ruoyi.collaborativeApproval.pojo.Notice; +import org.apache.ibatis.annotations.Param; + +public interface NoticeMapper extends BaseMapper<Notice> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param page + * @param noticeDTO + * @return + */ + IPage<NoticeDTO> listPage(Page page, @Param("ew") NoticeDTO noticeDTO); +} diff --git a/src/main/java/com/ruoyi/collaborativeApproval/pojo/Notice.java b/src/main/java/com/ruoyi/collaborativeApproval/pojo/Notice.java new file mode 100644 index 0000000..ef046ac --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/pojo/Notice.java @@ -0,0 +1,78 @@ +package com.ruoyi.collaborativeApproval.pojo; + +import com.baomidou.mybatisplus.annotation.*; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * 鍏憡琛� + * + */ +@Data +@TableName("notice") +@ApiModel +public class Notice { + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + + /** + * 鍏憡鏍囬 + */ + @ApiModelProperty("鍏憡鏍囬") + private String title; + + /** + * 鍏憡绫诲瀷锛�1鏀惧亣閫氱煡 2璁惧缁翠慨閫氱煡锛� + */ + @ApiModelProperty("鍏憡绫诲瀷锛�1鏀惧亣閫氱煡 2璁惧缁翠慨閫氱煡锛�") + private Integer type; + + /** + * 鐘舵�侊紙0鑽夌 1鍙戝竷 2宸蹭笅绾匡級 + */ + @ApiModelProperty("鐘舵�侊紙0鑽夌 1鍙戝竷 2宸蹭笅绾匡級") + private Integer status; + + /** + * 鍏憡鍐呭 + */ + @ApiModelProperty("鍏憡鍐呭") + private String content; + + /** + * 浼樺厛绾�(1鏅�� 2閲嶈 3绱ф��) + */ + @ApiModelProperty("浼樺厛绾�(1鏅�� 2閲嶈 3绱ф��)") + private Integer priority; + + /** + * 鍒涘缓鑰� + */ + @TableField(fill = FieldFill.INSERT) + private Integer createUser; + + /** + * 鍒涘缓鏃堕棿 + */ + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** + * 绉熸埛ID + */ + @TableField(fill = FieldFill.INSERT) + private Long tenantId; + + /** + * 澶囨敞 + */ + @ApiModelProperty("澶囨敞") + private String remark; + +} diff --git a/src/main/java/com/ruoyi/collaborativeApproval/service/NoticeService.java b/src/main/java/com/ruoyi/collaborativeApproval/service/NoticeService.java new file mode 100644 index 0000000..31ded68 --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/service/NoticeService.java @@ -0,0 +1,17 @@ +package com.ruoyi.collaborativeApproval.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.collaborativeApproval.dto.NoticeDTO; +import com.ruoyi.collaborativeApproval.pojo.Notice; + +import java.util.List; + + +public interface NoticeService extends IService<Notice> { + + IPage<NoticeDTO> listPage(Page page, NoticeDTO noticeDTO); + + List<NoticeDTO> selectCount(); +} diff --git a/src/main/java/com/ruoyi/collaborativeApproval/service/impl/NoticeServiceImpl.java b/src/main/java/com/ruoyi/collaborativeApproval/service/impl/NoticeServiceImpl.java new file mode 100644 index 0000000..8f2216b --- /dev/null +++ b/src/main/java/com/ruoyi/collaborativeApproval/service/impl/NoticeServiceImpl.java @@ -0,0 +1,45 @@ +package com.ruoyi.collaborativeApproval.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.collaborativeApproval.dto.NoticeDTO; +import com.ruoyi.collaborativeApproval.mapper.NoticeMapper; +import com.ruoyi.collaborativeApproval.pojo.Notice; +import com.ruoyi.collaborativeApproval.service.NoticeService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +@Service +@Slf4j +@AllArgsConstructor +public class NoticeServiceImpl extends ServiceImpl<NoticeMapper, Notice> implements NoticeService { + + private final NoticeMapper noticeMapper; + + @Override + public IPage<NoticeDTO> listPage(Page page, NoticeDTO noticeDTO) { + return noticeMapper.listPage(page, noticeDTO); + } + + @Override + public List<NoticeDTO> selectCount() { + List<NoticeDTO> result = new ArrayList<>(); + NoticeDTO notice = new NoticeDTO(); + notice.setType(1); + notice.setCount(noticeMapper.selectCount(new LambdaQueryWrapper<Notice>().eq(Notice::getType, 1))); + result.add(notice); + + NoticeDTO notice1 = new NoticeDTO(); + notice1.setType(2); + notice1.setCount(noticeMapper.selectCount(new LambdaQueryWrapper<Notice>().eq(Notice::getType, 2))); + result.add(notice1); + + return result; + } +} diff --git a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java index abac6a7..264f23a 100644 --- a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java +++ b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java @@ -2,14 +2,21 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.device.dto.DeviceLedgerDto; +import com.ruoyi.device.mapper.DeviceLedgerMapper; +import com.ruoyi.device.mapper.DeviceMaintenanceMapper; import com.ruoyi.device.pojo.DeviceLedger; +import com.ruoyi.device.pojo.DeviceMaintenance; import com.ruoyi.device.service.IDeviceLedgerService; +import com.ruoyi.device.service.IDeviceMaintenanceService; +import com.ruoyi.framework.aspectj.lang.annotation.Anonymous; import com.ruoyi.framework.web.domain.AjaxResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import org.apache.commons.lang3.ArrayUtils; +import org.ehcache.spi.service.MaintainableService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -18,6 +25,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; +import java.util.List; @Api(tags = "璁惧鍙拌处绠$悊") @RequestMapping("/device/ledger") @@ -26,6 +34,12 @@ @Autowired private IDeviceLedgerService deviceLedgerService; + + @Autowired + private DeviceLedgerMapper deviceLedgerMapper; + + @Autowired + private DeviceMaintenanceMapper deviceMaintenanceMapper; @ApiModelProperty("璁惧鍙拌处鍒楄〃") @GetMapping("/page") @@ -85,4 +99,17 @@ return AjaxResult.success(deviceLedgerService.list(new QueryWrapper<DeviceLedger>().lambda() .select(DeviceLedger::getId, DeviceLedger::getDeviceName,DeviceLedger::getDeviceModel))); } + + @GetMapping("scanDevice") + @ApiModelProperty("鑾峰彇璁惧鍙拌处") + @Anonymous + public AjaxResult scanDevice(Long id) { + List<DeviceMaintenance> list = deviceMaintenanceMapper.list1(id); + DeviceLedger deviceLedger = deviceLedgerMapper.selectById1(id); + if (list.size()>0){ + deviceLedger.setUpdateTime(list.get(0).getMaintenanceActuallyTime());//鏈�鍚庣淮鎶ゆ椂闂� + } + deviceLedger.setCreateTime(deviceLedger.getUpdateTime().plusMonths(1));//涓嬫缁存姢鏃堕棿 + return AjaxResult.success(deviceLedger); + } } diff --git a/src/main/java/com/ruoyi/device/mapper/DeviceLedgerMapper.java b/src/main/java/com/ruoyi/device/mapper/DeviceLedgerMapper.java index 558b55b..17683d4 100644 --- a/src/main/java/com/ruoyi/device/mapper/DeviceLedgerMapper.java +++ b/src/main/java/com/ruoyi/device/mapper/DeviceLedgerMapper.java @@ -1,5 +1,6 @@ package com.ruoyi.device.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -17,4 +18,7 @@ IPage<DeviceLedgerDto> queryPage(Page page, @Param("deviceLedger") DeviceLedgerDto deviceLedgerDto); List<DeviceLedgerExeclDto> deviceLedgerExportList(DeviceLedger deviceLedger); + + @InterceptorIgnore(tenantLine = "true") + DeviceLedger selectById1(Long id); } diff --git a/src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java b/src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java index 5fde866..86c726b 100644 --- a/src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java +++ b/src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.device.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -9,10 +10,15 @@ import com.ruoyi.device.pojo.DeviceMaintenance; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + @Mapper public interface DeviceMaintenanceMapper extends BaseMapper<DeviceMaintenance> { IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto); DeviceMaintenanceDto detailById(Long id); + + @InterceptorIgnore(tenantLine = "true") + List<DeviceMaintenance> list1(Long id); } diff --git a/src/main/resources/mapper/collaborativeApproval/NoticeMapper.xml b/src/main/resources/mapper/collaborativeApproval/NoticeMapper.xml new file mode 100644 index 0000000..5f646ad --- /dev/null +++ b/src/main/resources/mapper/collaborativeApproval/NoticeMapper.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ruoyi.collaborativeApproval.mapper.NoticeMapper"> + + <select id="listPage" resultType="com.ruoyi.collaborativeApproval.dto.NoticeDTO"> + select n.*, su.user_name as create_user_name + from notice n + left join sys_user su on n.create_user = su.user_id + <where> + <if test="ew.title != null and ew.title != ''"> + and n.title like concat('%',#{ew.title},'%') + </if> + <if test="ew.type != null"> + and n.type = #{ew.type} + </if> + <if test="ew.status != null"> + and n.status = #{ew.status} + </if> + </where> + </select> +</mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/device/DeviceLedgerMapper.xml b/src/main/resources/mapper/device/DeviceLedgerMapper.xml index 4a8f435..b2a849f 100644 --- a/src/main/resources/mapper/device/DeviceLedgerMapper.xml +++ b/src/main/resources/mapper/device/DeviceLedgerMapper.xml @@ -23,7 +23,7 @@ dl.update_user, dl.tenant_id FROM device_ledger dl - left join sys_user su on dl.create_user = su.user_id + left join sys_user su on dl.create_user = su.user_id <where> <!-- 璁惧鍚嶇О --> <if test="deviceLedger.deviceName != null and deviceLedger.deviceName != ''"> @@ -59,7 +59,7 @@ AND dl.create_time >= DATE_FORMAT(#{deviceLedger.entryDateStart},'%Y-%m-%d') </if> <if test="deviceLedger.entryDateEnd != null and deviceLedger.entryDateEnd != '' "> - AND dl.create_time <= DATE_FORMAT(#{deviceLedger.entryDateEnd},'%Y-%m-%d') + AND dl.create_time <= DATE_FORMAT(#{deviceLedger.entryDateEnd},'%Y-%m-%d') </if> <!-- 绉熸埛ID --> @@ -72,5 +72,10 @@ <select id="deviceLedgerExportList" resultType="com.ruoyi.device.execl.DeviceLedgerExeclDto"> </select> + <select id="selectById1" resultType="com.ruoyi.device.pojo.DeviceLedger"> + select * + from device_ledger + where id = #{id} + </select> </mapper> diff --git a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml index 468198e..9917ce2 100644 --- a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml +++ b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml @@ -7,19 +7,19 @@ <select id="queryPage" resultType="com.ruoyi.device.dto.DeviceMaintenanceDto"> select dm.id, - dm.device_ledger_id, - dm.maintenance_plan_time, - dm.maintenance_actually_time, - dm.maintenance_result, - dm.status, - dm.create_time, - dm.update_time, - dm.create_user, - dm.update_user, - dm.tenant_id, - dm.maintenance_actually_name, - dl.device_name, - dl.device_model, + dm.device_ledger_id, + dm.maintenance_plan_time, + dm.maintenance_actually_time, + dm.maintenance_result, + dm.status, + dm.create_time, + dm.update_time, + dm.create_user, + dm.update_user, + dm.tenant_id, + dm.maintenance_actually_name, + dl.device_name, + dl.device_model, su.user_name as create_user_name from device_maintenance dm left join device_ledger dl on dm.device_ledger_id = dl.id @@ -60,9 +60,14 @@ dl.device_model, su.user_name as create_user_name from device_maintenance dm - left join device_ledger dl on dm.device_ledger_id = dl.id - left join sys_user su on dm.create_user = su.user_id + left join device_ledger dl on dm.device_ledger_id = dl.id + left join sys_user su on dm.create_user = su.user_id where dm.id = #{id} </select> + <select id="list1" resultType="com.ruoyi.device.pojo.DeviceMaintenance"> + select * + from device_maintenance + where device_ledger_id = #{id} + </select> </mapper> -- Gitblit v1.9.3