package com.vci.ubcs.code.service; import com.vci.ubcs.code.entity.DockingPreApplyDataDO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import com.vci.ubcs.code.dto.CodeOrderDTO; import com.vci.ubcs.code.dto.DockingPreApplyDataDTO; import com.vci.ubcs.code.dto.DockingPreApplyDataInfoDTO; import com.vci.ubcs.code.dto.PreApplyCodeOrderDTO; import com.vci.ubcs.code.vo.pagemodel.DockingPreApplyDataVO; import java.util.Collection; import java.util.List; import java.util.Map; /** * 记录工艺推送过来的数据信息服务接口 * * @author weidy * @date 2022-04-05 */ public interface DockingPreApplyDataServiceI { /*** * 批量维护分类设置 * @param dockingPreApplyDataDTO * @return * @throws VciBaseException */ List batchSetDataClassId(DockingPreApplyDataDTO dockingPreApplyDataDTO)throws VciBaseException; /*** * 根据选择额预申请的数据勾选数据 * @param codeClassifyOid * @param templateOid * @param btmType * @param dataOids * @return * @throws VciBaseException */ DataGrid> gridApplyData(String codeClassifyOid,String templateOid,String btmType,String dataOids)throws VciBaseException; /** * 批量数据对象转换为显示对象 * @param dockingPreApplyDataDOs 数据对象列表 * @return 显示对象 * @throws VciBaseException 参数为空或者不存在的时候会抛出异常 */ List dockingPreApplyDataDO2VOs(Collection dockingPreApplyDataDOs) throws VciBaseException; /** * 数据对象转换为显示对象 * @param dockingPreApplyDataDO 数据对象 * @return 显示对象 * @throws VciBaseException 拷贝属性出错的时候会抛出异常 */ DockingPreApplyDataVO dockingPreApplyDataDO2VO(DockingPreApplyDataDO dockingPreApplyDataDO) throws VciBaseException; /** * 增加记录工艺推送过来的数据信息 * @param dockingPreApplyDataDTO 记录工艺推送过来的数据信息数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ DockingPreApplyDataVO addSave(DockingPreApplyDataDTO dockingPreApplyDataDTO) throws VciBaseException; /** * 删除记录工艺推送过来的数据信息 * @param dockingPreApplyDataDTO 记录工艺推送过来的数据信息数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 * @throws VciBaseException 参数为空,被引用时抛出异常 */ BaseResult deleteDockingPreApplyData(DockingPreApplyDataDTO dockingPreApplyDataDTO) throws VciBaseException; /** * 主键获取记录工艺推送过来的数据信息 * @param oid 主键 * @return 记录工艺推送过来的数据信息显示对象 * @throws VciBaseException 参数为空,数据不存在时会抛出异常 */ DockingPreApplyDataVO getObjectByOid(String oid) throws VciBaseException; /** * 主键批量获取记录工艺推送过来的数据信息 * @param oidCollections 主键集合,但是受性能影响,建议一次查询不超过10000个 * @return 记录工艺推送过来的数据信息显示对象 * @throws VciBaseException 查询出现异常时会抛出 */ Collection listDockingPreApplyDataByOids(Collection oidCollections) throws VciBaseException; /** * 参照记录工艺推送过来的数据信息列表 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 记录工艺推送过来的数据信息显示对象列表,生效的内容 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid refDataGridDockingPreApplyData(Map conditionMap, PageHelper pageHelper) throws VciBaseException; //================== /** * 查询所有的记录工艺推送过来的数据信息 * @param conditionMap 查询条件 * @param pageHelper 分页和排序 * @return 执行结果 * @throws VciBaseException 查询条件和分页出错的时候会抛出异常 */ DataGrid gridDockingPreApplyData(Map conditionMap, PageHelper pageHelper) throws VciBaseException; /** * 插入data和datainfo,会自动把data里的oid,unique赋值到datainfo里边去 * @param dockingPreApplyDataDTO 记录工艺推送过来的数据信息数据传输对象 * @param dockingPreApplyDataInfoDTOList 记录工艺推送过来的数据详细信息数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ void addSaveDataAndInfo(DockingPreApplyDataDTO dockingPreApplyDataDTO, List dockingPreApplyDataInfoDTOList) throws VciBaseException; /** * 修改 datas * @param dockingPreApplyDataDTO 记录工艺推送过来的数据信息数据传输对象 * @return 执行结果 * @throws VciBaseException 参数为空,唯一项,必输项不通过时会抛出异常 */ BaseResult editSave(DockingPreApplyDataDTO dockingPreApplyDataDTO) throws VciBaseException; /** * 根据data的oid查询data信息和datainfo信息,并且拼接datainfo为map * @param dockingPreApplyDataDTO * @return * @throws VciBaseException */ BaseResult> getDataInfoMap(DockingPreApplyDataDTO dockingPreApplyDataDTO) throws VciBaseException; /** * 批量处理预申请编码 * 1、调用engineService.addSaveCode(orderDTO)先插入预申请数据到对应主题库静态数据 * 2、修改dockingPreApplyData的分类oid和分类名称 */ BaseResult applyData(List preApplyCodeOrderDTOList); /** * 批量处理预申请编码 * 1、调用engineService.addSaveCode(orderDTO)先插入预申请数据到对应主题库静态数据 * 2、修改dockingPreApplyData的分类oid和分类名称 */ BaseResult batchApplyDatas(List CodeOrderDTOs); }