ludc
2023-07-20 7bacb4be65407d9f8a6bdcd44b4192aa32de91a1
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -1,6 +1,8 @@
package com.vci.ubcs.code.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
@@ -11,13 +13,14 @@
import com.vci.ubcs.code.vo.CodeKeyAttrRepeatVO;
import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.omd.vo.BtmTypeVO;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.revision.model.BaseModel;
import com.vci.ubcs.starter.revision.model.TreeQueryObject;
import com.vci.ubcs.starter.web.pagemodel.*;
import com.vci.ubcs.starter.web.util.VciQueryWrapperForDO;
import org.springblade.core.tool.api.R;
import java.beans.IntrospectionException;
import java.lang.reflect.InvocationTargetException;
import java.sql.SQLException;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -101,7 +104,14 @@
    * @param cboList    数据的内容
    */
   void batchSaveSelectChar(CodeClassifyTemplateVO templateVO, /*List<ClientBusinessObject> cboList*/
                      List<String> cboList);
                      List<BaseModel> cboList);
   /**
    * 封装开关的内容,常用于导出
    * @param dataMap 数据的内容
    * @param templateVO 模板的显示
    */
   void wrapperBoolean(List<Map<String, String>> dataMap, CodeClassifyTemplateVO templateVO);
   /**
    * 使用模板的主键获取表单的信息
@@ -369,6 +379,14 @@
    * @return UI相关的内容
    */
   MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid, String functionId);
   /**
    * 使用分类主键,模板主键,阶段标识,流程模板kek获取流程审批中页面的内容,包含按钮
    *
    * @param codeClassifyOid 主题库分类主键
    * @param functionId      功能的编号,默认5
    * @return UI相关的内容
    */
   MdmUIInfoVO getFlowUIInfoByClassifyOid(String codeClassifyOid, String functionId,String templateId,String taskId,String modelKey);
   /**
    * 传入业务类型以及相关数据进行批量插入操作
@@ -377,7 +395,7 @@
    * @param baseModels      处理数据
    * @return 处理成功数据条数
    */
   Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception;
   Integer insertBatchByType(String btmType, List<BaseModel> baseModels);
   /**
    * 传入业务类型以及相oid集合查询数据进行返回
    *
@@ -385,7 +403,7 @@
    * @param oids      需要查询的oid集合 逗号分开
    * @return 查询出的数据
    */
   List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException;
   List<BaseModel> selectByTypeAndOid(String btmType, String oids) ;
   /**
    * 传入业务类型以及相关数据进行批量更新操作
    *
@@ -393,6 +411,36 @@
    * @param baseModels      处理数据
    * @return 处理状态
    */
   R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception;
   R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels);
   /**
    * 默认列表
    * @param referConfigVO
    * @return
    */
   IPage<BaseModel> referDataGrid(UIFormReferVO referConfigVO, BaseQueryObject baseQueryObject) throws VciBaseException;
   /**
    * 获取树形的参照
    * @param referConfigVO 参照的配置
    * @return 树形的数据
    */
   List<Tree> referTree(UIFormReferVO referConfigVO, TreeQueryObject queryObject);
   /**
    * 是否为修改忽略的属性
    * @param attrName 属性的名字
    * @return true 表示应该忽略
    */
   default boolean checkUnAttrUnEdit(String attrName){
      return  (VciQueryWrapperForDO.OID_FIELD.equalsIgnoreCase(attrName)
         ||"ts".equalsIgnoreCase(attrName)
         || "lastmodifier".equalsIgnoreCase(attrName)
         || "lastmodifytime".equalsIgnoreCase(attrName)
         || "createtime".equalsIgnoreCase(attrName)
         || "checkintime".equalsIgnoreCase(attrName)
         ||"checkouttime".equalsIgnoreCase(attrName));
   }
}