From 2eb8407174662a82c7e5880da808b4b2484e9317 Mon Sep 17 00:00:00 2001
From: gaoaoy <1042166043@qq.com>
Date: 星期四, 29 二月 2024 10:36:50 +0800
Subject: [PATCH] 5 实验室管理(场所或设施)

---
 system-run/src/main/resources/application-dev.yml                                 |    4 
 cnas-server/src/main/java/com/yuanchu/mom/service/impl/LaboratoryServiceImpl.java |   53 ++++++++++
 cnas-server/src/main/resources/mapper/LaboratoryMapper.xml                        |   26 +++++
 cnas-server/src/main/java/com/yuanchu/mom/service/LaboratoryService.java          |   22 ++++
 cnas-server/src/main/java/com/yuanchu/mom/mapper/LaboratoryMapper.java            |   16 +++
 cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java |    2 
 cnas-server/src/main/java/com/yuanchu/mom/pojo/Laboratory.java                    |   66 +++++++++++++
 cnas-server/src/main/java/com/yuanchu/mom/controller/LaboratoryController.java    |   56 +++++++++++
 8 files changed, 241 insertions(+), 4 deletions(-)

diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
index 7ab8351..84dcc00 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
@@ -1,7 +1,5 @@
 package com.yuanchu.mom.controller;
 
-
-
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.mom.dto.PageTestObjectDto;
 import com.yuanchu.mom.pojo.StructureItemParameter;
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/LaboratoryController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/LaboratoryController.java
new file mode 100644
index 0000000..dfbecce
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/LaboratoryController.java
@@ -0,0 +1,56 @@
+package com.yuanchu.mom.controller;
+
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.mom.pojo.Laboratory;
+import com.yuanchu.mom.service.LaboratoryService;
+import com.yuanchu.mom.utils.JackSonUtil;
+import com.yuanchu.mom.vo.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * 瀹為獙瀹ょ鐞�(LaboratoryController)琛ㄦ帶鍒跺眰
+ */
+@Api(tags = "鍦烘墍鎴栬鏂�")
+@AllArgsConstructor
+@RestController
+@RequestMapping("/laboratoryScope")
+public class LaboratoryController {
+
+    private LaboratoryService laboratoryService;
+
+    @ApiOperation(value = "鏌ヨ瀹為獙瀹ょ鐞嗗垪琛�")
+    @PostMapping("/selectItemParameter")
+    public Result selectItemParameter(@RequestBody Map<String, Object> data) throws Exception {
+        Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
+        Laboratory itemParameter = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), Laboratory.class);
+        return Result.success(laboratoryService.selectItemParameter(page, itemParameter));
+    }
+
+    @ApiOperation(value = "娣诲姞瀹為獙瀹ゅ弬鏁�")
+    @PostMapping("/addParameter")
+    public Result addParameter(@RequestBody Laboratory itemParameter) {
+        return Result.success(laboratoryService.addParameter(itemParameter));
+    }
+
+    @ApiOperation(value = "鍒犻櫎瀹為獙瀹ゅ弬鏁�")
+    @PostMapping("/delParameter")
+    public Result<?> delParameter(Integer id) {
+        return Result.success(laboratoryService.delParameter(id));
+    }
+
+    @ApiOperation(value = "淇敼瀹為獙瀹ゅ弬鏁�")
+    @PostMapping("/upParameter")
+    public Result<?> upParameter(@RequestBody Laboratory itemParameter) {
+        return Result.success(laboratoryService.upParameter(itemParameter));
+    }
+}
+
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/mapper/LaboratoryMapper.java b/cnas-server/src/main/java/com/yuanchu/mom/mapper/LaboratoryMapper.java
new file mode 100644
index 0000000..768de97
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/mapper/LaboratoryMapper.java
@@ -0,0 +1,16 @@
+package com.yuanchu.mom.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.mom.pojo.Laboratory;
+
+/**
+ * 瀹為獙瀹ょ鐞�(Laboratory)琛ㄦ暟鎹簱璁块棶灞�
+ */
+public interface LaboratoryMapper extends BaseMapper<Laboratory> {
+
+    IPage<Laboratory> selectItemParameter(Page page, QueryWrapper<Laboratory> ew);
+}
+
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/pojo/Laboratory.java b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Laboratory.java
new file mode 100644
index 0000000..17e8058
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Laboratory.java
@@ -0,0 +1,66 @@
+package com.yuanchu.mom.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yuanchu.mom.annotation.ValueTableShow;
+import com.yuanchu.mom.common.OrderBy;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 瀹為獙瀹ょ鐞�(Laboratory)琛ㄥ璞�
+ */
+@TableName(value = "laboratory")
+@Data
+public class Laboratory extends OrderBy implements Serializable {
+    @ApiModelProperty(value = "涓婚敭")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    @ValueTableShow(2)
+    @ApiModelProperty(value = "瀹為獙瀹ゅ悕绉�")
+    private String laboratoryName;
+
+    @ValueTableShow(3)
+    @ApiModelProperty(value = "瀹為獙瀹ょ紪鐮�")
+    private String laboratoryNumber;
+
+    @ValueTableShow(4)
+    @ApiModelProperty(value = "璐熻矗浜虹數璇�")
+    private String phoneNumber;
+
+    @ValueTableShow(5)
+    @ApiModelProperty(value = "璐熻矗浜�")
+    @TableField(fill = FieldFill.INSERT)
+    private String head;
+
+    @ValueTableShow(6)
+    @ApiModelProperty(value = "鍦板潃")
+    private String address;
+
+    @ApiModelProperty(value = "鍒涘缓浜�")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    @ValueTableShow(7)
+    @ApiModelProperty(value = "鍒涘缓浜�")
+    private String createUserName;
+
+    @ApiModelProperty(value = "淇敼浜篿d")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    @ValueTableShow(8)
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime updateTime;
+}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/LaboratoryService.java b/cnas-server/src/main/java/com/yuanchu/mom/service/LaboratoryService.java
new file mode 100644
index 0000000..07d903a
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/LaboratoryService.java
@@ -0,0 +1,22 @@
+package com.yuanchu.mom.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.mom.pojo.Laboratory;
+
+import java.util.Map;
+
+/**
+ * 瀹為獙瀹ょ鐞�(Laboratory)琛ㄦ湇鍔℃帴鍙�
+ */
+public interface LaboratoryService extends IService<Laboratory> {
+
+    Map<String, Object> selectItemParameter(Page page, Laboratory itemParameter);
+
+    int addParameter(Laboratory itemParameter);
+
+    int delParameter(Integer id);
+
+    int upParameter(Laboratory itemParameter);
+}
+
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/LaboratoryServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/LaboratoryServiceImpl.java
new file mode 100644
index 0000000..a62420a
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/LaboratoryServiceImpl.java
@@ -0,0 +1,53 @@
+package com.yuanchu.mom.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.mom.common.GetLook;
+import com.yuanchu.mom.common.PrintChina;
+import com.yuanchu.mom.mapper.LaboratoryMapper;
+import com.yuanchu.mom.pojo.Laboratory;
+import com.yuanchu.mom.service.LaboratoryService;
+import com.yuanchu.mom.utils.QueryWrappers;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 瀹為獙瀹ょ鐞�(Laboratory)琛ㄦ湇鍔″疄鐜扮被
+ */
+@Service
+@AllArgsConstructor
+public class LaboratoryServiceImpl extends ServiceImpl<LaboratoryMapper, Laboratory> implements LaboratoryService {
+
+    private GetLook getLook;
+
+    private LaboratoryMapper laboratoryMapper;
+
+    @Override
+    public Map<String, Object> selectItemParameter(Page page, Laboratory itemParameter) {
+        Map<String, Object> map = new HashMap<>();
+        map.put("head", PrintChina.printChina(Laboratory.class));
+        Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectItemParameter");
+        if(map1.get("look")==1) itemParameter.setCreateUser(map1.get("userId"));
+        map.put("body", laboratoryMapper.selectItemParameter(page, QueryWrappers.queryWrappers(itemParameter)));
+        return map;
+    }
+
+    @Override
+    public int addParameter(Laboratory itemParameter) {
+        return laboratoryMapper.insert(itemParameter);
+    }
+
+    @Override
+    public int delParameter(Integer id) {
+        return laboratoryMapper.deleteById(id);
+    }
+
+    @Override
+    public int upParameter(Laboratory itemParameter) {
+        return laboratoryMapper.updateById(itemParameter);
+    }
+}
+
diff --git a/cnas-server/src/main/resources/mapper/LaboratoryMapper.xml b/cnas-server/src/main/resources/mapper/LaboratoryMapper.xml
new file mode 100644
index 0000000..d4da968
--- /dev/null
+++ b/cnas-server/src/main/resources/mapper/LaboratoryMapper.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yuanchu.mom.mapper.LaboratoryMapper">
+
+
+    <select id="selectItemParameter" resultType="com.yuanchu.mom.pojo.Laboratory">
+        select * from
+        (
+        select l.id,
+        laboratory_name,
+        laboratory_number,
+        phone_number,
+        head,
+        address,
+        u1.name create_user_name,
+        l.create_time
+        from laboratory l
+        left join user u1 on l.create_user = u1.id
+        ) a
+        <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
+            ${ew.customSqlSegment}
+        </if>
+    </select>
+</mapper>
diff --git a/system-run/src/main/resources/application-dev.yml b/system-run/src/main/resources/application-dev.yml
index 81460b6..751c503 100644
--- a/system-run/src/main/resources/application-dev.yml
+++ b/system-run/src/main/resources/application-dev.yml
@@ -34,7 +34,7 @@
   datasource:
     type: com.alibaba.druid.pool.DruidDataSource
     driverClassName: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://127.0.0.1:3306/center-lims?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
+    url: jdbc:mysql://192.168.0.134:3306/center-lims?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
     username: root
     password: 123456
     druid:
@@ -59,7 +59,7 @@
     # redis鏁版嵁搴撶储寮�(榛樿涓�0)锛屾垜浠娇鐢ㄧ储寮曚负3鐨勬暟鎹簱锛岄伩鍏嶅拰鍏朵粬鏁版嵁搴撳啿绐�
     database: 0
     # redis鏈嶅姟鍣ㄥ湴鍧�锛堥粯璁や负localhost锛�
-    host: 127.0.0.1
+    host: 192.168.0.134
     # redis绔彛锛堥粯璁や负6379锛�
     port: 6379
     # redis璁块棶瀵嗙爜锛堥粯璁や负绌猴級

--
Gitblit v1.9.3