public async Task <bool> StartProcessingAsync(int id, bool setActualTime) { try { #region Parameters var parameters = new List <OracleParameter> { new OracleParameter { ParameterName = "retVal", OracleDbType = OracleDbType.Int32, Direction = ParameterDirection.ReturnValue }, new OracleParameter { ParameterName = "v_bg_id", OracleDbType = OracleDbType.Int32, Value = id }, new OracleParameter { ParameterName = "v_setActualTime", OracleDbType = OracleDbType.Int32, Value = setActualTime ? 1 : 0 } }; #endregion await db.ExecuteStoredProcAsync("pk_infra.fn_bgService_processing_start", parameters); var result = int.Parse(parameters.Find(x => x.ParameterName == "retVal").Value.ToString()); return(result > 0); } catch (Exception exp) { throw; } }
public async Task <OpertionResult> CreateAsync(Partner partner) { byte[] salt = Pbkdf2Hasher.GenerateRandomSalt(); string hash = Pbkdf2Hasher.ComputeHash(partner.Pwd, salt); try { #region Parameters var parameters = new List <OracleParameter> { new OracleParameter { ParameterName = "retVal", OracleDbType = OracleDbType.Int32, Direction = ParameterDirection.ReturnValue }, new OracleParameter { ParameterName = "v_partner_id", OracleDbType = OracleDbType.Varchar2, Value = partner.Id }, new OracleParameter { ParameterName = "v_partner_name", OracleDbType = OracleDbType.NVarchar2, Value = partner.Name }, new OracleParameter { ParameterName = "v_brandname", OracleDbType = OracleDbType.NVarchar2, Value = partner.BrandName }, new OracleParameter { ParameterName = "v_roleid", OracleDbType = OracleDbType.Int32, Value = partner.Role.Id }, new OracleParameter { ParameterName = "v_id_no", OracleDbType = OracleDbType.Int32, Value = partner.PersonalId.Id }, new OracleParameter { ParameterName = "v_id_type", OracleDbType = OracleDbType.Int32, Value = partner.PersonalId.IdType.Id }, new OracleParameter { ParameterName = "v_id_place", OracleDbType = OracleDbType.NVarchar2, Value = partner.PersonalId.Place }, new OracleParameter { ParameterName = "v_id_issued", OracleDbType = OracleDbType.Date, Value = partner.PersonalId.Issued }, new OracleParameter { ParameterName = "v_createdby", OracleDbType = OracleDbType.Varchar2, Value = partner.CreatedBy.Id }, new OracleParameter { ParameterName = "v_cityid", OracleDbType = OracleDbType.Int32, Value = partner.Address.City.Id }, new OracleParameter { ParameterName = "v_districtid", OracleDbType = OracleDbType.Int32, Value = partner.Address.District.Id }, new OracleParameter { ParameterName = "v_street", OracleDbType = OracleDbType.NVarchar2, Value = partner.Address.Street }, new OracleParameter { ParameterName = "v_zone", OracleDbType = OracleDbType.NVarchar2, Value = partner.Address.Zone }, new OracleParameter { ParameterName = "v_extra_address", OracleDbType = OracleDbType.NVarchar2, Value = partner.Address.ExtraInfo }, new OracleParameter { ParameterName = "v_pair_mobile", OracleDbType = OracleDbType.Varchar2, Value = partner.PairMobile }, new OracleParameter { ParameterName = "v_mobile", OracleDbType = OracleDbType.Varchar2, Value = partner.ContactInfo.Mobile }, new OracleParameter { ParameterName = "v_fixed", OracleDbType = OracleDbType.Varchar2, Value = partner.ContactInfo.Fixed }, new OracleParameter { ParameterName = "v_fax", OracleDbType = OracleDbType.Varchar2, Value = partner.ContactInfo.Fax }, new OracleParameter { ParameterName = "v_email", OracleDbType = OracleDbType.Varchar2, Value = partner.ContactInfo.Email }, new OracleParameter { ParameterName = "v_pwd", OracleDbType = OracleDbType.Varchar2, Value = hash }, new OracleParameter { ParameterName = "v_extra", OracleDbType = OracleDbType.Varchar2, Value = Convert.ToBase64String(salt) }, new OracleParameter { ParameterName = "v_ip_address", OracleDbType = OracleDbType.Varchar2, Value = partner.IPAddress }, new OracleParameter { ParameterName = "v_ref_partner", OracleDbType = OracleDbType.Varchar2, Value = partner.RefPartner.Id } }; #endregion await db.ExecuteStoredProcAsync("pk_infra.fn_createpartner", parameters); var result = int.Parse(parameters.Find(x => x.ParameterName == "retVal").Value.ToString()); if (result > 0) { var msg = "تم انشاء حساب لك بخدمة الشاحن الفوري و الرقم السري الخاصب بك هو " + partner.Pwd; new OutSMSRepo(db).Create(new SMSOut { Receiver = partner.Id, Message = msg }); return(new OpertionResult { AffectedCount = result, Success = true, Error = string.Empty }); } else { return(new OpertionResult { AffectedCount = result, Success = false, Error = string.Empty }); } } catch (Exception ex) { return(new OpertionResult { AffectedCount = -1, Success = false, Error = ex.Message }); } }