//GetTravelDiaryDetailInfo 获取某一游记详细信息 public static diary getDiaryByDiaryID(int diaryID) { using (var ctx = new hackthonEntities()) { return ctx.diaries.Where(x => x.diaryID == diaryID).FirstOrDefault(); } }
//下单 //更新订单状态 //PutTravelDiary 发布旅行日志 public static void saveOrder(order order) { using (var ctx = new hackthonEntities()) { ctx.AddToorders(order); ctx.SaveChanges(); } }
public static order selectOrderInfoById(int orderID) { IQueryable<order> results; using (var ctx = new hackthonEntities()) { results = ctx.orders.Where(c => c.orderID == orderID); return results.First(); } }
//获取用户信息 selectUserInfoById public static user selectUserInfoById(int userID) { IQueryable<user> results; using (var ctx = new hackthonEntities()) { results = ctx.users.Where(c => c.userID == userID); return results.First(); } }
//按UserID获取游记列表 static IQueryable<diary> getDiaryListByUserID(int userID) { IQueryable<diary> results; using (var ctx = new hackthonEntities()) { results = ctx.diaries.Where(c => c.userID == userID); return results; } }
//按Tag获取游记列表 public static IQueryable<diary> getDiaryListByTag(string tag) { IQueryable<diary> results; using (var ctx = new hackthonEntities()) { results = ctx.diaries.Where(c => c.tag.Contains(tag)); return results; } }
//PutTravelDiary 删除旅行日志 public static void DeleteTraveDiary(int diaryID) { using (var ctx = new hackthonEntities()) { var diary = from c in ctx.diaries where c.diaryID== diaryID select c ; ctx.DeleteObject(diary); ctx.SaveChanges(); } }
//updateTravelDiary 更新旅行日志状态,已下单/已付款/已返积分/退款 public static void updateOrderStatusAs(int orderID,string orderStatus) { using (var ctx = new hackthonEntities()) { order order = selectOrderInfoById(orderID); ctx.orders.Attach(order); order.status = orderStatus; ctx.SaveChanges(); } }
//用户注册 -- UserRegist //todo: 同名的username可以添加 public static int saveUser(user u) { using (var ctx = new hackthonEntities()) { if (u.credits == null) u.credits = 0; //虽然db中默认值为0,但是添加新行还是为空; ctx.AddTousers(u); ctx.SaveChanges(); return u.userID; } }
//PutTravelDiary 发布旅行日志 public static int saveDiary(diary diary) { using (var ctx = new hackthonEntities()) { ctx.AddTodiaries(diary); ctx.SaveChanges(); return diary.diaryID; } }
//付款成功添加100积分 //updateCredits(userID, price) ; 价格的1/10的积分,比如10000就给1000积分,相当于10块,(1/1000) public static void updateCredits(int userID, decimal credits) { using (var ctx = new hackthonEntities()) { user user = selectUserInfoById(userID); ctx.users.Attach(user); user.credits += credits; ctx.SaveChanges(); } }
//updateTravelDiary 更新旅行日志 public static void updateDiary(int diaryID, diary updateddiary) { using (var ctx = new hackthonEntities()) { diary diary = getDiaryByDiaryID(diaryID); ctx.diaries.Attach(diary); if(diary.title !=updateddiary.title) diary.title =updateddiary.title; //todo: 写其他的 ctx.SaveChanges(); } }
//用户登录 -- UserLogin //登陆失败返回-1,登陆成功返回用户的id: public static int? getIdentity(string userName, string password) { IQueryable<user> results; int? identity; using (var ctx = new hackthonEntities()) { results = ctx.users.Where(c => c.userName ==userName && c.password ==password); if (results != null) identity = results.First().userID; else identity = -1; return identity; } }