使用mybatis-flex重构各模块代码:岗位管理
This commit is contained in:
parent
82988f3385
commit
39c3a181e2
@ -4,10 +4,13 @@ import java.util.List;
|
|||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
import com.ruoyi.common.core.constant.UserConstants;
|
import com.ruoyi.common.core.constant.UserConstants;
|
||||||
|
import com.ruoyi.common.core.core.domain.R;
|
||||||
|
import com.ruoyi.common.excel.utils.ExcelUtil;
|
||||||
import com.ruoyi.common.log.annotation.Log;
|
import com.ruoyi.common.log.annotation.Log;
|
||||||
import com.ruoyi.common.log.enums.BusinessType;
|
import com.ruoyi.common.log.enums.BusinessType;
|
||||||
import com.ruoyi.common.orm.core.page.TableDataInfo;
|
import com.ruoyi.common.orm.core.page.TableDataInfo;
|
||||||
import com.ruoyi.common.security.utils.LoginHelper;
|
import com.ruoyi.system.domain.bo.SysPostBo;
|
||||||
|
import com.ruoyi.system.domain.vo.SysPostVo;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@ -21,9 +24,6 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import com.ruoyi.common.web.core.BaseController;
|
import com.ruoyi.common.web.core.BaseController;
|
||||||
import com.ruoyi.common.core.core.domain.AjaxResult;
|
|
||||||
import com.ruoyi.common.core.utils.poi.ExcelUtil;
|
|
||||||
import com.ruoyi.system.domain.SysPost;
|
|
||||||
import com.ruoyi.system.service.ISysPostService;
|
import com.ruoyi.system.service.ISysPostService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -45,21 +45,18 @@ public class SysPostController extends BaseController
|
|||||||
*/
|
*/
|
||||||
@SaCheckPermission("system:post:list")
|
@SaCheckPermission("system:post:list")
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
public TableDataInfo list(SysPost post)
|
public TableDataInfo<SysPostVo> list(SysPostBo postBo)
|
||||||
{
|
{
|
||||||
startPage();
|
return postService.selectConfigPage(postBo);
|
||||||
List<SysPost> list = postService.selectPostList(post);
|
|
||||||
return getDataTable(list);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Log(title = "岗位管理", businessType = BusinessType.EXPORT)
|
@Log(title = "岗位管理", businessType = BusinessType.EXPORT)
|
||||||
@SaCheckPermission("system:post:export")
|
@SaCheckPermission("system:post:export")
|
||||||
@PostMapping("/export")
|
@PostMapping("/export")
|
||||||
public void export(HttpServletResponse response, SysPost post)
|
public void export(HttpServletResponse response, SysPostBo postBo)
|
||||||
{
|
{
|
||||||
List<SysPost> list = postService.selectPostList(post);
|
List<SysPostVo> list = postService.selectPostList(postBo);
|
||||||
ExcelUtil<SysPost> util = new ExcelUtil<>(SysPost.class);
|
ExcelUtil.exportExcel(list, "岗位管理数据", SysPostVo.class, response);
|
||||||
util.exportExcel(response, list, "岗位数据");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -67,9 +64,9 @@ public class SysPostController extends BaseController
|
|||||||
*/
|
*/
|
||||||
@SaCheckPermission("system:post:query")
|
@SaCheckPermission("system:post:query")
|
||||||
@GetMapping(value = "/{postId}")
|
@GetMapping(value = "/{postId}")
|
||||||
public AjaxResult getInfo(@PathVariable Long postId)
|
public R<SysPostVo> getInfo(@PathVariable Long postId)
|
||||||
{
|
{
|
||||||
return success(postService.selectPostById(postId));
|
return R.ok(postService.selectPostById(postId));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -78,18 +75,21 @@ public class SysPostController extends BaseController
|
|||||||
@SaCheckPermission("system:post:add")
|
@SaCheckPermission("system:post:add")
|
||||||
@Log(title = "岗位管理", businessType = BusinessType.INSERT)
|
@Log(title = "岗位管理", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public AjaxResult add(@Validated @RequestBody SysPost post)
|
public R<Void> add(@Validated @RequestBody SysPostBo postBo)
|
||||||
{
|
{
|
||||||
if (!postService.checkPostNameUnique(post))
|
if (!postService.checkPostNameUnique(postBo))
|
||||||
{
|
{
|
||||||
return error("新增岗位'" + post.getPostName() + "'失败,岗位名称已存在");
|
return R.fail("新增岗位'" + postBo.getPostName() + "'失败,岗位名称已存在");
|
||||||
}
|
}
|
||||||
else if (!postService.checkPostCodeUnique(post))
|
else if (!postService.checkPostCodeUnique(postBo))
|
||||||
{
|
{
|
||||||
return error("新增岗位'" + post.getPostName() + "'失败,岗位编码已存在");
|
return R.fail("新增岗位'" + postBo.getPostName() + "'失败,岗位编码已存在");
|
||||||
}
|
}
|
||||||
post.setCreateBy(LoginHelper.getUserId());
|
int insertedRows = postService.insertPost(postBo);
|
||||||
return toAjax(postService.insertPost(post));
|
if (insertedRows != 1) {
|
||||||
|
return R.fail("新增岗位记录失败!");
|
||||||
|
}
|
||||||
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -98,22 +98,25 @@ public class SysPostController extends BaseController
|
|||||||
@SaCheckPermission("system:post:edit")
|
@SaCheckPermission("system:post:edit")
|
||||||
@Log(title = "岗位管理", businessType = BusinessType.UPDATE)
|
@Log(title = "岗位管理", businessType = BusinessType.UPDATE)
|
||||||
@PutMapping
|
@PutMapping
|
||||||
public AjaxResult edit(@Validated @RequestBody SysPost post)
|
public R<Void> edit(@Validated @RequestBody SysPostBo postBo)
|
||||||
{
|
{
|
||||||
if (!postService.checkPostNameUnique(post))
|
if (!postService.checkPostNameUnique(postBo))
|
||||||
{
|
{
|
||||||
return error("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在");
|
return R.fail("修改岗位'" + postBo.getPostName() + "'失败,岗位名称已存在");
|
||||||
}
|
}
|
||||||
else if (!postService.checkPostCodeUnique(post))
|
else if (!postService.checkPostCodeUnique(postBo))
|
||||||
{
|
{
|
||||||
return error("修改岗位'" + post.getPostName() + "'失败,岗位编码已存在");
|
return R.fail("修改岗位'" + postBo.getPostName() + "'失败,岗位编码已存在");
|
||||||
}
|
}
|
||||||
else if (UserConstants.POST_DISABLE.equals(post.getStatus())
|
else if (UserConstants.POST_DISABLE.equals(postBo.getStatus())
|
||||||
&& postService.countUserPostById(post.getPostId()) > 0) {
|
&& postService.countUserPostById(postBo.getPostId()) > 0) {
|
||||||
return error("该岗位下存在已分配用户,不能禁用!");
|
return R.fail("该岗位下存在已分配用户,不能禁用!");
|
||||||
}
|
}
|
||||||
post.setUpdateBy(LoginHelper.getUserId());
|
Boolean updated = postService.updatePost(postBo);
|
||||||
return toAjax(postService.updatePost(post));
|
if (!updated) {
|
||||||
|
R.fail("修改岗位记录失败!");
|
||||||
|
}
|
||||||
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -122,20 +125,24 @@ public class SysPostController extends BaseController
|
|||||||
@SaCheckPermission("system:post:remove")
|
@SaCheckPermission("system:post:remove")
|
||||||
@Log(title = "岗位管理", businessType = BusinessType.DELETE)
|
@Log(title = "岗位管理", businessType = BusinessType.DELETE)
|
||||||
@DeleteMapping("/{postIds}")
|
@DeleteMapping("/{postIds}")
|
||||||
public AjaxResult remove(@PathVariable Long[] postIds)
|
public R<Void> remove(@PathVariable Long[] postIds)
|
||||||
{
|
{
|
||||||
return toAjax(postService.deletePostByIds(postIds));
|
boolean deleted = postService.deletePostByIds(postIds);
|
||||||
|
if (!deleted) {
|
||||||
|
R.fail("删除岗位记录失败!");
|
||||||
|
}
|
||||||
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取岗位选择框列表
|
* 获取岗位选择框列表
|
||||||
*/
|
*/
|
||||||
@GetMapping("/optionselect")
|
@GetMapping("/optionselect")
|
||||||
public AjaxResult optionselect()
|
public R<List<SysPostVo>> optionselect()
|
||||||
{
|
{
|
||||||
SysPost sysPost = new SysPost();
|
SysPostBo sysPostBo = new SysPostBo();
|
||||||
sysPost.setStatus(UserConstants.POST_NORMAL);
|
sysPostBo.setStatus(UserConstants.POST_NORMAL);
|
||||||
List<SysPost> posts = postService.selectPostList(sysPost);
|
List<SysPostVo> posts = postService.selectPostList(sysPostBo);
|
||||||
return success(posts);
|
return R.ok(posts);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,14 @@
|
|||||||
package com.ruoyi.system.domain;
|
package com.ruoyi.system.domain;
|
||||||
|
|
||||||
|
import com.mybatisflex.annotation.Column;
|
||||||
|
import com.mybatisflex.annotation.Id;
|
||||||
|
import com.mybatisflex.annotation.KeyType;
|
||||||
|
import com.mybatisflex.annotation.Table;
|
||||||
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import jakarta.validation.constraints.Size;
|
import jakarta.validation.constraints.Size;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
import com.ruoyi.common.core.annotation.Excel;
|
import com.ruoyi.common.core.annotation.Excel;
|
||||||
@ -16,125 +22,31 @@ import java.io.Serial;
|
|||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@Table(value = "sys_post")
|
||||||
public class SysPost extends BaseEntity
|
public class SysPost extends BaseEntity
|
||||||
{
|
{
|
||||||
@Serial
|
|
||||||
private static final long serialVersionUID = 1L;
|
|
||||||
|
|
||||||
/** 岗位序号 */
|
/** 岗位序号 */
|
||||||
@Excel(name = "岗位序号", cellType = ColumnType.NUMERIC)
|
@Id(keyType = KeyType.Auto)
|
||||||
private Long postId;
|
private Long postId;
|
||||||
|
|
||||||
/** 岗位编码 */
|
/** 岗位编码 */
|
||||||
@Excel(name = "岗位编码")
|
|
||||||
private String postCode;
|
private String postCode;
|
||||||
|
|
||||||
/** 岗位名称 */
|
/** 岗位名称 */
|
||||||
@Excel(name = "岗位名称")
|
|
||||||
private String postName;
|
private String postName;
|
||||||
|
|
||||||
/** 岗位排序 */
|
/** 岗位排序 */
|
||||||
@Excel(name = "岗位排序")
|
|
||||||
private Integer postSort;
|
private Integer postSort;
|
||||||
|
|
||||||
/** 状态(0正常 1停用) */
|
/** 状态(0正常 1停用) */
|
||||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
/**
|
/** 备注 */
|
||||||
* 备注
|
|
||||||
*/
|
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
/** 用户是否存在此岗位标识 默认不存在 */
|
/** 用户是否存在此岗位标识 默认不存在 */
|
||||||
|
@Column(ignore = true)
|
||||||
private boolean flag = false;
|
private boolean flag = false;
|
||||||
|
|
||||||
public Long getPostId()
|
|
||||||
{
|
|
||||||
return postId;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPostId(Long postId)
|
|
||||||
{
|
|
||||||
this.postId = postId;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotBlank(message = "岗位编码不能为空")
|
|
||||||
@Size(min = 0, max = 64, message = "岗位编码长度不能超过64个字符")
|
|
||||||
public String getPostCode()
|
|
||||||
{
|
|
||||||
return postCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPostCode(String postCode)
|
|
||||||
{
|
|
||||||
this.postCode = postCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotBlank(message = "岗位名称不能为空")
|
|
||||||
@Size(min = 0, max = 50, message = "岗位名称长度不能超过50个字符")
|
|
||||||
public String getPostName()
|
|
||||||
{
|
|
||||||
return postName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPostName(String postName)
|
|
||||||
{
|
|
||||||
this.postName = postName;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNull(message = "显示顺序不能为空")
|
|
||||||
public Integer getPostSort()
|
|
||||||
{
|
|
||||||
return postSort;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPostSort(Integer postSort)
|
|
||||||
{
|
|
||||||
this.postSort = postSort;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getStatus()
|
|
||||||
{
|
|
||||||
return status;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setStatus(String status)
|
|
||||||
{
|
|
||||||
this.status = status;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isFlag()
|
|
||||||
{
|
|
||||||
return flag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFlag(boolean flag)
|
|
||||||
{
|
|
||||||
this.flag = flag;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getRemark() {
|
|
||||||
return remark;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRemark(String remark) {
|
|
||||||
this.remark = remark;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String toString() {
|
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
|
||||||
.append("postId", getPostId())
|
|
||||||
.append("postCode", getPostCode())
|
|
||||||
.append("postName", getPostName())
|
|
||||||
.append("postSort", getPostSort())
|
|
||||||
.append("status", getStatus())
|
|
||||||
.append("createBy", getCreateBy())
|
|
||||||
.append("createTime", getCreateTime())
|
|
||||||
.append("updateBy", getUpdateBy())
|
|
||||||
.append("updateTime", getUpdateTime())
|
|
||||||
.append("remark", getRemark())
|
|
||||||
.toString();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,6 @@ import java.util.Date;
|
|||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@ExcelIgnoreUnannotated
|
@ExcelIgnoreUnannotated
|
||||||
@AutoMapper(target = SysPost.class)
|
|
||||||
public class SysPostVo implements Serializable {
|
public class SysPostVo implements Serializable {
|
||||||
|
|
||||||
@Serial
|
@Serial
|
||||||
|
@ -1,99 +1,33 @@
|
|||||||
package com.ruoyi.system.mapper;
|
package com.ruoyi.system.mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.mybatisflex.core.BaseMapper;
|
||||||
import com.ruoyi.system.domain.SysPost;
|
import com.ruoyi.system.domain.SysPost;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 岗位信息 数据层
|
* 岗位信息 数据层
|
||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author 数据小王子
|
||||||
*/
|
*/
|
||||||
public interface SysPostMapper
|
@Mapper
|
||||||
|
public interface SysPostMapper extends BaseMapper<SysPost>
|
||||||
{
|
{
|
||||||
/**
|
|
||||||
* 查询岗位数据集合
|
|
||||||
*
|
|
||||||
* @param post 岗位信息
|
|
||||||
* @return 岗位数据集合
|
|
||||||
*/
|
|
||||||
public List<SysPost> selectPostList(SysPost post);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询所有岗位
|
|
||||||
*
|
|
||||||
* @return 岗位列表
|
|
||||||
*/
|
|
||||||
public List<SysPost> selectPostAll();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 通过岗位ID查询岗位信息
|
|
||||||
*
|
|
||||||
* @param postId 岗位ID
|
|
||||||
* @return 角色对象信息
|
|
||||||
*/
|
|
||||||
public SysPost selectPostById(Long postId);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据用户ID获取岗位选择框列表
|
* 根据用户ID获取岗位选择框列表
|
||||||
*
|
*
|
||||||
* @param userId 用户ID
|
* @param userId 用户ID
|
||||||
* @return 选中岗位ID列表
|
* @return 选中岗位ID列表
|
||||||
*/
|
*/
|
||||||
public List<Long> selectPostListByUserId(Long userId);
|
List<Long> selectPostListByUserId(Long userId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户所属岗位组
|
* 查询用户所属岗位组
|
||||||
*
|
*
|
||||||
* @param userName 用户名
|
* @param userName 用户名
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public List<SysPost> selectPostsByUserName(String userName);
|
List<SysPost> selectPostsByUserName(String userName);
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除岗位信息
|
|
||||||
*
|
|
||||||
* @param postId 岗位ID
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int deletePostById(Long postId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 批量删除岗位信息
|
|
||||||
*
|
|
||||||
* @param postIds 需要删除的岗位ID
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int deletePostByIds(Long[] postIds);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改岗位信息
|
|
||||||
*
|
|
||||||
* @param post 岗位信息
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int updatePost(SysPost post);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新增岗位信息
|
|
||||||
*
|
|
||||||
* @param post 岗位信息
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public int insertPost(SysPost post);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 校验岗位名称
|
|
||||||
*
|
|
||||||
* @param postName 岗位名称
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public SysPost checkPostNameUnique(String postName);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 校验岗位编码
|
|
||||||
*
|
|
||||||
* @param postCode 岗位编码
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
public SysPost checkPostCodeUnique(String postCode);
|
|
||||||
}
|
}
|
||||||
|
@ -1,99 +1,112 @@
|
|||||||
package com.ruoyi.system.service;
|
package com.ruoyi.system.service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.mybatisflex.core.service.IService;
|
||||||
|
import com.ruoyi.common.orm.core.page.TableDataInfo;
|
||||||
import com.ruoyi.system.domain.SysPost;
|
import com.ruoyi.system.domain.SysPost;
|
||||||
|
import com.ruoyi.system.domain.bo.SysPostBo;
|
||||||
|
import com.ruoyi.system.domain.vo.SysPostVo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 岗位信息 服务层
|
* 岗位信息 服务层
|
||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
public interface ISysPostService
|
public interface ISysPostService extends IService<SysPost>
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* 查询岗位信息集合
|
* 查询岗位信息集合
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param post 岗位信息
|
||||||
* @return 岗位列表
|
* @return 岗位列表
|
||||||
*/
|
*/
|
||||||
public List<SysPost> selectPostList(SysPost post);
|
List<SysPostVo> selectPostList(SysPostBo post);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询公告列表
|
||||||
|
*
|
||||||
|
* @param postBo 公告信息
|
||||||
|
* @return 公告集合
|
||||||
|
*/
|
||||||
|
TableDataInfo<SysPostVo> selectConfigPage(SysPostBo postBo);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询所有岗位
|
* 查询所有岗位
|
||||||
*
|
*
|
||||||
* @return 岗位列表
|
* @return 岗位列表
|
||||||
*/
|
*/
|
||||||
public List<SysPost> selectPostAll();
|
List<SysPostVo> selectPostAll();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过岗位ID查询岗位信息
|
* 通过岗位ID查询岗位信息
|
||||||
*
|
*
|
||||||
* @param postId 岗位ID
|
* @param postId 岗位ID
|
||||||
* @return 角色对象信息
|
* @return 角色对象信息
|
||||||
*/
|
*/
|
||||||
public SysPost selectPostById(Long postId);
|
SysPostVo selectPostById(Long postId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据用户ID获取岗位选择框列表
|
* 根据用户ID获取岗位选择框列表
|
||||||
*
|
*
|
||||||
* @param userId 用户ID
|
* @param userId 用户ID
|
||||||
* @return 选中岗位ID列表
|
* @return 选中岗位ID列表
|
||||||
*/
|
*/
|
||||||
public List<Long> selectPostListByUserId(Long userId);
|
List<Long> selectPostListByUserId(Long userId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验岗位名称
|
* 校验岗位名称
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param post 岗位信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public boolean checkPostNameUnique(SysPost post);
|
boolean checkPostNameUnique(SysPostBo post);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验岗位编码
|
* 校验岗位编码
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param post 岗位信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public boolean checkPostCodeUnique(SysPost post);
|
boolean checkPostCodeUnique(SysPostBo post);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过岗位ID查询岗位使用数量
|
* 通过岗位ID查询岗位使用数量
|
||||||
*
|
*
|
||||||
* @param postId 岗位ID
|
* @param postId 岗位ID
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int countUserPostById(Long postId);
|
int countUserPostById(Long postId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除岗位信息
|
* 删除岗位信息
|
||||||
*
|
*
|
||||||
* @param postId 岗位ID
|
* @param postId 岗位ID
|
||||||
* @return 结果
|
* @return 结果:true 删除成功,false 删除失败。
|
||||||
*/
|
*/
|
||||||
public int deletePostById(Long postId);
|
boolean deletePostById(Long postId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除岗位信息
|
* 批量删除岗位信息
|
||||||
*
|
*
|
||||||
* @param postIds 需要删除的岗位ID
|
* @param postIds 需要删除的岗位ID
|
||||||
* @return 结果
|
* @return 结果:true 删除成功,false 删除失败。
|
||||||
*/
|
*/
|
||||||
public int deletePostByIds(Long[] postIds);
|
boolean deletePostByIds(Long[] postIds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增保存岗位信息
|
* 新增保存岗位信息
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param post 岗位信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int insertPost(SysPost post);
|
int insertPost(SysPostBo post);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改保存岗位信息
|
* 修改保存岗位信息
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param post 岗位信息
|
||||||
* @return 结果
|
* @return 结果:true 更新成功,false 更新失败
|
||||||
*/
|
*/
|
||||||
public int updatePost(SysPost post);
|
boolean updatePost(SysPostBo post);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,18 @@
|
|||||||
package com.ruoyi.system.service.impl;
|
package com.ruoyi.system.service.impl;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.mybatisflex.core.paginate.Page;
|
||||||
|
import com.mybatisflex.core.query.QueryWrapper;
|
||||||
|
import com.mybatisflex.spring.service.impl.ServiceImpl;
|
||||||
|
import com.ruoyi.common.core.core.page.PageDomain;
|
||||||
|
import com.ruoyi.common.core.core.page.TableSupport;
|
||||||
|
import com.ruoyi.common.core.utils.MapstructUtils;
|
||||||
|
import com.ruoyi.common.core.utils.sql.SqlUtil;
|
||||||
|
import com.ruoyi.common.orm.core.page.TableDataInfo;
|
||||||
|
import com.ruoyi.system.domain.bo.SysPostBo;
|
||||||
|
import com.ruoyi.system.domain.vo.SysPostVo;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.ruoyi.common.core.constant.UserConstants;
|
import com.ruoyi.common.core.constant.UserConstants;
|
||||||
@ -12,13 +23,15 @@ import com.ruoyi.system.mapper.SysPostMapper;
|
|||||||
import com.ruoyi.system.mapper.SysUserPostMapper;
|
import com.ruoyi.system.mapper.SysUserPostMapper;
|
||||||
import com.ruoyi.system.service.ISysPostService;
|
import com.ruoyi.system.service.ISysPostService;
|
||||||
|
|
||||||
|
import static com.ruoyi.system.domain.table.SysPostTableDef.SYS_POST;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 岗位信息 服务层处理
|
* 岗位信息 服务层处理
|
||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class SysPostServiceImpl implements ISysPostService
|
public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> implements ISysPostService
|
||||||
{
|
{
|
||||||
@Resource
|
@Resource
|
||||||
private SysPostMapper postMapper;
|
private SysPostMapper postMapper;
|
||||||
@ -26,16 +39,64 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
@Resource
|
@Resource
|
||||||
private SysUserPostMapper userPostMapper;
|
private SysUserPostMapper userPostMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public QueryWrapper query() {
|
||||||
|
return super.query().from(SYS_POST);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据postBo构建QueryWrapper查询条件
|
||||||
|
* @param postBo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private QueryWrapper buildQueryWrapper(SysPostBo postBo) {
|
||||||
|
QueryWrapper queryWrapper = query();
|
||||||
|
PageDomain pageDomain = TableSupport.buildPageRequest();
|
||||||
|
|
||||||
|
if (StringUtils.isNotEmpty(postBo.getPostCode())) {
|
||||||
|
queryWrapper.and(SYS_POST.POST_CODE.like(postBo.getPostCode()));
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotEmpty(postBo.getStatus())) {
|
||||||
|
queryWrapper.and(SYS_POST.STATUS.eq(postBo.getStatus()));
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotEmpty(postBo.getPostName())) {
|
||||||
|
queryWrapper.and(SYS_POST.POST_NAME.like(postBo.getPostName()));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StringUtils.isNotEmpty(pageDomain.getOrderBy())) {
|
||||||
|
String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
|
||||||
|
queryWrapper.orderBy(orderBy);
|
||||||
|
}
|
||||||
|
return queryWrapper;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询岗位信息集合
|
* 查询岗位信息集合
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param postBo 岗位信息
|
||||||
* @return 岗位信息集合
|
* @return 岗位信息集合
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<SysPost> selectPostList(SysPost post)
|
public List<SysPostVo> selectPostList(SysPostBo postBo)
|
||||||
{
|
{
|
||||||
return postMapper.selectPostList(post);
|
QueryWrapper queryWrapper = buildQueryWrapper(postBo);
|
||||||
|
return this.listAs(queryWrapper, SysPostVo.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询公告列表
|
||||||
|
*
|
||||||
|
* @param postBo 公告信息
|
||||||
|
* @return 公告集合
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public TableDataInfo<SysPostVo> selectConfigPage(SysPostBo postBo) {
|
||||||
|
QueryWrapper queryWrapper = buildQueryWrapper(postBo);
|
||||||
|
|
||||||
|
PageDomain pageDomain = TableSupport.buildPageRequest();
|
||||||
|
|
||||||
|
Page<SysPostVo> page = this.getMapper().paginateAs(pageDomain.getPageNum(), pageDomain.getPageSize(), queryWrapper, SysPostVo.class);
|
||||||
|
return TableDataInfo.build(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -44,9 +105,9 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
* @return 岗位列表
|
* @return 岗位列表
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<SysPost> selectPostAll()
|
public List<SysPostVo> selectPostAll()
|
||||||
{
|
{
|
||||||
return postMapper.selectPostAll();
|
return this.listAs(query(), SysPostVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -56,9 +117,9 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
* @return 角色对象信息
|
* @return 角色对象信息
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public SysPost selectPostById(Long postId)
|
public SysPostVo selectPostById(Long postId)
|
||||||
{
|
{
|
||||||
return postMapper.selectPostById(postId);
|
return this.getOneAs(query().where(SYS_POST.POST_ID.eq(postId)), SysPostVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -80,10 +141,10 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean checkPostNameUnique(SysPost post)
|
public boolean checkPostNameUnique(SysPostBo post)
|
||||||
{
|
{
|
||||||
Long postId = StringUtils.isNull(post.getPostId()) ? -1L : post.getPostId();
|
Long postId = StringUtils.isNull(post.getPostId()) ? -1L : post.getPostId();
|
||||||
SysPost info = postMapper.checkPostNameUnique(post.getPostName());
|
SysPost info = this.getOne(query().where(SYS_POST.POST_NAME.eq(post.getPostName())));
|
||||||
if (StringUtils.isNotNull(info) && info.getPostId().longValue() != postId.longValue())
|
if (StringUtils.isNotNull(info) && info.getPostId().longValue() != postId.longValue())
|
||||||
{
|
{
|
||||||
return UserConstants.NOT_UNIQUE;
|
return UserConstants.NOT_UNIQUE;
|
||||||
@ -98,10 +159,10 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean checkPostCodeUnique(SysPost post)
|
public boolean checkPostCodeUnique(SysPostBo post)
|
||||||
{
|
{
|
||||||
Long postId = StringUtils.isNull(post.getPostId()) ? -1L : post.getPostId();
|
Long postId = StringUtils.isNull(post.getPostId()) ? -1L : post.getPostId();
|
||||||
SysPost info = postMapper.checkPostCodeUnique(post.getPostCode());
|
SysPost info = this.getOne(query().where(SYS_POST.POST_CODE.eq(post.getPostCode())));
|
||||||
if (StringUtils.isNotNull(info) && info.getPostId().longValue() != postId.longValue())
|
if (StringUtils.isNotNull(info) && info.getPostId().longValue() != postId.longValue())
|
||||||
{
|
{
|
||||||
return UserConstants.NOT_UNIQUE;
|
return UserConstants.NOT_UNIQUE;
|
||||||
@ -125,55 +186,57 @@ public class SysPostServiceImpl implements ISysPostService
|
|||||||
* 删除岗位信息
|
* 删除岗位信息
|
||||||
*
|
*
|
||||||
* @param postId 岗位ID
|
* @param postId 岗位ID
|
||||||
* @return 结果
|
* @return 结果:true 删除成功,false 删除失败。
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int deletePostById(Long postId)
|
public boolean deletePostById(Long postId)
|
||||||
{
|
{
|
||||||
return postMapper.deletePostById(postId);
|
return this.removeById(postId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除岗位信息
|
* 批量删除岗位信息
|
||||||
*
|
*
|
||||||
* @param postIds 需要删除的岗位ID
|
* @param postIds 需要删除的岗位ID
|
||||||
* @return 结果
|
* @return 结果:true 删除成功,false 删除失败。
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int deletePostByIds(Long[] postIds)
|
public boolean deletePostByIds(Long[] postIds)
|
||||||
{
|
{
|
||||||
for (Long postId : postIds)
|
for (Long postId : postIds)
|
||||||
{
|
{
|
||||||
SysPost post = selectPostById(postId);
|
SysPostVo post = selectPostById(postId);
|
||||||
if (countUserPostById(postId) > 0)
|
if (countUserPostById(postId) > 0)
|
||||||
{
|
{
|
||||||
throw new ServiceException(String.format("%1$s已分配,不能删除!", post.getPostName()));
|
throw new ServiceException(String.format("%1$s已分配,不能删除!", post.getPostName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return postMapper.deletePostByIds(postIds);
|
return this.removeByIds(Arrays.asList(postIds));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增保存岗位信息
|
* 新增保存岗位信息
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param postBo 岗位信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int insertPost(SysPost post)
|
public int insertPost(SysPostBo postBo)
|
||||||
{
|
{
|
||||||
return postMapper.insertPost(post);
|
SysPost sysPost = MapstructUtils.convert(postBo, SysPost.class);
|
||||||
|
return postMapper.insert(sysPost,false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改保存岗位信息
|
* 修改保存岗位信息
|
||||||
*
|
*
|
||||||
* @param post 岗位信息
|
* @param postBo 岗位信息
|
||||||
* @return 结果
|
* @return 结果:true 更新成功,false 更新失败
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public int updatePost(SysPost post)
|
public boolean updatePost(SysPostBo postBo)
|
||||||
{
|
{
|
||||||
return postMapper.updatePost(post);
|
SysPost sysPost = MapstructUtils.convert(postBo, SysPost.class);
|
||||||
|
return this.updateById(sysPost);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user