diff --git a/agri-system/src/main/java/com/agri/system/controller/SysAgriLimitBakController.java b/agri-system/src/main/java/com/agri/system/controller/SysAgriLimitBakController.java new file mode 100644 index 0000000..81f0ca2 --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/controller/SysAgriLimitBakController.java @@ -0,0 +1,124 @@ +package com.agri.system.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.agri.system.domain.SysAgriLimit; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.agri.common.annotation.Log; +import com.agri.common.core.controller.BaseController; +import com.agri.common.core.domain.AjaxResult; +import com.agri.common.enums.BusinessType; +import com.agri.system.domain.SysAgriLimitBak; +import com.agri.system.service.ISysAgriLimitBakService; +import com.agri.common.utils.poi.ExcelUtil; +import com.agri.common.core.page.TableDataInfo; + +/** + * 大棚功能执行时间限位Controller + * + * @author lld + * @date 2026-03-17 + */ +@RestController +@RequestMapping("/assets/limit_bak") +public class SysAgriLimitBakController extends BaseController +{ + @Autowired + private ISysAgriLimitBakService sysAgriLimitBakService; + + /** + * 查询大棚功能执行时间限位列表 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:list')") + @GetMapping("/list") + public TableDataInfo list(SysAgriLimitBak sysAgriLimitBak) + { + startPage(); + List list = sysAgriLimitBakService.selectSysAgriLimitBakList(sysAgriLimitBak); + return getDataTable(list); + } + + /** + * 导出大棚功能执行时间限位列表 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:export')") + @Log(title = "大棚功能执行时间限位", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysAgriLimitBak sysAgriLimitBak) + { + List list = sysAgriLimitBakService.selectSysAgriLimitBakList(sysAgriLimitBak); + ExcelUtil util = new ExcelUtil(SysAgriLimitBak.class); + util.exportExcel(response, list, "大棚功能执行时间限位数据"); + } + + /** + * 获取大棚功能执行时间限位详细信息 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(sysAgriLimitBakService.selectSysAgriLimitBakById(id)); + } + + /** + * 新增大棚功能执行时间限位 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:add')") + @Log(title = "大棚功能执行时间限位", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SysAgriLimitBak sysAgriLimitBak) + { + return toAjax(sysAgriLimitBakService.insertSysAgriLimitBak(sysAgriLimitBak)); + } + + /** + * 修改大棚功能执行时间限位 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:edit')") + @Log(title = "大棚功能执行时间限位", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysAgriLimitBak sysAgriLimitBak) + { + return toAjax(sysAgriLimitBakService.updateSysAgriLimitBak(sysAgriLimitBak)); + } + + /** + * 删除大棚功能执行时间限位 + */ + @PreAuthorize("@ss.hasPermi('assets:limit_bak:remove')") + @Log(title = "大棚功能执行时间限位", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(sysAgriLimitBakService.deleteSysAgriLimitBakByIds(ids)); + } + + + @Log(title = "大棚运行时间限位查询", businessType = BusinessType.SELECT) + @GetMapping("/getAgriLimitByImei/{imei}") + public AjaxResult getAgriLimitByImei(@PathVariable String imei) + { + SysAgriLimitBak agriLimit = sysAgriLimitBakService.getAgriLimitByImei(imei); + return success(agriLimit); + } + + + @PreAuthorize("@ss.hasPermi('assets:limit_bak:add')") + @Log(title = "大棚功能执行时间限位", businessType = BusinessType.INSERT) + @PostMapping("/saveAgriLimit") + public AjaxResult saveAgriLimit(@RequestBody SysAgriLimitBak sysAgriLimitBak) + { + return toAjax(sysAgriLimitBakService.saveAgriLimit(sysAgriLimitBak)); + } +} diff --git a/agri-system/src/main/java/com/agri/system/controller/SysDtuRemarkBakController.java b/agri-system/src/main/java/com/agri/system/controller/SysDtuRemarkBakController.java new file mode 100644 index 0000000..cd1d21c --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/controller/SysDtuRemarkBakController.java @@ -0,0 +1,120 @@ +package com.agri.system.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.agri.system.domain.SysDtuRemark; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import com.agri.common.annotation.Log; +import com.agri.common.core.controller.BaseController; +import com.agri.common.core.domain.AjaxResult; +import com.agri.common.enums.BusinessType; +import com.agri.system.domain.SysDtuRemarkBak; +import com.agri.system.service.ISysDtuRemarkBakService; +import com.agri.common.utils.poi.ExcelUtil; +import com.agri.common.core.page.TableDataInfo; + +/** + * dtu设备备注Controller + * + * @author lld + * @date 2026-03-17 + */ +@RestController +@RequestMapping("/assets/remark_bak") +public class SysDtuRemarkBakController extends BaseController +{ + @Autowired + private ISysDtuRemarkBakService sysDtuRemarkBakService; + + /** + * 查询dtu设备备注列表 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:list')") + @GetMapping("/list") + public TableDataInfo list(SysDtuRemarkBak sysDtuRemarkBak) + { + startPage(); + List list = sysDtuRemarkBakService.selectSysDtuRemarkBakList(sysDtuRemarkBak); + return getDataTable(list); + } + + /** + * 导出dtu设备备注列表 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:export')") + @Log(title = "dtu设备备注", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysDtuRemarkBak sysDtuRemarkBak) + { + List list = sysDtuRemarkBakService.selectSysDtuRemarkBakList(sysDtuRemarkBak); + ExcelUtil util = new ExcelUtil(SysDtuRemarkBak.class); + util.exportExcel(response, list, "dtu设备备注数据"); + } + + /** + * 获取dtu设备备注详细信息 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(sysDtuRemarkBakService.selectSysDtuRemarkBakById(id)); + } + + /** + * 新增dtu设备备注 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:add')") + @Log(title = "dtu设备备注", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SysDtuRemarkBak sysDtuRemarkBak) + { + return toAjax(sysDtuRemarkBakService.insertSysDtuRemarkBak(sysDtuRemarkBak)); + } + + /** + * 修改dtu设备备注 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:edit')") + @Log(title = "dtu设备备注", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysDtuRemarkBak sysDtuRemarkBak) + { + return toAjax(sysDtuRemarkBakService.updateSysDtuRemarkBak(sysDtuRemarkBak)); + } + + /** + * 删除dtu设备备注 + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:remove')") + @Log(title = "dtu设备备注", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(sysDtuRemarkBakService.deleteSysDtuRemarkBakByIds(ids)); + } + + + /** + * 获取dtu设备备注详细信息getDtuRemarkByImei + */ + @PreAuthorize("@ss.hasPermi('assets:remark_bak:list')") + @GetMapping(value = "/getDtuRemarkByImei") + public AjaxResult getDtuRemarkByImei(@RequestParam("imei") String imei) + { + SysDtuRemarkBak dtuRemark = sysDtuRemarkBakService.getDtuRemarkByImei(imei); + return success(dtuRemark); + } + + @PreAuthorize("@ss.hasPermi('assets:remark_bak:add')") + @Log(title = "dtu设备备注", businessType = BusinessType.INSERT) + @PostMapping("/saveAgriRemark") + public AjaxResult saveAgriRemark(@RequestBody SysDtuRemarkBak sysDtuRemarkBak) + { + return toAjax(sysDtuRemarkBakService.saveAgriRemark(sysDtuRemarkBak)); + } + +} diff --git a/agri-system/src/main/java/com/agri/system/domain/SysAgriInfo.java b/agri-system/src/main/java/com/agri/system/domain/SysAgriInfo.java index ff8eb6c..e3d221b 100644 --- a/agri-system/src/main/java/com/agri/system/domain/SysAgriInfo.java +++ b/agri-system/src/main/java/com/agri/system/domain/SysAgriInfo.java @@ -9,6 +9,9 @@ import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.models.auth.In; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -57,11 +60,13 @@ public class SysAgriInfo extends BaseEntity private Integer deviceStatus; /** 安装时间 */ + @Getter @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @Excel(name = "安装时间", width = 30, dateFormat = "yyyy-MM-dd") private Date installTime; /** 安装位置 */ + @Setter @Excel(name = "安装位置") private String location; @@ -76,97 +81,45 @@ public class SysAgriInfo extends BaseEntity @TableField(exist = false) private Integer sourceCode; - public void setId(Long id) - { - this.id = id; - } + /** + * 卷被数量 + */ + private Integer quiltNum; - public Long getId() - { + /** + * 卷膜 + */ + private Integer filmNum; + + /** + * 卷帘 + */ + private Integer blindNum; + + public Long getId() { return id; } - public void setImei(String imei) - { - this.imei = imei; + public void setId(Long id) { + this.id = id; } - public String getImei() - { + public String getImei() { return imei; } - public void setAgriName(String agriName) - { - this.agriName = agriName; + public void setImei(String imei) { + this.imei = imei; } - public String getAgriName() - { + public String getAgriName() { return agriName; } - public void setUserId(Long userId) - { - this.userId = userId; + public void setAgriName(String agriName) { + this.agriName = agriName; } - public Long getUserId() - { - return userId; - } - - public void setAlarmStatus(Integer alarmStatus) - { - this.alarmStatus = alarmStatus; - } - - public Integer getAlarmStatus() - { - return alarmStatus; - } - - public void setDeviceStatus(Integer deviceStatus) - { - this.deviceStatus = deviceStatus; - } - - public Integer getDeviceStatus() - { - return deviceStatus; - } - - public void setInstallTime(Date installTime) - { - this.installTime = installTime; - } - - public Date getInstallTime() - { - return installTime; - } - - public void setLocation(String location) - { - this.location = location; - } - - public String getLocation() - { - return location; - } - - public void setIsDeleted(Integer isDeleted) - { - this.isDeleted = isDeleted; - } - - public Integer getIsDeleted() - { - return isDeleted; - } - - public Integer getWorkMode() { return workMode; } @@ -175,6 +128,53 @@ public class SysAgriInfo extends BaseEntity this.workMode = workMode; } + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public Integer getAlarmStatus() { + return alarmStatus; + } + + public void setAlarmStatus(Integer alarmStatus) { + this.alarmStatus = alarmStatus; + } + + public Integer getDeviceStatus() { + return deviceStatus; + } + + public void setDeviceStatus(Integer deviceStatus) { + this.deviceStatus = deviceStatus; + } + + public Date getInstallTime() { + return installTime; + } + + public void setInstallTime(Date installTime) { + this.installTime = installTime; + } + + public String getLocation() { + return location; + } + + public void setLocation(String location) { + this.location = location; + } + + public Integer getIsDeleted() { + return isDeleted; + } + + public void setIsDeleted(Integer isDeleted) { + this.isDeleted = isDeleted; + } public Integer getSourceCode() { return sourceCode; @@ -184,24 +184,27 @@ public class SysAgriInfo extends BaseEntity this.sourceCode = sourceCode; } - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("imei", getImei()) - .append("agriName", getAgriName()) - .append("workMode", getWorkMode()) - .append("userId", getUserId()) - .append("alarmStatus", getAlarmStatus()) - .append("deviceStatus", getDeviceStatus()) - .append("installTime", getInstallTime()) - .append("location", getLocation()) - .append("remark", getRemark()) - .append("createTime", getCreateTime()) - .append("createBy", getCreateBy()) - .append("updateTime", getUpdateTime()) - .append("updateBy", getUpdateBy()) - .append("isDeleted", getIsDeleted()) - .toString(); + public Integer getQuiltNum() { + return quiltNum; + } + + public void setQuiltNum(Integer quiltNum) { + this.quiltNum = quiltNum; + } + + public Integer getFilmNum() { + return filmNum; + } + + public void setFilmNum(Integer filmNum) { + this.filmNum = filmNum; + } + + public Integer getBlindNum() { + return blindNum; + } + + public void setBlindNum(Integer blindNum) { + this.blindNum = blindNum; } } diff --git a/agri-system/src/main/java/com/agri/system/domain/SysAgriLimitBak.java b/agri-system/src/main/java/com/agri/system/domain/SysAgriLimitBak.java new file mode 100644 index 0000000..633129e --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/domain/SysAgriLimitBak.java @@ -0,0 +1,154 @@ +package com.agri.system.domain; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.Map; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.baomidou.mybatisplus.annotation.TableName; +import com.agri.common.annotation.Excel; +import com.agri.common.core.domain.BaseEntity; + +/** + * 大棚功能执行时间限位对象 sys_agri_limit_bak + * + * @author lld + * @date 2026-03-17 + */ +@TableName("sys_agri_limit_bak") +public class SysAgriLimitBak extends BaseEntity +{ + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + /** 主键ID */ + @TableId(type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + private String id; + + /** 大棚ID */ + @Excel(name = "大棚ID") + private Long agriId; + + /** 大棚名称 */ + @Excel(name = "大棚名称") + private String agriName; + + /** imei */ + @Excel(name = "imei") + private String imei; + + /** 卷膜 */ + @Excel(name = "卷膜") + private String roller; + + /** 限位时间 */ + @Excel(name = "限位时间") + private BigDecimal funcLimit; + + /** 数据版本号(乐观锁) */ + @Excel(name = "数据版本号", readConverterExp = "乐=观锁") + @Version + private String version; + + @TableField(exist = false) + private Map limitMaps; + + public void setId(String id) + { + this.id = id; + } + + public String getId() + { + return id; + } + + public void setAgriId(Long agriId) + { + this.agriId = agriId; + } + + public Long getAgriId() + { + return agriId; + } + + public void setAgriName(String agriName) + { + this.agriName = agriName; + } + + public String getAgriName() + { + return agriName; + } + + public void setImei(String imei) + { + this.imei = imei; + } + + public String getImei() + { + return imei; + } + + public void setRoller(String roller) + { + this.roller = roller; + } + + public String getRoller() + { + return roller; + } + + public BigDecimal getFuncLimit() { + return funcLimit; + } + + public void setFuncLimit(BigDecimal funcLimit) { + this.funcLimit = funcLimit; + } + + public void setVersion(String version) + { + this.version = version; + } + + public String getVersion() + { + return version; + } + + public Map getLimitMaps() { + return limitMaps; + } + + public void setLimitMaps(Map limitMaps) { + this.limitMaps = limitMaps; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("agriId", getAgriId()) + .append("agriName", getAgriName()) + .append("imei", getImei()) + .append("roller", getRoller()) + .append("remark", getRemark()) + .append("version", getVersion()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/agri-system/src/main/java/com/agri/system/domain/SysDtuRemarkBak.java b/agri-system/src/main/java/com/agri/system/domain/SysDtuRemarkBak.java new file mode 100644 index 0000000..00a8261 --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/domain/SysDtuRemarkBak.java @@ -0,0 +1,139 @@ +package com.agri.system.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.baomidou.mybatisplus.annotation.TableName; +import com.agri.common.annotation.Excel; +import com.agri.common.core.domain.BaseEntity; + +import java.math.BigDecimal; +import java.util.Map; + +/** + * dtu设备备注对象 sys_dtu_remark_bak + * + * @author lld + * @date 2026-03-17 + */ +@TableName("sys_dtu_remark_bak") +public class SysDtuRemarkBak extends BaseEntity +{ + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + /** 主键ID */ + @TableId(type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + private String id; + + /** imei */ + @Excel(name = "imei") + private String imei; + + /** 类型 */ + @Excel(name = "类型") + private String roller; + + /** 备注 */ + @Excel(name = "备注") + private String remarkShort; + + /** 数据版本号(乐观锁) */ + @Excel(name = "数据版本号", readConverterExp = "乐=观锁") + @Version + private String version; + + /** 扩展备注 */ + private String extJson; + + @TableField(exist = false) + private Map remarkMaps; + + public void setId(String id) + { + this.id = id; + } + + public String getId() + { + return id; + } + + public void setImei(String imei) + { + this.imei = imei; + } + + public String getImei() + { + return imei; + } + + public void setRoller(String roller) + { + this.roller = roller; + } + + public String getRoller() + { + return roller; + } + + public void setRemarkShort(String remarkShort) + { + this.remarkShort = remarkShort; + } + + public String getRemarkShort() + { + return remarkShort; + } + + public void setVersion(String version) + { + this.version = version; + } + + public String getVersion() + { + return version; + } + + public void setExtJson(String extJson) + { + this.extJson = extJson; + } + + public String getExtJson() + { + return extJson; + } + + public Map getRemarkMaps() { + return remarkMaps; + } + + public void setRemarkMaps(Map remarkMaps) { + this.remarkMaps = remarkMaps; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("imei", getImei()) + .append("roller", getRoller()) + .append("remarkShort", getRemarkShort()) + .append("version", getVersion()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("extJson", getExtJson()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/agri-system/src/main/java/com/agri/system/domain/vo/AgriInfoView.java b/agri-system/src/main/java/com/agri/system/domain/vo/AgriInfoView.java index 076b8eb..f636f8e 100644 --- a/agri-system/src/main/java/com/agri/system/domain/vo/AgriInfoView.java +++ b/agri-system/src/main/java/com/agri/system/domain/vo/AgriInfoView.java @@ -47,4 +47,20 @@ public class AgriInfoView { /** 温度4(℃) */ private BigDecimal temp4; + + + /** + * 卷被数量 + */ + private Integer quiltNum; + + /** + * 卷膜 + */ + private Integer filmNum; + + /** + * 卷帘 + */ + private Integer blindNum; } diff --git a/agri-system/src/main/java/com/agri/system/mapper/SysAgriLimitBakMapper.java b/agri-system/src/main/java/com/agri/system/mapper/SysAgriLimitBakMapper.java new file mode 100644 index 0000000..dd1ffaa --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/mapper/SysAgriLimitBakMapper.java @@ -0,0 +1,62 @@ +package com.agri.system.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.agri.system.domain.SysAgriLimitBak; + +/** + * 大棚功能执行时间限位Mapper接口 + * + * @author lld + * @date 2026-03-17 + */ +public interface SysAgriLimitBakMapper extends BaseMapper +{ + /** + * 查询大棚功能执行时间限位 + * + * @param id 大棚功能执行时间限位主键 + * @return 大棚功能执行时间限位 + */ + public SysAgriLimitBak selectSysAgriLimitBakById(String id); + + /** + * 查询大棚功能执行时间限位列表 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 大棚功能执行时间限位集合 + */ + public List selectSysAgriLimitBakList(SysAgriLimitBak sysAgriLimitBak); + + /** + * 新增大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + public int insertSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak); + + /** + * 修改大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + public int updateSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak); + + /** + * 删除大棚功能执行时间限位 + * + * @param id 大棚功能执行时间限位主键 + * @return 结果 + */ + public int deleteSysAgriLimitBakById(String id); + + /** + * 批量删除大棚功能执行时间限位 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSysAgriLimitBakByIds(String[] ids); +} diff --git a/agri-system/src/main/java/com/agri/system/mapper/SysDtuRemarkBakMapper.java b/agri-system/src/main/java/com/agri/system/mapper/SysDtuRemarkBakMapper.java new file mode 100644 index 0000000..c627fc8 --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/mapper/SysDtuRemarkBakMapper.java @@ -0,0 +1,62 @@ +package com.agri.system.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.agri.system.domain.SysDtuRemarkBak; + +/** + * dtu设备备注Mapper接口 + * + * @author lld + * @date 2026-03-17 + */ +public interface SysDtuRemarkBakMapper extends BaseMapper +{ + /** + * 查询dtu设备备注 + * + * @param id dtu设备备注主键 + * @return dtu设备备注 + */ + public SysDtuRemarkBak selectSysDtuRemarkBakById(String id); + + /** + * 查询dtu设备备注列表 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return dtu设备备注集合 + */ + public List selectSysDtuRemarkBakList(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 新增dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + public int insertSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 修改dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + public int updateSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 删除dtu设备备注 + * + * @param id dtu设备备注主键 + * @return 结果 + */ + public int deleteSysDtuRemarkBakById(String id); + + /** + * 批量删除dtu设备备注 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSysDtuRemarkBakByIds(String[] ids); +} diff --git a/agri-system/src/main/java/com/agri/system/service/ISysAgriLimitBakService.java b/agri-system/src/main/java/com/agri/system/service/ISysAgriLimitBakService.java new file mode 100644 index 0000000..9dd6a92 --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/ISysAgriLimitBakService.java @@ -0,0 +1,65 @@ +package com.agri.system.service; + +import java.util.List; +import com.baomidou.mybatisplus.extension.service.IService; +import com.agri.system.domain.SysAgriLimitBak; + +/** + * 大棚功能执行时间限位Service接口 + * + * @author lld + * @date 2026-03-17 + */ +public interface ISysAgriLimitBakService extends IService { + /** + * 查询大棚功能执行时间限位 + * + * @param id 大棚功能执行时间限位主键 + * @return 大棚功能执行时间限位 + */ + public SysAgriLimitBak selectSysAgriLimitBakById(String id); + + /** + * 查询大棚功能执行时间限位列表 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 大棚功能执行时间限位集合 + */ + public List selectSysAgriLimitBakList(SysAgriLimitBak sysAgriLimitBak); + + /** + * 新增大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + public int insertSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak); + + /** + * 修改大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + public int updateSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak); + + /** + * 批量删除大棚功能执行时间限位 + * + * @param ids 需要删除的大棚功能执行时间限位主键集合 + * @return 结果 + */ + public int deleteSysAgriLimitBakByIds(String[] ids); + + /** + * 删除大棚功能执行时间限位信息 + * + * @param id 大棚功能执行时间限位主键 + * @return 结果 + */ + public int deleteSysAgriLimitBakById(String id); + + SysAgriLimitBak getAgriLimitByImei(String imei); + + boolean saveAgriLimit(SysAgriLimitBak sysAgriLimitBak); +} diff --git a/agri-system/src/main/java/com/agri/system/service/ISysDtuRemarkBakService.java b/agri-system/src/main/java/com/agri/system/service/ISysDtuRemarkBakService.java new file mode 100644 index 0000000..0f7eb8f --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/ISysDtuRemarkBakService.java @@ -0,0 +1,70 @@ +package com.agri.system.service; + +import java.util.List; + +import com.agri.common.core.domain.AjaxResult; +import com.baomidou.mybatisplus.extension.service.IService; +import com.agri.system.domain.SysDtuRemarkBak; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * dtu设备备注Service接口 + * + * @author lld + * @date 2026-03-17 + */ +public interface ISysDtuRemarkBakService extends IService { + /** + * 查询dtu设备备注 + * + * @param id dtu设备备注主键 + * @return dtu设备备注 + */ + public SysDtuRemarkBak selectSysDtuRemarkBakById(String id); + + /** + * 查询dtu设备备注列表 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return dtu设备备注集合 + */ + public List selectSysDtuRemarkBakList(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 新增dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + public int insertSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 修改dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + public int updateSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak); + + /** + * 批量删除dtu设备备注 + * + * @param ids 需要删除的dtu设备备注主键集合 + * @return 结果 + */ + public int deleteSysDtuRemarkBakByIds(String[] ids); + + /** + * 删除dtu设备备注信息 + * + * @param id dtu设备备注主键 + * @return 结果 + */ + public int deleteSysDtuRemarkBakById(String id); + + + SysDtuRemarkBak getDtuRemarkByImei(String imei); + + + boolean saveAgriRemark(SysDtuRemarkBak sysDtuRemarkBak); +} diff --git a/agri-system/src/main/java/com/agri/system/service/impl/SysAgriInfoServiceImpl.java b/agri-system/src/main/java/com/agri/system/service/impl/SysAgriInfoServiceImpl.java index 74a9114..09111a3 100644 --- a/agri-system/src/main/java/com/agri/system/service/impl/SysAgriInfoServiceImpl.java +++ b/agri-system/src/main/java/com/agri/system/service/impl/SysAgriInfoServiceImpl.java @@ -191,6 +191,17 @@ public class SysAgriInfoServiceImpl extends ServiceImpl前移 + + // 新增逻辑 如果没有绑定卷被卷膜数量,报错 + Integer blindNum = agriInfo.getBlindNum(); + Integer filmNum = agriInfo.getFilmNum(); + Integer quiltNum = agriInfo.getQuiltNum(); + if (blindNum==null || filmNum == null || quiltNum == null) { + resultMap.put("code", AgriEnum.WARN.getCode()); + resultMap.put("msg","当前大棚尚未完成配置,请联系管理员配置后重新尝试!"); + return resultMap; + } + // 7. 大棚已存在:处理绑定逻辑 List userAgriList = userAgriService.lambdaQuery() .eq(SysUserAgri::getAgriId, sysAgriInfo.getImei()) diff --git a/agri-system/src/main/java/com/agri/system/service/impl/SysAgriLimitBakServiceImpl.java b/agri-system/src/main/java/com/agri/system/service/impl/SysAgriLimitBakServiceImpl.java new file mode 100644 index 0000000..a21577f --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/impl/SysAgriLimitBakServiceImpl.java @@ -0,0 +1,142 @@ +package com.agri.system.service.impl; + +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import cn.hutool.core.lang.hash.Hash; +import com.agri.common.utils.DateUtils; +import com.agri.system.domain.SysAgriLimitBak; +import com.agri.system.domain.SysDtuRemarkBak; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import com.agri.system.mapper.SysAgriLimitBakMapper; +import com.agri.system.domain.SysAgriLimitBak; +import com.agri.system.service.ISysAgriLimitBakService; + +/** + * 大棚功能执行时间限位Service业务层处理 + * + * @author lld + * @date 2026-03-17 + */ +@Service +public class SysAgriLimitBakServiceImpl extends ServiceImpl implements ISysAgriLimitBakService +{ + + /** + * 查询大棚功能执行时间限位 + * + * @param id 大棚功能执行时间限位主键 + * @return 大棚功能执行时间限位 + */ + @Override + public SysAgriLimitBak selectSysAgriLimitBakById(String id) + { + return baseMapper.selectSysAgriLimitBakById(id); + } + + /** + * 查询大棚功能执行时间限位列表 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 大棚功能执行时间限位 + */ + @Override + public List selectSysAgriLimitBakList(SysAgriLimitBak sysAgriLimitBak) + { + return baseMapper.selectSysAgriLimitBakList(sysAgriLimitBak); + } + + /** + * 新增大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + @Override + public int insertSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak) + { + sysAgriLimitBak.setCreateTime(DateUtils.getNowDate()); + return baseMapper.insertSysAgriLimitBak(sysAgriLimitBak); + } + + /** + * 修改大棚功能执行时间限位 + * + * @param sysAgriLimitBak 大棚功能执行时间限位 + * @return 结果 + */ + @Override + public int updateSysAgriLimitBak(SysAgriLimitBak sysAgriLimitBak) + { + sysAgriLimitBak.setUpdateTime(DateUtils.getNowDate()); + return baseMapper.updateSysAgriLimitBak(sysAgriLimitBak); + } + + /** + * 批量删除大棚功能执行时间限位 + * + * @param ids 需要删除的大棚功能执行时间限位主键 + * @return 结果 + */ + @Override + public int deleteSysAgriLimitBakByIds(String[] ids) + { + return baseMapper.deleteSysAgriLimitBakByIds(ids); + } + + /** + * 删除大棚功能执行时间限位信息 + * + * @param id 大棚功能执行时间限位主键 + * @return 结果 + */ + @Override + public int deleteSysAgriLimitBakById(String id) + { + return baseMapper.deleteSysAgriLimitBakById(id); + } + + + + @Override + public SysAgriLimitBak getAgriLimitByImei(String imei) { + + SysAgriLimitBak agriLimit = new SysAgriLimitBak(); + if (StringUtils.isEmpty(imei)) return agriLimit; + List limitList = super.lambdaQuery() + .select( + SysAgriLimitBak::getImei, + SysAgriLimitBak::getRoller, + SysAgriLimitBak::getFuncLimit + ) + .eq(SysAgriLimitBak::getImei, imei) + .list(); + if (CollectionUtils.isEmpty(limitList)) return agriLimit; + SysAgriLimitBak agriLimitBak = limitList.get(0); + agriLimit.setImei(agriLimitBak.getImei()); + agriLimit.setAgriId(agriLimitBak.getAgriId()); + agriLimit.setAgriName(agriLimitBak.getAgriName()); + HashMap map = new HashMap<>(); + for (SysAgriLimitBak dtuRemark : limitList) { + map.put(dtuRemark.getRoller(), dtuRemark.getFuncLimit()); + } + agriLimit.setLimitMaps(map); + return agriLimit; + } + + @Override + public boolean saveAgriLimit(SysAgriLimitBak sysAgriLimitBak) { + + Map map = new HashMap<>(); + map.put("imei", sysAgriLimitBak.getImei()); + map.put("roller",sysAgriLimitBak.getRoller()); + boolean remove = super.removeByMap(map); + return super.save(sysAgriLimitBak); + } +} diff --git a/agri-system/src/main/java/com/agri/system/service/impl/SysDtuRemarkBakServiceImpl.java b/agri-system/src/main/java/com/agri/system/service/impl/SysDtuRemarkBakServiceImpl.java new file mode 100644 index 0000000..1b299fa --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/impl/SysDtuRemarkBakServiceImpl.java @@ -0,0 +1,138 @@ +package com.agri.system.service.impl; + +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.agri.common.core.domain.AjaxResult; +import com.agri.common.utils.DateUtils; +import com.agri.system.domain.SysAgriLimitBak; +import com.agri.system.domain.SysDtuRemark; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import com.agri.system.mapper.SysDtuRemarkBakMapper; +import com.agri.system.domain.SysDtuRemarkBak; +import com.agri.system.service.ISysDtuRemarkBakService; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * dtu设备备注Service业务层处理 + * + * @author lld + * @date 2026-03-17 + */ +@Service +public class SysDtuRemarkBakServiceImpl extends ServiceImpl implements ISysDtuRemarkBakService +{ + + /** + * 查询dtu设备备注 + * + * @param id dtu设备备注主键 + * @return dtu设备备注 + */ + @Override + public SysDtuRemarkBak selectSysDtuRemarkBakById(String id) + { + return baseMapper.selectSysDtuRemarkBakById(id); + } + + /** + * 查询dtu设备备注列表 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return dtu设备备注 + */ + @Override + public List selectSysDtuRemarkBakList(SysDtuRemarkBak sysDtuRemarkBak) + { + return baseMapper.selectSysDtuRemarkBakList(sysDtuRemarkBak); + } + + /** + * 新增dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + @Override + public int insertSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak) + { + sysDtuRemarkBak.setCreateTime(DateUtils.getNowDate()); + return baseMapper.insertSysDtuRemarkBak(sysDtuRemarkBak); + } + + /** + * 修改dtu设备备注 + * + * @param sysDtuRemarkBak dtu设备备注 + * @return 结果 + */ + @Override + public int updateSysDtuRemarkBak(SysDtuRemarkBak sysDtuRemarkBak) + { + sysDtuRemarkBak.setUpdateTime(DateUtils.getNowDate()); + return baseMapper.updateSysDtuRemarkBak(sysDtuRemarkBak); + } + + /** + * 批量删除dtu设备备注 + * + * @param ids 需要删除的dtu设备备注主键 + * @return 结果 + */ + @Override + public int deleteSysDtuRemarkBakByIds(String[] ids) + { + return baseMapper.deleteSysDtuRemarkBakByIds(ids); + } + + /** + * 删除dtu设备备注信息 + * + * @param id dtu设备备注主键 + * @return 结果 + */ + @Override + public int deleteSysDtuRemarkBakById(String id) + { + return baseMapper.deleteSysDtuRemarkBakById(id); + } + + @Override + public SysDtuRemarkBak getDtuRemarkByImei(String imei) { + + SysDtuRemarkBak dtuRemarkBak = new SysDtuRemarkBak(); + if (StringUtils.isEmpty(imei)) return dtuRemarkBak; + List remarkList = super.lambdaQuery() + .select( + SysDtuRemarkBak::getImei, + SysDtuRemarkBak::getRoller, + SysDtuRemarkBak::getRemarkShort + ) + .eq(SysDtuRemarkBak::getImei, imei) + .list(); + if (CollectionUtils.isEmpty(remarkList)) return dtuRemarkBak; + SysDtuRemarkBak sysDtuRemarkBak = remarkList.get(0); + dtuRemarkBak.setImei(sysDtuRemarkBak.getImei()); + HashMap map = new HashMap<>(); + for (SysDtuRemarkBak dtuRemark : remarkList) { + map.put(dtuRemark.getRoller(), dtuRemark.getRemarkShort()); + } + dtuRemarkBak.setRemarkMaps(map); + return dtuRemarkBak; + } + + @Override + public boolean saveAgriRemark(SysDtuRemarkBak sysDtuRemarkBak) { + + Map map = new HashMap<>(); + map.put("imei", sysDtuRemarkBak.getImei()); + map.put("roller",sysDtuRemarkBak.getRoller()); + boolean remove = super.removeByMap(map); + return super.save(sysDtuRemarkBak); + } +} diff --git a/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml b/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml index f747c08..5a1fe59 100644 --- a/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml +++ b/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml @@ -22,7 +22,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select id, imei, agri_name, user_id, alarm_status, install_time, location, remark, create_time, create_by, update_time, update_by, is_deleted from sys_agri_info + select id, imei, agri_name, user_id, alarm_status, install_time, quilt_num, film_num, blind_num, location, remark, create_time, create_by, update_time, update_by, is_deleted from sys_agri_info @@ -39,6 +39,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" agri.update_time, agri.update_by, agri.is_deleted, + agri.quilt_num, + agri.film_num, + agri.blind_num, user_agri.user_id FROM sys_agri_info agri @@ -51,6 +54,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" agri.imei, agri.agri_name, agri.work_mode, + agri.quilt_num, + agri.film_num, + agri.blind_num, user_agri.user_id, dtu_last.time, dtu_last.ts, @@ -200,6 +206,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" agri.`agri_name`, agri.`work_mode`, agri.`is_deleted`, + agri.quilt_num, + agri.film_num, + agri.blind_num, roller_param.`roller`, roller_param.`ref_temp_code`, roller_param.`reserved_len`, diff --git a/agri-system/src/main/resources/mapper/system/SysAgriLimitBakMapper.xml b/agri-system/src/main/resources/mapper/system/SysAgriLimitBakMapper.xml new file mode 100644 index 0000000..62c77a7 --- /dev/null +++ b/agri-system/src/main/resources/mapper/system/SysAgriLimitBakMapper.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + select id, agri_id, agri_name, imei, roller, func_limit, remark, version, create_by, create_time, update_by, update_time from sys_agri_limit_bak + + + + + + + + insert into sys_agri_limit_bak + + agri_id, + agri_name, + imei, + roller, + func_limit, + remark, + version, + create_by, + create_time, + update_by, + update_time + + + #{agriId}, + #{agriName}, + #{imei}, + #{roller}, + #{funcLimit}, + #{remark}, + #{version}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime} + + + + + update sys_agri_limit_bak + + agri_id = #{agriId}, + agri_name = #{agriName}, + imei = #{imei}, + roller = #{roller}, + func_limit = #{funcLimit}, + remark = #{remark}, + version = #{version}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from sys_agri_limit_bak where id = #{id} + + + + delete from sys_agri_limit_bak where id in + + #{id} + + + \ No newline at end of file diff --git a/agri-system/src/main/resources/mapper/system/SysDtuRemarkBakMapper.xml b/agri-system/src/main/resources/mapper/system/SysDtuRemarkBakMapper.xml new file mode 100644 index 0000000..195a230 --- /dev/null +++ b/agri-system/src/main/resources/mapper/system/SysDtuRemarkBakMapper.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + select id, imei, roller, remark_short, version, create_by, create_time, update_by, update_time, ext_json, remark from sys_dtu_remark_bak + + + + + + + + insert into sys_dtu_remark_bak + + imei, + roller, + remark_short, + version, + create_by, + create_time, + update_by, + update_time, + ext_json, + remark, + + + #{imei}, + #{roller}, + #{remarkShort}, + #{version}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{extJson}, + #{remark}, + + + + + update sys_dtu_remark_bak + + imei = #{imei}, + roller = #{roller}, + remark_short = #{remarkShort}, + version = #{version}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + ext_json = #{extJson}, + remark = #{remark}, + + where id = #{id} + + + + delete from sys_dtu_remark_bak where id = #{id} + + + + delete from sys_dtu_remark_bak where id in + + #{id} + + + \ No newline at end of file