public async Task SaveAsync(SimpleUser user, string buildingId, ShopBaseInfo shopBaseInfo, CancellationToken cancellationToken = default(CancellationToken)) { if (user == null) { throw new ArgumentNullException(nameof(user)); } if (shopBaseInfo == null) { throw new ArgumentNullException(nameof(shopBaseInfo)); } //查看楼盘是否存在 if (!Context.Shops.Any(x => x.Id == shopBaseInfo.Id)) { Shops shops = new Shops() { Id = shopBaseInfo.Id, BuildingId = buildingId, CreateUser = user.Id, CreateTime = DateTime.Now, OrganizationId = user.OrganizationId, ExamineStatus = 0 }; Context.Add(shops); } if (shopBaseInfo.TotalPrice != null) { shopBaseInfo.Price = shopBaseInfo.TotalPrice / Convert.ToDecimal(shopBaseInfo.BuildingArea); } //基本信息 if (!Context.ShopBaseInfos.Any(x => x.Id == shopBaseInfo.Id)) { Context.Add(shopBaseInfo); } else { Context.Attach(shopBaseInfo); Context.Update(shopBaseInfo); } try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { } }
public async Task DeleteAsync(ShopBaseInfo shopBaseInfo, CancellationToken cancellationToken = default(CancellationToken)) { if (shopBaseInfo == null) { throw new ArgumentNullException(nameof(shopBaseInfo)); } Context.Remove(shopBaseInfo); try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { throw; } }
public async Task <ShopBaseInfo> CreateAsync(ShopBaseInfo shopBaseInfo, CancellationToken cancellationToken = default(CancellationToken)) { if (shopBaseInfo == null) { throw new ArgumentNullException(nameof(shopBaseInfo)); } if (shopBaseInfo.TotalPrice != null) { shopBaseInfo.Price = shopBaseInfo.TotalPrice / Convert.ToDecimal(shopBaseInfo.BuildingArea); } Context.Add(shopBaseInfo); await Context.SaveChangesAsync(cancellationToken); return(shopBaseInfo); }
public async Task UpdateAsync(ShopBaseInfo shopBaseInfo, CancellationToken cancellationToken = default(CancellationToken)) { if (shopBaseInfo == null) { throw new ArgumentNullException(nameof(shopBaseInfo)); } if (shopBaseInfo.TotalPrice != null) { shopBaseInfo.Price = shopBaseInfo.TotalPrice / Convert.ToDecimal(shopBaseInfo.BuildingArea); } Context.Attach(shopBaseInfo); Context.Update(shopBaseInfo); try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { } }