ソースを参照

专利相关接口

Signed-off-by: guoWenHao <2532478980@qq.com>
guoWenHao 8 ヶ月 前
コミット
8672e48731

+ 1 - 1
teacher-common/src/main/java/com/example/constant/MessageConstant.java

@@ -17,5 +17,5 @@ public class MessageConstant {
     public static final String LOGIN_FAILED = "登录失败";
     public static final String UPLOAD_FAILED = "文件上传失败";
     public static final String PASSWORD_EDIT_FAILED = "密码修改失败";
-
+    public static final String Patent_NOT_FOUND = "专利不存在";
 }

+ 30 - 0
teacher-pojo/src/main/java/com/example/dto/PatentDTO.java

@@ -0,0 +1,30 @@
+package com.example.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class PatentDTO implements Serializable {
+    private Long id;
+
+    private Long teacherId;
+    //专利号
+    private String patentNum;
+    //授权号
+    private String authorizationNum;
+    //证书号
+    private String certificateNum;
+
+    //授权公告日
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
+    private LocalDate date;
+}

+ 1 - 1
teacher-pojo/src/main/java/com/example/dto/TeacherDTO.java

@@ -23,7 +23,7 @@ public class TeacherDTO implements Serializable {
 
     private String researchField;
 
-    private List<Patent> patent;
+    //private List<Patent> patent;
 
     private String email;
 

+ 1 - 1
teacher-pojo/src/main/java/com/example/entity/Teacher.java

@@ -30,7 +30,7 @@ public class Teacher implements Serializable {
 
 //    private List<ResearchFiled> researchFiled;
 
-    private List<Patent> patent;
+    //private List<Patent> patent;
 
     private String email;
 

+ 30 - 0
teacher-pojo/src/main/java/com/example/vo/PatentVO.java

@@ -0,0 +1,30 @@
+package com.example.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class PatentVO implements Serializable {
+    private Long id;
+
+    private Long teacherId;
+    //专利号
+    private String patentNum;
+    //授权号
+    private String authorizationNum;
+    //证书号
+    private String certificateNum;
+
+    //授权公告日
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
+    private LocalDate date;
+}

+ 1 - 1
teacher-pojo/src/main/java/com/example/vo/TeacherVO.java

@@ -31,7 +31,7 @@ public class TeacherVO implements Serializable {
 
 //    private List<ResearchFiled> researchFiled;
 
-    private List<Patent> patent;
+   // private List<Patent> patent;
 
     private String email;
 

+ 52 - 0
teacher-serve/src/main/java/com/example/controller/teacher/PatentController.java

@@ -0,0 +1,52 @@
+package com.example.controller.teacher;
+
+import com.example.dto.PatentDTO;
+import com.example.result.Result;
+import com.example.service.PatentService;
+import com.example.vo.PatentVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@Slf4j
+@Api(tags = "老师专利相关接口")
+@RequestMapping("/teacher/patent")
+public class PatentController {
+    @Autowired
+    private PatentService patentService;
+
+    @PostMapping
+    @ApiOperation(value = "老师专利上传")
+    public Result uploadPatent(@RequestBody PatentDTO patentDTO) {
+        log.info("专利上传,{}", patentDTO);
+        patentService.uploadPatent(patentDTO);
+        return Result.success();
+    }
+
+    @PutMapping("/{id}")
+    @ApiOperation(value = "修改指定专利")
+    public Result updatePatent(@RequestBody PatentDTO patentDTO, @PathVariable Long id) {
+        log.info("修改指定专利:{}", id);
+        patentService.updatePatent(patentDTO, id);
+        return Result.success();
+    }
+
+    @GetMapping("/{id}")
+    @ApiOperation(value = "获取指定专利详细信息")
+    public Result<PatentVO> getById(@PathVariable Long id) {
+        log.info("获取指定专利详细信息:{}", id);
+        PatentVO patentVO = patentService.getById(id);
+        return Result.success(patentVO);
+    }
+    @DeleteMapping("/{id}")
+    @ApiOperation(value = "删除指定专利")
+    public Result deleteById(@PathVariable Long id){
+        log.info("删除指定专利:{}",id);
+        patentService.deleteById(id);
+        return Result.success();
+    }
+
+}

+ 38 - 0
teacher-serve/src/main/java/com/example/mapper/PatentMapper.java

@@ -0,0 +1,38 @@
+package com.example.mapper;
+
+import com.example.entity.Patent;
+import org.apache.ibatis.annotations.*;
+
+@Mapper
+public interface PatentMapper {
+    /**
+     * 老师专利信息上传
+     * @param awards
+     */
+    @Insert("insert into teacherteam_system.patent (patent_num, authorization_num, certificate_num, date, teacher_id) " +
+            "values (#{patentNum},#{authorizationNum},#{certificateNum},#{date},#{teacherId});")
+    void uploadPatent(Patent awards);
+
+
+    /**
+     * 修改指定奖项
+     * @param awards
+     */
+    void updatePatent(Patent awards);
+
+    /**
+     * 查询指定奖项
+     *
+     * @param id
+     * @return
+     */
+    @Select("select * from teacherteam_system.patent where id = #{id}")
+    Patent getById(Long id);
+
+    /**
+     * 删除指定奖项
+     * @param id
+     */
+    @Delete("delete from teacherteam_system.patent where id = #{id}")
+    void deleteById(Long id);
+}

+ 18 - 0
teacher-serve/src/main/java/com/example/service/PatentService.java

@@ -0,0 +1,18 @@
+package com.example.service;
+
+import com.example.dto.PatentDTO;
+import com.example.vo.PatentVO;
+
+public interface PatentService {
+    /**
+     * 老师专利上传
+     * @param patentDTO
+     */
+    void uploadPatent(PatentDTO patentDTO);
+
+    void updatePatent(PatentDTO patentDTO, Long id);
+
+    PatentVO getById(Long id);
+
+    void deleteById(Long id);
+}

+ 81 - 0
teacher-serve/src/main/java/com/example/service/impl/PatentServiceImpl.java

@@ -0,0 +1,81 @@
+package com.example.service.impl;
+
+import com.example.constant.MessageConstant;
+import com.example.context.BaseContext;
+import com.example.dto.PatentDTO;
+import com.example.entity.Patent;
+import com.example.exception.AwordsNotFoundException;
+import com.example.mapper.PatentMapper;
+import com.example.mapper.TeacherMapper;
+import com.example.service.PatentService;
+import com.example.service.PatentService;
+import com.example.vo.PatentVO;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class PatentServiceImpl implements PatentService {
+
+    @Autowired
+    private PatentMapper patentMapper;
+    @Autowired
+    private TeacherMapper teacherMapper;
+
+    /**
+     * 老师专利上传
+     *
+     * @param patentDTO
+     */
+    @Override
+    public void uploadPatent(PatentDTO patentDTO) {
+        Patent patent = new Patent();
+        BeanUtils.copyProperties(patentDTO, patent);
+        Long id = BaseContext.getCurrentId();
+        patent.setTeacherId(id);
+        patentMapper.uploadPatent(patent);
+    }
+
+    /**
+     * 老师专利修改
+     *
+     * @param patentDTO
+     * @param id
+     */
+    @Override
+    public void updatePatent(PatentDTO patentDTO, Long id) {
+        Patent patent = new Patent();
+        BeanUtils.copyProperties(patentDTO, patent);
+        patent.setId(id);
+        patentMapper.updatePatent(patent);
+    }
+
+    /**
+     * 获取指定专利详细信息
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public PatentVO getById(Long id) {
+
+        PatentVO patentVO = new PatentVO();
+        Patent patent = patentMapper.getById(id);
+        if(patent == null){
+            throw new AwordsNotFoundException(MessageConstant.Patent_NOT_FOUND);
+        }
+        BeanUtils.copyProperties(patent,patentVO);
+        return patentVO;
+    }
+
+    /**
+     * 删除指定专利
+     *
+     * @param id
+     */
+    @Override
+    public void deleteById(Long id) {
+        patentMapper.deleteById(id);
+    }
+
+}

+ 6 - 6
teacher-serve/src/main/java/com/example/service/impl/TeacherServiceImpl.java

@@ -32,11 +32,11 @@ public class TeacherServiceImpl implements TeacherService {
         //向研究领域插入n条数据
 //        List<ResearchFiled> researchFiled = teacher.getResearchFiled();
         //向专利插入n条数据
-        List<Patent> patents = teacher.getPatent();
+       /* List<Patent> patents = teacher.getPatent();
         if (patents != null && !patents.isEmpty()) {
             patents.forEach(patents1 -> patents1.setTeacherId(teacher.getId()));
             teacherMapper.savePatent(patents);
-        }
+        }*/
     }
 
     @Override
@@ -46,13 +46,13 @@ public class TeacherServiceImpl implements TeacherService {
         teacher.setId(id);
         teacherMapper.updateTeacher(teacher);
         //向专利插入n条数据
-        teacherMapper.deletePatents(teacher.getId());
+      /*  teacherMapper.deletePatents(teacher.getId());
         List<Patent> patents = teacher.getPatent();
         if (patents != null && !patents.isEmpty()) {
             patents.forEach(patents1 -> patents1.setTeacherId(teacher.getId()));
 
             teacherMapper.savePatent(patents);
-        }
+        }*/
     }
 
     /**
@@ -63,12 +63,12 @@ public class TeacherServiceImpl implements TeacherService {
     @Override
     public TeacherVO getById(Long id) {
         //查询专利
-        List<Patent> patents = teacherMapper.getPatent(id);
+        //List<Patent> patents = teacherMapper.getPatent(id);
         //查询老师信息
         Teacher teacher = teacherMapper.getTeacher(id);
         TeacherVO teacherVO = new TeacherVO();
         BeanUtils.copyProperties(teacher, teacherVO);
-        teacherVO.setPatent(patents);
+        //teacherVO.setPatent(patents);
         return teacherVO;
     }
 

+ 25 - 0
teacher-serve/src/main/resources/mapper/PatentMapper.xml

@@ -0,0 +1,25 @@
+<?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.example.mapper.PatentMapper">
+
+
+    <update id="updatePatent">
+        update teacherteam_system.patent
+        <set>
+            <if test="patentNum != null">
+                patent_num =#{patentNum},
+            </if>
+            <if test="authorizationNum != null">
+                authorization_num =#{authorizationNum},
+            </if>
+            <if test="certificateNum != null">
+                certificate_num =#{certificateNum},
+            </if>
+            <if test="date != null">
+                date =#{date},
+            </if>
+        </set>
+        where id = #{id}
+    </update>
+</mapper>