liusheng
2025-03-18 30b4fe30d36b48a103b281aff631fc45af849636
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -149,6 +149,33 @@
            //修改
            patArchiveVO.setIsoperation(2);
            patArchiveMapper.updatePatArchive(patArchive);
            if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) {
                //不需要服务了,需要通过patid和sendstate=2或者sendstate=1去查询一下,service_subtask里是否有正在执行的任务,有的话,立即停了
                ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
                serviceSubtaskVO.setPatid(patArchive.getId());
                serviceSubtaskVO.setSendstate(2L);
                List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
                serviceSubtaskVO.setSendstate(1L);
                List<ServiceSubtask> serviceSubtaskList1 = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
                if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
                    if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList.addAll(serviceSubtaskList1);
                } else {
                    if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList = serviceSubtaskList1;
                }
                //去redis中,查询是否有subid,有的话移除cache-exist
                if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
                    for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
                        log.error("需要移除的subId为:{}", serviceSubtask.getId().toString());
                        serviceSubtaskMapper.deleteServiceSubtaskById(serviceSubtask.getId());
                        redisCache.removeElementFromList("cache-exist", serviceSubtask.getId().toString());
                        redisCache.removeElementFromList("cache-0", serviceSubtask.getId().toString());
                        redisCache.removeElementFromList("cache-1", serviceSubtask.getId().toString());
                        redisCache.removeElementFromList("cache-2", serviceSubtask.getId().toString());
                        redisCache.removeElementFromList("cache-3", serviceSubtask.getId().toString());
                        redisCache.removeElementFromList("cache-4", serviceSubtask.getId().toString());
                    }
                }
            }
        }
        if (CollectionUtils.isNotEmpty(patArchiveVO.getTagList())) {
@@ -157,6 +184,22 @@
                patArchivetag.setGuid(patArchiveVO.getGuid());
                patArchivetag.setOrgid(patArchiveVO.getOrgid());
                if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 1 || patArchivetag.getIsoperation() == null && patArchiveVO.getIsoperation() == 1) {
                    //判断一下base_tag里是不是存在,如果不存在,先新增
                    BaseTag baseTag = new BaseTag();
                    baseTag.setTagname(patArchivetag.getTagname().trim());
                    List<BaseTag> baseTags = baseTagMapper.selectBaseTagListByTagname(baseTag);
                    if (CollectionUtils.isEmpty(baseTags)) {
                        //先给放到未分类中
                        baseTag.setTagcategoryid(6L);
                        baseTag.setOrgid(patArchiveVO.getOrgid());
                        baseTag.setDelFlag("0");
                        baseTag.setUpdateTime(new Date());
                        baseTag.setCreateTime(new Date());
                        baseTagMapper.insertBaseTag(baseTag);
                        patArchivetag.setTagid(baseTag.getTagid());
                    } else {
                        patArchivetag.setTagid(baseTags.get(0).getTagid());
                    }
                    //新增
                    patArchivetag.setUpdateBy(null);
                    patArchivetag.setCreateTime(new Date());