/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.workcontractinfo.dao;

import com.jeeplus.common.persistence.CrudDao;
import com.jeeplus.common.persistence.annotation.MyBatisDao;
import com.jeeplus.modules.workclientinfo.entity.WorkClientInfo;
import com.jeeplus.modules.workcontractinfo.entity.WorkContractAnnex;
import com.jeeplus.modules.workcontractinfo.entity.WorkContractInfo;
import com.jeeplus.modules.workcontractinfo.entity.WorkContractInfoCopy;

import java.util.List;
import java.util.Map;

/**
 * 合同管理DAO接口
 *
 * @author 丁旭
 * @version 2017-03-21
 */
@MyBatisDao
public interface WorkContractInfoCopyDao extends CrudDao<WorkContractInfoCopy> {
    public void insertCopy(WorkContractInfo workContractInfo);
    public void updateCopy(WorkContractInfo workContractInfo);
    public List<WorkClientInfo> findListByclient(WorkClientInfo client);
    public List<WorkContractInfoCopy> findLists(WorkContractInfoCopy workContractInfoCopy);
    public int updateProcessInstanceId(WorkContractInfoCopy workContractInfoCopy);

    public WorkContractInfoCopy getByProcessInstanceId(String processInstanceId);

    public List<WorkContractInfoCopy> findWaitAndFinishList(Map<Object, Object> map);

    public void inertContractManger(List<WorkContractAnnex> workContractAnnex);

    public WorkClientInfo getClientInfoByClientId(String id);
    public WorkContractInfoCopy getByBeforeId(String alterBeforeId);

    public void deleteFile(String id);
    public List<WorkContractInfoCopy> findByList(WorkContractInfoCopy workContractInfoCopy);

    int updateInvalidateProcessInstanceId(WorkContractInfoCopy workContractInfoCopy);

    int updateInvalidateStatusAndUser(WorkContractInfoCopy workContractInfoCopy);

    WorkContractInfoCopy getByInvalidateProcessInstanceId(String invalidateProcessInstanceId);
}