Пример #1
0
 public int Execute(int jobId)
 {
     try
     {
         DataTable dtPartner = ViSport_S2_Registered_UsersController.PartnerGetAll_Active();
         //const int partnerId = 21;
         ViSport_S2_Registered_UsersController.GpcCdrReset();//RESET
         foreach (DataRow drPartner in dtPartner.Rows)
         {
             int       partnerId = ConvertUtility.ToInt32(drPartner["PartnerID"].ToString());
             DataTable dtVms     = ViSport_S2_Registered_UsersController.GPC_CdrPartnerGetServiceId(partnerId);
             if (dtVms != null && dtVms.Rows.Count > 0)
             {
                 foreach (DataRow drSv in dtVms.Rows)
                 {
                     string       serviceName    = drSv["Service_Name"].ToString();
                     string       serviceId      = drSv["Service_Id"].ToString();
                     const string shortCode      = "8979";
                     string       registerSystax = drSv["Register_Syntax"].ToString();
                     try
                     {
                         DataTable dtUsers = ViSport_S2_Registered_UsersController.GPCGetCdrByServiceId(serviceId);
                         if (dtUsers != null && dtUsers.Rows.Count > 0)
                         {
                             foreach (DataRow dr in dtUsers.Rows)
                             {
                                 ViSport_S2_Registered_UsersController.GPCCdrAdd(
                                     dr["msisdn"].ToString(),
                                     serviceId,
                                     ConvertUtility.ToInt32(dr["cost"].ToString()),
                                     serviceName,
                                     shortCode,
                                     registerSystax, dr["TimeStamp"].ToString(),
                                     //ConvertUtility.ToInt32(dr["ChargeResult"]),
                                     partnerId
                                     );
                             }
                         }
                         Thread.Sleep(5000);
                     }
                     catch (Exception ex)
                     {
                     }
                 }
             }
         }
         //Insert log chung Ok
         _log.Debug("CDR GPC update");
     }
     catch (Exception ex)
     {
         _log.Error("CDR Loi UPDATE GPC : " + ex);
         return(0);
     }
     return(1);
 }