From e34df92d59f0df626c96ac400759d596364e0889 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期二, 19 三月 2024 14:29:50 +0800 Subject: [PATCH] 视频监控 --- ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TCheckPublish.java | 39 ++ ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckRuleQuery.java | 2 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java | 14 ycl-server/src/main/resources/mapper/zgyw/TMonitorVideoMapper.xml | 161 ++++++++++ ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckTemplateVO.java | 3 ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java | 3 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java | 3 ycl-server/src/main/resources/application.yml | 2 ycl-server/src/main/java/com/ycl/platform/controller/TMonitorVideoController.java | 98 ++++++ ycl-server/src/main/resources/mapper/zgyw/TCheckPublishMapper.xml | 21 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java | 15 ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorVideoMapper.java | 62 +++ ycl-server/src/main/java/com/ycl/platform/service/ITMonitorVideoService.java | 62 +++ ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TMonitorVideo.java | 350 +++++++++++++++++++++ ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorVideoServiceImpl.java | 94 +++++ 15 files changed, 924 insertions(+), 5 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java index 1ac07e1..7942e49 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java @@ -8,6 +8,8 @@ import lombok.Data; import lombok.experimental.Accessors; +import java.util.Date; + /** * 鑰冩牳瑙勫垯 * @@ -45,4 +47,17 @@ @ApiModelProperty("杩愮淮绫诲埆") @TableField("category") private Integer category; + + @ApiModelProperty("瀹℃牳鐘舵��") + @TableField("audit_state") + private Integer auditState; + @ApiModelProperty("瀹℃牳浜�") + @TableField("audit_user") + private String auditUser; + @ApiModelProperty("瀹℃牳鏃堕棿") + @TableField("audit_time") + private Date auditTime; + @ApiModelProperty("瀹℃牳鎰忚") + @TableField("audit_description") + private String auditDescription; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java index 70472a5..8b022ec 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java @@ -9,6 +9,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; +import java.util.Date; /** * 鑰冩牳妯℃澘 @@ -47,4 +48,6 @@ @ApiModelProperty("鍗曚綅id") @TableField("unit_id") private Integer unitId; + + } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TCheckPublish.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TCheckPublish.java index 8f2889e..fce5d43 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TCheckPublish.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TCheckPublish.java @@ -1,11 +1,14 @@ package com.ycl.platform.domain.entity; import annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.system.entity.BaseEntity; +import lombok.Data; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; import java.math.BigDecimal; +import java.util.Date; /** * 鑰冩牳鍙戝竷瀵硅薄 t_check_publish @@ -13,6 +16,7 @@ * @author ruoyi * @date 2024-03-07 */ +@Data public class TCheckPublish extends BaseEntity { private static final long serialVersionUID = 1L; @@ -53,10 +57,40 @@ private Long updateUser; /** 瀹℃牳鐘舵�� */ private Short auditState; - + @Excel(name = "瀹℃牳浜�") + private String auditUser; + @Excel(name = "瀹℃牳鏃堕棿") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date auditTime; + @Excel(name = "瀹℃牳鎰忚") + private String auditDescription; /** 鎻忚堪 */ @Excel(name = "鎻忚堪") private String description; + + public String getAuditUser() { + return auditUser; + } + + public void setAuditUser(String auditUser) { + this.auditUser = auditUser; + } + + public Date getAuditTime() { + return auditTime; + } + + public void setAuditTime(Date auditTime) { + this.auditTime = auditTime; + } + + public String getAuditDescription() { + return auditDescription; + } + + public void setAuditDescription(String auditDescription) { + this.auditDescription = auditDescription; + } public Short getAuditState() { return auditState; @@ -186,6 +220,9 @@ ", updateUserName='" + updateUserName + '\'' + ", updateUser=" + updateUser + ", auditState=" + auditState + + ", auditUser='" + auditUser + '\'' + + ", auditTime=" + auditTime + + ", auditDescription='" + auditDescription + '\'' + ", description='" + description + '\'' + '}'; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TMonitorVideo.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TMonitorVideo.java new file mode 100644 index 0000000..8bd8d06 --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TMonitorVideo.java @@ -0,0 +1,350 @@ +package com.ycl.platform.domain.entity; + +import annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ycl.system.entity.BaseEntity; +import org.apache.commons.lang.builder.ToStringBuilder; +import org.apache.commons.lang.builder.ToStringStyle; + +import java.util.Date; + +/** + * 璁惧璧勪骇瀵硅薄 t_monitor_video + * + * @author ruoyi + * @date 2024-03-19 + */ +public class TMonitorVideo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 璁惧缂栫爜 */ + @Excel(name = "璁惧缂栫爜") + private String serialNumber; + + /** 璁惧鍚嶇О */ + @Excel(name = "璁惧鍚嶇О") + private String name; + + /** 鎽勫儚鏈篗ac鍦板潃 */ + @Excel(name = "鎽勫儚鏈篗ac鍦板潃") + private String macAddr; + + /** 鎽勫儚鏈篒PV4鎴朓PV6鍦板潃 */ + @Excel(name = "鎽勫儚鏈篒PV4鎴朓PV6鍦板潃") + private String ip; + + /** 璁惧缁忓害锛岃嚦灏戜繚鐣欏叚浣嶅皬鏁� */ + @Excel(name = "璁惧缁忓害锛岃嚦灏戜繚鐣欏叚浣嶅皬鏁�") + private String longitude; + + /** 璁惧缁村害锛岃嚦灏戜繚鐣欏叚浣嶅皬鏁� */ + @Excel(name = "璁惧缁村害锛岃嚦灏戜繚鐣欏叚浣嶅皬鏁�") + private String latitude; + + /** 璁惧鐘舵�� 1/2 鍙敤/涓嶅彲鐢� */ + @Excel(name = "璁惧鐘舵�� 1/2 鍙敤/涓嶅彲鐢�") + private Long onState; + + /** 琛屾斂鍖哄煙 */ + @Excel(name = "琛屾斂鍖哄煙") + private String civilCode; + + /** 瀹夎鍦板潃 */ + @Excel(name = "瀹夎鍦板潃") + private String address; + + /** 瀹夎鏃堕棿 yyyy-MM-dd HH:mm:ss */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "瀹夎鏃堕棿 yyyy-MM-dd HH:mm:ss", width = 30, dateFormat = "yyyy-MM-dd") + private Date installedTime; + + /** 绠$悊鍗曚綅 */ + @Excel(name = "绠$悊鍗曚綅") + private String managementUnit; + + /** 绠$悊鍗曚綅鑱旂郴鏂瑰紡 */ + @Excel(name = "绠$悊鍗曚綅鑱旂郴鏂瑰紡") + private String muContactInfo; + + /** 褰曡薄淇濆瓨澶╂暟 0 - 2147483647 */ + @Excel(name = "褰曡薄淇濆瓨澶╂暟 0 - 2147483647") + private Long storageDays; + + /** 寮傚父鍘熷洜 */ + @Excel(name = "寮傚父鍘熷洜") + private String reason; + + /** 鏄惁鐢熸垚寮傚父宸ュ崟 */ + @Excel(name = "鏄惁鐢熸垚寮傚父宸ュ崟") + private Long defaultOrder; + + /** 寮傚父鎭㈠鏍囪瘑 */ + @Excel(name = "寮傚父鎭㈠鏍囪瘑 ") + private Long recovery; + + /** 寮傚父鎭㈠鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "寮傚父鎭㈠鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") + private Date recoveryTime; + + /** 鑰冩牳鏍囩 */ + @Excel(name = "鑰冩牳鏍囩") + private String tag; + + /** 鍖哄煙 */ + @Excel(name = "鍖哄煙") + private String region; + + /** 淇′护鏃跺欢 */ + @Excel(name = "淇′护鏃跺欢") + private Long sipDelay; + + /** 瑙嗛鏃跺欢 */ + @Excel(name = "瑙嗛鏃跺欢") + private Long videoDelay; + + /** 鍏抽敭甯ф椂寤� */ + @Excel(name = "鍏抽敭甯ф椂寤�") + private Long iframeDelay; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setSerialNumber(String serialNumber) + { + this.serialNumber = serialNumber; + } + + public String getSerialNumber() + { + return serialNumber; + } + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + public void setMacAddr(String macAddr) + { + this.macAddr = macAddr; + } + + public String getMacAddr() + { + return macAddr; + } + public void setIp(String ip) + { + this.ip = ip; + } + + public String getIp() + { + return ip; + } + public void setLongitude(String longitude) + { + this.longitude = longitude; + } + + public String getLongitude() + { + return longitude; + } + public void setLatitude(String latitude) + { + this.latitude = latitude; + } + + public String getLatitude() + { + return latitude; + } + public void setOnState(Long onState) + { + this.onState = onState; + } + + public Long getOnState() + { + return onState; + } + public void setCivilCode(String civilCode) + { + this.civilCode = civilCode; + } + + public String getCivilCode() + { + return civilCode; + } + public void setAddress(String address) + { + this.address = address; + } + + public String getAddress() + { + return address; + } + public void setInstalledTime(Date installedTime) + { + this.installedTime = installedTime; + } + + public Date getInstalledTime() + { + return installedTime; + } + public void setManagementUnit(String managementUnit) + { + this.managementUnit = managementUnit; + } + + public String getManagementUnit() + { + return managementUnit; + } + public void setMuContactInfo(String muContactInfo) + { + this.muContactInfo = muContactInfo; + } + + public String getMuContactInfo() + { + return muContactInfo; + } + public void setStorageDays(Long storageDays) + { + this.storageDays = storageDays; + } + + public Long getStorageDays() + { + return storageDays; + } + public void setReason(String reason) + { + this.reason = reason; + } + + public String getReason() + { + return reason; + } + public void setDefaultOrder(Long defaultOrder) + { + this.defaultOrder = defaultOrder; + } + + public Long getDefaultOrder() + { + return defaultOrder; + } + public void setRecovery(Long recovery) + { + this.recovery = recovery; + } + + public Long getRecovery() + { + return recovery; + } + public void setRecoveryTime(Date recoveryTime) + { + this.recoveryTime = recoveryTime; + } + + public Date getRecoveryTime() + { + return recoveryTime; + } + + public void setRegion(String region) + { + this.region = region; + } + + public String getRegion() + { + return region; + } + public void setSipDelay(Long sipDelay) + { + this.sipDelay = sipDelay; + } + + public Long getSipDelay() + { + return sipDelay; + } + public void setVideoDelay(Long videoDelay) + { + this.videoDelay = videoDelay; + } + + public Long getVideoDelay() + { + return videoDelay; + } + public void setIframeDelay(Long iframeDelay) + { + this.iframeDelay = iframeDelay; + } + + public Long getIframeDelay() + { + return iframeDelay; + } + + public String getTag() { + return tag; + } + + public void setTag(String tag) { + this.tag = tag; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("serialNumber", getSerialNumber()) + .append("name", getName()) + .append("macAddr", getMacAddr()) + .append("ip", getIp()) + .append("longitude", getLongitude()) + .append("latitude", getLatitude()) + .append("onState", getOnState()) + .append("civilCode", getCivilCode()) + .append("address", getAddress()) + .append("installedTime", getInstalledTime()) + .append("managementUnit", getManagementUnit()) + .append("muContactInfo", getMuContactInfo()) + .append("storageDays", getStorageDays()) + .append("reason", getReason()) + .append("defaultOrder", getDefaultOrder()) + .append("recovery", getRecovery()) + .append("recoveryTime", getRecoveryTime()) + .append("tag", getTag()) + .append("region", getRegion()) + .append("sipDelay", getSipDelay()) + .append("videoDelay", getVideoDelay()) + .append("iframeDelay", getIframeDelay()) + .toString(); + } +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckRuleQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckRuleQuery.java index a266cd1..be16f97 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckRuleQuery.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckRuleQuery.java @@ -40,5 +40,7 @@ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date end; + /** 瀹℃牳鐘舵�� */ + private Integer auditState; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java index 8c95449..1fc81a3 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java @@ -1,7 +1,11 @@ package com.ycl.platform.domain.vo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.CheckRule; + +import java.util.Date; import java.util.List; import java.time.LocalDateTime; import org.springframework.lang.NonNull; @@ -37,7 +41,15 @@ private Integer faceChceckpointNum; private Integer category; - + /** 瀹℃牳鐘舵�� */ + private Integer auditState; + /** 瀹℃牳浜� */ + private String auditUser; + /** 瀹℃牳鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date auditTime; + /** 瀹℃牳鎰忚 */ + private String auditDescription; public static CheckRuleVO getVoByEntity(@NonNull CheckRule entity, CheckRuleVO vo) { if(vo == null) { vo = new CheckRuleVO(); diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckTemplateVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckTemplateVO.java index a6b65d2..258a480 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckTemplateVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckTemplateVO.java @@ -1,9 +1,11 @@ package com.ycl.platform.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.CheckTemplate; import java.math.BigDecimal; +import java.util.Date; import java.util.List; import java.time.LocalDateTime; @@ -41,6 +43,7 @@ private List<RuleItemVO> ruleFormList; /** 鍗曚綅鍚� */ private String unitName; + public static CheckTemplateVO getVoByEntity(@NonNull CheckTemplate entity, CheckTemplateVO vo) { if(vo == null) { vo = new CheckTemplateVO(); diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorVideoController.java b/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorVideoController.java new file mode 100644 index 0000000..3502fe1 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorVideoController.java @@ -0,0 +1,98 @@ +package com.ycl.platform.controller; + +import annotation.Log; +import com.ycl.platform.domain.entity.TMonitorVideo; +import com.ycl.platform.service.ITMonitorVideoService; +import com.ycl.system.AjaxResult; +import com.ycl.system.controller.BaseController; +import com.ycl.system.page.TableDataInfo; +import com.ycl.utils.poi.ExcelUtil; +import enumeration.BusinessType; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 璁惧璧勪骇Controller + * + * @author ruoyi + * @date 2024-03-19 + */ +@RestController +@RequestMapping("/system/video") +public class TMonitorVideoController extends BaseController +{ + @Autowired + private ITMonitorVideoService tMonitorVideoService; + + /** + * 鏌ヨ璁惧璧勪骇鍒楄〃 + */ + @PreAuthorize("@ss.hasPermi('system:video:list')") + @GetMapping("/list") + public TableDataInfo list(TMonitorVideo tMonitorVideo) + { + startPage(); + List<TMonitorVideo> list = tMonitorVideoService.selectTMonitorVideoList(tMonitorVideo); + return getDataTable(list); + } + + /** + * 瀵煎嚭璁惧璧勪骇鍒楄〃 + */ + @PreAuthorize("@ss.hasPermi('system:video:export')") + @Log(title = "璁惧璧勪骇", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, TMonitorVideo tMonitorVideo) + { + List<TMonitorVideo> list = tMonitorVideoService.selectTMonitorVideoList(tMonitorVideo); + ExcelUtil<TMonitorVideo> util = new ExcelUtil<TMonitorVideo>(TMonitorVideo.class); + util.exportExcel(response, list, "璁惧璧勪骇鏁版嵁"); + } + + /** + * 鑾峰彇璁惧璧勪骇璇︾粏淇℃伅 + */ + @PreAuthorize("@ss.hasPermi('system:video:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(tMonitorVideoService.selectTMonitorVideoById(id)); + } + + /** + * 鏂板璁惧璧勪骇 + */ + @PreAuthorize("@ss.hasPermi('system:video:add')") + @Log(title = "璁惧璧勪骇", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody TMonitorVideo tMonitorVideo) + { + return toAjax(tMonitorVideoService.insertTMonitorVideo(tMonitorVideo)); + } + + /** + * 淇敼璁惧璧勪骇 + */ + @PreAuthorize("@ss.hasPermi('system:video:edit')") + @Log(title = "璁惧璧勪骇", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody TMonitorVideo tMonitorVideo) + { + return toAjax(tMonitorVideoService.updateTMonitorVideo(tMonitorVideo)); + } + + /** + * 鍒犻櫎璁惧璧勪骇 + */ + @PreAuthorize("@ss.hasPermi('system:video:remove')") + @Log(title = "璁惧璧勪骇", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(tMonitorVideoService.deleteTMonitorVideoByIds(ids)); + } +} diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorVideoMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorVideoMapper.java new file mode 100644 index 0000000..1e62c80 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorVideoMapper.java @@ -0,0 +1,62 @@ +package com.ycl.platform.mapper; + +import com.ycl.platform.domain.entity.TMonitorVideo; + +import java.util.List; + +/** + * 璁惧璧勪骇Mapper鎺ュ彛 + * + * @author ruoyi + * @date 2024-03-19 + */ +public interface TMonitorVideoMapper +{ + /** + * 鏌ヨ璁惧璧勪骇 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 璁惧璧勪骇 + */ + public TMonitorVideo selectTMonitorVideoById(Long id); + + /** + * 鏌ヨ璁惧璧勪骇鍒楄〃 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 璁惧璧勪骇闆嗗悎 + */ + public List<TMonitorVideo> selectTMonitorVideoList(TMonitorVideo tMonitorVideo); + + /** + * 鏂板璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + public int insertTMonitorVideo(TMonitorVideo tMonitorVideo); + + /** + * 淇敼璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + public int updateTMonitorVideo(TMonitorVideo tMonitorVideo); + + /** + * 鍒犻櫎璁惧璧勪骇 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 缁撴灉 + */ + public int deleteTMonitorVideoById(Long id); + + /** + * 鎵归噺鍒犻櫎璁惧璧勪骇 + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteTMonitorVideoByIds(Long[] ids); +} diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorVideoService.java b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorVideoService.java new file mode 100644 index 0000000..a2cae36 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorVideoService.java @@ -0,0 +1,62 @@ +package com.ycl.platform.service; + +import com.ycl.platform.domain.entity.TMonitorVideo; + +import java.util.List; + +/** + * 璁惧璧勪骇Service鎺ュ彛 + * + * @author ruoyi + * @date 2024-03-19 + */ +public interface ITMonitorVideoService +{ + /** + * 鏌ヨ璁惧璧勪骇 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 璁惧璧勪骇 + */ + public TMonitorVideo selectTMonitorVideoById(Long id); + + /** + * 鏌ヨ璁惧璧勪骇鍒楄〃 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 璁惧璧勪骇闆嗗悎 + */ + public List<TMonitorVideo> selectTMonitorVideoList(TMonitorVideo tMonitorVideo); + + /** + * 鏂板璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + public int insertTMonitorVideo(TMonitorVideo tMonitorVideo); + + /** + * 淇敼璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + public int updateTMonitorVideo(TMonitorVideo tMonitorVideo); + + /** + * 鎵归噺鍒犻櫎璁惧璧勪骇 + * + * @param ids 闇�瑕佸垹闄ょ殑璁惧璧勪骇涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteTMonitorVideoByIds(Long[] ids); + + /** + * 鍒犻櫎璁惧璧勪骇淇℃伅 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 缁撴灉 + */ + public int deleteTMonitorVideoById(Long id); +} diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java index c357e57..8374785 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java @@ -107,12 +107,13 @@ @Override public Result page(CheckRuleQuery query) { - IPage<CheckRule> page = new LambdaQueryChainWrapper<>(baseMapper) + IPage<CheckRule> page = new LambdaQueryChainWrapper<>(baseMapper) .like(StringUtils.hasText(query.getRuleName()), CheckRule::getRuleName, query.getRuleName()) .between(Objects.nonNull(query.getStart()) && Objects.nonNull(query.getEnd()), CheckRule::getCreateTime, DateUtils.getDayStart(query.getStart()), DateUtils.getDayEnd(query.getEnd())) + .eq(Objects.nonNull(query.getAuditState()),CheckRule::getAuditState, query.getAuditState()) .orderByDesc(CheckRule::getCreateTime) .page(PageUtil.getPage(query, CheckRule.class)); diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorVideoServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorVideoServiceImpl.java new file mode 100644 index 0000000..8f47bbb --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorVideoServiceImpl.java @@ -0,0 +1,94 @@ +package com.ycl.platform.service.impl; + +import com.ycl.platform.domain.entity.TMonitorVideo; +import com.ycl.platform.mapper.TMonitorVideoMapper; +import com.ycl.platform.service.ITMonitorVideoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 璁惧璧勪骇Service涓氬姟灞傚鐞� + * + * @author ruoyi + * @date 2024-03-19 + */ +@Service +public class TMonitorVideoServiceImpl implements ITMonitorVideoService +{ + @Autowired + private TMonitorVideoMapper tMonitorVideoMapper; + + /** + * 鏌ヨ璁惧璧勪骇 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 璁惧璧勪骇 + */ + @Override + public TMonitorVideo selectTMonitorVideoById(Long id) + { + return tMonitorVideoMapper.selectTMonitorVideoById(id); + } + + /** + * 鏌ヨ璁惧璧勪骇鍒楄〃 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 璁惧璧勪骇 + */ + @Override + public List<TMonitorVideo> selectTMonitorVideoList(TMonitorVideo tMonitorVideo) + { + return tMonitorVideoMapper.selectTMonitorVideoList(tMonitorVideo); + } + + /** + * 鏂板璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + @Override + public int insertTMonitorVideo(TMonitorVideo tMonitorVideo) + { + return tMonitorVideoMapper.insertTMonitorVideo(tMonitorVideo); + } + + /** + * 淇敼璁惧璧勪骇 + * + * @param tMonitorVideo 璁惧璧勪骇 + * @return 缁撴灉 + */ + @Override + public int updateTMonitorVideo(TMonitorVideo tMonitorVideo) + { + return tMonitorVideoMapper.updateTMonitorVideo(tMonitorVideo); + } + + /** + * 鎵归噺鍒犻櫎璁惧璧勪骇 + * + * @param ids 闇�瑕佸垹闄ょ殑璁惧璧勪骇涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteTMonitorVideoByIds(Long[] ids) + { + return tMonitorVideoMapper.deleteTMonitorVideoByIds(ids); + } + + /** + * 鍒犻櫎璁惧璧勪骇淇℃伅 + * + * @param id 璁惧璧勪骇涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteTMonitorVideoById(Long id) + { + return tMonitorVideoMapper.deleteTMonitorVideoById(id); + } +} diff --git a/ycl-server/src/main/resources/application.yml b/ycl-server/src/main/resources/application.yml index d08e1c8..9ed432a 100644 --- a/ycl-server/src/main/resources/application.yml +++ b/ycl-server/src/main/resources/application.yml @@ -95,7 +95,7 @@ user: password: # 瀵嗙爜鏈�澶ч敊璇鏁� - maxRetryCount: 5 + maxRetryCount: 20 # 瀵嗙爜閿佸畾鏃堕棿锛堥粯璁�10鍒嗛挓锛� lockTime: 10 diff --git a/ycl-server/src/main/resources/mapper/zgyw/TCheckPublishMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TCheckPublishMapper.xml index 77d56b4..f5dadc8 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/TCheckPublishMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/TCheckPublishMapper.xml @@ -19,10 +19,16 @@ <result property="updateUserName" column="update_user_name" /> <result property="description" column="description" /> <result property="alarmScore" column="alarm_score" /> + <result property="auditState" column="audit_state" /> + <result property="auditUser" column="audit_user" /> + <result property="auditDescription" column="audit_description" /> + <result property="auditTime" column="audit_time" /> </resultMap> <sql id="selectTCheckPublishVo"> - select id , examine_name, template_id , examine_range , frequency , state , create_time , create_user , update_time , update_user , description,create_user_name,update_user_name,alarm_score from t_check_publish + select id , examine_name, template_id , examine_range , frequency , state , create_time , create_user , update_time , + update_user , description,create_user_name,update_user_name,alarm_score ,audit_state,audit_user,audit_description,audit_time + from t_check_publish </sql> <select id="selectTCheckPublishList" parameterType="com.ycl.platform.domain.entity.TCheckPublish" resultMap="TCheckPublishResult"> @@ -37,6 +43,7 @@ <if test="updateUser != null "> and update_user = #{updateUser}</if> <if test="description != null and description != ''"> and description = #{description}</if> <if test="alarmScore != null"> and alarm_score = #{alarmScore}</if> + <if test="auditState != null"> and audit_state = #{auditState}</if> </where> </select> @@ -62,6 +69,10 @@ <if test="updateUserName != null and updateUserName!= ''">update_user_name,</if> <if test="description != null">description,</if> <if test="alarmScore != null">alarm_score,</if> + <if test="auditState != null">alarm_state,</if> + <if test="auditUser != null and auditUser!=''">alarm_user,</if> + <if test="auditDescription != null auditDescription!=''">alarm_description,</if> + <if test="auditTime != null">alarm_time,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> @@ -78,6 +89,10 @@ <if test="updateUserName != null and updateUserName!= ''">#{updateUserName},</if> <if test="description != null">#{description},</if> <if test="alarmScore != null">#{alarmScore},</if> + <if test="auditState != null">#{alarmState),</if> + <if test="auditUser != null and auditUser!=''">#{auditUser},</if> + <if test="auditDescription != null auditDescription!=''">#{auditDescription},</if> + <if test="auditTime != null">#{auditTime},</if> </trim> </insert> @@ -97,6 +112,10 @@ <if test="updateUserName != null and updateUserName!= ''">update_user_name = #{updateUserName},</if> <if test="description != null">description = #{description},</if> <if test="alarmScore != null">alarm_score = #{alarmScore},</if> + <if test="auditState != null">audit_state = #{alarmState),</if> + <if test="auditUser != null and auditUser!=''">audit_user = #{auditUser},</if> + <if test="auditDescription != null auditDescription!=''">audit_description = #{auditDescription},</if> + <if test="auditTime != null">audit_time = #{auditTime},</if> </trim> where id = #{id} </update> diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorVideoMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorVideoMapper.xml new file mode 100644 index 0000000..3747489 --- /dev/null +++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorVideoMapper.xml @@ -0,0 +1,161 @@ +<?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.ycl.platform.mapper.TMonitorVideoMapper"> + + <resultMap type="com.ycl.platform.domain.entity.TMonitorVideo" id="TMonitorVideoResult"> + <result property="id" column="id" /> + <result property="serialNumber" column="serial_number" /> + <result property="name" column="name" /> + <result property="macAddr" column="mac_addr" /> + <result property="ip" column="ip" /> + <result property="longitude" column="longitude" /> + <result property="latitude" column="latitude" /> + <result property="onState" column="on_state" /> + <result property="civilCode" column="civil_code" /> + <result property="address" column="address" /> + <result property="installedTime" column="installed_time" /> + <result property="managementUnit" column="management_unit" /> + <result property="muContactInfo" column="mu_contact_info" /> + <result property="storageDays" column="storage_days" /> + <result property="reason" column="reason" /> + <result property="defaultOrder" column="default_order" /> + <result property="recovery" column="recovery" /> + <result property="recoveryTime" column="recovery_time" /> + <result property="tag" column="tag" /> + <result property="region" column="region" /> + <result property="sipDelay" column="sipDelay" /> + <result property="videoDelay" column="videoDelay" /> + <result property="iframeDelay" column="iframeDelay" /> + </resultMap> + + <sql id="selectTMonitorVideoVo"> + select id, serial_number, name, mac_addr, ip, longitude, latitude, on_state, civil_code, address, installed_time, management_unit, mu_contact_info, storage_days, reason, default_order, recovery, recovery_time, tag, region, sipDelay, videoDelay, iframeDelay from t_monitor_video + </sql> + + <select id="selectTMonitorVideoList" resultMap="TMonitorVideoResult"> + <include refid="selectTMonitorVideoVo"/> + <where> + <if test="serialNumber != null and serialNumber != ''"> and serial_number = #{serialNumber}</if> + <if test="name != null and name != ''"> and name like concat('%', #{name}, '%')</if> + <if test="macAddr != null and macAddr != ''"> and mac_addr = #{macAddr}</if> + <if test="ip != null and ip != ''"> and ip = #{ip}</if> + <if test="longitude != null and longitude != ''"> and longitude = #{longitude}</if> + <if test="latitude != null and latitude != ''"> and latitude = #{latitude}</if> + <if test="onState != null "> and on_state = #{onState}</if> + <if test="civilCode != null and civilCode != ''"> and civil_code = #{civilCode}</if> + <if test="address != null and address != ''"> and address = #{address}</if> + <if test="installedTime != null "> and installed_time = #{installedTime}</if> + <if test="managementUnit != null and managementUnit != ''"> and management_unit = #{managementUnit}</if> + <if test="muContactInfo != null and muContactInfo != ''"> and mu_contact_info = #{muContactInfo}</if> + <if test="storageDays != null "> and storage_days = #{storageDays}</if> + <if test="reason != null and reason != ''"> and reason = #{reason}</if> + <if test="defaultOrder != null "> and default_order = #{defaultOrder}</if> + <if test="recovery != null "> and recovery = #{recovery}</if> + <if test="recoveryTime != null "> and recovery_time = #{recoveryTime}</if> + <if test="tag != null and tag !=''"> and tag = #{tag}</if> + <if test="region != null and region != ''"> and region = #{region}</if> + <if test="sipDelay != null "> and sipDelay = #{sipDelay}</if> + <if test="videoDelay != null "> and videoDelay = #{videoDelay}</if> + <if test="iframeDelay != null "> and iframeDelay = #{iframeDelay}</if> + </where> + </select> + + <select id="selectTMonitorVideoById" parameterType="Long" resultMap="TMonitorVideoResult"> + <include refid="selectTMonitorVideoVo"/> + where id = #{id} + </select> + + <insert id="insertTMonitorVideo" useGeneratedKeys="true" keyProperty="id"> + insert into t_monitor_video + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="serialNumber != null">serial_number,</if> + <if test="name != null">name,</if> + <if test="macAddr != null">mac_addr,</if> + <if test="ip != null">ip,</if> + <if test="longitude != null">longitude,</if> + <if test="latitude != null">latitude,</if> + <if test="onState != null">on_state,</if> + <if test="civilCode != null">civil_code,</if> + <if test="address != null">address,</if> + <if test="installedTime != null">installed_time,</if> + <if test="managementUnit != null">management_unit,</if> + <if test="muContactInfo != null">mu_contact_info,</if> + <if test="storageDays != null">storage_days,</if> + <if test="reason != null">reason,</if> + <if test="defaultOrder != null">default_order,</if> + <if test="recovery != null">recovery,</if> + <if test="recoveryTime != null">recovery_time,</if> + <if test="tag != null and tag !=''">tag,</if> + <if test="region != null">region,</if> + <if test="sipDelay != null">sipDelay,</if> + <if test="videoDelay != null">videoDelay,</if> + <if test="iframeDelay != null">iframeDelay,</if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="serialNumber != null">#{serialNumber},</if> + <if test="name != null">#{name},</if> + <if test="macAddr != null">#{macAddr},</if> + <if test="ip != null">#{ip},</if> + <if test="longitude != null">#{longitude},</if> + <if test="latitude != null">#{latitude},</if> + <if test="onState != null">#{onState},</if> + <if test="civilCode != null">#{civilCode},</if> + <if test="address != null">#{address},</if> + <if test="installedTime != null">#{installedTime},</if> + <if test="managementUnit != null">#{managementUnit},</if> + <if test="muContactInfo != null">#{muContactInfo},</if> + <if test="storageDays != null">#{storageDays},</if> + <if test="reason != null">#{reason},</if> + <if test="defaultOrder != null">#{defaultOrder},</if> + <if test="recovery != null">#{recovery},</if> + <if test="recoveryTime != null">#{recoveryTime},</if> + <if test="tag != null and tag !=''">#{tag},</if> + <if test="region != null">#{region},</if> + <if test="sipDelay != null">#{sipDelay},</if> + <if test="videoDelay != null">#{videoDelay},</if> + <if test="iframeDelay != null">#{iframeDelay},</if> + </trim> + </insert> + + <update id="updateTMonitorVideo" > + update t_monitor_video + <trim prefix="SET" suffixOverrides=","> + <if test="serialNumber != null">serial_number = #{serialNumber},</if> + <if test="name != null">name = #{name},</if> + <if test="macAddr != null">mac_addr = #{macAddr},</if> + <if test="ip != null">ip = #{ip},</if> + <if test="longitude != null">longitude = #{longitude},</if> + <if test="latitude != null">latitude = #{latitude},</if> + <if test="onState != null">on_state = #{onState},</if> + <if test="civilCode != null">civil_code = #{civilCode},</if> + <if test="address != null">address = #{address},</if> + <if test="installedTime != null">installed_time = #{installedTime},</if> + <if test="managementUnit != null">management_unit = #{managementUnit},</if> + <if test="muContactInfo != null">mu_contact_info = #{muContactInfo},</if> + <if test="storageDays != null">storage_days = #{storageDays},</if> + <if test="reason != null">reason = #{reason},</if> + <if test="defaultOrder != null">default_order = #{defaultOrder},</if> + <if test="recovery != null">recovery = #{recovery},</if> + <if test="recoveryTime != null">recovery_time = #{recoveryTime},</if> + <if test="tag != null and tag !=''">tag = #{tag},</if> + <if test="region != null">region = #{region},</if> + <if test="sipDelay != null">sipDelay = #{sipDelay},</if> + <if test="videoDelay != null">videoDelay = #{videoDelay},</if> + <if test="iframeDelay != null">iframeDelay = #{iframeDelay},</if> + </trim> + where id = #{id} + </update> + + <delete id="deleteTMonitorVideoById" parameterType="Long"> + delete from t_monitor_video where id = #{id} + </delete> + + <delete id="deleteTMonitorVideoByIds" parameterType="String"> + delete from t_monitor_video where id in + <foreach item="id" collection="array" open="(" separator="," close=")"> + #{id} + </foreach> + </delete> +</mapper> \ No newline at end of file -- Gitblit v1.8.0