public ApiResultModel EditLifeBill(EditLifeBillModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //通过用户Id查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); ILifeBillBLL lifeBillBll = BLLFactory <ILifeBillBLL> .GetBLL("LifeBillBLL"); T_LifeBill lifebill = lifeBillBll.GetEntity(u => u.Id == model.Id && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果该生活记账存在 if (lifebill != null) { lifebill.Id = model.Id; lifebill.BillTypeId = model.CategoryId; lifebill.PayTypeId = model.PayId; lifebill.Money = model.Money; lifebill.ConsumptionDate = Convert.ToDateTime(model.PayDate); lifebill.CreateDate = Convert.ToDateTime(model.DateStr); lifebill.Memo = model.Mark; //更新 lifeBillBll.Update(lifebill); } else { resultModel.Msg = "生活记账不存在"; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
/// <summary> /// 总支出 /// </summary> /// <param name="id"></param> /// <returns></returns> private static double TotalPaySum(int id) { ILifeBillBLL lifeBillBll = BLLFactory <ILifeBillBLL> .GetBLL("LifeBillBLL"); Expression <Func <T_LifeBill, bool> > where = u => u.UserId == id && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT; var list = lifeBillBll.GetList(where).ToList(); double sum = list.Select(u => u.Money).ToArray().Sum(); return(sum); }
/// <summary> /// 月支出 /// </summary> /// <param name="id"></param> /// <param name="datetime"></param> /// <returns></returns> private static double MonthPaySum(int id) { DateTime today = DateTime.Today; DateTime BeginTime = today.AddDays(-today.Day + 1); DateTime EndTime = today.AddDays(1); ILifeBillBLL lifeBillBll = BLLFactory <ILifeBillBLL> .GetBLL("LifeBillBLL"); Expression <Func <T_LifeBill, bool> > where = u => u.UserId == id && u.ConsumptionDate >= BeginTime && u.ConsumptionDate < EndTime && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT; var list = lifeBillBll.GetList(where).ToList(); double sum = list.Select(u => u.Money).ToArray().Sum(); return(sum); }
public ApiPayResultModel LifeBillList([FromUri] PagedSearchModel model) { ApiPayResultModel resultModel = new ApiPayResultModel(); try { //根据用户Id查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token过期时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); ILifeBillBLL lifeBillBll = BLLFactory <ILifeBillBLL> .GetBLL("LifeBillBLL"); Expression <Func <T_LifeBill, bool> > where = u => u.UserId == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT; resultModel.TotalPay = TotalPaySum(owner.Id); resultModel.MonthPay = MonthPaySum(owner.Id); //所有的生活记账 var AllList = lifeBillBll.GetList(where, "Id", false).ToList().Select(q => new { Time = q.ConsumptionDate, AccountId = q.Id, Img = q.LifeBillType.Img, Title = q.LifeBillType.Name, Money = q.Money, Mark = q.Memo }); //所有的记账时间 List <DateTime> Datelist = lifeBillBll.GetList(where, "ConsumptionDate", false).GroupBy(u => u.ConsumptionDate).Select(a => a.Key).ToList(); List <AllLifeBillList> alllist = new List <AllLifeBillList>(); foreach (var item in Datelist) { AllLifeBillList all = new AllLifeBillList(); List <LifeBillDescModel> list = new List <LifeBillDescModel>(); var lst = AllList.Where(a => a.Time == item).ToList(); all.Time = item.ToString("yyyy-MM-dd"); foreach (var i in lst) { LifeBillDescModel LifeBill = new LifeBillDescModel(); LifeBill.AccountId = i.AccountId; LifeBill.Title = i.Title; LifeBill.Img = i.Img; LifeBill.Money = i.Money; LifeBill.Mark = i.Mark; list.Add(LifeBill); } all.AccountList = list; alllist.Add(all); } resultModel.result = alllist.Skip((model.PageIndex - 1) * 5).Take(5).ToList(); resultModel.Total = alllist.Count(); } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel LifeBillDesc([FromUri] LifeBillModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户Id查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); ILifeBillBLL lifeBillBll = BLLFactory <ILifeBillBLL> .GetBLL("LifeBillBLL"); T_LifeBill lifebill = lifeBillBll.GetEntity(u => u.Id == model.Id && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); if (lifebill != null) { //获取记账详细 resultModel.result = new { AccountId = lifebill.Id, CategoryId = lifebill.BillTypeId, PayId = lifebill.PayTypeId, Money = lifebill.Money, CategoryName = lifebill.LifeBillType.Name, Img = lifebill.LifeBillType.Img, Payway = lifebill.LifePayType.Name, Time = lifebill.ConsumptionDate.ToString("yyyy-MM-dd"), CreateTime = lifebill.CreateDate.ToString("yyyy-MM-dd"), Mark = lifebill.Memo }; } else { resultModel.Msg = "生活记账不存在"; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }