diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
index 0c4e748..7f9dba2 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
@@ -30,6 +30,12 @@
id, order_id, sample_id, measure_dept_id, measure_person_id, measure_item, measure_sequence, execute_sequence, measure_status, is_auto, require_certifications, operate_time, start_time, end_time, remark, is_del, create_user, create_time, update_time
+
+
+ csi.id AS sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, bo.order_code AS orderNo, bo.id AS orderId,
+ bo.customer_id, bo.customer_name, bo.deliverer, bo.is_urgent, csi.sample_belong, bo.require_over_time, blei.require_certifications, blei.measure_status
+
+
+
+
+
+
+
+
+ UPDATE business_lab_executive_info blei
+ SET measure_status = 3
+ WHERE measure_person_id = #{userId}
+ AND order_id IN
+
+ #{item.orderId}
+
+ AND sample_id IN
+
+ #{item.sampleId}
+
+
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
index 0c4e748..7f9dba2 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
@@ -30,6 +30,12 @@
id, order_id, sample_id, measure_dept_id, measure_person_id, measure_item, measure_sequence, execute_sequence, measure_status, is_auto, require_certifications, operate_time, start_time, end_time, remark, is_del, create_user, create_time, update_time
+
+
+ csi.id AS sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, bo.order_code AS orderNo, bo.id AS orderId,
+ bo.customer_id, bo.customer_name, bo.deliverer, bo.is_urgent, csi.sample_belong, bo.require_over_time, blei.require_certifications, blei.measure_status
+
+
+
+
+
+
+
+
+ UPDATE business_lab_executive_info blei
+ SET measure_status = 3
+ WHERE measure_person_id = #{userId}
+ AND order_id IN
+
+ #{item.orderId}
+
+ AND sample_id IN
+
+ #{item.sampleId}
+
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
index d3e2b05..9f6c97f 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
@@ -24,7 +24,9 @@
bleoi.operate_person_name AS sendBackPerson, bleoi.operate_reason AS sendBackReason, bleoi.create_time AS sendBackTime
FROM business_lab_executive_operate_log bleoi
JOIN sys_dept sd ON bleoi.measure_dept_id = sd.ID
- WHERE bleoi.order_id = #{request.orderId}
+ WHERE measure_status = 4
+ AND bleoi.order_id = #{request.orderId}
AND bleoi.sample_id = #{request.sampleId}
+ ORDER BY bleoi.create_time ASC
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
index 0c4e748..7f9dba2 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
@@ -30,6 +30,12 @@
id, order_id, sample_id, measure_dept_id, measure_person_id, measure_item, measure_sequence, execute_sequence, measure_status, is_auto, require_certifications, operate_time, start_time, end_time, remark, is_del, create_user, create_time, update_time
+
+
+ csi.id AS sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, bo.order_code AS orderNo, bo.id AS orderId,
+ bo.customer_id, bo.customer_name, bo.deliverer, bo.is_urgent, csi.sample_belong, bo.require_over_time, blei.require_certifications, blei.measure_status
+
+
+
+
+
+
+
+
+ UPDATE business_lab_executive_info blei
+ SET measure_status = 3
+ WHERE measure_person_id = #{userId}
+ AND order_id IN
+
+ #{item.orderId}
+
+ AND sample_id IN
+
+ #{item.sampleId}
+
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
index d3e2b05..9f6c97f 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
@@ -24,7 +24,9 @@
bleoi.operate_person_name AS sendBackPerson, bleoi.operate_reason AS sendBackReason, bleoi.create_time AS sendBackTime
FROM business_lab_executive_operate_log bleoi
JOIN sys_dept sd ON bleoi.measure_dept_id = sd.ID
- WHERE bleoi.order_id = #{request.orderId}
+ WHERE measure_status = 4
+ AND bleoi.order_id = #{request.orderId}
AND bleoi.sample_id = #{request.sampleId}
+ ORDER BY bleoi.create_time ASC
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
index 4a35f01..654889d 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
@@ -24,4 +24,14 @@
id, template_code, sample_type_id, sample_id, measure_dept_id, measure_person_id, measure_item, execute_sequence, remark, is_del, create_user, create_time, update_time
+
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
index 0c4e748..7f9dba2 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
@@ -30,6 +30,12 @@
id, order_id, sample_id, measure_dept_id, measure_person_id, measure_item, measure_sequence, execute_sequence, measure_status, is_auto, require_certifications, operate_time, start_time, end_time, remark, is_del, create_user, create_time, update_time
+
+
+ csi.id AS sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, bo.order_code AS orderNo, bo.id AS orderId,
+ bo.customer_id, bo.customer_name, bo.deliverer, bo.is_urgent, csi.sample_belong, bo.require_over_time, blei.require_certifications, blei.measure_status
+
+
+
+
+
+
+
+
+ UPDATE business_lab_executive_info blei
+ SET measure_status = 3
+ WHERE measure_person_id = #{userId}
+ AND order_id IN
+
+ #{item.orderId}
+
+ AND sample_id IN
+
+ #{item.sampleId}
+
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
index d3e2b05..9f6c97f 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
@@ -24,7 +24,9 @@
bleoi.operate_person_name AS sendBackPerson, bleoi.operate_reason AS sendBackReason, bleoi.create_time AS sendBackTime
FROM business_lab_executive_operate_log bleoi
JOIN sys_dept sd ON bleoi.measure_dept_id = sd.ID
- WHERE bleoi.order_id = #{request.orderId}
+ WHERE measure_status = 4
+ AND bleoi.order_id = #{request.orderId}
AND bleoi.sample_id = #{request.sampleId}
+ ORDER BY bleoi.create_time ASC
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
index 4a35f01..654889d 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
@@ -24,4 +24,14 @@
id, template_code, sample_type_id, sample_id, measure_dept_id, measure_person_id, measure_item, execute_sequence, remark, is_del, create_user, create_time, update_time
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
index cf45164..b57623d 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
@@ -95,6 +95,7 @@
JOIN business_order_sample_relation bosr ON bo.id = bosr.order_id
JOIN customer_sample_info csi ON csi.id = bosr.sample_id
WHERE bo.is_del = 0
+ AND bosr.measure_type = 1
AND (bosr.sample_status = 2 OR bosr.sample_status = 3)
AND bo.require_over_time < NOW()
@@ -129,6 +130,7 @@
AND csi.sample_belong = #{request.sampleBelong}
+ ORDER BY bosr.update_time DESC
+
+ UPDATE business_order_sample_relation
+ SET sample_status = 3
+ WHERE order_id = #{orderId} AND sample_id = #{sampleId}
+
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List selectListByInMeasureStatus(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
List selectExecutiveList(@Param("request") SampleHandOutDetailRequest request);
+
+ Page selectListByDeptIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("deptId") Long deptId, @Param("status") String status, @Param("statusList") List statusList);
+
+ Page selectListByUserIdAndStatus(Page page, @Param("request") SampleLabExecutiveListRequest request, @Param("userId") Long userId, @Param("status") String status);
+
+ int updateForSampleReceive(@Param("list") List list, @Param("userId") Long userId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
index 43d4cae..63c2005 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveTemplateInfoMapper.java
@@ -1,7 +1,12 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListRequest;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.business.BusinessLabExecutiveTemplateInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +18,6 @@
*/
public interface BusinessLabExecutiveTemplateInfoMapper extends BaseMapper {
+ List selectExecutiveList(@Param("request") SampleHandOutInitListRequest request);
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
index ecc1669..92102d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java
@@ -26,4 +26,6 @@
Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request);
SampleHandOutDetailResponse selectSampleDetail(@Param("request") SampleHandOutDetailRequest request);
+
+ int updateByOrderIdAndSampleId(@Param("orderId") Long orderId, @Param("sampleId") Long sampleId);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
index 209962b..6b34914 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterOrganizeMapper.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.dto.business.SampleHandOutInitListResponse;
import com.casic.missiles.model.meter.MeterOrganize;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +19,6 @@
public interface MeterOrganizeMapper extends BaseMapper {
Long selectMaxOrganizeNo();
+
+ List selectListByLabCapacity(@Param("list") List list);
}
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
index 0c4e748..7f9dba2 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveInfoMapper.xml
@@ -30,6 +30,12 @@
id, order_id, sample_id, measure_dept_id, measure_person_id, measure_item, measure_sequence, execute_sequence, measure_status, is_auto, require_certifications, operate_time, start_time, end_time, remark, is_del, create_user, create_time, update_time
+
+
+ csi.id AS sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, bo.order_code AS orderNo, bo.id AS orderId,
+ bo.customer_id, bo.customer_name, bo.deliverer, bo.is_urgent, csi.sample_belong, bo.require_over_time, blei.require_certifications, blei.measure_status
+
+
+
+
+
+
+
+
+ UPDATE business_lab_executive_info blei
+ SET measure_status = 3
+ WHERE measure_person_id = #{userId}
+ AND order_id IN
+
+ #{item.orderId}
+
+ AND sample_id IN
+
+ #{item.sampleId}
+
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
index d3e2b05..9f6c97f 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveOperateLogMapper.xml
@@ -24,7 +24,9 @@
bleoi.operate_person_name AS sendBackPerson, bleoi.operate_reason AS sendBackReason, bleoi.create_time AS sendBackTime
FROM business_lab_executive_operate_log bleoi
JOIN sys_dept sd ON bleoi.measure_dept_id = sd.ID
- WHERE bleoi.order_id = #{request.orderId}
+ WHERE measure_status = 4
+ AND bleoi.order_id = #{request.orderId}
AND bleoi.sample_id = #{request.sampleId}
+ ORDER BY bleoi.create_time ASC
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
index 4a35f01..654889d 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml
@@ -24,4 +24,14 @@
id, template_code, sample_type_id, sample_id, measure_dept_id, measure_person_id, measure_item, execute_sequence, remark, is_del, create_user, create_time, update_time
+
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
index cf45164..b57623d 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
@@ -95,6 +95,7 @@
JOIN business_order_sample_relation bosr ON bo.id = bosr.order_id
JOIN customer_sample_info csi ON csi.id = bosr.sample_id
WHERE bo.is_del = 0
+ AND bosr.measure_type = 1
AND (bosr.sample_status = 2 OR bosr.sample_status = 3)
AND bo.require_over_time < NOW()
@@ -129,6 +130,7 @@
AND csi.sample_belong = #{request.sampleBelong}
+ ORDER BY bosr.update_time DESC
+
+ UPDATE business_order_sample_relation
+ SET sample_status = 3
+ WHERE order_id = #{orderId} AND sample_id = #{sampleId}
+
diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterOrganizeMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterOrganizeMapper.xml
index 45ec790..734ec74 100644
--- a/casic-metering-dao/src/main/resources/mapper/meter/MeterOrganizeMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterOrganizeMapper.xml
@@ -2,6 +2,16 @@
+
+
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
index c3420c5..edc0169 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessLabExecutiveInfoController.java
@@ -6,10 +6,7 @@
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
-import com.casic.missiles.dto.business.SampleHandOutDetailResponse;
-import com.casic.missiles.dto.business.SampleHandOutListRequest;
-import com.casic.missiles.dto.business.SampleHandOutListResponse;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessLabExecutiveInfoService;
@@ -22,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -47,7 +45,7 @@
* 任务分发-查询各状态列表(待分发、检测中、检测完、已超期)
*/
@ApiOperation("任务分发-查询各状态列表")
- @PostMapping("/handOutList")
+ @PostMapping("/handOut/list")
@ResponseBody
public ReturnDTO> queryHandOutList(@RequestBody @Valid SampleHandOutListRequest handOutListRequest, BindingResult bindingResult) throws Exception {
if (bindingResult.hasErrors()) {
@@ -62,7 +60,7 @@
* 任务分发-详情
*/
@ApiOperation("任务分发-详情")
- @PostMapping("/handOutDetail")
+ @PostMapping("/handOut/detail")
@ResponseBody
public ReturnDTO queryHandOutDetail(@RequestBody @Valid SampleHandOutDetailRequest handOutDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
@@ -72,25 +70,77 @@
}
/**
- * 任务分发-标签绑定
+ * 任务分发-标签绑定(复用设备收发中的标签绑定)
*/
/**
+ * 任务分发-获取初始化检定流程(实验室列表)
+ */
+ @ApiOperation("任务分发-获取初始化检定流程")
+ @PostMapping("/handOut/initList")
+ @ResponseBody
+ public ReturnDTO> queryInitList(@RequestBody @Valid SampleHandOutInitListRequest handOutInitListRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(labExecutiveInfoService.handOutInitList(handOutInitListRequest));
+ }
+
+ /**
* 任务分发-分发
*/
-
-
- /**
- * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
- */
+ @ApiOperation("任务分发-分发")
+ @PostMapping("/handOut/execute")
+ @ResponseBody
+ public ReturnDTO handOut(@RequestBody @Valid SampleHandOutRequest handOutRequest, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.handOut(handOutRequest);
+ }
/**
* 实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)
*/
+ @ApiOperation("实验室检测-部门检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/deptExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryDeptExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.deptLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
+
+ /**
+ * 实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)
+ */
+ @ApiOperation("实验室检测-我的检测-查询各状态列表(待检测、检测中、检测完)")
+ @PostMapping("/myExecutive/List")
+ @ResponseBody
+ public ReturnDTO> queryMyExecutiveList(@RequestBody @Valid SampleLabExecutiveListRequest labExecutiveListRequest, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(labExecutiveListRequest);
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(labExecutiveInfoService.myLabExecutiveListPage(page, labExecutiveListRequest)));
+ }
/**
* 实验室检测-我的检测-检定人扫描收入(待检测->检测中)
*/
+ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)")
+ @PostMapping("/myExecutive/receive")
+ @ResponseBody
+ public ReturnDTO sampleReceive(@RequestBody @Valid List requestList, BindingResult bindingResult) {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return labExecutiveInfoService.sampleReceive(requestList);
+ }
/**
* 实验室检测-负责人/检定人检测完按钮(检测中->检测完)
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index c5c4bb0..4f241f9 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -51,7 +51,8 @@
FILE_SUBMIT_FAILED(2407, "文件提交处理失败"),
FLOW_NO_JOIN_FLOWABLE(2408, "该流程暂未接入Flowable,请重试"),
HANDLE_FAILED(500, "操作失败"),
- QRCODE_FAILED(2409, "二维码生成失败");
+ QRCODE_FAILED(2409, "二维码生成失败"),
+ RECEIVE_SAMPLE_NOT_EXIST(2410, "待检测中不存在扫描收入的样品");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
index cf08c61..367cc15 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/MeasureStatusEnum.java
@@ -8,6 +8,8 @@
public interface MeasureStatusEnum {
String TO_ALLOCATE = "1"; //待分配
String TO_MEASURE = "2"; //待检测
- String MEASURE_COMPLETE = "3"; //检测完成
- String SEND_BACK = "4"; //退回
+ String IN_MEASURE = "3"; //检测中
+ String MEASURE_COMPLETE = "4"; //检测完成
+ String SEND_BACK = "5"; //退回
+ String TERMINATED = "6"; //已终止
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
index 07da262..49887d3 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessLabExecutiveInfoMapper.java
@@ -1,9 +1,8 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.casic.missiles.dto.business.HandOutLabExecutiveDTO;
-import com.casic.missiles.dto.business.MeasureProcessDTO;
-import com.casic.missiles.dto.business.SampleHandOutDetailRequest;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.*;
import com.casic.missiles.model.business.BusinessLabExecutiveInfo;
import org.apache.ibatis.annotations.Param;
@@ -22,4 +21,10 @@
List