public async Task <ResultModel> Put([FromBody] FinancialItem item) { var result = new ResultModel(); result.Message = item.Name; if (item.Type != "收入" && item.Type != "支出") { result.IsSuccess = false; result.Message = "Type:收入 or 支出"; return(result); } FinancialItem itemToUpdate = await _context.FinancialItems.FindAsync(item.Id); if (itemToUpdate == null) { result.IsSuccess = false; result.Message = "查無財務項目"; return(result); } //檢查名稱是否重複 var query = from o in _context.FinancialItems where o.Name.ToUpper() == item.Name.ToUpper() select o; if (query.Count() > 0) {//排除跟自己同名 if (query.FirstOrDefault().Id != item.Id) { result.IsSuccess = false; result.Message = "Name: " + item.Name + " exist."; return(result); } } try { _context.Entry(itemToUpdate).CurrentValues.SetValues(item); result.IsSuccess = true; result.Message = "編輯財務項目成功"; await _context.SaveChangesAsync(); } catch (Exception e) { result.IsSuccess = false; result.Message = "DB ERROR"; } var accessToken = Request.Headers["Authorization"]; var user = await _TokenGetUserHelper.GetUser(accessToken); logger.Info("userId=" + user.Id + ", username="******"\nUpdate " + "FinancialItem id= " + item.Id + ", name=" + item.Name + " successfully."); return(result); }
public async Task <ResultModel> Put([FromBody] member m) { var result = new ResultModel(); if (m.MemberId == 0) { result.IsSuccess = false; result.Message = "請輸入會員編號."; return(result); } member memberToUpdate = await _context.members.FindAsync(m.MemberId); if (memberToUpdate != null) { ResultModel checkMemberResult = CheckMember(m, "IsDuplicate"); if (checkMemberResult.IsSuccess) { try { _context.Entry(memberToUpdate).CurrentValues.SetValues(m); await _context.SaveChangesAsync(); result.IsSuccess = true; result.Message = "編輯會員資料成功"; } catch (Exception e) { result.IsSuccess = false; result.Message = "DB ERROR"; } } else { result = checkMemberResult; } } else { result.IsSuccess = false; result.Message = "查無資料"; } var accessToken = Request.Headers["Authorization"]; var user = await _TokenGetUserHelper.GetUser(accessToken); logger.Info("userId=" + user.Id + ", username="******"\nEdit " + "member id= " + m.MemberId + ", name=" + m.Name + " successfully."); return(result); }
public async Task <ResultModel> Put([FromBody] FriendForEdit f) { var result = new ResultModel(); result.Message = f.Name; Friend friendToUpdate = await _context.Friends.FindAsync(f.Id); if (friendToUpdate == null) { result.IsSuccess = false; result.Message = "查無友宮"; return(result); } //檢查名稱是否重複 var query = from o in _context.Friends where o.Name == f.Name select o; if (query.Count() > 0) {//排除跟自己同名 if (query.FirstOrDefault().Id != f.Id) { result.IsSuccess = false; result.Message = "Name: " + f.Name + " exist."; return(result); } } try { _context.Entry(friendToUpdate).CurrentValues.SetValues(f); result.IsSuccess = true; result.Message = "編輯友宮資料成功"; await _context.SaveChangesAsync(); } catch (Exception e) { result.IsSuccess = false; result.Message = "DB ERROR"; } var accessToken = Request.Headers["Authorization"]; var user = await _TokenGetUserHelper.GetUser(accessToken); logger.Info("userId=" + user.Id + ", username="******"\n Edit " + "Friends id= " + f.Id + ", name=" + f.Name + " successfully."); return(result); }
public ResultModel Get([FromQuery] QueryRitualMoney q) { ResultModel result = new ResultModel(); if (!string.IsNullOrEmpty(q.Name)) { q.Name = q.Name.Trim().ToUpper(); } var query = from m in _context.members where (string.IsNullOrEmpty(q.Name) ? true : m.Name.ToUpper().Contains(q.Name)) && (string.IsNullOrEmpty(q.Identity) ? true : m.Identity == q.Identity) select m; //select new { m.Name, m.Identity }; if (query.Count() == 0) { result.IsSuccess = true; result.Message = "查無資料"; return(result); } foreach (var i in query) { var records = _context.Entry(i) .Collection(q => q.RitualMoneyRecords) .Query() .ToList(); q.RitualMoneyRecords.AddRange(records); } if (q.Year != null) { //if (q.Year < 2019 || q.Year > 2029) //{ // result.IsSuccess = false; // result.Message = "Input Year should be in range of 2019 to 2029."; // return result; //} var copyList = new List <RitualMoneyRecord>(q.RitualMoneyRecords); //foreach (var j in q.RitualMoneyRecords) { // if (DateTime.Parse(j.BorrowDate).Year != q.Year) { // copyList.Remove(j); // } // } foreach (var j in q.RitualMoneyRecords) { if (j.BorrowDate.Year != q.Year) { copyList.Remove(j); } } q.RitualMoneyRecords = copyList; } if (q.Month != null) { if (q.Month < 1 || q.Month > 12) { result.IsSuccess = false; result.Message = "月份請輸入1~12月."; return(result); } var copyList = new List <RitualMoneyRecord>(q.RitualMoneyRecords); foreach (var j in q.RitualMoneyRecords) { //if (DateTime.Parse(j.BorrowDate).Month != q.Month) //{ // copyList.Remove(j); //} if (j.BorrowDate.Month != q.Month) { copyList.Remove(j); } } q.RitualMoneyRecords = copyList; } result.IsSuccess = true; result.Data = q.RitualMoneyRecords.OrderByDescending(o => o.RitualMoneyRecordId); return(result); }