From 805248000274ad1bd010ec4a7ed6b2821be87d23 Mon Sep 17 00:00:00 2001
From: “zhuo” <“zhuo@itcast.cn”>
Date: 星期四, 10 八月 2023 17:58:32 +0800
Subject: [PATCH] 8-10提交代码

---
 cnas-server/src/main/java/com/yuanchu/limslaboratory/service/impl/CnasAnnualPlanServiceImpl.java |   29 +++++++
 inspection-server/src/main/resources/mapper/ReportMapper.xml                                     |    2 
 cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/CnasAnnualPlanVo.java               |   17 ++++
 cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/CnasAnnualPlan.java                    |   87 +++++++++------------
 cnas-server/src/main/java/com/yuanchu/limslaboratory/mapper/CnasAnnualPlanMapper.java            |   10 ++
 cnas-server/src/main/java/com/yuanchu/limslaboratory/service/CnasAnnualPlanService.java          |   10 ++
 cnas-server/src/main/resources/mapper/CnasAnnualPlanMapper.xml                                   |   26 ++++++
 cnas-server/pom.xml                                                                              |    5 +
 cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java    |   44 +++++++++-
 9 files changed, 173 insertions(+), 57 deletions(-)

diff --git a/cnas-server/pom.xml b/cnas-server/pom.xml
index da42c64..3cd7c42 100644
--- a/cnas-server/pom.xml
+++ b/cnas-server/pom.xml
@@ -24,6 +24,11 @@
             <artifactId>framework</artifactId>
             <version>${project.parent.version}</version>
         </dependency>
+        <dependency>
+            <groupId>cn.hutool</groupId>
+            <artifactId>hutool-all</artifactId>
+            <version>5.8.12</version>
+        </dependency>
     </dependencies>
 
 
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java
index 0095dcc..08f6654 100644
--- a/cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java
@@ -1,11 +1,23 @@
 package com.yuanchu.limslaboratory.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
+import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
 import com.yuanchu.limslaboratory.service.CnasAnnualPlanService;
 import com.yuanchu.limslaboratory.vo.Result;
-import org.springframework.web.bind.annotation.RequestMapping;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.stereotype.Controller;
 
 import javax.annotation.Resource;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * <p>
@@ -15,16 +27,38 @@
  * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
  * @since 2023-08-10 11:50:11
  */
-@Controller
+@Api(tags = "CNAS绠$悊-->瀹℃牳骞村害璁″垝")
+@RestController
 @RequestMapping("/cnasAnnualPlan")
 public class CnasAnnualPlanController {
 
     @Resource
     private CnasAnnualPlanService cnasAnnualPlanService;
 
+    @ApiOperation(value = "鏌ヨ瀹℃煡璁″垝")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "page", value = "鍒濆椤�", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "pageSize", value = "姣忎竴椤垫暟閲�", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "beginTime", value = "妫�楠屽紑濮嬫椂闂�", dataTypeClass = Date.class),
+            @ApiImplicitParam(name = "endTime", value = "妫�楠岀粨鏉熸椂闂�", dataTypeClass = Date.class),
+    })
+    @GetMapping("/selectAllList")
+    public Result selectAllList(Integer page, Integer pageSize, @DateTimeFormat(pattern = "yyyy-MM-dd") Date beginTime, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
+        IPage<CnasAnnualPlanVo> reportPage = cnasAnnualPlanService.selectAllList(new Page(page, pageSize), beginTime, endTime);
+        Map<String, Object> map = new HashMap<>();
+        map.put("total", reportPage.getTotal());
+        map.put("row", reportPage.getRecords());
+        return Result.success(map);
+    }
 
-//    public Result selectAll() {
-//
-//    }
+    @ApiOperation(value = "鏂板瀹℃煡璁″垝")
+    @PostMapping("/addCnasAnnualPlan")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "CnasAnnualPlan", value = "瀹℃煡瀵硅薄", dataTypeClass = Integer.class, required = true)
+    })
+    public Result addCnasAnnualPlan(@RequestBody CnasAnnualPlan cnasAnnualPlan) {
+        cnasAnnualPlanService.save(cnasAnnualPlan);
+        return Result.success();
+    }
 
 }
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/mapper/CnasAnnualPlanMapper.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/mapper/CnasAnnualPlanMapper.java
index bf89357..1ab268a 100644
--- a/cnas-server/src/main/java/com/yuanchu/limslaboratory/mapper/CnasAnnualPlanMapper.java
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/mapper/CnasAnnualPlanMapper.java
@@ -1,7 +1,12 @@
 package com.yuanchu.limslaboratory.mapper;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
+
+import java.util.Date;
 
 /**
  * <p>
@@ -13,4 +18,9 @@
  */
 public interface CnasAnnualPlanMapper extends BaseMapper<CnasAnnualPlan> {
 
+    /**
+     * 鏌ヨ瀹℃牳璁″垝
+     * @return
+     */
+    IPage<CnasAnnualPlanVo> selectAllList(Page<Object> objectPage, Date beginTime, Date endTime);
 }
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/CnasAnnualPlan.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/CnasAnnualPlan.java
index 5c81917..6c55a83 100644
--- a/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/CnasAnnualPlan.java
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/CnasAnnualPlan.java
@@ -1,10 +1,15 @@
 package com.yuanchu.limslaboratory.pojo;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+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.JsonSerialize;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -16,87 +21,67 @@
  * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
  * @since 2023-08-10 11:50:11
  */
-@Getter
-@Setter
+@Data
 @TableName("cnas_annual_plan")
 public class CnasAnnualPlan implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
-    /**
-     * 涓婚敭id
-     */
     @TableId(value = "id", type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭id")
     private Integer id;
 
-    /**
-     * 鎬ц川,0:鍐呭,1:绠$悊璇勫
-     */
+    @ApiModelProperty(value = "鎬ц川,0:鍐呭,1:绠$悊璇勫")
     private Integer auditType;
 
-    /**
-     * 閮ㄩ棬
-     */
+    @ApiModelProperty(value = "閮ㄩ棬")
     private String department;
 
-    /**
-     * 瀹℃牳鐩殑
-     */
+    @ApiModelProperty(value = "瀹℃牳鐩殑")
     private String auditPurpose;
 
-    /**
-     * 瀹℃牳缁勯暱
-     */
+    @ApiModelProperty(value = "瀹℃牳缁勯暱")
     private String auditLeader;
 
-    /**
-     * 瀹℃牳缁勫憳
-     */
+    @ApiModelProperty(value = "瀹℃牳缁勫憳")
     private String auditEmp;
 
-    /**
-     * 瀹℃牳渚濇嵁
-     */
+    @ApiModelProperty(value = "瀹℃牳渚濇嵁")
     private String auditPursuant;
 
-    /**
-     * 瀹℃牳鑼冨洿
-     */
+    @ApiModelProperty(value = "瀹℃牳鑼冨洿")
     private String auditScope;
 
-    /**
-     * 缂栧埗浜哄憳
-     */
+    @ApiModelProperty(value = "缂栧埗浜哄憳")
     private String writeUser;
 
-    /**
-     * 褰曞叆浜哄憳
-     */
+    @ApiModelProperty(value = "褰曞叆浜哄憳")
     private String keyboarder;
 
-    /**
-     * 璁″垝鏃堕棿
-     */
-    private LocalDateTime planTime;
+    @ApiModelProperty(value = "璁″垝鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date planTime;
 
-    /**
-     * 涓嶅悎鏍奸」鐩暟
-     */
+    @ApiModelProperty(value = "涓嶅悎鏍奸」鐩暟")
     private Integer count;
 
-    /**
-     * 瀹℃牳鐘舵��,0:鍗冲皢寮�濮�,1:瀹屾垚,2:閫炬湡
-     */
+    @ApiModelProperty(value = "瀹℃牳鐘舵��,0:鍗冲皢寮�濮�,1:瀹屾垚,2:閫炬湡")
     private Integer auditState;
 
+    @TableLogic(value = "1", delval = "0")
+    @ApiModelProperty(value = "閫昏緫鍒犻櫎 姝e父>=1,鍒犻櫎<=0", hidden = true)
     private Integer state;
 
-    /**
-     * 瀹℃牳鏃ユ湡
-     */
-    private LocalDateTime auditTime;
+    @ApiModelProperty(value = "瀹℃牳鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date auditTime;
 
-    private LocalDateTime createTime;
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "缂栧埗鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date createTime;
 
-    private LocalDateTime updateTime;
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
 }
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/CnasAnnualPlanVo.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/CnasAnnualPlanVo.java
new file mode 100644
index 0000000..80840ea
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/CnasAnnualPlanVo.java
@@ -0,0 +1,17 @@
+package com.yuanchu.limslaboratory.pojo.vo;
+
+import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class CnasAnnualPlanVo extends CnasAnnualPlan implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty(value = "骞翠唤")
+    private Integer year;
+
+    @ApiModelProperty(value = "鏈堜唤")
+    private Integer month;
+}
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/CnasAnnualPlanService.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/CnasAnnualPlanService.java
index 1a5e0f3..17c8aea 100644
--- a/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/CnasAnnualPlanService.java
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/CnasAnnualPlanService.java
@@ -1,7 +1,12 @@
 package com.yuanchu.limslaboratory.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
+
+import java.util.Date;
 
 /**
  * <p>
@@ -13,4 +18,9 @@
  */
 public interface CnasAnnualPlanService extends IService<CnasAnnualPlan> {
 
+    /**
+     * 鏌ヨ瀹℃牳璁″垝
+     * @return
+     */
+    IPage<CnasAnnualPlanVo> selectAllList(Page<Object> objectPage, Date beginTime, Date endTime);
 }
diff --git a/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/impl/CnasAnnualPlanServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/impl/CnasAnnualPlanServiceImpl.java
index d763642..c797363 100644
--- a/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/impl/CnasAnnualPlanServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/limslaboratory/service/impl/CnasAnnualPlanServiceImpl.java
@@ -1,10 +1,19 @@
 package com.yuanchu.limslaboratory.service.impl;
 
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
 import com.yuanchu.limslaboratory.mapper.CnasAnnualPlanMapper;
+import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
 import com.yuanchu.limslaboratory.service.CnasAnnualPlanService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
 
 /**
  * <p>
@@ -17,4 +26,24 @@
 @Service
 public class CnasAnnualPlanServiceImpl extends ServiceImpl<CnasAnnualPlanMapper, CnasAnnualPlan> implements CnasAnnualPlanService {
 
+    @Resource
+    private CnasAnnualPlanMapper cnasAnnualPlanMapper;
+
+    /**
+     * 鏌ヨ瀹℃牳璁″垝
+     * @return
+     */
+    @Override
+    public IPage<CnasAnnualPlanVo> selectAllList(Page<Object> objectPage, Date beginTime, Date endTime) {
+        IPage<CnasAnnualPlanVo> page = cnasAnnualPlanMapper.selectAllList(objectPage, beginTime, endTime);
+        page.getRecords().forEach(cnasAnnualPlanVo -> {
+            //鑾峰彇璁″垝鏃堕棿
+            Date time = cnasAnnualPlanVo.getPlanTime();
+            //娣诲姞骞�
+            cnasAnnualPlanVo.setYear(DateUtil.year(time));
+            //娣诲姞鏈�
+            cnasAnnualPlanVo.setMonth(DateUtil.month(time) + 1);
+        });
+        return page;
+    }
 }
diff --git a/cnas-server/src/main/resources/mapper/CnasAnnualPlanMapper.xml b/cnas-server/src/main/resources/mapper/CnasAnnualPlanMapper.xml
index cd9b447..0b9e5f3 100644
--- a/cnas-server/src/main/resources/mapper/CnasAnnualPlanMapper.xml
+++ b/cnas-server/src/main/resources/mapper/CnasAnnualPlanMapper.xml
@@ -1,5 +1,29 @@
 <?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.limslaboratory.mapper.CnasAnnualPlanMapper">
-
+    <!--鏌ヨ瀹℃牳璁″垝-->
+    <select id="selectAllList" resultType="com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo">
+        select id,
+               audit_type,
+               department,
+               audit_purpose,
+               audit_leader,
+               audit_emp,
+               audit_pursuant,
+               audit_scope,
+               write_user,
+               keyboarder,
+               plan_time,
+               count,
+               audit_state,
+               state,
+               audit_time,
+               create_time,
+               update_time
+        from cnas_annual_plan
+        where state = 1
+          <if test="beginTime != null and endTime != null">
+              and plan_time between #{beginTime} and #{endTime}
+          </if>
+    </select>
 </mapper>
diff --git a/inspection-server/src/main/resources/mapper/ReportMapper.xml b/inspection-server/src/main/resources/mapper/ReportMapper.xml
index 2beac5c..7983e64 100644
--- a/inspection-server/src/main/resources/mapper/ReportMapper.xml
+++ b/inspection-server/src/main/resources/mapper/ReportMapper.xml
@@ -15,6 +15,7 @@
         join user u on i.user_id = u.id
         join inspection_material im on i.id = im.inspection_id
         <where>
+            r.state = 1
             <if test="status != null">
                 and r.status = #{status}
             </if>
@@ -39,6 +40,7 @@
         join inspection i on r.inspection_id = i.id
         join inspection_material im on i.id = im.inspection_id
         <where>
+            r.state = 1
             <if test="status == null">
                 and r.status in (0, 1)
             </if>

--
Gitblit v1.9.3