コード例 #1
0
        public virtual VendorRefundInfo LoadVendorRefundInfo(int sysNo)
        {
            VendorRefundInfo refundInfo = new VendorRefundInfo()
            {
                NotPMAndPMD = false
            };

            //加载供应商退款主信息:
            refundInfo = VendorRefundDA.LoadVendorRefundInfo(sysNo);
            //加载供应商退款Items:
            refundInfo.ItemList = new List <VendorRefundItemInfo>();
            refundInfo.ItemList = VendorRefundDA.LoadVendorRefundItems(sysNo);

            //TODO:权限判断:PM,PMD,PMCC
            bool isPM = IMBizInteract.GetPMListByUserSysNo(ServiceContext.Current.UserSysNo).SysNo.HasValue ? true : false;

            if (isPM)
            {
                refundInfo.UserRole = "PM";
            }
            if (0 < refundInfo.ItemList.Count && isPM)
            {
                int userSysNo = ServiceContext.Current.UserSysNo;
                //获取PM List:
                List <int> pmSysNo = VendorRefundDA.GetPMUserSysNoByRMAVendorRefundSysNo(refundInfo.SysNo.Value);
                //获得备份的PM:

                List <ProductManagerInfo> bankupPMSysNo = ExternalDomainBroker.GetPMList(userSysNo).ProductManagerInfoList;
                bankupPMSysNo.Add(new ProductManagerInfo()
                {
                    UserInfo = new BizEntity.Common.UserInfo()
                    {
                        SysNo = userSysNo
                    }
                });
                foreach (var sysNoItem in pmSysNo)
                {
                    bool temp = false;
                    foreach (var pm in bankupPMSysNo)
                    {
                        if (sysNoItem == pm.UserInfo.SysNo.Value)
                        {
                            temp = true;
                        }
                    }
                    if (!temp)
                    {
                        refundInfo.NotPMAndPMD = true;
                        break;
                    }
                }
            }
            return(refundInfo);
        }
コード例 #2
0
ファイル: VSPOProcessor.cs プロジェクト: sanlonezhang/ql
        public virtual VirtualStockPurchaseOrderInfo LoadVirtualPurchaseInfoBySOItemSysNo(int soSysNo, int productSysNo)
        {
            int    soItemSysNo      = 0;
            string productID        = string.Empty;
            string productName      = string.Empty;
            int    pmUserSysNo      = 0;
            SOInfo getCurrentSOInfo = SOBizInteract.GetSOInfo(soSysNo);

            if (null != getCurrentSOInfo)
            {
                SOItemInfo item = getCurrentSOInfo.Items.SingleOrDefault(x => x.ProductSysNo == productSysNo);
                if (null != item)
                {
                    ProductInfo getProductInfo = IMBizInteract.GetProductInfo(item.ProductSysNo.Value);
                    soItemSysNo = item.SysNo.Value;
                    productID   = item.ProductID;
                    productName = item.ProductName;
                    pmUserSysNo = getProductInfo.ProductBasicInfo.ProductManager.SysNo.Value;
                }
                else
                {
                    throw new BizException("订单明细号错误!");
                }
            }
            else
            {
                throw new BizException("订单明细号错误!");
            }

            VirtualStockPurchaseOrderInfo memoInfo = null;
            int isExist = SOBizInteract.GetGeneratedSOVirtualCount(soItemSysNo);

            if (isExist > 0)
            {
                memoInfo = VSPurchaseOrderDA.GetMemoInfoFromVirtualRequest(soItemSysNo);
            }
            int needPurchaseQty = VSPurchaseOrderDA.CalcVSPOQuantity(soItemSysNo);
            VirtualStockPurchaseOrderInfo returnEntity = new VirtualStockPurchaseOrderInfo()
            {
                PMMemo         = (memoInfo == null ? string.Empty : memoInfo.PMMemo),
                CSMemo         = (memoInfo == null ? string.Empty : memoInfo.CSMemo),
                SOSysNo        = getCurrentSOInfo.SysNo.Value,
                ProductID      = productID,
                ProductName    = productName,
                ProductSysNo   = productSysNo,
                PMUserSysNo    = pmUserSysNo,
                PurchaseQty    = isExist > 0 ? isExist : needPurchaseQty,
                SOItemSysNo    = soItemSysNo,
                SOVirtualCount = isExist
            };

            return(returnEntity);
        }
コード例 #3
0
 public virtual List <ProductManagerInfo> GetAuthorizedPMList(PMQueryType queryType, string currentName, string companyCode)
 {
     return(IMBizInteract.GetPMListByType(queryType, currentName, companyCode));
 }