package com.unis.crk.cplbusiness.service;

import com.unis.crk.cplbusiness.entity.CplFcbgzStore;
import com.unis.crk.cplbusiness.entity.CplStore;
import com.unis.crk.cplbusiness.entity.DataKcglCplfcbgzDefault;
import com.baomidou.mybatisplus.extension.service.IService;
import com.unis.crk.cplbusiness.entity.vo.DataKcglCplfcbgzDefaultVo;
import cn.hutool.json.JSONObject;
import java.util.Map;
import com.baomidou.mybatisplus.core.metadata.IPage;
/**
 * <p>
 * 成品粮分仓保管账 服务类
 * </p>
 *
 * @author TangSong
 * @since 2022-03-21
 */
public interface IDataKcglCplfcbgzDefaultService extends IService<DataKcglCplfcbgzDefault> {

        /**
         *修改成品粮分仓保管账
         * @param param 成品粮分仓保管账业务数据
         * @return
         */
        JSONObject update(DataKcglCplfcbgzDefault param);
        /**
         *删除成品粮分仓保管账数据
         * @param id 成品粮分仓保管账主键尖
         * @return
         */
        JSONObject delete(String id);

        /**
         * 按照条件查询成品粮分仓保管账信息
         * @param pageQuery
         * @throws Exception
         */
        IPage<Map<String,Object>> findPageVo(DataKcglCplfcbgzDefaultVo pageQuery) ;

        /**
         *生成分库保管账
         * @param userName
         * @param unitId 单位id
         * @param selectDataId 单位id
         * @param store 库存信息
         * @param fcbgzStore 分库保管账信息
         * @param bz 备注
         * @return
         */
        Boolean changeFCBGZ(String userName, String unitId, String selectDataId, CplStore store, CplFcbgzStore fcbgzStore, String bz);

        /**
         *
         * @param unitId 单位Id
         * @param sl 数量
         * @param zje 金额
         * @param dataId 分库保管账id
         * @param dataKcglFcbgzDefault 保管账数据
         * @return
         */
        boolean updateFcbgzByWrapper(String unitId,Double sl,Double zje , String dataId, DataKcglCplfcbgzDefault dataKcglFcbgzDefault);

}
