大棚关联用户
parent
ca9c24ce90
commit
78311a1396
|
|
@ -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<SysUserAgri> list = sysUserAgriService.findAgriUser(sysUserAgri);
|
||||
return getDataTable(list);
|
||||
}
|
||||
@PreAuthorize("@ss.hasPermi('assets:userAgri:list')")
|
||||
@GetMapping("/findAllUser")
|
||||
public TableDataInfo findAllUser(SysUserAgri sysUserAgri) {
|
||||
List<SysUserAgri> 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<SysUserAgri> userList) {
|
||||
if (CollectionUtils.isNotEmpty(userList) && !userList.isEmpty()) {
|
||||
Long agriId = userList.get(0).getAgriId();
|
||||
if (ObjectUtils.isNotEmpty(agriId)) {
|
||||
QueryWrapper<SysUserAgri> wrapper = new QueryWrapper<>();
|
||||
wrapper.eq("agri_id",agriId);
|
||||
sysUserAgriService.remove(wrapper);
|
||||
|
||||
boolean saveBatch = sysUserAgriService.saveBatch(userList);
|
||||
if (!saveBatch) {
|
||||
return error("更新用户失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
return success();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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())
|
||||
|
|
|
|||
|
|
@ -67,4 +67,11 @@ public interface SysUserAgriMapper extends BaseMapper<SysUserAgri>
|
|||
* @return
|
||||
*/
|
||||
List<SysUserAgri> findAgriUser(SysUserAgri sysUserAgri);
|
||||
|
||||
/**
|
||||
* 查询所有用户 以及关联大棚的用户 disbaled展示true
|
||||
* @param sysUserAgri
|
||||
* @return
|
||||
*/
|
||||
List<SysUserAgri> findAllUser(SysUserAgri sysUserAgri);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ public interface ISysUserAgriService extends IService<SysUserAgri> {
|
|||
public List<SysUserAgri> selectSysUserAgriList(SysUserAgri sysUserAgri);
|
||||
|
||||
public List<SysUserAgri> findAgriUser(SysUserAgri sysUserAgri);
|
||||
public List<SysUserAgri> findAllUser(SysUserAgri sysUserAgri);
|
||||
|
||||
/**
|
||||
* 新增大棚信息(用户-设备关联)
|
||||
|
|
|
|||
|
|
@ -98,4 +98,9 @@ public class SysUserAgriServiceImpl extends ServiceImpl<SysUserAgriMapper, SysUs
|
|||
|
||||
return baseMapper.findAgriUser(sysUserAgri);
|
||||
}
|
||||
@Override
|
||||
public List<SysUserAgri> findAllUser(SysUserAgri sysUserAgri) {
|
||||
|
||||
return baseMapper.findAllUser(sysUserAgri);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="role" column="role" />
|
||||
<result property="permMask" column="perm_mask" />
|
||||
<result property="status" column="status" />
|
||||
<result property="status" column="invite_status" />
|
||||
<result property="inviteBy" column="invite_by" />
|
||||
<result property="inviteTime" column="invite_time" />
|
||||
<result property="acceptTime" column="accept_time" />
|
||||
|
|
@ -20,7 +21,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="updateTime" column="update_time" />
|
||||
<result property="updateBy" column="update_by" />
|
||||
<result property="version" column="version" />
|
||||
<association property="sysUser" javaType="java.util.List" resultMap="SysUserResult" />
|
||||
<result property="disabled" column="disabled" />
|
||||
<association property="sysUser" resultMap="SysUserResult" />
|
||||
</resultMap>
|
||||
|
||||
<resultMap type="SysUser" id="SysUserResult">
|
||||
|
|
@ -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
|
||||
<if test="agriId != null "> and user_agri.agri_id = #{agriId}</if>
|
||||
user_agri.version,
|
||||
`u`.user_id,
|
||||
`u`.user_name,
|
||||
`u`.nick_name,
|
||||
`u`.email,
|
||||
`u`.phonenumber,
|
||||
`u`.sex,
|
||||
`u`.status,
|
||||
`u`.del_flag
|
||||
</sql>
|
||||
<select id="findAgriUser" parameterType="SysUserAgri" resultMap="SysUserAgriResult">
|
||||
<include refid="agriUserVo"/>
|
||||
FROM
|
||||
sys_user_agri user_agri
|
||||
LEFT JOIN sys_user `u` ON user_agri.user_id = `u`.user_id and `u`.del_flag=0
|
||||
<where>
|
||||
<if test="userId != null "> and user_agri.user_id = #{userId}</if>
|
||||
<if test="agriId != null "> and user_agri.agri_id = #{agriId}</if>
|
||||
<if test="role != null "> and user_agri.role = #{role}</if>
|
||||
<if test="permMask != null "> and user_agri.perm_mask = #{permMask}</if>
|
||||
<if test="status != null "> and user_agri.status = #{status}</if>
|
||||
|
|
@ -188,17 +188,54 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="inviteTime != null "> and user_agri.invite_time = #{inviteTime}</if>
|
||||
<if test="acceptTime != null "> and user_agri.accept_time = #{acceptTime}</if>
|
||||
<if test="version != null "> and user_agri.version = #{version}</if>
|
||||
<if test="userId != null and userId != 0">
|
||||
AND `user`.user_id = #{userId}
|
||||
</if>
|
||||
<if test="userName != null and userName != ''">
|
||||
AND `user`.user_name like concat('%', #{userName}, '%')
|
||||
</if>
|
||||
<if test="status != null and status != ''">
|
||||
AND `user`.status = #{status}
|
||||
</if>
|
||||
<if test="phonenumber != null and phonenumber != ''">
|
||||
AND `user`.phonenumber like concat('%', #{phonenumber}, '%')
|
||||
<if test="sysUser != null ">
|
||||
<if test="sysUser.userId != null and sysUser.userId != 0">
|
||||
AND `u`.user_id = #{sysUser.userId}
|
||||
</if>
|
||||
<if test="sysUser.userName != null and sysUser.userName != ''">
|
||||
AND `u`.user_name like concat('%', #{sysUser.userName}, '%')
|
||||
</if>
|
||||
<if test="sysUser.status != null and sysUser.status != ''">
|
||||
AND `u`.status = #{sysUser.status}
|
||||
</if>
|
||||
<if test="sysUser.phonenumber != null and sysUser.phonenumber != ''">
|
||||
AND `u`.phonenumber like concat('%', #{sysUser.phonenumber}, '%')
|
||||
</if>
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="findAllUser" parameterType="SysUserAgri" resultMap="SysUserAgriResult">
|
||||
<include refid="agriUserVo"/>,
|
||||
IF(user_agri.agri_id IS NOT NULL, TRUE, FALSE) AS disabled
|
||||
FROM
|
||||
sys_user `u`
|
||||
LEFT JOIN sys_user_agri user_agri ON user_agri.user_id = `u`.user_id
|
||||
<if test="agriId != null "> and user_agri.agri_id = #{agriId}</if>
|
||||
<if test="agriId == null "> and user_agri.agri_id is NULL</if>
|
||||
<where>
|
||||
and `u`.del_flag=0 and `u`.status = 0
|
||||
<if test="role != null "> and user_agri.role = #{role}</if>
|
||||
<if test="permMask != null "> and user_agri.perm_mask = #{permMask}</if>
|
||||
<if test="status != null "> and user_agri.status = #{status}</if>
|
||||
<if test="inviteBy != null "> and user_agri.invite_by = #{inviteBy}</if>
|
||||
<if test="inviteTime != null "> and user_agri.invite_time = #{inviteTime}</if>
|
||||
<if test="acceptTime != null "> and user_agri.accept_time = #{acceptTime}</if>
|
||||
<if test="version != null "> and user_agri.version = #{version}</if>
|
||||
<if test="sysUser != null ">
|
||||
<if test="sysUser.userId != null and sysUser.userId != 0">
|
||||
AND `u`.user_id = #{sysUser.userId}
|
||||
</if>
|
||||
<if test="sysUser.userName != null and sysUser.userName != ''">
|
||||
AND `u`.user_name like concat('%', #{sysUser.userName}, '%')
|
||||
</if>
|
||||
<if test="sysUser.status != null and sysUser.status != ''">
|
||||
AND `u`.status = #{sysUser.status}
|
||||
</if>
|
||||
<if test="sysUser.phonenumber != null and sysUser.phonenumber != ''">
|
||||
AND `u`.phonenumber like concat('%', #{sysUser.phonenumber}, '%')
|
||||
</if>
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
|
|
|||
Loading…
Reference in New Issue