protected async override void LoadState(Object navigationParameter, Dictionary <String, Object> pageState) { if (pageState != null) { if (pageState.ContainsKey("selectedGroupName") && pageState.ContainsKey("selectedGroupImageURL") && pageState.ContainsKey("selectedGroupObjectId")) { var selectedGroupName = pageState["selectedGroupName"].ToString(); var selectedGroupImageURL = pageState["selectedGroupImageURL"].ToString(); var selectedGroupObjectId = pageState["selectedGroupObjectId"].ToString(); Groups group = new Models.Groups(); group.Name = selectedGroupName; group.ImageURL = selectedGroupImageURL; group.ObjectId = selectedGroupObjectId; ((App)App.Current).SelectedGroup = new List <object>() { group }; var context = this.DataContext as ArticlesInGroupViewModel; await context.GetAllArticles(); } } }
public bool Create(Node node, Models.Groups group) { RestClient client = new RestClient(path) { Encoding = new UTF8Encoding(false) }; client.AddDefaultHeader("Accept", "application/json"); client.AddDefaultHeader("Accept-Encoding", "gzip, deflate"); client.AddDefaultHeader("Content-Type", "application/json"); var request = new RestSharp.RestRequest(resources) { Method = Method.POST, RequestFormat = DataFormat.Json }; request.AddJsonBody(new Tree(node, group)); var response = client.Execute(request); if (!response.IsSuccessful) { return(false); } return(true); }
public ActionResult EditGroup(FormCollection coll) { var group = new Models.Groups() { id = Convert.ToInt32(coll["id"]) }; db.Entry(group).State = System.Data.Entity.EntityState.Unchanged; group.name = coll["name"]; if (db.Groups.Where(w => w.name == group.name && w.id != group.id).Count() > 0) { return(Json(new Models.Result(Models.ResultEnum.Fail, "error", "小组已存在"))); } var res = db.SaveChanges() > 0; if (res) { if (!string.IsNullOrEmpty(coll["users"])) { int[] newusers = Array.ConvertAll <string, int>(coll["users"].ToString().Split(','), num => Convert.ToInt32(num)); //获取现有的 int[] oldusers = db.GroupUsers.Where(w => w.group_id == group.id).Select(s => s.user_id).ToArray(); //int[] concatusers = oldusers.Concat(newusers).ToArray(); //找到新增的:新的有旧的没有代表是新增 foreach (var n in newusers) { if (!oldusers.Contains(n)) { db.GroupUsers.Add(new Models.GroupUsers() { group_id = group.id, user_id = n, create_time = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")) }); } } //找到删除的:旧的有新的没有代表是删除 foreach (var o in oldusers) { if (!newusers.Contains(o)) { db.GroupUsers.Remove(db.GroupUsers.Where(w => w.group_id == group.id && w.user_id == o).FirstOrDefault()); } } db.SaveChanges(); } return(Json(new Models.Result(Models.ResultEnum.Success, "success", "更新成功"))); } else { return(Json(new Models.Result(Models.ResultEnum.Fail, "error", "更新失败"))); } }
/// <summary> /// Creates a new Group. Regardless of the value of group.groupOwner the owner of the group will always be the current install. /// </summary> /// <param name="group"></param> /// <returns></returns> public async Task <Uri> CreateGroup(Models.Groups group) { HttpResponseMessage response = await client.PostAsJsonAsync("api/v1/groups", group); if (response.IsSuccessStatusCode) { return(response.Headers.Location); } else { throw new System.Exception(response.StatusCode.ToString() + ": " + response.Content.ToString()); } }
/// <summary> /// Returns Group specified by the group id. /// </summary> /// <param name="groupId"></param> /// <returns></returns> public async Task <Models.Groups> GetGroupById(int groupId) { Models.Groups group = null; HttpResponseMessage response = await client.GetAsync("api/v1/groups/" + groupId.ToString()); if (response.IsSuccessStatusCode) { group = await response.Content.ReadAsAsync <Models.Groups>(); } else { throw new System.Exception(response.StatusCode.ToString() + ": " + response.Content.ToString()); } return(group); }
protected async override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState) { if (pageState != null) { if (pageState.ContainsKey("selectedGroupName") && pageState.ContainsKey("selectedGroupImageURL") && pageState.ContainsKey("selectedGroupObjectId")) { var selectedGroupName = pageState["selectedGroupName"].ToString(); var selectedGroupImageURL = pageState["selectedGroupImageURL"].ToString(); var selectedGroupObjectId = pageState["selectedGroupObjectId"].ToString(); Groups group = new Models.Groups(); group.Name = selectedGroupName; group.ImageURL = selectedGroupImageURL; group.ObjectId = selectedGroupObjectId; ((App)App.Current).SelectedGroup = new List<object>(){ group}; var context = this.DataContext as ArticlesInGroupViewModel; await context.GetAllArticles(); } } }
public ActionResult AddGroup(FormCollection coll) { Models.Groups group = new Models.Groups() { name = coll["name"], create_time = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")) }; if (db.Groups.Where(w => w.name == group.name).Count() > 0) { return(Json(new Models.Result(Models.ResultEnum.Fail, "error", "小组已存在"))); } db.Groups.Add(group); var res = db.SaveChanges() > 0; if (res) { if (!string.IsNullOrEmpty(coll["users"])) { int[] users = Array.ConvertAll <string, int>(coll["users"].ToString().Split(','), num => Convert.ToInt32(num)); List <Models.GroupUsers> groupusers = new List <Models.GroupUsers>(); foreach (var uid in users) { db.GroupUsers.Add(new Models.GroupUsers() { group_id = group.id, user_id = uid, create_time = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")) }); } db.SaveChanges(); } return(Json(new Models.Result(Models.ResultEnum.Success, "success", "创建成功"))); } else { return(Json(new Models.Result(Models.ResultEnum.Fail, "error", "创建失败"))); } }