コード例 #1
0
        internal async Task <string> SenSms(
            //string res,
            Models.Sklad.Sys.SysSetting sysSetting,
            int ListObjectID,
            int id,
            string Phone,
            string DirSmsTemplateMsg, //DirSmsTemplate dirSmsTemplate,
            Classes.Account.Login.Field field,
            DbConnectionSklad dbX,
            int DocXID
            )
        {
            string res = "";

            if (sysSetting.SmsServiceID == 1)
            {
                #region sms48_ru

                //Отправка SMS
                PartionnyAccount.Classes.SMS.sms48_ru sms48_ru = new Classes.SMS.sms48_ru();
                res = sms48_ru.Send(sysSetting, Phone, DirSmsTemplateMsg);

                //Результат
                if (res == "8")
                {
                    res = "Отправлено";
                }
                else if (res == "1")
                {
                    res = "Доставлено";
                }
                else if (res == "2")
                {
                    res = "Не удалось";
                }
                else
                {
                    res = "Ошибка: " + res;
                }

                //Пишем в Лог
                await RecordInLog(ListObjectID, DocXID, "Номер тел.:" + Phone + "Текст SMS: " + DirSmsTemplateMsg + "<br /> Результат: " + res, field, dbX);

                #endregion
            }
            else if (sysSetting.SmsServiceID == 2)
            {
                #region sms4b_ru - не работает

                /*
                 * PartionnyAccount.Classes.SMS.sms4b_ru sms4b_ru = new Classes.SMS.sms4b_ru();
                 * res = sms4b_ru.Send();
                 *
                 * //Пишем в Лог + ещё куда-то
                 * //Только, если успешно!
                 * if (res == "1")
                 * {
                 *
                 * }
                 */

                #endregion
            }
            if (sysSetting.SmsServiceID == 3)
            {
                #region infobip_com

                //Отправка SMS
                PartionnyAccount.Classes.SMS.infobip_com infobip_com = new Classes.SMS.infobip_com();
                res = infobip_com.Send(sysSetting, Phone, DirSmsTemplateMsg);

                //Результат

                /*if (res == "OK") res = "Отправлено";
                 * else if (res == "UNAUTHORIZED") res = "Ошибка авторизации! Не павильная пара: Логин:Пароль";
                 * else res = "Ошибка: " + res;*/

                //Пишем в Лог
                await RecordInLog(ListObjectID, DocXID, "Номер тел.:" + Phone + "Текст SMS: " + DirSmsTemplateMsg + "<br /> Результат: " + res, field, dbX);

                #endregion
            }

            return(res);
        }
コード例 #2
0
        //int ListObjectID = 53;

        #endregion


        #region Не рабочий метод!!!

        //Не рабочий метод!!!
        public async Task <IHttpActionResult> GetSms(int SmsTemplateID, int DocServicePurchID, HttpRequestMessage request)
        {
            try
            {
                #region Проверяем Логин и Пароль + Изменяем строку соединения + Права + Разные Функции

                //Получаем Куку
                System.Web.HttpCookie authCookie = System.Web.HttpContext.Current.Request.Cookies["CookieIPOL"];

                // Проверяем Логин и Пароль
                Classes.Account.Login.Field field = await Task.Run(() => login.Return(authCookie, true));

                if (!field.Access)
                {
                    return(Ok(returnServer.Return(false, Classes.Language.Sklad.Language.msg10)));
                }

                //Изменяем строку соединения
                db = new DbConnectionSklad(connectionString.Return(field.DirCustomersID, null, true));

                //Права

                /*int Status = await Task.Run(() => accessRight.Access(db, field.DirEmployeeID, "DirBank"));
                 * if (Status >= 3) return Ok(returnServer.Return(false, Classes.Language.Sklad.Language.msg57(0)));*/

                //Права (1 - Write, 2 - Read, 3 - No Access)
                //int iRight = await Task.Run(() => accessRight.Access(connectionString.Return(field.DirCustomersID, null, true), field.DirEmployeeID, "RightDirBanks"));
                //if (iRight == 3) return Ok(returnServer.Return(false, Classes.Language.Sklad.Language.msg57(0)));

                //Разные Функции
                function.NumberDecimalSeparator();

                //Получам настройки
                Models.Sklad.Sys.SysSetting sysSetting = await db.SysSettings.FindAsync(1);

                #endregion


                string res = "";

                //Находим по "DocServicePurchID" номер телефона клиента
                Models.Sklad.Doc.DocServicePurch docServicePurch = await db.DocServicePurches.FindAsync(DocServicePurchID);

                // DirServiceContractorPhone == "79257711344"


                #region Проверки

                //Активны SMS
                if (sysSetting.SmsActive)
                {
                    return(Ok(returnServer.Return(false, "Активируйте в Настройках (верхнее меню) оповещение по SMS!")));
                }

                //Проверка номера телефона
                if (docServicePurch.DirServiceContractorPhone == null)
                {
                    return(Ok(returnServer.Return(false, "Номер телефоана клиента не корректный!")));
                }
                //Убираем + в самом начале
                docServicePurch.DirServiceContractorPhone = docServicePurch.DirServiceContractorPhone.Replace("+", "");
                //Проверка номера телефона
                if (docServicePurch.DirServiceContractorPhone.Length < 11)
                {
                    return(Ok(returnServer.Return(false, "Номер телефоана клиента не корректный!")));
                }

                #endregion


                if (sysSetting.SmsServiceID == 1)
                {
                    #region sms48_ru

                    PartionnyAccount.Classes.SMS.sms48_ru sms48_ru = new Classes.SMS.sms48_ru();
                    res = sms48_ru.Send(sysSetting, docServicePurch.DirServiceContractorPhone, "Apparat otremontirovan. Zaberite ego - 1200 RUR");

                    //Пишем в Лог + ещё куда-то
                    //Только, если успешно!
                    if (res == "8")
                    {
                        res = "Отправлено";
                    }
                    else if (res == "1")
                    {
                        res = "Доставлено";
                    }
                    else if (res == "2")
                    {
                        res = "Не удалось";
                    }
                    else
                    {
                        res = "Ошибка: " + res;
                    }

                    #endregion
                }
                else if (sysSetting.SmsServiceID == 2)
                {
                    #region sms4b_ru - не работает

                    /*
                     * PartionnyAccount.Classes.SMS.sms4b_ru sms4b_ru = new Classes.SMS.sms4b_ru();
                     * res = sms4b_ru.Send();
                     *
                     * //Пишем в Лог + ещё куда-то
                     * //Только, если успешно!
                     * if (res == "1")
                     * {
                     *
                     * }
                     */

                    #endregion
                }


                dynamic collectionWrapper = new
                {
                    Msg = res
                };
                return(Ok(returnServer.Return(true, collectionWrapper)));
            }
            catch (Exception ex)
            {
                return(Ok(returnServer.Return(false, exceptionEntry.Return(ex))));
            }
        }