ludc
2023-08-04 9d96f11fb1de77d1ad4fb0be04a10ae8eb7f46c9
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeFixedValueServiceImpl.java
@@ -1,13 +1,11 @@
package com.vci.ubcs.code.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
import com.vci.ubcs.code.dto.CodeFixedValueDTO;
import com.vci.ubcs.code.entity.CodeClassifyProcessTemp;
import com.vci.ubcs.code.entity.CodeFixedValue;
import com.vci.ubcs.code.mapper.CodeFixedValueMapper;
import com.vci.ubcs.code.service.ICodeFixedValueService;
@@ -15,6 +13,8 @@
import com.vci.ubcs.code.wrapper.CodeFixedValueWrapper;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.slf4j.Logger;
@@ -33,7 +33,8 @@
import java.util.*;
import java.util.stream.Collectors;
import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.*;
import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_LINKED_NOT_DELETE;
import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_OID_NOT_EXIST;
/**
 * 固定码段的码值服务
@@ -85,15 +86,7 @@
      CodeFixedValue codeFixedValueDO = new CodeFixedValue();
      BeanUtilForVCI.copyPropertiesIgnoreCase(codeFixedValueDTO,codeFixedValueDO);
      //填充一些默认值
      codeFixedValueDO.setOid(VciBaseUtil.getPk());
      codeFixedValueDO.setRevisionOid(VciBaseUtil.getPk());
      codeFixedValueDO.setNameOid(VciBaseUtil.getPk());
      codeFixedValueDO.setBtmname(MdmBtmTypeConstant.CODE_FIXED_VALUE);
      codeFixedValueDO.setCreateTime(new Date());
      codeFixedValueDO.setCreator(AuthUtil.getUserId().toString());
      codeFixedValueDO.setLastModifier(AuthUtil.getUserId().toString());
      codeFixedValueDO.setLastModifyTime(new Date());
      codeFixedValueDO.setTs(new Date());
      DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeFixedValueDO, MdmBtmTypeConstant.CODE_FIXED_VALUE);
      Long count = this.codeFixedValueMapper.selectCount(Wrappers.<CodeFixedValue>query()
         .lambda().eq(CodeFixedValue::getCodeFixedSecOid, codeFixedValueDO.getCodeFixedSecOid())
      )+1L;
@@ -116,9 +109,7 @@
      CodeFixedValue codeFixedValueDO = selectByOid(codeFixedValueDTO.getOid());
      revisionModelUtil.copyFromDTOIgnore(codeFixedValueDTO,codeFixedValueDO);
      //填充一些默认值
      codeFixedValueDO.setLastModifier(AuthUtil.getUserId().toString());
      codeFixedValueDO.setLastModifyTime(new Date());
      codeFixedValueDO.setTs(new Date());
      DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeFixedValueDO);
      boolean resBoolean = codeFixedValueMapper.updateById(codeFixedValueDO) > 0;
      return resBoolean;
   }
@@ -130,30 +121,12 @@
    * @return success为true为可以删除,false表示有数据引用,obj为true表示有下级
    */
   private R checkIsCanDeleteForDO(CodeFixedValueDTO codeFixedValueDTO, CodeFixedValue codeFixedValueDO) {
      if (checkTs(codeFixedValueDTO)) {
         return R.fail(TS_NOT_PROCESS);
      }
      //boService.checkTs(codeFixedValueDTO);
      if(!checkIsLinked(codeFixedValueDO.getOid())) {
         return R.status(true);
      }else{
         return R.fail(DATA_LINKED_NOT_DELETE);
      }
   }
   /**
    * 检查ts
    * @param tempDO
    * @return
    */
   private boolean checkTs(CodeFixedValueDTO tempDO){
      LambdaQueryWrapper<CodeFixedValue> wrapper = Wrappers.<CodeFixedValue>query()
         .lambda().eq(CodeFixedValue::getOid,tempDO.getOid()).select(CodeFixedValue::getTs);
      long dbTs = codeFixedValueMapper.selectById(wrapper).getTs().getTime();
      long currentTs = tempDO.getTs().getTime();
      if(dbTs == currentTs){
         return true;
      }
      return false;
   }
   /**
@@ -342,6 +315,5 @@
      boolean resBoolean = codeFixedValueMapper.deleteBatchIds(doList.stream().map(CodeFixedValue::getOid).collect(Collectors.toList())) > 0;
      return resBoolean;
   }
}