Example #1
0
    public static void ImportSubscriber(object param)
    {
        //Model_Subscriber cSub = new Model_Subscriber();
        object[]  parameters          = (object[])param;
        DataTable data                = (DataTable)parameters[0];
        Model_SubscriberParamImport p = (Model_SubscriberParamImport)parameters[1];

        foreach (DataRow row in data.Rows)
        {
            Model_Subscriber cSub = new Model_Subscriber
            {
                Email     = (row.Table.Columns.Contains("Email") ? (row["Email"] == DBNull.Value ? "" : (string)row["Email"]) : ""),
                FirstName = (row.Table.Columns.Contains("FirstName") ? (row["FirstName"] == DBNull.Value ? "" : (string)row["FirstName"]) : ""),
                LastName  = (row.Table.Columns.Contains("LastName") ? (row["LastName"] == DBNull.Value ? "" : (string)row["LastName"]) : ""),
                Sbin      = true,
                SGID      = int.Parse(p.Group)
            };
            cSub.model_InsertSubscriber(cSub);

            Lock.AcquireWriterLock(Timeout.Infinite);
            SubScriberImportController.TotalCompleted  += 1;
            SubScriberImportController.PercentCompleted =
                (decimal)SubScriberImportController.TotalCompleted * 100 / int.Parse(p.Total);
            Lock.ReleaseWriterLock();
        }
        Lock.AcquireWriterLock(Timeout.Infinite);
        SubScriberImportController.Onprocess = false;
        Lock.ReleaseWriterLock();
    }
Example #2
0
    public static int ImportNow(Model_SubscriberParamImport param)
    {
        int ret = 0;
        Model_SubscriberImportTemp import = new Model_SubscriberImportTemp();

        import = import.GetImportTemp();
        DataTable data = null;

        if (import != null)
        {
            try
            {
                FileInfo file = new FileInfo(HttpContext.Current.Server.MapPath(import.Path + import.FileName));

                if (file.Exists)
                {
                    string extension = file.Extension;

                    switch (extension)
                    {
                    case ".csv":
                        data = new GsCsvReader(import.Path, import.FileName).ResultDataTable;
                        break;

                    default:
                        data = new ExcelReader(import.Path, import.FileName).GetDataSetCreatecolumn().Tables[0];
                        break;
                    }


                    if (data.Rows.Count > 0)
                    {
                        Lock.AcquireWriterLock(Timeout.Infinite);
                        SubScriberImportController.TotalCompleted   = 0;
                        SubScriberImportController.PercentCompleted = 0.0M;
                        SubScriberImportController.Onprocess        = true;
                        Lock.ReleaseWriterLock();

                        API_ThreadPool cpool      = new API_ThreadPool();
                        object[]       parameters = new object[] { data, param };
                        cpool.QueueWork(parameters, ImportSubscriber);
                    }
                }
                ret = 1;
            }
            catch { }
        }



        return(ret);
    }
    public static void UploadNow(Model_SubscriberParamImport parameters)
    {
        int    ret     = SubScriberImportController.ImportNow(parameters);
        bool   success = false;
        string msg     = "no";

        if (ret > 0)
        {
            success = true;
            msg     = "Import Completed!!";
        }

        string res = (new BaseWebMethodAJax
        {
            success = success,
            msg = msg
        }).ObjectToJSON();

        AppTools.SendResponse(HttpContext.Current.Response, res);
    }