diff --git a/lib/NGCP/Schema/Result/billing_mappings_actual.pm b/lib/NGCP/Schema/Result/billing_mappings_actual.pm index 366410c2..17f4a350 100644 --- a/lib/NGCP/Schema/Result/billing_mappings_actual.pm +++ b/lib/NGCP/Schema/Result/billing_mappings_actual.pm @@ -54,18 +54,20 @@ sub TO_JSON { __PACKAGE__->result_source_instance->is_virtual(1); -__PACKAGE__->result_source_instance->view_definition(" -select bm.contract_id,max(bm.id) as actual_bm_id from billing.billing_mappings bm - inner join - (select bmm.contract_id, max(bmm.start_date) max_start_date - from billing.billing_mappings bmm - where ( bmm.`end_date` >= ? OR bmm.`end_date` IS NULL ) - AND ( bmm.`start_date` <= ? OR bmm.`start_date` IS NULL ) - AND ( ? is null OR bmm.`contract_id` = ? ) - group by bmm.contract_id - ) bmm on bm.contract_id=bmm.contract_id and (bm.start_date=bmm.max_start_date or (bmm.max_start_date is null and bm.start_date is null)) -group by bm.contract_id -"); +__PACKAGE__->result_source_instance->view_definition(<= ? OR bmm.`end_date` IS NULL ) + AND ( bmm.`start_date` <= ? OR bmm.`start_date` IS NULL ) + AND ( ? IS NULL OR bmm.`contract_id` = ? ) + GROUP BY bmm.contract_id +) bmm ON bm.contract_id=bmm.contract_id + AND (bm.start_date=bmm.max_start_date + OR (bmm.max_start_date IS NULL AND bm.start_date is null)) +GROUP BY bm.contract_id +SQL #__PACKAGE__->result_source_instance->view_definition("select bma.contract_id, bma.id as actual_bm_id #from billing.billing_mappings bma diff --git a/lib/NGCP/Schema/Result/contract_fraud_events.pm b/lib/NGCP/Schema/Result/contract_fraud_events.pm index 229cdde3..1324c40f 100644 --- a/lib/NGCP/Schema/Result/contract_fraud_events.pm +++ b/lib/NGCP/Schema/Result/contract_fraud_events.pm @@ -83,7 +83,7 @@ sub TO_JSON { __PACKAGE__->result_source_instance->is_virtual(1); -__PACKAGE__->result_source_instance->view_definition(" +__PACKAGE__->result_source_instance->view_definition(< 0, SUM(cdr.source_reseller_cost), SUM(cdr.source_customer_cost)) as interval_cost, @@ -144,6 +144,6 @@ WHERE CASE WHEN bpinfo.interval = 'month' END GROUP BY bpinfo.id HAVING interval_cost >= interval_limit -"); +SQL 1; diff --git a/lib/NGCP/Schema/Result/lnp_numbers_actual.pm b/lib/NGCP/Schema/Result/lnp_numbers_actual.pm index dedfa4dd..3b989ff5 100644 --- a/lib/NGCP/Schema/Result/lnp_numbers_actual.pm +++ b/lib/NGCP/Schema/Result/lnp_numbers_actual.pm @@ -62,17 +62,19 @@ __PACKAGE__->result_source_instance->is_virtual(1); # and (n.end is null or n.end >= now()) #order by length(n.number) desc limit 1 -__PACKAGE__->result_source_instance->view_definition(" -select ln.number,max(ln.id) as actual_ln_id from billing.lnp_numbers ln - inner join - (select lnn.number, max(lnn.start) max_start - from billing.lnp_numbers lnn - where ( lnn.`end` >= ? OR lnn.`end` IS NULL ) - AND ( lnn.`start` <= ? OR lnn.`start` IS NULL ) - AND ( ? is null OR lnn.`number` LIKE ? ) - group by lnn.number - ) lnn on ln.number=lnn.number and (ln.start=lnn.max_start or (lnn.max_start is null and ln.start is null)) -group by ln.number -"); +__PACKAGE__->result_source_instance->view_definition(<= ? OR lnn.`end` IS NULL ) + AND ( lnn.`start` <= ? OR lnn.`start` IS NULL ) + AND ( ? is null OR lnn.`number` LIKE ? ) + GROUP BY lnn.number +) lnn ON ln.number=lnn.number + AND (ln.start=lnn.max_start + OR (lnn.max_start IS NULL AND ln.start IS NULL)) +GROUP BY ln.number +SQL 1; diff --git a/lib/NGCP/Schema/Result/messages_custom.pm b/lib/NGCP/Schema/Result/messages_custom.pm index aa830021..63d45e0c 100644 --- a/lib/NGCP/Schema/Result/messages_custom.pm +++ b/lib/NGCP/Schema/Result/messages_custom.pm @@ -80,20 +80,21 @@ sub TO_JSON { __PACKAGE__->result_source_instance->is_virtual(1); -__PACKAGE__->result_source_instance->view_definition(" -SELECT min(m.timestamp) as min_timestamp, m.* FROM +__PACKAGE__->result_source_instance->view_definition(<