package com.vci.ubcs.code.service; import com.vci.ubcs.code.entity.DockingDataDO; import com.vci.ubcs.code.entity.DockingLogeDO; import com.vci.ubcs.code.entity.DockingTaskDO; import com.vci.ubcs.code.entity.SysIntHeaderDO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import java.util.Map; /** * 一、配置分类、系统、接口数据 * 1、配置系统SysIntBaseDO * 2、配置系统、接口、分类SysIntInfoDO * * 二、处理预申请数据 * 1、接收xmlData * 2、工艺系统特殊处理,根据unique查询编码,有已经发布的数据,直接返回编码。没有查询到已经发布的编码(编辑中、提交中、审核中、停用等)和一般系统一样按照第3步处理 * 3、解析xmlData里每一个data节点,存储入DockingPreApplyDataDO,data节点下pros节点存储入DockingPreApplyDataInfoDO * 4、返回xmlData,里边标识了每一个data的处理结果 * * 三、根据预申请数据,插入主数据 * 1、关联分类 * 2、查询出DockingPreApplyDataInfoDO存储的数据,按照数据映射xml,转换为我们的key,返给前端自动填充到新增数据的页面 * 3、调用通用的数据新增接口保存数据,这一步和主数据管理模块功能一样 * * 四、推送数据 * 1、分类数据和主数据有变化的时候,数据库触发器(TIG_CODEALLCODE_FORDOCKINGDATA,TIG_codeclsify_FORDOCKINGDATA)自动插入dockingdata * 2、DockingScheduling执行时,查询dockingdatasendflag=false的数据,结合查询sysintinfo数据,查询dockingtask * 3、dockingtask中取出来数据,根据btmname和数据oid查询出来要推送的数据,查询SysIntInfoDO,根据一、2、中配置的信息,执行推送 * * @author wangyi * @date 2022-03-20 */ public interface CodeDuckingServiceI { /** * 二、1、2、3、4、 * 处理预申请数据 * @param xmlDatas * @return 接收的xmlDate */ String applicateCode(String xmlDatas); /** * 四、2、 * 查询redis中数据,对比后插入dockingtask */ void insertCache2(); /** * 四、1、2、3、 */ void sendData3(); /** * 定时任务调用 */ void DockingScheduing(); /** * 数据删除的时候,缓存到redis * @param oid */ void cacheDeleteData(String oid,Object obj); /** * 查询data列表 */ DataGrid gridData(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 查询task列表 */ DataGrid gridTask(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 查询集成log列表 */ DataGrid gridLoge(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 查询集成接口param列表 */ DataGrid gridHeader(Map conditionMap, PageHelper pageHelper) throws VciBaseException; }