| | |
| | | </if> |
| | | </delete> |
| | | |
| | | <!-- 保存费用导入明细信息 add by wuxw 2018-07-03 --> |
| | | <!-- 保存费用导入明细信息 --> |
| | | <insert id="saveImportFeeDetailInfo" parameterType="Map"> |
| | | insert into maintenance_payment( |
| | | auxiliary_column, flow_number, serial_number, project_code, project_name, |
| | |
| | | withdrawal_encountered_problem, shortage_or_arrears, road_name, lane, |
| | | `door`, room, door_room_number, owner_address, start_date, end_date, |
| | | payee_name, id_card_number, bank_name, bank_account, remarks, acceptance_date, audit_date, |
| | | id, payment_target,payable_amount_d,advanced_payment, specific_announcement_status |
| | | id, payment_target, payable_amount_d, advanced_payment, specific_announcement_status, |
| | | management_fee_ratio, first_planned_payment_amount, planned_payment_date, category, |
| | | reimburser, actual_payment_amount, actual_payment_date |
| | | ) values ( |
| | | #{auxiliaryColumn}, #{flowNumber}, #{serialNumber}, #{projectCode}, #{projectName}, |
| | | <if test="year == null">null,</if> |
| | |
| | | <if test="shortageOrArrears != null">#{shortageOrArrears},</if> |
| | | #{roadName}, #{lane}, #{door}, #{room}, #{doorRoomNumber}, #{ownerAddress}, #{startDate}, #{endDate}, |
| | | #{payeeName}, #{idCardNumber}, #{bankName}, #{bankAccount}, #{remarks}, #{acceptanceDate}, #{auditDate}, |
| | | #{id}, #{paymentTarget},#{payableAmountD}, #{advancedPayment}, #{specificAnnouncementStatus} |
| | | #{id}, #{paymentTarget}, #{payableAmountD}, #{advancedPayment}, #{specificAnnouncementStatus}, |
| | | <if test="managementFeeRatio == null">0,</if> |
| | | <if test="managementFeeRatio != null">#{managementFeeRatio},</if> |
| | | <if test="firstPlannedPaymentAmount == null">0,</if> |
| | | <if test="firstPlannedPaymentAmount != null">#{firstPlannedPaymentAmount},</if> |
| | | #{plannedPaymentDate}, #{category}, #{reimburser}, |
| | | <if test="actualPaymentAmount == null">0,</if> |
| | | <if test="actualPaymentAmount != null">#{actualPaymentAmount},</if> |
| | | #{actualPaymentDate} |
| | | ) |
| | | </insert> |
| | | |
| | | |
| | | <!-- 查询费用导入明细信息 add by wuxw 2018-07-03 --> |
| | | <!-- 查询费用导入明细信息 --> |
| | | <select id="getImportFeeDetailInfo" parameterType="Map" resultType="Map"> |
| | | select |
| | | t.auxiliary_column,t.auxiliary_column auxiliaryColumn, |
| | | t.flow_number,t.flow_number flowNumber, |
| | | t.serial_number,t.serial_number serialNumber, |
| | | t.project_code,t.project_code projectCode, |
| | | t.project_name,t.project_name projectName, |
| | | t.auxiliary_column, t.auxiliary_column auxiliaryColumn, |
| | | t.flow_number, t.flow_number flowNumber, |
| | | t.serial_number, t.serial_number serialNumber, |
| | | t.project_code, t.project_code projectCode, |
| | | t.project_name, t.project_name projectName, |
| | | t.`year`, |
| | | t.`month`, |
| | | t.`day`, |
| | | t.`date`, |
| | | t.project_content,t.project_content projectContent, |
| | | t.management_office_amount,t.management_office_amount managementOfficeAmount, |
| | | t.management_office_seal,t.management_office_seal managementOfficeSeal, |
| | | t.owners_committee_amount,t.owners_committee_amount ownersCommitteeAmount, |
| | | t.audit_amount,t.audit_amount auditAmount, |
| | | t.owners_committee_seal,t.owners_committee_seal ownersCommitteeSeal, |
| | | t.report_department,t.report_department reportDepartment, |
| | | t.fund_type_level1,t.fund_type_level1 fundTypeLevel1, |
| | | t.fund_type_level2,t.fund_type_level2 fundTypeLevel2, |
| | | t.building_or_all,t.building_or_all buildingOrAll, |
| | | t.maintenance_type,t.maintenance_type maintenanceType, |
| | | t.quality_guarantee_period1,t.quality_guarantee_period1 qualityGuaranteePeriod1, |
| | | t.public_income_announcement,t.public_income_announcement publicIncomeAnnouncement, |
| | | t.owners_committee_convention,t.owners_committee_convention ownersCommitteeConvention, |
| | | t.withdrawal_problem,t.withdrawal_problem withdrawalProblem, |
| | | t.problem_difficulty,t.problem_difficulty problemDifficulty, |
| | | t.available_withdrawal_date,t.available_withdrawal_date availableWithdrawalDate, |
| | | t.quality_guarantee_period2,t.quality_guarantee_period2 qualityGuaranteePeriod2, |
| | | t.quality_guarantee_ratio,t.quality_guarantee_ratio qualityGuaranteeRatio, |
| | | t.quality_guarantee_amount,t.quality_guarantee_amount qualityGuaranteeAmount, |
| | | t.received_quality_guarantee,t.received_quality_guarantee receivedQualityGuarantee, |
| | | t.planned_announcement_start,t.planned_announcement_start plannedAnnouncementStart, |
| | | t.planned_announcement_end,t.planned_announcement_end plannedAnnouncementEnd, |
| | | t.published_announcement_start,t.published_announcement_start publishedAnnouncementStart, |
| | | t.published_announcement_end,t.published_announcement_end publishedAnnouncementEnd, |
| | | t.project_content, t.project_content projectContent, |
| | | t.management_office_amount, t.management_office_amount managementOfficeAmount, |
| | | t.management_office_seal, t.management_office_seal managementOfficeSeal, |
| | | t.owners_committee_amount, t.owners_committee_amount ownersCommitteeAmount, |
| | | t.audit_amount, t.audit_amount auditAmount, |
| | | t.owners_committee_seal, t.owners_committee_seal ownersCommitteeSeal, |
| | | t.report_department, t.report_department reportDepartment, |
| | | t.fund_type_level1, t.fund_type_level1 fundTypeLevel1, |
| | | t.fund_type_level2, t.fund_type_level2 fundTypeLevel2, |
| | | t.building_or_all, t.building_or_all buildingOrAll, |
| | | t.maintenance_type, t.maintenance_type maintenanceType, |
| | | t.quality_guarantee_period1, t.quality_guarantee_period1 qualityGuaranteePeriod1, |
| | | t.public_income_announcement, t.public_income_announcement publicIncomeAnnouncement, |
| | | t.owners_committee_convention, t.owners_committee_convention ownersCommitteeConvention, |
| | | t.withdrawal_problem, t.withdrawal_problem withdrawalProblem, |
| | | t.problem_difficulty, t.problem_difficulty problemDifficulty, |
| | | t.available_withdrawal_date, t.available_withdrawal_date availableWithdrawalDate, |
| | | t.quality_guarantee_period2, t.quality_guarantee_period2 qualityGuaranteePeriod2, |
| | | t.quality_guarantee_ratio, t.quality_guarantee_ratio qualityGuaranteeRatio, |
| | | t.quality_guarantee_amount, t.quality_guarantee_amount qualityGuaranteeAmount, |
| | | t.received_quality_guarantee, t.received_quality_guarantee receivedQualityGuarantee, |
| | | t.planned_announcement_start, t.planned_announcement_start plannedAnnouncementStart, |
| | | t.planned_announcement_end, t.planned_announcement_end plannedAnnouncementEnd, |
| | | t.published_announcement_start, t.published_announcement_start publishedAnnouncementStart, |
| | | t.published_announcement_end, t.published_announcement_end publishedAnnouncementEnd, |
| | | t.quota, |
| | | t.owners_committee_resolution,t.owners_committee_resolution ownersCommitteeResolution, |
| | | t.owners_committee_consultation,t.owners_committee_consultation ownersCommitteeConsultation, |
| | | t.withdrawal_encountered_problem,t.withdrawal_encountered_problem withdrawalEncounteredProblem, |
| | | t.shortage_or_arrears,t.shortage_or_arrears shortageOrArrears, |
| | | t.road_name,t.road_name roadName, |
| | | t.owners_committee_resolution, t.owners_committee_resolution ownersCommitteeResolution, |
| | | t.owners_committee_consultation, t.owners_committee_consultation ownersCommitteeConsultation, |
| | | t.withdrawal_encountered_problem, t.withdrawal_encountered_problem withdrawalEncounteredProblem, |
| | | t.shortage_or_arrears, t.shortage_or_arrears shortageOrArrears, |
| | | t.road_name, t.road_name roadName, |
| | | t.lane, |
| | | t.`door`, |
| | | t.room, |
| | | t.door_room_number,t.door_room_number doorRoomNumber, |
| | | t.owner_address,t.owner_address ownerAddress, |
| | | t.start_date,t.start_date startDate, |
| | | t.end_date,t.end_date endDate, |
| | | t.payee_name,t.payee_name payeeName, |
| | | t.id_card_number,t.id_card_number idCardNumber, |
| | | t.bank_name,t.bank_name bankName, |
| | | t.bank_account,t.bank_account bankAccount, |
| | | t.door_room_number, t.door_room_number doorRoomNumber, |
| | | t.owner_address, t.owner_address ownerAddress, |
| | | t.start_date, t.start_date startDate, |
| | | t.end_date, t.end_date endDate, |
| | | t.payee_name, t.payee_name payeeName, |
| | | t.id_card_number, t.id_card_number idCardNumber, |
| | | t.bank_name, t.bank_name bankName, |
| | | t.bank_account, t.bank_account bankAccount, |
| | | t.remarks, |
| | | t.acceptance_date,t.acceptance_date acceptanceDate, |
| | | t.audit_date,t.audit_date auditDate, |
| | | t.id |
| | | t.acceptance_date, t.acceptance_date acceptanceDate, |
| | | t.audit_date, t.audit_date auditDate, |
| | | t.id, |
| | | t.payment_target, t.payment_target paymentTarget, |
| | | t.specific_announcement_status, t.specific_announcement_status specificAnnouncementStatus, |
| | | t.management_fee_ratio, t.management_fee_ratio managementFeeRatio, |
| | | t.first_planned_payment_amount, t.first_planned_payment_amount firstPlannedPaymentAmount, |
| | | t.planned_payment_date, t.planned_payment_date plannedPaymentDate, |
| | | t.category, t.category category, |
| | | t.reimburser, t.reimburser reimburser, |
| | | t.actual_payment_amount, t.actual_payment_amount actualPaymentAmount, |
| | | t.actual_payment_date, t.actual_payment_date actualPaymentDate, |
| | | t.payable_amount_d, t.payable_amount_d payableAmountD, |
| | | t.advanced_payment, t.advanced_payment advancedPayment, |
| | | IFNULL(SUM(sum_print_amount), 0) AS dyhj, |
| | | IFNULL(SUM(sum_arrival_amount), 0) AS dzhj, |
| | | CASE WHEN IFNULL(SUM(sum_arrival_amount), 0) <> 0 THEN IFNULL(SUM(sum_arrival_amount), 0) / t.owners_committee_amount * 100 ELSE 0 END AS wxjjdzl, |
| | | CASE WHEN t.fund_type_level1 <> '维修基金' THEN 0 ELSE t.owners_committee_amount - IFNULL(SUM(sum_arrival_amount), 0) END AS wxjjsqje, |
| | | CASE WHEN t.owners_committee_amount <> 0 THEN t.management_fee_ratio / t.owners_committee_amount * 100 ELSE 0 END AS glfzb, |
| | | t.owners_committee_amount - t.management_fee_ratio AS yfjeA, |
| | | IFNULL(SUM(sum_fifth_planned), 0) AS nfhj, |
| | | IFNULL(SUM(sum_actual_payment), 0) AS sfhj, |
| | | (t.owners_committee_amount - t.management_fee_ratio) - IFNULL(SUM(sum_actual_payment), 0) AS wfhj, |
| | | CASE |
| | | WHEN t.fund_type_level1 IN ('公共收益金','维修基金') THEN |
| | | CASE |
| | | WHEN IFNULL(SUM(sum_arrival_amount),0) <> 0 THEN |
| | | CASE WHEN (t.owners_committee_amount - t.management_fee_ratio - IFNULL(SUM(sum_actual_payment),0)) > IFNULL(SUM(sum_arrival_amount),0) |
| | | THEN (t.owners_committee_amount - t.management_fee_ratio - IFNULL(SUM(sum_actual_payment),0)) - IFNULL(SUM(sum_arrival_amount),0) |
| | | ELSE 0 END |
| | | ELSE |
| | | CASE WHEN t.specific_announcement_status LIKE '%公布%' AND t.specific_announcement_status NOT LIKE '%拟%' |
| | | THEN 0 |
| | | ELSE (t.owners_committee_amount - t.management_fee_ratio - IFNULL(SUM(sum_actual_payment),0)) END |
| | | END |
| | | ELSE 0 END AS dfje |
| | | from maintenance_payment t |
| | | where 1 =1 |
| | | -- 左连接 打印记录表,保证主表数据不丢失 |
| | | left join ( |
| | | select mp_id, |
| | | SUM(print_amount) as sum_print_amount, |
| | | SUM(arrival_amount) as sum_arrival_amount |
| | | from mp_payment_record |
| | | group by mp_id |
| | | ) m on t.id = m.mp_id |
| | | left join ( |
| | | select mp_id, |
| | | SUM(fifth_planned_payment_amount) as sum_fifth_planned, |
| | | SUM(actual_payment_amount) as sum_actual_payment |
| | | from mp_fifth_payment_record |
| | | group by mp_id |
| | | ) f on t.id = f.mp_id |
| | | where 1 = 1 |
| | | -- 按主表所有非聚合字段分组 |
| | | <if test="auxiliaryColumn !=null and auxiliaryColumn != ''"> |
| | | and t.auxiliary_column = #{auxiliaryColumn} |
| | | </if> |
| | |
| | | <if test="id !=null"> |
| | | and t.id = #{id} |
| | | </if> |
| | | <if test="paymentTarget !=null and paymentTarget != ''"> |
| | | and t.payment_target = #{paymentTarget} |
| | | </if> |
| | | <if test="specificAnnouncementStatus !=null and specificAnnouncementStatus != ''"> |
| | | and t.specific_announcement_status = #{specificAnnouncementStatus} |
| | | </if> |
| | | <if test="category !=null and category != ''"> |
| | | and t.category = #{category} |
| | | </if> |
| | | <if test="reimburser !=null and reimburser != ''"> |
| | | and t.reimburser like concat('%', #{reimburser}, '%') |
| | | </if> |
| | | group by t.id |
| | | order by t.id desc |
| | | <if test="page != -1 and page != null "> |
| | | limit #{page}, #{row} |
| | | </if> |
| | | |
| | | </select> |
| | | |
| | | |
| | | <!-- 修改费用导入明细信息 add by wuxw 2018-07-03 --> |
| | | <!-- 修改费用导入明细信息 --> |
| | | <update id="updateImportFeeDetailInfo" parameterType="Map"> |
| | | update maintenance_payment t |
| | | <!-- 注意:id作为主键,通常不建议更新,这里保留但标注,建议根据业务决定是否删除 --> |
| | |
| | | <if test="auditDate !=null and auditDate != ''"> |
| | | , t.audit_date = #{auditDate} |
| | | </if> |
| | | <!-- 以下为补充的缺失字段 --> |
| | | <if test="maintenanceType !=null and maintenanceType != ''"> |
| | | , t.maintenance_type = #{maintenanceType} |
| | | </if> |
| | |
| | | <if test="withdrawalEncounteredProblem !=null and withdrawalEncounteredProblem != ''"> |
| | | , t.withdrawal_encountered_problem = #{withdrawalEncounteredProblem} |
| | | </if> |
| | | <if test="shortageOrArrears !=null and shortageOrArrears != ''"> |
| | | <if test="shortageOrArrears !=null"> |
| | | , t.shortage_or_arrears = #{shortageOrArrears} |
| | | </if> |
| | | <if test="roadName !=null and roadName != ''"> |
| | |
| | | <if test="endDate !=null"> |
| | | , t.end_date = #{endDate} |
| | | </if> |
| | | <if test="paymentTarget !=null and paymentTarget != ''"> |
| | | , t.payment_target = #{paymentTarget} |
| | | </if> |
| | | <if test="specificAnnouncementStatus !=null and specificAnnouncementStatus != ''"> |
| | | , t.specific_announcement_status = #{specificAnnouncementStatus} |
| | | </if> |
| | | <if test="managementFeeRatio !=null"> |
| | | , t.management_fee_ratio = #{managementFeeRatio} |
| | | </if> |
| | | <if test="firstPlannedPaymentAmount !=null"> |
| | | , t.first_planned_payment_amount = #{firstPlannedPaymentAmount} |
| | | </if> |
| | | <if test="plannedPaymentDate !=null"> |
| | | , t.planned_payment_date = #{plannedPaymentDate} |
| | | </if> |
| | | <if test="category !=null and category != ''"> |
| | | , t.category = #{category} |
| | | </if> |
| | | <if test="reimburser !=null and reimburser != ''"> |
| | | , t.reimburser = #{reimburser} |
| | | </if> |
| | | <if test="actualPaymentAmount !=null"> |
| | | , t.actual_payment_amount = #{actualPaymentAmount} |
| | | </if> |
| | | <if test="actualPaymentDate !=null"> |
| | | , t.actual_payment_date = #{actualPaymentDate} |
| | | </if> |
| | | <if test="payableAmountD !=null"> |
| | | , t.payable_amount_d = #{payableAmountD} |
| | | </if> |
| | | <if test="advancedPayment !=null"> |
| | | , t.advanced_payment = #{advancedPayment} |
| | | </if> |
| | | |
| | | where 1=1 |
| | | <if test="id !=null"> |
| | |
| | | </if> |
| | | </update> |
| | | |
| | | <!-- 查询费用导入明细数量 add by wuxw 2018-07-03 --> |
| | | <!-- 查询费用导入明细数量 --> |
| | | <select id="queryImportFeeDetailsCount" parameterType="Map" resultType="Map"> |
| | | select count(1) count |
| | | from maintenance_payment t |
| | | where 1 =1 |
| | | where 1 = 1 |
| | | <if test="auxiliaryColumn !=null and auxiliaryColumn != ''"> |
| | | and t.auxiliary_column = #{auxiliaryColumn} |
| | | </if> |
| | |
| | | <if test="id !=null"> |
| | | and t.id = #{id} |
| | | </if> |
| | | |
| | | <if test="paymentTarget !=null and paymentTarget != ''"> |
| | | and t.payment_target = #{paymentTarget} |
| | | </if> |
| | | <if test="specificAnnouncementStatus !=null and specificAnnouncementStatus != ''"> |
| | | and t.specific_announcement_status = #{specificAnnouncementStatus} |
| | | </if> |
| | | <if test="category !=null and category != ''"> |
| | | and t.category = #{category} |
| | | </if> |
| | | <if test="reimburser !=null and reimburser != ''"> |
| | | and t.reimburser like concat('%', #{reimburser}, '%') |
| | | </if> |
| | | </select> |
| | | |
| | | <!-- 批量插入费用 --> |
| | |
| | | quota, owners_committee_resolution, owners_committee_consultation, |
| | | withdrawal_encountered_problem, shortage_or_arrears, road_name, lane, |
| | | `door`, room, door_room_number, owner_address, start_date, end_date, |
| | | payee_name, id_card_number, bank_name, bank_account, remarks, acceptance_date, audit_date |
| | | payee_name, id_card_number, bank_name, bank_account, remarks, acceptance_date, audit_date, |
| | | id, payment_target, payable_amount_d, advanced_payment, specific_announcement_status, |
| | | management_fee_ratio, first_planned_payment_amount, planned_payment_date, category, |
| | | reimburser, actual_payment_amount, actual_payment_date |
| | | ) values |
| | | <foreach collection="importFeeDetailPos" item="item" separator=","> |
| | | ( #{item.auxiliaryColumn}, #{item.flowNumber}, #{item.serialNumber}, #{item.projectCode}, #{item.projectName}, |
| | |
| | | #{item.withdrawalEncounteredProblem}, |
| | | <if test="item.shortageOrArrears == null">0</if><if test="item.shortageOrArrears != null">#{item.shortageOrArrears}</if>, |
| | | #{item.roadName}, #{item.lane}, #{item.door}, #{item.room}, #{item.doorRoomNumber}, #{item.ownerAddress}, #{item.startDate}, #{item.endDate}, |
| | | #{item.payeeName}, #{item.idCardNumber}, #{item.bankName}, #{item.bankAccount}, #{item.remarks}, #{item.acceptanceDate}, #{item.auditDate}) |
| | | #{item.payeeName}, #{item.idCardNumber}, #{item.bankName}, #{item.bankAccount}, #{item.remarks}, #{item.acceptanceDate}, #{item.auditDate}, |
| | | #{item.id}, #{item.paymentTarget}, #{item.payableAmountD}, #{item.advancedPayment}, #{item.specificAnnouncementStatus}, |
| | | <if test="item.managementFeeRatio == null">0</if><if test="item.managementFeeRatio != null">#{item.managementFeeRatio}</if>, |
| | | <if test="item.firstPlannedPaymentAmount == null">0</if><if test="item.firstPlannedPaymentAmount != null">#{item.firstPlannedPaymentAmount}</if>, |
| | | #{item.plannedPaymentDate}, #{item.category}, #{item.reimburser}, |
| | | <if test="item.actualPaymentAmount == null">0</if><if test="item.actualPaymentAmount != null">#{item.actualPaymentAmount}</if>, |
| | | #{item.actualPaymentDate}) |
| | | </foreach> |
| | | </insert> |
| | | |