From 59313fd65370682edfe7ffcb840671e4599b2c64 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期五, 07 七月 2023 16:57:36 +0800
Subject: [PATCH] LIMS管理系统框架-开发:7/7

---
 framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java |    2 
 user-server/src/main/java/com/yuanchu/limslaboratory/mapper/UserMapper.java            |    5 ++
 user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java |   12 ++++++
 user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java                    |   16 ++++---
 user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java    |   39 +++++++++++++++++--
 user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Enterprise.java              |    8 ++++
 user-server/src/main/resources/mapper/UserMapper.xml                                   |    7 +++
 user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java          |    4 ++
 8 files changed, 79 insertions(+), 14 deletions(-)

diff --git a/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java b/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
index 0dc2db3..7e4449a 100644
--- a/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
+++ b/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
@@ -43,7 +43,7 @@
 
     @ExceptionHandler
     public Result<?> NullPointerException(NullPointerException e){
-        log.error(e.getMessage(), e.getCause());
+        e.printStackTrace();
         return Result.fail("閮ㄥ垎鍙傛暟涓虹┖锛岃妫�鏌ワ紒");
     }
 
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java b/user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java
index b2eaf01..a91ab59 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java
@@ -1,27 +1,31 @@
 package com.yuanchu.limslaboratory.controller;
 
+
 import com.yuanchu.limslaboratory.clients.UserLoginUtils;
+import com.yuanchu.limslaboratory.pojo.Enterprise;
 import com.yuanchu.limslaboratory.pojo.User;
+import com.yuanchu.limslaboratory.service.UserService;
 import com.yuanchu.limslaboratory.shiro.realm.ShiroRealm;
 import com.yuanchu.limslaboratory.utils.SpringUtils;
 import com.yuanchu.limslaboratory.vo.Result;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.*;
 import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.authc.IncorrectCredentialsException;
 import org.apache.shiro.authc.UnknownAccountException;
 import org.apache.shiro.authc.UsernamePasswordToken;
 import org.apache.shiro.subject.Subject;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * <p>
- *  鍓嶇鎺у埗鍣�
+ * 鍓嶇鎺у埗鍣�
  * </p>
  *
  * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
@@ -31,6 +35,9 @@
 @RequestMapping("/user")
 @Api(tags = "鐢ㄦ埛妯″潡")
 public class UserController {
+
+    @Autowired
+    private UserService userService;
 
     @ApiOperation("鐢ㄦ埛鐧诲綍")
     @ApiImplicitParams(value = {
@@ -63,4 +70,26 @@
             return Result.fail("鐧诲綍澶辫触");
         }
     }
+
+    @PostMapping("/getUserById")
+    @ApiOperation("鑾峰彇鎸囧畾鐢ㄦ埛id鐨勭敤鎴蜂俊鎭拰浼佷笟淇℃伅")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(value = "鐢ㄦ埛id", name = "userId", dataTypeClass = Integer.class, required = true)
+    })
+    public Result<?> getUserById(int userId) {
+        try {
+            Map<String, String> map = userService.selectUserByUserId(userId);
+            User user = new User(map.get("account"),map.get("uname"),map.get("phone"),map.get("email"),map.get("info"));
+            Enterprise enterprise = new Enterprise(map.get("name"),map.get("byname"),map.get("link_name"),map.get("link_phone"));
+            Map map1 = new HashMap<>();
+            map1.put("enterprise", enterprise);
+            map1.put("user", user);
+            return Result.success(map1);
+        } catch (Exception e) {
+            return Result.fail("鐢ㄦ埛id涓虹┖!");
+        }
+
+
+    }
+
 }
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/UserMapper.java b/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/UserMapper.java
index ba21890..a0b0e21 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/UserMapper.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/UserMapper.java
@@ -2,6 +2,9 @@
 
 import com.yuanchu.limslaboratory.pojo.User;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.Map;
 
 /**
  * <p>
@@ -12,5 +15,5 @@
  * @since 2023-07-07
  */
 public interface UserMapper extends BaseMapper<User> {
-
+    Map<String, String> selectUserByUserId(int userId);
 }
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Enterprise.java b/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Enterprise.java
index d3508b0..a94a473 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Enterprise.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Enterprise.java
@@ -13,6 +13,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
 
 /**
  * <p>
@@ -23,6 +24,7 @@
  * @since 2023-07-07
  */
 @Data
+@NoArgsConstructor
 @EqualsAndHashCode(callSuper = false)
 @ApiModel(value="Enterprise瀵硅薄", description="")
 public class Enterprise implements Serializable {
@@ -63,4 +65,10 @@
     private Integer version;
 
 
+    public Enterprise(String name, String byname, String linkName, String linkPhone) {
+        this.name = name;
+        this.byname = byname;
+        this.linkName = linkName;
+        this.linkPhone = linkPhone;
+    }
 }
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java b/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java
index 9ae5655..50c73a1 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java
@@ -3,19 +3,14 @@
 import com.baomidou.mybatisplus.annotation.*;
 
 import java.io.Serializable;
-import java.time.LocalDateTime;
 import java.util.Date;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-import net.sf.jsqlparser.expression.DateTimeLiteralExpression;
+import lombok.NoArgsConstructor;
 
 /**
  * <p>
@@ -26,6 +21,7 @@
  * @since 2023-07-07
  */
 @Data
+@NoArgsConstructor
 @EqualsAndHashCode(callSuper = false)
 @ApiModel(value="User瀵硅薄", description="")
 public class User implements Serializable {
@@ -74,5 +70,11 @@
     @ApiModelProperty(value = "鍏宠仈 瑙掕壊id")
     private Integer roleId;
 
-
+    public User(String account, String name, String phone, String email, String info) {
+        this.account = account;
+        this.name = name;
+        this.phone = phone;
+        this.email = email;
+        this.info = info;
+    }
 }
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
index 674166d..d01b0bf 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
@@ -5,6 +5,8 @@
 
 import java.io.Serializable;
 
+import java.util.Map;
+
 /**
  * <p>
  *  鏈嶅姟绫�
@@ -14,6 +16,8 @@
  * @since 2023-07-07
  */
 public interface UserService extends IService<User> {
+//    閫氳繃鐢ㄦ埛id鑾峰彇鐢ㄦ埛淇℃伅
+    Map<String, String> selectUserByUserId(int userId);
 
     User AccordingUsernameSelectAll(String account);
 }
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
index beb4cea..7f6d726 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
@@ -5,7 +5,12 @@
 import com.yuanchu.limslaboratory.mapper.UserMapper;
 import com.yuanchu.limslaboratory.service.UserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Map;
 
 import javax.annotation.Resource;
 
@@ -21,6 +26,13 @@
 public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
 
     @Resource
+    UserMapper userMapper;
+
+    @Override
+    public Map<String, String> selectUserByUserId(int userId) {
+        return userMapper.selectUserByUserId(userId);
+    }
+    @Resource
     private UserMapper mapper;
 
     @Override
diff --git a/user-server/src/main/resources/mapper/UserMapper.xml b/user-server/src/main/resources/mapper/UserMapper.xml
index b18997b..9f0e8b6 100644
--- a/user-server/src/main/resources/mapper/UserMapper.xml
+++ b/user-server/src/main/resources/mapper/UserMapper.xml
@@ -2,4 +2,11 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yuanchu.limslaboratory.mapper.UserMapper">
 
+    <select id="selectUserByUserId" parameterType="int" resultType="Map">
+        select u.account account,u.name uname,u.phone,u.email,u.info,e.byname,e.`name`,e.link_name,e.link_phone
+        from enterprise_user_list el,enterprise e,`user` u
+        where e.id = el.enterprise_id
+        and el.user_id = u.id
+        and u.id = #{userId}
+    </select>
 </mapper>

--
Gitblit v1.9.3