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 index a8d5a76..ec0094b 100644 --- a/agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java +++ b/agri-system/src/main/java/com/agri/system/controller/SysUserAgriController.java @@ -1,5 +1,7 @@ package com.agri.system.controller; +import cn.hutool.core.map.MapBuilder; +import cn.hutool.core.map.MapUtil; import com.agri.common.annotation.Log; import com.agri.common.core.controller.BaseController; import com.agri.common.core.domain.AjaxResult; @@ -8,6 +10,10 @@ 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 com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.collections4.MapUtils; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.DeleteMapping; @@ -20,7 +26,9 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletResponse; +import java.sql.Wrapper; import java.util.List; +import java.util.Map; /** * 大棚信息(用户-设备关联)Controller @@ -104,4 +112,34 @@ public class SysUserAgriController extends BaseController { List list = sysUserAgriService.findAgriUser(sysUserAgri); return getDataTable(list); } + @PreAuthorize("@ss.hasPermi('assets:userAgri:list')") + @GetMapping("/findAllUser") + public TableDataInfo findAllUser(SysUserAgri sysUserAgri) { + List list = sysUserAgriService.findAllUser(sysUserAgri); + return getDataTable(list); + } + + + /** + * 新增大棚信息(用户-设备关联) + */ + @PreAuthorize("@ss.hasPermi('assets:userAgri:add')") + @Log(title = "大棚信息(用户-设备批量关联)", businessType = BusinessType.INSERT) + @PostMapping("/batchAssociaUser") + public AjaxResult batchAssociaUser(@RequestBody List userList) { + if (CollectionUtils.isNotEmpty(userList) && !userList.isEmpty()) { + Long agriId = userList.get(0).getAgriId(); + if (ObjectUtils.isNotEmpty(agriId)) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("agri_id",agriId); + sysUserAgriService.remove(wrapper); + + boolean saveBatch = sysUserAgriService.saveBatch(userList); + if (!saveBatch) { + return error("更新用户失败"); + } + } + } + return success(); + } } 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 index bcb0bee..2dfcf14 100644 --- a/agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java +++ b/agri-system/src/main/java/com/agri/system/domain/SysUserAgri.java @@ -9,6 +9,8 @@ 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 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; @@ -28,10 +30,12 @@ public class SysUserAgri extends BaseEntity /** 主键ID(雪花) */ @TableId(type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) private Long id; /** 大棚ID */ @Excel(name = "大棚ID") + @JsonSerialize(using = ToStringSerializer.class) private Long agriId; /** 协同用户ID */ @@ -75,6 +79,16 @@ public class SysUserAgri extends BaseEntity @TableField(exist = false) private String imei; + @TableField(exist = false) + private Boolean disabled; + + public Boolean getDisabled() { + return disabled; + } + + public void setDisabled(Boolean disabled) { + this.disabled = disabled; + } public String getImei() { return imei; @@ -197,6 +211,7 @@ public class SysUserAgri extends BaseEntity return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("id", getId()) .append("agriId", getAgriId()) + .append("sysUser", getSysUser()) .append("userId", getUserId()) .append("role", getRole()) .append("permMask", getPermMask()) 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 index 1d31fbe..16a915d 100644 --- a/agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java +++ b/agri-system/src/main/java/com/agri/system/mapper/SysUserAgriMapper.java @@ -67,4 +67,11 @@ public interface SysUserAgriMapper extends BaseMapper * @return */ List findAgriUser(SysUserAgri sysUserAgri); + + /** + * 查询所有用户 以及关联大棚的用户 disbaled展示true + * @param sysUserAgri + * @return + */ + List findAllUser(SysUserAgri sysUserAgri); } 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 index 376c3c7..f687aef 100644 --- a/agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java +++ b/agri-system/src/main/java/com/agri/system/service/ISysUserAgriService.java @@ -29,6 +29,7 @@ public interface ISysUserAgriService extends IService { public List selectSysUserAgriList(SysUserAgri sysUserAgri); public List findAgriUser(SysUserAgri sysUserAgri); + public List findAllUser(SysUserAgri sysUserAgri); /** * 新增大棚信息(用户-设备关联) 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 index 468147e..90e3968 100644 --- 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 @@ -98,4 +98,9 @@ public class SysUserAgriServiceImpl extends ServiceImpl findAllUser(SysUserAgri sysUserAgri) { + + return baseMapper.findAllUser(sysUserAgri); + } } diff --git a/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml b/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml index bf07f13..e7d6ebb 100644 --- a/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml +++ b/agri-system/src/main/resources/mapper/system/SysUserAgriMapper.xml @@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -20,7 +21,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + + @@ -151,7 +153,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT user_agri.id, user_agri.agri_id, - user_agri.user_id, user_agri.role, user_agri.perm_mask, user_agri.STATUS, @@ -163,24 +164,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 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} + user_agri.version, + `u`.user_id, + `u`.user_name, + `u`.nick_name, + `u`.email, + `u`.phonenumber, + `u`.sex, + `u`.status, + `u`.del_flag + + +