public async Task <Signature> CreateOrUpdateSignatureAsync(Signature signature) { using (var ctx = new SmsServiceDbEntities(this.connectionString)) { var entity = await ctx.Signatures.SingleOrDefaultAsync( s => s.EngagementAccount == signature.EngagementAccount && s.Signature == signature.Value); if (entity == null) { entity = new SignatureEntity(); entity.Signature = signature.Value; entity.ChannelType = signature.ChannelType.ToString(); entity.EngagementAccount = signature.EngagementAccount; entity.ExtendedCode = signature.ExtendedCode; entity.State = signature.State.ToString(); entity.Message = signature.Message; entity.Created = entity.Modified = DateTime.UtcNow; ctx.Signatures.Add(entity); } else { entity.ChannelType = signature.ChannelType.ToString(); entity.ExtendedCode = signature.ExtendedCode; entity.State = signature.State.ToString(); entity.Message = signature.Message; entity.Modified = DateTime.UtcNow; } await ctx.SaveChangesAsync(); return(entity.ToModel()); } }
public Signature EntityToSignature(SignatureEntity toConvert) { UserAndEntityConverter userEntityConverter = new UserAndEntityConverter(); Architect dataTransfer = new Architect(toConvert.SignerName, toConvert.SignerSurname, toConvert.SignerUserName, "irrelevant", DateTime.Now); Signature conversion = new Signature(dataTransfer, toConvert.SignatureDate); return(conversion); }
public void Insert(string description, string publicKey, string privateKey) { var signature = new SignatureEntity() { Description = description, PublicKey = publicKey, PrivateKey = privateKey }; db.Insert(signature); }
public SignatureEntity SignatureToEntity(Signature toConvert, BlueprintEntity bearer) { UserAndEntityConverter userEntityConverter = new UserAndEntityConverter(); SignatureEntity conversion = new SignatureEntity() { SignerName = toConvert.ArchitectName, SignerSurname = toConvert.ArchitectSurname, SignerUserName = toConvert.ArchitectUserName, SignatureDate = toConvert.Date, BlueprintSigned = bearer }; return(conversion); }
public bool SignComment(int signatureId, int commentId) { CommentEntity commentToSign = commentModel.SelectWithID(commentId); if (commentToSign.SignedBy != 0) { return(false); } SignatureEntity signatureToSign = SelectWithID(signatureId); if (signatureToSign == null) { return(false); } commentToSign.SignedData = SignString(commentToSign.Title, signatureToSign.PrivateKey); commentToSign.SignedBy = signatureId; if (commentModel.Update(commentToSign) == 0) { return(false); } return(true); }
//ILog logs = LogManager.GetLogger("Signature"); //string configPath = ConfigSetting.configPath + "NCD.SNS.Signature.config"; //public CacheItemRemovedCallback onRemove = null; public string Get(string url, string encode) { string r = ""; if (encode == "true") { url = HttpUtility.UrlDecode(url); } string checkurl = "";// url.Replace("http://", ""); if (url.IndexOf("http://") != -1) { checkurl = url.Replace("http://", ""); } else if (url.IndexOf("https://") != -1) { checkurl = url.Replace("https://", ""); } if (checkurl.IndexOf("/") != -1) { checkurl = checkurl.Substring(0, checkurl.IndexOf("/")); } if (url != "") { if (CheckConfig(checkurl)) { string ticket = new JsApiTicket().Get().ticket; string timestamp = Util.GetTimestamp();//Convert.ToInt64((DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0)).TotalSeconds).ToString(); string noncestr = Util.GetRandomString(36, true, true, true, false, ""); string str = "jsapi_ticket=" + ticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url=" + url; //logs.Fatal("before signature str:" + str); string signature = Sha1.Encrypt(str); //logs.Fatal("signature:" + signature); SignatureEntity signatureEntity = new SignatureEntity(); signatureEntity.appId = GZH.CL.Config.ConfigSetting.GetWeixin().AppID; signatureEntity.timestamp = timestamp; signatureEntity.nonceStr = noncestr; signatureEntity.signature = signature.ToLower(); signatureEntity.url = url; //System.Web.Script.Serialization.JavaScriptSerializer j = new System.Web.Script.Serialization.JavaScriptSerializer(); r = JsonHelper.ScriptSerialize(signatureEntity, false); } else { r = "abort config"; } } else { r = "abort request"; } return(r); }
public async Task <JsonResult <SignatureEntity> > GetSignature(string name, SignatureEnum signature) { try { var url = "http://www.jiqie.com"; var fromUrlContent = new StringContent($"id={name}&idi=jiqie&id1=800&id2={(int)signature}&id3=#000000&id4=#000000&id5=#000000&id6=#000000"); fromUrlContent.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded"); using (var http = new HttpClient()) { var responseMsg = await http.PostAsync(new Uri(url + "/a/re22.php"), fromUrlContent); var htmlContent = await responseMsg.Content.ReadAsStringAsync(); var signUrl = htmlContent.Replace("<img src=\"", url + "/").Replace("\">", ""); var originalImgPath = $"{_hostingEnvironment.WebRootPath}/signature/{name}.jpg"; FileHelper.DownLoad(signUrl, originalImgPath); var random_num = new Random(); var num = random_num.Next(1, 3); var watermarkImgPath = $"{_hostingEnvironment.WebRootPath}/images/qrcode{num}.jpg"; var originalImgBytes = await System.IO.File.ReadAllBytesAsync(originalImgPath); var watermarkImgBytes = await System.IO.File.ReadAllBytesAsync(watermarkImgPath); var originalImg = Image.Load(originalImgBytes, out IImageFormat format); var watermarkImg = Image.Load(watermarkImgBytes); originalImg.Mutate(x => { x.DrawImage(watermarkImg, 1, new Point(390, 90)); }); var imgBase64 = originalImg.ToBase64String(format); var reg = new Regex("data:image/(.*);base64,"); imgBase64 = reg.Replace(imgBase64, ""); var bytes = Convert.FromBase64String(imgBase64); var signaturePath = $"{_hostingEnvironment.WebRootPath}/signature/{name}{signature}.jpg"; FileHelper.SaveFile(bytes, signaturePath); var entity = new SignatureEntity { Name = name, Type = signature .GetType() .GetMember(signature.ToString()) .FirstOrDefault() .GetCustomAttribute <DescriptionAttribute>() .Description, Url = $"{_settings.Domain}/signature/{name}{signature}.jpg" }; System.IO.File.Delete(originalImgPath); return(new JsonResult <SignatureEntity> { Result = entity }); } } catch (Exception e) { return(new JsonResult <SignatureEntity> { Reason = e.Message }); } }
/// <summary> /// Преобразовать идентификатор с подписью в трансферную модель /// </summary> private static SignatureDto SignatureToDto(SignatureEntity signatureEntity) => new SignatureDto(signatureEntity.PersonId, PersonInformationToDto(signatureEntity.PersonInformation), signatureEntity.SignatureSource.ToArray());