private void billFilter_EditorCreated(object sender, Telerik.Windows.Controls.Data.DataFilter.EditorCreatedEventArgs e) { RadComboBox cbx = e.Editor as RadComboBox; if (cbx != null) { switch (e.ItemPropertyDefinition.PropertyName) { case "StorageID": cbx.ItemsSource = StorageInfoVM.Storages; break; case "BrandID": cbx.ItemsSource = VMGlobal.PoweredBrands; break; } } else { OrganizationSelector os = e.Editor as OrganizationSelector; if (os != null) { switch (e.ItemPropertyDefinition.PropertyName) { case "OrganizationID": case "ToOrganizationID": os.ItemsSource = OrganizationLogic.GetSiblingOrganizations(VMGlobal.CurrentUser.OrganizationID); break; } } } SysProcessView.UIHelper.ToggleShowEqualFilterOperatorOnly(e.Editor); }
/// <summary> /// 入库单明细 /// </summary> //public static IList GetBillStoringDetails(int billID) //{ // var detailsContext = _query.LinqOP.Search<BillStoringDetails>(o => o.BillID == billID); // var productContext = _query.LinqOP.GetDataContext<ViewProduct>(); // var data = from details in detailsContext // from product in productContext // where details.ProductID == product.ProductID // select new ProductForBill // { // ProductCode = product.ProductCode, // BrandCode = product.BrandCode, // StyleCode = product.StyleCode, // ColorCode = product.ColorCode, // SizeName = product.SizeName, // Price = product.Price, // Quantity = details.Quantity // }; // return data.ToList(); //} /// <summary> /// 入库汇总 /// </summary> //public static DataTable AggregateStoring(CompositeFilterDescriptorCollection filters) //{ // var lp = _query.LinqOP; // var storingContext = lp.GetDataContext<BillStoring>().Where(o => o.OrganizationID == VMGlobal.CurrentUser.OrganizationID); // var storingDetailsContext = lp.GetDataContext<BillStoringDetails>(); // var productContext = lp.GetDataContext<ViewProduct>(); // //var storageContext = lp.GetDataContext<Storage>(); // var brandIDs = VMGlobal.PoweredBrands.Select(o => o.ID); // FilterBillWithBrand(storingContext, filters, brandIDs); // var data = from storing in storingContext // from storingDetails in storingDetailsContext // where storing.ID == storingDetails.BillID // from product in productContext // where product.ProductID == storingDetails.ProductID //&& brandIDs.Contains(product.BrandID) // //from storage in storageContext // //where storing.StorageID == storage.ID // select new StoreOIEntityForAggregation // { // ProductID = product.ProductID, // BrandID = product.BrandID, // StorageID = storing.StorageID, // CreateTime = storing.CreateTime.Date, // BillType = storing.BillType, // //ProductCode = product.ProductCode, // //BrandCode = product.BrandCode, // StyleCode = product.StyleCode, // //ColorCode = product.ColorCode, // //SizeName = product.SizeName, // //Price = product.Price, // NameID = product.NameID, // Quantity = storingDetails.Quantity // }; // data = (IQueryable<StoreOIEntityForAggregation>)data.Where(filters); // return new BillReportHelper().TransferSizeToHorizontal<DistributionProductForBrush>(AggregateBill(data)); //} #endregion public static IEnumerable <DistributionEntity> GetOtherShopStock(CompositeFilterDescriptorCollection filters) { var lp = _query.LinqOP; var shops = OrganizationLogic.GetSiblingShops(VMGlobal.CurrentUser.OrganizationID); var oids = shops.Where(o => o.ID != VMGlobal.CurrentUser.OrganizationID).Select(o => o.ID); var stockContext = lp.GetDataContext <Stock>(); var storageContext = lp.Search <Storage>(o => oids.Contains(o.OrganizationID) && o.Flag); var brandIDs = VMGlobal.PoweredBrands.Select(o => o.ID); var productContext = lp.Search <ViewProduct>(o => brandIDs.Contains(o.BrandID)); var data = from stock in stockContext from storage in storageContext where stock.StorageID == storage.ID && stock.Quantity != 0 from product in productContext where stock.ProductID == product.ProductID select new BillEntityForAggregation { OrganizationID = storage.OrganizationID, StyleCode = product.StyleCode, BrandID = product.BrandID, ProductID = product.ProductID, Quantity = stock.Quantity }; var filtedData = (IQueryable <BillEntityForAggregation>)data.Where(filters);//即使filters中有data没有的过滤属性,也不会出错,但是会产生0<>0的恒为假条件 var sum = filtedData.GroupBy(o => new { o.ProductID, o.OrganizationID }).Select(g => new { Key = g.Key, Quantity = g.Sum(o => o.Quantity) }).ToList(); var pids = sum.Select(o => o.Key.ProductID).ToArray(); var products = lp.Search <ViewProduct>(o => pids.Contains(o.ProductID)).ToList(); var result = sum.Select(o => { var product = products.First(p => p.ProductID == o.Key.ProductID); return(new DistributionEntity { ProductID = product.ProductID, ProductCode = product.ProductCode, StyleCode = product.StyleCode, BYQID = product.BYQID, ColorID = product.ColorID, SizeID = product.SizeID, Quantity = o.Quantity, OrganizationID = o.Key.OrganizationID, OrganizationName = shops.Find(c => c.ID == o.Key.OrganizationID).Name }); }).ToList(); foreach (var r in result) { r.ColorCode = VMGlobal.Colors.Find(o => o.ID == r.ColorID).Code; r.SizeName = VMGlobal.Sizes.Find(o => o.ID == r.SizeID).Name; var byq = VMGlobal.BYQs.Find(o => o.ID == r.BYQID); r.BrandID = byq.BrandID; r.BrandCode = VMGlobal.PoweredBrands.Find(o => o.ID == r.BrandID).Code; } return(result); //return new BillReportHelper().TransferSizeToHorizontal<DistributionEntity>(result); }
//获取所有机构信息 public ActionResult GetAllOrganizations(string organizationName, int pageIndex, int pageSize) { OrganizationLogic logic = new OrganizationLogic(); int rowCount; var data = logic.GetAllOrganizations(organizationName, pageIndex, pageSize, out rowCount); return(Json(new { Result = data, RowCount = rowCount })); }
void cbxBrand_SelectionChanged(object sender, SelectionChangedEventArgs e) { lbxLeft.Items.Clear(); lbxRight.Items.Clear(); var cb = sender as RadComboBox; if (cb.SelectedIndex != -1)//奇怪之处:就算cb.SelectedIndex == -1,cb.SelectedValue还是等于原选项的值 { _organizations = OrganizationLogic.GetChildOrganizations(VMGlobal.CurrentUser.OrganizationID, (int)cb.SelectedValue, false); _organizations.ForEach(o => lbxLeft.Items.Add(o)); } }
private void btnSave_Click(object sender, RoutedEventArgs e) { if (!View.Extension.UIHelper.IsValid(this)) { return; } if (lbxRight.Items.Count == 0) { MessageBox.Show("未选择机构"); return; } BatchPriceFloat bcd = (BatchPriceFloat)this.DataContext; var byq = ProductLogic.GetBYQ(bcd.BrandID, bcd.Year, bcd.Quarter); if (byq == null) { MessageBox.Show("未找到相应的品牌年份季度信息"); return; } bcd.OrganizationIDs = new List <int>(); foreach (var item in lbxRight.Items) { bcd.OrganizationIDs.Add(((SysOrganization)item).ID); } List <OrganizationPriceFloat> ocds = new List <OrganizationPriceFloat>(); bcd.OrganizationIDs.ForEach(oid => ocds.Add(new OrganizationPriceFloat { BYQID = byq.ID, FloatRate = bcd.FloatRate, LastNumber = bcd.LastNumber, OrganizationID = oid, CreatorID = VMGlobal.CurrentUser.ID, CreateTime = DateTime.Now })); try { OrganizationLogic.BatchSavePriceFloat(ocds); MessageBox.Show("设置成功"); if (SetCompleted != null) { SetCompleted(); } InitContext(); } catch (Exception ex) { MessageBox.Show("设置失败\n失败原因:" + ex.Message); } }
//保存机构信息 public ActionResult SaveOrganization(Organization org) { if (org.OrganizationId == null || org.OrganizationId.ToString().Length == 0) { org.OrganizationId = Guid.Empty; } if (org.ParentId == org.OrganizationId) { return(Json(new { Result = false, ErrorMessage = String.Format("[{0}] 不可将 [{0}] 指定为所属机构", org.OrganizationName) })); } OrganizationLogic logic = new OrganizationLogic(); var result = logic.SaveOrganization(org); return(Json(result)); }
public OrganizationServiceTestBase() { Logger = new Mock <ILogger <DataAccess.Services.OrganizationService> >().Object; var mapServiceProvider = new MapServiceProvider( (new Mock <IHostingEnvironment>()).Object, new ApplicationConfiguration((new Mock <IConfigurationRoot>()).Object), (new Mock <IOptions <ProxyServerSettings> >()).Object, new Mock <ILogger <MapServiceProvider> >().Object); OrganizationLogic = new OrganizationLogic(new ChannelAttachmentLogic(), new WebPageLogic(), AddressLogic); OrganizationRepoMock = new Mock <IOrganizationVersionedRepository>(); OrganizationNameRepoMock = new Mock <IOrganizationNameRepository>(); unitOfWorkMockSetup.Setup(uw => uw.CreateRepository <IOrganizationVersionedRepository>()).Returns(OrganizationRepoMock.Object); unitOfWorkMockSetup.Setup(uw => uw.CreateRepository <IRepository <OrganizationVersioned> >()).Returns(OrganizationRepoMock.Object); unitOfWorkMockSetup.Setup(uw => uw.CreateRepository <IOrganizationNameRepository>()).Returns(OrganizationNameRepoMock.Object); }
/// <summary> /// 调拨单查询(机构收货入库使用) /// </summary> public static List <CannibalizeSearchEntity> SearchBillCannibalizeForStoring() { var lp = VMGlobal.DistributionQuery.LinqOP; var cannibalizeContext = lp.GetDataContext <BillCannibalize>(); var detailContext = lp.GetDataContext <BillCannibalizeDetails>(); var brandIDs = VMGlobal.PoweredBrands.Select(o => o.ID); var dataQuery = from d in cannibalizeContext where d.ToOrganizationID == VMGlobal.CurrentUser.OrganizationID && !d.Status && brandIDs.Contains(d.BrandID) select new CannibalizeSearchEntity { ID = d.ID, OrganizationID = d.OrganizationID, Remark = d.Remark, Code = d.Code, CreateTime = d.CreateTime, BrandID = d.BrandID }; var cannibalizes = dataQuery.ToList(); var bIDs = cannibalizes.Select(o => (int)o.ID); var detailQuery = from detail in detailContext where bIDs.Contains(detail.BillID) select new { detail.BillID, detail.ProductID, detail.Quantity }; var details = detailQuery.ToList(); //var sum = cannibalizeDetailContext.Where(o => bIDs.Contains(o.BillID)).GroupBy(o => o.BillID).Select(g => new { BillID = g.Key, Quantity = g.Sum(o => o.Quantity) }).ToList(); var sum = details.GroupBy(o => o.BillID).Select(g => new { BillID = g.Key, Quantity = g.Sum(o => o.Quantity) }).ToList(); FloatPriceHelper fpHelper = new FloatPriceHelper(); var siblings = OrganizationLogic.GetSiblingOrganizations(VMGlobal.CurrentUser.OrganizationID); cannibalizes.ForEach(d => { d.OrganizationName = siblings.Find(o => o.ID == d.OrganizationID).Name; d.BrandName = VMGlobal.PoweredBrands.Find(o => o.ID == d.BrandID).Name; d.Quantity = sum.Find(o => o.BillID == d.ID).Quantity; var tempDetails = details.FindAll(o => o.BillID == d.ID); foreach (var detail in tempDetails) { var price = fpHelper.GetFloatPrice(VMGlobal.CurrentUser.OrganizationID, detail.ProductID); d.TotalPrice += price * detail.Quantity; } }); return(cannibalizes); }
public string Get() { try { string dbConn = _configuration.GetSection("ConnectionStrings").GetSection("StorageConnection").Value; var entitiesList = new OrganizationLogic().GetOrganizationData(dbConn); var json = new OrganizationLogic().GetOrganizationDataAsJson(entitiesList); return(json); } catch (Exception e) { return($"Something went wrong: {e.Message}"); } }
/// <summary> /// 根据传入的字符串标示获取地区、省份或机构类型 /// </summary> /// <param name="apt">AreaID、ProvienceID或OrganizationTypeID</param> public static void SetAPTForFilter(string apt, RadComboBox cbx) { switch (apt) { case "AreaID": cbx.ItemsSource = OrganizationLogic.GetAreas(); break; case "ProvienceID": cbx.ItemsSource = OrganizationLogic.GetProvinces(); break; case "OrganizationTypeID": cbx.ItemsSource = OrganizationLogic.GetOrganizationTypes(VMGlobal.CurrentUser.OrganizationID); break; } }
/// <summary> /// 获取折扣 /// </summary> public decimal GetDiscount(int byqID, int organizationID) { var dc = _discountCache.Find(o => o.OrganizationID == organizationID && o.BYQID == byqID); if (dc == null) { dc = OrganizationLogic.GetOrganizationContractDiscount(byqID, organizationID); if (dc == null)//未设置折扣 { dc = new OrganizationContractDiscount { OrganizationID = organizationID, BYQID = byqID, Discount = 100 } } ; _discountCache.Add(dc); } return(dc.Discount); } }
public void ParentSubsidiaryCountValidation() { // Arrange List <BusinessEntity> entitiesList; var storageConn = "DefaultEndpointsProtocol=https;AccountName=entitymanagement;AccountKey=XWXrZvjbYItcbQVBhxeT1oHiLn37C3Dx8x983MBljRJ3iUL2yCeL1jXgZn+ps166O5e7KwSGE6jvkHUoeJz4Rw==;EndpointSuffix=core.windows.net"; var parentCount = 0; var subsidiariesCount = 0; // Act entitiesList = new OrganizationLogic().GetOrganizationData(storageConn); // Assert foreach (var entity in entitiesList) { parentCount += entity.Parents.Count; subsidiariesCount += entity.Subsidiaries.Count; } Assert.AreEqual(parentCount, subsidiariesCount); }
private static void Main(string[] args) { using (var db = new BloggingContext()) { BlogLogic newBlog = new BlogLogic(); //newBlog.createAndSaveBlock(); //displaying all the blogs //newBlog.DisplayBlogs(); OrganizationLogic newOrg = new OrganizationLogic(); //newOrg.NewUserForOrg(); //newOrg.PrintOrganizations(); //newOrg.PrintOrganizaionsAndTheirUsers(); //newOrg.MakeOrganization(); CountryLogic newCountryLogic = new CountryLogic(); //newCountryLogic.PrintCountriesAndOrgs(); Console.WriteLine("Press any key to exit..."); Console.ReadKey(); } }
//public SysArea SelectedArea //{ // get { return _selectedArea; } // set // { // if (this._selectedArea != value) // { // this._selectedArea = value; // this.OnPropertyChanged("SelectedArea"); // this.FilteredProvinces.View.Refresh(); // this.FilteredCities.View.Refresh(); // } // } //} //public SysProvience SelectedProvince //{ // get { return _selectedProvince; } // set // { // if (this._selectedProvince != value) // { // this._selectedProvince = value; // this.OnPropertyChanged("SelectedProvince"); // this.FilteredCities.View.Refresh(); // } // } //} static Locations() { _areas = OrganizationLogic.GetAreas(); _provinces = OrganizationLogic.GetProvinces(); _cities = OrganizationLogic.GetCities(); }
public void SubsidiariesValidation() { // Arrange var companyB = new BusinessEntity() { CompanyName = "Company B", OrganizationalNumber = "555555-0002", InternalCompanyName = "102", CompanyType = "AB", Acquisition = "NO", AcquisitionRegistrationDate = "2010-03-04", BoardSeat = "Stockholm", BoardMembers = new List <string>() { "John Doe", "Jane Doe" }, Auditor = "PwC", Parents = new List <BusinessRelation>() { new BusinessRelation() { OrganizationalNumber = "555555-0001", Share = "100" } }, Subsidiaries = new List <BusinessRelation>() { new BusinessRelation() { OrganizationalNumber = "555555-0003", Share = "50" }, new BusinessRelation() { OrganizationalNumber = "555555-0004", Share = "100" }, new BusinessRelation() { OrganizationalNumber = "555555-0005", Share = "100" } }, AdministeredBy = "John Smith" }; var companyF = new BusinessEntity() { CompanyName = "Company F", OrganizationalNumber = "555555-0006", InternalCompanyName = "106", CompanyType = "AB", Acquisition = "NO", AcquisitionRegistrationDate = "2000-01-04", BoardSeat = "Stockholm", BoardMembers = new List <string>() { "James Doe", "Judith Doe" }, Auditor = "PwC", Parents = new List <BusinessRelation>() { new BusinessRelation() { OrganizationalNumber = "555555-0002", Share = "100" } }, Subsidiaries = new List <BusinessRelation>() { new BusinessRelation() { OrganizationalNumber = "555555-0007", Share = "100" }, new BusinessRelation() { OrganizationalNumber = "555555-0004", Share = "100" }, new BusinessRelation() { OrganizationalNumber = "555555-0005", Share = "100" } }, AdministeredBy = "John Smith" }; var entitiesList = new List <BusinessEntity> { companyB, companyF }; BusinessRelation subsidiary = new BusinessRelation(); // Act var result = new OrganizationLogic().AdjustForMissingSubsidiary(entitiesList); //Assert foreach (var item in result) { if (item.CompanyName == "Company B") { subsidiary = (from hits in item.Subsidiaries where hits.OrganizationalNumber == "555555-0006" select hits).FirstOrDefault(); } } ; Assert.IsTrue(subsidiary.OrganizationalNumber == "555555-0006" && subsidiary.Share == "100"); }
public OrganizationController(OrganizationLogic organizationLogic) { _organizationLogic = organizationLogic; }