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); }
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); }
public virtual List <ProductManagerInfo> GetAuthorizedPMList(PMQueryType queryType, string currentName, string companyCode) { return(IMBizInteract.GetPMListByType(queryType, currentName, companyCode)); }