// public async Task<string> UpdateAsync(ProductFamilyDTO dto) // { // return await base.TryExecuteAsync( //@"UPDATE [ProductFamilies] SET //ID = @ID //, Name = @Name //, Brand = @Brand //, Room = @Room //, Flags = @Flags //WHERE ID = @ID", dto).ConfigureAwait(false); // } //public async Task<ProductFamilyDTO> GetFamilyAsync(string id) //{ // var query = await base.TryQueryFirstOrDefaultAsync<ProductFamilyDTO>("SELECT * FROM [ProductFamilies] WHERE ID = @ID", new // { // ID = id // }).ConfigureAwait(false); // return query.Result; //} public async Task <ProductFamilyDTO> GetFamilyWithItemsAsync(string familyId) { var itemsMr = await base.TryQueryListAsync <ProductItemDTO>("SELECT * FROM V_ProductFamilyItems WHERE Family_ID = @FamilyID" , new { FamilyID = familyId }).ConfigureAwait(false); if (itemsMr.Result.IsPresent()) { var familyDto = new ProductFamilyDTO(); itemsMr.Result.Aggregate(familyDto, (f, i) => { f.ID = i.Family_ID; f.Name = i.Name; f.Brand = i.Brand; f.Room = i.Room; f.Flags = i.Flags; f.Items.Add(i); return(f); }); return(familyDto); } return(null); }
// ******************************************************************************************************************************* #region - SaveFamily - public async Task <string> SaveFamilyAsync(ProductFamilyDTO dto) { var json = JsonSerializer.Serialize(dto); await _db.HSetAsync(KEY, dto.ID, json).ConfigureAwait(false); return(MsgCodes.SUCCESS); }
// ******************************************************************************************************************************* #region - CURD - public async Task <string> InsertAsync(ProductFamilyDTO dto) { return(await base.TryExecuteAsync( "INSERT INTO ProductFamilies (ID, Name, Brand, Room) VALUES(@ID, @Name, @Brand, @Room)", dto).ConfigureAwait(false)); }