forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-06-19 6e3f1f560d618b37ee1a47fa2b0f682b70c3ef1c
Function/BILLING/billing.c
@@ -1,6 +1,8 @@
#include "billing.h"
#include "system_mem_para.h"
#include "pulse_and_alarm_line.h"
#include "linked_list.h"
#include "sizhu_alarm_record.h"
FlagStatus   RS485_trigger_settle_flag = RESET;
@@ -51,6 +53,42 @@
   return PASS;
}
void balanceStatusHandler(double balance,BILLING_VALVE_CTRL_PATA_T   billing_valve_ctrl_para_in )
{
   if(balance >= billing_valve_ctrl_para_in.balance_small_value[0]*0.01){
      __SYS_STATUS_BYTES_STATUS(balance_small_1, RESET, ALARM_ID_BALANCE_SMALLER1);
      __SYS_STATUS_BYTES_STATUS(balance_small_2, RESET, ALARM_ID_BALANCE_SMALLER2);
      __SYS_STATUS_BYTES_STATUS(balance_small_3, RESET, ALARM_ID_BALANCE_SMALLER3);
      __SYS_STATUS_BYTES_STATUS(balance_small_4, RESET, ALARM_ID_BALANCE_SMALLER4);
   }else if(balance >= billing_valve_ctrl_para_in.balance_small_value[1]*0.01){
      __SYS_STATUS_ALARM_BYTES_SET(balance_small_1, ALARM_ID_BALANCE_SMALLER1);
      __SYS_STATUS_BYTES_STATUS(balance_small_2, RESET, ALARM_ID_BALANCE_SMALLER2);
      __SYS_STATUS_BYTES_STATUS(balance_small_3, RESET, ALARM_ID_BALANCE_SMALLER3);
      __SYS_STATUS_BYTES_STATUS(balance_small_4, RESET, ALARM_ID_BALANCE_SMALLER4);
   }else if(balance >= billing_valve_ctrl_para_in.balance_small_value[2]*0.01){
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_1, ALARM_ID_BALANCE_SMALLER1);
      __SYS_STATUS_ALARM_BYTES_SET(balance_small_2, ALARM_ID_BALANCE_SMALLER2);
      __SYS_STATUS_BYTES_STATUS(balance_small_3, RESET, ALARM_ID_BALANCE_SMALLER3);
      __SYS_STATUS_BYTES_STATUS(balance_small_4, RESET, ALARM_ID_BALANCE_SMALLER4);
   }else if(balance >= billing_valve_ctrl_para_in.balance_small_value[3]*0.01){
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_1, ALARM_ID_BALANCE_SMALLER1);
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_2, ALARM_ID_BALANCE_SMALLER2);
      __SYS_STATUS_ALARM_BYTES_SET(balance_small_3, ALARM_ID_BALANCE_SMALLER3);
      __SYS_STATUS_BYTES_STATUS(balance_small_4, RESET, ALARM_ID_BALANCE_SMALLER4);
   }else{
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_1, ALARM_ID_BALANCE_SMALLER1);
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_2, ALARM_ID_BALANCE_SMALLER2);
//      __SYS_STATUS_ALARM_BYTES_SET(balance_small_3, ALARM_ID_BALANCE_SMALLER3);
      __SYS_STATUS_ALARM_BYTES_SET(balance_small_4, ALARM_ID_BALANCE_SMALLER4);
   }
}
/**********
*SettlementPro½áËã´¦Àí
*Âö³åºÍRS485¶ÀÁ¢½áË㣬ͬʱ¿ªÆôʱ£¬ ÒÔRS485½áËãΪ׼£¬Âö³åÖ»×÷Ϊ¹ý³Ì½áËã
@@ -96,6 +134,8 @@
   }
      
   
   //Óà¶î״̬´¦Àí
   balanceStatusHandler(save_realtime_data_g.realtime_billing_data_s.balance_now,billing_valve_ctrl_para_g);
}