コード例 #1
0
        /// <summary>
        /// 用户删除指定条形码多批次信息
        /// </summary>
        /// <param name="purposeID">用途编号</param>
        /// <param name="barCodeId">条形码编号</param>
        /// <param name="cvtNumber">变速箱号</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回true</returns>
        public bool Delete(int purposeID, int barCodeId, string cvtNumber, out string error)
        {
            error = null;

            try
            {
                DepotManagementDataContext ctx           = CommentParameter.DepotDataContext;
                IBarCodeServer             barCodeServer = BasicServerFactory.GetServerModule <IBarCodeServer>();
                S_InDepotGoodsBarCodeTable barCode       = null;

                if (!barCodeServer.GetData(barCodeId, out barCode, out error))
                {
                    return(false);
                }

                var result = from r in ctx.ZPX_MultiBatchPart
                             where r.BarCode == barCodeId && r.PurposeID == purposeID && r.CVTNumber == cvtNumber
                             select r;

                if (result.Count() == 0)
                {
                    error = string.Format("您所属部门对应的多批次条形码 [{0}] 的物品不存在!", barCode.ID);
                    return(false);
                }

                ctx.ZPX_MultiBatchPart.DeleteAllOnSubmit(result);
                ctx.SubmitChanges();
                return(true);
            }
            catch (Exception err)
            {
                error = err.Message;
                return(false);
            }
        }
コード例 #2
0
        /// <summary>
        /// 报废入库单单号对应的所有挑返单
        /// </summary>
        /// <param name="inDepotBillID">入库单单号</param>
        /// <param name="error">出错时返回错误信息</param>
        /// <returns>操作是否成功的标志</returns>
        public bool ScrapAllBill(string inDepotBillID, out string error)
        {
            try
            {
                error = null;

                DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext;

                var varData = from a in dataContxt.S_CheckReturnRepairBill
                              where a.InDepotBillID == inDepotBillID
                              select a;

                IBillMessagePromulgatorServer msgServer = BasicServerFactory.GetServerModule <IBillMessagePromulgatorServer>();

                foreach (var item in varData)
                {
                    S_CheckReturnRepairBill lnqReturn = item;

                    lnqReturn.DJZT = "单据已报废";

                    msgServer.DestroyMessage(item.DJH);
                }

                dataContxt.SubmitChanges();
                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
コード例 #3
0
        /// <summary>
        /// 由用户更新多批次信息
        /// </summary>
        /// <param name="userCode">用户编号</param>
        /// <param name="purposeID">用途编号</param>
        /// <param name="barCodeId">条形码ID</param>
        /// <param name="cvtNumber">变速箱号</param>
        /// <param name="count">装配数量</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回true</returns>
        public bool Update(string userCode, int purposeID, int barCodeId, string cvtNumber, int count, out string error)
        {
            error = null;

            try
            {
                DepotManagementDataContext ctx           = CommentParameter.DepotDataContext;
                IBarCodeServer             barCodeServer = BasicServerFactory.GetServerModule <IBarCodeServer>();

                S_InDepotGoodsBarCodeTable barCode = null;

                if (!barCodeServer.GetData(barCodeId, out barCode, out error))
                {
                    return(false);
                }

                var result = from r in ctx.ZPX_MultiBatchPart
                             where r.BarCode == barCodeId && r.PurposeID == purposeID && r.CVTNumber == cvtNumber
                             select r;

                if (result.Count() == 0)
                {
                    error = string.Format("您所属部门对应的多批次条形码 [{0}] 的物品不存在!", barCode.ID);
                    return(false);
                }

                ZPX_MultiBatchPart mbp = result.Single();

                if (mbp.Counts == count)
                {
                    error = string.Format("条形码 [{0}] 的物品中原有数量与您当前设置的数量一致,不需要更改!", barCode.ID);
                    return(false);
                }

                mbp.Counts = count;

                if (mbp.Remark.Length > 0)
                {
                    mbp.Remark += "\r\n";
                }

                mbp.Remark += ServerTime.Time.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + " 更新数量为:" + count.ToString() + " ;";

                ctx.SubmitChanges();
                return(true);
            }
            catch (Exception err)
            {
                error = err.Message;
                return(false);
            }
        }
コード例 #4
0
        void StatusChange(DepotManagementDataContext ctx, string code)
        {
            var varBook = from a in ctx.S_GaugeStandingBook
                          where a.GaugeCoding == code
                          select a;

            S_GaugeStandingBook bookInfo = varBook.FirstOrDefault();

            var varFile = from a in ctx.Bus_Gauge_Files
                          where a.GaugeCode == code &&
                          a.FileType == "校准证书"
                          select a;

            if (varFile.Count() > 0)
            {
                DateTime tempDate = (DateTime)varFile.Select(k => k.FileDate).Max();
                bookInfo.EffectiveDate = tempDate.AddMonths((int)bookInfo.Validity);

                IBillMessagePromulgatorServer billMessageServer = BasicServerFactory.GetServerModule <IBillMessagePromulgatorServer>();
                billMessageServer.BillType = "量检具台账";
                billMessageServer.EndFlowMessage(code, "已提交了校准证书", null, null);
            }
            else
            {
                bookInfo.EffectiveDate = null;
            }

            var varScrapt = from a in ctx.Bus_Gauge_Files
                            where a.GaugeCode == code &&
                            a.FileType == "报废记录"
                            select a;

            if (varScrapt.Count() > 0)
            {
                bookInfo.ScrapFlag = true;
            }
            else
            {
                bookInfo.ScrapFlag = false;
            }
        }
コード例 #5
0
        /// <summary>
        /// 根据返修零件增加条形码
        /// </summary>
        /// <param name="userCode">用户编码</param>
        /// <param name="purposeID">用途编号</param>
        /// <param name="dicBarcode">条形码字典</param>
        /// <param name="error">出错时的错误信息</param>
        /// <returns>操作是否成功的标志</returns>
        public bool AddFromReparativePartList(string userCode, int purposeID, Dictionary <int, int> dicBarcode, out string error)
        {
            try
            {
                error = null;

                DepotManagementDataContext      ctx           = CommentParameter.DepotDataContext;
                IBarCodeServer                  barCodeServer = BasicServerFactory.GetServerModule <IBarCodeServer>();
                View_S_InDepotGoodsBarCodeTable barCode       = null;
                DateTime dt = ServerTime.Time;

                foreach (KeyValuePair <int, int> item in dicBarcode)
                {
                    var result = from r in ctx.ZPX_MultiBatchPart
                                 where r.BarCode == item.Key && r.PurposeID == purposeID
                                 select r;

                    ZPX_MultiBatchPart mbp = null;

                    if (result.Count() == 0)
                    {
                        mbp = new ZPX_MultiBatchPart();

                        mbp.BarCode    = item.Key;
                        mbp.PurposeID  = purposeID;
                        mbp.CVTNumber  = "";
                        mbp.Counts     = item.Value;
                        mbp.CreateDate = dt;
                        mbp.UpdateDate = dt;
                        mbp.Remark    += dt.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + " 增加数量为:" + mbp.Counts.ToString() + " ;";

                        if (!barCodeServer.GetData(item.Key, out barCode, out error))
                        {
                            return(false);
                        }

                        mbp.InputDate           = barCode.入库时间;
                        mbp.Msrepl_tran_version = Guid.NewGuid();

                        ctx.ZPX_MultiBatchPart.InsertOnSubmit(mbp);
                    }
                    else
                    {
                        mbp = result.Single();

                        mbp.Counts    += item.Value;
                        mbp.UpdateDate = dt;

                        if (mbp.Remark.Length > 0)
                        {
                            mbp.Remark += "\r\n";
                        }

                        mbp.Remark += dt.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + " 增加数量:" + item.Value.ToString() + " ;";
                    }
                }

                ctx.SubmitChanges();
                return(true);
            }
            catch (Exception err)
            {
                error = err.Message;
                return(false);
            }
        }
コード例 #6
0
        /// <summary>
        /// 由用户直接添加多批次信息
        /// </summary>
        /// <param name="userCode">用户编号</param>
        /// <param name="purposeID">用途编号</param>
        /// <param name="barCodeId">条形码ID</param>
        /// <param name="cvtNumber">变速箱号</param>
        /// <param name="count">装配数量</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回true</returns>
        public bool Add(string userCode, int purposeID, int barCodeId, string cvtNumber, int count, out string error)
        {
            error = null;

            try
            {
                DepotManagementDataContext      ctx           = CommentParameter.DepotDataContext;
                IBarCodeServer                  barCodeServer = BasicServerFactory.GetServerModule <IBarCodeServer>();
                View_S_InDepotGoodsBarCodeTable barCode       = null;

                if (!barCodeServer.GetData(barCodeId, out barCode, out error))
                {
                    return(false);
                }

                var result = from r in ctx.ZPX_MultiBatchPart
                             where r.BarCode == barCodeId && r.PurposeID == purposeID && r.CVTNumber == cvtNumber
                             select r;

                if (result.Count() > 0)
                {
                    error = string.Format("条形码 [{0}] 的物品已经存在!", barCode.条形码);
                    return(false);
                }

                ZPX_MultiBatchPart mbp = new ZPX_MultiBatchPart();
                DateTime           dt  = ServerTime.Time;

                // 下线车间再制造
                if (purposeID == 5)
                {
                    string productType = cvtNumber.Split(new char[] { ' ' })[0];

                    IProductParts productParts = BasicServerFactory.GetServerModule <IProductParts>();

                    // 如果是一次性物品, 则不用CVT编号
                    if (productParts.IsDisposableParts(productType, barCode.图号型号))
                    {
                        cvtNumber = "";
                    }
                }

                mbp.BarCode             = barCode.条形码;
                mbp.PurposeID           = purposeID;
                mbp.CVTNumber           = cvtNumber;
                mbp.Counts              = count;
                mbp.Remark              = dt.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + " 增加数量 " + count.ToString() + " ;";
                mbp.CreateDate          = dt;
                mbp.UpdateDate          = dt;
                mbp.InputDate           = barCode.入库时间;
                mbp.Msrepl_tran_version = Guid.NewGuid();

                ctx.ZPX_MultiBatchPart.InsertOnSubmit(mbp);

                ctx.SubmitChanges();
                return(true);
            }
            catch (Exception err)
            {
                error = err.Message;
                return(false);
            }
        }
コード例 #7
0
        /// <summary>
        /// 根据单据物品明细添加多批次信息(从领料单、营销出库单)
        /// </summary>
        /// <param name="userCode">操作用户</param>
        /// <param name="purposeID">多批次用途编号</param>
        /// <param name="cvtNumber">变速箱号</param>
        /// <param name="billNo">单据号</param>
        /// <param name="lstGoods">领料物品明细列表</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回true</returns>
        public bool AddFromBill(string userCode, int purposeID, string cvtNumber, string billNo, List <StorageGoods> lstGoods, out string error)
        {
            error = null;

            if (lstGoods == null || lstGoods.Count == 0)
            {
                error = "物品明细为空,无法添加多批次信息";
                return(false);
            }

            DepotManagementDataContext ctx = CommentParameter.DepotDataContext;

            ctx.Connection.Open();
            ctx.Transaction = ctx.Connection.BeginTransaction();

            try
            {
                IBarCodeServer         barCodeServer = PMS_ServerFactory.GetServerModule <IBarCodeServer>();
                DateTime               dt            = ServerTime.Time;
                List <P_AssemblingBom> bomDatas      = null;
                string   productType    = cvtNumber.Trim();
                string[] arrayCvtNumber = null; // 存放分隔后的箱号

                // 下线车间再制造
                if (purposeID == 5)
                {
                    if (GlobalObject.GeneralFunction.IsNullOrEmpty(productType))
                    {
                        error = "产品类型不允许为空";
                        return(false);
                    }

                    arrayCvtNumber = productType.Split(new char[] { ' ' });

                    productType = arrayCvtNumber[0] + " FX";

                    bomDatas = (from r in ctx.P_AssemblingBom
                                where r.ProductCode == productType
                                select r).ToList();

                    if (bomDatas.Count < 100)
                    {
                        error = string.Format("还未配置 [{0}] 型号装配BOM的数据请配置后再进行此操作", productType);
                        return(false);
                    }
                }

                // 是否向多批次中添加了数据的标志
                bool addDataFlag = false;

                for (int i = 0; i < lstGoods.Count; i++)
                {
                    string tempCVTNumber = cvtNumber;

                    // 下线车间再制造
                    if (purposeID == 5)
                    {
                        IProductParts productParts = BasicServerFactory.GetServerModule <IProductParts>();

                        // 如果不是一次性物品, 而且在装配BOM中找不到则报错
                        if (!productParts.IsDisposableParts(productType, lstGoods[i].GoodsCode))
                        {
                            if (arrayCvtNumber.Length != 2)
                            {
                                error = "您导入的单据中包含非一次性物料,缺少产品箱号,无法进行此操作";
                                return(false);
                            }

                            if (!bomDatas.Exists(p => p.PartCode == lstGoods[i].GoodsCode && p.PartName == lstGoods[i].GoodsName))
                            {
                                error = string.Format("无法在装配BOM的 {0} 的数据中找到{1}, {2} 的物品信息,无法进行此操作!",
                                                      productType, lstGoods[i].GoodsCode, lstGoods[i].GoodsName);

                                return(false);
                            }
                        }
                        else
                        {
                            tempCVTNumber = "";
                        }
                    }

                    View_S_InDepotGoodsBarCodeTable barCode = barCodeServer.GetBarCodeInfo(
                        lstGoods[i].GoodsCode, lstGoods[i].GoodsName, lstGoods[i].Spec,
                        lstGoods[i].Provider, lstGoods[i].BatchNo, lstGoods[i].StorageID.ToString());

                    if (barCode == null)
                    {
                        error = string.Format("无法找到 {0}, {1}, 规格:{2}, 供应商:{3}, 批次号:{4}, 库存编码:{5} 物品的条形码信息,无法进行此操作!",
                                              lstGoods[i].GoodsCode, lstGoods[i].GoodsName, lstGoods[i].Spec,
                                              lstGoods[i].Provider, lstGoods[i].BatchNo, lstGoods[i].StorageID);

                        return(false);
                    }

                    var result = from r in ctx.ZPX_MultiBatchPart
                                 where r.BarCode == barCode.条形码 && r.PurposeID == purposeID && r.CVTNumber == tempCVTNumber
                                 select r;

                    ZPX_MultiBatchPart mbp = null;

                    if (result.Count() > 0)
                    {
                        mbp         = result.Single();
                        mbp.Counts += Convert.ToInt32(lstGoods[i].Quantity);

                        if (mbp.Remark.Length > 0)
                        {
                            mbp.Remark += "\r\n";
                        }

                        mbp.UpdateDate = dt;
                        mbp.Remark    += ServerTime.Time.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + ", 单据号:" + billNo + ", 增加数量:" + lstGoods[i].Quantity.ToString() + ";";
                    }
                    else
                    {
                        mbp = new ZPX_MultiBatchPart();

                        mbp.BarCode             = barCode.条形码;
                        mbp.PurposeID           = purposeID;
                        mbp.CVTNumber           = tempCVTNumber;
                        mbp.Counts              = Convert.ToInt32(lstGoods[i].Quantity);
                        mbp.Remark              = dt.ToString("yyyy-MM-dd HH:mm:ss") + ", 用户 " + userCode + ", 单据号:" + billNo + ",数量:" + mbp.Counts.ToString() + ";";
                        mbp.CreateDate          = dt;
                        mbp.UpdateDate          = dt;
                        mbp.InputDate           = barCode.入库时间;
                        mbp.Msrepl_tran_version = Guid.NewGuid();

                        ctx.ZPX_MultiBatchPart.InsertOnSubmit(mbp);
                    }

                    if (mbp.Counts < 0)
                    {
                        throw new Exception("【图号型号】:" + lstGoods[i].GoodsCode
                                            + "【物品名称】:" + lstGoods[i].GoodsName + "【规格】:" + lstGoods[i].Spec
                                            + "【批次号】:" + lstGoods[i].BatchNo + " 物品数量不能小于0");
                    }

                    addDataFlag = true;
                    ctx.SubmitChanges();
                }

                if (addDataFlag)
                {
                    ZPX_MultiBatchPart_LLD lld = new ZPX_MultiBatchPart_LLD();

                    lld.Bill_ID = billNo;

                    ctx.ZPX_MultiBatchPart_LLD.InsertOnSubmit(lld);
                    ctx.SubmitChanges();
                }
                else
                {
                    throw new Exception("没有添加任何数据,可能是单据中的零件不属于装配BOM");
                }

                ctx.Transaction.Commit();
                return(true);
            }
            catch (Exception err)
            {
                ctx.Transaction.Rollback();
                error = err.Message;
                return(false);
            }
        }
コード例 #8
0
        /// <summary>
        /// 获取服务组件
        /// </summary>
        /// <returns>返回组件接口</returns>
        public static T GetServerModule <T>()
        {
            string name = typeof(T).ToString();

            m_hashTable = new Hashtable();

            //if (m_hashTable.ContainsKey(name))
            //{
            //    return (T)m_hashTable[name];
            //}

            if (typeof(T) == typeof(IProviderServer))
            {
                IProviderServer serverModule = new ProviderServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAccessoryDutyInfoManageServer))
            {
                IAccessoryDutyInfoManageServer serverModule = new AccessoryDutyInfoManageServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDepartmentServer))
            {
                IDepartmentServer serverModule = new DepartmentServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialTypeServer))
            {
                IMaterialTypeServer serverModule = new MaterialTypeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IStoreServer))
            {
                IStoreServer serverModule = new StoreServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICheckOutInDepotServer))
            {
                ICheckOutInDepotServer serverModule = new CheckOutInDepotServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IUnitServer))
            {
                IUnitServer serverModule = new UnitServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IClientServer))
            {
                IClientServer serverModule = new ClientServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductListServer))
            {
                IProductListServer serverModule = new ProductListServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBasicGoodsServer))
            {
                IBasicGoodsServer serverModule = SCM_Level01_ServerFactory.GetServerModule <IBasicGoodsServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAssemblyInfoServer))
            {
                IAssemblyInfoServer serverModule = PMS_ServerFactory.GetServerModule <IAssemblyInfoServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBarCodeServer))
            {
                IBarCodeServer serverModule = BasicServerFactory.GetServerModule <IBarCodeServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBomServer))
            {
                IBomServer serverModule = PMS_ServerFactory.GetServerModule <IBomServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBomMappingServer))
            {
                IBomMappingServer serverModule = PMS_ServerFactory.GetServerModule <IBomMappingServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAssemblingBom))
            {
                IAssemblingBom serverModule = PMS_ServerFactory.GetServerModule <IAssemblingBom>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IElectronFileServer))
            {
                IElectronFileServer serverModule = PMS_ServerFactory.GetServerModule <IElectronFileServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IChoseConfectServer))
            {
                IChoseConfectServer serverModule = PMS_ServerFactory.GetServerModule <IChoseConfectServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IWorkbenchService))
            {
                IWorkbenchService serverModule = PMS_ServerFactory.GetServerModule <IWorkbenchService>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGoodsGradeServer))
            {
                IGoodsGradeServer serverModule = new GoodsGradeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBargainInfoServer))
            {
                IBargainInfoServer serverModule = new BargainInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBargainGoodsServer))
            {
                IBargainGoodsServer serverModule = new BargainGoodsServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOrderFormInfoServer))
            {
                IOrderFormInfoServer serverModule = new OrderFormInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOrderFormGoodsServer))
            {
                IOrderFormGoodsServer serverModule = new OrderFormGoodsServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOrdinaryInDepotBillServer))
            {
                IOrdinaryInDepotBillServer serverModule = new OrdinaryInDepotBillServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOrdinaryInDepotGoodsBill))
            {
                IOrdinaryInDepotGoodsBill serverModule = new OrdinaryInDepotGoodsBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductInfoServer))
            {
                IProductInfoServer serverModule = PMS_ServerFactory.GetServerModule <IProductInfoServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBillTypeServer))
            {
                IBillTypeServer serverModule = BasicServerFactory.GetServerModule <IBillTypeServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAssignBillNoServer))
            {
                IAssignBillNoServer serverModule = BasicServerFactory.GetServerModule <IAssignBillNoServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialRequisitionServer))
            {
                IMaterialRequisitionServer serverModule = new MaterialRequisitionServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IPersonnelInfoServer))
            {
                IPersonnelInfoServer serverModule = SCM_Level01_ServerFactory.GetServerModule <IPersonnelInfoServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialRequisitionGoodsServer))
            {
                IMaterialRequisitionGoodsServer serverModule = new MaterialRequisitionGoodsServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDeclareWastrelType))
            {
                IDeclareWastrelType serverModule = new DeclareWastrelType();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IScrapBillServer))
            {
                IScrapBillServer serverModule = new ScrapBillServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IScrapGoodsServer))
            {
                IScrapGoodsServer serverModule = new ScrapGoodsServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialRequisitionPurposeServer))
            {
                IMaterialRequisitionPurposeServer serverModule = new MaterialRequisitionPurposeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IFieldWidthServer))
            {
                IFieldWidthServer serverModule = new FieldWidthServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IHomemadePartInDepotServer))
            {
                IHomemadePartInDepotServer serverModule = new HomemadePartInDepotServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialReturnedInTheDepot))
            {
                IMaterialReturnedInTheDepot serverModule = new MaterialReturnedInTheDepot();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialListReturnedInTheDepot))
            {
                IMaterialListReturnedInTheDepot serverModule = new MaterialListReturnedInTheDepot();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialRejectBill))
            {
                IMaterialRejectBill serverModule = new MaterialRejectBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialListRejectBill))
            {
                IMaterialListRejectBill serverModule = new MaterialListRejectBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDetailSummaryInfo))
            {
                IDetailSummaryInfo serverModule = new DetailSummaryInfo();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDepotTypeForPersonnel))
            {
                IDepotTypeForPersonnel serverModule = SCM_Level01_ServerFactory.GetServerModule <IDepotTypeForPersonnel>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IInvoiceServer))
            {
                IInvoiceServer serverModule = new InvoiceServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ISellIn))
            {
                ISellIn serverModule = new SellIn();
                m_hashTable.Add(name, serverModule);
            }
            //else if (typeof(T) == typeof(IProductOrder))
            //{
            //    IProductOrder serverModule = new ProductOrder();
            //    m_hashTable.Add(name, serverModule);
            //}
            else if (typeof(T) == typeof(ICannibalize))
            {
                ICannibalize serverModule = new Cannibalize();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICheckReturnRepair))
            {
                ICheckReturnRepair serverModule = new CheckReturnRepair();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IIsolationManageBill))
            {
                IIsolationManageBill serverModule = new IsolationManageBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMessMessageFeedback))
            {
                IMessMessageFeedback serverModule = new MessMessageFeedback();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITorqueConverterInfoServer))
            {
                ITorqueConverterInfoServer serverModule = new TorqueConverterInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductPlan))
            {
                IProductPlan serverModule = new ProductPlan();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IStoreageCheck))
            {
                IStoreageCheck serverModule = new StoreageCheck();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ISafeStockServer))
            {
                ISafeStockServer serverModule = new SafeStockServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMusterAffirmBill))
            {
                IMusterAffirmBill serverModule = new MusterAffirmBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMusterUse))
            {
                IMusterUse serverModule = new MusterUse();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITempElectronFileServer))
            {
                ITempElectronFileServer serverModule = PMS_ServerFactory.GetServerModule <ITempElectronFileServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMultiBatchPartServer))
            {
                IMultiBatchPartServer serverModule = PMS_ServerFactory.GetServerModule <IMultiBatchPartServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITechnologyChange))
            {
                ITechnologyChange serverModule = new TechnologyChange();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGoodsLeastPackAndStock))
            {
                IGoodsLeastPackAndStock serverModule = new GoodsLeastPackAndStock();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOrderFormAffrim))
            {
                IOrderFormAffrim serverModule = new OrderFormAffrim();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMarketingPlan))
            {
                IMarketingPlan serverModule = new MarketingPlan();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IPurcharsingPlan))
            {
                IPurcharsingPlan serverModule = new PurcharsingPlan();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGeneratesCheckOutInDepotServer))
            {
                IGeneratesCheckOutInDepotServer serverModule = new GeneratesCheckOutInDepotServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGoodsAntirust))
            {
                IGoodsAntirust serverModule = new GoodsAntirust();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IQuarantine))
            {
                IQuarantine serverModule = new Quarantine();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAfterServiceMakePartsBill))
            {
                IAfterServiceMakePartsBill serverModule = new AfterServiceMakePartsBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IReparativePartInfoServer))
            {
                IReparativePartInfoServer serverModule = PMS_ServerFactory.GetServerModule <IReparativePartInfoServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IConvertCVTNumber))
            {
                IConvertCVTNumber serverModule = PMS_ServerFactory.GetServerModule <IConvertCVTNumber>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductBarcodeServer))
            {
                IProductBarcodeServer serverModule = PMS_ServerFactory.GetServerModule <IProductBarcodeServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICheckOutInDepotForOutsourcingServer))
            {
                ICheckOutInDepotForOutsourcingServer serverModule = new CheckOutInDepotForOutsourcingServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductChange))
            {
                IProductChange serverModule = new ProductChange();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IHomemadeRejectBill))
            {
                IHomemadeRejectBill serverModule = new HomemadeRejectBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IHomemadeRejectList))
            {
                IHomemadeRejectList serverModule = new HomemadeRejectList();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IFrockProvingReport))
            {
                IFrockProvingReport serverModule = new FrockProvingReport();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMaterialDetainBill))
            {
                IMaterialDetainBill serverModule = new MaterialDetainBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IPrintProductBarcodeInfo))
            {
                IPrintProductBarcodeInfo serverModule = PMS_ServerFactory.GetServerModule <IPrintProductBarcodeInfo>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IThreePacketsOfTheRepairBill))
            {
                IThreePacketsOfTheRepairBill serverModule = new ThreePacketsOfTheRepairBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IFrockIndepotBill))
            {
                IFrockIndepotBill serverModule = new FrockIndepotBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICommunicateReportBill))
            {
                ICommunicateReportBill serverModule = new CommunicateReportBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductCodeServer))
            {
                IProductCodeServer serverModule = SCM_Level02_ServerFactory.GetServerModule <IProductCodeServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IHomemadePartInfoServer))
            {
                IHomemadePartInfoServer serverModule = new HomemadePartInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IStorageInfo))
            {
                IStorageInfo serverModule = new StorageInfo();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductDeliveryInspectionServer))
            {
                IProductDeliveryInspectionServer serverModule = new ProductDeliveryInspectionServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICVTCustomerInformationServer))
            {
                ICVTCustomerInformationServer serverModule = new CVTCustomerInformationServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICVTTruckLoadingInformation))
            {
                ICVTTruckLoadingInformation serverModule = new CVTTruckLoadingInformation();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IQualityProblemRectificationDisposalBill))
            {
                IQualityProblemRectificationDisposalBill serverModule = new QualityProblemRectificationDisposalBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGoodsShelfLife))
            {
                IGoodsShelfLife serverModule = new GoodsShelfLife();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IReport))
            {
                IReport serverModule = new Report();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMarqueeServer))
            {
                IMarqueeServer serverModule = new MarqueeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDeviceMaintenanceBill))
            {
                IDeviceMaintenanceBill serverModule = new DeviceMaintenanceBill();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICBOMServer))
            {
                ICBOMServer serverModule = new CBOMServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ILogisticSafeStock))
            {
                ILogisticSafeStock serverModule = new LogisticSafeStock();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IUnProductTestingSingle))
            {
                IUnProductTestingSingle serverModule = new UnProductTestingSingle();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IDisposableGoodsServer))
            {
                IDisposableGoodsServer serverModule = new DisposableGoodsServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITCURepairInfoServer))
            {
                ITCURepairInfoServer serverModule = new TCURepairInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ISalesOrderServer))
            {
                ISalesOrderServer serverModule = new SalesOrderServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITechnologyAlteration))
            {
                ITechnologyAlteration serverModule = new TechnologyAlteration();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMinorPurchaseBillServer))
            {
                IMinorPurchaseBillServer serverModule = new MinorPurchaseBillServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductLendService))
            {
                IProductLendService serverModule = new ProductLendService();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductLendReturnService))
            {
                IProductLendReturnService serverModule = new ProductLendReturnService();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductReturnService))
            {
                IProductReturnService serverModule = new ProductReturnService();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IStockLack))
            {
                IStockLack serverModule = new StockLack();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOfflineFailSafeServer))
            {
                IOfflineFailSafeServer serverModule = new OfflineFailSafeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ISystemLogServer))
            {
                ISystemLogServer serverModule = new SystemLogServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IFinancialDetailManagement))
            {
                IFinancialDetailManagement serverModule = new FinancialDetailManagement();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IToolsManage))
            {
                IToolsManage serverModule = new ToolsManage();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IGaugeManage))
            {
                IGaugeManage serverModule = new GaugeManage();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IQualitySystemDatabase))
            {
                IQualitySystemDatabase serverModule = new QualitySystemDatabase();
                m_hashTable.Add(name, serverModule);
            }

            if (m_hashTable.ContainsKey(name))
            {
                return((T)m_hashTable[name]);
            }

            return(default(T));
        }
コード例 #9
0
        /// <summary>
        /// 获取服务组件
        /// </summary>
        /// <returns>返回组件接口</returns>
        public static T GetServerModule <T>()
        {
            string name = typeof(T).ToString();

            m_hashTable = new Hashtable();

            if (typeof(T) == typeof(IBarCodeServer))
            {
                IBarCodeServer serverModule = BasicServerFactory.GetServerModule <IBarCodeServer>();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductInfoServer))
            {
                IProductInfoServer serverModule = new ProductInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBomServer))
            {
                IBomServer serverModule = new BomServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAssemblingBom))
            {
                IAssemblingBom serverModule = new AssemblingBom();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBarcodeForAssemblyLine))
            {
                IBarcodeForAssemblyLine serverModule = new BarcodeForAssemblyLine();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IElectronFileServer))
            {
                IElectronFileServer serverModule = new ElectronFileServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ITempElectronFileServer))
            {
                ITempElectronFileServer serverModule = new TempElectronFileServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IBomMappingServer))
            {
                IBomMappingServer serverModule = new BomMappingServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IConvertCVTNumber))
            {
                IConvertCVTNumber serverModule = new ConvertCVTNumber();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IMultiBatchPartServer))
            {
                IMultiBatchPartServer serverModule = new MultiBatchPartServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IPrintProductBarcodeInfo))
            {
                IPrintProductBarcodeInfo serverModule = new PrintProductBarcodeInfo();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductBarcodeServer))
            {
                IProductBarcodeServer serverModule = new ProductBarcodeServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IAssemblyInfoServer))
            {
                IAssemblyInfoServer serverModule = new AssemblyInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IChoseConfectServer))
            {
                IChoseConfectServer serverModule = new ChoseConfectServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IReparativePartInfoServer))
            {
                IReparativePartInfoServer serverModule = new ReparativePartInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IWorkbenchService))
            {
                IWorkbenchService serverModule = new WorkbenchServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IConfigManagement))
            {
                IConfigManagement serverModule = new ConfigManagement();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IOffLineTest))
            {
                IOffLineTest serverModule = new OffLineTest();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IProductReleases))
            {
                IProductReleases serverModule = new ProductReleases();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IFrockStandingBook))
            {
                IFrockStandingBook serverModule = new FrockStandingBook();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IInspectionSetInfo))
            {
                IInspectionSetInfo serverModule = new InspectionSetInfo();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICVTRepairInfoServer))
            {
                ICVTRepairInfoServer serverModule = new CVTRepairInfoServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IValveCheckDataService))
            {
                IValveCheckDataService serverModule = new ValveCheckDataService();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(ICvtCheckDataService))
            {
                ICvtCheckDataService serverModule = new CvtCheckDataService();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IPreventErrorServer))
            {
                IPreventErrorServer serverModule = new PreventErrorServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IReplaceWorkBenchServer))
            {
                IReplaceWorkBenchServer serverModule = new ReplaceWorkBenchServer();
                m_hashTable.Add(name, serverModule);
            }
            else if (typeof(T) == typeof(IZPXProductionParams))
            {
                IZPXProductionParams serverModule = new ZPXProductionParams();
                m_hashTable.Add(name, serverModule);
            }


            if (m_hashTable.ContainsKey(name))
            {
                return((T)m_hashTable[name]);
            }

            throw new Exception(string.Format("系统中未找到接口:{0}", typeof(T).FullName));
            //return default(T);
        }