From 924d018e6e6f15effbd272cead5dff67cd3b93a5 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期三, 23 八月 2023 16:22:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineChartVO.java | 17
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/StatisticsDataVo.java | 18
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/PlanService.java | 2
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/HomeServiceImpl.java | 249 ++++++++++++
inspection-server/src/main/resources/mapper/PlanMapper.xml | 4
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/IprInfo.java | 19 +
inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml | 151 +++++++
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java | 6
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java | 8
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java | 10
inspection-server/src/main/resources/mapper/InspectionMapper.xml | 137 +++++++
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/QualificationRateStatisticsMapper.java | 9
inspection-server/src/main/resources/mapper/InspectionProductMapper.xml | 25 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java | 8
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java | 14
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/HomeService.java | 36 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionProductMapper.java | 7
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/QualificationRateStatisticsService.java | 2
standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductModelService.java | 6
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SeriesDto.java | 10
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectQualificationRateDto.java | 4
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java | 8
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/QualificationRateStatisticsServiceImpl.java | 153 +++++++-
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java | 44 ++
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ImInfo.java | 35 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java | 8
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineSeriesVO.java | 16
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java | 35 +
laboratory-server/src/main/resources/mapper/InstrumentMapper.xml | 18
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/HomeController.java | 42 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectProjectByCodeAndNameDto.java | 25 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/ProjectNumVo.java | 4
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductModelServiceImpl.java | 5
33 files changed, 1,019 insertions(+), 116 deletions(-)
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/HomeController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/HomeController.java
index 04a96f4..72c98df 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/HomeController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/HomeController.java
@@ -1,19 +1,21 @@
package com.yuanchu.limslaboratory.controller;
-import com.yuanchu.limslaboratory.pojo.ProjectNum;
+import com.yuanchu.limslaboratory.pojo.vo.ProjectNumVo;
+import com.yuanchu.limslaboratory.pojo.vo.StatisticsDataVo;
import com.yuanchu.limslaboratory.service.HomeService;
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 org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
/**
* 棣栭〉
@@ -28,10 +30,40 @@
@Resource
HomeService homeService;
- @ApiOperation("璁$畻妫�楠屼笌鏈楠岀殑鍗曞瓙涓庨」鐩殑鏁伴噺鎺ュ彛")
+ @ApiOperation("璁$畻妫�楠屼笌鏈楠岀殑鍗曞瓙涓庨」鐩殑鏁伴噺")
@GetMapping("/checkProjectNum")
public Result checkProjectNum() {
- ProjectNum projectNum=homeService.checkProjectNum();
- return Result.success(projectNum);
+ ProjectNumVo projectNumVo =homeService.checkProjectNum();
+ return Result.success(projectNumVo);
+ }
+
+ @ApiOperation("宸叉楠宼op3")
+ @GetMapping("/checktop3")
+ public Result checktop3() {
+ List<Map<String, Object>> checktop3s =homeService.checktop3();
+ return Result.success(checktop3s);
+ }
+
+ @ApiOperation("鏈楠宼op4")
+ @GetMapping("/unchecktop4")
+ public Result unchecktop4() {
+ List<Map<String, Object>> unchecktop4s =homeService.unchecktop4();
+ return Result.success(unchecktop4s);
+ }
+
+ @ApiOperation("璁$畻鍘熸潗鏂欎笌鎴愬搧鐨勫悎鏍肩巼")
+ @GetMapping("/qualified")
+ public Result qualified() {
+ StatisticsDataVo statisticsData =homeService.qualified();
+ return Result.success(statisticsData);
+ }
+
+ @ApiOperation("缁熻")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "type", value = "1:鏈懆;2:鏈湀;3:鏈勾", dataTypeClass = Integer.class, required = true)
+ })
+ @GetMapping("/turno")
+ public Result turno(Integer type) {
+ return Result.success(homeService.turno(type));
}
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
index 321f720..29ed397 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
@@ -110,10 +110,10 @@
}
@ApiOperation(value = "淇濆瓨妫�楠岄」鐩矗浠讳汉")
- @ApiImplicitParams(value = {
- @ApiImplicitParam(name = "id", value = "妫�楠屽崟椤圭洰id", dataTypeClass = Integer.class, required = true),
- @ApiImplicitParam(name = "userProId", value = "璐d换浜篿d", dataTypeClass = Integer.class, required = true)
- })
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "id", value = "妫�楠屽崟椤圭洰id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "userProId", value = "璐d换浜篿d", dataTypeClass = Integer.class, required = true)
+ })
@GetMapping("/chooseUseProId")
public Result chooseUseProId(Integer id,Integer userProId) {
return Result.success(inspectionService.chooseUseProId(id,userProId));
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java
index 4f3c981..53e8c38 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java
@@ -32,19 +32,27 @@
@ApiOperation("鏌ヨ妫�楠屾牱鍝佸悎鏍肩巼缁熻")
@GetMapping("/getTestSampleStatistics")
public Result<?> getTestSampleStatistics(SelectQualificationRateDto dto){
+ System.out.println("getTestSampleStatistics______________>"+dto);
return Result.success(service.getTestSampleStatistics(dto));
}
@ApiOperation("鏌ヨ渚涘簲鍟嗕笉鍚堟牸缁熻娆℃暟")
@GetMapping("/getSupplierNoPassStatistics")
public Result<?> getSupplierNoPassStatistics(SelectQualificationRateDto dto){
+ System.out.println("getSupplierNoPassStatistics++++++++++++++++>"+dto);
return Result.success(service.getSupplierNoPassStatistics(dto));
}
@ApiOperation("鏌ヨ涓嶅悎鏍奸」鐩粺璁�")
@GetMapping("/getNoPassProjectStatistics")
public Result<?> getNoPassProjectStatistics(SelectQualificationRateDto dto){
+ System.out.println("getNoPassProjectStatistics===============>"+dto);
return Result.success(service.getNoPassProjectStatistics(dto));
}
+ @ApiOperation("鑾峰彇鏍峰搧鍚嶇О")
+ @GetMapping("/getSampleOptions")
+ public Result<?> getSampleOptions(){
+ return Result.success(service.getSampleOptions());
+ }
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java
index 5ae9960..adcb5dd 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.Inspection;
+
+import java.util.List;
import java.util.Map;
/**
@@ -28,5 +30,47 @@
//璁$畻鏈楠岀殑鏁伴噺
Integer seleCountUnIns();
+
+ //鑾峰彇妫�楠屽崟鎬绘暟
+ Integer getcount();
+
+ //鑾峰彇妫�楠岀粨璁�,妫�楠屾暟閲�
+ List<Map<String, Object>> getResultNum();
+
+ //璁$畻鍘熸潗鏂欑殑鍚堟牸鐜�
+ Long qualified(Integer b);
+
+ //璁$畻鍘熸潗鏂欐楠屽崟鎬绘暟
+ Integer getallmater();
+
+ //璁$畻鎴愬搧妫�楠屽崟鎬绘暟
+ Integer getallfin();
+
+ //璁$畻鍘熸潗鏂欏悎鏍肩巼
+ Long qualifiedfin(Integer i);
+
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欐楠屾暟閲�
+ Integer getMaterByDay(String time);
+
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧妫�楠屾暟閲�
+ Integer getFinByDay(String time);
+
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欏悎鏍兼暟閲�
+ Long getOkMaterByDay(String time);
+
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧鍚堟牸鏁伴噺
+ Long getOkFinByDay(String time);
+
+ //鏌ヨ璇ユ湀鐨勫師鏉愭枡妫�楠屾暟閲�
+ Integer getMaterByMonth(String monthofYear);
+
+ //鏌ヨ璇ユ湀鐨勬垚鍝佹楠屾暟閲�
+ Integer getFinByMonth(String monthofYear);
+
+ //鏌ヨ璇ユ湀鐨勫師鏉愭枡鍚堟牸鐜�
+ Long getOkMaterByMonth(String monthofYear);
+
+ //鏌ヨ璇ユ湀鐨勬垚鍝佸悎鏍肩巼
+ Long getOkFinByMonth(String monthofYear);
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionProductMapper.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionProductMapper.java
index 85a64d6..70b37f2 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionProductMapper.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionProductMapper.java
@@ -4,6 +4,7 @@
import com.yuanchu.limslaboratory.pojo.InspectionProduct;
import java.util.List;
+import java.util.Map;
/**
* 鐢宠鍗曚笅鐗╂枡涓殑椤圭洰(InspectionProduct)琛ㄦ暟鎹簱璁块棶灞�
@@ -13,8 +14,7 @@
*/
public interface InspectionProductMapper extends BaseMapper<InspectionProduct> {
- //鏍规嵁椤圭洰id灏嗗凡鏈夌殑妫�楠岀粨璁烘敼涓簄ull
- void upda(Integer id);
+
//鏍规嵁妫�楠屽崟id鏌ヨ妫�楠岄」鐩殑妫�楠岀粨鏋�
List<Integer> getresult(Integer id);
@@ -27,5 +27,8 @@
//璁$畻鏈楠岄」鐩暟閲�
Integer seleCountUnInspro();
+
+ //妫�楠岄」鐩�,璁惧,妫�楠屽紑濮嬫椂闂�,鎵ц浜�,妫�楠岀粨鏉熸椂闂�
+ List<Map<String, Object>> getResultNum();
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/QualificationRateStatisticsMapper.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/QualificationRateStatisticsMapper.java
index 590dc28..8e2eecb 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/QualificationRateStatisticsMapper.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/QualificationRateStatisticsMapper.java
@@ -1,6 +1,8 @@
package com.yuanchu.limslaboratory.mapper;
+import com.yuanchu.limslaboratory.pojo.Dto.SelectProjectByCodeAndNameDto;
import com.yuanchu.limslaboratory.pojo.Dto.SelectQualificationRateDto;
+import com.yuanchu.limslaboratory.pojo.ImInfo;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@@ -18,5 +20,12 @@
@MapKey("id")
List<Map<String, Object>>selectSupplierByCondition(@Param("dto") SelectQualificationRateDto dto);
+ List<ImInfo>selectProjectionsByCondition(@Param("dto")SelectQualificationRateDto dto);
+ List<ImInfo>selectProjection(@Param("list") List<SelectProjectByCodeAndNameDto> list,@Param("dto")SelectQualificationRateDto dto);
+
+ @MapKey("id")
+ List<Map<String, Object>> selectTestSamp(@Param("dto") SelectQualificationRateDto dto);
+
+ List<Map<String, Object> >getSampleOptions();
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectProjectByCodeAndNameDto.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectProjectByCodeAndNameDto.java
new file mode 100644
index 0000000..94e1cb4
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectProjectByCodeAndNameDto.java
@@ -0,0 +1,25 @@
+package com.yuanchu.limslaboratory.pojo.Dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/22
+ */
+@Data
+public class SelectProjectByCodeAndNameDto implements Serializable {
+
+ private String code;
+
+ private String name;
+
+ public SelectProjectByCodeAndNameDto() {
+ }
+
+ public SelectProjectByCodeAndNameDto(String code, String name) {
+ this.code = code;
+ this.name = name;
+ }
+}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectQualificationRateDto.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectQualificationRateDto.java
index 29d0c71..5281dbe 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectQualificationRateDto.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SelectQualificationRateDto.java
@@ -48,5 +48,9 @@
@ApiModelProperty(value = "渚涘簲鍟�")
private String supplier;
+ @ApiModelProperty(value = "鏍峰搧")
+ private String sample;
+ @ApiModelProperty(value = "缂栫爜")
+ private String code;
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SeriesDto.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SeriesDto.java
index 1474065..ef76384 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SeriesDto.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/Dto/SeriesDto.java
@@ -13,20 +13,20 @@
public class SeriesDto implements Serializable {
private String name;
- private List<Long> data;
+ private List<Double> data;
private String type;
- private String stack;
+ //private String stack;
- public SeriesDto(String name, List<Long> data) {
+ public SeriesDto(String name, List<Double> data) {
this.name = name;
this.data = data;
this.type = "bar";
- this.stack = "x";
+ //this.stack = "x";
}
public SeriesDto(String name) {
this.name = name;
this.type = "bar";
- this.stack = "x";
+ //this.stack = "x";
}
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ImInfo.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ImInfo.java
new file mode 100644
index 0000000..18819a8
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ImInfo.java
@@ -0,0 +1,35 @@
+package com.yuanchu.limslaboratory.pojo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/22
+ */
+@Data
+public class ImInfo implements Serializable {
+
+ private Long imId;
+
+ private String imName;
+
+ private String iCode;
+
+ private Integer inspectionStatus;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date startTime;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ private Date endTime;
+
+ private List<IprInfo>iprInfos;
+}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
index 55311dc..134e029 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
@@ -73,17 +73,13 @@
**/
private Integer state;
- /**
- * ${column.comment}
- **/
+
@TableField(fill = FieldFill.INSERT)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date createTime;
- /**
- * ${column.comment}
- **/
+
@TableField(fill = FieldFill.INSERT_UPDATE)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/IprInfo.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/IprInfo.java
new file mode 100644
index 0000000..d4d0a13
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/IprInfo.java
@@ -0,0 +1,19 @@
+package com.yuanchu.limslaboratory.pojo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/8/22
+ */
+@Data
+public class IprInfo implements Serializable {
+
+ private int iprId;
+
+ private String iprName;
+
+ private Integer testState;
+}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineChartVO.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineChartVO.java
new file mode 100644
index 0000000..46472e4
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineChartVO.java
@@ -0,0 +1,17 @@
+package com.yuanchu.limslaboratory.pojo.vo;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+@Data
+public class LineChartVO {
+
+ private List<String> xAxis = new ArrayList<>();
+ private List<LineSeriesVO> series = new ArrayList<>();
+
+
+}
+
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineSeriesVO.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineSeriesVO.java
new file mode 100644
index 0000000..57e0771
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/LineSeriesVO.java
@@ -0,0 +1,16 @@
+package com.yuanchu.limslaboratory.pojo.vo;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Data
+public class LineSeriesVO {
+
+ private String name;
+
+ private List<Object> data =new ArrayList<>();
+
+
+}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ProjectNum.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/ProjectNumVo.java
similarity index 79%
rename from inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ProjectNum.java
rename to inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/ProjectNumVo.java
index 3f9c2e1..5c17ac3 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/ProjectNum.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/ProjectNumVo.java
@@ -1,9 +1,9 @@
-package com.yuanchu.limslaboratory.pojo;
+package com.yuanchu.limslaboratory.pojo.vo;
import lombok.Data;
@Data
-public class ProjectNum {
+public class ProjectNumVo {
private int insNum; //宸叉楠岀殑妫�楠屽崟鏁伴噺
private int insUnNum; //鏈楠岀殑妫�楠屽崟鏁伴噺
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/StatisticsDataVo.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/StatisticsDataVo.java
new file mode 100644
index 0000000..3a04a2d
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/StatisticsDataVo.java
@@ -0,0 +1,18 @@
+package com.yuanchu.limslaboratory.pojo.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class StatisticsDataVo {
+
+ private BigDecimal material; //鍘熸潗鏂欏悎鏍肩巼
+ private BigDecimal unmaterial; //鍘熸潗鏂欎笉鍚堟牸鐜�
+ private BigDecimal notmaterial; //鍘熸潗鏂欐湭妫�楠岀巼
+
+
+ private BigDecimal finished; //鎴愬搧鍚堟牸鐜�
+ private BigDecimal unfinished; //鎴愬搧涓嶅悎鏍肩巼
+ private BigDecimal notfinished; //鎴愬搧鏈楠岀巼
+}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/HomeService.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/HomeService.java
index beb6b24..4d24674 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/HomeService.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/HomeService.java
@@ -1,13 +1,45 @@
package com.yuanchu.limslaboratory.service;
-import com.yuanchu.limslaboratory.pojo.ProjectNum;
+import com.yuanchu.limslaboratory.pojo.vo.LineChartVO;
+import com.yuanchu.limslaboratory.pojo.vo.ProjectNumVo;
+import com.yuanchu.limslaboratory.pojo.vo.StatisticsDataVo;
+
+import java.util.List;
+import java.util.Map;
public interface HomeService {
/**
* 璁$畻妫�楠屼笌鏈楠岀殑鍗曞瓙涓庨」鐩殑鏁伴噺鎺ュ彛
+ *
* @return
*/
- ProjectNum checkProjectNum();
+ ProjectNumVo checkProjectNum();
+ /**
+ * 宸叉楠宼op3
+ *
+ * @return
+ */
+ List<Map<String, Object>> checktop3();
+
+ /**
+ * 鏈楠宼op4
+ *
+ * @return
+ */
+ List<Map<String, Object>> unchecktop4();
+
+ /**
+ * 璁$畻鍘熸潗鏂欎笌鎴愬搧鐨勫悎鏍肩巼
+ * @return
+ */
+ StatisticsDataVo qualified();
+
+ /**
+ * 缁熻
+ * @param type
+ * @return
+ */
+ LineChartVO turno(Integer type);
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/PlanService.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/PlanService.java
index 8c870a6..b519e38 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/PlanService.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/PlanService.java
@@ -42,7 +42,7 @@
* @param value
* @return
*/
- String check(Integer id, String value);
+ Integer check(Integer id, String value);
/**
* 涓婃姤
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/QualificationRateStatisticsService.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/QualificationRateStatisticsService.java
index 35640c3..9ef152c 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/QualificationRateStatisticsService.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/QualificationRateStatisticsService.java
@@ -22,4 +22,6 @@
Map<String, Object> getSupplierNoPassStatistics(SelectQualificationRateDto dto);
Map<String, Object> getNoPassProjectStatistics(SelectQualificationRateDto dto);
+
+ List<Map<String, Object>> getSampleOptions();
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/HomeServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/HomeServiceImpl.java
index e08a03e..ef21304 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/HomeServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/HomeServiceImpl.java
@@ -1,14 +1,25 @@
package com.yuanchu.limslaboratory.service.impl;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yuanchu.limslaboratory.mapper.InspectionMapper;
import com.yuanchu.limslaboratory.mapper.InspectionProductMapper;
-import com.yuanchu.limslaboratory.pojo.Inspection;
-import com.yuanchu.limslaboratory.pojo.ProjectNum;
+import com.yuanchu.limslaboratory.pojo.vo.LineChartVO;
+import com.yuanchu.limslaboratory.pojo.vo.LineSeriesVO;
+import com.yuanchu.limslaboratory.pojo.vo.ProjectNumVo;
+import com.yuanchu.limslaboratory.pojo.vo.StatisticsDataVo;
import com.yuanchu.limslaboratory.service.HomeService;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.YearMonth;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
@Service
@@ -23,16 +34,234 @@
//璁$畻妫�楠屼笌鏈楠岀殑鍗曞瓙涓庨」鐩殑鏁伴噺鎺ュ彛
@Override
- public ProjectNum checkProjectNum() {
- ProjectNum projectNum = new ProjectNum();
+ public ProjectNumVo checkProjectNum() {
+ ProjectNumVo projectNumVo = new ProjectNumVo();
//宸叉楠岀殑妫�楠屽崟鏁伴噺
- projectNum.setInsNum(inspectionMapper.seleCountIns());
+ projectNumVo.setInsNum(inspectionMapper.seleCountIns());
//鏈楠岀殑妫�楠屽崟鏁伴噺
- projectNum.setInsUnNum(inspectionMapper.seleCountUnIns());
+ projectNumVo.setInsUnNum(inspectionMapper.seleCountUnIns());
//宸叉楠岀殑妫�楠岄」鐩暟閲�
- projectNum.setInsproNum(inspectionProductMapper.seleCountInspro());
+ projectNumVo.setInsproNum(inspectionProductMapper.seleCountInspro());
//鏈楠岀殑妫�楠岄」鐩暟閲�
- projectNum.setInsproUnNum(inspectionProductMapper.seleCountUnInspro());
- return projectNum;
+ projectNumVo.setInsproUnNum(inspectionProductMapper.seleCountUnInspro());
+ return projectNumVo;
}
+
+ //宸叉楠宼op3
+ @Override
+ public List<Map<String, Object>> checktop3() {
+ //鑾峰彇妫�楠屽崟鎬绘暟
+ Integer allIns = inspectionMapper.getcount();
+ //妫�楠岀粨璁�,妫�楠屾暟閲�
+ List<Map<String, Object>> mapList = inspectionMapper.getResultNum();
+ for (Map<String, Object> map : mapList) {
+ //閬嶅巻鑾峰彇鏁伴噺
+ Long num = (Long) map.get("num");
+ //璁$畻鐧惧垎姣斿苟瀛樺叆map涓�
+ map.put("chact", getRadio(allIns, num));
+ }
+ return mapList;
+ }
+
+ //鏈楠宼po4
+ @Override
+ public List<Map<String, Object>> unchecktop4() {
+ //妫�楠岄」鐩�,璁惧,妫�楠屽紑濮嬫椂闂�,鎵ц浜�,妫�楠岀粨鏉熸椂闂�
+ List<Map<String, Object>> mapList = inspectionProductMapper.getResultNum();
+ return mapList;
+ }
+
+ //璁$畻鍘熸潗鏂欎笌鎴愬搧鐨勫悎鏍肩巼
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public StatisticsDataVo qualified() {
+ StatisticsDataVo statisticsDataVo = new StatisticsDataVo();
+ //鍘熸潗鏂欐楠屽崟鎬绘暟
+ Integer allmater = inspectionMapper.getallmater();
+ //鍘熸潗鏂欏悎鏍肩巼
+ Long mater = inspectionMapper.qualified(1);
+ statisticsDataVo.setMaterial(getRadio(allmater, mater));
+ //鍘熸潗鏂欎笉鍚堟牸鐜�
+ Long unmater = inspectionMapper.qualified(0);
+ statisticsDataVo.setUnmaterial(getRadio(allmater, unmater));
+ //鍘熸潗鏂欐湭妫�楠岀巼
+ Long notmater = inspectionMapper.qualified(null);
+ statisticsDataVo.setNotmaterial(getRadio(allmater, notmater));
+
+ //鎴愬搧妫�楠屽崟鎬绘暟
+ Integer allfin = inspectionMapper.getallfin();
+ //鎴愬搧鍚堟牸鐜�
+ Long finished = inspectionMapper.qualifiedfin(1);
+ statisticsDataVo.setFinished(getRadio(allfin, finished));
+ //鎴愬搧涓嶅悎鏍肩巼
+ Long unfinished = inspectionMapper.qualifiedfin(0);
+ statisticsDataVo.setUnfinished(getRadio(allfin, unfinished));
+ //鎴愬搧鏈楠岀巼
+ Long notfinished = inspectionMapper.qualifiedfin(null);
+ statisticsDataVo.setNotfinished(getRadio(allfin, notfinished));
+
+ return statisticsDataVo;
+ }
+
+ //缁熻
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public LineChartVO turno(Integer type) {
+ LineChartVO lineChartVO = new LineChartVO();
+ List<LineSeriesVO> series = new ArrayList<>();
+ //鏋勫缓绗竴涓猯ineSeriesVO1(鍘熸潗鏂欐楠屾暟閲�)
+ LineSeriesVO lineSeriesVO1 = new LineSeriesVO();
+ lineSeriesVO1.setName("鍘熸潗鏂欐楠屾暟閲�");
+ //鏋勫缓绗簩涓猯ineSeriesVO2(鎴愬搧妫�楠屾暟閲�)
+ LineSeriesVO lineSeriesVO2 = new LineSeriesVO();
+ lineSeriesVO2.setName("鎴愬搧妫�楠屾暟閲�");
+ //鏋勫缓绗笁涓猯ineSeriesVO3(鍘熸潗鏂欏悎鏍肩巼)
+ LineSeriesVO lineSeriesVO3 = new LineSeriesVO();
+ lineSeriesVO3.setName("鍘熸潗鏂欏悎鏍肩巼");
+ //鏋勫缓绗洓涓猯ineSeriesVO4(鎴愬搧鍚堟牸鐜�)
+ LineSeriesVO lineSeriesVO4 = new LineSeriesVO();
+ lineSeriesVO4.setName("鎴愬搧鍚堟牸鐜�");
+ List<Object> list1 = new ArrayList<>();
+ List<Object> list2 = new ArrayList<>();
+ List<Object> list3 = new ArrayList<>();
+ List<Object> list4 = new ArrayList<>();
+ switch (type) {
+ /*鏈懆*/
+ case 1:
+ List<String> dayofWeeks = getDayofWeeks();
+ lineChartVO.setXAxis(dayofWeeks);
+ for (String dayofWeek : dayofWeeks) {
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欐楠屾暟閲�
+ Integer allMaterByDay = inspectionMapper.getMaterByDay(dayofWeek);
+ list1.add(allMaterByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧妫�楠屾暟閲�
+ Integer allFinByDay = inspectionMapper.getFinByDay(dayofWeek);
+ list2.add(allFinByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欏悎鏍肩巼
+ Long okMaterByDay = inspectionMapper.getOkMaterByDay(dayofWeek);
+ list3.add(getRadio(allMaterByDay, okMaterByDay));
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧鍚堟牸鐜�
+ Long okFinByDay = inspectionMapper.getOkFinByDay(dayofWeek);
+ list4.add(getRadio(allFinByDay, okFinByDay));
+ }
+ break;
+ /*鏈湀*/
+ case 2:
+ List<String> dayofMonths = getDayofMonth();
+ lineChartVO.setXAxis(dayofMonths);
+ for (String dayofMonth : dayofMonths) {
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欐楠屾暟閲�
+ Integer allMaterByDay = inspectionMapper.getMaterByDay(dayofMonth);
+ list1.add(allMaterByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧妫�楠屾暟閲�
+ Integer allFinByDay = inspectionMapper.getFinByDay(dayofMonth);
+ list2.add(allFinByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欏悎鏍肩巼
+ Long okMaterByDay = inspectionMapper.getOkMaterByDay(dayofMonth);
+ list3.add(getRadio(allMaterByDay, okMaterByDay));
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧鍚堟牸鐜�
+ Long okFinByDay = inspectionMapper.getOkFinByDay(dayofMonth);
+ list4.add(getRadio(allFinByDay, okFinByDay));
+ }
+ break;
+ /*鏈勾*/
+ case 3:
+ List<String> monthofYears = getMonthofYear();
+ lineChartVO.setXAxis(monthofYears);
+ for (String monthofYear : monthofYears) {
+ //鏌ヨ璇ユ棩鏈熻寖鍥村唴鐨勫師鏉愭枡妫�楠屾暟閲�
+ Integer allMaterByDay = inspectionMapper.getMaterByMonth(monthofYear);
+ list1.add(allMaterByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧妫�楠屾暟閲�
+ Integer allFinByDay = inspectionMapper.getFinByMonth(monthofYear);
+ list2.add(allFinByDay);
+ //鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欏悎鏍肩巼
+ Long okMaterByDay = inspectionMapper.getOkMaterByMonth(monthofYear);
+ list3.add(getRadio(allMaterByDay, okMaterByDay));
+ //鏌ヨ璇ユ棩鏈熺殑鎴愬搧鍚堟牸鐜�
+ Long okFinByDay = inspectionMapper.getOkFinByMonth(monthofYear);
+ list4.add(getRadio(allFinByDay, okFinByDay));
+ }
+ break;
+ }
+ lineSeriesVO1.setData(list1);
+ lineSeriesVO2.setData(list2);
+ lineSeriesVO3.setData(list3);
+ lineSeriesVO4.setData(list4);
+ series.add(lineSeriesVO1);
+ series.add(lineSeriesVO2);
+ series.add(lineSeriesVO3);
+ series.add(lineSeriesVO4);
+ lineChartVO.setSeries(series);
+ return lineChartVO;
+ }
+
+ /*璁$畻鐧惧垎姣�*/
+ private BigDecimal getRadio(Integer all, Long num) {
+ if (all.intValue() == 0) {
+ return new BigDecimal(0);
+ }
+ BigDecimal numBigDecimal = new BigDecimal(num);
+ BigDecimal allBigDecimal = new BigDecimal(all);
+ BigDecimal divide = numBigDecimal.divide(allBigDecimal, 4, BigDecimal.ROUND_HALF_UP);
+ return divide.multiply(new BigDecimal(100));
+ }
+
+ /*鑾峰彇鏈勾鏈堜唤list闆嗗悎*/
+ private List<String> getMonthofYear() {
+ // 鑾峰彇褰撳墠骞翠唤
+ int year = YearMonth.now().getYear();
+ // 鍒涘缓鏈堜唤鍒楄〃
+ List<String> months = new ArrayList<>();
+ // 娣诲姞鏈堜唤鍒板垪琛�
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
+ for (int i = 1; i <= 12; i++) {
+ YearMonth month = YearMonth.of(year, i);
+ String monthString = month.format(formatter);
+ months.add(monthString);
+ }
+ return months;
+ }
+
+ /*鑾峰彇鏈湀鏃ヤ唤list闆嗗悎*/
+ private List<String> getDayofMonth() {
+ // 鑾峰彇褰撳墠鏃ユ湡
+ LocalDate now = LocalDate.now();
+ // 鑾峰彇褰撳墠鏈堜唤
+ YearMonth currentMonth = YearMonth.from(now);
+ // 鑾峰彇璇ユ湀鐨勫ぉ鏁�
+ int daysInMonth = currentMonth.lengthOfMonth();
+ // 鍒涘缓鏃ユ湡鍒楄〃
+ List<String> dates = new ArrayList<>();
+ // 娣诲姞鏃ユ湡鍒板垪琛�
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ for (int i = 1; i <= daysInMonth; i++) {
+ LocalDate date = currentMonth.atDay(i);
+ String dateString = date.format(formatter);
+ dates.add(dateString);
+ }
+ return dates;
+ }
+
+ /*鑾峰彇鏈懆鏃ヤ唤list闆嗗悎*/
+ private List<String> getDayofWeeks() {
+ // 鑾峰彇褰撳墠鏃ユ湡
+ LocalDate now = LocalDate.now();
+ // 鑾峰彇鏈懆鐨勭涓�澶╁拰鏈�鍚庝竴澶�
+ LocalDate startOfWeek = now.with(DayOfWeek.MONDAY);
+ LocalDate endOfWeek = now.with(DayOfWeek.SUNDAY);
+ // 鍒涘缓鏃ユ湡鍒楄〃
+ List<String> dates = new ArrayList<>();
+ // 娣诲姞鏃ユ湡鍒板垪琛�
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ while (!startOfWeek.isAfter(endOfWeek)) {
+ String dateString = startOfWeek.format(formatter);
+ dates.add(dateString);
+ startOfWeek = startOfWeek.plusDays(1);
+ }
+ return dates;
+ }
+
+
+
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
index 94334c3..97a838d 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
@@ -10,8 +10,10 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.util.Arrays;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* <p>
@@ -75,21 +77,24 @@
//妫�楠�
@Override
@Transactional(rollbackFor = Exception.class)
- public String check(Integer id, String value) {
- //濡傛灉妫�楠屽�间笉涓虹┖
- if (StringUtils.isNotBlank(value)) {
- InspectionProduct inspectionProduct = inspectionProductMapper.selectById(id);
- //鍒ゆ柇妫�娴嬪�兼槸鍚︽弧瓒虫爣鍑嗗�煎拰鍐呮帶鍊肩殑瑕佹眰,濡傛灉涓嶆弧瓒冲垯妫�楠岀粨璁轰负涓嶅悎鏍�0
- String required = inspectionProduct.getRequired();//鏍囧噯鍊�
- String internal = inspectionProduct.getInternal();//鍐呮帶鍊�
- inspectionProduct.setTestValue(value);
- inspectionProduct.setTestState(checkValues(required, internal, value));
- inspectionProductMapper.updateById(inspectionProduct);
- } else {
- //濡傛灉妫�楠屽�间负绌�,灏嗗師鏈夌殑妫�楠岀粨璁鸿鐩栦负null
- inspectionProductMapper.upda(id);
+ public Integer check(Integer id, String value) {
+ InspectionProduct inspectionProduct = inspectionProductMapper.selectById(id);
+ //鍒ゆ柇妫�娴嬪�兼槸鍚︽弧瓒虫爣鍑嗗�煎拰鍐呮帶鍊肩殑瑕佹眰,濡傛灉涓嶆弧瓒冲垯妫�楠岀粨璁轰负涓嶅悎鏍�0
+ String required = inspectionProduct.getRequired();//鏍囧噯鍊�
+ String internal = inspectionProduct.getInternal();//鍐呮帶鍊�
+ inspectionProduct.setTestValue(value);
+ List<Integer> list = Arrays.stream(value.split(",")).map(s -> {
+ int values = checkValues(required, internal, s);
+ return values;
+ }).collect(Collectors.toList());
+ if (list.contains(0)) {
+ //濡傛灉鍏朵腑涓�涓楠屽�间笉鍚堟牸鍒欒椤圭洰妫�楠屼笉鍚堟牸
+ inspectionProduct.setTestState(0);
+ }else {
+ inspectionProduct.setTestState(1);
}
- return "鎻愪氦鎴愬姛!";
+ inspectionProductMapper.updateById(inspectionProduct);
+ return inspectionProduct.getTestState();
}
//涓婃姤
@@ -101,7 +106,7 @@
List<Integer> results = inspectionProductMapper.getresult(id);
int count = 0;
for (Integer result : results) {
- if (result != null && result==1) {
+ if (result != null && result == 1) {
count++;
}
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/QualificationRateStatisticsServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/QualificationRateStatisticsServiceImpl.java
index dea8314..4daef1c 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/QualificationRateStatisticsServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/QualificationRateStatisticsServiceImpl.java
@@ -5,8 +5,10 @@
import com.yuanchu.limslaboratory.mapper.InspectionMaterialMapper;
import com.yuanchu.limslaboratory.mapper.QualificationRateStatisticsMapper;
import com.yuanchu.limslaboratory.pojo.Dto.MapHandlerDto;
+import com.yuanchu.limslaboratory.pojo.Dto.SelectProjectByCodeAndNameDto;
import com.yuanchu.limslaboratory.pojo.Dto.SelectQualificationRateDto;
import com.yuanchu.limslaboratory.pojo.Dto.SeriesDto;
+import com.yuanchu.limslaboratory.pojo.ImInfo;
import com.yuanchu.limslaboratory.pojo.InspectionMaterial;
import com.yuanchu.limslaboratory.service.QualificationRateStatisticsService;
import com.yuanchu.limslaboratory.utils.ArrayListUtil;
@@ -15,6 +17,7 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.text.NumberFormat;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
@@ -30,6 +33,8 @@
@Resource
private InspectionMaterialMapper inspectionMaterialMapper;
+ private static final List<String> TYPE_LIST =Arrays.asList("鍘熸潗鏂�","鎴愬搧","濮旀墭鍝�");
+ private static final List<Integer> TYPE_INT_LIST =Arrays.asList(0,1,2);
@Resource
private QualificationRateStatisticsMapper qualificationRateStatisticsMapper;
@@ -43,16 +48,60 @@
@Override
public Map<String, Object> getTestSampleStatistics(SelectQualificationRateDto dto) {
- System.out.println(dto);
- return null;
+ Map<String, Object> mapResult = new HashMap<>(16);
+ List<Map<String, Object>> mapList = qualificationRateStatisticsMapper.selectTestSamp(dto);
+ if(mapList.size()<=0){
+ mapResult.put("noData",false);
+ return mapResult;
+ }
+ mapResult.put("xAxis",TYPE_LIST);
+ List<Map<String, Object>>list=new ArrayList<>();
+ Map<String, Object>mapPass=new HashMap<>(3);
+ mapPass.put("name","鍚堟牸");
+ mapPass.put("type","bar");
+ Map<String, Object>mapNoPass=new HashMap<>(3);
+ mapNoPass.put("name","涓嶅悎鏍�");
+ mapNoPass.put("type","bar");
+ List<Integer>passInteger=new ArrayList<>();
+ List<Integer>noPasInteger=new ArrayList<>();
+ AtomicInteger integerPass = new AtomicInteger(0);
+ AtomicInteger integerNoPass = new AtomicInteger(0);
+ for (int i = 0; i < TYPE_INT_LIST.size(); i++) {
+ int finalI = i;
+ mapList.stream().filter(m->Objects.equals(String.valueOf(m.get("type")),String.valueOf(TYPE_INT_LIST.get(finalI))))
+ .forEach(m->{
+ System.out.println(m.get("type"));
+ if(Objects.equals(m.get("inspectionStatus"),0)){
+ integerNoPass.incrementAndGet();
+ }
+ if(Objects.equals(m.get("inspectionStatus"),1)){
+ integerPass.incrementAndGet();
+ }
+ });
+ passInteger.add(integerPass.get());
+ noPasInteger.add(integerNoPass.get());
+ integerPass.set(0);
+ integerNoPass.set(0);
+ }
+ mapPass.put("data",passInteger);
+ mapNoPass.put("data",noPasInteger);
+ list.add(mapPass);
+ list.add(mapNoPass);
+ mapResult.put("series",list);
+ mapResult.put("noData",true);
+ System.out.println("鎵ц缁撴潫getTestSampleStatistics________________>"+mapResult);
+ //System.out.println(mapResult);
+ return mapResult;
}
@Override
public Map<String, Object> getSupplierNoPassStatistics(SelectQualificationRateDto dto) {
Map<String, Object> allMap = new HashMap<>(16);
List<Map<String, Object>> mapList = qualificationRateStatisticsMapper.selectSupplierByCondition(dto);
- mapList.forEach(System.out::println);
- System.out.println("=================================");
+ if(mapList.size()<=0){
+ allMap.put("noData",false);
+ return allMap;
+ }
//鍘婚噸鍙栧嚭渚涘簲鍟�
List<Map<String, Object>> supplierDistinct = ArrayListUtil.oneObjectsDistinctByProperty(MapHandlerDto::comparingBySupplier, mapList);
List<String> supplierList = new ArrayList<String>();
@@ -60,21 +109,21 @@
supplierList.add(String.valueOf(l.get("supplier")));
});
allMap.put("xAxis", supplierList);
- List<SeriesDto>seriesDtoList=new ArrayList<SeriesDto>(2);
- SeriesDto seriesDto2=new SeriesDto("涓嶅悎鏍兼暟閲�");
- SeriesDto seriesDto=new SeriesDto("鍚堟牸鏁伴噺");
+ List<SeriesDto> seriesDtoList = new ArrayList<SeriesDto>(2);
+ SeriesDto seriesDto = new SeriesDto("鍚堟牸鏁伴噺");
+ SeriesDto seriesDto2 = new SeriesDto("涓嶅悎鏍兼暟閲�");
// 鍙栧嚭瀵瑰簲鍚堟牸鏁伴噺涓嶅悎鏍兼暟閲�
- List<Long>pass=new ArrayList<>();
- List<Long>noPass=new ArrayList<>();
- AtomicLong integerPass=new AtomicLong(0L);
- AtomicLong integerNoPass=new AtomicLong(0L);
+ List<Long> pass = new ArrayList<>();
+ List<Long> noPass = new ArrayList<>();
+ AtomicLong integerPass = new AtomicLong(0L);
+ AtomicLong integerNoPass = new AtomicLong(0L);
supplierList.forEach(s -> {
mapList.stream()
.filter(l -> Objects.equals(l.get("supplier"), s))
.forEach(l -> {
- if(Objects.equals(l.get("inspectionStatus"),1)){
+ if (Objects.equals(l.get("inspectionStatus"), 1)) {
integerPass.incrementAndGet();
- }else {
+ } else {
integerNoPass.incrementAndGet();
}
});
@@ -83,19 +132,83 @@
integerNoPass.set(0L);
integerPass.set(0L);
});
- seriesDto.setData(pass);
- seriesDto2.setData(noPass);
+ List<Double> percentPass = new ArrayList<>();
+ List<Double> percentNoPass = new ArrayList<>();
+ for (int i = 0; i < pass.size(); i++) {
+ long total = (pass.get(i) + noPass.get(i));
+ double passNO = 0.00;
+ if (pass.get(i) != 0L) {
+ passNO = Double.parseDouble(getPercent(pass.get(i), total).replace("%", ""));
+ }
+ double noPassNO = 0.00;
+ if (noPass.get(i) != 0L) {
+ noPassNO = Double.parseDouble(getPercent(noPass.get(i), total).replace("%", ""));
+ }
+ percentPass.add(passNO);
+ percentNoPass.add(noPassNO);
+ }
+ seriesDto.setData(percentPass);
+ seriesDto2.setData(percentNoPass);
seriesDtoList.add(seriesDto);
seriesDtoList.add(seriesDto2);
- System.out.println("鏁伴噺=======>");
- System.out.println(seriesDtoList);
- return null;
+ allMap.put("series", seriesDtoList);
+ allMap.put("noData",true);
+ System.out.println("getSupplierNoPassStatistics缁撴灉++++++++++++++++>"+allMap);
+ return allMap;
}
@Override
public Map<String, Object> getNoPassProjectStatistics(SelectQualificationRateDto dto) {
- return null;
+ Map<String, Object> allMap = new HashMap<>(16);
+ List<ImInfo> imInfos = qualificationRateStatisticsMapper.selectProjectionsByCondition(dto);
+ List<String>NameList = new ArrayList<>();
+ List<SelectProjectByCodeAndNameDto>projectByCodeAndNameDtos=new ArrayList<>();
+ if(imInfos.size()<=0){
+ allMap.put("noData",false);
+ return allMap;
+ }
+ imInfos.forEach(l->{
+ NameList.add(l.getICode()+"-"+l.getImName());
+ projectByCodeAndNameDtos.add(new SelectProjectByCodeAndNameDto(l.getICode(),l.getImName()));
+ });
+ List<ImInfo> imInfosAll = qualificationRateStatisticsMapper.selectProjection(projectByCodeAndNameDtos,dto);
+ int total = imInfosAll.size();
+ List<Integer>noPas=new ArrayList<>();
+ AtomicInteger i=new AtomicInteger(0);
+ NameList.forEach(n->{
+ imInfos.stream()
+ .filter(im-> Objects.equals(n,im.getICode()+"-"+im.getImName()))
+ .forEach(im->{
+ i.set(im.getIprInfos().size());
+ });
+ noPas.add(i.get());
+ i.set(0);
+ });
+ List<Map<String, Object>>doubleList=new ArrayList<>();
+ for (int j = 0; j < noPas.size(); j++) {
+ Map<String, Object>map=new HashMap<>();
+ map.put("name",NameList.get(j));
+ map.put("value",Double.parseDouble(getPercent(noPas.get(j),total).replace("%","")));
+ doubleList.add(map);
+ }
+ allMap.put("legend",NameList);
+ allMap.put("series",doubleList);
+ allMap.put("noData",true);
+ System.out.println("getNoPassProjectStatistics缁撴灉==========================>"+allMap);
+ return allMap;
}
+ @Override
+ public List<Map<String, Object>> getSampleOptions() {
+ return qualificationRateStatisticsMapper.getSampleOptions();
+ }
-}
+ public static String getPercent(long x, long y) {
+ double d1 = x * 1.0;
+ double d2 = y * 1.0;
+ NumberFormat percentInstance = NumberFormat.getPercentInstance();
+ // 璁剧疆淇濈暀鍑犱綅灏忔暟锛岃繖閲岃缃殑鏄繚鐣欎袱浣嶅皬鏁�
+ percentInstance.setMinimumFractionDigits(2);
+ return percentInstance.format(d1 / d2);
+ }
+}
\ No newline at end of file
diff --git a/inspection-server/src/main/resources/mapper/InspectionMapper.xml b/inspection-server/src/main/resources/mapper/InspectionMapper.xml
index 5314b40..711a5fe 100644
--- a/inspection-server/src/main/resources/mapper/InspectionMapper.xml
+++ b/inspection-server/src/main/resources/mapper/InspectionMapper.xml
@@ -42,4 +42,141 @@
where state = 1
and inspection_status is null
</select>
+
+ <!--鑾峰彇妫�楠屽崟鎬绘暟-->
+ <select id="getcount" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ </select>
+
+ <!--妫�楠岀粨璁�,妫�楠屾暟閲�-->
+ <select id="qualified" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ <if test="b!=null ">
+ and inspection_status = #{b}
+ </if>
+ <if test="b==null">
+ and inspection_status is null
+ </if>
+ </select>
+
+ <!--璁$畻鍘熸潗鏂欎笌鎴愬搧鐨勫悎鏍肩巼-->
+ <select id="getResultNum" resultType="java.util.Map">
+ select inspection_status result,
+ count(id) num
+ from lims_laboratory.inspection
+ where state = 1
+ group by result
+ order by num desc
+ </select>
+
+ <!--璁$畻鍘熸潗鏂欐楠屽崟鎬绘暟-->
+ <select id="getallmater" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ </select>
+
+ <!--璁$畻鎴愬搧妫�楠屽崟鎬绘暟-->
+ <select id="getallfin" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ </select>
+
+ <!--璁$畻鍘熸潗鏂欏悎鏍肩巼-->
+ <select id="qualifiedfin" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ <if test="i!=null ">
+ and inspection_status = #{i}
+ </if>
+ <if test="i==null">
+ and inspection_status is null
+ </if>
+ </select>
+
+ <!--鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欐楠屾暟閲�-->
+ <select id="getMaterByDay" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ and create_time = #{time}
+ </select>
+
+ <!--鏌ヨ璇ユ棩鏈熺殑鎴愬搧妫�楠屾暟閲�-->
+ <select id="getFinByDay" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ and create_time = #{time}
+ </select>
+
+ <!--鏌ヨ璇ユ棩鏈熺殑鍘熸潗鏂欏悎鏍兼暟閲�-->
+ <select id="getOkMaterByDay" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ and inspection_status = 1
+ and end_time = #{time}
+ </select>
+
+ <!--鏌ヨ璇ユ棩鏈熺殑鎴愬搧鍚堟牸鏁伴噺-->
+ <select id="getOkFinByDay" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ and inspection_status = 1
+ and end_time = #{time}
+ </select>
+
+ <!--鏌ヨ璇ユ湀鐨勫師鏉愭枡妫�楠屾暟閲�-->
+ <select id="getMaterByMonth" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ and DATE_FORMAT(create_time, '%Y-%m') = #{monthofYear}
+ </select>
+
+ <!--鏌ヨ璇ユ湀鐨勬垚鍝佹楠屾暟閲�-->
+ <select id="getFinByMonth" resultType="java.lang.Integer">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ and DATE_FORMAT(create_time, '%Y-%m') = #{monthofYear}
+ </select>
+
+ <!--鏌ヨ璇ユ湀鐨勫師鏉愭枡鍚堟牸鐜�-->
+ <select id="getOkMaterByMonth" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type = 0
+ and inspection_status = 1
+ and DATE_FORMAT(end_time, '%Y-%m') = #{monthofYear}
+ </select>
+
+ <!--鏌ヨ璇ユ湀鐨勬垚鍝佸悎鏍肩巼-->
+ <select id="getOkFinByMonth" resultType="java.lang.Long">
+ select count(id)
+ from lims_laboratory.inspection
+ where state = 1
+ and type in (1, 2)
+ and inspection_status = 1
+ and DATE_FORMAT(end_time, '%Y-%m') = #{monthofYear}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/inspection-server/src/main/resources/mapper/InspectionProductMapper.xml b/inspection-server/src/main/resources/mapper/InspectionProductMapper.xml
index a04eeab..f1b39da 100644
--- a/inspection-server/src/main/resources/mapper/InspectionProductMapper.xml
+++ b/inspection-server/src/main/resources/mapper/InspectionProductMapper.xml
@@ -1,12 +1,7 @@
<?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.InspectionProductMapper">
- <update id="upda">
- update lims_laboratory.inspection_product
- set test_state=null
- where id = #{id}
- and state = 1
- </update>
+
<!--鏍规嵁妫�楠屽崟id鏌ヨ妫�楠岄」鐩殑妫�楠岀粨鏋�-->
<select id="getresult" resultType="java.lang.Integer">
@@ -37,4 +32,22 @@
where state = 1
and test_state is null
</select>
+
+ <!--鑾峰彇妫�楠岄」鐩�,璁惧,妫�楠屽紑濮嬫椂闂�,鎵ц浜�,妫�楠岀粨鏉熸椂闂�-->
+ <select id="getResultNum" resultType="java.util.Map">
+ select ip.name,
+ equipment_name instrumentname,
+ DATE_FORMAT(start_time, '%Y-%m-%d') startTime,
+ user.name checkname,
+ DATE_FORMAT(end_time, '%Y-%m-%d') endTime
+ from lims_laboratory.inspection_product ip
+ left join lims_laboratory.inspection_material on ip.inspection_material_id = inspection_material.id
+ left join lims_laboratory.inspection i on inspection_material.inspection_id = i.id
+ left join lims_laboratory.instrument on ip.instrument_id = instrument.id
+ left join lims_laboratory.user on ip.user_id = user.id
+ where ip.state = 1
+ and test_state is null
+ order by start_time
+ limit 4
+ </select>
</mapper>
\ No newline at end of file
diff --git a/inspection-server/src/main/resources/mapper/PlanMapper.xml b/inspection-server/src/main/resources/mapper/PlanMapper.xml
index bf79c9d..d466f4e 100644
--- a/inspection-server/src/main/resources/mapper/PlanMapper.xml
+++ b/inspection-server/src/main/resources/mapper/PlanMapper.xml
@@ -8,7 +8,7 @@
<result property="inspectionStatus" column="inspectionStatus"/>
<result property="startTime" column="startTime"/>
<result property="endTime" column="endTime"/>
- <collection property="chldren" resultMap="selectAllPlanMapTowsMap" javaType="List"/>
+ <collection property="children" resultMap="selectAllPlanMapTowsMap" javaType="List"/>
</resultMap>
<resultMap id="selectAllPlanMapTowsMap" type="map">
<id property="pid" column="pid"/>
@@ -16,6 +16,7 @@
<result property="unit" column="unit"/>
<result property="required" column="required"/>
<result property="internal" column="internal"/>
+ <result property="testValue" column="testValue"/>
<result property="testState" column="testState"/>
<result property="checker" column="checker"/>
<result property="instrumentname" column="instrumentname"/>
@@ -33,6 +34,7 @@
ip.unit,
required,
internal,
+ test_value testValue,
test_state testState,
u.name checker,
equipment_name instrumentname
diff --git a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
index 754f647..bb63097 100644
--- a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
+++ b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
@@ -11,7 +11,7 @@
i.end_time endTime
FROM inspection i
INNER JOIN inspection_material im ON i.id = im.inspection_id
- where (i.state = 1 AND TRUE = IFNULL(i.inspection_status, FALSE))
+ where (i.state = 1 AND i.inspection_status is NOT NULL and im.state=1)
<if test="dto.beginDate!=null and dto.endDate!=null">
DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
AND #{dto.endDate}
@@ -23,5 +23,154 @@
<if test="dto.supplier!=null and dto.supplier!=''">
and im.supplier=#{dto.supplier}
</if>
+ <if test="dto.sample!=null and dto.sample!=''">
+ and im.name=#{dto.sample}
+ </if>
+ <if test="dto.code!=null and dto.code!=''">
+ and i.code=#{dto.code}
+ </if>
</select>
+ <select id="selectProjectionsByCondition" resultMap="ImInfoMap">
+ SELECT
+ im.id imId,
+ im.`name` imName,
+ i.inspection_status inspectionStatus,
+ i.start_time startTime,
+ i.end_time endTime,
+ ipr.id iprId,
+ ipr.`name` iprName,
+ ipr.test_state testState,
+ i.code iCode,
+ i.type type
+ FROM
+ inspection i,
+ inspection_material im,
+ inspection_product ipr
+ WHERE
+ i.id = im.inspection_id
+ AND im.id = ipr.inspection_material_id
+ AND i.state = 1
+ AND im.state = 1
+ AND ipr.state = 1
+ AND i.inspection_status is NOT NULL
+ AND ipr.test_state is not null
+ AND ipr.test_state = 0
+ <if test="dto.beginDate!=null and dto.endDate!=null">
+ DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ AND #{dto.endDate}
+ AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+ </if>
+ <if test="dto.type!=null">
+ and i.type=#{dto.type}
+ </if>
+ <if test="dto.supplier!=null and dto.supplier!=''">
+ and im.supplier=#{dto.supplier}
+ </if>
+ <if test="dto.sample!=null and dto.sample!=''">
+ and im.name=#{dto.sample}
+ </if>
+ <if test="dto.code!=null and dto.code!=''">
+ and i.code=#{dto.code}
+ </if>
+ </select>
+ <select id="selectProjection" resultMap="ImInfoMap">
+ SELECT
+ im.id imId
+ FROM
+ inspection i,
+ inspection_material im,
+ inspection_product ipr
+ WHERE
+ i.id = im.inspection_id
+ AND im.id = ipr.inspection_material_id
+ AND i.state = 1
+ AND im.state = 1
+ AND ipr.state = 1
+ AND i.inspection_status is NOT NULL
+ AND ipr.test_state is not null
+ <if test="dto.beginDate!=null and dto.endDate!=null">
+ DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ AND #{dto.endDate}
+ AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+ </if>
+ <if test="dto.type!=null">
+ and i.type=#{dto.type}
+ </if>
+ <if test="dto.supplier!=null and dto.supplier!=''">
+ and im.supplier=#{dto.supplier}
+ </if>
+ <if test="dto.sample!=null and dto.sample!=''">
+ and im.name=#{dto.sample}
+ </if>
+ <if test="dto.code!=null and dto.code!=''">
+ and i.code=#{dto.code}
+ </if>
+ and i.code in
+ <foreach collection="list" item="l" open="(" close=")" separator="," >
+ #{l.code}
+ </foreach>
+ and im.name in
+ <foreach collection="list" item="l" open="(" close=")" separator=",">
+ #{l.name}
+ </foreach>
+ </select>
+ <select id="selectTestSamp" resultType="java.util.Map">
+ SELECT i.id,
+ i.type,
+ im.`name`,
+ im.supplier,
+ i.inspection_status inspectionStatus,
+ i.start_time startTime,
+ i.end_time endTime
+ FROM inspection i
+ INNER JOIN inspection_material im ON i.id = im.inspection_id
+ where (i.state = 1 AND i.inspection_status is NOT NULL and im.state=1)
+ <if test="dto.beginDate!=null and dto.endDate!=null">
+ DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ AND #{dto.endDate}
+ AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+ </if>
+ <if test="dto.type!=null">
+ and i.type=#{dto.type}
+ </if>
+ <if test="dto.supplier!=null and dto.supplier!=''">
+ and im.supplier=#{dto.supplier}
+ </if>
+ <if test="dto.sample!=null and dto.sample!=''">
+ and im.name=#{dto.sample}
+ </if>
+ <if test="dto.code!=null and dto.code!=''">
+ and i.code=#{dto.code}
+ </if>
+ </select>
+ <select id="getSampleOptions" resultType="java.util.Map">
+ SELECT
+ i.id,
+ i.type,
+ im.`name` name,
+ im.supplier,
+ i.inspection_status inspectionStatus,
+ i.start_time startTime,
+ i.end_time endTime,
+ i.`code`
+ FROM
+ inspection i
+ INNER JOIN inspection_material im ON i.id = im.inspection_id
+ WHERE
+ ( i.state = 1 AND i.inspection_status IS NOT NULL AND im.state = 1 )
+ </select>
+
+ <resultMap id="ImInfoMap" type="com.yuanchu.limslaboratory.pojo.ImInfo">
+ <result property="imId" column="imId"/>
+ <result property="iCode" column="iCode"/>
+ <result property="imName" column="imName"/>
+ <result property="startTime" column="startTime"/>
+ <result property="endTime" column="endTime"/>
+ <result property="inspectionStatus" column="inspectionStatus"/>
+ <collection property="iprInfos" ofType="iprInfo">
+ <result property="iprId" column="iprId"/>
+ <result property="iprName" column="iprName"/>
+ <result property="testState" column="testState"/>
+ </collection>
+ </resultMap>
</mapper>
\ No newline at end of file
diff --git a/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml b/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
index 98a6181..ab1509d 100644
--- a/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/InstrumentMapper.xml
@@ -23,23 +23,27 @@
<!--閫夋嫨璁惧-->
<resultMap id="chooseinstumMap" type="map">
- <id property="father_name" column="father_name"/>
- <collection property="father" resultMap="chooseinstumTowMap" javaType="List"/>
+ <id property="id" column="cid"/>
+ <result property="name" column="father_name"/>
+ <collection property="children" resultMap="chooseinstumTowMap" javaType="List"/>
</resultMap>
<resultMap id="chooseinstumTowMap" type="map">
- <id property="son_name" column="son_name"/>
- <collection property="chldren" resultMap="chooseinstumTowsMap" javaType="List"/>
+ <id property="id" column="cid"/>
+ <result property="name" column="son_name"/>
+ <collection property="children" resultMap="chooseinstumTowsMap" javaType="List"/>
</resultMap>
<resultMap id="chooseinstumTowsMap" type="map">
<id property="id" column="id"/>
<result property="name" column="name"/>
</resultMap>
<select id="chooseinstum" resultMap="chooseinstumMap">
- select instrument.id,
- father_name,
- son_name,
+ select c.id cid,
+ instrument.id,
+ father_name ,
+ son_name ,
equipment_name name
from lims_laboratory.instrument
left join lims_laboratory.classify c on c.id = instrument.classify_id
+ where conditions in(1,5)
</select>
</mapper>
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java
index 54c77ae..6eee650 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java
@@ -34,11 +34,7 @@
@Autowired
private ProductModelService productModelService;
- @ApiOperation(value = "閫夋嫨鏍峰搧鍚嶇О")
- @GetMapping("/selectmater")
- public Result selectmater() {
- return Result.success(productModelService.selectmater());
- }
+
@ApiOperation(value = "娣诲姞鏍囧噯-->閫夋嫨椤圭洰鍒嗙粍")
@GetMapping("/selectfather")
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductModelService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductModelService.java
index 144d1bf..f34e701 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductModelService.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductModelService.java
@@ -17,11 +17,7 @@
*/
public interface ProductModelService extends IService<ProductModel> {
- /**
- * 閫夋嫨鏍峰搧鍚嶇О
- * @return
- */
- List<String> selectmater();
+
/**
* 娣诲姞鏍囧噯-->閫夋嫨椤圭洰鍒嗙粍
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java
index 7b4d711..6650cf6 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java
@@ -1,10 +1,9 @@
package com.yuanchu.limslaboratory.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yuanchu.limslaboratory.mapper.ProductModelMapper;
import com.yuanchu.limslaboratory.pojo.Material;
import com.yuanchu.limslaboratory.mapper.MaterialMapper;
@@ -17,14 +16,11 @@
import com.yuanchu.limslaboratory.service.ProductService;
import com.yuanchu.limslaboratory.service.SpecificationsService;
import com.yuanchu.limslaboratory.service.StandardService;
-import com.yuanchu.limslaboratory.utils.MyUtil;
-import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -106,8 +102,12 @@
List<Product> productList = productModel.stream().map(stringObjectMap -> {
Product product = new Product();
product.setName(stringObjectMap.get("name").toString());
- product.setFather(stringObjectMap.get("father").toString());
- product.setUnit(stringObjectMap.get("unit").toString());
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("father"))) {
+ product.setFather(stringObjectMap.get("father").toString());
+ }
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("unit"))) {
+ product.setUnit(stringObjectMap.get("unit").toString());
+ }
product.setSpecifications_id(specifications.getId());
return product;
}).collect(Collectors.toList());
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductModelServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductModelServiceImpl.java
index a42754d..3aca4c6 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductModelServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductModelServiceImpl.java
@@ -28,11 +28,6 @@
@Resource
ProductModelMapper productModelMapper;
- //閫夋嫨鏍峰搧
- @Override
- public List<String> selectmater() {
- return productModelMapper.selectmater();
- }
//娣诲姞鏍囧噯-->閫夋嫨椤圭洰鍒嗙粍
@Override
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
index b2f887e..d6a5bd6 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.mapper.ProductModelMapper;
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.pojo.Specifications;
@@ -14,7 +15,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
@@ -87,12 +87,12 @@
List<Product> productList = productModel.stream().map(stringObjectMap -> {
Product product = new Product();
product.setName(stringObjectMap.get("name").toString());
- try{
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("father"))) {
product.setFather(stringObjectMap.get("father").toString());
- }catch (Exception e){
- product.setFather(null);
}
- product.setUnit(stringObjectMap.get("unit").toString());
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("unit"))) {
+ product.setUnit(stringObjectMap.get("unit").toString());
+ }
product.setSpecifications_id(specifications.getId());
return product;
}).collect(Collectors.toList());
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
index 9c7ab92..479ea03 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
@@ -107,8 +107,12 @@
List<Product> productList = productModel.stream().map(stringObjectMap -> {
Product product = new Product();
product.setName(stringObjectMap.get("name").toString());
- product.setFather(stringObjectMap.get("father").toString());
- product.setUnit(stringObjectMap.get("unit").toString());
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("father"))) {
+ product.setFather(stringObjectMap.get("father").toString());
+ }
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("unit"))) {
+ product.setUnit(stringObjectMap.get("unit").toString());
+ }
product.setSpecifications_id(specifications.getId());
return product;
}).collect(Collectors.toList());
--
Gitblit v1.9.3