Преглед на файлове

[task-1766] 性能验证模块 开发 (二期) / 【后端】验证报告的接口开发

Li Yuan преди 1 година
родител
ревизия
73920a98a0
променени са 41 файла, в които са добавени 499 реда и са изтрити 143 реда
  1. 3 3
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/api/IExperimentalService.java
  2. 2 2
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/api/IReagentService.java
  3. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/domain/Experimental.java
  4. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/domain/Reagent.java
  5. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalDao.java
  6. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalQueryDao.java
  7. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ReagentDao.java
  8. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ReagentQueryDao.java
  9. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ExperimentalDaoImpl.java
  10. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ExperimentalQueryDaoImpl.java
  11. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ReagentDaoImpl.java
  12. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ReagentQueryDaoImpl.java
  13. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ExperimentalPo.java
  14. 15 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ExperimentalTbl.java
  15. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ReagentPo.java
  16. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ReagentTbl.java
  17. 4 3
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/provider/ExperimentalProvider.java
  18. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/provider/ReagentProvider.java
  19. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/ExperimentalRepository.java
  20. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/ReagentRepository.java
  21. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/impl/ExperimentalRepositoryImpl.java
  22. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/impl/ReagentRepositoryImpl.java
  23. 30 21
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/controller/PerformanceVerificationController.java
  24. 26 18
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/excel/PVTest.java
  25. 10 0
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/CalcVO.java
  26. 96 0
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/ConfigVO.java
  27. 137 28
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/EP15CalcVO.java
  28. 3 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/InspectionConfigVO.java
  29. 25 12
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/InspectionItemVO.java
  30. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/ItemCalcVO.java
  31. 1 1
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/SpecimensCalcVO.java
  32. 43 0
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/report/ReportDataDTO.java
  33. 19 0
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/report/ReportFactory.java
  34. 6 4
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/service/PerformanceVerificationService.java
  35. 50 22
      ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/service/impl/PerformanceVerificationServiceImpl.java
  36. 5 3
      ibps-provider-root/modules/provider-business/src/main/resources/com/lc/ibps/pv/persistence/mapping/Experimental.map.xml
  37. 1 1
      ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/PvBaseTest.java
  38. 1 1
      ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/domain/ExperimentalTest.java
  39. 1 1
      ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/domain/ReagentTest.java
  40. 1 1
      ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalDaoTest.java
  41. 1 1
      ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/persistence/dao/ReagentDaoTest.java

+ 3 - 3
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/api/IExperimentalService.java

@@ -14,9 +14,9 @@ import org.springframework.web.bind.annotation.RestController;
 import com.lc.ibps.cloud.entity.APIPageList;
 import com.lc.ibps.cloud.entity.APIPageList;
 import com.lc.ibps.cloud.entity.APIRequest;
 import com.lc.ibps.cloud.entity.APIRequest;
 import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.cloud.entity.APIResult;
+import javax.validation.Valid;
 import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
 import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
 
 
-import javax.validation.Valid;
 
 
 
 
 /**
 /**
@@ -26,7 +26,7 @@ import javax.validation.Valid;
  * 构建组:ibps-provider-experimental-api
  * 构建组:ibps-provider-experimental-api
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:06
+ * 创建时间:2024-05-16 11:39:15
  *</pre>
  *</pre>
  */
  */
 @Validated
 @Validated
@@ -77,6 +77,6 @@ public interface IExperimentalService {
 	 * @return
 	 * @return
 	 */
 	 */
 	@RequestMapping(value = "/save", method = { RequestMethod.POST })
 	@RequestMapping(value = "/save", method = { RequestMethod.POST })
-	public APIResult<Void> save(
+	public APIResult<String> save(
  			@RequestBody(required = true) @Valid ExperimentalPo experimentalPo);
  			@RequestBody(required = true) @Valid ExperimentalPo experimentalPo);
 }
 }

+ 2 - 2
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/api/IReagentService.java

@@ -14,9 +14,9 @@ import org.springframework.web.bind.annotation.RestController;
 import com.lc.ibps.cloud.entity.APIPageList;
 import com.lc.ibps.cloud.entity.APIPageList;
 import com.lc.ibps.cloud.entity.APIRequest;
 import com.lc.ibps.cloud.entity.APIRequest;
 import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.cloud.entity.APIResult;
+import javax.validation.Valid;
 import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
 import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
 
 
-import javax.validation.Valid;
 
 
 
 
 /**
 /**
@@ -26,7 +26,7 @@ import javax.validation.Valid;
  * 构建组:ibps-provider-reagent-api
  * 构建组:ibps-provider-reagent-api
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:12
+ * 创建时间:2024-05-16 11:39:21
  *</pre>
  *</pre>
  */
  */
 @Validated
 @Validated

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/domain/Experimental.java

@@ -26,7 +26,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:06
+ * 创建时间:2024-05-16 11:39:14
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/domain/Reagent.java

@@ -24,7 +24,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:12
+ * 创建时间:2024-05-16 11:39:21
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalDao.java

@@ -9,7 +9,7 @@ import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:04
+ * 创建时间:2024-05-16 11:39:13
  *</pre>
  *</pre>
  */
  */
 public interface ExperimentalDao extends IDao<String, ExperimentalPo> {
 public interface ExperimentalDao extends IDao<String, ExperimentalPo> {

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalQueryDao.java

@@ -9,7 +9,7 @@ import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:04
+ * 创建时间:2024-05-16 11:39:13
  *</pre>
  *</pre>
  */
  */
 public interface ExperimentalQueryDao extends IQueryDao<String, ExperimentalPo> {
 public interface ExperimentalQueryDao extends IQueryDao<String, ExperimentalPo> {

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ReagentDao.java

@@ -9,7 +9,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:10
+ * 创建时间:2024-05-16 11:39:19
  *</pre>
  *</pre>
  */
  */
 public interface ReagentDao extends IDao<String, ReagentPo> {
 public interface ReagentDao extends IDao<String, ReagentPo> {

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/ReagentQueryDao.java

@@ -10,7 +10,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:10
+ * 创建时间:2024-05-16 11:39:19
  *</pre>
  *</pre>
  */
  */
 public interface ReagentQueryDao extends IQueryDao<String, ReagentPo> {
 public interface ReagentQueryDao extends IQueryDao<String, ReagentPo> {

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ExperimentalDaoImpl.java

@@ -12,7 +12,7 @@ import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:04
+ * 创建时间:2024-05-16 11:39:13
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ExperimentalQueryDaoImpl.java

@@ -13,7 +13,7 @@ import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:04
+ * 创建时间:2024-05-16 11:39:12
  *</pre>
  *</pre>
  */
  */
  @SuppressWarnings("serial")
  @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ReagentDaoImpl.java

@@ -12,7 +12,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:10
+ * 创建时间:2024-05-16 11:39:19
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/dao/impl/ReagentQueryDaoImpl.java

@@ -14,7 +14,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:10
+ * 创建时间:2024-05-16 11:39:19
  *</pre>
  *</pre>
  */
  */
  @SuppressWarnings("serial")
  @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ExperimentalPo.java

@@ -13,7 +13,7 @@ import io.swagger.annotations.ApiModel;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:03
+ * 创建时间:2024-05-16 11:39:11
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 15 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ExperimentalTbl.java

@@ -12,7 +12,7 @@ import io.swagger.annotations.ApiModelProperty;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:03
+ * 创建时间:2024-05-16 11:39:12
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")
@@ -70,6 +70,8 @@ public class ExperimentalTbl extends AbstractPo<String>{
 	protected String  fuJian; 		/*附件*/
 	protected String  fuJian; 		/*附件*/
 	@ApiModelProperty(value = "实验结论")
 	@ApiModelProperty(value = "实验结论")
 	protected String  shiYanJieLun; 		/*实验结论*/
 	protected String  shiYanJieLun; 		/*实验结论*/
+	@ApiModelProperty(value = "性能指标")
+	protected String  xingNengZhiBia; 		/*性能指标*/
 
 
 	public void setId(String id) 
 	public void setId(String id) 
 	{
 	{
@@ -383,5 +385,17 @@ public class ExperimentalTbl extends AbstractPo<String>{
 	{
 	{
 		return this.shiYanJieLun;
 		return this.shiYanJieLun;
 	}
 	}
+	public void setXingNengZhiBia(String xingNengZhiBia) 
+	{
+		this.xingNengZhiBia = xingNengZhiBia;
+	}
+	/**
+	 * 返回 性能指标
+	 * @return
+	 */
+	public String getXingNengZhiBia() 
+	{
+		return this.xingNengZhiBia;
+	}
 	
 	
 }
 }

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ReagentPo.java

@@ -12,7 +12,7 @@ import io.swagger.annotations.ApiModel;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:09
+ * 创建时间:2024-05-16 11:39:18
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/persistence/entity/ReagentTbl.java

@@ -12,7 +12,7 @@ import io.swagger.annotations.ApiModelProperty;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:09
+ * 创建时间:2024-05-16 11:39:18
  *</pre>
  *</pre>
  */
  */
 @SuppressWarnings("serial")
 @SuppressWarnings("serial")

+ 4 - 3
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/provider/ExperimentalProvider.java

@@ -34,7 +34,7 @@ import io.swagger.annotations.ExtensionProperty;
  * 构建组:ibps-provider-experimental
  * 构建组:ibps-provider-experimental
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:07
+ * 创建时间:2024-05-16 11:39:15
  *</pre>
  *</pre>
  */
  */
 @Api(tags = "性能验证实验信息管理", value = "性能验证实验信息数据")
 @Api(tags = "性能验证实验信息管理", value = "性能验证实验信息数据")
@@ -84,15 +84,16 @@ public class ExperimentalProvider extends GenericProvider implements IExperiment
 					})
 					})
 			})
 			})
 	@Override
 	@Override
-	public APIResult<Void> save(
+	public APIResult<String> save(
 			@ApiParam(name = "experimentalPo", value = "性能验证实验信息对象", required = true)  
 			@ApiParam(name = "experimentalPo", value = "性能验证实验信息对象", required = true)  
 			@RequestBody(required = true) ExperimentalPo experimentalPo) {
 			@RequestBody(required = true) ExperimentalPo experimentalPo) {
-		APIResult<Void> result = new APIResult<Void>();
+		APIResult<String> result = new APIResult<String>();
 		try {
 		try {
 			logger.info(" com.lc.ibps.components.provider.ExperimentalProvider.save()--->experimentalPo: {}", experimentalPo.toString());
 			logger.info(" com.lc.ibps.components.provider.ExperimentalProvider.save()--->experimentalPo: {}", experimentalPo.toString());
 			Experimental domain = experimentalRepository.newInstance(experimentalPo);
 			Experimental domain = experimentalRepository.newInstance(experimentalPo);
 			domain.saveCascade();
 			domain.saveCascade();
 			result.setMessage("保存性能验证实验信息成功");
 			result.setMessage("保存性能验证实验信息成功");
+			result.setData(domain.getId());
 		} catch (Exception e) {
 		} catch (Exception e) {
 			setExceptionResult(result, StateEnum.ERROR.getCode(), StateEnum.ERROR.getText(), e);
 			setExceptionResult(result, StateEnum.ERROR.getCode(), StateEnum.ERROR.getText(), e);
 		}
 		}

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/provider/ReagentProvider.java

@@ -34,7 +34,7 @@ import io.swagger.annotations.ExtensionProperty;
  * 构建组:ibps-provider-reagent
  * 构建组:ibps-provider-reagent
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:12
+ * 创建时间:2024-05-16 11:39:22
  *</pre>
  *</pre>
  */
  */
 @Api(tags = "性能验证试剂信息管理", value = "性能验证试剂信息数据")
 @Api(tags = "性能验证试剂信息管理", value = "性能验证试剂信息数据")

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/ExperimentalRepository.java

@@ -10,7 +10,7 @@ import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:05
+ * 创建时间:2024-05-16 11:39:14
  *</pre>
  *</pre>
  */
  */
 public interface ExperimentalRepository extends IRepository<String, ExperimentalPo,Experimental>{
 public interface ExperimentalRepository extends IRepository<String, ExperimentalPo,Experimental>{

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/ReagentRepository.java

@@ -11,7 +11,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:11
+ * 创建时间:2024-05-16 11:39:20
  *</pre>
  *</pre>
  */
  */
 public interface ReagentRepository extends IRepository<String, ReagentPo,Reagent>{
 public interface ReagentRepository extends IRepository<String, ReagentPo,Reagent>{

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/impl/ExperimentalRepositoryImpl.java

@@ -24,7 +24,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:05
+ * 创建时间:2024-05-16 11:39:13
  *</pre>
  *</pre>
  */
  */
 @Repository
 @Repository

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/pv/repository/impl/ReagentRepositoryImpl.java

@@ -20,7 +20,7 @@ import com.lc.ibps.components.pv.persistence.entity.ReagentPo;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:11
+ * 创建时间:2024-05-16 11:39:20
  *</pre>
  *</pre>
  */
  */
 @Repository
 @Repository

+ 30 - 21
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/controller/PerformanceVerificationController.java

@@ -1,9 +1,12 @@
 package com.lc.ibps.components.verification.controller;
 package com.lc.ibps.components.verification.controller;
 
 
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.lc.ibps.api.base.constants.StateEnum;
 import com.lc.ibps.api.base.constants.StateEnum;
 import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.cloud.provider.GenericProvider;
 import com.lc.ibps.cloud.provider.GenericProvider;
 import com.lc.ibps.components.verification.model.InspectionItemVO;
 import com.lc.ibps.components.verification.model.InspectionItemVO;
+import com.lc.ibps.components.verification.report.ReportDataDTO;
 import com.lc.ibps.components.verification.service.PerformanceVerificationService;
 import com.lc.ibps.components.verification.service.PerformanceVerificationService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
@@ -33,24 +36,22 @@ public class PerformanceVerificationController extends GenericProvider{
 
 
     @PostMapping(value = "/importExcelRecord",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
     @PostMapping(value = "/importExcelRecord",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
     @ApiOperation("导入检测数据")
     @ApiOperation("导入检测数据")
-    public APIResult<Void> importExcelRecord(@RequestParam(value = "name") String name,
+    public APIResult<ReportDataDTO> importExcelRecord(
                                              @RequestParam(value = "id") String id,
                                              @RequestParam(value = "id") String id,
                                              @RequestPart(value = "applyFiles") MultipartFile applyFiles
                                              @RequestPart(value = "applyFiles") MultipartFile applyFiles
     ) {
     ) {
-        APIResult<Void> apiResult = new APIResult<>();
-        InspectionItemVO itemVO = null;
+        APIResult<ReportDataDTO> apiResult = new APIResult<>();
+        ReportDataDTO itemVO = null;
         try {
         try {
-            itemVO = performanceVerificationService.importExcelRecord(name, id, applyFiles);
-            if (itemVO.isDataPass()) {
-                apiResult.setMessage("导入成功");
-                apiResult.setState(StateEnum.SUCCESS.getCode());
-            } else {
-                apiResult.setMessage("数据校验失败");
-                apiResult.setState(StateEnum.ERROR.getCode());
-//            apiResult.setVariables(itemVO.getErrorMessage());
-            }
+            itemVO = performanceVerificationService.importExcelRecord( id, applyFiles);
+            apiResult.setData(itemVO);
+
+            apiResult.setMessage("导入成功");
+            apiResult.setState(StateEnum.SUCCESS.getCode());
+
         } catch (IOException e) {
         } catch (IOException e) {
-            apiResult.setMessage("导入失败");
+            apiResult.setMessage("数据校验失败");
+            apiResult.setCause(e.getMessage());
             apiResult.setState(StateEnum.ERROR.getCode());
             apiResult.setState(StateEnum.ERROR.getCode());
         }
         }
 
 
@@ -58,17 +59,26 @@ public class PerformanceVerificationController extends GenericProvider{
         return apiResult;
         return apiResult;
     }
     }
 
 
+    @PostMapping(value = "/getReportRecord")
+    @ApiOperation("导出检测报告数据")
+    public APIResult<ReportDataDTO> importExcelRecord(
+            @RequestParam(value = "id") String id){
+        APIResult<ReportDataDTO> apiResult = new APIResult<>();
+        ReportDataDTO reportRecord = performanceVerificationService.getReportRecord(id);
+        apiResult.setData(reportRecord);
+        return apiResult;
+    }
+
     @PostMapping("/exportExcelTemplate")
     @PostMapping("/exportExcelTemplate")
     @ApiOperation(value = "导出数据模板", notes = "导出数据模板")
     @ApiOperation(value = "导出数据模板", notes = "导出数据模板")
-    public  APIResult<Void> exportExcelTemplate(@RequestParam(value = "name") String name,
-                                    @RequestParam(value = "id") String id) {
+    public  APIResult<Void> exportExcelTemplate( @RequestParam(value = "id") String id) {
         ByteArrayOutputStream bos = null;
         ByteArrayOutputStream bos = null;
         APIResult<Void> apiResult = new APIResult<>();
         APIResult<Void> apiResult = new APIResult<>();
         try {
         try {
 
 
-            Workbook workbook = performanceVerificationService.exportExcelTemplateExport(name, id);
+            Workbook workbook = performanceVerificationService.exportExcelTemplateExport( id);
 //			String rootRealPath = AppFileUtil.getRealPath("/" + AppFileUtil.TEMP_PATH); // 操作的根目录
 //			String rootRealPath = AppFileUtil.getRealPath("/" + AppFileUtil.TEMP_PATH); // 操作的根目录
-            String fileName = "dataTemplate_" + name + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx");
+            String fileName = "dataTemplate_"  + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx");
 //			FileUtil.writeFile(rootRealPath + File.separator + fileName + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx"), workbook);
 //			FileUtil.writeFile(rootRealPath + File.separator + fileName + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx"), workbook);
             bos = new ByteArrayOutputStream();
             bos = new ByteArrayOutputStream();
             workbook.write(bos);
             workbook.write(bos);
@@ -93,15 +103,14 @@ public class PerformanceVerificationController extends GenericProvider{
     }
     }
     @PostMapping("/exportExcelReport")
     @PostMapping("/exportExcelReport")
     @ApiOperation(value = "导出数据报告", notes = "导出数据报告")
     @ApiOperation(value = "导出数据报告", notes = "导出数据报告")
-    public  APIResult<Void> exportExcelReport(@RequestParam(value = "name") String name,
-                               @RequestParam(value = "id") String id) {
+    public  APIResult<Void> exportExcelReport(@RequestParam(value = "id") String id) {
         ByteArrayOutputStream bos = null;
         ByteArrayOutputStream bos = null;
         APIResult<Void> apiResult = new APIResult<>();
         APIResult<Void> apiResult = new APIResult<>();
         try {
         try {
 
 
-            Workbook workbook = performanceVerificationService.exportExcelReport(name, id);
+            Workbook workbook = performanceVerificationService.exportExcelReport( id);
 //			String rootRealPath = AppFileUtil.getRealPath("/" + AppFileUtil.TEMP_PATH); // 操作的根目录
 //			String rootRealPath = AppFileUtil.getRealPath("/" + AppFileUtil.TEMP_PATH); // 操作的根目录
-            String fileName = "dataReport_" + name + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx");
+            String fileName = "dataReport_" + null + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx");
 //			FileUtil.writeFile(rootRealPath + File.separator + fileName + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx"), workbook);
 //			FileUtil.writeFile(rootRealPath + File.separator + fileName + (workbook instanceof HSSFWorkbook ? ".xls" : ".xlsx"), workbook);
             bos = new ByteArrayOutputStream();
             bos = new ByteArrayOutputStream();
             workbook.write(bos);
             workbook.write(bos);

+ 26 - 18
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/excel/PVTest.java

@@ -41,15 +41,16 @@ public class PVTest {
 
 
     @Test
     @Test
     public void testExcelTemplateExport() throws IOException {
     public void testExcelTemplateExport() throws IOException {
-//        InspectionConfigVO config = new InspectionConfigVO("批内精密度",1,2,
-//                new String[]{"高溶度(R1)","低浓度(R2)"},10, LocalDate.now(),true);
+//        InspectionConfigVO config = new InspectionConfigVO("批间精密度",5,2,
+//                new String[]{"高溶度(R1)","低浓度(R2)"},3, LocalDate.now(),true);
 
 
 //        InspectionConfigVO config = new InspectionConfigVO("正确度",5,2,
 //        InspectionConfigVO config = new InspectionConfigVO("正确度",5,2,
 //                new String[]{"L2","L4"},2, LocalDate.now(),true);
 //                new String[]{"L2","L4"},2, LocalDate.now(),true);
 
 
-        InspectionConfigVO config = new InspectionConfigVO("线性范围", 1, 7,
-                new String[]{"E8", "E7", "E6", "E5", "E4", "E3", "E2"}, 3, LocalDate.now(), true);
-
+//        InspectionConfigVO config = new InspectionConfigVO("线性范围", 1, 7,
+//                new String[]{"E8", "E7", "E6", "E5", "E4", "E3", "E2"}, 3, LocalDate.now(), true);
+        InspectionConfigVO config = new InspectionConfigVO("EP15-2A",5,2,
+                new String[]{"L2","L4"},3, LocalDate.now(),true);
         InspectionItemVO item = new InspectionItemVO(config);
         InspectionItemVO item = new InspectionItemVO(config);
         Workbook workbook = item.exportExcelTemplate();
         Workbook workbook = item.exportExcelTemplate();
         FileOutputStream fos = new FileOutputStream(String.format("C:/tmp/%s.xlsx", config.getName()));
         FileOutputStream fos = new FileOutputStream(String.format("C:/tmp/%s.xlsx", config.getName()));
@@ -68,6 +69,13 @@ public class PVTest {
 //        File file = new File(String.format("C:/tmp/%sdata.xlsx",config.getName()));
 //        File file = new File(String.format("C:/tmp/%sdata.xlsx",config.getName()));
 //        FileInputStream in = new FileInputStream(file);
 //        FileInputStream in = new FileInputStream(file);
 //        item.importExcelRecord(in);
 //        item.importExcelRecord(in);
+        InspectionConfigVO config = new InspectionConfigVO("EP15-2A",5,2,
+                new String[]{"L2","L4"},3, LocalDate.now(),false);
+                config.setFunc(new FunctionEnum[]{FunctionEnum.AVERAGE,FunctionEnum.SD,FunctionEnum.CV});
+        InspectionItemVO item = new InspectionItemVO(config);
+        File file = new File(String.format("C:/tmp/%sdata.xlsx",config.getName()));
+        FileInputStream in = new FileInputStream(file);
+        item.importExcelRecord(in);
         //批内精密度
         //批内精密度
 //        InspectionConfigVO config2 = new InspectionConfigVO("批内精密度",1,2,
 //        InspectionConfigVO config2 = new InspectionConfigVO("批内精密度",1,2,
 //                new String[]{"高溶度(R1)","低浓度(R2)"},10, LocalDate.now(),true);
 //                new String[]{"高溶度(R1)","低浓度(R2)"},10, LocalDate.now(),true);
@@ -88,29 +96,29 @@ public class PVTest {
 //        item3.importExcelRecord(in3);
 //        item3.importExcelRecord(in3);
 
 
         //线性范围
         //线性范围
-        InspectionConfigVO config4 = new InspectionConfigVO("线性范围", 1, 7,
-                new String[]{"E8", "E7", "E6", "E5", "E4", "E3", "E2"}, 3, LocalDate.now(), true);
-
-        config4.setFunc(new FunctionEnum[]{FunctionEnum.AVERAGE,FunctionEnum.TARGET,FunctionEnum.LRE, FunctionEnum.R});
-        config4.setTargetValue(new double[]{8.48, 7.48, 6.48, 5.48, 4.58, 3.58, 2.58});
-        InspectionItemVO item4 = new InspectionItemVO(config4);
-        File file4 = new File(String.format("C:/tmp/%sdata.xlsx", config4.getName()));
-        FileInputStream in4 = new FileInputStream(file4);
-        item4.importExcelRecord(in4);
+//        InspectionConfigVO config4 = new InspectionConfigVO("线性范围", 1, 7,
+//                new String[]{"E8", "E7", "E6", "E5", "E4", "E3", "E2"}, 3, LocalDate.now(), true);
+//
+//        config4.setFunc(new FunctionEnum[]{FunctionEnum.AVERAGE,FunctionEnum.TARGET,FunctionEnum.LRE, FunctionEnum.R});
+//        config4.setTargetValue(new double[]{8.48, 7.48, 6.48, 5.48, 4.58, 3.58, 2.58});
+//        InspectionItemVO item4 = new InspectionItemVO(config4);
+//        File file4 = new File(String.format("C:/tmp/%sdata.xlsx", config4.getName()));
+//        FileInputStream in4 = new FileInputStream(file4);
+//        item4.importExcelRecord(in4);
 
 
 
 
         InspectionVO vo = new InspectionVO();
         InspectionVO vo = new InspectionVO();
         vo.setName("TEST");
         vo.setName("TEST");
-//        vo.getItem().add(item);
+        vo.getItem().add(item);
 //        vo.getItem().add(item2);
 //        vo.getItem().add(item2);
 //        vo.getItem().add(item3);
 //        vo.getItem().add(item3);
-        vo.getItem().add(item4);
-        final String s = JSONObject.toJSONString(vo,SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect);
+//        vo.getItem().add(item4);
+        final String s = JSONObject.toJSONString(item,SerializerFeature.PrettyFormat,SerializerFeature.DisableCircularReferenceDetect);
         InspectionVO voJson = JSON.parseObject(s, InspectionVO.class);
         InspectionVO voJson = JSON.parseObject(s, InspectionVO.class);
 
 
         System.out.println(s);
         System.out.println(s);
         final Workbook workbook = vo.exportExcelReport(false);
         final Workbook workbook = vo.exportExcelReport(false);
-        FileOutputStream fos = new FileOutputStream(String.format("C:/tmp/%s.xlsx", vo.getName()));
+        FileOutputStream fos = new FileOutputStream(String.format("C:/tmp/%sReport.xlsx", config.getName()));
         workbook.write(fos);
         workbook.write(fos);
         fos.close();
         fos.close();
 
 

+ 10 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/CalcVO.java

@@ -0,0 +1,10 @@
+package com.lc.ibps.components.verification.model;
+
+import java.text.DecimalFormat;
+
+public class CalcVO {
+
+    public double format(double d,int scale){
+        return Double.parseDouble(String.format("%."+scale+"f", d));
+    }
+}

+ 96 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/ConfigVO.java

@@ -0,0 +1,96 @@
+package com.lc.ibps.components.verification.model;
+
+public class ConfigVO {
+
+
+    private String[] model;
+    private String range;
+    private String standard;
+    private String remark;
+    private double tea;
+    private String batchCVS;
+    private double batchCVSValue;
+    private String dailyCVS;
+    private double dailyCVSValue;
+    private int decimal;
+
+    public String[] getModel() {
+        return model;
+    }
+
+    public void setModel(String[] model) {
+        this.model = model;
+    }
+
+    public String getRange() {
+        return range;
+    }
+
+    public void setRange(String range) {
+        this.range = range;
+    }
+
+    public String getStandard() {
+        return standard;
+    }
+
+    public void setStandard(String standard) {
+        this.standard = standard;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public double getTea() {
+        return tea;
+    }
+
+    public void setTea(double tea) {
+        this.tea = tea;
+    }
+
+    public String getBatchCVS() {
+        return batchCVS;
+    }
+
+    public void setBatchCVS(String batchCVS) {
+        this.batchCVS = batchCVS;
+    }
+
+    public double getBatchCVSValue() {
+        return batchCVSValue;
+    }
+
+    public void setBatchCVSValue(double batchCVSValue) {
+        this.batchCVSValue = batchCVSValue;
+    }
+
+    public String getDailyCVS() {
+        return dailyCVS;
+    }
+
+    public void setDailyCVS(String dailyCVS) {
+        this.dailyCVS = dailyCVS;
+    }
+
+    public double getDailyCVSValue() {
+        return dailyCVSValue;
+    }
+
+    public void setDailyCVSValue(double dailyCVSValue) {
+        this.dailyCVSValue = dailyCVSValue;
+    }
+
+    public int getDecimal() {
+        return decimal;
+    }
+
+    public void setDecimal(int decimal) {
+        this.decimal = decimal;
+    }
+}

+ 137 - 28
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/EP15CalcVO.java

@@ -4,10 +4,10 @@ import com.lc.ibps.components.verification.funcs.xAverage;
 import com.lc.ibps.components.verification.funcs.xFuncStdevVar;
 import com.lc.ibps.components.verification.funcs.xFuncStdevVar;
 import com.lc.ibps.components.verification.funcs.xValue;
 import com.lc.ibps.components.verification.funcs.xValue;
 
 
+import java.text.DecimalFormat;
 import java.util.Arrays;
 import java.util.Arrays;
-import java.util.stream.Collectors;
 
 
-public class EP15CalcVO {
+public class EP15CalcVO extends CalcVO{
 
 
     private SpecimensCalcVO[] data;
     private SpecimensCalcVO[] data;
 
 
@@ -23,9 +23,9 @@ public class EP15CalcVO {
 8   Day 4	3.5	    3.45	3.51	3.487	    0.032	0.001
 8   Day 4	3.5	    3.45	3.51	3.487	    0.032	0.001
 9   Day 5	3.33	3.45	3.32	3.367	    0.072	0.005
 9   Day 5	3.33	3.45	3.32	3.367	    0.072	0.005
 
 
-11  Over all mean [ Average E5:E9]	        3.367
+11  Over all mean [ Average E5:E9]	        3.367       总均值
 12  Within run variance Vr [ average G5:G9]	0.010
 12  Within run variance Vr [ average G5:G9]	0.010
-13 Within run SD [SQRT(B12)]	            0.101       批内标准差
+13 Within run SD [SQRT(B12)]	            0.101       批内标准差(Sr)
 14  Between run SD [SD(E5:E9)]	            0.073
 14  Between run SD [SD(E5:E9)]	            0.073
 15  Between run variance Vb [B14*B14]	    0.005       批间方差
 15  Between run variance Vb [B14*B14]	    0.005       批间方差
 16  Ratio Vr/Vb  [+B12/B15]	                1.928
 16  Ratio Vr/Vb  [+B12/B15]	                1.928
@@ -33,40 +33,149 @@ public class EP15CalcVO {
 18  Laboratory SD [SQRT B17]	            0.110       室内标准差
 18  Laboratory SD [SQRT B17]	            0.110       室内标准差
 19  Laboratory CV[ (B18/B11)*100]	        3.259
 19  Laboratory CV[ (B18/B11)*100]	        3.259
 */
 */
+    private double mean;
+    private double sr;
+    private double vb;
+    private double s1;
 
 
-    private xValue withinSD;
-    private xValue vb;
-    private xValue labSD;
-    private int days;
+    private double cvr;
+    private double cv1;
+    private double n;
+    private int decimal;
 
 
-    public EP15CalcVO(SpecimensCalcVO[] data, int days) {
+    private double allowableCvr;
+    private double allowableCv1;
+    private double allowableSr;
+    private double allowableS1;
+
+    public EP15CalcVO(SpecimensCalcVO[] data, int repeatNum,double allowableCvr,double allowableCv1,int decimal) {
         this.data = data;
         this.data = data;
-        this.days = days;
-        getLabSD();
+        this.n = repeatNum;
+        this.allowableCvr = allowableCvr;
+        this.allowableCv1 = allowableCv1;
+        this.decimal = decimal;
+        calculate();
     }
     }
 
 
-    public xValue getWithinSD() {
-        if (withinSD == null) {
-            xValue[] vrs = Arrays.stream(data).map(SpecimensCalcVO::getVariance).toArray(xValue[]::new);
-            xValue withinVr = xAverage.eval(vrs);
-            withinSD = new xValue(Math.sqrt(withinVr.getDoub()));
-        }
-        return withinSD;
+    public double getSr() {
+        return sr;
     }
     }
 
 
-    public xValue getVb() {
-        if (vb == null) {
-            xValue[] vrs = Arrays.stream(data).map(SpecimensCalcVO::getMean).toArray(xValue[]::new);
-            xValue x = xFuncStdevVar.evalArgs(vrs, xFuncStdevVar.iSTDEV);
-            vb = new xValue(Math.pow(x.getDoub(), 2));
-        }
+    public double getVb() {
         return vb;
         return vb;
     }
     }
 
 
-    public xValue getLabSD() {
-        if (labSD == null) {
-            labSD = new xValue(Math.sqrt((days - 1 / days) * Math.pow(getWithinSD().getDoub(), 2) + getVb().getDoub()));
+    public double getMean() {
+        return mean;
+    }
+
+    public void setMean(double mean) {
+        this.mean = mean;
+    }
+
+    public void setSr(double sr) {
+        this.sr = sr;
+    }
+
+    public void setVb(double vb) {
+        this.vb = vb;
+    }
+
+    public double getS1() {
+        return s1;
+    }
+
+    public void setS1(double s1) {
+        this.s1 = s1;
+    }
+
+    public double getCvr() {
+        return cvr;
+    }
+
+    public void setCvr(double cvr) {
+        this.cvr = cvr;
+    }
+
+    public double getCv1() {
+        return cv1;
+    }
+
+    public void setCv1(double cv1) {
+        this.cv1 = cv1;
+    }
+
+
+    public double getAllowableCvr() {
+        return allowableCvr;
+    }
+
+    public void setAllowableCvr(double allowableCvr) {
+        this.allowableCvr = allowableCvr;
+    }
+
+    public double getAllowableCv1() {
+        return allowableCv1;
+    }
+
+    public void setAllowableCv1(double allowableCv1) {
+        this.allowableCv1 = allowableCv1;
+    }
+
+    public double getAllowableSr() {
+        return allowableSr;
+    }
+
+    public void setAllowableSr(double allowableSr) {
+        this.allowableSr = allowableSr;
+    }
+
+    public double getAllowableS1() {
+        return allowableS1;
+    }
+
+    public void setAllowableS1(double allowableS1) {
+        this.allowableS1 = allowableS1;
+    }
+
+    public void calculate() {
+        //批内标准差
+        xValue[] vrs = Arrays.stream(data).map(SpecimensCalcVO::getVariance).toArray(xValue[]::new);
+        double withinVr = xAverage.eval(vrs).getDoub();
+        sr = Math.sqrt(withinVr);
+        //总均值
+        xValue[] means = Arrays.stream(data).map(SpecimensCalcVO::getMean).toArray(xValue[]::new);
+        mean = xAverage.eval(means).getDoub();
+        //批间方差
+        xValue x = xFuncStdevVar.evalArgs(means, xFuncStdevVar.iSTDEV);
+        vb = Math.pow(x.getDoub(), 2);
+
+        //室内标准差
+        double v = (n - 1) / n;
+        s1 = Math.sqrt(v * withinVr + vb);
+
+        cvr = (sr/mean) * 100;
+        cv1 = (s1/mean) * 100;
+
+        //实验室允许不精密度
+        allowableSr = allowableCvr * mean/100;
+        allowableS1 = allowableCv1 * mean/100;
+
+        //format
+        allowableSr = format(allowableSr,decimal);
+        allowableS1 = format(allowableS1,decimal);
+        cv1 = format(cv1,decimal);
+        cvr = format(cvr,decimal);
+        vb = format(vb,decimal);
+        mean = format(mean,decimal);
+        sr = format(sr,decimal);
+        s1 = format(s1,decimal);
+    }
+    public double[][] getData(){
+        double[][] d = new double[data.length][];
+        for (int i = 0; i<data.length;i++){
+            d[i] = data[i].getStoreData();
         }
         }
-        return labSD;
+        return d;
     }
     }
 }
 }

+ 3 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/InspectionConfigVO.java

@@ -3,7 +3,7 @@ package com.lc.ibps.components.verification.model;
 import java.time.LocalDate;
 import java.time.LocalDate;
 import java.util.Date;
 import java.util.Date;
 
 
-public class InspectionConfigVO {
+public class InspectionConfigVO extends ConfigVO {
 
 
     //检测指标名称
     //检测指标名称
     private String name;
     private String name;
@@ -21,7 +21,9 @@ public class InspectionConfigVO {
     private FunctionEnum[] func;
     private FunctionEnum[] func;
 
 
     private double[] targetValue;
     private double[] targetValue;
+    public InspectionConfigVO(){
 
 
+    }
     public InspectionConfigVO(String name, int days, int specimensNum, String[] specimensName,
     public InspectionConfigVO(String name, int days, int specimensNum, String[] specimensName,
                               int repeatNum, LocalDate startDate,boolean isConvert) {
                               int repeatNum, LocalDate startDate,boolean isConvert) {
         this.name = name;
         this.name = name;

+ 25 - 12
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/InspectionItemVO.java

@@ -10,6 +10,7 @@ import com.lc.ibps.components.poi.excel.entity.vo.BaseEntityTypeConstants;
 import com.lc.ibps.components.verification.excel.PVExcelExportStyler;
 import com.lc.ibps.components.verification.excel.PVExcelExportStyler;
 import com.lc.ibps.components.verification.excel.PVExcelUtil;
 import com.lc.ibps.components.verification.excel.PVExcelUtil;
 import com.lc.ibps.components.verification.funcs.xValue;
 import com.lc.ibps.components.verification.funcs.xValue;
+import com.lc.ibps.components.verification.report.ReportDataDTO;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.ss.usermodel.Workbook;
 
 
 import java.io.InputStream;
 import java.io.InputStream;
@@ -35,7 +36,7 @@ public class InspectionItemVO {
     private Map<String, SpecimensCalcVO> record = new HashMap<>();
     private Map<String, SpecimensCalcVO> record = new HashMap<>();
 
 
     @JSONField(serialize = false)
     @JSONField(serialize = false)
-    private Map<String, EP15CalcVO> record2 = new HashMap<>();
+    private Map<String, CalcVO> record2 = new HashMap<>();
 
 
 
 
     @JSONField(serialize = false)
     @JSONField(serialize = false)
@@ -192,21 +193,21 @@ public class InspectionItemVO {
                     final xValue[] xValues = list.get(j).getConvertedData().get(sName);
                     final xValue[] xValues = list.get(j).getConvertedData().get(sName);
                     data[j] = new SpecimensCalcVO(xValues, config.isConvert());
                     data[j] = new SpecimensCalcVO(xValues, config.isConvert());
                 }
                 }
-                record2.put(sName, new EP15CalcVO(data,config.getDays()));
+                record2.put(sName, new EP15CalcVO(data,config.getRepeatNum(),config.getBatchCVSValue(),config.getDailyCVSValue(),config.getDecimal()));
             }
             }
-        }else {
-            for (String sName : config.getSpecimensName()) {
-                final xValue[] total = new xValue[config.getRepeatNum() * config.getDays()];
-                for (int j = 0; j < list.size(); j++) {
-                    final xValue[] xValues = list.get(j).getConvertedData().get(sName);
-                    for (int k = 0; k < xValues.length; k++) {
-                        total[j * xValues.length + k] = xValues[k];
-                    }
+        }
+        for (String sName : config.getSpecimensName()) {
+            final xValue[] total = new xValue[config.getRepeatNum() * config.getDays()];
+            for (int j = 0; j < list.size(); j++) {
+                final xValue[] xValues = list.get(j).getConvertedData().get(sName);
+                for (int k = 0; k < xValues.length; k++) {
+                    total[j * xValues.length + k] = xValues[k];
                 }
                 }
-                record.put(sName, new SpecimensCalcVO(total, config.isConvert()));
             }
             }
-            buildItemCalcVO();
+            record.put(sName, new SpecimensCalcVO(total, config.isConvert()));
         }
         }
+        buildItemCalcVO();
+
     }
     }
 
 
     private void buildItemCalcVO() {
     private void buildItemCalcVO() {
@@ -252,6 +253,7 @@ public class InspectionItemVO {
     }
     }
     public Map<String, double[]> getData(){
     public Map<String, double[]> getData(){
         Map<String, double[]> data = new HashMap<>();
         Map<String, double[]> data = new HashMap<>();
+
         for (String name : record.keySet()) {
         for (String name : record.keySet()) {
             data.put(name,record.get(name).getStoreData());
             data.put(name,record.get(name).getStoreData());
         }
         }
@@ -269,4 +271,15 @@ public class InspectionItemVO {
             }
             }
     }
     }
 
 
+    public ReportDataDTO getReportData(){
+        return null;
+    }
+
+    public Map<String, CalcVO> getRecord2() {
+        return record2;
+    }
+
+    public void setRecord2(Map<String, CalcVO> record2) {
+        this.record2 = record2;
+    }
 }
 }

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/ItemCalcVO.java

@@ -4,7 +4,7 @@ import com.lc.ibps.components.verification.funcs.xFuncArray2Args;
 import com.lc.ibps.components.verification.funcs.xValue;
 import com.lc.ibps.components.verification.funcs.xValue;
 
 
 //多个标本之间的对比计算
 //多个标本之间的对比计算
-public class ItemCalcVO {
+public class ItemCalcVO extends CalcVO{
     //多个样本均值 y
     //多个样本均值 y
     private xValue[] specimensValue;
     private xValue[] specimensValue;
     //样本的标示值/理论值 x
     //样本的标示值/理论值 x

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/model/SpecimensCalcVO.java

@@ -8,7 +8,7 @@ import com.lc.ibps.components.verification.funcs.xValue;
 /**
 /**
  * 单列数据计算
  * 单列数据计算
  */
  */
-public class SpecimensCalcVO {
+public class SpecimensCalcVO extends CalcVO{
 
 
     private xValue[] data;
     private xValue[] data;
 
 

+ 43 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/report/ReportDataDTO.java

@@ -0,0 +1,43 @@
+package com.lc.ibps.components.verification.report;
+
+import com.lc.ibps.components.verification.model.CalcVO;
+import com.lc.ibps.components.verification.model.InspectionConfigVO;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ReportDataDTO {
+
+    private InspectionConfigVO config;
+
+    private Map<String, CalcVO> reportData = new HashMap<>();
+
+    private Map<String, double[]> data = new HashMap<>();
+
+
+    public InspectionConfigVO getConfig() {
+        return config;
+    }
+
+    public void setConfig(InspectionConfigVO config) {
+        this.config = config;
+    }
+
+    public Map<String, double[]> getData() {
+        return data;
+    }
+
+    public void setData(Map<String, double[]> data) {
+        this.data = data;
+    }
+
+    public Map<String, CalcVO> getReportData() {
+        return reportData;
+    }
+
+    public void setReportData(Map<String, CalcVO> reportData) {
+        this.reportData = reportData;
+    }
+
+}

+ 19 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/report/ReportFactory.java

@@ -0,0 +1,19 @@
+package com.lc.ibps.components.verification.report;
+
+import com.lc.ibps.components.verification.model.InspectionItemVO;
+
+public class ReportFactory {
+
+    public static ReportDataDTO build(InspectionItemVO item){
+        ReportDataDTO data = new ReportDataDTO();
+
+        data.setConfig(item.getConfig());
+        data.setData(item.getData());
+        if(item.getConfig().getName().toLowerCase().contains("ep15")){
+            data.setReportData(item.getRecord2());
+        } else{
+//            data.setData(item.getRecord());
+        }
+        return  data;
+    }
+}

+ 6 - 4
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/service/PerformanceVerificationService.java

@@ -1,6 +1,6 @@
 package com.lc.ibps.components.verification.service;
 package com.lc.ibps.components.verification.service;
 
 
-import com.lc.ibps.components.verification.model.InspectionItemVO;
+import com.lc.ibps.components.verification.report.ReportDataDTO;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
 
@@ -8,11 +8,13 @@ import java.io.IOException;
 
 
 public interface PerformanceVerificationService {
 public interface PerformanceVerificationService {
 
 
-    InspectionItemVO importExcelRecord(String name,
+    ReportDataDTO importExcelRecord(
                                        String id,
                                        String id,
                                        MultipartFile applyFiles) throws IOException;
                                        MultipartFile applyFiles) throws IOException;
 
 
-    Workbook exportExcelTemplateExport(String name, String id);
+    Workbook exportExcelTemplateExport(String id);
 
 
-    Workbook exportExcelReport(String name, String id);
+    Workbook exportExcelReport( String id);
+
+    ReportDataDTO getReportRecord(String id);
 }
 }

+ 50 - 22
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/verification/service/impl/PerformanceVerificationServiceImpl.java

@@ -1,56 +1,84 @@
 package com.lc.ibps.components.verification.service.impl;
 package com.lc.ibps.components.verification.service.impl;
 
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.lc.ibps.components.pv.domain.Experimental;
+import com.lc.ibps.components.pv.persistence.entity.ExperimentalPo;
+import com.lc.ibps.components.pv.repository.ExperimentalRepository;
 import com.lc.ibps.components.verification.model.InspectionConfigVO;
 import com.lc.ibps.components.verification.model.InspectionConfigVO;
 import com.lc.ibps.components.verification.model.InspectionItemVO;
 import com.lc.ibps.components.verification.model.InspectionItemVO;
-import com.lc.ibps.components.verification.model.InspectionVO;
+import com.lc.ibps.components.verification.report.ReportDataDTO;
+import com.lc.ibps.components.verification.report.ReportFactory;
 import com.lc.ibps.components.verification.service.PerformanceVerificationService;
 import com.lc.ibps.components.verification.service.PerformanceVerificationService;
-import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
 
+import javax.annotation.Resource;
 import java.io.IOException;
 import java.io.IOException;
-import java.time.LocalDate;
-import java.util.HashMap;
-import java.util.Map;
 
 
 @Service
 @Service
 public class PerformanceVerificationServiceImpl implements PerformanceVerificationService {
 public class PerformanceVerificationServiceImpl implements PerformanceVerificationService {
 
 
-    //todo:
-    private Map<String,InspectionItemVO> data = new HashMap<>();
+    @Resource
+    private ExperimentalRepository experimentalRepository;
     @Override
     @Override
-    public InspectionItemVO importExcelRecord(String name, String id, MultipartFile applyFiles) throws IOException {
+    public ReportDataDTO importExcelRecord(String id, MultipartFile applyFiles) throws IOException {
 
 
-        InspectionConfigVO config = getInspectionConfig(name, id);
+        InspectionConfigVO config = getInspectionConfig(id);
         InspectionItemVO item = new InspectionItemVO(config);
         InspectionItemVO item = new InspectionItemVO(config);
         item.importExcelRecord(applyFiles.getInputStream());
         item.importExcelRecord(applyFiles.getInputStream());
-        data.put(id+name,item);
-        return item;
+        Experimental experimental = experimentalRepository.load(id);
+        if(!item.isDataPass()){
+            throw new IOException(JSONObject.toJSONString(item.getErrorMessage(), SerializerFeature.DisableCircularReferenceDetect));
+        }
+        ReportDataDTO dataDTO = ReportFactory.build(item);
+        experimental.getData().setShiYanShuJu(JSONObject.toJSONString(dataDTO,SerializerFeature.DisableCircularReferenceDetect));
+        experimental.save();
+        return dataDTO;
     }
     }
 
 
     @Override
     @Override
-    public Workbook exportExcelTemplateExport(String name, String id) {
-        InspectionConfigVO config = getInspectionConfig(name, id);
+    public Workbook exportExcelTemplateExport(String id) {
+        InspectionConfigVO config = getInspectionConfig(id);
         InspectionItemVO item = new InspectionItemVO(config);
         InspectionItemVO item = new InspectionItemVO(config);
         Workbook workbook = item.exportExcelTemplate();
         Workbook workbook = item.exportExcelTemplate();
         return workbook;
         return workbook;
     }
     }
 
 
     @Override
     @Override
-    public Workbook exportExcelReport(String name, String id) {
-        InspectionVO inspectionVO = new InspectionVO();
-        InspectionItemVO item = data.get(id+name);
+    public Workbook exportExcelReport(String id) {
+        ExperimentalPo experimentalPo = experimentalRepository.get(id);
+        InspectionItemVO item = JSON.parseObject(experimentalPo.getShiYanShuJu(), InspectionItemVO.class);
+
         if(item == null) throw new RuntimeException("can't find this config");
         if(item == null) throw new RuntimeException("can't find this config");
-        inspectionVO.getItem().add(item);
-        Workbook workbook = inspectionVO.exportExcelReport(StringUtils.isNotBlank(name));
-        return workbook;
+//        inspectionVO.getItem().add(item);
+//        Workbook workbook = inspectionVO.exportExcelReport(StringUtils.isNotBlank(item.get));
+        return null;
+    }
+
+    @Override
+    public ReportDataDTO getReportRecord(String id) {
+        ExperimentalPo experimentalPo = experimentalRepository.get(id);
+        InspectionItemVO item = JSON.parseObject(experimentalPo.getShiYanShuJu(), InspectionItemVO.class);
+        return null;
     }
     }
 
 
-    private InspectionConfigVO getInspectionConfig(String name, String id) {
+    private InspectionConfigVO getInspectionConfig( String id) {
 
 
-        InspectionConfigVO config = new InspectionConfigVO("线性范围", 1, 7,
-                new String[]{"E8", "E7", "E6", "E5", "E4", "E3", "E2"}, 3, LocalDate.now(), true);
+        ExperimentalPo experimentalPo = experimentalRepository.get(id);
+        String shiYanCanShu = experimentalPo.getShiYanCanShu();
+        InspectionConfigVO config = JSON.parseObject(shiYanCanShu, InspectionConfigVO.class);
+        config.setName(experimentalPo.getFangAnLeiXing());
+        config.setDecimal(Integer.valueOf(experimentalPo.getBaoLiuXiaoShu()));
+        if(config.getSpecimensName() == null){
+            String[] names = new String[config.getSpecimensNum()];
+            for (int i = 0; i < config.getSpecimensNum(); i++) {
+                names[i] = String.format("水平 %d",i+1);
+            }
+            config.setSpecimensName(names);
+        }
         return config;
         return config;
     }
     }
 }
 }

+ 5 - 3
ibps-provider-root/modules/provider-business/src/main/resources/com/lc/ibps/pv/persistence/mapping/Experimental.map.xml

@@ -33,17 +33,18 @@
 		<result property="baoGaoShiJian" column="BAO_GAO_SHI_JIAN_" jdbcType="VARCHAR"/>
 		<result property="baoGaoShiJian" column="BAO_GAO_SHI_JIAN_" jdbcType="VARCHAR"/>
 		<result property="fuJian" column="FU_JIAN_" jdbcType="VARCHAR"/>
 		<result property="fuJian" column="FU_JIAN_" jdbcType="VARCHAR"/>
 		<result property="shiYanJieLun" column="SHI_YAN_JIE_LUN_" jdbcType="BLOB"/>
 		<result property="shiYanJieLun" column="SHI_YAN_JIE_LUN_" jdbcType="BLOB"/>
+		<result property="xingNengZhiBia" column="XING_NENG_ZHI_BIA" jdbcType="VARCHAR"/>
 	</resultMap>
 	</resultMap>
 	
 	
 	<sql id="columns">
 	<sql id="columns">
-		ID_,TENANT_ID_,IP_,CREATE_BY_,CREATE_TIME_,UPDATE_BY_,UPDATE_TIME_,SHI_FOU_GUO_SHEN_,DI_DIAN_,BIAN_ZHI_REN_,BIAN_ZHI_BU_MEN_,BIAN_ZHI_SHI_JIAN,KUAI_ZHAO_,SHI_YAN_XIANG_MU_,SHI_YAN_FANG_FA_,YANG_BEN_LEI_XING,SHI_YAN_YI_QI_,YI_QI_BIAN_HAO_,KAI_SHI_SHI_JIAN_,JIE_SHU_SHI_JIAN_,JIE_GUO_DAN_WEI_,BAO_LIU_XIAO_SHU_,BEI_ZHU_,FANG_AN_LEI_XING_,SHI_YAN_CAN_SHU_,SHI_YAN_SHU_JU_,SHEN_HE_REN_,BAO_GAO_SHI_JIAN_,FU_JIAN_,SHI_YAN_JIE_LUN_
+		ID_,TENANT_ID_,IP_,CREATE_BY_,CREATE_TIME_,UPDATE_BY_,UPDATE_TIME_,SHI_FOU_GUO_SHEN_,DI_DIAN_,BIAN_ZHI_REN_,BIAN_ZHI_BU_MEN_,BIAN_ZHI_SHI_JIAN,KUAI_ZHAO_,SHI_YAN_XIANG_MU_,SHI_YAN_FANG_FA_,YANG_BEN_LEI_XING,SHI_YAN_YI_QI_,YI_QI_BIAN_HAO_,KAI_SHI_SHI_JIAN_,JIE_SHU_SHI_JIAN_,JIE_GUO_DAN_WEI_,BAO_LIU_XIAO_SHU_,BEI_ZHU_,FANG_AN_LEI_XING_,SHI_YAN_CAN_SHU_,SHI_YAN_SHU_JU_,SHEN_HE_REN_,BAO_GAO_SHI_JIAN_,FU_JIAN_,SHI_YAN_JIE_LUN_,XING_NENG_ZHI_BIA
 	</sql>
 	</sql>
 	
 	
 	<insert id="create" parameterType="com.lc.ibps.components.pv.persistence.entity.ExperimentalPo">
 	<insert id="create" parameterType="com.lc.ibps.components.pv.persistence.entity.ExperimentalPo">
 		INSERT INTO T_XNYZSYXX
 		INSERT INTO T_XNYZSYXX
 		(<include refid="columns"/>)
 		(<include refid="columns"/>)
 		VALUES 
 		VALUES 
-		(#{id,jdbcType=VARCHAR}, #{tenantId,jdbcType=VARCHAR}, #{ip,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{shiFouGuoShen,jdbcType=VARCHAR}, #{diDian,jdbcType=VARCHAR}, #{bianZhiRen,jdbcType=VARCHAR}, #{bianZhiBuMen,jdbcType=VARCHAR}, #{bianZhiShiJian,jdbcType=VARCHAR}, #{kuaiZhao,jdbcType=VARCHAR}, #{shiYanXiangMu,jdbcType=VARCHAR}, #{shiYanFangFa,jdbcType=VARCHAR}, #{yangBenLeiXing,jdbcType=VARCHAR}, #{shiYanYiQi,jdbcType=VARCHAR}, #{yiQiBianHao,jdbcType=VARCHAR}, #{kaiShiShiJian,jdbcType=VARCHAR}, #{jieShuShiJian,jdbcType=VARCHAR}, #{jieGuoDanWei,jdbcType=VARCHAR}, #{baoLiuXiaoShu,jdbcType=VARCHAR}, #{beiZhu,jdbcType=VARCHAR}, #{fangAnLeiXing,jdbcType=VARCHAR}, #{shiYanCanShu,jdbcType=BLOB}, #{shiYanShuJu,jdbcType=BLOB}, #{shenHeRen,jdbcType=VARCHAR}, #{baoGaoShiJian,jdbcType=VARCHAR}, #{fuJian,jdbcType=VARCHAR}, #{shiYanJieLun,jdbcType=BLOB})
+		(#{id,jdbcType=VARCHAR}, #{tenantId,jdbcType=VARCHAR}, #{ip,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{shiFouGuoShen,jdbcType=VARCHAR}, #{diDian,jdbcType=VARCHAR}, #{bianZhiRen,jdbcType=VARCHAR}, #{bianZhiBuMen,jdbcType=VARCHAR}, #{bianZhiShiJian,jdbcType=VARCHAR}, #{kuaiZhao,jdbcType=VARCHAR}, #{shiYanXiangMu,jdbcType=VARCHAR}, #{shiYanFangFa,jdbcType=VARCHAR}, #{yangBenLeiXing,jdbcType=VARCHAR}, #{shiYanYiQi,jdbcType=VARCHAR}, #{yiQiBianHao,jdbcType=VARCHAR}, #{kaiShiShiJian,jdbcType=VARCHAR}, #{jieShuShiJian,jdbcType=VARCHAR}, #{jieGuoDanWei,jdbcType=VARCHAR}, #{baoLiuXiaoShu,jdbcType=VARCHAR}, #{beiZhu,jdbcType=VARCHAR}, #{fangAnLeiXing,jdbcType=VARCHAR}, #{shiYanCanShu,jdbcType=BLOB}, #{shiYanShuJu,jdbcType=BLOB}, #{shenHeRen,jdbcType=VARCHAR}, #{baoGaoShiJian,jdbcType=VARCHAR}, #{fuJian,jdbcType=VARCHAR}, #{shiYanJieLun,jdbcType=BLOB}, #{xingNengZhiBia,jdbcType=VARCHAR})
 	</insert>
 	</insert>
 	
 	
 	<select id="get" parameterType="java.lang.String" resultMap="ExperimentalPo">
 	<select id="get" parameterType="java.lang.String" resultMap="ExperimentalPo">
@@ -113,7 +114,8 @@
 		SHEN_HE_REN_=#{shenHeRen,jdbcType=VARCHAR},
 		SHEN_HE_REN_=#{shenHeRen,jdbcType=VARCHAR},
 		BAO_GAO_SHI_JIAN_=#{baoGaoShiJian,jdbcType=VARCHAR},
 		BAO_GAO_SHI_JIAN_=#{baoGaoShiJian,jdbcType=VARCHAR},
 		FU_JIAN_=#{fuJian,jdbcType=VARCHAR},
 		FU_JIAN_=#{fuJian,jdbcType=VARCHAR},
-		SHI_YAN_JIE_LUN_=#{shiYanJieLun,jdbcType=BLOB}
+		SHI_YAN_JIE_LUN_=#{shiYanJieLun,jdbcType=BLOB},
+		XING_NENG_ZHI_BIA=#{xingNengZhiBia,jdbcType=VARCHAR}
 		WHERE
 		WHERE
 		ID_=#{id}
 		ID_=#{id}
 	</update>
 	</update>

+ 1 - 1
ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/PvBaseTest.java

@@ -14,7 +14,7 @@ import com.lc.ibps.api.base.id.IdGenerator;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:10
+ * 创建时间:2024-05-16 11:39:20
  *</pre>
  *</pre>
  */
  */
 @ContextConfiguration({"classpath:conf/components-test.xml"})
 @ContextConfiguration({"classpath:conf/components-test.xml"})

+ 1 - 1
ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/domain/ExperimentalTest.java

@@ -20,7 +20,7 @@ import com.lc.ibps.components.PvBaseTest;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:05
+ * 创建时间:2024-05-16 11:39:14
  *</pre>
  *</pre>
  */
  */
 public class ExperimentalTest extends PvBaseTest{
 public class ExperimentalTest extends PvBaseTest{

+ 1 - 1
ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/domain/ReagentTest.java

@@ -20,7 +20,7 @@ import com.lc.ibps.components.PvBaseTest;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:11
+ * 创建时间:2024-05-16 11:39:20
  *</pre>
  *</pre>
  */
  */
 public class ReagentTest extends PvBaseTest{
 public class ReagentTest extends PvBaseTest{

+ 1 - 1
ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/persistence/dao/ExperimentalDaoTest.java

@@ -17,7 +17,7 @@ import com.lc.ibps.components.PvBaseTest;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:04
+ * 创建时间:2024-05-16 11:39:12
  *</pre>
  *</pre>
  */
  */
 public class ExperimentalDaoTest extends PvBaseTest{
 public class ExperimentalDaoTest extends PvBaseTest{

+ 1 - 1
ibps-provider-root/modules/provider-business/src/test/java/com/lc/ibps/components/pv/persistence/dao/ReagentDaoTest.java

@@ -17,7 +17,7 @@ import com.lc.ibps.components.PvBaseTest;
  *<pre> 
  *<pre> 
  * 开发公司:深圳市金源信通科技有限公司
  * 开发公司:深圳市金源信通科技有限公司
  * 开发人员:codegen
  * 开发人员:codegen
- * 创建时间:2024-05-14 10:49:09
+ * 创建时间:2024-05-16 11:39:19
  *</pre>
  *</pre>
  */
  */
 public class ReagentDaoTest extends PvBaseTest{
 public class ReagentDaoTest extends PvBaseTest{