From b2ccb03e33ca8aed0604d002a7e6dfd872745f91 Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Wed, 21 Feb 2024 16:05:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/UserController.java | 59 +++++++++++++++ .../system/base/mapper/IUserMapper.java | 55 ++++++++++++++ .../system/base/service/IUserService.java | 58 +++++++++++++++ .../base/service/impl/UserServiceImpl.java | 70 ++++++++++++++++++ .../main/resources/mapper/base/UserMapper.xml | 73 +++++++++++++++++++ 5 files changed, 315 insertions(+) create mode 100644 securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/controller/UserController.java create mode 100644 securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/mapper/IUserMapper.java create mode 100644 securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/IUserService.java create mode 100644 securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/impl/UserServiceImpl.java create mode 100644 securitycontrol-model/securitycontrol-system/src/main/resources/mapper/base/UserMapper.xml diff --git a/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/controller/UserController.java b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/controller/UserController.java new file mode 100644 index 0000000..4e51319 --- /dev/null +++ b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/controller/UserController.java @@ -0,0 +1,59 @@ +package com.securitycontrol.system.base.controller; + +import com.securitycontrol.common.core.web.controller.BaseController; +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.common.core.web.page.TableDataInfo; +import com.securitycontrol.entity.system.dto.UserDto; +import com.securitycontrol.entity.system.vo.UserVo; +import com.securitycontrol.system.base.service.IUserService; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @author:cwchen + * @date:2024-02-20-15:49 + * @version:1.0 + * @description:用户管理-web + */ +@RestController +@RequestMapping("/sys/user/") +public class UserController extends BaseController { + + @Resource(name = "IUserService") + private IUserService service; + + @ApiOperation(value = "获取用户列表") + @GetMapping("getUserLists") + public TableDataInfo getUserLists(UserDto dto) { + startPage(); + List list = service.getUserLists(dto); + return getDataTable(list); + } + + @ApiOperation(value = "新增用户") + @PostMapping("addUser") + public AjaxResult addUser(@RequestBody UserVo vo){ + return service.addOrUpdateUser(vo); + } + + @ApiOperation(value = "修改用户") + @PostMapping("editUser") + public AjaxResult editUser(@RequestBody UserVo vo){ + return service.addOrUpdateUser(vo); + } + + @ApiOperation(value = "用户详情") + @GetMapping("getUserById") + public AjaxResult getUserById(UserDto dto){ + return service.getUserById(dto); + } + + @ApiOperation(value = "删除用户") + @PostMapping("delUser") + public AjaxResult delUser(UserDto dto){ + return service.delUser(dto); + } +} diff --git a/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/mapper/IUserMapper.java b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/mapper/IUserMapper.java new file mode 100644 index 0000000..14e01cc --- /dev/null +++ b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/mapper/IUserMapper.java @@ -0,0 +1,55 @@ +package com.securitycontrol.system.base.mapper; + +import com.securitycontrol.entity.system.dto.UserDto; +import com.securitycontrol.entity.system.vo.UserVo; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @author:cwchen + * @date:2024-02-20-15:49 + * @version:1.0 + * @description:用户管理-数据库访问层 + */ +@Repository(value = "IUserMapper") +public interface IUserMapper { + + /** + * 获取用户列表 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/2/20 16:37 + */ + List getUserLists(UserDto dto); + + /** + * 用户详情 + * + * @param dto + * @return UserVo + * @author cwchen + * @date 2024/2/20 17:34 + */ + UserVo getUserById(UserDto dto); + + /** + * 删除用户 + * + * @param dto + * @description + * @author cwchen + * @date 2024/2/20 17:39 + */ + void delUser(UserDto dto); + + /** + * 新增/修改用户 + * @param vo + * @author cwchen + * @date 2024/2/20 17:39 + */ + void addOrUpdateUser(UserVo vo); +} diff --git a/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/IUserService.java b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/IUserService.java new file mode 100644 index 0000000..7f5b4a1 --- /dev/null +++ b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/IUserService.java @@ -0,0 +1,58 @@ +package com.securitycontrol.system.base.service; + +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.entity.system.dto.UserDto; +import com.securitycontrol.entity.system.vo.UserVo; + +import java.util.List; + +/** + * @author:cwchen + * @date:2024-02-20-15:49 + * @version:1.0 + * @description:用户管理-业务逻辑层 + */ +public interface IUserService { + + /** + * 获取用户列表 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/2/20 16:31 + */ + List getUserLists(UserDto dto); + + /** + * 新增/修改用户 + * + * @param vo + * @return AjaxResult + * @description + * @author cwchen + * @date 2024/2/20 17:27 + */ + AjaxResult addOrUpdateUser(UserVo vo); + + /** + * 删除用户 + * + * @param dto + * @return AjaxResult + * @description + * @author cwchen + * @date 2024/2/20 17:29 + */ + AjaxResult delUser(UserDto dto); + + /** + * 用户详情 + * @param dto + * @return AjaxResult + * @description + * @author cwchen + * @date 2024/2/20 17:31 + */ + AjaxResult getUserById(UserDto dto); +} diff --git a/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/impl/UserServiceImpl.java b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..0c6425e --- /dev/null +++ b/securitycontrol-model/securitycontrol-system/src/main/java/com/securitycontrol/system/base/service/impl/UserServiceImpl.java @@ -0,0 +1,70 @@ +package com.securitycontrol.system.base.service.impl; + +import com.securitycontrol.common.core.exception.ServiceException; +import com.securitycontrol.common.core.web.domain.AjaxResult; +import com.securitycontrol.entity.system.dto.UserDto; +import com.securitycontrol.entity.system.vo.UserVo; +import com.securitycontrol.system.base.mapper.IUserMapper; +import com.securitycontrol.system.base.service.IUserService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * @author:cwchen + * @date:2024-02-20-15:49 + * @version:1.0 + * @description:用户管理-业务层 + */ +@Service(value = "IUserService") +@Slf4j +public class UserServiceImpl implements IUserService { + + @Resource(name = "IUserMapper") + private IUserMapper mapper; + + @Override + public List getUserLists(UserDto dto) { + List list = new ArrayList<>(); + list = mapper.getUserLists(dto); + return list; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public AjaxResult addOrUpdateUser(UserVo vo) { + try { + if (vo.getUserId() != null) { + vo.setType(2); + } else { + vo.setType(1); + } + mapper.addOrUpdateUser(vo); + } catch (Exception e) { + log.error("用户",e); + //手动回滚异常 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error(); + } + return AjaxResult.success(); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public AjaxResult delUser(UserDto dto) { + mapper.delUser(dto); + return AjaxResult.success(); + } + + @Override + public AjaxResult getUserById(UserDto dto) { + UserVo vo = new UserVo(); + vo = mapper.getUserById(dto); + return AjaxResult.success(vo); + } +} diff --git a/securitycontrol-model/securitycontrol-system/src/main/resources/mapper/base/UserMapper.xml b/securitycontrol-model/securitycontrol-system/src/main/resources/mapper/base/UserMapper.xml new file mode 100644 index 0000000..1dc6df0 --- /dev/null +++ b/securitycontrol-model/securitycontrol-system/src/main/resources/mapper/base/UserMapper.xml @@ -0,0 +1,73 @@ + + + + + + + INSERT INTO sys_user + + user_name, + login_name, + password, + org_id, + dept_name, + org_name, + + + #{userName}, + #{loginName}, + #{password}, + #{orgId}, + #{deptName}, + #{orgName}, + + + + UPDATE sys_user + + user_name = #{userName}, + org_id = #{orgId}, + org_name = #{orgName}, + dept_name = #{deptName}, + + WHERE user_id = #{userId} + + + + + UPDATE sys_user SET del_flag = '1' WHERE user_id = #{userId} + + + + + + + \ No newline at end of file