xiejun
2024-11-01 0496aed6e04c5084f05ce1035ba9ec38e3d4e9c7
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeFixedValueService.java
@@ -1,15 +1,117 @@
package com.vci.ubcs.code.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.dto.CodeFixedValueDTO;
import com.vci.ubcs.code.entity.CodeFixedValue;
import com.vci.ubcs.code.vo.pagemodel.CodeFixedValueVO;
import com.vci.ubcs.starter.exception.VciBaseException;
import org.springblade.core.tool.api.R;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
 * 固定码段的码值服务接口
 *
 * @author ludc
 * @date 2022-01-24
 * @date 2023-04-24
 */
public interface ICodeFixedValueService extends IService<CodeFixedValue> {
   /**
    * 查询所有的固定码段的码值
    * @param codeFixedValueVO 查询条件
    * @param page 分页和排序
    * @return 执行结果
    * @throws VciBaseException 查询条件和分页出错的时候会抛出异常
    */
   IPage<CodeFixedValueVO> gridCodeFixedValue(CodeFixedValueVO codeFixedValueVO,IPage<CodeFixedValueVO> page) throws VciBaseException;
   /**
    * 增加固定码段的码值
    * @param codeFixedValueDTO 固定码段的码值数据传输对象
    * @return 执行结果
    * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常
    */
   boolean addSave(CodeFixedValueDTO codeFixedValueDTO) throws VciBaseException;
   /**
    * 修改固定码段的码值
    * @param codeFixedValueDTO 固定码段的码值数据传输对象
    * @return 执行结果
    * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常
    */
   boolean editSave(CodeFixedValueDTO codeFixedValueDTO) throws VciBaseException;
   /**
    * 删除固定码段的码值
    * @param codeFixedValueDTO 固定码段的码值数据传输对象,oid和ts需要传输
    * @return 删除结果反馈::success:成功,fail:失败
    * @throws VciBaseException 参数为空,被引用时抛出异常
    */
   R deleteCodeFixedValue(CodeFixedValueDTO codeFixedValueDTO) throws VciBaseException;
   /**
    * 主键获取固定码段的码值
    * @param oid 主键
    * @return 固定码段的码值显示对象
    * @throws VciBaseException 参数为空,数据不存在时会抛出异常
    */
   CodeFixedValueVO getObjectByOid(String oid) throws VciBaseException;
   /**
    * 主键批量获取固定码段的码值
    * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个
    * @return 固定码段的码值显示对象
    * @throws VciBaseException 查询出现异常时会抛出
    */
   Collection<CodeFixedValueVO> listCodeFixedValueByOids(Collection<String> oidCollections) throws VciBaseException;
   /**
    * 参照固定码段的码值列表
    * @param codeFixedValueVO 查询条件
    * @param page 分页和排序
    * @return 固定码段的码值显示对象列表,生效的内容
    * @throws VciBaseException 查询条件和分页出错的时候会抛出异常
    */
   IPage<CodeFixedValueVO> refDataGridCodeFixedValue(CodeFixedValueVO codeFixedValueVO, IPage<CodeFixedValueVO> page) throws VciBaseException;
   /**
    * 使用码段的主键获取固定码的码值
    * @param secOidCollection 码段的主键
    * @return 码值显示对象
    * @throws VciBaseException 查询的时候出现了错误会抛出异常
    */
   Map<String,List<CodeFixedValueVO>> listCodeFixedValueBySecOids(Collection<String> secOidCollection) throws VciBaseException;
   /**
    * 批量添加固定码段的码值,如果保存的集合中不存在已在数据库中的码值则删除。主要是保存码值的序号
    * @param dtoList 固定码段的码值列表
    * @param codefixedsecoid 固定码段的主键
    * @return 执行结果
    */
   R<CodeFixedValueVO> batchSave4Order(List<CodeFixedValueDTO> dtoList, String codefixedsecoid);
   /**
    * 根据码段主键删除其存在的码值对象
    * @param codefixedsecoid 固定码段的主键
    * @return 执行结果
    */
   boolean batchDeleteBySecOid(String codefixedsecoid);
   /**
    * 根据codeFixedSecOid查询码值
    * @param codeFixedSecOids
    * @return
    */
   List<CodeFixedValue> listFixedValueByCodeFixedSecOid(List<String> codeFixedSecOids);
   /**
    * 根据关联固定码段主键删除码值
    * @param codeFixedSecOid
    * @return
    */
   Boolean deleteFixedValueBySecOid(String codeFixedSecOid);
}