李宇
2021-06-15 d00d1d584875b5b38c70c235963b46543a3eba28
src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
@@ -56,8 +56,6 @@
    @Resource
    private OpeReagentStatusService opeReagentStatusService;
    @Resource
    private OpeUseFlowService opeUseFlowService;
    @Resource
    private SysReagentService sysReagentService;
    @Resource
    private BaseMetaDao baseMetaDao;
@@ -71,7 +69,7 @@
            }
            if(opeUseFlow.getCreateTime()==null){
               opeUseFlow.setCreateTime(new Timestamp(System.currentTimeMillis()));
               opeUseFlow.setCreateTime(new Timestamp(System.currentTimeMillis()+1000));
            }
            this.opeUseFlowDao.insertOpeUseFlow(opeUseFlow);
@@ -382,21 +380,19 @@
    public void updateReceiptNumberByCode(List<OpeApplyReserve> selectedTmpOrderList,String receiptNumber) {
        for (OpeApplyReserve oar : selectedTmpOrderList) {
            //根据id或者试剂的条码直接查找 状态表单 查询订单所有的流向
            List<String> codeTmp = opeReagentStatusService
                    .generateReagentCode(oar.getStartReagentCode2(), oar.getEndReagentCode2());
            assert codeTmp.size() > 0;
            if (oar.getFlag() == 1) {
                //库中领取 code存的是 试剂状态的id
                for (String statusId : codeTmp) {
                for (String statusId : oar.getReagentCode()) {
                    String code = opeReagentStatusService.getOpeReagentStatus(statusId).getReagentCode();
                    //此时状态为领用待入库
                    opeUseFlowService.updateReceiptNumber(code, receiptNumber);
                    this.updateReceiptNumber(code, receiptNumber);
                }
            }else{
                //根据id或者试剂的条码直接查找 状态表单 查询订单所有的流向
                List<String> codeTmp = opeReagentStatusService
                        .generateReagentCode(oar.getStartReagentCode2(), oar.getEndReagentCode2());
                for (String code : codeTmp) {
                    opeUseFlowService.updateReceiptNumber(code, receiptNumber);
                    this.updateReceiptNumber(code, receiptNumber);
                }
            }
@@ -436,21 +432,19 @@
    @Override
    public void updateReceiptNumberByCode2(List<OpeWarehouseReserve> selectTmpList, String receiptNumber) {
        for (OpeWarehouseReserve owr : selectTmpList) {
            //根据id或者试剂的条码直接查找 状态表单 查询订单所有的流向
            List<String> codeTmp = opeReagentStatusService
                    .generateReagentCode(owr.getStartReagentCode2(), owr.getEndReagentCode2());
            assert codeTmp.size() > 0;
            if (owr.getFlag() == 1) {
                //库中领取 code存的是 试剂状态的id
                for (String statusId : codeTmp) {
                for (String statusId : owr.getReagentCodes()) {
                    String code = opeReagentStatusService.getOpeReagentStatus(statusId).getReagentCode();
                    //此时状态为领用待入库
                    opeUseFlowService.updateReceiptNumber(code, receiptNumber);
                    this.updateReceiptNumber(code, receiptNumber);
                }
            }else{
                //根据id或者试剂的条码直接查找 状态表单 查询订单所有的流向
                List<String> codeTmp = opeReagentStatusService
                        .generateReagentCode(owr.getStartReagentCode2(), owr.getEndReagentCode2());
                for (String code : codeTmp) {
                    opeUseFlowService.updateReceiptNumber(code, receiptNumber);
                    this.updateReceiptNumber(code, receiptNumber);
                }
            }
@@ -459,7 +453,8 @@
    }
    @Override
    public int getPersonalUseInfoCount(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project) {
    public int getPersonalUseInfoCount(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber,
                                       String department, String project,String applyPerson,String reagentName) {
        Map<String,Object> params = new HashMap<>();
        params.put("userId", userId);
        params.put("startTime", startTime);
@@ -468,6 +463,12 @@
        params.put("department", department);
        params.put("project", project);
        params.put("reagentCode", reagentCode);
        params.put("applyPerson", applyPerson);
        if (StringUtils.isNotBlank(reagentName)) {
            //根据试剂名获取单号
        }
        params.put("reagentName", reagentName);
        //操作状态位仓库领取
        Map<String, String> metaMap2 = new HashMap<>();
        metaMap2.put("groupId", "operate_status");
@@ -480,7 +481,8 @@
    }
    @Override
    public List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project, int first, int pageSize) {
    public List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber,
                                                   String department, String project,String applyPerson,String reagentName, int first, int pageSize) {
        Map<String, Object> params = new HashMap<>();
        params.put("userId", userId);
        params.put("startTime", startTime);
@@ -489,6 +491,8 @@
        params.put("department", department);
        params.put("project", project);
        params.put("reagentCode", reagentCode);
        params.put("applyPerson", applyPerson);
        params.put("reagentName", reagentName);
        //操作状态位仓库领取
        Map<String, String> metaMap2 = new HashMap<>();
        metaMap2.put("groupId", "operate_status");
@@ -517,4 +521,23 @@
    }
    @Override
    public int getApplyInfoSize(String receiptNumber) {
        Map<String,Object> params = new HashMap<>();
        Map<String, String> metaMap2 = new HashMap<>();
        metaMap2.put("groupId", "operate_status");
        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
        params.put("operatestate", baseMetas.get(0).getId());
        params.put("receiptNumber", receiptNumber);
        return  opeUseFlowDao.getApplyInfoSize(params);
    }
    @Override
    public int getOpeUseFlow(OpeUseFlow opeUseFlow) {
        return opeUseFlowDao.countOpeUseFlow(opeUseFlow);
    }
}