heheng
3 天以前 f33cfe86447c16df8ca665e2e1a5f3333ff57792
expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml
@@ -32,12 +32,21 @@
        <result property="afterTaxAmount"    column="after_tax_amount"    />
        <result property="openBank"    column="open_bank"    />
        <result property="bankCard"    column="bank_card"    />
        <result property="taxableIncome"    column="taxable_income"    />
        <result property="incomeTaxPayable"    column="income_tax_payable"    />
        <result property="taxExpertFee"    column="tax_expert_fee"    />
        <result property="billingInstructions"    column="billing_instructions"    />
        <result property="travelExpenses"    column="travel_expenses"    />
        <result property="accommodationFee"    column="accommodation_fee"    />
    </resultMap>
    <resultMap type="com.gkhy.system.domain.vo.response.ProjectExpertExportInfoRes" id="ProjectExpertExportInfoResult">
        <result property="projectName"    column="project_name"    />
        <result property="deptName"    column="dept_name"    />
        <collection  property="projectExpertExportResps"   javaType="java.util.List"  resultMap="ExpertExport" />
        <result property="projectCode"    column="project_code"    />
        <result property="id"    column="id"    />
        <collection  property="projectExpertExportResps"  ofType="com.gkhy.system.domain.vo.response.ProjectExpertExportResp"  javaType="java.util.List"  select="projectExpertExportDataList"
                     column="id"/>
    </resultMap>
    <resultMap id="ExpertExport" type="com.gkhy.system.domain.vo.response.ProjectExpertExportResp">
        <result property="name"      column="name"       />
@@ -50,13 +59,20 @@
        <result property="afterTaxAmount"    column="after_tax_amount"    />
        <result property="openBank"    column="open_bank"    />
        <result property="bankCard"    column="bank_card"    />
        <result property="taxableIncome"    column="taxable_income"    />
        <result property="incomeTaxPayable"    column="income_tax_payable"    />
        <result property="taxExpertFee"    column="tax_expert_fee"    />
        <result property="billingInstructions"    column="billing_instructions"    />
        <result property="travelExpenses"    column="travel_expenses"    />
        <result property="accommodationFee"    column="accommodation_fee"    />
    </resultMap>
    <sql id="selectProjectExpertVo">
        select id, project_id, expert_id, score, evaluation_state, selection_mode, team_leader, del_flag, create_by, create_time, update_by, update_time, professional_ethics, impartial_honest, comprehensive_coordination, professional_ability, expressing_opinions, others, comprehensive_evaluation, major_dangers, general_hazards, content,
               freight_basis, billing_duration, after_tax_amount, open_bank, bank_card from project_expert
               freight_basis, billing_duration, after_tax_amount, open_bank, bank_card,taxable_income,income_tax_payable,tax_expert_fee,billing_instructions,travel_expenses,  accommodation_fee from project_expert
    </sql>
    <select id="selectProjectExpertList" parameterType="ProjectExpert" resultMap="ProjectExpertResult">
        <include refid="selectProjectExpertVo"/>
@@ -120,6 +136,11 @@
            <if test="afterTaxAmount != null">after_tax_amount,</if>
            <if test="openBank != null">open_bank,</if>
            <if test="bankCard != null">bank_card,</if>
            <if test="taxableIncome != null">taxable_income,</if>
            <if test="incomeTaxPayable != null">income_tax_payable,</if>
            <if test="taxExpertFee != null">tax_expert_fee,</if>
            <if test="travelExpenses != null">travel_expenses,</if>
            <if test="accommodationFee != null">accommodation_fee,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="projectId != null">#{projectId},</if>
@@ -148,6 +169,11 @@
            <if test="afterTaxAmount != null">#{afterTaxAmount},</if>
            <if test="openBank != null">#{openBank},</if>
            <if test="bankCard != null">#{bankCard},</if>
            <if test="taxableIncome != null"> #{taxableIncome},</if>
            <if test="incomeTaxPayable != null">#{incomeTaxPayable},</if>
            <if test="taxExpertFee != null">#{taxExpertFee},</if>
            <if test="travelExpenses != null">#{travelExpenses},</if>
            <if test="accommodationFee != null">#{accommodationFee},</if>
        </trim>
    </insert>
@@ -187,6 +213,12 @@
            <if test="afterTaxAmount != null">after_tax_amount = #{afterTaxAmount},</if>
            <if test="openBank != null">open_bank = #{openBank},</if>
            <if test="bankCard != null">bank_card = #{bankCard},</if>
            <if test="taxableIncome != null">taxable_income = #{taxableIncome},</if>
            <if test="incomeTaxPayable != null">income_tax_payable = #{incomeTaxPayable},</if>
            <if test="taxExpertFee != null">tax_expert_fee = #{taxExpertFee},</if>
            <if test="billingInstructions  != null" > billing_instructions = #{billingInstructions},</if>
            <if test="travelExpenses != null">travel_expenses = #{travelExpenses},</if>
            <if test="accommodationFee  != null" > accommodation_fee = #{accommodationFee},</if>
        </trim>
        where id = #{id}
    </update>
@@ -211,6 +243,10 @@
        update project_expert set del_flag= 1 where id = #{id}
    </update>
    <update id="deleteProjectExpertByProjectId" parameterType="Long">
        update project_expert set del_flag= 1 where project_id = #{id}
    </update>
    <update id="deleteProjectExpertByIds" parameterType="String">
        update project_expert set del_flag= 1 where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
@@ -224,18 +260,28 @@
    <select id="projectExpertEvaluationList" parameterType="Long" resultType="com.gkhy.system.domain.vo.response.ProjectExpertEvaluationResp">
        select b.id ,b.expert_id expertId ,c.name,c.sex,c.id_card idCard,c.domain,c.rating_level ratingLevel,
               b.selection_mode selectionMode,b.team_leader teamLeader,b.score,b.evaluation_state evaluationState
               b.selection_mode selectionMode,b.team_leader teamLeader,b.score,b.evaluation_state evaluationState,
               d.classify_name bigClassifyName,1 as expertType
        from  project_expert b
                 left join sys_expert_info c on b.expert_id = c.id
        left join sys_expert_classify d on c.big_classify = d.id
        where b.del_flag = 0 and  b.project_id = #{projectId}
        order by b.team_leader asc , b.selection_mode asc, b.create_time desc
         union all
        select b.id ,b.id expertId ,b.name,b.sex,b.id_card idCard,b.domain,b.rating_level ratingLevel,
               b.selection_mode selectionMode,b.team_leader teamLeader,b.score,b.evaluation_state evaluationState,
               "空" bigClassifyName,2 as expertType
        from  out_project_expert b
        where b.del_flag = 0 and  b.project_id = #{projectId}
        order by teamLeader asc , selectionMode asc
    </select>
    <select id="projectExpertEvaList" parameterType="com.gkhy.system.domain.vo.request.SysProjectExpertReq" resultType="com.gkhy.system.domain.vo.response.ProjectExpertResp">
        select a.id projectId, a.project_name projectName,
               b.id projectExpertId,b.expert_id  expertId,c.name,c.id_card idCard,c.domain,b.selection_mode selectionMode,
               b.team_leader teamLeader,b.update_time updateTime,b.score
               b.team_leader teamLeader,b.update_time updateTime,b.score,1 as expertType
        from project_management a
                 left join project_expert b on a.id = b.project_id and b.del_flag = 0
                 left join sys_expert_info c on b.expert_id = c.id
@@ -257,19 +303,91 @@
        <if test="endTime != null "><!-- 结束时间检索 -->
            and date_format(b.update_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
        </if>
        union all
        select a.id projectId, a.project_name projectName,
        b.id projectExpertId,b.id  expertId,b.name,b.id_card idCard,b.domain,b.selection_mode selectionMode,
        b.team_leader teamLeader,b.update_time updateTime,b.score,2 as expertType
        from project_management a
        left join out_project_expert b on a.id = b.project_id and b.del_flag = 0
        where 1=1 and b.evaluation_state = 1
        <if test="deptId != null "> and a.dept_id = #{deptId}</if>
        <if test="projectName != null  and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
        <if test="name != null and name != ''">
            and b.name like concat('%', #{name}, '%')
        </if>
        <if test="idCard != null and idCard != ''">
            and b.id_card like concat('%', #{idCard}, '%')
        </if>
        <if test="domain != null and domain != ''">
            and b.domain like concat('%', #{domain}, '%')
        </if>
        <if test="startTime != null "><!-- 开始时间检索 -->
            and date_format(b.update_time,'%y%m%d') &gt;= date_format(#{startTime},'%y%m%d')
        </if>
        <if test="endTime != null "><!-- 结束时间检索 -->
            and date_format(b.update_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
        </if>
        order by updateTime desc
    </select>
    <select id="projectExpertEvaOutList" parameterType="com.gkhy.system.domain.vo.request.SysProjectExpertReq" resultType="com.gkhy.system.domain.vo.response.ProjectExpertResp">
        select a.id projectId, a.project_name projectName,
        b.id projectExpertId,b.expert_id  expertId,b.name,b.id_card idCard,b.domain,b.selection_mode selectionMode,
        b.team_leader teamLeader,b.update_time updateTime,b.score
        from project_management a
        left join out_project_expert b on a.id = b.project_id and b.del_flag = 0
        where 1=1 and b.evaluation_state = 1
        <if test="deptId != null "> and a.dept_id = #{deptId}</if>
        <if test="projectName != null  and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
        <if test="name != null and name != ''">
            and b.name like concat('%', #{name}, '%')
        </if>
        <if test="idCard != null and idCard != ''">
            and b.id_card like concat('%', #{idCard}, '%')
        </if>
        <if test="domain != null and domain != ''">
            and b.domain like concat('%', #{domain}, '%')
        </if>
        <if test="startTime != null "><!-- 开始时间检索 -->
            and date_format(b.update_time,'%y%m%d') &gt;= date_format(#{startTime},'%y%m%d')
        </if>
        <if test="endTime != null "><!-- 结束时间检索 -->
            and date_format(b.update_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
        </if>
        order by b.update_time desc
    </select>
    <select id="projectExpertExportList" parameterType="Long" resultMap="ProjectExpertExportInfoResult">
        select  a.project_name ,a.dept_name
       ,c.name,c.id_card,c.name,c.job,c.title,c.company_name,b.freight_basis,b.billing_duration, b.after_tax_amount, b.open_bank, b.bank_card
        select  a.project_name ,a.dept_name,a.project_code,a.id
        from project_management a
        left join project_expert b on a.id = b.project_id and b.del_flag = 0
        left join sys_expert_info c on b.expert_id = c.id
        where a.id  = #{projectId}
        order by b.team_leader asc , b.create_time desc
    </select>
    <select id="projectExpertExportDataList" parameterType="Long" resultMap="ExpertExport">
        select  c.name,c.id_card,c.job,c.title,c.company_name,b.freight_basis,b.billing_instructions,
            b.billing_duration, b.after_tax_amount, b.open_bank, b.bank_card,b.taxable_income,b.income_tax_payable,b.tax_expert_fee,b.travel_expenses,b.accommodation_fee
             ,b.team_leader,b.create_time
        from project_expert b
                 left join sys_expert_info c on b.expert_id = c.id
        where b.project_id  = #{id} and b.del_flag = 0
        union all
        select  b.name,b.id_card,'' as job, b.title,b.company_name,b.freight_basis,b.billing_instructions,
            b.billing_duration, b.after_tax_amount, b.open_bank, b.bank_card,b.taxable_income,b.income_tax_payable,b.tax_expert_fee,b.travel_expenses,b.accommodation_fee
             ,b.team_leader,b.create_time
        from  out_project_expert b
        where b.project_id  = #{id} and b.del_flag = 0
        order by team_leader asc , create_time desc
    </select>
</mapper>