BigLawn 3 hete
szülő
commit
4f6e049869

+ 99 - 240
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/controller/admin/museumflow/MuseumFlowController.java

@@ -10,17 +10,13 @@ import cn.iocoder.yudao.module.museum.dal.database.museumflow.MuseumFlowDO;
 import cn.iocoder.yudao.module.museum.dal.database.museuminfo.MuseumInfoDO;
 import cn.iocoder.yudao.module.museum.service.museumflow.MuseumFlowService;
 import cn.iocoder.yudao.module.museum.service.museuminfo.MuseumInfoService;
-import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
-import cn.iocoder.yudao.module.system.dal.mysql.permission.UserRoleMapper;
 import cn.iocoder.yudao.module.system.service.permission.PermissionService;
-import cn.iocoder.yudao.module.system.service.permission.RoleService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
-import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -36,10 +32,6 @@ public class MuseumFlowController {
     private MuseumFlowService museumFlowService;
     private MuseumInfoService museumInfoService;
     @Resource
-    private RoleService roleService;
-    @Resource
-    private UserRoleMapper userRoleMapper;
-    @Resource
     private PermissionService permissionService;
 
 
@@ -73,7 +65,7 @@ public class MuseumFlowController {
         }
     }
 
-    @GetMapping("/get")
+    @GetMapping("/getForm")
     @Operation(summary = "查找表单")
     public CommonResult<MuseumFlowRespVO> getMuseumFlow(@RequestParam("id") Integer id) {
         MuseumFlowDO result = museumFlowService.selectMuseumFlow(id);
@@ -81,33 +73,46 @@ public class MuseumFlowController {
         return CommonResult.success(result1);
     }
 
-    @GetMapping("/get-info")
-    @Operation(summary = "查找标本信息")
-    public CommonResult<List<MuseumFlowInfoVO>> getMuseumInfo(@RequestParam("number") List<String> number) {
+//    @GetMapping("/selectPage")
+//    @Operation(summary = "获取关于标本信息的分页")
+//    public PageResult<MuseumInfoDO> selectPage(@Valid MuseumInfoPageReqVO pageVO) {
+//        return museumInfoService.getMuseumInfoPage(pageVO);
+//    }
+
+    @GetMapping("/page")
+    @Operation(summary = "根据表单id获取标本在总库中的信息")
+    public PageResult<MuseumFlowInfoVO> selectPageMuseumFlowFormIntel(@Valid MuseumFlowPageVO pageVO) {
+        return museumFlowService.selectPageMuseumFlowFormIntel(pageVO);
+    }
+
+    @GetMapping("/getFormIntel")
+    @Operation(summary = "审批功能中根据id查找标本信息")
+    public CommonResult<MuseumFlowInfoVO> getFormIntel(@RequestParam("id") Integer id) {
         Long UserId = getLoginUserId();
         if (permissionService.hasAnyRoles(UserId, "operate")) {
-            List<MuseumFlowInfoVO> informationList = new ArrayList<>();
-            for (String number1 : number) {
-                MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(number1);
-                if (result == null) {
-                    return CommonResult.error(200, "标本不存在");
+            List<MuseumInfoDO> museumInfoDO = new ArrayList<>();
+            MuseumFlowDO result = museumFlowService.selectMuseumFlowById(id);
+            MuseumFlowInfoVO form = BeanUtils.toBean(result, MuseumFlowInfoVO.class);
+            if (form != null) {
+                int State = form.getState();
+                if (State == 2) {
+                    for (String number : form.getNumber()) {
+                        MuseumInfoDO result1 = museumFlowService.selectMuseumFlowSampleId(number);
+                        museumInfoDO.add(result1);
+                    }
+                    form.setMuseumInfoList(museumInfoDO);
+                    return CommonResult.success(form);
                 } else {
-                    MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(number1);
-                    MuseumFlowInfoVO event1 = BeanUtils.toBean(event, MuseumFlowInfoVO.class);
-                    List<MuseumInfoDO> information = new ArrayList<>();
-                    information.add(result);
-                    event1.setMuseumInfoDO(information);
-                    informationList.add(event1);
-
+                    return CommonResult.error(2, id + museumFlowService.isMuseumFlowStateForm(State));
                 }
+            } else {
+                return CommonResult.error(2, "该id对应的表单不存在");
             }
-            return CommonResult.success(informationList);
         } else {
-            return CommonResult.error(200, "您无此权限");
+            return CommonResult.error(2, "您无此权限");
         }
     }
 
-
     @GetMapping("/menId")
     @Operation(summary = "查询身份信息")
     public CommonResult<Boolean> hasAnyRoles() {
@@ -120,226 +125,95 @@ public class MuseumFlowController {
     }
 
     @PostMapping("/outbound")
-    @Operation(summary = "添加出库单")
+    @Operation(summary = "出库功能")
     public CommonResult<Boolean> createMuseumFlowOutbound(@RequestBody MuseumFlowSaveVO saveVO) {
+        //TODO
         Long UserId = getLoginUserId();
         if (permissionService.hasAnyRoles(UserId, "operate")) {
-            String sample_id = saveVO.getNumber();
-            String number = saveVO.getNumber();
-            MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(sample_id);
-            MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(number);
-            AdminUserDO userList = museumFlowService.selectAdminUserDOById(UserId);
-//             Save中 1现为未出库或已回库,0为已出库
-//             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
-            if (result == null) {
-                return CommonResult.error(200, "标本不存在");
-            } else {
-                if (event == null) {
-                    int Save = result.getStore();
-                    if (Save == 1) {
-                        LocalDateTime applyTime = LocalDateTime.now();
-                        saveVO.setApplyTime(applyTime);
-                        String name = result.getChineseName();
-                        saveVO.setSampleName(name);//标本名称
-                        museumFlowService.createMuseumFlow(saveVO);
-                        museumFlowService.updateMuseumFlowStateOutbound2(saveVO);//状态2 审批中
-                        return CommonResult.success(true);
-                    }
+            List<String> errorList = new ArrayList<>();
+//            errorList.add(museumFlowService.isMuseumFlowIn(saveVO));
+//      Save中 1现为未出库或已回库,0为已出库
+//      State中 0在库,1为已出库,2为审批中,3为审批通过,4为审批驳回
+            for (String number : saveVO.getNumber()) {
+                MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(number);
+                if (result == null) {
+                    return CommonResult.error(2, number + "标本不存在");
                 } else {
-                    int State = event.getState();
-                    if (State == 0) {
-                        return CommonResult.error(200, "标本已回库");
-                    } else if (State == 1) {
-                        return CommonResult.error(200, "标本已出库");
-                    } else if (State == 2) {
-                        return CommonResult.error(200, "标本正在审批");
-                    } else if (State == 3) {
-                        return CommonResult.error(200, "标本审批已通过");
-                    } else if (State == 4) {
-                        return CommonResult.error(200, "标本已审批已驳回");
+                    //TODO 判断在主库内是否是在库
+                    if (result.getStore() == 0) {
+                        return CommonResult.error(2, number + "标本已出库");
+                    } else {
+                        List<MuseumFlowDO> event = museumFlowService.selectMuseumFlowByNumbersLike(number);
+                        if (event != null) {
+                            errorList.addAll( museumFlowService.isMuseumFlowStateOutbound0(event));
+                        }
                     }
-                    return CommonResult.error(200, "标本信息已存放在出入库的数据库中");
                 }
             }
+            if (errorList.isEmpty()) {
+                museumFlowService.createMuseumFlow(saveVO);
+                return CommonResult.success(true);
+            } else {
+                return CommonResult.error(2, errorList.toString());
+            }
         } else {
-            return CommonResult.error(200, "您无此操作权限");
+            return CommonResult.error(2, "您无此操作权限");
         }
-        return CommonResult.success(true);
     }
 
     @PostMapping("outboundEnd")
     @Operation(summary = "出库完成功能")
-    public CommonResult<Boolean> createMuseumFlowOutboundEnd(@RequestBody MuseumFlowReviewVO reviewVO) {
+    public CommonResult<Boolean> createMuseumFlowOutboundEnd(@RequestBody MuseumFlowSaveVO saveVO) {
         Long UserId = getLoginUserId();
         if (permissionService.hasAnyRoles(UserId, "operate")) {
-            List<String> sample_ids = reviewVO.getNumber();
-            List<String> errorList = new ArrayList<>();
-            List<String> sample_names = new ArrayList<>();
-////             Save中 1现为未出库或已回库,0为已出库
-////             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
-            for (String sample_id : sample_ids) {
-                MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(sample_id);
-                if (event != null) {
-                    int State = event.getState();
-                    if (State == 1) {
-                        errorList.add(sample_id + "标本已出库");
-                    } else if (State == 2) {
-                        errorList.add(sample_id + "标本正在审批");
-                    } else if (State == 3) {
-                        AdminUserDO userList = museumFlowService.selectAdminUserDOById(UserId);
-                        String name = event.getSampleName();
-                        sample_names.add(name);
-                        String reviewPerson = userList.getNickname();
-                        reviewVO.setReviewPerson(reviewPerson);
-                    } else if (State == 4) {
-                        errorList.add(sample_id + "标本审批已驳回");
-                    } else if (State == 0) {
-                        errorList.add(sample_id + "标本审批已回库");
-                    }
+            MuseumFlowDO result = museumFlowService.selectMuseumFlowById(saveVO.getId());
+            if (result != null) {
+                MuseumFlowReviewVO event = BeanUtils.toBean(result, MuseumFlowReviewVO.class);
+                int State = event.getState();
+                if (State == 3) {
+//      Save中 1现为未出库或已回库,0为已出库
+//      State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
+                    museumFlowService.updateMuseumFlowSave0(event.getNumber());
+                    museumFlowService.updateMuseumFlowOutbound(saveVO);
+                    return CommonResult.success(true);
                 } else {
-                    errorList.add(sample_id + "标本未申请出库");
-                }
-            }
-            if (errorList.isEmpty()) {
-                for (String sample_id : sample_ids) {
-                    museumFlowService.updateMuseumFlowStateOutbound1(sample_id);
-                    museumFlowService.updateMuseumFlowSave0(sample_id);
+                    return CommonResult.error(2, result.getNumber() + museumFlowService.isMuseumFlowStateForm(State));
                 }
-                LocalDateTime outboundTime = LocalDateTime.now();
-                reviewVO.setOutboundTime(outboundTime);
-                reviewVO.setSampleName(sample_names);//设置标本名称
-                reviewVO.setState(1);
-                museumFlowService.createMuseumFlowReview(reviewVO);//创建表单
-                return CommonResult.success(true);
             } else {
-                System.out.println(errorList);
-                return CommonResult.error(200, errorList.toString());
+                return CommonResult.error(2, "找不到该审批单");
             }
         } else {
-            return CommonResult.error(200, "您无此操作权限");
+            return CommonResult.error(2, "您无此操作权限");
         }
     }
 
-    @GetMapping("/selectPageS")
-    @Operation(summary = "获取关于标本信息的分页")
-    public PageResult<MuseumInfoDO> selectPageS(@Valid MuseumInfoPageReqVO pageVO) {
-        return museumInfoService.getMuseumInfoPage(pageVO);
-    }
-
-    @GetMapping("/pagePerson")
-    @Operation(summary = "获取关于出库员的分页")
-    public PageResult<MuseumFlowDO> selectMuseumFlowOutboundPerson(@Valid MuseumFlowPageVO pageVO) {
-        return museumFlowService.selectPageMuseumFlowOutboundPerson(pageVO);
-    }
-
     @PostMapping("/review")
-    @Operation(summary = "通过的审批单")
+    @Operation(summary = "审批功能")
     public CommonResult<Boolean> createMuseumFlowReview(@RequestBody MuseumFlowReviewVO reviewVO) {
         Long UserId = getLoginUserId();
-        List<String> sample_ids = reviewVO.getNumber();
-        List<String> errorList = new ArrayList<>();
-        List<String> sample_names = new ArrayList<>();
-////             Save中 1现为未出库或已回库,0为已出库
-////             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
-        if (permissionService.hasAnyRoles(UserId, "leader")) {
-            for (String sample_id : sample_ids) {
-                MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(sample_id);
-                MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(sample_id);
-                String name = result.getChineseName();
-                if (event != null) {
-                    int State = event.getState();
-                    if (State == 2) {
-                        sample_names.add(name);
-                    } else if (State == 3) {
-                        errorList.add(sample_id + "标本审批已通过");
-                    } else if (State == 4) {
-                        errorList.add(sample_id + "标本审批已驳回");
-                    } else {
-                        if (State == 0) {
-                            errorList.add(sample_id + "标本审批已回库");
-                        } else if (State == 1) {
-                            errorList.add(sample_id + "标本已出库");
-                        }
-                    }
-                } else {
-                    errorList.add(sample_id + "标本未申请出库");
-                }
-            }
-            if (errorList.isEmpty()) {
-                for (String sample_id : sample_ids) {
-                    museumFlowService.updateMuseumFlowStateReview3(sample_id);
-                }
-                AdminUserDO userList = museumFlowService.selectAdminUserDOById(UserId);
-                String reviewPerson = userList.getNickname();
-                reviewVO.setReviewPerson(reviewPerson);
-                reviewVO.setSampleName(sample_names);//设置标本名称
-                LocalDateTime reviewTime = LocalDateTime.now();
-                reviewVO.setReviewTime(reviewTime);
-                museumFlowService.createMuseumFlowReview(reviewVO);//创建表单
-                museumFlowService.updateMuseumFlowStateReviews3(reviewVO);//更改标本状态为3 审批通过
-                return CommonResult.success(true);
-            } else {
-                System.out.println(errorList);
-                return CommonResult.error(200, errorList.toString());
-            }
-        } else {
-            return CommonResult.error(200, "您无此操作权限");
-        }
-    }
-
-    @PostMapping("/reject")
-    @Operation(summary = "新增驳回的审批单")
-    public CommonResult<Boolean> createMuseumFlowReject(@RequestBody MuseumFlowReviewVO reviewVO) {
-        Long UserId = getLoginUserId();
-        List<String> sample_ids = reviewVO.getNumber();
-        List<String> errorList = new ArrayList<>();
-        List<String> sample_names = new ArrayList<>();
 ////             Save中 1现为未出库或已回库,0为已出库
 ////             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
         if (permissionService.hasAnyRoles(UserId, "leader")) {
-            for (String sample_id : sample_ids) {
-                MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(sample_id);
-                MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(sample_id);
-                String name = result.getChineseName();
-                if (event != null) {
-                    int State = event.getState();
-                    if (State == 2) {
-                        sample_names.add(name);
-                    } else if (State == 3) {
-                        errorList.add(sample_id + "标本审批已通过");
-                    } else if (State == 4) {
-                        errorList.add(sample_id + "标本审批已驳回");
+            MuseumFlowDO result = museumFlowService.selectMuseumFlowById(reviewVO.getId());
+            MuseumFlowReviewVO event = BeanUtils.toBean(result, MuseumFlowReviewVO.class);
+            if (event != null) {
+                int State = event.getState();
+                if (State == 2) {
+                    int state = reviewVO.getState();
+                    if (state == 3 || state == 4) {
+                        museumFlowService.updateMuseumFlowStateReview(BeanUtils.toBean(reviewVO, MuseumFlowDO.class));
+                        return CommonResult.success(true);
                     } else {
-                        if (State == 0) {
-                            errorList.add(sample_id + "标本审批已回库");
-                        } else if (State == 1) {
-                            errorList.add(sample_id + "标本已出库");
-                        }
+                        return CommonResult.error(2, result.getId() + museumFlowService.isMuseumFlowStateForm(state));
                     }
                 } else {
-                    errorList.add(sample_id + "标本未申请出库");
-                }
-            }
-            if (errorList.isEmpty()) {
-                for (String sample_id : sample_ids) {
-                    museumFlowService.updateMuseumFlowStateReview4(sample_id);
+                    return CommonResult.error(2, result.getId() + museumFlowService.isMuseumFlowStateForm(State));
                 }
-                AdminUserDO userList = museumFlowService.selectAdminUserDOById(UserId);
-                String reviewPerson = userList.getNickname();
-                reviewVO.setReviewPerson(reviewPerson);
-                reviewVO.setSampleName(sample_names);//设置标本名称
-                LocalDateTime reviewTime = LocalDateTime.now();
-                reviewVO.setReviewTime(reviewTime);
-                museumFlowService.createMuseumFlowReview(reviewVO);//创建表单
-                museumFlowService.updateMuseumFlowStateReviews4(reviewVO);//更改标本状态为出库
-//            museumFlowService.selectPageS(respVO);
-                return CommonResult.success(true);
             } else {
-                System.out.println(errorList);
-                return CommonResult.error(200, errorList.toString());
+                return CommonResult.error(2, result.getId() + "id输入错误");
             }
         } else {
-            return CommonResult.error(200, "您无此操作权限");
+            return CommonResult.error(2, "您无此操作权限");
         }
     }
 
@@ -347,40 +221,25 @@ public class MuseumFlowController {
     @Operation(summary = "回库功能")
     public CommonResult<Boolean> createMuseumFlowReturn(@RequestBody MuseumFlowReturnVO returnVO) {
         Long UserId = getLoginUserId();
-        String number = returnVO.getNumber();
-        String sample_id = returnVO.getNumber();
-        MuseumFlowDO event = museumFlowService.selectMuseumFlowNumber(number);
-        MuseumInfoDO result = museumFlowService.selectMuseumFlowSampleId(sample_id);
-//             Save中 1现为未出库或已回库,0为已出库
-//             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
+////             Save中 1现为未出库或已回库,0为已出库
+////             State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
         if (permissionService.hasAnyRoles(UserId, "operate")) {
-            if (event == null) {
-                return CommonResult.error(200, "标本未申请出库");
-            } else {
-                int Save = result.getStore();
-                if (Save == 0) {
-                    int State = event.getState();
-                    if (State == 0) {
-                        return CommonResult.error(200, "标本已返回库中");
-                    } else if (State == 1) {
-                        museumFlowService.updateMuseumFlowStateReturn1(returnVO);
-                        museumFlowService.updateMuseumFlowSave1(sample_id);
-                        LocalDateTime returnTime = LocalDateTime.now();
-                        returnVO.setReturnTime(returnTime);
-                    } else if (State == 2) {
-                        return CommonResult.error(200, "标本正在审批");
-                    } else if (State == 3) {
-                        return CommonResult.error(200, "标本审批已通过但未出库");
-                    } else if (State == 4) {
-                        return CommonResult.error(200, "标本审批已驳回");
-                    }
+            MuseumFlowDO result = museumFlowService.selectMuseumFlowById(returnVO.getId());
+            MuseumFlowReviewVO event = BeanUtils.toBean(result, MuseumFlowReviewVO.class);
+            if (event != null) {
+                int State = event.getState();
+                if (State == 1) {
+                    museumFlowService.updateMuseumFlowSave1(event.getNumber());
+                    museumFlowService.updateMuseumFlowStateReturn(returnVO);
+                    return CommonResult.success(true);
                 } else {
-                    return CommonResult.error(200, "标本还未出库");
+                    return CommonResult.error(2, returnVO.getId() + museumFlowService.isMuseumFlowStateForm(State));
                 }
+            } else {
+                return CommonResult.error(2, returnVO.getId() + "id输入错误");
             }
-            return CommonResult.success(true);
         } else {
-            return CommonResult.error(200, "您无此操作权限");
+            return CommonResult.error(2, "您无此操作权限");
         }
     }
 }

+ 5 - 32
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/controller/admin/museumflow/vo/MuseumFlowInfoVO.java

@@ -16,17 +16,11 @@ public class MuseumFlowInfoVO {
     @Schema(description = "样品ID")
     private Integer id;
 
-    @Schema(description = "出库员")
-    private String outboundPerson;
+    @Schema(description = "样品编号")
+    private List<String> number;
 
-    @Schema(description = "出库时间")
-    private LocalDateTime outboundTime;
-
-    @Schema(description = "目的")
-    private String purpose;
-
-    @Schema(description = "出库附件")
-    private String annexOut;
+    @Schema(description = "样品名称")
+    private List<String> sampleName;
 
     @Schema(description = "申请人")
     private String applyPerson;
@@ -40,27 +34,6 @@ public class MuseumFlowInfoVO {
     @Schema(description = "预计退还时间")
     private String returnExpect;
 
-    @Schema(description = "审批人")
-    private String reviewPerson;
-
-    @Schema(description = "审批时间")
-    private LocalDateTime reviewTime;
-
-    @Schema(description = "拒绝原因")
-    private String rejectSeason;
-
-    @Schema(description = "退还员")
-    private String returnPerson;
-
-    @Schema(description = "退还时间")
-    private LocalDateTime returnTime;
-
-    @Schema(description = "点收人")
-    private String receivePerson;
-
-    @Schema(description = "回库附件")
-    private String annexReturn;
-
     @Schema(description = "备注")
     private String nots;
 
@@ -68,5 +41,5 @@ public class MuseumFlowInfoVO {
     private Integer state;
 
     @Schema(description = "标本详情")
-    private List<MuseumInfoDO> museumInfoDO;
+    private List<MuseumInfoDO> museumInfoList;
 }

+ 1 - 1
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/controller/admin/museumflow/vo/MuseumFlowPageVO.java

@@ -25,7 +25,7 @@ public class MuseumFlowPageVO extends PageParam {
     private List<String> number;
 
     @Schema(description = "样品名称")
-    private String sampleName;
+    private List<String> sampleName;
 
     @Schema(description = "出库员")
     private String outboundPerson;

+ 0 - 36
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/controller/admin/museumflow/vo/MuseumFlowReviewVO.java

@@ -20,30 +20,6 @@ public class MuseumFlowReviewVO {
     @Schema(description = "样品名称")
     private List<String> sampleName;
 
-    @Schema(description = "出库员")
-    private String outboundPerson;
-
-    @Schema(description = "出库时间")
-    private LocalDateTime outboundTime;
-
-    @Schema(description = "目的")
-    private String purpose;
-
-    @Schema(description = "出库附件")
-    private String annexOut;
-
-    @Schema(description = "申请人")
-    private String applyPerson;
-
-    @Schema(description = "申请单位")
-    private String applyUnit;
-
-    @Schema(description = "申请时间")
-    private LocalDateTime applyTime;
-
-    @Schema(description = "预计退还时间")
-    private String returnExpect;
-
     @Schema(description = "审批人")
     private String reviewPerson;
 
@@ -53,18 +29,6 @@ public class MuseumFlowReviewVO {
     @Schema(description = "拒绝原因")
     private String rejectSeason;
 
-    @Schema(description = "退还员")
-    private String returnPerson;
-
-    @Schema(description = "退还时间")
-    private LocalDateTime returnTime;
-
-    @Schema(description = "点收人")
-    private String receivePerson;
-
-    @Schema(description = "回库附件")
-    private String annexReturn;
-
     @Schema(description = "备注")
     private String nots;
 

+ 2 - 23
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/controller/admin/museumflow/vo/MuseumFlowSaveVO.java

@@ -16,10 +16,10 @@ public class MuseumFlowSaveVO {
     private Integer id;
 
     @Schema(description = "样品编号")
-    private String number;
+    private List<String> number;
 
     @Schema(description = "样品名称")
-    private String sampleName;
+    private List<String> sampleName;
 
     @Schema(description = "出库员")
     private String outboundPerson;
@@ -45,27 +45,6 @@ public class MuseumFlowSaveVO {
     @Schema(description = "预计退还时间")
     private String returnExpect;
 
-    @Schema(description = "审批人")
-    private String reviewPerson;
-
-    @Schema(description = "审批时间")
-    private LocalDateTime reviewTime;
-
-    @Schema(description = "拒绝原因")
-    private String rejectSeason;
-
-    @Schema(description = "退还员")
-    private String returnPerson;
-
-    @Schema(description = "退还时间")
-    private LocalDateTime returnTime;
-
-    @Schema(description = "点收人")
-    private String receivePerson;
-
-    @Schema(description = "回库附件")
-    private String annexReturn;
-
     @Schema(description = "备注")
     private String nots;
 

+ 29 - 46
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/dal/mysql/museumflow/MuseumFlowMapper.java

@@ -3,9 +3,7 @@ package cn.iocoder.yudao.module.museum.dal.mysql.museumflow;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.MuseumFlowInfoVO;
-import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.MuseumFlowPageVO;
-import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.MuseumFlowSaveVO;
+import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.*;
 import cn.iocoder.yudao.module.museum.dal.database.museumflow.MuseumFlowDO;
 import cn.iocoder.yudao.module.museum.dal.database.museuminfo.MuseumInfoDO;
 import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
@@ -13,7 +11,7 @@ import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.Update;
-import org.jsoup.select.Evaluator;
+
 
 import java.util.List;
 
@@ -37,13 +35,22 @@ public interface MuseumFlowMapper extends BaseMapperX<MuseumFlowDO> {
     @Select("SELECT * FROM museum_info WHERE sample_id = #{sample_id} AND deleted =0 ")
     MuseumInfoDO selectMuseumFlowBySampleId(@Param("sample_id") String sample_id);
 
+    /**根据编号在总表中进行查找**/
+    @Select("SELECT * FROM museum_outbound WHERE id = #{id} AND deleted =0")
+    MuseumFlowDO selectMuseumFlowFormById(@Param("id") Integer id);
+
+    /**根据编号在总表中进行查找**/
+    @Select("SELECT * FROM museum_outbound WHERE id = #{id} AND deleted =0 AND state = 2")
+    MuseumFlowDO selectMuseumFlowFormByID(@Param("id") Integer id);
+
     /**根据编号在Flow库中进行查找*/
     @Select("SELECT * FROM museum_outbound WHERE number = #{number} AND deleted = 0 ")
     MuseumFlowDO selectMuseumFlowByNumber(@Param("number")String number);
 
-    /**根据编号数组在Flow库中进行查找*/
-    @Select("SELECT * FROM museum_outbound WHERE number = #{number} AND deleted = 0 ")
-    MuseumFlowDO selectMuseumFlowByNumbers(@Param("number")List<String> number);
+    /**根据编号数组在Flow库中进行模糊查询*/
+    @Select("SELECT * FROM museum_outbound WHERE CONCAT('[', number, ']') LIKE CONCAT('%', #{number}, '%') AND deleted = 0")
+    List<MuseumFlowDO> selectMuseumFlowByNumbersLike(@Param("number") String number);
+
 
 /**出库功能 Save中 1现为未出库或已回库,0为已出库   State中 0现为未出库或已回库,1为已出库,2为审批中,3为审批通过,4为审批驳回
 
@@ -52,19 +59,9 @@ public interface MuseumFlowMapper extends BaseMapperX<MuseumFlowDO> {
     @Update("UPDATE museum_info SET save=0  WHERE sample_id =#{sample_id} AND deleted =0 ")
     void updateMuseumFlowSave0(String sample_id);
 
-
-    /**将样品状态更新为1 已出库**/
-    @Update("UPDATE museum_outbound SET state=1  WHERE number = #{number} AND deleted =0 ")
-    void updateMuseumFlowStateOutbound1(String number);
-
-    /**将样品数组状态更新为1 已出库**/
-    @Update("UPDATE museum_outbound SET state=1  WHERE number = #{number} AND deleted =0 ")
-    void updateMuseumFlowStateOutbounds1(MuseumFlowDO MuseumFlowDO);
-
-
-    /**将样品状态更新为2 审批中**/
-    @Update("UPDATE museum_outbound SET state=2  WHERE number =#{number} AND deleted =0 ")
-    void updateMuseumFlowStateOutbound2(MuseumFlowDO MuseumFlowDO);
+    @Update("UPDATE museum_outbound SET state=#{state},outbound_person=#{outboundPerson},outbound_time=#{outboundTime} " +
+            "WHERE id =#{id}")
+    void updateMuseumFlowOutbound(MuseumFlowDO museumFlowDO);
 
 
 /**分页
@@ -73,11 +70,10 @@ public interface MuseumFlowMapper extends BaseMapperX<MuseumFlowDO> {
 //        like 是模糊查询;
 //        order by 按照某个字段进行排序 ;加上 desc 表示降序排序(默认为升序 asc);
 //
-    /**根据出库员进行分页查找*/
-    default PageResult<MuseumFlowDO> selectPageMuseumFlowByOutboundPerson(MuseumFlowPageVO pageVO) {
-
+    /**根据输入信息进行分页查找*/
+    default PageResult<MuseumFlowDO> selectPageMuseumFlowFormIntel(MuseumFlowPageVO pageVO) {
        LambdaQueryWrapperX<MuseumFlowDO> queryWrapper = new LambdaQueryWrapperX<>();
-        queryWrapper .inIfPresent(MuseumFlowDO::getNumber,pageVO.getNumber())
+        queryWrapper.inIfPresent(MuseumFlowDO::getNumber,pageVO.getNumber())
                 .betweenIfPresent(MuseumFlowDO::getOutboundTime, pageVO.getOutboundTime())
                 .eqIfPresent(MuseumFlowDO::getOutboundPerson,pageVO.getOutboundPerson())
                 .orderByDesc(MuseumFlowDO::getId);
@@ -88,21 +84,10 @@ public interface MuseumFlowMapper extends BaseMapperX<MuseumFlowDO> {
 /**审批功能
 
 
-    /**将样品状态更新为3 审批通过**/
-    @Update("UPDATE museum_outbound SET state=3  WHERE number =#{number} AND deleted =0 ")
-    void updateMuseumFlowStateReview3(String number);
-
-    /**将样品状态更新为4 审批驳回**/
-    @Update("UPDATE museum_outbound SET state=4  WHERE number =#{number} AND deleted =0 ")
-    void updateMuseumFlowStateReview4(String number);
-
-    /**将样品数组状态更新为3 审批通过**/
-    @Update("UPDATE museum_outbound SET state=3  WHERE number =#{number} AND deleted =0 ")
-    void updateMuseumFlowStateReviews3(MuseumFlowDO MuseumFlowDO);
-
-    /**将样品数组状态更新为4 审批驳回**/
-    @Update("UPDATE museum_outbound SET state=4  WHERE number =#{number} AND deleted =0 ")
-    void updateMuseumFlowStateReviews4(MuseumFlowDO MuseumFlowDO);
+    /**将样品状态更新为输入值 3为审批通过 4为审批驳回**/
+    @Update("UPDATE museum_outbound SET state=#{state},review_time=#{reviewTime},review_person=#{reviewPerson}," +
+            "reject_season=#{rejectSeason},nots=#{nots} WHERE id = #{id} AND deleted =0 ")
+    void updateMuseumFlowStateReview(MuseumFlowDO museumFlowDO);
 
 
 /**回库功能 Save中 1现为未出库或已回库,0为已出库  flow中1
@@ -112,18 +97,16 @@ public interface MuseumFlowMapper extends BaseMapperX<MuseumFlowDO> {
     @Update("UPDATE museum_info SET save=1  WHERE sample_id = #{sample_id} AND deleted =0 ")
     void updateMuseumFlowSave1(String sample_id);
 
-    /**将样品状态更新为0 已回库**/
-    @Update("UPDATE museum_outbound SET state=0  WHERE number = #{number} AND deleted =0 ")
-    void updateMuseumFlowStateReturn1(MuseumFlowDO MuseumFlowDO);
+    /**对样品信息进行更新**/
+    @Update("UPDATE museum_outbound SET state=#{state} ,return_time=#{returnTime}, annex_return=#{annexReturn}," +
+            "return_person=#{returnPerson},receive_person=#{receivePerson} WHERE id =#{id} AND deleted =0 ")
+    void updateMuseumFlowStateReturn(MuseumFlowDO MuseumFlowDO);
 
 /**身份查询功能
 
-    /**查询身份是否为操作员**/
+    /**根据角色id在角色表单查询数据**/
     @Select("SELECT * FROM system_users WHERE id = #{UserId} AND deleted =0 ")
     AdminUserDO selectAdminUserDOById(Long UserId);
 
-//    /**根据编号在Flow库中进行查找*/
-//    @Select("SELECT * FROM museum_outbound WHERE number = #{number} AND deleted = 0 ")
-//    MuseumFlowDO selectMuseumFlowByNumber(@Param("number")String number);
 
 }

+ 32 - 31
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/service/museumflow/MuseumFlowService.java

@@ -1,11 +1,10 @@
 package cn.iocoder.yudao.module.museum.service.museumflow;
 
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.*;
 import cn.iocoder.yudao.module.museum.dal.database.museumflow.MuseumFlowDO;
 import cn.iocoder.yudao.module.museum.dal.database.museuminfo.MuseumInfoDO;
-import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
 
 import java.util.List;
 
@@ -37,66 +36,68 @@ public interface MuseumFlowService {
     /**根据编号在Flow库中进行查找*/
     MuseumFlowDO selectMuseumFlowNumber(String number);
 
+    /**根据编号在总表中进行查找**/
+    MuseumFlowDO selectMuseumFlowById(Integer id);
+
     /**根据编号在总表中进行查找*/
     MuseumInfoDO selectMuseumFlowSampleId(String sample_id);
 
-    /**根据编号数组在Flow库中进行查找*/
-    MuseumFlowDO selectMuseumFlowNumbers(List<String> number);
+    /**根据编号数组在Flow库中进行模糊查询*/
+    List<MuseumFlowDO> selectMuseumFlowByNumbersLike(String number);
+
+    MuseumFlowDO selectMuseumFlowByID(Integer id);
 
-/**出库功能 Save中 1现为未出库或已回库,0为已出库 flow中0
+/**出库功能 Save中 0为已出库 flow中1
 
     /**将主库中标本状态设置为0*/
-    void updateMuseumFlowSave0(String sample_id);
+    void updateMuseumFlowSave0(List<String> sample_id);
+
+    /**将出回库中标本状态设置为1*/
+    void updateMuseumFlowOutbound(MuseumFlowSaveVO saveVO);
+
+    /**添加出库单功能中 若表单已创建过判断标本状态*/
+    CommonResult<Boolean> judgeMuseumFlowState(Integer State);
 
-    /**标本状态设置为1*/
-    void updateMuseumFlowStateOutbound1(String number);
+    /**添加出库单功能中 若表单已创建过判断标本状态*/
+    String isMuseumFlowState(Integer State);
 
-    /**标本状态设置为1*/
-    void updateMuseumFlowStateOutbounds1(MuseumFlowReviewVO reviewVO);
+    String isMuseumFlowStateForm(Integer State);
 
-    /**将标本状态设置为2 审批中*/
-    void updateMuseumFlowStateOutbound2(MuseumFlowSaveVO saveVO);
+    List<String> isMuseumFlowStateOutbound0(List<MuseumFlowDO> event);
 
+//    String isMuseumFlowIn(MuseumFlowSaveVO saveVO);
+
+    boolean isOnlyNull(List<String> errorList);
 
 /**分页功能
 
     /**根据分页长度进行排序**/
 //    PageResult<MuseumFlowDO> selectPageS(MuseumFlowPageVO pageVO);
 
-    /**根据出库员进行分页查找*/
-    PageResult<MuseumFlowDO> selectPageMuseumFlowOutboundPerson(MuseumFlowPageVO pageVO);
+    /**根据输入信息进行分页查找*/
+    PageResult<MuseumFlowInfoVO> selectPageMuseumFlowFormIntel(MuseumFlowPageVO pageVO);
 
 
 /**审批功能
 
-    /**新建审批单*/
-    Integer createMuseumFlowReview(MuseumFlowReviewVO reviewVO);
-
-    /**将标本状态设置为3 审批通过*/
-    void updateMuseumFlowStateReview3(String number);
-
-    /**将标本状态设置为4 审批驳回*/
-    void updateMuseumFlowStateReview4(String number);
 
-    /**将标本数组状态设置为3 审批通过*/
-    void updateMuseumFlowStateReviews3(MuseumFlowReviewVO reviewVO);
+    /**将样品状态更新为输入值 3为审批通过 4为审批驳回**/
+    void updateMuseumFlowStateReview(MuseumFlowDO museumFlowDO);
 
-    /**将标本数组状态设置为4 审批驳回*/
-    void updateMuseumFlowStateReviews4(MuseumFlowReviewVO reviewVO);
+    /**审批功能中 判断状态是否为2后对错误情况进行回答*/
+    String isMuseumFlowStateReward(Integer State);
 
 /**回库功能 Save中 1现为未出库或已回库,0为已出库 flow中1
 
-    /**新建出库单**/
-    Integer createMuseumFlowReturn(MuseumFlowReturnVO returnVO);
 
     /**将主库中标本状态设置为0*/
-    void updateMuseumFlowSave1(String sample_id);
+    void updateMuseumFlowSave1(List<String> sample_id);
 
     /**将标本状态设置为1*/
-    void updateMuseumFlowStateReturn1(MuseumFlowReturnVO returnVO);
+    void updateMuseumFlowStateReturn(MuseumFlowReturnVO returnVO);
 
 /**身份查询功能
 
     /**查询身份是否为操作员**/
-    AdminUserDO selectAdminUserDOById(Long  UserId);
+    String selectAdminUserDOById(Long UserId);
 }

+ 189 - 65
yudao-module-museum/yudao-module-museum-biz/src/main/java/cn/iocoder/yudao/module/museum/service/museumflow/MuseumFlowServiceImpl.java

@@ -7,19 +7,24 @@ import cn.iocoder.yudao.module.museum.controller.admin.museumflow.vo.*;
 import cn.iocoder.yudao.module.museum.dal.database.museumflow.MuseumFlowDO;
 import cn.iocoder.yudao.module.museum.dal.database.museuminfo.MuseumInfoDO;
 import cn.iocoder.yudao.module.museum.dal.mysql.museumflow.MuseumFlowMapper;
+import cn.iocoder.yudao.module.museum.dal.mysql.museuminfo.MuseumInfoMapper;
 import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
-import com.alibaba.druid.sql.visitor.functions.If;
-import org.apache.ibatis.annotations.Select;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
 
+import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
+
 @Service
 public class MuseumFlowServiceImpl implements MuseumFlowService {
 
     @Resource
     private MuseumFlowMapper museumFlowMapper;
+    @Resource
+    private MuseumInfoMapper MuseumInfoMapper;
 
 //    @Override
 //    public Integer createMuseumFlow(MuseumFlowSaveVO saveVO){
@@ -51,14 +56,24 @@ public class MuseumFlowServiceImpl implements MuseumFlowService {
         return museumFlowMapper.selectMuseumFlowBySampleId(sample_id);
     }
 
+    /**根据编号在总表中进行查找**/
+    public MuseumFlowDO selectMuseumFlowById(Integer id) {
+        return museumFlowMapper.selectMuseumFlowFormById(id);
+    }
+
     /**根据编号在Flow库中进行查找**/
     public MuseumFlowDO selectMuseumFlowNumber(String number){
         return museumFlowMapper.selectMuseumFlowByNumber(number);
     }
 
-    /**根据编号数组在Flow库中进行查找**/
-    public MuseumFlowDO selectMuseumFlowNumbers(List<String> number){
-        return museumFlowMapper.selectMuseumFlowByNumbers(number);
+    /**根据id在Flow库中进行查找**/
+    public MuseumFlowDO selectMuseumFlowByID(Integer id){
+        return museumFlowMapper.selectMuseumFlowFormByID(id);
+    }
+
+    /**根据编号数组在Flow库中进行模糊查询*/
+    public List<MuseumFlowDO> selectMuseumFlowByNumbersLike(String number){
+        return museumFlowMapper.selectMuseumFlowByNumbersLike(number);
     }
 
 /**出库功能 Save中 1现为未出库或已回库,0为已出库 flow中0
@@ -66,35 +81,131 @@ public class MuseumFlowServiceImpl implements MuseumFlowService {
     /**创建出库单*/
     @Override
     public Integer createMuseumFlow(MuseumFlowSaveVO saveVO) {
-        MuseumFlowDO result = BeanUtils.toBean(saveVO, MuseumFlowDO.class);
-        return museumFlowMapper.insert(result);
+        List<String> sampleNames = new ArrayList<>();
+        for (String number:saveVO.getNumber()){
+            MuseumInfoDO result = museumFlowMapper.selectMuseumFlowBySampleId(number);
+            sampleNames.add(result.getChineseName());
+        }
+        saveVO.setApplyTime(LocalDateTime.now()).setState(2).setSampleName(sampleNames);
+        MuseumFlowDO content = BeanUtils.toBean(saveVO, MuseumFlowDO.class);
+        return museumFlowMapper.insert(content);
     }
 
     /**将主库中标本状态设置为0*/
     @Override
-    public void updateMuseumFlowSave0(String sample_id){
-        museumFlowMapper.updateMuseumFlowSave0(sample_id);
+    public void updateMuseumFlowSave0(List<String> sample_id){
+        for (String id :sample_id){
+        museumFlowMapper.updateMuseumFlowSave0(id);
+        }
     }
 
-    /**将样品状态设置为1 已出库*/
-    @Override
-    public void updateMuseumFlowStateOutbound1(String number){
-        museumFlowMapper.updateMuseumFlowStateOutbound1(number);
+    /**将样品信息为输入值 saveVO*/
+    public void updateMuseumFlowOutbound(MuseumFlowSaveVO saveVO){
+        Long UserId = getLoginUserId();
+        AdminUserDO user = museumFlowMapper.selectAdminUserDOById(UserId);
+        String userName = user.getUsername();
+        saveVO.setOutboundTime(LocalDateTime.now()).setState(1).setOutboundPerson(userName);;
+        museumFlowMapper.updateMuseumFlowOutbound(BeanUtils.toBean(saveVO,MuseumFlowDO.class));
     }
 
-    /**将样品组状态设置为1 已出库*/
-    @Override
-    public void updateMuseumFlowStateOutbounds1(MuseumFlowReviewVO reviewVO){
-        museumFlowMapper.updateMuseumFlowStateOutbounds1(BeanUtils.toBean(reviewVO,MuseumFlowDO.class));
+    /**添加出库单功能中 若表单已创建过判断标本状态*/
+    public CommonResult<Boolean> judgeMuseumFlowState(Integer State){
+        if (State == 0) {
+            return CommonResult.error(200, "标本已回库");
+        } else if (State == 1) {
+            return CommonResult.error(200, "标本已出库");
+        } else if (State == 2) {
+            return CommonResult.error(200, "标本正在审批");
+        } else if (State == 3) {
+            return CommonResult.error(200, "标本审批已通过");
+        } else if (State == 4) {
+            return CommonResult.error(200, "标本已审批已驳回");
+        }
+        else {
+            return CommonResult.error(200, "标本状态异常");
+        }
     }
 
-    /**将样品状态设置为2 审批中*/
-    public void updateMuseumFlowStateOutbound2(MuseumFlowSaveVO saveVO){
-        museumFlowMapper.updateMuseumFlowStateOutbound2(BeanUtils.toBean(saveVO,MuseumFlowDO.class));
+    /**判断出回库数据库中是否有相关编号的记录 有不为0(出库)的返回相应错误信息 无则返回null*/
+//    public String isMuseumFlowIn(MuseumFlowSaveVO saveVO){
+//        List<String> errorList = new ArrayList<>();
+//        for(String number :saveVO.getNumber()) {
+//            List<MuseumFlowDO> event = selectMuseumFlowByNumbersLike(number);
+//            if (event != null) {
+//                errorList.add( isMuseumFlowStateOutbound0(event));}
+//            else {
+//                continue;
+//            }
+//        }
+//        if (errorList.isEmpty()) {
+//            return null;
+//        }else {
+//            return errorList.toString();
+//        }
+//    }
+
+    /**
+     * 判断有相关编号的数据中的状态值 有不为0(出库)的返回相应错误信息 无则返回null
+     */
+    public List<String> isMuseumFlowStateOutbound0(List<MuseumFlowDO> event){
+        List<String> errorList = new ArrayList<>();
+        for (MuseumFlowDO event1 : event) {
+            Integer State = event1.getState();
+            String sampleId = event1.getNumber();
+            if (State != 0) {
+                errorList.add(sampleId + isMuseumFlowState(State));
+            }
+        }
+        return errorList;
     }
 
+    /**添加出库单功能中 若表单已创建过判断标本状态*/
+    public String isMuseumFlowState(Integer State){
+        if (State == 0) {
+            return "标本已回库";
+        } else if (State == 1) {
+            return "标本已出库";
+        } else if (State == 2) {
+            return "标本正在审批";
+        } else if (State == 3) {
+            return "标本审批已通过";
+        } else if (State == 4) {
+            return "标本已审批已驳回";
+        }
+        else {
+            return "标本状态异常";
+        }
+    }
 
-/**分页功能
+    /**判读表单状态*/
+    public String isMuseumFlowStateForm(Integer State){
+        if (State == 0) {
+            return "表单已回库";
+        } else if (State == 1) {
+            return "表单已出库";
+        } else if (State == 2) {
+            return "表单正在审批";
+        } else if (State == 3) {
+            return "表单审批已通过";
+        } else if (State == 4) {
+            return "表单审批已驳回";
+        }
+        else {
+            return "表单状态异常";
+        }
+    }
+
+    public boolean isOnlyNull(List<String> errorList){
+        for (String error : errorList) {
+            if (error != null) {
+                return false;
+            }
+        }
+        return true;
+    }
+
+
+    /**分页功能
 
 //    根据分页长度进行排序
 //    @Override
@@ -102,77 +213,90 @@ public class MuseumFlowServiceImpl implements MuseumFlowService {
 //        return  museumFlowMapper.selectPageS(pageVO);
 //    }
 
-    /**根据出库员进行分页查找*/
+    /**根据输入信息进行分页查找*/
     @Override
-    public PageResult<MuseumFlowDO> selectPageMuseumFlowOutboundPerson(MuseumFlowPageVO pageVO){
-        return museumFlowMapper.selectPageMuseumFlowByOutboundPerson(pageVO);
+    public PageResult<MuseumFlowInfoVO> selectPageMuseumFlowFormIntel(MuseumFlowPageVO pageVO){
+        PageResult<MuseumFlowInfoVO> result = BeanUtils.toBean(museumFlowMapper.selectPageMuseumFlowFormIntel(pageVO),MuseumFlowInfoVO.class);
+
+//        for (MuseumFlowInfoVO re : result.getList()) {
+//            MuseumInfoListVO pageReqVO =new MuseumInfoListVO();
+//            pageReqVO.setSampleId(re.getNumber());
+//            List<MuseumInfoDO> MuseumInfoDOList = MuseumInfoMapper.selectInfoList(pageReqVO);
+//            re.setMuseumInfoList(MuseumInfoDOList);
+//        }
+        return result;
     }
 
 
 /**审批功能
 
-    /**新建审批单**/
-    @Override
-    public Integer createMuseumFlowReview(MuseumFlowReviewVO reviewVO){
-    MuseumFlowDO result = BeanUtils.toBean(reviewVO, MuseumFlowDO.class);
-    return museumFlowMapper.insert(result);
-    }
 
-    /**将样品状态设置为3 审批通过*/
-    @Override
-    public void updateMuseumFlowStateReview3(String number){
-        museumFlowMapper.updateMuseumFlowStateReview3(number);
-    }
-    /**将样品状态设置为4 审批驳回*/
-    @Override
-    public void updateMuseumFlowStateReview4(String number) {
-        museumFlowMapper.updateMuseumFlowStateReview4(number);
-    }
-    /**将样品数组状态设置为3 审批通过*/
+    /**将样品状态更新为输入值 3为审批通过 4为审批驳回**/
     @Override
-    public void updateMuseumFlowStateReviews3(MuseumFlowReviewVO reviewVO) {
-        museumFlowMapper.updateMuseumFlowStateReviews3(BeanUtils.toBean(reviewVO,MuseumFlowDO.class));
+    public void updateMuseumFlowStateReview(MuseumFlowDO museumFlowDO){
+        Long UserId = getLoginUserId();
+        AdminUserDO user = museumFlowMapper.selectAdminUserDOById(UserId);
+        String userName = user.getUsername();
+        museumFlowDO.setReviewTime(LocalDateTime.now()).setReviewPerson(userName);
+        museumFlowMapper.updateMuseumFlowStateReview(museumFlowDO);
     }
 
-    /**将样品数组状态设置为4 审批驳回*/
-    @Override
-    public void updateMuseumFlowStateReviews4(MuseumFlowReviewVO reviewVO) {
-        museumFlowMapper.updateMuseumFlowStateReviews4(BeanUtils.toBean(reviewVO,MuseumFlowDO.class));
+    /**审批功能中 判断状态是否为2后对错误情况进行回答*/
+    public String isMuseumFlowStateReward(Integer State){
+        if (State == 0) {
+            return "标本审批已回库";
+        } else if (State == 1) {
+            return "标本已出库";
+        }else if (State == 2) {
+            return "标本正在审批";
+        }else if (State == 3) {
+            return "标本审批已通过";
+        }else if (State == 4) {
+            return "标本审批已驳回";
+        }else {
+            return "标本状态异常";
+        }
     }
 
 
 /**回库功能 Save中 1现为未出库或已回库,0为已出库 flow中1
 
-    /**新建出库单**/
-    @Override
-    public Integer createMuseumFlowReturn(MuseumFlowReturnVO returnVO){
-        MuseumFlowDO result = BeanUtils.toBean(returnVO, MuseumFlowDO.class);
-        return museumFlowMapper.insert(result);
-    }
 
     /**将主库中样品状态设置为1*/
     @Override
-    public void updateMuseumFlowSave1(String sample_id){
-        museumFlowMapper.updateMuseumFlowSave1(sample_id);
+    public void updateMuseumFlowSave1(List<String> sample_id){
+        for (String id : sample_id) {
+        museumFlowMapper.updateMuseumFlowSave1(id);
+        }
     }
 
-    /**将标本状态设置为1 已出库*/
+    /**将标本状态设置为0 已回库*/
     @Override
-    public void updateMuseumFlowStateReturn1(MuseumFlowReturnVO returnVO){
-        museumFlowMapper.updateMuseumFlowStateReturn1(BeanUtils.toBean(returnVO,MuseumFlowDO.class));
+    public void updateMuseumFlowStateReturn(MuseumFlowReturnVO returnVO){
+        Long UserId = getLoginUserId();
+        AdminUserDO user = museumFlowMapper.selectAdminUserDOById(UserId);
+        String userName = user.getUsername();
+        returnVO.setReturnTime(LocalDateTime.now()).setState(0).setReceivePerson(userName);
+        museumFlowMapper.updateMuseumFlowStateReturn(BeanUtils.toBean(returnVO,MuseumFlowDO.class));
+    }
+
+    /**审批功能中 判断状态是否为2审批通过*/
+    public boolean judgeMuseumFlowState1(Integer State){
+        if (State == 1) {
+            return true;
+        } else {
+            return false;
+        }
     }
 
 
 /**身份查询功能
 
-    /**根据角色编号在角色表中进行查找**/
+    /**根据角色编号在角色表中进行查找,并获取昵称**/
     @Override
-    public AdminUserDO selectAdminUserDOById(Long  UserId) {
-        return museumFlowMapper.selectAdminUserDOById(UserId);
+    public String selectAdminUserDOById(Long UserId) {
+        AdminUserDO result = museumFlowMapper.selectAdminUserDOById(UserId);
+        return result.getNickname();
     }
 
-//    /**根据编号在总表中进行查找**/
-//    public MuseumInfoDO selectMuseumFlowSampleId(String sample_id) {
-//        return museumFlowMapper.selectMuseumFlowBySampleId(sample_id);
-//    }
  }