Exemplo n.º 1
0
        /// <summary>
        /// 查询PM
        /// </summary>
        /// <param name="queryCriteria"></param>
        /// <param name="totalCount"></param>
        /// <returns></returns>
        public DataTable QueryProductManagerInfo(ProductManagerQueryFilter queryCriteria, out int totalCount)
        {
            DataCommand dc = DataCommandManager.GetDataCommand("QueryProductManagerInfo");

            if (string.IsNullOrEmpty(queryCriteria.UserName))
            {
                dc.SetParameterValue("@PMUserName", "");
            }
            else
            {
                dc.SetParameterValue("@PMUserName", "%" + queryCriteria.UserName.Trim() + "%");
            }
            dc.SetParameterValue("@PMID", string.IsNullOrEmpty(queryCriteria.UserID) ? "" : queryCriteria.UserID);

            dc.SetParameterValue("@Status", queryCriteria.Status == null ? -999 : (int)queryCriteria.Status);
            dc.SetParameterValue("@CompanyCode", "8601");

            dc.SetParameterValue("@SortField", queryCriteria.PagingInfo.SortBy);
            dc.SetParameterValue("@PageSize", queryCriteria.PagingInfo.PageSize);
            dc.SetParameterValue("@PageCurrent", queryCriteria.PagingInfo.PageIndex);

            var source = dc.ExecuteDataTable();

            totalCount = Convert.ToInt32(dc.GetParameterValue("@TotalCount"));

            return(source);
        }
Exemplo n.º 2
0
        void UCProductLineDetail_Loaded(object sender, RoutedEventArgs e)
        {
            Loaded -= new RoutedEventHandler(UCProductLineDetail_Loaded);

            var queryFilter = new ProductManagerQueryFilter()
            {
                PMQueryType = ECCentral.BizEntity.Common.PMQueryType.AllValid.ToString(),
                UserName    = CPApplication.Current.LoginUser.LoginName,
                CompanyCode = CPApplication.Current.CompanyCode
            };
            List <BackupPMUser> bakpmlist = new List <BackupPMUser>();

            new PMQueryFacade(CPApplication.Current.CurrentPage).QueryPMList(queryFilter, (obj, args) =>
            {
                args.Result.ForEach(p => {
                    BackupPMUser bakpm = new BackupPMUser();
                    bakpm.UserSysNo    = p.SysNo;
                    bakpm.UserName     = p.UserInfo.UserDisplayName;
                    bakpm.IsChecked    = false;
                    if (this.VM.BackupPMList != null && this.VM.BackupPMList.Contains(p.SysNo))
                    {
                        bakpm.IsChecked = true;
                    }

                    bakpmlist.Add(bakpm);
                });
                this.VM.BackupAllPMList = bakpmlist;
            });
        }
Exemplo n.º 3
0
        public List <ProductManagerInfo> QueryPMList(ProductManagerQueryFilter query)
        {
            List <ProductManagerInfo> returnList = new List <ProductManagerInfo>();

            returnList = ObjectFactory <ProductManagerAppService> .Instance.GetPMList((PMQueryType)Enum.Parse(typeof(PMQueryType), query.PMQueryType), query.UserName, query.CompanyCode);

            return(returnList);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 查询PM List
        /// </summary>
        /// <param name="queryFilter"></param>
        /// <param name="callback"></param>
        public void QueryPMList(ProductManagerQueryFilter queryFilter, EventHandler <RestClientEventArgs <List <ProductManagerInfo> > > callback)
        {
            string relativeUrl = "/IMService/PM/QueryPMList";

            restClient.Query <List <ProductManagerInfo> >(relativeUrl, queryFilter, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                callback(obj, args);
            });
        }
Exemplo n.º 5
0
        public QueryResult QueryProductManagerInfo(ProductManagerQueryFilter request)
        {
            if (request == null)
            {
                throw new BizException(ResouceManager.GetMessageString("IM.ProductManager", "ProductManagerCondtionIsNull"));
            }
            int totalCount;
            var data = ObjectFactory <IProductManagerQueryDA> .Instance.QueryProductManagerInfo(request, out totalCount);

            var source = new QueryResult {
                Data = data, TotalCount = totalCount
            };

            return(source);
        }
Exemplo n.º 6
0
        public override void OnPageLoad(object sender, EventArgs e)
        {
            base.OnPageLoad(sender, e);
            #region 2012-12-18 Jack.G.tang Update

            /*
             *修改目的:点击商品列表中的价格链接到此页面,并选中价格tab 其他tab禁用
             * 新加一个方法(SetTabFocus)和以下代码
             */

            string opertionType   = string.Empty;
            string tempSysNo      = string.Empty;
            string cookieTabIndex = string.Empty;
            if (this.Request.QueryString != null)
            {
                opertionType = this.Request.QueryString["operation"];
                tempSysNo    = this.Request.QueryString["ProductSysNo"];
            }
            if (!string.IsNullOrEmpty(Request.Param))
            {
                tempSysNo = Request.Param;
            }
            #endregion

            this.ucProductMaintainProperty.MyWindow  = Window;
            this.ucProductMaintainAccessory.MyWindow = Window;
            this.productEntryInfo.MyWindow           = Window;

            int productSysNo;
            if (Int32.TryParse(tempSysNo, out productSysNo))
            {
                _productFacade = new ProductFacade(this);
                _vm            = new ProductVM();
                //cookieTabIndex = GetCookie("CookieTabIndex");

                _productLineFacade = new ProductLineFacade(this);

                ucProductMaintainBasicInfo.ucSpecificationInfo.ucCategoryPicker.LoadCategoryCompleted += (s, args2) => _productFacade.GetProductInfo(productSysNo, (obj, args) =>
                {
                    if (args.FaultsHandle())
                    {
                        return;
                    }
                    if (args.Result == null || args.Result.ProductBasicInfo == null)
                    {
                        Window.MessageBox.Show("无此商品或商品数据完整性有误,请联系管理员检查", MessageBoxType.Error);
                        return;
                    }

                    if (!_vm.HasItemMaintainAllTypePermission && args.Result.ProductBasicInfo.ProductType != ProductType.OpenBox)
                    {
                        Window.MessageBox.Show("该商品不是二手品,无此商品访问权限!", MessageBoxType.Error);
                        return;
                    }

                    var pmQueryFacade = new PMQueryFacade(CPApplication.Current.CurrentPage);
                    var pmQueryFilter = new ProductManagerQueryFilter
                    {
                        UserName    = CPApplication.Current.LoginUser.LoginName,
                        CompanyCode = CPApplication.Current.CompanyCode
                    };
                    if (AuthMgr.HasFunctionPoint(AuthKeyConst.IM_SeniorPM_Query))//高级权限
                    {
                        pmQueryFilter.PMQueryType = PMQueryType.All.ToString();
                    }
                    else if (AuthMgr.HasFunctionPoint(AuthKeyConst.IM_JuniorPM_Query))
                    {
                        pmQueryFilter.PMQueryType = PMQueryType.SelfAndInvalid.ToString();
                    }
                    else
                    {
                        pmQueryFilter.PMQueryType = PMQueryType.None.ToString();
                    }
                    int c3sysno    = args.Result.ProductBasicInfo.ProductCategoryInfo.SysNo.HasValue ? args.Result.ProductBasicInfo.ProductCategoryInfo.SysNo.Value : 0;
                    int brandsysno = args.Result.ProductBasicInfo.ProductBrandInfo.SysNo.HasValue ? args.Result.ProductBasicInfo.ProductBrandInfo.SysNo.Value : 0;
                    int usersysno  = CPApplication.Current.LoginUser.UserSysNo.Value;

                    _productLineFacade.HasRightByPMUser(usersysno
                                                        , c3sysno
                                                        , brandsysno, (pmobj, pmargs) =>
                    {
                        if (pmargs.FaultsHandle())
                        {
                            return;
                        }
                        bool userright = AuthMgr.HasFunctionPoint(AuthKeyConst.IM_SeniorPM_Query);
                        if (!userright)
                        {
                            if (!pmargs.Result)
                            {
                                Window.MessageBox.Show("无此商品访问权限!", MessageBoxType.Error);
                                return;
                            }
                        }

                        _vm.ProductSysNo = args.Result.SysNo;
                        #region 商品退换货信息需要productSysNo
                        productRmaPolicy.ProductSysNo = _vm.ProductSysNo;
                        #endregion
                        _vm.Note = args.Result.ProductBasicInfo.Note;
                        _vm.ProductMaintainBasicInfo = new ProductMaintainBasicInfoVM
                        {
                            ProductMaintainBasicInfoSpecificationInfo = _productFacade.ConvertProductEntityToProductMaintainBasicInfoSpecificationInfoVM(args.Result),
                            ProductMaintainBasicInfoDisplayInfo       = _productFacade.ConvertProductEntityToProductMaintainBasicInfoDisplayInfoVM(args.Result),
                            ProductMaintainBasicInfoStatusInfo        = _productFacade.ConvertProductEntityToProductMaintainBasicInfoStatusInfoVM(args.Result),
                            ProductMaintainBasicInfoChannelInfo       = _productFacade.ConvertProductEntityToProductMaintainBasicInfoChannelInfoVM(args.Result),
                            ProductMaintainBasicInfoDescriptionInfo   = _productFacade.ConvertProductEntityToProductMaintainBasicInfoDescriptionInfoVM(args.Result),
                            ProductMaintainBasicInfoOther             = _productFacade.ConvertProductEntityToProductMaintainBasicInfoOtherVM(args.Result)
                        };
                        _vm.ProductMaintainDescription         = _productFacade.ConvertProductEntityToProductMaintainDescriptionVM(args.Result);
                        _vm.ProductMaintainBatchManagementInfo = _productFacade.ConvertProductEntityToProductMaintainBatchManagementInfoVM(args.Result);

                        _vm.ProductMaintainAccessory = new ProductMaintainAccessoryVM
                        {
                            ProductAccessoryList = _productFacade.ConvertProductEntityToProductMaintainAccessoryProductAccessoryVMList(args.Result),
                            IsAccessoryShow      = args.Result.ProductBasicInfo.IsAccessoryShow
                        };

                        _vm.ProductMaintainImage = _productFacade.ConvertProductEntityToProductMaintainImageVM(args.Result);

                        var priceInfo = _productFacade.ConvertProductEntityToProductMaintainPriceInfoVM(args.Result);
                        if (args.Result.ProductConsignFlag == VendorConsignFlag.Consign &&
                            args.Result.Merchant.SysNo != -1)
                        {
                            priceInfo.ProductMaintainPriceInfoBasicPrice.HasMinCommissionVisible = "Visible";
                        }
                        _vm.ProductMaintainPriceInfo = priceInfo;
                        //_vm.ProductMaintainThirdPartyInventory = _productFacade.ConvertProductEntityToProductMaintainThirdPartyInventoryVM(args.Result);

                        _productFacade.GetProductGroup(productSysNo, (o, group) =>
                        {
                            if (@group.FaultsHandle())
                            {
                                return;
                            }
                            _vm.ProductMaintainCommonInfo = @group.Result.SysNo.HasValue ? _productFacade.ConvertProductGroupEntityToProductMaintainCommonInfoVM(@group.Result, args.Result) : _productFacade.ConvertProductEntityToProductMaintainCommonInfoVM(args.Result);

                            _vm.ProductMaintainProperty = _productFacade.ConvertProductEntityToProductMaintainPropertyVM(args.Result, group.Result);

                            _productFacade.GetPropertyValueList(args.Result.ProductBasicInfo.ProductProperties.Select(p => p.Property.PropertyInfo.SysNo.HasValue ? p.Property.PropertyInfo.SysNo.Value : 0).ToList(), (ob, arg) =>
                            {
                                if (args.FaultsHandle())
                                {
                                    return;
                                }
                                foreach (var productMaintainPropertyPropertyValueVM in _vm.ProductMaintainProperty.ProductPropertyValueList)
                                {
                                    productMaintainPropertyPropertyValueVM.PropertyValueList = new List <PropertyValueVM>();
                                    foreach (var i in arg.Result.Keys)
                                    {
                                        if (productMaintainPropertyPropertyValueVM.Property.SysNo == i)
                                        {
                                            productMaintainPropertyPropertyValueVM.PropertyValueList = _productFacade.ConvertPropertyValueInfoToPropertyValueVM(arg.Result[i]);
                                        }
                                    }
                                    productMaintainPropertyPropertyValueVM.PropertyValueList.Insert(0, new PropertyValueVM
                                    {
                                        SysNo            = 0,
                                        ValueDescription = "请选择..."
                                    });
                                }

                                DataContext = _vm;
                            });

                            _vm.ProductMaintainWarranty = _productFacade.ConvertProductEntityToProductMaintainWarrantyVM(args.Result);

                            _vm.ProductMaintainDimension = _productFacade.ConvertProductEntityToProductMaintainDimensionVM(args.Result);

                            _vm.ProductMaintainPurchaseInfo = _productFacade.ConvertProductEntityToProductMaintainPurchaseInfoVM(args.Result);

                            _vm.ProductMaintainSalesArea = new ProductMaintainSalesAreaVM
                            {
                                ProductMaintainSalesAreaSaveList = _productFacade.ConvertProductInfoEntityToProductMaintainSalesAreaSelectVM(args.Result)
                            };

                            DataContext = _vm;

                            ucProductMaintainCommonInfo.dgRelatedProduct.ItemsSource = _vm.ProductMaintainCommonInfo.GroupProductList;

                            foreach (var control in VM.ProductMaintainImage.ProductImageList.Select(i => new ProductMaintainProductImageSingle {
                                VM = i
                            }))
                            {
                                ucProductMaintainImage.ImageListPanel.Children.Add(control);
                            }

                            //Ocean.20130523. 记录上次打开的Tab,会引起商品属性的加载,暂时屏蔽此功能
                            //int cookieTabIndexVal = 0;
                            //if (!string.IsNullOrEmpty(cookieTabIndex) && int.TryParse(cookieTabIndex, out cookieTabIndexVal))
                            //{
                            //    ucProductTabList.SelectedIndex = cookieTabIndexVal;
                            //}

                            var areaFacade = new AreaQueryFacade();
                            areaFacade.QueryProvinceAreaList((areaObj, areaArgs) =>
                            {
                                if (areaArgs.FaultsHandle())
                                {
                                    return;
                                }
                                List <ProvinceVM> provinceList = _productFacade.ConvertAreaInfoEntityToProvinceVM(areaArgs.Result);
                                provinceList.Insert(0, new ProvinceVM {
                                    ProvinceSysNo = 0, ProvinceName = "请选择..."
                                });
                                ucProductMaintainSalesArea.cmbProvinceList.ItemsSource   = provinceList;
                                ucProductMaintainSalesArea.cmbProvinceList.SelectedValue = 0;
                                List <CityVM> cityList = new List <CityVM>();
                                cityList.Insert(0, new CityVM {
                                    CitySysNo = 0, CityName = "请选择..."
                                });
                                ucProductMaintainSalesArea.cmbCityList.ItemsSource   = cityList;
                                ucProductMaintainSalesArea.cmbCityList.SelectedValue = 0;
                                SetTabFocus(opertionType);
                            });

                            _facade = new ProductPriceRequestFacade();
                            _facade.GetProductStepPricebyProductSysNo(productSysNo, (priceobj, priceargs) =>
                            {
                                if (priceargs.FaultsHandle())
                                {
                                    return;
                                }
                                VM.ProductMaintainStepPrice.QueryResultList = priceargs.Result;
                                VM.ProductMaintainStepPrice.ProductSysNo    = VM.ProductSysNo;
                            });
                        });
                    });
                    if (args.Result.ProductConsignFlag == VendorConsignFlag.GroupBuying || (args.Result.ProductBasicInfo != null && args.Result.ProductBasicInfo.TradeType == TradeType.Internal))
                    {
                        productEntryInfo_tab.Visibility = System.Windows.Visibility.Collapsed;
                    }
                });
                //TLYH去除商品备案功能 by Key on 2015/7/23
                //if (AuthMgr.HasFunctionPoint(AuthKeyConst.IM_ProductMaintain_ItemProductMaintainEntryInfo))
                //{
                //    productEntryInfo_tab.Visibility = System.Windows.Visibility.Visible;
                //}
            }
            else
            {
                Window.MessageBox.Show("无效商品编号", MessageBoxType.Error);
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// 查询PM List
        /// </summary>
        /// <param name="queryFilter"></param>
        /// <param name="callback"></param>
        public void QueryPMList(ProductManagerQueryFilter queryFilter, EventHandler <RestClientEventArgs <List <ProductManagerInfo> > > callback)
        {
            string relativeUrl = "/PM/QueryPMList";

            restClient.Query <List <ProductManagerInfo> >(relativeUrl, queryFilter, callback);
        }
Exemplo n.º 8
0
        private void UCPMPicker_Loaded(object sender, RoutedEventArgs e)
        {
            Loaded -= new RoutedEventHandler(UCPMPicker_Loaded);
            var exp = this.GetBindingExpression(UCPMPicker.SelectedPMSysNoProperty);

            if (exp != null && exp.ParentBinding != null)
            {
                string  path    = exp.ParentBinding.Path.Path;
                Binding binding = new Binding();
                binding.Path = new PropertyPath(path);
                binding.Mode = BindingMode.TwoWay;
                binding.NotifyOnValidationError = true;
                cmbPMList.SetBinding(Newegg.Oversea.Silverlight.Controls.Combox.SelectedValueProperty, binding);
            }

            if (null == queryFilter)
            {
                queryFilter = new ProductManagerQueryFilter()
                {
                    UserName    = CPApplication.Current.LoginUser.LoginName,
                    CompanyCode = CPApplication.Current.CompanyCode
                };
                serviceFacade = new PMQueryFacade(CPApplication.Current.CurrentPage);

                //如果指定了查询的QueryType
                if (PMQueryType.HasValue)
                {
                    queryFilter.PMQueryType = PMQueryType.Value.ToString();
                    _pmUserCondition        = 1;
                }
                else
                {
                    #region [Ray.L.Xing 新需求 取消了PM 查询PM的权限 改为通过商品的产品线来过滤单据]
                    _pmUserCondition        = 3;
                    queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.All.ToString();
                    #endregion

                    //Ray.L.Xing 注销旧需求(因为新需求 取消了PM 查询PM的权限 改为通过商品的产品线来过滤单据)
                    #region [  如果没有指定查询的QueryType,根据当前用户查询PM的权限来获取PM List]
                    //if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_SeniorPM_Query))
                    //{
                    //    _pmUserCondition = 3;
                    //    if (!string.IsNullOrEmpty(QueryPage))//据有高级权限的PM ,访问不同页面看到的PM也有可能是不相同的,所以需要根据页面来单独初始查询类型
                    //    {
                    //        switch (QueryPage)
                    //        {
                    //            case "TransferStockingCenter": // 备货中心      高级权限 查询 所有有效状态的PM
                    //            case "PMMonitoringPerformanceIndicators":// PM工作指标监控    高级权限 查询 所有有效状态的PM
                    //                 queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.AllValid.ToString();
                    //                 break;
                    //            default:// 默认高级权限 查询 所有的PM 包括无效状态
                    //                 queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.All.ToString();
                    //                 break;
                    //        }
                    //    }
                    //    else
                    //    {
                    //        queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.All.ToString();
                    //    }
                    //}
                    //else if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_IntermediatePM_Query))
                    //{
                    //    _pmUserCondition = 2;
                    //    queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.Team.ToString();
                    //}
                    //else if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_JuniorPM_Query))
                    //{
                    //    _pmUserCondition = 1;
                    //    queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.Self.ToString();
                    //}
                    //else
                    //{
                    //    queryFilter.PMQueryType = ECCentral.BizEntity.Common.PMQueryType.None.ToString();
                    //}
                    #endregion
                }

                BindComboBoxData();
            }
        }
Exemplo n.º 9
0
        void UCProductDomainDetail_Loaded(object sender, RoutedEventArgs e)
        {
            Loaded -= new RoutedEventHandler(UCProductDomainDetail_Loaded);

            var queryFilter = new ProductManagerQueryFilter()
            {
                PMQueryType = ECCentral.BizEntity.Common.PMQueryType.All.ToString(),
                UserName    = CPApplication.Current.LoginUser.LoginName,
                CompanyCode = CPApplication.Current.CompanyCode
            };

            new PMQueryFacade(CPApplication.Current.CurrentPage).QueryPMList(queryFilter, (obj, args) =>
            {
                args.Result.ForEach(p =>
                {
                    DepartmentMerchandiserVM merchandiserVM = new DepartmentMerchandiserVM
                    {
                        SysNo       = p.SysNo,
                        DisplayName = p.UserInfo.UserDisplayName
                    };
                    var sysNo = this.VM.DepartmentMerchandiserSysNoList.FirstOrDefault(q => q == merchandiserVM.SysNo.Value);
                    if (sysNo != null)
                    {
                        merchandiserVM.IsChecked = true;
                    }
                    this.VM.DepartmentMerchandiserListForUI.Add(merchandiserVM);
                });

                Interlocked.Increment(ref loadCompletedCount);

                SetDataContext();
            });

            new PMQueryFacade(CPApplication.Current.CurrentPage).QueryPMLeaderList((obj, args) =>
            {
                //此处因为Oversea的Combox控件的SelectedValuePath不支持多级(类似UserInfo.SysNo),绑定会报错,所以用dynamic对象替代
                List <PMLeaderInfo> list = new List <PMLeaderInfo>();
                args.Result.ForEach(p =>
                {
                    PMLeaderInfo leader = new PMLeaderInfo {
                        SysNo = p.UserInfo.SysNo, UserDisplayName = p.UserInfo.UserDisplayName
                    };
                    list.Add(leader);
                });
                list.Insert(0, (new PMLeaderInfo {
                    SysNo = default(int?), UserDisplayName = ResCommonEnum.Enum_All
                }));

                cmbPMLeaders.ItemsSource = list;

                Interlocked.Increment(ref loadCompletedCount);

                SetDataContext();
            });

            if (this.VM.SysNo > 0)
            {
                //获取Category列表
                new ProductDomainFacade(CPApplication.Current.CurrentPage).LoadDomainCategorys(this.VM.SysNo.Value, (obj, args) =>
                {
                    if (args.Result != null)
                    {
                        args.Result.ForEach(p =>
                        {
                            this.VM.DepartmentCategoryList.Add(p.Convert <ProductDepartmentCategory, ProductDepartmentCategoryVM>());
                        });
                    }
                });
            }
        }