package com.hzya.frame.sys.proof.service;

import com.alibaba.fastjson.JSONObject;
import com.hzya.frame.basedao.service.IBaseService;
import com.hzya.frame.sys.proof.entity.ProofEntity;
import com.hzya.frame.web.entity.JsonResultEntity;

/**
 * @description: 凭证  service
 * @tableName: sys_proof
 * @entityName: ProofEntity
 * @author: gjh
 * @history: 1.0
 */
public interface IProofService extends IBaseService<ProofEntity, String> {


    /**
     * @Author lvleigang
     * @Description  查询数据分页
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity queryProofPage(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  获取凭证
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity getProof(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  修改凭证
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity changeProof(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  三方撤销凭证
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity tripartiteRevocation(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  删除凭证
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity deleteProof(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  获取科目下拉的数据
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity getJournalingPage(JSONObject jsonObject);   /**
     * @Author lvleigang
     * @Description  获取科目下拉的数据
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity getJournaling(JSONObject jsonObject);

    /**
     * @Author lvleigang
     * @Description  推送凭证
     * @Date 1:33 下午 2023/7/12
     * @param jsonObject
     * @return com.hzya.frame.web.entity.JsonResultEntity
     **/
    JsonResultEntity pushProof(JSONObject jsonObject);
}
