package cn.ey.biz.module.system.convert.bpm;

import cn.ey.biz.module.system.api.bpm.dto.*;
import cn.ey.biz.module.system.controller.bpm.instance.vo.*;
import cn.ey.biz.module.system.dal.dataobject.bpm.BpmProcessInstanceExtDO;
import cn.ey.biz.module.weaver.api.*;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;

/**
 * 流程实例 Convert
 *
 */
@Mapper
public interface BpmProcessInstanceConvert {

    BpmProcessInstanceConvert INSTANCE = Mappers.getMapper(BpmProcessInstanceConvert.class);

    BpmProcessInstanceExtDO convert(BpmProcessInstanceCreateReqVO bean);

    BpmProcessInstanceExtDO convert(BpmProcessInstanceCreateDTO bean);

    BpmProcessInstanceRespVO convert(BpmProcessInstanceExtDO bean);

    BpmWorkflowRequestLogsRespVO convert(GetWorkflowRequestLogsService.WorkflowRequestLogsResponse bean);

    List<BpmWorkflowRequestLogsRespVO> convertList(List<GetWorkflowRequestLogsService.WorkflowRequestLogsResponse> list);

    BpmWorkflowRespVO convert(GetWorkflowRequestService.WorkflowResponse bean);

    BpmWorkflowRespDTO convertDto(GetWorkflowRequestService.WorkflowResponse bean);

    List<BpmOperatorInfoRespDTO>  convert(List<RequestOperatorInfoService.OperatorInfoResponse>  bean);

    BpmSimpleModeDataRespVo convert(GetSimpleModeDataService.SimpleModeDataResponse bean);

    ReceiveRequestInfoByJsonRespDTO convert(ReceiveRequestInfoByJsonService.ReceiveRequestInfoByJsonResponse bean);
}
