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 aa330f9..56621d9 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 @@ -131,6 +131,19 @@ } /** + * 实验室检测-部门检测-分配(分配给具体人员) + */ + @ApiOperation("实验室检测-部门检测-分配按钮(分配给具体人员)") + @PostMapping("/deptExecutive/allocate") + @ResponseBody + public ReturnDTO allocateStaff(@RequestBody @Valid SampleAllocateRequest sampleAllocateRequest, BindingResult bindingResult) throws Exception { + if (bindingResult.hasErrors()) { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return labExecutiveInfoService.allocateStaff(sampleAllocateRequest); + } + + /** * 实验室检测-我的检测-检定人扫描收入(待检测->检测中) */ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)") 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 aa330f9..56621d9 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 @@ -131,6 +131,19 @@ } /** + * 实验室检测-部门检测-分配(分配给具体人员) + */ + @ApiOperation("实验室检测-部门检测-分配按钮(分配给具体人员)") + @PostMapping("/deptExecutive/allocate") + @ResponseBody + public ReturnDTO allocateStaff(@RequestBody @Valid SampleAllocateRequest sampleAllocateRequest, BindingResult bindingResult) throws Exception { + if (bindingResult.hasErrors()) { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return labExecutiveInfoService.allocateStaff(sampleAllocateRequest); + } + + /** * 实验室检测-我的检测-检定人扫描收入(待检测->检测中) */ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java new file mode 100644 index 0000000..639e8a8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.business; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Description: 负责人分配员工请求实体 + * @Author: wangpeng + * @Date: 2023/3/13 15:53 + */ +@Data +@ApiModel +public class SampleAllocateRequest { + @NotNull(message = "实验室检测id不能为空") + @ApiModelProperty(value = "实验室检测id", dataType = "Long") + private Long id; + + @NotNull(message = "检定人员id不能为空") + @ApiModelProperty(value = "分配检定人员id(在本部门下的计量人员列表中选择)", dataType = "Long") + private Long measurePersonId; + +} 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 aa330f9..56621d9 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 @@ -131,6 +131,19 @@ } /** + * 实验室检测-部门检测-分配(分配给具体人员) + */ + @ApiOperation("实验室检测-部门检测-分配按钮(分配给具体人员)") + @PostMapping("/deptExecutive/allocate") + @ResponseBody + public ReturnDTO allocateStaff(@RequestBody @Valid SampleAllocateRequest sampleAllocateRequest, BindingResult bindingResult) throws Exception { + if (bindingResult.hasErrors()) { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return labExecutiveInfoService.allocateStaff(sampleAllocateRequest); + } + + /** * 实验室检测-我的检测-检定人扫描收入(待检测->检测中) */ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java new file mode 100644 index 0000000..639e8a8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.business; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Description: 负责人分配员工请求实体 + * @Author: wangpeng + * @Date: 2023/3/13 15:53 + */ +@Data +@ApiModel +public class SampleAllocateRequest { + @NotNull(message = "实验室检测id不能为空") + @ApiModelProperty(value = "实验室检测id", dataType = "Long") + private Long id; + + @NotNull(message = "检定人员id不能为空") + @ApiModelProperty(value = "分配检定人员id(在本部门下的计量人员列表中选择)", dataType = "Long") + private Long measurePersonId; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java index 0fdbe21..6d50374 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java @@ -22,7 +22,7 @@ @ContentStyle(borderLeft = BorderStyleEnum.THIN, borderBottom = BorderStyleEnum.THIN, borderTop = BorderStyleEnum.THIN, borderRight = BorderStyleEnum.THIN) @ExcelIgnoreUnannotated public class SampleLabExecutiveListResponse { - @ApiModelProperty(value = "实验室检测id(退回操作中使用)", dataType = "Long") + @ApiModelProperty(value = "实验室检测id(分配、退回操作中使用)", dataType = "Long") private Long id; @ApiModelProperty(value = "样品id", dataType = "Long") 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 aa330f9..56621d9 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 @@ -131,6 +131,19 @@ } /** + * 实验室检测-部门检测-分配(分配给具体人员) + */ + @ApiOperation("实验室检测-部门检测-分配按钮(分配给具体人员)") + @PostMapping("/deptExecutive/allocate") + @ResponseBody + public ReturnDTO allocateStaff(@RequestBody @Valid SampleAllocateRequest sampleAllocateRequest, BindingResult bindingResult) throws Exception { + if (bindingResult.hasErrors()) { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return labExecutiveInfoService.allocateStaff(sampleAllocateRequest); + } + + /** * 实验室检测-我的检测-检定人扫描收入(待检测->检测中) */ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java new file mode 100644 index 0000000..639e8a8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.business; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Description: 负责人分配员工请求实体 + * @Author: wangpeng + * @Date: 2023/3/13 15:53 + */ +@Data +@ApiModel +public class SampleAllocateRequest { + @NotNull(message = "实验室检测id不能为空") + @ApiModelProperty(value = "实验室检测id", dataType = "Long") + private Long id; + + @NotNull(message = "检定人员id不能为空") + @ApiModelProperty(value = "分配检定人员id(在本部门下的计量人员列表中选择)", dataType = "Long") + private Long measurePersonId; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java index 0fdbe21..6d50374 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java @@ -22,7 +22,7 @@ @ContentStyle(borderLeft = BorderStyleEnum.THIN, borderBottom = BorderStyleEnum.THIN, borderTop = BorderStyleEnum.THIN, borderRight = BorderStyleEnum.THIN) @ExcelIgnoreUnannotated public class SampleLabExecutiveListResponse { - @ApiModelProperty(value = "实验室检测id(退回操作中使用)", dataType = "Long") + @ApiModelProperty(value = "实验室检测id(分配、退回操作中使用)", dataType = "Long") private Long id; @ApiModelProperty(value = "样品id", dataType = "Long") diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 5b23762..a5fd16b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -216,12 +216,11 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id -// AuthUser user = ShiroKit.getUser(); -// Assert.isFalse(Objects.isNull(user), () -> { -// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); -// }); - AuthUser user = new AuthUser(); - user.setId(1634091003794550786l); + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); @@ -559,6 +558,17 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + public ReturnDTO allocateStaff(SampleAllocateRequest sampleAllocateRequest) { + BusinessLabExecutiveInfo labExecutiveInfo = new BusinessLabExecutiveInfo(); + labExecutiveInfo.setId(sampleAllocateRequest.getId()); + labExecutiveInfo.setMeasurePersonId(sampleAllocateRequest.getMeasurePersonId()); + if(labExecutiveInfoMapper.updateById(labExecutiveInfo) > 0){ + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + private QueryWrapper getOperateLogWrapper(SampleHandOutListResponse handOut) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("order_id", handOut.getOrderId()); 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 aa330f9..56621d9 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 @@ -131,6 +131,19 @@ } /** + * 实验室检测-部门检测-分配(分配给具体人员) + */ + @ApiOperation("实验室检测-部门检测-分配按钮(分配给具体人员)") + @PostMapping("/deptExecutive/allocate") + @ResponseBody + public ReturnDTO allocateStaff(@RequestBody @Valid SampleAllocateRequest sampleAllocateRequest, BindingResult bindingResult) throws Exception { + if (bindingResult.hasErrors()) { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return labExecutiveInfoService.allocateStaff(sampleAllocateRequest); + } + + /** * 实验室检测-我的检测-检定人扫描收入(待检测->检测中) */ @ApiOperation("实验室检测-我的检测-检定人扫描收入(待检测->检测中)") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java new file mode 100644 index 0000000..639e8a8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleAllocateRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.business; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Description: 负责人分配员工请求实体 + * @Author: wangpeng + * @Date: 2023/3/13 15:53 + */ +@Data +@ApiModel +public class SampleAllocateRequest { + @NotNull(message = "实验室检测id不能为空") + @ApiModelProperty(value = "实验室检测id", dataType = "Long") + private Long id; + + @NotNull(message = "检定人员id不能为空") + @ApiModelProperty(value = "分配检定人员id(在本部门下的计量人员列表中选择)", dataType = "Long") + private Long measurePersonId; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java index 0fdbe21..6d50374 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleLabExecutiveListResponse.java @@ -22,7 +22,7 @@ @ContentStyle(borderLeft = BorderStyleEnum.THIN, borderBottom = BorderStyleEnum.THIN, borderTop = BorderStyleEnum.THIN, borderRight = BorderStyleEnum.THIN) @ExcelIgnoreUnannotated public class SampleLabExecutiveListResponse { - @ApiModelProperty(value = "实验室检测id(退回操作中使用)", dataType = "Long") + @ApiModelProperty(value = "实验室检测id(分配、退回操作中使用)", dataType = "Long") private Long id; @ApiModelProperty(value = "样品id", dataType = "Long") diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 5b23762..a5fd16b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -216,12 +216,11 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id -// AuthUser user = ShiroKit.getUser(); -// Assert.isFalse(Objects.isNull(user), () -> { -// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); -// }); - AuthUser user = new AuthUser(); - user.setId(1634091003794550786l); + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); @@ -559,6 +558,17 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + public ReturnDTO allocateStaff(SampleAllocateRequest sampleAllocateRequest) { + BusinessLabExecutiveInfo labExecutiveInfo = new BusinessLabExecutiveInfo(); + labExecutiveInfo.setId(sampleAllocateRequest.getId()); + labExecutiveInfo.setMeasurePersonId(sampleAllocateRequest.getMeasurePersonId()); + if(labExecutiveInfoMapper.updateById(labExecutiveInfo) > 0){ + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + private QueryWrapper getOperateLogWrapper(SampleHandOutListResponse handOut) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("order_id", handOut.getOrderId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessLabExecutiveInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessLabExecutiveInfoService.java index d709c42..b4d8470 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessLabExecutiveInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessLabExecutiveInfoService.java @@ -42,4 +42,7 @@ ExecutiveDetailResponse executiveDetail(ExecutiveDetailRequest request) throws Exception; ReturnDTO sampleExecutiveSendBack(ExecutiveSendBackRequest request); + + ReturnDTO allocateStaff(SampleAllocateRequest sampleAllocateRequest); + }