public IEnumerable <InfoBonus> GetBarCode(InputPhone pPh) { var sql = @"SELECT c.BarCode as card,dc.NAME_DISCOUNT_CARD as title FROM dbo.client c JOIN dbo.V_DISCOUNT_CARD dc ON c.TypeDiscount=dc.CODE_DISCOUNT_CARD LEFT JOIN dbo.BOT_Main_card bmc ON c.CodeClient = bmc.CodeClient WHERE c.MainPhone=@ShortPhone OR c.Phone=@ShortPhone or c.MainPhone=@phone or c.Phone=@phone ORDER BY ISNULL(bmc.CodeClient,0)"; return(connection.Query <InfoBonus>(sql, pPh)); }
public bool Auth(InputPhone pPhone) { var sql = @"SELECT SUM(nn) AS nn FROM (SELECT 1 AS nn FROM dbo.client c WHERE c.MainPhone=@ShortPhone OR c.Phone=@ShortPhone or c.MainPhone=@phone OR c.Phone=@phone UNION ALL SELECT 1 AS nn FROM dbo.bot_client c WHERE c.Phone=@Phone OR c.Phone=@ShortPhone ) d"; int r = connection.ExecuteScalar <int>(sql, pPhone); return(r > 0); }
public StatusData FindByPhoneNumber(InputPhone pUser) { if (IsLimit()) { return(new StatusData(-1, $"Перевищено денний Ліміт=>{Count}")); } var body = soapTo1C.GenBody("FindByPhoneNumber", new Parameters[] { new Parameters("NumDocum", "j" + pUser.phone) }); var res = soapTo1C.RequestAsync(Global.Server1C, body, 100000, "text/xml", "Администратор:0000").Result; // @"http://1csrv.vopak.local/TEST2_UTPPSU/ws/ws1.1cws" FileLogger.WriteLogMessage($"FindByPhoneNumber Phone=>{pUser.ShortPhone} State=> {res.State} TextState =>{res.TextState} Data=>{res.Data}"); return(res); }
public async Task <AllInfoBonus> GetBonusAsync(InputPhone pPh) { AllInfoBonus oRes = new AllInfoBonus(); oRes.cards = msSQL.GetBarCode(pPh); //oRes.cards.Ge //if (lBarCode.Count()==0)// string.IsNullOrEmpty(pBarCode)) //pBarCode = Global.GenBarCodeFromPhone(pPh.FullPhone2); //oRes.cards.First foreach (var el in oRes.cards) { FileLogger.WriteLogMessage($"GetBonusAsync Start BarCode=>{el.card}"); try { string res; el.pathCard = GetBarCode(el.card); decimal Sum; var body = soapTo1C.GenBody("GetBonusSum", new Parameters[] { new Parameters("CodeOfCard", el.card) }); var res1C = await soapTo1C.RequestAsync(Global.Server1C, body); if (res1C.status) { res = res1C.Data.Replace(".", Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator); if (!string.IsNullOrEmpty(res) && decimal.TryParse(res, out Sum)) { el.bonus = Sum; //!!!TMP } } body = soapTo1C.GenBody("GetMoneySum", new Parameters[] { new Parameters("CodeOfCard", el.card) }); res1C = await soapTo1C.RequestAsync(Global.Server1C, body); res = res1C.Data.Replace(".", Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator); if (!string.IsNullOrEmpty(res) && decimal.TryParse(res, out Sum)) { el.rest = Sum; } //Global.OnClientChanged?.Invoke(parClient, parTerminalId); } catch (Exception ex) { FileLogger.WriteLogMessage($"GetBonusAsync BarCode=>{el.card} Error =>{ex.Message}"); oRes.State = -1; oRes.TextState = ex.Message; return(oRes); // Global.OnSyncInfoCollected?.Invoke(new SyncInformation { TerminalId = parTerminalId, Exception = ex, Status = eSyncStatus.NoFatalError, StatusDescription = ex.Message }); } } return(oRes); }
public Status Auth(InputPhone pIPh) { FileLogger.WriteLogMessage($"Auth User=>{pIPh.ShortPhone}"); try { var r = msSQL.Auth(pIPh); return(new Status(r)); } catch (Exception ex) { FileLogger.WriteLogMessage($"Auth User=>{pIPh.ShortPhone} Error=> {ex.Message}"); return(new Status(-1, ex.Message)); } }
public Status Register(RegisterUser pUser) { var strUser = JsonSerializer.Serialize(pUser); try { FileLogger.WriteLogMessage($"Register Start User=>{strUser}"); var rdd = new InputPhone() { phone = pUser.phone }; var r = msSQL.Auth(rdd); if (r) { return(new Status()); } try { var con = new Contact(pUser); string json = Newtonsoft.Json.JsonConvert.SerializeObject(con); var res = new http().SendPostSiteCreate(con); if (res != null && res.status != null && res.status.Equals("success") && res.contact != null) { pUser.IdExternal = res.contact.id; pUser.BarCode = res.contact.ecard; con.card_number = pUser.BarCode; } CreateCustomerCard(con); } catch (Exception e) { FileLogger.WriteLogMessage($"Register SendPostAsync System Error=>{e.Message} User=>{strUser}"); } return(new Status(msSQL.Register(pUser))); } catch (Exception e) { FileLogger.WriteLogMessage($"Register Error=>{e.Message} User=>{strUser}"); return(new Status(-1, e.Message)); } }