public ActionResult Edit(CardCreateEditViewModel model) { Sidebar(); var temp = db.Cards.FirstOrDefault(s => s.ID == model.ID); var tempenterprise = db.Enterprises.FirstOrDefault(s => s.ID == temp.EnterpriseID); IConfig config = new ConfigMini(); WeChatMinApi w = new WeChatMinApi(config); //防止企业用户串号修改 if (AccontData.UserType == UserType.Enterprise && temp.EnterpriseID != AccontData.EnterpriseID) { return(this.ToError("错误", "没有该操作权限", Url.Action("Index"))); } if (ModelState.IsValid) { var t = db.Cards.FirstOrDefault(s => s.ID == model.ID); t.Name = model.Name; t.Gender = model.Gender; t.Avatar = string.Join(",", model.Avatar.Images); t.PhoneNumber = model.PhoneNumber; t.Email = model.Email; t.WeChatCode = model.WeChatCode; t.Mobile = model.Mobile; t.Position = model.Position; t.Remark = model.Remark; t.Info = model.Info; t.Enable = model.Enable; t.Voice = string.Join(",", model.Voice.Images); t.Video = string.Join(",", model.Video.Images); t.Images = string.Join(",", model.Images.Images); t.Sort = model.Sort; if (string.IsNullOrWhiteSpace(temp.WeChatMiniQrCode)) { var scene = new Dictionary <string, string>(); scene.Add("CardId", model.ID.ToString()); t.WeChatMiniQrCode = w.GetWXACodeUnlimit(Common.WeChat.WeChatPage.CardDetail, scene); } db.SaveChanges(); return(RedirectToAction("Index")); } return(View(model)); }
private ApplicationUser CreateByWeChat(Common.WeChat.UserInfoResult model) { string username, nickname, avart, unionId = model.UnionID; var user = db.Users.FirstOrDefault(s => s.WeChatID == unionId); IConfig config = null; switch (model.Type) { case WeChatAccount.AiCardMini: config = new ConfigMini(); break; case WeChatAccount.AiCardPersonalMini: config = new ConfigMiniPersonal(); break; default: case WeChatAccount.PC: config = new ConfigWeChatWork(); break; } if (user != null) { string appID = config.AppID; var op1 = new Bll.Users.UserOpenID(user); op1.AddOpenID(appID, model.OpenID); db.SaveChanges(); return(user); } nickname = model.NickName; avart = model.HeadImgUrl; if (!string.IsNullOrWhiteSpace(avart)) { try { avart = this.Download(avart); } catch (Exception) { avart = "~/Content/Images/404/avatar.png"; } } unionId = model.UnionID; #region 把图片传到七牛 var path = Server.MapPath(avart); avart = new Common.Qiniu.QinQiuApi().UploadFile(path, true); #endregion do { username = $"wc{DateTime.Now:yyyyMMddHHmmss}{Comm.Random.Next(1000, 9999)}"; } while (db.Users.Any(s => s.UserName == username)); if (string.IsNullOrWhiteSpace(nickname)) { nickname = username; } user = new ApplicationUser { WeChatID = unionId, UserName = username, NickName = nickname, Avatar = avart, RegisterDateTime = DateTime.Now, LastLoginDateTime = DateTime.Now, UserType = UserType.Personal }; var option = new Bll.Users.UserOpenID(user); option.AddOpenID(config.AppID, model.OpenID); var r = UserManager.Create(user); user = db.Users.FirstOrDefault(s => s.WeChatID == unionId); db.SaveChanges(); if (!r.Succeeded) { throw new Exception(r.Errors.FirstOrDefault()); } return(user); }