# 刷新应收款基准币种 UPDATE ecw_receivable er SET base_currency_id = (SELECT er.import_currency5 FROM ecw_region er WHERE er.id = (SELECT eoo.objective_country_id FROM ecw_order_objective eoo WHERE eoo.order_id = er.order_id)) WHERE base_currency_id IS NULL; # 刷新银行明细流水号 UPDATE ecw_receipt_item AS t1 JOIN ( SELECT id, CONCAT( 'YHMX', DATE_FORMAT(create_time, '%Y%m%d'), LPAD(ROW_NUMBER() OVER (PARTITION BY DATE(create_time) ORDER BY create_time), 5, '0') ) AS new_serial_number FROM ecw_receipt_item ) AS t2 ON t1.id = t2.id SET t1.serial_number = t2.new_serial_number WHERE t1.serial_number IS NULL; # 刷新银行明细审核通过时间 UPDATE ecw_receipt_item SET approval_time = update_time WHERE approval_time IS NULL AND `status` = 1; # 刷新银行明细审核核销币种 UPDATE ecw_receipt_item SET write_off_currency_id = 1 WHERE write_off_currency_id IS NULL; UPDATE ecw_receipt SET generate_path = 0 WHERE generate_path IS NULL; # 刷新应收款优惠金额 UPDATE ecw_receivable er SET er.discount_total = 0 WHERE er.discount_total IS NULL; # 刷新应收款汇率 UPDATE ecw_receivable er SET er.exchange_rate = (SELECT eer.currency_rate FROM ecw_exchange_rate eer WHERE eer.source_currency_id = er.currency_id AND eer.target_currency_id = er.base_currency_id ) WHERE er.exchange_rate IS NULL AND er.receipt_id IS NOT NULL; UPDATE ecw_receivable er SET er.exchange_rate = 1 WHERE er.exchange_rate IS NULL AND er.receipt_id IS NOT NULL; # 刷新应收款基准金额 UPDATE ecw_receivable er SET er.base_amount = er.exchange_rate * (er.tax_amount - er.discount_total) WHERE er.base_amount IS NULL AND er.receipt_id IS NOT NULL AND er.exchange_rate IS NOT NULL; # 修改收款单已核销待开票状态 UPDATE `ecw_receipt` SET `state` = 4 WHERE `state` = 5;