async void LvItems_ItemTapped(object sender, ItemTappedEventArgs e) { ArticleGroup g = e.Item as ArticleGroup; article.GroupID = g.ID; await App.Current.MainPage.Navigation.PushAsync(new ArticlePage (article)); }
public ArticleAccountingPriceTest() { articleGroup = new ArticleGroup("Бытовая техника", "Бытовая техника"); articleGroup.SalaryPercent = 15; articleGroup.Id = 8; measureUnit = new MeasureUnit("шт.", "Штука", "123", 0); measureUnit.Id = 17; article1 = new Article("Пылесос", articleGroup, measureUnit, true); article1.Id = 9; article2 = new Article("Фен", articleGroup, measureUnit, true); article2.Id = 29; article3 = new Article("Утюг", articleGroup, measureUnit, true); article3.Id = 421; articleAccountingPrice1 = new ArticleAccountingPrice(article1, 1M); articleAccountingPrice2 = new ArticleAccountingPrice(article2, 1001M); articleAccountingPrice3 = new ArticleAccountingPrice(article3, 1192.45M); articleAccountingPriceList1 = new List <ArticleAccountingPrice>(); articleAccountingPriceList1.Add(articleAccountingPrice1); articleAccountingPriceList1.Add(articleAccountingPrice2); articleAccountingPriceList1.Add(articleAccountingPrice3); }
public void OrderPurchaseItemsByStore() { var dairy = new ArticleGroup("Dairy"); var vegetables = new ArticleGroup("Vegetables"); var tomato = new Article { Name = "Tomato", ArticleGroup = vegetables, IsInventory = false }; var milk = new Article { Name = "Milk", ArticleGroup = dairy, IsInventory = false }; var bag = new Unit("Bag"); var purchaseItem1 = new PurchaseItem(tomato, 1, bag); var purchaseItem2 = new PurchaseItem(milk, 3, bag); var shoppingOrder1 = new ShoppingOrder(vegetables, 50); var shoppingOrder2 = new ShoppingOrder(dairy, 30); var compartments = new[] { shoppingOrder1, shoppingOrder2 }; var store = new Store("London", compartments); var purchaseItems = new[] { purchaseItem1, purchaseItem2 }; var testee = new OrderPurchaseItemsByStoreAction(); var results = testee.OrderPurchaseItemsByStore(store, purchaseItems).ToList(); results.Should().HaveCount(2); results.Should().BeEquivalentTo(new [] { purchaseItem2, purchaseItem1 }); }
/// <summary> /// Проверка названия группы товара на уникальность /// </summary> /// <param name="model"></param> private void CheckArticleGroupNameUniqueness(ArticleGroup articleGroup) { if (!IsNameUnique(articleGroup)) { throw new Exception("Группа товаров с таким названием в этой же родительской группе уже существует."); } }
public ActionResult Index(ArticleGroupModelView model) { try { List <ArticleGroup> list = db.ArticleGroups.ToList(); if (model.Id > 0) { //update ArticleGroup conf = db.ArticleGroups.SingleOrDefault(x => x.ArticleGroupId == model.Id); conf.ArticleGroupId = model.Id; conf.Name = model.Name; conf.Description = model.Description; db.SaveChanges(); } else { //Insert ArticleGroup manu = new ArticleGroup { Name = model.Name, Description = model.Description }; db.ArticleGroups.Add(manu); db.SaveChanges(); } return(View(model)); } catch (Exception ex) { throw ex; } }
public void GenerateComponents() { var vegetables = new ArticleGroup("Vegetables"); var tomato = new Article { Name = "Tomato", ArticleGroup = vegetables, IsInventory = false }; var salad = new Article { Name = "Salad", ArticleGroup = vegetables, IsInventory = false }; var bag = new Unit("Bag"); var piece = new Unit("Piece"); var ingredient1 = new Ingredient(tomato, 2, bag); var ingredient2 = new Ingredient(salad, 3, bag); var ingredient3 = new Ingredient(tomato, 1, piece); var ingredient4 = new Ingredient(salad, 5, bag); var recipe1 = new Recipe("Blub", 3, new[] { ingredient1, ingredient2 }); var recipe2 = new Recipe("Blub", 3, new[] { ingredient3, ingredient4 }); var testee = new GeneratePurchaseItemsForRecipesAction(); var results = testee.GeneratePurchaseItems(new[] { recipe1, recipe2 }).ToList(); results.Should().HaveCount(3); results.Should().Contain(x => x.Article == tomato && x.Quantity == 2 && x.Unit == bag); results.Should().Contain(x => x.Article == tomato && x.Quantity == 1 && x.Unit == piece); results.Should().Contain(x => x.Article == salad && x.Quantity == 8 && x.Unit == bag); }
public void Test_CreateUpdateDeleteThread() { ArticleGroup articleGroup = Test_ArticleGroups.Create(this.DataStore, Workmate.Components.InstanceContainer.ApplicationSettings, this.Application, this.Random); ArticleGroupThreadManager manager = new ArticleGroupThreadManager(this.DataStore); ArticleGroupThread record = Create(this.DataStore, Workmate.Components.InstanceContainer.ApplicationSettings, this.Application, articleGroup, this.Random); ArticleGroupThread recordToCompare; for (int i = 0; i < this.DefaultUpdateTestIterations; i++) { PopulateWithRandomValues(record, this.DummyDataManager, this.Random); recordToCompare = record; manager.Update(record); record = manager.GetArticleGroupThread(record.ArticleGroupThreadId); string errors = string.Empty; // TODO (Roman): relax datetime comparisons Assert.IsTrue(DebugUtility.ArePropertyValuesEqual(record, recordToCompare, out errors), errors); Trace.WriteLine("Update test successfull."); } Delete(this.DataStore, record); Test_ArticleGroups.Delete(this.DataStore, articleGroup); }
internal static void PopulateWithRandomValues(ArticleGroup record, DummyDataManager dtm, Random random) { record.Name = "TestArticleGroup " + random.Next(1000000, 10000000); record.Description = "Description " + random.Next(1000000, 10000000); record.IsActive = DebugUtility.FlipCoin(random); record.IsModerated = DebugUtility.FlipCoin(random); }
public GroupViewItem(ArticleGroup group, IEnumerable <Article> articles) { _group = group; Articles = articles == null ? new List <Article>() : articles.ToList(); IsExpanded = false; ArticlesCount = Articles.Count; Name = _group.GroupName; }
public void CreateArticleGroup() { var name = "Gemüse"; var testee = new ArticleGroup(name); testee.Name.Should().Be(name); }
public List <Article> GetArticlesInGroup(ArticleGroup @group) { _repository.MaybeAs <IManagmentEntityWithUser>().Do((c) => c.SetUser(_currentUser)); var listOfArtcile = @group.Groups.Select(name => _service.GetArticlesByParams(c => c.ArticleName == name, c => c.ArticleId, 0, 1).FirstOrDefault()).ToList(); var res = _service.GetArticlesByParams(c => group.Groups.Contains(c.ArticleName), c => c.ArticleId); group.Articles = listOfArtcile; return(listOfArtcile); }
private void CheckPossibilityToDelete(ArticleGroup articleGroupToDelete, User user) { user.CheckPermission(Permission.ArticleGroup_Delete); if (articleGroupRepository.Query <Article>().Where(x => x.ArticleGroup.Id == articleGroupToDelete.Id).ToList <Article>().Any()) { throw new Exception("Невозможно удалить группу, в которой имеются товары."); } }
public void Init() { storage = new Storage("Тестовое место хранения", StorageType.DistributionCenter) { Id = 1 }; writeoffReason = new WriteoffReason("Тестовая причина списания") { Id = 2 }; var juridicalLegalForm = new LegalForm("ООО", EconomicAgentType.JuridicalPerson) { Id = 3 }; var juridicalPerson = new JuridicalPerson(juridicalLegalForm) { Id = 4 }; var juridicalPerson2 = new JuridicalPerson(juridicalLegalForm) { Id = 15 }; accountOrganization = new AccountOrganization("Тестовое юридическое лицо", "Тестовое юридическое лицо", juridicalPerson) { Id = 5 }; var provider = new Provider("Тестовый поставщик", new ProviderType("Тестовый тип поставщика"), ProviderReliability.Medium, 5) { Id = 6 }; var providerOrganization = new ProviderOrganization("Организация поставщика", "Организация поставщика", juridicalPerson2); var articleGroup = new ArticleGroup("Тестовая группа", "Тестовая группа"); var measureUnit = new MeasureUnit("шт.", "Штука", "123", 0) { Id = 1 }; var customDeclarationNumber = new String('0', 25); article = new Article("Тестовый товар А", articleGroup, measureUnit, true); providerContract = new ProviderContract(accountOrganization, providerOrganization, "Договор", "4645", DateTime.Now, DateTime.Now); provider.AddProviderContract(providerContract); user = new User(new Employee("Иван", "Иванов", "Иванович", new EmployeePost("Менеджер"), null), "Иванов Иван", "ivanov", "pa$$w0rd", new Team("Тестовая команда", null), null); receiptWaybill = new ReceiptWaybill("123АБВ", DateTime.Today.AddDays(1), storage, accountOrganization, provider, 1234.5M, 0M, new ValueAddedTax("18%", 18), providerContract, customDeclarationNumber, user, user, DateTime.Now); receiptWaybillRow = new ReceiptWaybillRow(article, 100, 1234.5M, receiptWaybill.PendingValueAddedTax); receiptWaybill.AddRow(receiptWaybillRow); writeoffWaybill = new WriteoffWaybill("123", DateTime.Today, storage, accountOrganization, writeoffReason, user, user, DateTime.Now); priceLists = new List <ArticleAccountingPrice>() { new ArticleAccountingPrice(article, 10M) }; }
public JsonResult DeleteArticleGroup(int Id) { bool result = false; ArticleGroup ArticleGroup = db.ArticleGroups.Find(Id); db.ArticleGroups.Remove(ArticleGroup); db.SaveChanges(); return(Json(result, JsonRequestBehavior.AllowGet)); }
public void CreateShoppingOrder() { var order = 3; var ingredientGroup = new ArticleGroup("Vegetables"); var testee = new ShoppingOrder(ingredientGroup, order); testee.ArticleGroup.Should().Be(ingredientGroup); testee.Order.Should().Be(order); }
public void Init() { numberA = "98"; var legalForm = new LegalForm("ООО", EconomicAgentType.JuridicalPerson); juridicalPersonA = new JuridicalPerson(legalForm); juridicalPersonB = new JuridicalPerson(legalForm); juridicalPersonC = new JuridicalPerson(legalForm); juridicalPersonD = new JuridicalPerson(legalForm); senderOrganizationA = new AccountOrganization("Тестовое юридическое лицо A", "Тестовое юридическое лицо A", juridicalPersonA); senderOrganizationB = new AccountOrganization("Тестовое юридическое лицо B", "Тестовое юридическое лицо B", juridicalPersonB); receiverOrganizationC = new AccountOrganization("Тестовое юридическое лицо C", "Тестовое юридическое лицо C", juridicalPersonC); receiverOrganizationD = new AccountOrganization("Тестовое юридическое лицо D", "Тестовое юридическое лицо D", juridicalPersonD); storageA = new Storage("Тестовое хранилище A", StorageType.DistributionCenter) { Id = 1 }; storageB = new Storage("Тестовое хранилище B", StorageType.TradePoint) { Id = 2 }; articleGroup = new ArticleGroup("Тестовая группа", "Тестовая группа"); measureUnit = new MeasureUnit("шт.", "Штука", "123", 0) { Id = 1 }; articleA = new Article("Тестовый товар A", articleGroup, measureUnit, true); articleB = new Article("Тестовый товар B", articleGroup, measureUnit, true); articleC = new Article("Тестовый товар C", articleGroup, measureUnit, true); valueAddedTax = new ValueAddedTax("18%", 18); receiptWaybillRowA1 = new ReceiptWaybillRow(articleA, 300, 3000, new ValueAddedTax("18%", 18)); receiptWaybillRowA2 = new ReceiptWaybillRow(articleA, 400, 4000, new ValueAddedTax("18%", 18)); receiptWaybillRowB = new ReceiptWaybillRow(articleB, 20, 250, new ValueAddedTax("18%", 18)); receiptWaybillRowC = new ReceiptWaybillRow(articleC, 20, 250, new ValueAddedTax("18%", 18)); rowA1_1 = new MovementWaybillRow(receiptWaybillRowA1, 60, valueAddedTax); rowA1_2 = new MovementWaybillRow(receiptWaybillRowA1, 22, valueAddedTax); rowA2_1 = new MovementWaybillRow(receiptWaybillRowA2, 40, valueAddedTax); rowA2_2 = new MovementWaybillRow(receiptWaybillRowA2, 55, valueAddedTax); rowB = new MovementWaybillRow(receiptWaybillRowB, 15, valueAddedTax); rowC = new MovementWaybillRow(receiptWaybillRowC, 18, valueAddedTax); priceLists = new List <ArticleAccountingPrice>() { new ArticleAccountingPrice(articleA, 100), new ArticleAccountingPrice(articleB, 200), new ArticleAccountingPrice(articleC, 300) }; user = new User(new Employee("Иван", "Иванов", "Иванович", new EmployeePost("Менеджер"), null), "Иванов Иван", "ivanov", "pa$$w0rd", new Team("Тестовая команда", null), null); }
internal static void Delete(IDataStore dataStore, ArticleGroup articleGroup) { ArticleGroupManager manager = new ArticleGroupManager(dataStore); BusinessObjectActionReport <DataRepositoryActionStatus> report = manager.Delete(articleGroup); Assert.AreEqual(DataRepositoryActionStatus.Success, report.Status); Assert.IsNull(manager.GetArticleGroup(articleGroup.ArticleGroupId)); Trace.WriteLine("Successfully deleted articleGroup " + articleGroup.Name); }
public async Task <ArticleGroup> GetArticleGroup(int articleGroupId, bool expanded) { IQueryable <ArticleGroup> qry = _context.ArticleGroups.Where(grp => grp.Id == articleGroupId).AsQueryable(); if (expanded) { qry = qry.Include(grp => grp.ArticleUserSettings); } ArticleGroup group = await qry.FirstOrDefaultAsync(grp => grp.Id == articleGroupId); return(group); }
public async Task <ArticleGroupResponse> AddArticleGroupAsync(AddArticleGroupRequest request) { ArticleGroup articleGroup = _articleGroupMapper.Map(request); ArticleGroup result = _articleGroupRespository.Add(articleGroup); int modifiedRecords = await _articleGroupRespository.UnitOfWork.SaveChangesAsync(); _logger.LogInformation(Events.Add, Messages.NumberOfRecordAffected_modifiedRecords, modifiedRecords); _logger.LogInformation(Events.Add, Messages.ChangesApplied_id, result?.Id); return(_articleGroupMapper.Map(result)); }
public ArticleGroup InitGroup(ArticleGroup group, IEnumerable <Article> articles) { bool flag = false; if (articles == null || !articles.Any()) { articles = IocHelper.ArticleService.GetArticlesByParams(c => group.Groups.Contains(c.ArticleName), c => c.ArticleId); flag = true; } @group.Articles = flag ? articles.ToList() : articles.Where(c => @group.Groups.Contains(c.ArticleName)).ToList(); return(@group); }
public void ArticleGroup_Null_NameFor1C_In_Constractor_Must_Be_Fail() { try { var articleGroup = new ArticleGroup("Тестовая группа", null); Assert.Fail("Исключение не сгенерировано."); } catch (Exception ex) { Assert.AreEqual("Укажите бухгалтерское название группы товаров.", ex.Message); } }
public async Task <ArticleGroupResponse> GetArticleGroupAsync(Guid id) { if (id == null) { throw new ArgumentNullException(); } ArticleGroup entity = await _articleGroupRespository.GetAsync(id); _logger.LogInformation(Events.GetById, Messages.TargetEntityChanged_id, entity?.Id); return(_articleGroupMapper.Map(entity)); }
public void ArticleGroup_Initial_Parameters_By_Constractor_Must_Be_Set() { var articleGroup = new ArticleGroup("Тестовая группа", "Тестовая бухгалтерская группа"); Assert.IsNotNull(articleGroup.Childs); Assert.AreEqual(0, articleGroup.Childs.Count()); Assert.AreEqual(String.Empty, articleGroup.Comment); Assert.AreEqual(0.0M, articleGroup.MarkupPercent); Assert.AreEqual(0.0M, articleGroup.SalaryPercent); Assert.AreEqual("Тестовая группа", articleGroup.Name); Assert.AreEqual("Тестовая бухгалтерская группа", articleGroup.NameFor1C); Assert.AreEqual(0, articleGroup.Id); Assert.IsNull(articleGroup.Parent); }
public void CreateArticle() { var name = "Salat"; var ingredientGroup = new ArticleGroup("Gemüse"); var isInventory = true; var testee = new Article { Name = name, ArticleGroup = ingredientGroup, IsInventory = isInventory }; testee.Name.Should().Be(name); testee.ArticleGroup.Should().Be(ingredientGroup); testee.IsInventory.Should().Be(isInventory); }
public ArticleGroup Map(AddArticleGroupRequest request) { if (request == null) { return(null); } ArticleGroup articleGroup = new ArticleGroup { Name = request.Name, }; return(articleGroup); }
public ActionResult AddEditArticleGroup(int Id) { List <ArticleGroup> list = db.ArticleGroups.ToList(); ArticleGroupModelView model = new ArticleGroupModelView(); if (Id > 0) { ArticleGroup manu = db.ArticleGroups.SingleOrDefault(x => x.ArticleGroupId == Id); model.Id = manu.ArticleGroupId; model.Name = manu.Name; model.Description = manu.Description; } return(PartialView("Partial2", model)); }
public void ArticleGroup_Initial_Parameters_Must_Be_Set() { var articleGroup = new ArticleGroup("Тестовая группа", "Тестовая группа") { Id = 1, Comment = "Описание", MarkupPercent = 12.2M, SalaryPercent = 15.5M }; Assert.IsNotNull(articleGroup.Childs); Assert.AreEqual("Описание", articleGroup.Comment); Assert.AreEqual(12.2M, articleGroup.MarkupPercent); Assert.AreEqual(15.5M, articleGroup.SalaryPercent); Assert.AreEqual("Тестовая группа", articleGroup.Name); Assert.AreEqual(1, articleGroup.Id); Assert.IsNull(articleGroup.Parent); }
public ArticleGroup Map(EditArticleGroupRequest request) { if (request == null) { return(null); } ArticleGroup articleGroup = new ArticleGroup { Id = request.Id, Name = request.Name, }; return(articleGroup); }
public ArticleGroupResponse Map(ArticleGroup articleGroup) { if (articleGroup == null) { return(null); } ; ArticleGroupResponse response = new ArticleGroupResponse { Id = articleGroup.Id, Name = articleGroup.Name }; return(response); }
public void ArticleGroup_Delete_ChildGroup_Must_Be_Ok() { var parentGroup = new ArticleGroup("Родительская группа", "Родительская группа") { Id = 1 }; var articleGroup = new ArticleGroup("Тестовая группа", "Тестовая группа") { Id = 2 }; parentGroup.AddChildGroup(articleGroup); parentGroup.RemoveChildGroup(articleGroup); Assert.IsNull(articleGroup.Parent); Assert.AreEqual(0, parentGroup.Childs.Count()); }
public bool ArticleGroupCreateDeleteUpdate(ArticleGroup articleGroup, UserAction ua) { bool result = false; string commandText = string.Empty; switch (ua) { case UserAction.Create: commandText = "INSERT INTO ArticleGroup (ArticleGroupID, ArticleGroupName, ArticleGroupParentID, ArticleIDs) VALUES (" + articleGroup.ID + ", '" + articleGroup.Name + "', " + articleGroup.ArticleGroupParentID + ", '" + articleGroup.ArticleIDs + "')"; break; case UserAction.Delete: commandText = "DELETE FROM ArticleGroup WHERE (ArticleGroupID = "+articleGroup.ID +")"; break; case UserAction.Update: commandText = "UPDATE ArticleGroup SET ArticleGroupName = '" + articleGroup.Name + "', ArticleGroupParentID = " + articleGroup.ArticleGroupParentID + ", ArticleIDs = '" + articleGroup.ArticleIDs + "'"; break; } using (SqlConnection conn = new SqlConnection(DataHelper2.SqlConnectionString)) { using (SqlCommand comm = new SqlCommand()) { comm.CommandText = commandText; comm.Connection = conn; conn.Open(); try { comm.ExecuteNonQuery(); result = true; } catch (Exception ex) { throw new Exception(ex.Message); } } } return result; }
public List<ArticleGroup> GetArticleGroupsByParentID(int parentID, int count) { List<ArticleGroup> list = new List<ArticleGroup>(); string commText = string.Empty; switch (count) { case 0: commText = "SELECT ArticleGroup.* FROM ArticleGroup WHERE (ArticleGroupParentID = "+parentID+") "; break; default: commText = "select top " + count.ToString() + " * from FROM ArticleGroup WHERE (ArticleGroupParentID = " + parentID + ") "; break; } using (SqlConnection conn = new SqlConnection(DataHelper2.SqlConnectionString)) { { using (SqlCommand comm = new SqlCommand()) { comm.Connection = conn; comm.CommandText = commText; conn.Open(); using (SqlDataReader reader = comm.ExecuteReader()) { while (reader.Read()) { ArticleGroup group = new ArticleGroup(); group.ID = int.Parse(reader["ArticleGroupID"].ToString()); group.ArticleIDs = reader["ArticleIDs"].ToString(); group.ArticleGroupParentID = int.Parse(reader["ArticleGroupParentID"].ToString()); group.Name = reader["ArticleGroupName"].ToString(); list.Add(group); } } } } } return list; }
public ArticleGroup GetArticleGroupByArticleGroupID(int articleGroupID) { ArticleGroup group = new ArticleGroup(); string commText = "SELECT ArticleGroup.* FROM ArticleGroup WHERE (ArticleGroupID = " + articleGroupID + ") "; using (SqlConnection conn = new SqlConnection(DataHelper2.SqlConnectionString)) { { using (SqlCommand comm = new SqlCommand()) { comm.Connection = conn; comm.CommandText = commText; conn.Open(); using (SqlDataReader reader = comm.ExecuteReader()) { while (reader.Read()) { group.ID = int.Parse(reader["ArticleGroupID"].ToString()); group.ArticleIDs = reader["ArticleIDs"].ToString(); group.ArticleGroupParentID = int.Parse(reader["ArticleGroupParentID"].ToString()); group.Name = reader["ArticleGroupName"].ToString(); } } } } } return group; }