/// <summary> /// 删除段子 /// </summary> public async Task <Resp> Remove(int id, bool delete = false) { using var db = new MyForContext(); DB.Tables.Segment segment = await db.Segments.FirstOrDefaultAsync(s => s.Id == id); if (segment is null) { return(Resp.Fault(Resp.NONE, Segment.NONE_SEGMENT)); } if (delete) { db.Segments.Remove(segment); } else { segment.State = (int)Segment.SegmentState.Remove; } int suc = await db.SaveChangesAsync(); if (suc == 1) { return(Resp.Success(Resp.NONE, "删除成功")); } return(Resp.Fault(Resp.NONE, "删除失败")); }
public async Task <Resp> GetDetail() { using var db = new MyForContext(); DB.Tables.Segment segment = await db.Segments.AsNoTracking() .FirstOrDefaultAsync(s => s.Id == Id); if (segment is null) { return(Resp.Fault(Resp.NONE, NONE_SEGMENT)); } Results.SegmentDetail detail = new Results.SegmentDetail { Content = segment.Content, Creator = Clients.Client.GetName(segment.CreateById), CreateDate = segment.CreateDate.ToStandardString(), State = new Share.KeyValue { Key = segment.State, Value = ((SegmentState)segment.State).GetDescription() } }; return(Resp.Success(detail, "")); }
public async Task <Resp> DisabledAsync(string description) { using var db = new MyForContext(); DB.Tables.Segment segment = await db.Segments.FirstOrDefaultAsync(c => c.Id == Id); if (segment is null) { return(Resp.Fault(Resp.NONE, NONE_SEGMENT)); } segment.State = (int)SegmentState.Disabled; int suc = await db.SaveChangesAsync(); if (suc == 1) { return(Resp.Success()); } return(Resp.Fault(Resp.NONE, "禁用失败")); }
/// <summary> /// 发布段子 /// </summary> public async Task <Resp> PublishAsync(string content, string nickName) { if (string.IsNullOrWhiteSpace(content)) { return(Resp.Fault(Resp.NONE, "内容不能为空")); } using var db = new MyForContext(); DB.Tables.Segment newSegment = new DB.Tables.Segment { NickName = nickName, Content = content, State = (int)Segment.SegmentState.ToAudit }; db.Segments.Add(newSegment); int suc = await db.SaveChangesAsync(); if (suc == 1) { return(Resp.Success(Resp.NONE, "")); } return(Resp.Fault(Resp.NONE, "")); }
/// <summary> /// 点赞 /// </summary> public async Task <Resp> Liked() { if (IsEmpty()) { return(Resp.Fault(Resp.NONE, NONE_SEGMENT)); } using var db = new MyForContext(); DB.Tables.Segment segment = await db.Segments.FirstOrDefaultAsync(c => c.Id == Id); if (segment is null) { return(Resp.Fault(Resp.NONE, NONE_SEGMENT)); } segment.Likes++; int suc = await db.SaveChangesAsync(); if (suc == 1) { return(Resp.Success()); } return(Resp.Fault(Resp.NONE, "点赞失败")); }