public UpdateInfoDto GetUpdate(OrderCoffeDto order) { if (random.Next(1, 5) != 4) { return(new UpdateInfoDto { IsNew = false }); } var index = GetNextStatusIndex(order.OrderCoffeeId); if (Status.Length <= index) { return(new UpdateInfoDto { IsNew = false }); } var result = new UpdateInfoDto { OrderCoffeeId = order.OrderCoffeeId, IsNew = true, Update = Status[index], IsFinished = (Status.Length - 1 == index) }; return(result); }
public virtual UpdateInfoDto Get(UpdateInfoType type) { UpdateInfoDto vm = null; var list = GetList(); var query = from q in list where q.Type == type select q; vm = query.FirstOrDefault(); return(vm); }
public virtual int AddOrUpdate(UpdateInfoDto vm) { int count = 0; if (vm != null) { using (var db = this.CreateDbContext()) { db.Configuration.AutoDetectChangesEnabled = true; using (db.BeginTransaction(System.Data.IsolationLevel.Serializable)) { var m = db.UpdateInfo.Where(q => q.Type == vm.Type).FirstOrDefault(); if (m == null) { m = new UpdateInfo(); } m.Type = vm.Type; m.Version = vm.Version; m.FilePath = vm.FilePath; m.UpdateTime = DateTime.Now; if (m.Id == 0) { db.UpdateInfo.Add(m); } db.AddCommitCallback(() => { var updateInfoCache = this.GetCache <IUpdateInfoCache>(); updateInfoCache.Remove(); }); count += db.SaveChanges(); db.Commit(); vm.Id = m.Id; vm.UpdateTime = m.UpdateTime; } } } return(count); }
public async Task <string> UpdateInfo(UpdateInfoDto input) { long userId = _abpSession.UserId.Value; var user = await _userManager.GetUserByIdAsync(userId); KhachHang khachhang = null; bool NeedInsertKhachHang = false; if (user.IsCustomer) { khachhang = await _khachHangRepository.FirstOrDefaultAsync(w => w.UserId == user.Id); if (khachhang == null) { NeedInsertKhachHang = true; khachhang = new KhachHang { PhoneNumber = user.PhoneNumber, EmailAddress = user.EmailAddress, UserId = user.Id }; } } if (!string.IsNullOrWhiteSpace(input.ProfilePicture)) { user.ProfilePicture = Convert.FromBase64String(input.ProfilePicture); } if (!string.IsNullOrWhiteSpace(input.Name)) { user.Name = input.Name; if (khachhang != null) { khachhang.Name = input.Name; } } if (!string.IsNullOrWhiteSpace(input.PhoneNumber)) { // Chỉ cho phép cập nhật số điện thoại cho nhân viên if (!user.IsCustomer) { user.PhoneNumber = input.PhoneNumber; } } if (!string.IsNullOrWhiteSpace(input.EmailAddress)) { user.EmailAddress = input.EmailAddress; if (khachhang != null) { khachhang.EmailAddress = input.EmailAddress; } } if (input.Birthday.HasValue) { user.Birthday = input.Birthday; if (khachhang != null) { khachhang.Birthday = input.Birthday; } } if (!string.IsNullOrWhiteSpace(input.Description)) { user.Description = input.Description; if (khachhang != null) { khachhang.Description = input.Description; } } if (khachhang != null) { if (!string.IsNullOrWhiteSpace(input.Address)) { khachhang.Address = input.Address; } if (input.DistrictId > 0) { khachhang.DistrictId = input.DistrictId; } if (input.ProvinceId > 0) { khachhang.ProvinceId = input.ProvinceId; } } if (NeedInsertKhachHang) { try { await _khachHangRepository.InsertAsync(khachhang); } catch (Exception ex) { Logger.Error("Không tạo được bản ghi khách hàng", ex); throw new UserFriendlyException("Không tạo được bản ghi khách hàng", ex.Message); } } CurrentUnitOfWork.SaveChanges(); return(await Task.FromResult <string>("OK")); }
public IActionResult Post(UpdateInfoDto command) { throw new NotImplementedException(); }