Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master
| | |
| | | |
| | | List<EstimatedReceivable> estimatedReceivables = new ArrayList<>(); |
| | | for (PendingSettlementBusiness pendingSettlementBusiness : pendingSettlementBusinesses) { |
| | | pendingSettlementBusiness.setIsCreate(0); |
| | | ReceivableLineTruckPriceRule exactMatchingRule = ExactPricingRuleMatcher.findExactMatchingRule(receivableLineTruckPriceRules, pendingSettlementBusiness.getCustomerName(), pendingSettlementBusiness.getDepartureLocation(), pendingSettlementBusiness.getArrivalLocation(), pendingSettlementBusiness.getVehicleType()); |
| | | if (exactMatchingRule!=null) { |
| | | //应收数据 |
| | |
| | | */ |
| | | @TableField("bill_id") |
| | | private Integer billId; |
| | | /** 关联账单状态 */ |
| | | @Excel(name = "关联账单状态") |
| | | @TableField("related_bill_status") |
| | | private Integer relatedBillStatus; |
| | | |
| | | |
| | | /** |
| | | * 关联账单id |
| | | */ |
| | | @Excel(name = "账单名称") |
| | | @TableField("bill_name") |
| | | private String billName; |
| | | |
| | |
| | | void updatePendingSettlementBusinessByBillId(@Param("id") Integer id, @Param("billName")String billName); |
| | | |
| | | PendingSettlementBusiness selectPendingSettlementBusinessByNo(String dispatchNo); |
| | | |
| | | void updateEstimatedReceivableBillStatus(@Param("list") List<String> list, @Param("status") int status); |
| | | } |
| | |
| | | estimatedReceivableBillLog.setOperation("修改账单名称为"+estimatedReceivableBill.getBillName()); |
| | | logService.insertEstimatedReceivableBillLog(estimatedReceivableBillLog); |
| | | pendingSettlementBusinessMapper.updatePendingSettlementBusinessByBillId(estimatedReceivableBill.getId(),estimatedReceivableBill.getBillName()); |
| | | |
| | | return estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill); |
| | | } |
| | | |
| | |
| | | estimatedReceivableBillLog.setOperation("本次提交金额"+ settlementAmount); |
| | | estimatedReceivableBillLog.setFileName(estimatedReceivableBill.getAttachment()); |
| | | logService.insertEstimatedReceivableBillLog(estimatedReceivableBillLog); |
| | | settledAmount = settledAmount.add(settlementAmount); |
| | | |
| | | List<String>dispatchNos =pendingSettlementBusinessMapper.selectPendingSettlementBusinessDispatchNos(estimatedReceivableBill.getId()); |
| | | // 检查当前提交金额+已结算金额是否超过应结算金额 |
| | | if (settlementAmount.add(settledAmount).compareTo(totalAmount) > 0) { |
| | |
| | | //已结算大于应计算金额为已结算 |
| | | estimatedReceivableBill.setStatus(2); |
| | | estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,3); |
| | | pendingSettlementBusinessMapper.updateEstimatedReceivableBillStatus(dispatchNos,3); |
| | | }else { |
| | | //否则部分结算 |
| | | estimatedReceivableBill.setStatus(1); |
| | | estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,2); |
| | | pendingSettlementBusinessMapper.updateEstimatedReceivableBillStatus(dispatchNos,2); |
| | | } |
| | | settledAmount = settledAmount.add(settlementAmount); |
| | | estimatedReceivableBill.setSettledAmount(settledAmount); |
| | | return estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill); |
| | | } |
| | | |
| | |
| | | <result property="confirmedTotalCost" column="confirmed_total_cost" /> |
| | | <result property="isIncomeMatched" column="is_income_matched" /> |
| | | <result property="isCostMatched" column="is_cost_matched" /> |
| | | <result property="relatedBillStatus" column="related_bill_status" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectPendingSettlementBusinessVo"> |
| | | select thisTab.id, thisTab.booking_no, thisTab.customer_id, thisTab.carrier_id, thisTab.project_name, thisTab.dispatch_no, thisTab.created_time, thisTab.transport_mode, thisTab.product_id, thisTab.customer_name, thisTab.operation_mode, thisTab.carrier_name, thisTab.departure_location, thisTab.arrival_location, thisTab.vehicle_id, thisTab.license_plate_number, thisTab.vehicle_type, thisTab.main_driver, thisTab.assistant_driver, thisTab.point_num, thisTab.business_contact, thisTab.estimated_total_income, thisTab.estimated_total_cost, thisTab.estimated_profit, thisTab.electronic_lock, thisTab.re_weighing_weight, thisTab.quantity, thisTab.actual_departure_time, thisTab.required_arrival_time, thisTab.actual_arrival_time, thisTab.be_return, thisTab.dispatch_quantity, thisTab.dispatch_weight, thisTab.dispatch_volume, thisTab.empty_mileage, thisTab.empty_fuel, thisTab.heavy_mileage, thisTab.heavy_fuel, thisTab.be_scheduled, thisTab.tracking_no, thisTab.seal_no, thisTab.schedule_no, thisTab.transport_status, thisTab.estimated_bill_id, thisTab.settlement_bill_id, thisTab.bill_id, thisTab.settlement_status, thisTab.create_time, thisTab.update_time, thisTab.is_create, thisTab.bill_name, thisTab.confirmed_total_income, thisTab.confirmed_total_cost, thisTab.is_income_matched, thisTab.is_cost_matched from pending_settlement_business AS thisTab |
| | | select thisTab.id, thisTab.booking_no, thisTab.customer_id, thisTab.carrier_id, thisTab.project_name, thisTab.dispatch_no, thisTab.created_time, thisTab.transport_mode, thisTab.product_id, thisTab.customer_name, thisTab.operation_mode, thisTab.carrier_name, thisTab.departure_location, thisTab.arrival_location, thisTab.vehicle_id, thisTab.license_plate_number, thisTab.vehicle_type, thisTab.main_driver, thisTab.assistant_driver, thisTab.point_num, thisTab.business_contact, thisTab.estimated_total_income, thisTab.estimated_total_cost, thisTab.estimated_profit, thisTab.electronic_lock, thisTab.re_weighing_weight, thisTab.quantity, thisTab.actual_departure_time, thisTab.required_arrival_time, thisTab.actual_arrival_time, thisTab.be_return, thisTab.dispatch_quantity, thisTab.dispatch_weight, thisTab.dispatch_volume, thisTab.empty_mileage, thisTab.empty_fuel, thisTab.heavy_mileage, thisTab.heavy_fuel, thisTab.be_scheduled, thisTab.tracking_no, thisTab.seal_no, thisTab.schedule_no, thisTab.transport_status, thisTab.estimated_bill_id, thisTab.settlement_bill_id, thisTab.bill_id, thisTab.settlement_status, thisTab.create_time, thisTab.update_time, thisTab.is_create, thisTab.bill_name, thisTab.confirmed_total_income, thisTab.confirmed_total_cost, thisTab.is_income_matched, thisTab.is_cost_matched, thisTab.related_bill_status from pending_settlement_business AS thisTab |
| | | </sql> |
| | | <sql id="selectPendingSettlementBusinessVoCount"> |
| | | select count(0) from pending_settlement_business as thisTab |
| | |
| | | <update id="updatePendingSettlementBusinessIsCreate"> |
| | | |
| | | UPDATE pending_settlement_business |
| | | SET is_create = 1 ,bill_id = #{id},bill_name = #{billName} |
| | | SET is_create = 1 ,bill_id = #{id},bill_name = #{billName},related_bill_status = 1 |
| | | WHERE dispatch_no IN |
| | | <foreach item="item" collection="list" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </update> |
| | | <update id="updatePendingSettlementBusinessByBillId"> |
| | | UPDATE pending_settlement_business set bill_name = #{billName} |
| | | where bill_id = #{id} |
| | | |
| | | UPDATE pending_settlement_business p |
| | | JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no |
| | | SET |
| | | p.bill_name = #{billName}, |
| | | e.related_bill_name = #{billName} |
| | | WHERE p.bill_id = #{id}; |
| | | </update> |
| | | <update id="updateEstimatedReceivableBillStatus"> |
| | | UPDATE pending_settlement_business p |
| | | JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no |
| | | SET |
| | | p.is_create = 1, |
| | | p.bill_id = #{id}, |
| | | p.bill_name = #{billName}, |
| | | p.related_bill_status = 1, |
| | | e.related_bill_name = #{billName} |
| | | WHERE p.dispatch_no IN |
| | | <foreach item="item" collection="list" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </update> |
| | | |
| | | <!--删除--> |
| | |
| | | </foreach> |
| | | </delete> |
| | | <delete id="cancelRelevancy"> |
| | | UPDATE pending_settlement_business set bill_id = null ,bill_name = null,is_create = 0 |
| | | where id = #{id} |
| | | UPDATE pending_settlement_business p |
| | | LEFT JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no |
| | | SET |
| | | p.bill_id = NULL, |
| | | p.bill_name = NULL, |
| | | p.is_create = 0, |
| | | p.related_bill_status = 0, |
| | | e.related_bill_name = NULL |
| | | WHERE p.id = #{id} |
| | | </delete> |
| | | |
| | | </mapper> |