215 lines
8.6 KiB
XML
215 lines
8.6 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="com.pusong.business.mapper.PsContractInfoMapper">
|
|
<resultMap id="contractResult" type="com.pusong.business.domain.vo.PsContractInfoVo">
|
|
<id column="contract_code" property="contractCode"></id>
|
|
<collection columnPrefix="com_" property="psCompanyInfoVo" ofType="com.pusong.business.domain.vo.PsCompanyInfoVo" >
|
|
</collection>
|
|
<collection columnPrefix="cus_" property="psCustomInfoVo" ofType="com.pusong.business.domain.vo.PsCustomInfoVo" >
|
|
</collection>
|
|
</resultMap>
|
|
<sql id="queryContractList" >
|
|
|
|
select info.*,
|
|
(select apply_date from ps_contract_info pci where pci.custom_id = info.custom_id and pci.is_cancel != '03' and pci.contract_status != '10' order by pci.apply_date limit 0,1)
|
|
as first_apply_date,
|
|
com.id com_id,
|
|
com.company_name com_company_name,
|
|
com.company_adress com_company_adress,
|
|
com.company_account_bank com_company_account_bank,
|
|
com.legal_person_name com_legal_person_name,
|
|
com.legal_person_idcard com_legal_person_idcard,
|
|
com.legal_person_phone com_legal_person_phone,
|
|
cus.id cus_id,
|
|
cus.custom_name cus_custom_name ,
|
|
cus.custom_mobile cus_custom_mobile,
|
|
cus.custom_status cus_custom_status,
|
|
us.nick_name custom_manager_name,
|
|
(select ptm.invoice from ps_task_main ptm where ptm.task_type = '3' and ptm.contract_code = info.contract_code and ptm.task_status = 30 limit 0,1)
|
|
as invoice_ossid
|
|
from ps_contract_info info
|
|
left join ps_company_info com on info.company_id = com.id
|
|
left join ps_custom_info cus on info.custom_id = cus.id
|
|
left join sys_user us on info.custom_manager = us.user_id
|
|
|
|
</sql>
|
|
|
|
|
|
<select id="selectPageContractList" resultMap="contractResult">
|
|
<include refid="queryContractList"/>
|
|
${ew.getCustomSqlSegment}
|
|
</select>
|
|
|
|
<select id="selectContractList" resultMap="contractResult">
|
|
<include refid="queryContractList"/>
|
|
${ew.getCustomSqlSegment}
|
|
</select>
|
|
|
|
<select id="querySalaryListByCodes" resultType="com.pusong.business.domain.PsSalaryContract">
|
|
select
|
|
info.contract_code
|
|
,info.custom_manager
|
|
,cus.custom_name
|
|
,cus.custom_mobile
|
|
,com.company_name
|
|
,info.contract_amount
|
|
,info.start_service_date service_start_date
|
|
from ps_contract_info info
|
|
left join ps_custom_info cus on info.custom_id = cus.id
|
|
left join ps_company_info com on info.company_id = com.id
|
|
${ew.getCustomSqlSegment}
|
|
</select>
|
|
|
|
<select id="homePageReturnMoneyInfo" resultType="java.util.Map">
|
|
SELECT
|
|
info.contract_code,
|
|
info.contract_amount,
|
|
pay.money,
|
|
pay.business_type,
|
|
info.apply_date
|
|
FROM ps_contract_info info
|
|
LEFT JOIN ps_contract_pay pay on
|
|
pay.contract_code=info.contract_code and
|
|
pay.pay_status=#{queryParam.payStatus} and
|
|
pay.del_flag=0
|
|
|
|
WHERE
|
|
<if test="queryParam.startDate != null">
|
|
info.apply_date >= #{queryParam.startDate} and
|
|
</if>
|
|
<if test="queryParam.endDate != null">
|
|
info.apply_date < #{queryParam.endDate} and
|
|
</if>
|
|
info.contract_status != #{queryParam.contractStatus} and
|
|
info.is_cancel != #{queryParam.isCancel}
|
|
</select>
|
|
|
|
<!-- 按人员成交数据列表 -->
|
|
<select id="getUserContractTypeAmountsByDeptId" resultType="com.pusong.business.domain.vo.home.UserContractAmountInfo">
|
|
SELECT
|
|
u.user_id as userId,
|
|
u.nick_name as nickName,
|
|
bus.business_type as businessType,
|
|
IFNULL(info.contract_amount,0) as contractAmount,
|
|
info.is_due as isDue,
|
|
info.contract_code as contractCode
|
|
FROM sys_user u
|
|
LEFT JOIN ps_contract_info info on
|
|
u.user_id=info.custom_manager
|
|
and info.contract_status != #{queryParam.contractStatus}
|
|
and info.is_cancel != #{queryParam.isCancel}
|
|
|
|
<if test="queryParam.startDate != null">
|
|
and info.apply_date >= #{queryParam.startDate}
|
|
</if>
|
|
<if test="queryParam.endDate != null">
|
|
and info.apply_date < #{queryParam.endDate}
|
|
</if>
|
|
|
|
LEFT JOIN ps_contract_business bus on bus.contract_code=info.contract_code
|
|
WHERE u.dept_id=#{queryParam.deptId}
|
|
</select>
|
|
|
|
<!-- 按人员成交数据统计饼图 -->
|
|
<select id="getUserContractAndPayInfo" resultType="com.pusong.business.domain.vo.home.UserContractAmountInfo">
|
|
SELECT
|
|
u.user_id as userId,
|
|
u.nick_name as nickName,
|
|
info.contract_code as contractCode,
|
|
info.contract_amount as contractAmount,
|
|
pay.money as payedMoney
|
|
FROM sys_user u
|
|
LEFT JOIN ps_contract_info info on
|
|
u.user_id=info.custom_manager
|
|
<if test="queryParam.startDate != null">
|
|
and info.apply_date >= #{queryParam.startDate}
|
|
</if>
|
|
<if test="queryParam.endDate != null">
|
|
and info.apply_date < #{queryParam.endDate}
|
|
</if>
|
|
and info.contract_status != #{queryParam.contractStatus}
|
|
and info.is_cancel != #{queryParam.isCancel}
|
|
|
|
LEFT JOIN ps_contract_pay pay on
|
|
info.contract_code=pay.contract_code
|
|
and pay.pay_status=#{queryParam.payStatus}
|
|
and pay.del_flag=0
|
|
</select>
|
|
|
|
<!-- 按人员成交数据【转介绍】 -->
|
|
<select id="getUserContractSourceAmountsByDeptId" resultType="com.pusong.business.domain.vo.home.UserContractAmountInfo">
|
|
SELECT
|
|
u.user_id as userId,
|
|
u.nick_name as nickName,
|
|
IFNULL(info.contract_amount,0) as contractAmount,
|
|
info.is_due as isDue,
|
|
info.contract_code as contractCode,
|
|
cus.custom_source as customSource
|
|
FROM sys_user u
|
|
LEFT JOIN ps_contract_info info on
|
|
u.user_id=info.custom_manager
|
|
and info.contract_status != #{queryParam.contractStatus}
|
|
and info.is_cancel != #{queryParam.isCancel}
|
|
|
|
<if test="queryParam.startDate != null">
|
|
and info.apply_date >= #{queryParam.startDate}
|
|
</if>
|
|
<if test="queryParam.endDate != null">
|
|
and info.apply_date < #{queryParam.endDate}
|
|
</if>
|
|
|
|
LEFT JOIN ps_custom_info cus on info.custom_id=cus.id
|
|
WHERE u.dept_id=#{queryParam.deptId}
|
|
</select>
|
|
|
|
<!-- 按人员成交【转介绍】数据统计饼图 -->
|
|
<select id="getJieShaoContractAndPayInfo" resultType="com.pusong.business.domain.vo.home.UserContractAmountInfo">
|
|
SELECT
|
|
u.user_id as userId,
|
|
u.nick_name as nickName,
|
|
info.contract_code as contractCode,
|
|
info.contract_amount as contractAmount,
|
|
pay.money as payedMoney
|
|
FROM sys_user u
|
|
LEFT JOIN ps_contract_info info on
|
|
u.user_id=info.custom_manager
|
|
<if test="queryParam.startDate != null">
|
|
and info.apply_date >= #{queryParam.startDate}
|
|
</if>
|
|
<if test="queryParam.endDate != null">
|
|
and info.apply_date < #{queryParam.endDate}
|
|
</if>
|
|
and info.contract_status != #{queryParam.contractStatus}
|
|
and info.is_cancel != #{queryParam.isCancel}
|
|
|
|
LEFT JOIN ps_contract_pay pay on
|
|
info.contract_code=pay.contract_code
|
|
and pay.pay_status=#{queryParam.payStatus}
|
|
and pay.del_flag=0
|
|
</select>
|
|
|
|
|
|
<sql id="channel">
|
|
select
|
|
cus.custom_source channel,
|
|
info.contract_code,
|
|
info.contract_amount,
|
|
pay.business_type,
|
|
pay.money
|
|
from ps_contract_info info
|
|
left join ps_custom_info cus on info.custom_id = cus.id
|
|
left join ps_contract_pay pay on info.contract_code = pay.contract_code
|
|
</sql>
|
|
<select id="byChannel" resultType="com.pusong.business.domain.vo.home.ChannelPayInfo">
|
|
<include refid="channel"/>
|
|
${ew.getCustomSqlSegment}
|
|
</select>
|
|
<select id="byChannelUser" resultType="com.pusong.business.domain.vo.home.ChannelPayInfo">
|
|
<include refid="channel"/>
|
|
${ew.getCustomSqlSegment}
|
|
</select>
|
|
|
|
</mapper>
|