From 61a0ede957660d9880c774b0890171b86ef78dfd Mon Sep 17 00:00:00 2001 From: xce Date: Mon, 26 Jan 2026 16:43:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E6=A3=9A=E7=94=A8=E6=88=B7=E5=85=B3?= =?UTF-8?q?=E8=81=94=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/agri/common/utils/SecurityUtils.java | 24 +- .../controller/SysAgriInfoController.java | 8 +- .../controller/SysUserAgriController.java | 105 +++++++++ .../com/agri/system/domain/SysUserAgri.java | 215 ++++++++++++++++++ .../agri/system/mapper/SysAgriInfoMapper.java | 11 +- .../agri/system/mapper/SysUserAgriMapper.java | 70 ++++++ .../system/service/ISysAgriInfoService.java | 4 + .../system/service/ISysUserAgriService.java | 68 ++++++ .../service/impl/SysAgriInfoServiceImpl.java | 10 + .../service/impl/SysUserAgriServiceImpl.java | 101 ++++++++ .../mapper/system/SysAgriInfoMapper.xml | 44 ++++ .../mapper/system/SysUserAgriMapper.xml | 205 +++++++++++++++++ 12 files changed, 855 insertions(+), 10 deletions(-) create mode 100644 agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java create mode 100644 agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java create mode 100644 agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java create mode 100644 agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java create mode 100644 agri-system/src/main/java/com/agri/system/service/impl/SysUserAgriServiceImpl.java create mode 100644 agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml diff --git a/agri-common/src/main/java/com/agri/common/utils/SecurityUtils.java b/agri-common/src/main/java/com/agri/common/utils/SecurityUtils.java index 49b6a6d..ab8a17f 100644 --- a/agri-common/src/main/java/com/agri/common/utils/SecurityUtils.java +++ b/agri-common/src/main/java/com/agri/common/utils/SecurityUtils.java @@ -1,17 +1,18 @@ package com.agri.common.utils; -import java.util.Collection; -import java.util.List; -import java.util.stream.Collectors; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; -import org.springframework.util.PatternMatchUtils; import com.agri.common.constant.Constants; import com.agri.common.constant.HttpStatus; import com.agri.common.core.domain.entity.SysRole; import com.agri.common.core.domain.model.LoginUser; import com.agri.common.exception.ServiceException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.util.PatternMatchUtils; + +import java.util.Collection; +import java.util.List; +import java.util.stream.Collectors; /** * 安全服务工具类 @@ -114,6 +115,15 @@ public class SecurityUtils return passwordEncoder.matches(rawPassword, encodedPassword); } + /** + * 判断当前用户是否是管理员 + * + * @return 结果 + */ + public static boolean isAdmin() + { + return isAdmin(getUserId()); + } /** * 是否为管理员 * diff --git a/agri-system/src/main/java/com/agri/system/controller/SysAgriInfoController.java b/agri-system/src/main/java/com/agri/system/controller/SysAgriInfoController.java index ef8d699..9c5967e 100644 --- a/agri-system/src/main/java/com/agri/system/controller/SysAgriInfoController.java +++ b/agri-system/src/main/java/com/agri/system/controller/SysAgriInfoController.java @@ -43,10 +43,16 @@ public class SysAgriInfoController extends BaseController public TableDataInfo list(SysAgriInfo sysAgriInfo) { startPage(); - List list = sysAgriInfoService.selectSysAgriInfoList(sysAgriInfo); + List list = sysAgriInfoService.findAgriByUser(sysAgriInfo); return getDataTable(list); } + @PreAuthorize("@ss.hasPermi('assets:agri:list')") + @GetMapping("/findAgriByUser") + public AjaxResult findAgriByUser(SysAgriInfo sysAgriInfo) { + List list = sysAgriInfoService.findAgriByUser(sysAgriInfo); + return success(list); + } /** * 导出大棚管理列表 */ diff --git a/agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java b/agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java new file mode 100644 index 0000000..de90ccc --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java @@ -0,0 +1,105 @@ +package com.agri.system.controller; + +import com.agri.common.annotation.Log; +import com.agri.common.core.controller.BaseController; +import com.agri.common.core.domain.AjaxResult; +import com.agri.common.core.page.TableDataInfo; +import com.agri.common.enums.BusinessType; +import com.agri.common.utils.poi.ExcelUtil; +import com.agri.system.domain.SysUserAgri; +import com.agri.system.service.ISysUserAgriService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 大棚信息(用户-设备关联)Controller + * + * @author lld + * @date 2026-01-25 + */ +@RestController +@RequestMapping("/assets/userAgri") +public class SysUserAgriController extends BaseController +{ + @Autowired + private ISysUserAgriService sysUserAgriService; + + /** + * 查询大棚信息(用户-设备关联)列表 + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:list')") + @GetMapping("/list") + public TableDataInfo list(SysUserAgri sysUserAgri) + { + startPage(); + List list = sysUserAgriService.selectSysUserAgriList(sysUserAgri); + return getDataTable(list); + } + + /** + * 导出大棚信息(用户-设备关联)列表 + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:export')") + @Log(title = "大棚信息(用户-设备关联)", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysUserAgri sysUserAgri) + { + List list = sysUserAgriService.selectSysUserAgriList(sysUserAgri); + ExcelUtil util = new ExcelUtil(SysUserAgri.class); + util.exportExcel(response, list, "大棚信息(用户-设备关联)数据"); + } + + /** + * 获取大棚信息(用户-设备关联)详细信息 + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(sysUserAgriService.selectSysUserAgriById(id)); + } + + /** + * 新增大棚信息(用户-设备关联) + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:add')") + @Log(title = "大棚信息(用户-设备关联)", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SysUserAgri sysUserAgri) + { + return toAjax(sysUserAgriService.save(sysUserAgri)); + } + + /** + * 修改大棚信息(用户-设备关联) + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:edit')") + @Log(title = "大棚信息(用户-设备关联)", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysUserAgri sysUserAgri) + { + return toAjax(sysUserAgriService.updateSysUserAgri(sysUserAgri)); + } + + /** + * 删除大棚信息(用户-设备关联) + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:remove')") + @Log(title = "大棚信息(用户-设备关联)", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(sysUserAgriService.deleteSysUserAgriByIds(ids)); + } +} diff --git a/agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java b/agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java new file mode 100644 index 0000000..bcb0bee --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java @@ -0,0 +1,215 @@ +package com.agri.system.domain; + +import com.agri.common.annotation.Excel; +import com.agri.common.core.domain.BaseEntity; +import com.agri.common.core.domain.entity.SysUser; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.Version; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 大棚信息(用户-设备关联)对象 sys_user_agri + * + * @author lld + * @date 2026-01-25 + */ +@TableName("sys_user_agri") +public class SysUserAgri extends BaseEntity +{ + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + /** 主键ID(雪花) */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 大棚ID */ + @Excel(name = "大棚ID") + private Long agriId; + + /** 协同用户ID */ + @Excel(name = "协同用户ID") + private Long userId; + + /** 角色:3-OWNER/2-ADMIN/1-OPERATOR/0-VIEWER */ + @Excel(name = "角色:3-OWNER/2-ADMIN/1-OPERATOR/0-VIEWER") + private Long role; + + /** 权限位(位运算):1=查看 2=控制 4=配置 8=分享/成员管理 16=导出等 */ + @Excel(name = "权限位", readConverterExp = "位=运算") + private Long permMask; + + /** 状态:0=禁用 1=启用 2=待接受邀请 */ + @Excel(name = "状态:0=禁用 1=启用 2=待接受邀请") + private Long status; + + /** 邀请人用户ID */ + @Excel(name = "邀请人用户ID") + private Long inviteBy; + + /** 邀请时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @Excel(name = "邀请时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date inviteTime; + + /** 接受时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @Excel(name = "接受时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date acceptTime; + + /** 版本号(乐观锁) */ + @Excel(name = "版本号", readConverterExp = "乐=观锁") + @Version + private Long version; + + @TableField(exist = false) + private SysUser sysUser; + + @TableField(exist = false) + private String imei; + + + public String getImei() { + return imei; + } + + public void setImei(String imei) { + this.imei = imei; + } + + public SysUser getSysUser() { + return sysUser; + } + + public void setSysUser(SysUser sysUser) { + this.sysUser = sysUser; + } + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setAgriId(Long agriId) + { + this.agriId = agriId; + } + + public Long getAgriId() + { + return agriId; + } + + public void setUserId(Long userId) + { + this.userId = userId; + } + + public Long getUserId() + { + return userId; + } + + public void setRole(Long role) + { + this.role = role; + } + + public Long getRole() + { + return role; + } + + public void setPermMask(Long permMask) + { + this.permMask = permMask; + } + + public Long getPermMask() + { + return permMask; + } + + public void setStatus(Long status) + { + this.status = status; + } + + public Long getStatus() + { + return status; + } + + public void setInviteBy(Long inviteBy) + { + this.inviteBy = inviteBy; + } + + public Long getInviteBy() + { + return inviteBy; + } + + public void setInviteTime(Date inviteTime) + { + this.inviteTime = inviteTime; + } + + public Date getInviteTime() + { + return inviteTime; + } + + public void setAcceptTime(Date acceptTime) + { + this.acceptTime = acceptTime; + } + + public Date getAcceptTime() + { + return acceptTime; + } + + public void setVersion(Long version) + { + this.version = version; + } + + public Long getVersion() + { + return version; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("agriId", getAgriId()) + .append("userId", getUserId()) + .append("role", getRole()) + .append("permMask", getPermMask()) + .append("status", getStatus()) + .append("inviteBy", getInviteBy()) + .append("inviteTime", getInviteTime()) + .append("acceptTime", getAcceptTime()) + .append("remark", getRemark()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .append("version", getVersion()) + .toString(); + } +} diff --git a/agri-system/src/main/java/com/agri/system/mapper/SysAgriInfoMapper.java b/agri-system/src/main/java/com/agri/system/mapper/SysAgriInfoMapper.java index ccb8c10..416cc19 100644 --- a/agri-system/src/main/java/com/agri/system/mapper/SysAgriInfoMapper.java +++ b/agri-system/src/main/java/com/agri/system/mapper/SysAgriInfoMapper.java @@ -11,8 +11,7 @@ import java.util.List; * @author agri * @date 2026-01-08 */ -public interface SysAgriInfoMapper extends BaseMapper -{ +public interface SysAgriInfoMapper extends BaseMapper { /** * 查询大棚管理 * @@ -60,4 +59,12 @@ public interface SysAgriInfoMapper extends BaseMapper * @return 结果 */ public int deleteSysAgriInfoByIds(Long[] ids); + + /** + * 查当前用户下的大棚 + * @param sysAgriInfo + * @return + */ + public List findAgriByUser(SysAgriInfo sysAgriInfo); + } diff --git a/agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java b/agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java new file mode 100644 index 0000000..1d31fbe --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java @@ -0,0 +1,70 @@ +package com.agri.system.mapper; + +import com.agri.system.domain.SysUserAgri; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import java.util.List; + +/** + * 大棚信息(用户-设备关联)Mapper接口 + * + * @author lld + * @date 2026-01-25 + */ +public interface SysUserAgriMapper extends BaseMapper +{ + /** + * 查询大棚信息(用户-设备关联) + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 大棚信息(用户-设备关联) + */ + public SysUserAgri selectSysUserAgriById(Long id); + + /** + * 查询大棚信息(用户-设备关联)列表 + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 大棚信息(用户-设备关联)集合 + */ + public List selectSysUserAgriList(SysUserAgri sysUserAgri); + + /** + * 新增大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + public int insertSysUserAgri(SysUserAgri sysUserAgri); + + /** + * 修改大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + public int updateSysUserAgri(SysUserAgri sysUserAgri); + + /** + * 删除大棚信息(用户-设备关联) + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 结果 + */ + public int deleteSysUserAgriById(Long id); + + /** + * 批量删除大棚信息(用户-设备关联) + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSysUserAgriByIds(Long[] ids); + + /** + * 查看大棚下用户 + * @param sysUserAgri + * @return + */ + List findAgriUser(SysUserAgri sysUserAgri); +} diff --git a/agri-system/src/main/java/com/agri/system/service/ISysAgriInfoService.java b/agri-system/src/main/java/com/agri/system/service/ISysAgriInfoService.java index 8883f04..be989c1 100644 --- a/agri-system/src/main/java/com/agri/system/service/ISysAgriInfoService.java +++ b/agri-system/src/main/java/com/agri/system/service/ISysAgriInfoService.java @@ -59,4 +59,8 @@ public interface ISysAgriInfoService extends IService { * @return 结果 */ public int deleteSysAgriInfoById(Long id); + + + public List findAgriByUser(SysAgriInfo sysAgriInfo); + } diff --git a/agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java b/agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java new file mode 100644 index 0000000..376c3c7 --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java @@ -0,0 +1,68 @@ +package com.agri.system.service; + +import com.agri.system.domain.SysUserAgri; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * 大棚信息(用户-设备关联)Service接口 + * + * @author lld + * @date 2026-01-25 + */ +public interface ISysUserAgriService extends IService { + /** + * 查询大棚信息(用户-设备关联) + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 大棚信息(用户-设备关联) + */ + public SysUserAgri selectSysUserAgriById(Long id); + + /** + * 查询大棚信息(用户-设备关联)列表 + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 大棚信息(用户-设备关联)集合 + */ + public List selectSysUserAgriList(SysUserAgri sysUserAgri); + + public List findAgriUser(SysUserAgri sysUserAgri); + + /** + * 新增大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + public int insertSysUserAgri(SysUserAgri sysUserAgri); + + /** + * 修改大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + public int updateSysUserAgri(SysUserAgri sysUserAgri); + + /** + * 批量删除大棚信息(用户-设备关联) + * + * @param ids 需要删除的大棚信息(用户-设备关联)主键集合 + * @return 结果 + */ + public int deleteSysUserAgriByIds(Long[] ids); + + /** + * 删除大棚信息(用户-设备关联)信息 + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 结果 + */ + public int deleteSysUserAgriById(Long id); + +} + + + 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 4b74624..233b71a 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 @@ -1,6 +1,7 @@ package com.agri.system.service.impl; import com.agri.common.utils.DateUtils; +import com.agri.common.utils.SecurityUtils; import com.agri.system.domain.SysAgriInfo; import com.agri.system.mapper.SysAgriInfoMapper; import com.agri.system.service.ISysAgriInfoService; @@ -91,4 +92,13 @@ public class SysAgriInfoServiceImpl extends ServiceImpl findAgriByUser(SysAgriInfo sysAgriInfo) { + if (!SecurityUtils.isAdmin()) { + sysAgriInfo.setUserId(SecurityUtils.getUserId()); + } + return baseMapper.findAgriByUser(sysAgriInfo); + } } diff --git a/agri-system/src/main/java/com/agri/system/service/impl/SysUserAgriServiceImpl.java b/agri-system/src/main/java/com/agri/system/service/impl/SysUserAgriServiceImpl.java new file mode 100644 index 0000000..468147e --- /dev/null +++ b/agri-system/src/main/java/com/agri/system/service/impl/SysUserAgriServiceImpl.java @@ -0,0 +1,101 @@ +package com.agri.system.service.impl; + +import com.agri.common.utils.DateUtils; +import com.agri.system.domain.SysUserAgri; +import com.agri.system.mapper.SysUserAgriMapper; +import com.agri.system.service.ISysUserAgriService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 大棚信息(用户-设备关联)Service业务层处理 + * + * @author lld + * @date 2026-01-25 + */ +@Service +public class SysUserAgriServiceImpl extends ServiceImpl implements ISysUserAgriService +{ + + /** + * 查询大棚信息(用户-设备关联) + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 大棚信息(用户-设备关联) + */ + @Override + public SysUserAgri selectSysUserAgriById(Long id) + { + return baseMapper.selectSysUserAgriById(id); + } + + /** + * 查询大棚信息(用户-设备关联)列表 + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 大棚信息(用户-设备关联) + */ + @Override + public List selectSysUserAgriList(SysUserAgri sysUserAgri) + { + return baseMapper.selectSysUserAgriList(sysUserAgri); + } + + /** + * 新增大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + @Override + public int insertSysUserAgri(SysUserAgri sysUserAgri) + { + sysUserAgri.setCreateTime(DateUtils.getNowDate()); + return baseMapper.insertSysUserAgri(sysUserAgri); + } + + /** + * 修改大棚信息(用户-设备关联) + * + * @param sysUserAgri 大棚信息(用户-设备关联) + * @return 结果 + */ + @Override + public int updateSysUserAgri(SysUserAgri sysUserAgri) + { + sysUserAgri.setUpdateTime(DateUtils.getNowDate()); + return baseMapper.updateSysUserAgri(sysUserAgri); + } + + /** + * 批量删除大棚信息(用户-设备关联) + * + * @param ids 需要删除的大棚信息(用户-设备关联)主键 + * @return 结果 + */ + @Override + public int deleteSysUserAgriByIds(Long[] ids) + { + return baseMapper.deleteSysUserAgriByIds(ids); + } + + /** + * 删除大棚信息(用户-设备关联)信息 + * + * @param id 大棚信息(用户-设备关联)主键 + * @return 结果 + */ + @Override + public int deleteSysUserAgriById(Long id) + { + return baseMapper.deleteSysUserAgriById(id); + } + + @Override + public List findAgriUser(SysUserAgri sysUserAgri) { + + return baseMapper.findAgriUser(sysUserAgri); + } +} diff --git a/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml b/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml index dfd77b1..3f00d20 100644 --- a/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml +++ b/agri-system/src/main/resources/mapper/system/SysAgriInfoMapper.xml @@ -29,6 +29,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, imei, agri_name, user_id, temp_upper, temp_lower, humi_upper, humi_lower, alarm_status, device_status, install_time, location, remark, create_time, create_by, update_time, update_by, is_deleted from sys_agri_info + + SELECT + agri.id, + agri.imei, + agri.agri_name, + agri.temp_upper, + agri.temp_lower, + agri.humi_upper, + agri.humi_lower, + agri.alarm_status, + agri.device_status, + agri.install_time, + agri.location, + agri.remark, + agri.create_time, + agri.create_by, + agri.update_time, + agri.update_by, + agri.is_deleted, + user_agri.user_id + FROM + sys_agri_info agri + LEFT JOIN sys_user_agri user_agri ON user_agri.agri_id = agri.id + and user_agri.user_id = #{userId} + + + + + and agri.imei = #{imei} + and agri.agri_name like concat('%', #{agriName}, '%') + and agri.temp_upper = #{tempUpper} + and agri.temp_lower = #{tempLower} + and agri.humi_upper = #{humiUpper} + and agri.humi_lower = #{humiLower} + and agri.alarm_status = #{alarmStatus} + and agri.device_status = #{deviceStatus} + and agri.install_time = #{installTime} + and agri.location = #{location} + and agri.is_deleted = #{isDeleted} + + \ No newline at end of file diff --git a/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml b/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml new file mode 100644 index 0000000..bf07f13 --- /dev/null +++ b/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml @@ -0,0 +1,205 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SELECT + id, + agri_id, + user_id, + role, + perm_mask, + STATUS, + invite_by, + invite_time, + accept_time, + remark, + create_time, + create_by, + update_time, + update_by, + version + FROM + sys_user_agri + + + + + + + + + + insert into sys_user_agri + + id, + agri_id, + user_id, + role, + perm_mask, + status, + invite_by, + invite_time, + accept_time, + remark, + create_time, + create_by, + update_time, + update_by, + version, + + + #{id}, + #{agriId}, + #{userId}, + #{role}, + #{permMask}, + #{status}, + #{inviteBy}, + #{inviteTime}, + #{acceptTime}, + #{remark}, + #{createTime}, + #{createBy}, + #{updateTime}, + #{updateBy}, + #{version}, + + + + + update sys_user_agri + + agri_id = #{agriId}, + user_id = #{userId}, + role = #{role}, + perm_mask = #{permMask}, + status = #{status}, + invite_by = #{inviteBy}, + invite_time = #{inviteTime}, + accept_time = #{acceptTime}, + remark = #{remark}, + create_time = #{createTime}, + create_by = #{createBy}, + update_time = #{updateTime}, + update_by = #{updateBy}, + version = #{version}, + + where id = #{id} + + + + delete from sys_user_agri where id = #{id} + + + + delete from sys_user_agri where id in + + #{id} + + + + + SELECT + user_agri.id, + user_agri.agri_id, + user_agri.user_id, + user_agri.role, + user_agri.perm_mask, + user_agri.STATUS, + user_agri.invite_by, + user_agri.invite_time, + user_agri.accept_time, + user_agri.remark, + user_agri.create_time, + user_agri.create_by, + user_agri.update_time, + user_agri.update_by, + user_agri.version + `user`.user_id, + `user`.user_name, + `user`.nick_name, + `user`.email, + `user`.phonenumber, + `user`.sex, + `user`.status, + `user`.del_flag + FROM + sys_user_agri user_agri + LEFT JOIN sys_user `user` ON user_agri.user_id = `user`.user_id and `user`.del_flag=0 + and user_agri.agri_id = #{agriId} + + + \ No newline at end of file