package com.ydtech.modules.fnc.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ydtech.modules.admin.model.report.financialReceivables.FinancialReceivablesAllMonthVo;
import com.ydtech.modules.admin.model.report.financialReceivables.FinancialReceivablesQueryMonthVo;
import com.ydtech.modules.admin.model.report.financialReceivables.FinancialReceivablesQueryVo;
import com.ydtech.modules.admin.model.report.financialReceivables.FinancialReceivablesVo;
import com.ydtech.modules.admin.model.report.profitAnalysis.ProfitAnalysisDto;
import com.ydtech.modules.admin.model.report.profitAnalysis.ProfitAnalysisQueryDto;
import com.ydtech.modules.fnc.dto.PlatformSettlementRecordDto;
import com.ydtech.modules.fnc.entity.InsPlyIncome;
import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
import com.ydtech.modules.fnc.vo.InsPlySettleVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
/**
*
* 保司结算手续费 Mapper 接口
*
*
* @author gws
* @since 2024-01-05
*/
@Mapper
public interface InsPlyIncomeMapper extends BaseMapper {
@Select({""}
)
List selectByCondition(InsPlyIncomeVo insPlyIncomeVo);
@Select({
"select a.*,b.`name` dept_name ,c.`name` companyName " +
"from ins_ply_income a " +
"left join sys_dept b on a.dept_id=b.id " +
"left join esm_ins_company c on a.company_id=c.id " +
"where a.policyno= #{policyno}"
}
)
InsPlyIncome selectByPlyno(String policyno);
@Select({""}
)
List selectSettleByCondition(InsPlySettleVo insPlySettleVo);
List queryNew(HashMap params);
List totalQuery(HashMap params);
void uopdateByOrderno(InsPlyIncome insPlyIncome);
List NonSettlementQuery(HashMap params);
HashMap totalAmount(HashMap params);
List totalPinAmount(HashMap params);
List totalBxAmount(HashMap params);
InsPlyIncome queryInvoicing(HashMap params);
List allOtherAmount(HashMap params);
InsPlyIncome findByLicenseno(HashMap params);
InsPlyIncome bxTotalAmount(HashMap params);
InsPlyIncome findByBxLicenseno(HashMap params);
InsPlyIncome getById (@Param("id") String id);
/**
*
* @param idArr 开票的id
* @return
*/
List> groupByInvoic(HashMap params);
List getIncomeIdList(HashMap params);
List> getOtherIds(HashMap params);
InsPlyIncome getEntityById(@Param("id") String id);
void updateByIds(String[] split);
List> otherTimeDetail(HashMap params);
InsPlyIncome ptTotalAmount(HashMap params);
/**
* @version
* @author: hxl
* @Date: 2024/6/18 10:15
* @Description: 根据合作公司id和结算状态查询数据
*/
List platformSettlementRecord(@Param("partnerCompaniesId") String partnerCompaniesId, @Param("handlingFeesStatus") String handlingFeesStatus,@Param("dockingPerson") String dockingPerson);
/***
*
* @param insPlyIncomeVo
* @return 返回私有 平台 应收 已收 未收
*/
InsPlyIncome getTotalPtReceivables(InsPlyIncomeVo insPlyIncomeVo);
/**
* 根据签单日期月份分组
* @param insPlyIncomeVo
* @return 平台 私有 应收 已收
*/
List> ptSumGroupByMonth(HashMap params);
/**
* @version
* @author: hxl
* @Date: 2024/7/31 18:04
* @Description: 查询数据
*/
List queryPage( @Param("vo") ProfitAnalysisQueryDto profitAnalysisQueryDto);
/**
* @version
* @author: hxl
* @Date: 2024/8/1 12:09
* @Description: 查询应收总数据
*/
BigDecimal queryDateByTypeSumAmount(@Param("vo") FinancialReceivablesQueryVo financialReceivablesQueryVo);
/**
* @version
* @author: hxl
* @Date: 2024/8/1 12:16
* @Description: 查询应收列表数据 1-12月
*/
List queryDateByType(@Param("vo") FinancialReceivablesQueryVo financialReceivablesQueryVo);
/**
* @version
* @author: hxl
* @Date: 2024/8/5 10:06
* @Description: 查询月份的统计数据
*/
FinancialReceivablesAllMonthVo queryDateByTypeByMonth(FinancialReceivablesQueryMonthVo financialReceivablesQueryVo);
}