package com.vci.ubcs.code.service; import com.baomidou.mybatisplus.extension.service.IService; import com.vci.ubcs.code.dto.CodeOrderDTO; import com.vci.ubcs.code.dto.datapush.BaseModelDTO; import com.vci.ubcs.code.entity.CodeAllCode; import com.vci.ubcs.code.entity.CodeRule; import com.vci.ubcs.code.entity.CodeWupinEntity; import com.vci.ubcs.code.vo.CodeClstempattrVO; import com.vci.ubcs.code.vo.CodeClstemplateVO; import com.vci.ubcs.code.vo.CodeKeyattrrepeatVO; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.web.pagemodel.KeyValue; import java.util.List; import java.util.Map; /** * 主数据引擎服务 * @author weidy * @date 2022-2-21 */ public interface MdmEngineService extends IService { /** * 使用分类的主键获取可以使用的模板对象 * @param codeClassifyOid 分类的主键 * @return 模板的显示对象 */ CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid); /** * 使用分类的主键获取可以使用的模板对象 * @param codeClassifyOid 分类的主键 * @param hasAttr 包含属性 * @return 模板的显示对象 */ CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid, boolean hasAttr); /** * 获取枚举的下拉选项 * @param attrVO 模板属性的对象 * @return 下拉选项 */ List listComboboxItems(CodeClassifyTemplateAttrVO attrVO); /** * 修改状态 * @param baseModelDTO 数据传输对象 */ void changeStatus(BaseModelDTO baseModelDTO); /** * 申请单一编码 * @param orderDTO 申请的信息,需要包含属性的内容和码段相关的内容 * @return 返回编码的内容 */ String addSaveCode(CodeOrderDTO orderDTO); /** * 判断编码的码段是否输入或者选择了码值 * @param ruleVO 规则的显示对象 * @param orderDTO 编码申请的内容 */ void checkSecValueOnOrder(CodeRuleVO ruleVO, CodeOrderDTO orderDTO); /** * 封装关键属性的查询语句 * * @param value 当前的值 * @param keyRuleVO 关键属性的控制规则,可以为空 * @param attrId 属性的编号 * @param trim 是否去除空格 * @param ignoreCase 是否不区分大小写 * @param ignoreWidth 是否忽略全半角 * @param trimAll 是否忽略全部空格 * @param conditionMap 查询条件 */ void wrapperKeyAttrConditionMap(String value, CodeKeyattrrepeatVO keyRuleVO, String attrId, boolean trim, boolean ignoreCase, boolean ignoreWidth, boolean trimAll, Map conditionMap); /** * 初始化业务类型 * --创建人默认为当前用户,如果需要修改,可以在获取后自行处理 * @param btmName 业务类型的名称,会自动变成小写 * @return CodeWupinEntity * @throws VciBaseException 初始化出错的是会抛出异常 */ CodeWupinEntity createCBOByBtmName(String btmName); /** * 保存可输可选的信息 * * @param templateVO 模板的对象 * @param cboList 数据的内容 */ void batchSaveSelectChar(CodeClstemplateVO templateVO, /*List cboList*/ List cboList); }