void 图号型号_m_OnCompleteSearch() { DataRow drTemp = this.图号型号.DataResult; if (drTemp != null) { customDataGridView1.CurrentRow.Cells["物品名称"].Value = drTemp["物品名称"]; customDataGridView1.CurrentRow.Cells["规格"].Value = drTemp["规格"]; customDataGridView1.CurrentRow.Cells["物品ID"].Value = drTemp["序号"]; customDataGridView1.CurrentRow.Cells["单位"].Value = drTemp["单位"]; ((DataGridViewTextBoxShowCell)customDataGridView1.CurrentRow.Cells["批次号"]).m_EndSql = " and 物品ID = " + (int)drTemp["序号"]; IBasicGoodsServer goodsService = SCM_Level01_ServerFactory.GetServerModule <IBasicGoodsServer>(); F_GoodsAttributeRecord record = goodsService.GetGoodsAttirbuteRecord(Convert.ToInt32(drTemp["序号"]), Convert.ToInt32(CE_GoodsAttributeName.来料须依据检验结果入库)); if (record != null) { customDataGridView1.CurrentRow.Cells["检验报告"].Value = Convert.ToBoolean(record.AttributeValue); } } }
///// <summary> ///// 获取指定用户计划价格表中的物品信息对话框,用户编码为null时获取所有信息 ///// </summary> ///// <param name="userCode">用户编码</param> ///// <returns>成功则返回获取到的对话框,失败返回null</returns> //static public FormQueryInfo GetPlanCostGoodsDialog(string userCode) //{ // return GetPlanCostGoodsDialog(userCode, null); //} ///// <summary> ///// 获取指定用户计划价格表中的物品信息,用户编码为null时获取所有信息 ///// </summary> ///// <param name="userCode">用户编码</param> ///// <param name="lstDepotCode">仓库类别列表</param> ///// <returns>成功则返回获取到的对话框,失败返回null</returns> //static private IQueryable<View_F_GoodsPlanCost> GetPlanCostGoods(string userCode, List<string> lstDepotCode) //{ // IBasicGoodsServer goodsServer = ServerModuleFactory.GetServerModule<IBasicGoodsServer>(); // IQueryable<View_F_GoodsPlanCost> queryResult = goodsServer.GetGoodsInfo(userCode, lstDepotCode); // return queryResult; //} ///// <summary> ///// 获取指定用户计划价格表中的物品信息对话框,用户编码为null时获取所有信息 ///// </summary> ///// <param name="userCode">用户编码</param> ///// <param name="lstDepotCode">仓库类别列表</param> ///// <returns>成功则返回获取到的对话框,失败返回null</returns> //static public FormQueryInfo GetPlanCostGoodsDialog(string userCode, List<string> lstDepotCode) //{ // IBasicGoodsServer goodsServer = ServerModuleFactory.GetServerModule<IBasicGoodsServer>(); // IQueryable<View_F_GoodsPlanCost> queryResult = goodsServer.GetGoodsInfo(userCode, lstDepotCode); // System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable<View_F_GoodsPlanCost>(queryResult); // FormQueryInfo form = new FormQueryInfo(dataTable); // form.ShowColumns = new string[] { "图号型号", "物品名称", "规格", "单位", "物品类别", "物品类别名称", "序号" }; // return form; //} /// <summary> /// 获取指定用户计划价格表中的物品信息对话框,用户编码为null时获取所有信息 /// </summary> /// <param name="userCode">用户编码</param> /// <param name="lstDepotCode">仓库类别列表</param> /// <returns>成功则返回获取到的对话框,失败返回null</returns> static public FormQueryInfo GetPlanCostGoodsDialogSift(string strWhere) { IBasicGoodsServer goodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); System.Data.DataTable dataTable = goodsServer.GetGoodsInfoSiftAttribute(strWhere); FormQueryInfo form = new FormQueryInfo(dataTable); form.ShowColumns = new string[] { "图号型号", "物品名称", "规格", "单位", "物品类别", "物品类别名称", "序号" }; return(form); }
/// <summary> /// 获取计划价格表中的物品信息对话框 /// </summary> /// <returns>成功则返回获取到的对话框,失败返回null</returns> static public FormQueryInfo GetPlanCostGoodsDialog(bool blUsing) { IBasicGoodsServer goodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); IQueryable <View_F_GoodsPlanCost> queryResult = goodsServer.GetGoodsInfo(blUsing); System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_F_GoodsPlanCost>(queryResult); FormQueryInfo form = new FormQueryInfo(dataTable); form.ShowColumns = new string[] { "图号型号", "物品名称", "规格", "单位", "物品类别", "物品类别名称", "序号" }; return(form); }
public List <View_Business_WarehouseInPut_RequisitionDetail> GetListViewDetail_OrderForm(string billNo, List <string> listOrderForm) { List <View_Business_WarehouseInPut_RequisitionDetail> listResult = new List <View_Business_WarehouseInPut_RequisitionDetail>(); string orderFormNum = ""; foreach (string item in listOrderForm) { orderFormNum += "'" + item + "',"; } orderFormNum = orderFormNum.Substring(0, orderFormNum.Length - 1); string strSql = " select a.订单号, b.物品ID , b.图号型号, b.物品名称 ,b.规格, " + " a.供货单位, b.订货数量, c.单位 from View_B_OrderFormInfo as a " + " inner join View_B_OrderFormGoods as b on a.订单号 = b.订单号 " + " inner join View_F_GoodsPlanCost as c on b.物品ID = c.序号 where a.订单号 in (" + orderFormNum + ")"; DataTable dtTemp = GlobalObject.DatabaseServer.QueryInfo(strSql); foreach (DataRow dr in dtTemp.Rows) { View_Business_WarehouseInPut_RequisitionDetail tempLnq = new View_Business_WarehouseInPut_RequisitionDetail(); tempLnq.单据号 = billNo; tempLnq.单位 = dr["单位"].ToString(); tempLnq.供应商 = dr["供货单位"].ToString(); tempLnq.关联业务 = dr["订单号"].ToString(); tempLnq.物品ID = (int)dr["物品ID"]; tempLnq.图号型号 = dr["图号型号"].ToString(); tempLnq.物品名称 = dr["物品名称"].ToString(); tempLnq.规格 = dr["规格"].ToString(); tempLnq.数量 = (decimal)dr["订货数量"]; IBasicGoodsServer goodsService = SCM_Level01_ServerFactory.GetServerModule <IBasicGoodsServer>(); F_GoodsAttributeRecord record = goodsService.GetGoodsAttirbuteRecord(tempLnq.物品ID, Convert.ToInt32(CE_GoodsAttributeName.来料须依据检验结果入库)); if (record != null) { tempLnq.检验报告 = Convert.ToBoolean(record.AttributeValue); } listResult.Add(tempLnq); } return(listResult); }
private void 条形码打印ToolStripMenuItem_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count < 1) { MessageDialog.ShowPromptMessage("请选择记录后再打印条形码"); return; } List <View_S_InDepotGoodsBarCodeTable> lstBarCodeInfo = new List <View_S_InDepotGoodsBarCodeTable>(); for (int i = 0; i < dataGridView1.SelectedRows.Count; i++) { string goodsCode = dataGridView1.SelectedRows[i].Cells["图号型号"].Value.ToString(); string goodsName = dataGridView1.SelectedRows[i].Cells["物品名称"].Value.ToString(); string spec = dataGridView1.SelectedRows[i].Cells["规格"].Value.ToString(); string provider = dataGridView1.SelectedRows[i].Cells["供应商"].Value.ToString(); string batchCode = dataGridView1.SelectedRows[i].Cells["批次号"].Value.ToString(); string StorageID = dataGridView1.SelectedRows[i].Cells["库房编码"].Value.ToString(); IBarCodeServer server = ServerModuleFactory.GetServerModule <IBarCodeServer>(); View_S_InDepotGoodsBarCodeTable barcode = server.GetBarCodeInfo(goodsCode, goodsName, spec, provider, batchCode, StorageID); if (barcode == null) { S_InDepotGoodsBarCodeTable newBarcode = new S_InDepotGoodsBarCodeTable(); IBasicGoodsServer basicServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); newBarcode.GoodsID = basicServer.GetGoodsID(goodsCode, goodsName, spec); newBarcode.Provider = provider; newBarcode.BatchNo = batchCode; newBarcode.ProductFlag = "0"; newBarcode.StorageID = StorageID; if (!server.Add(newBarcode, out m_err)) { MessageDialog.ShowErrorMessage(m_err); return; } barcode = server.GetBarCodeInfo(goodsCode, goodsName, spec, provider, batchCode, StorageID); } lstBarCodeInfo.Add(barcode); } foreach (var item in lstBarCodeInfo) { ServerModule.PrintPartBarcode.PrintBarcodeList(item); } }
/// <summary> /// 从行记录中提取物品对象信息 /// </summary> /// <param name="row">行记录</param> /// <returns>提取的物品信息</returns> View_S_HomemadeRejectList GetGoodsInfo(DataGridViewRow row) { if (row == null) { return(null); } View_S_HomemadeRejectList goods = new View_S_HomemadeRejectList(); goods.序号 = (long)row.Cells["序号"].Value; goods.退货单号 = (string)row.Cells["退货单号"].Value; goods.物品ID = (int)row.Cells["物品ID"].Value; goods.图号型号 = (string)row.Cells["图号型号"].Value; goods.物品名称 = (string)row.Cells["物品名称"].Value; goods.规格 = (string)row.Cells["规格"].Value; goods.供应商 = (string)row.Cells["供应商"].Value; goods.批次号 = (string)row.Cells["批次号"].Value; goods.供方批次 = (string)row.Cells["供方批次"].Value; goods.退货数 = (decimal)row.Cells["退货数"].Value; goods.备注 = (string)row.Cells["备注"].Value; View_F_GoodsPlanCost basicGoodsInfo = null; if (row.Cells["单位"].Value != System.DBNull.Value) { goods.单位 = (string)row.Cells["单位"].Value; goods.物品类别 = (string)row.Cells["物品类别"].Value; goods.货架 = Convert.ToString(row.Cells["货架"].Value); goods.列 = Convert.ToString(row.Cells["列"].Value); goods.层 = Convert.ToString(row.Cells["层"].Value); } else { IBasicGoodsServer basicGoodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); basicGoodsInfo = basicGoodsServer.GetGoodsInfo(goods.图号型号, goods.物品名称, goods.规格, out m_strErr); if (!string.IsNullOrEmpty(m_strErr)) { MessageDialog.ShowErrorMessage(m_strErr); return(null); } goods.单位 = basicGoodsInfo.单位; } return(goods); }
/// <summary> /// 从行记录中提取物品对象信息 /// </summary> /// <param name="row">行记录</param> /// <returns>提取的物品信息</returns> View_S_MaterialListRejectBill GetGoodsInfo(DataGridViewRow row) { if (row == null) { return(null); } View_S_MaterialListRejectBill goods = new View_S_MaterialListRejectBill(); goods.序号 = (long)row.Cells["序号"].Value; goods.退货单号 = (string)row.Cells["退货单号"].Value; goods.物品ID = (int)row.Cells["物品ID"].Value; goods.图号型号 = (string)row.Cells["图号型号"].Value; goods.物品名称 = (string)row.Cells["物品名称"].Value; goods.规格 = (string)row.Cells["规格"].Value; goods.供应商 = (string)row.Cells["供应商"].Value; goods.批次号 = (string)row.Cells["批次号"].Value; goods.供方批次 = (string)row.Cells["供方批次"].Value; goods.退货数 = (decimal)row.Cells["退货数"].Value; goods.备注 = (string)row.Cells["备注"].Value; goods.关联单号 = (string)row.Cells["关联单号"].Value; View_F_GoodsPlanCost basicGoodsInfo = null; if (row.Cells["单位"].Value != System.DBNull.Value) { goods.单位 = (string)row.Cells["单位"].Value; goods.物品类别 = (string)row.Cells["物品类别"].Value; goods.货架 = (string)row.Cells["货架"].Value; goods.列 = (string)row.Cells["列"].Value; goods.层 = (string)row.Cells["层"].Value; } else { IBasicGoodsServer basicGoodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); basicGoodsInfo = basicGoodsServer.GetGoodsInfo(goods.图号型号, goods.物品名称, goods.规格, out m_error); if (!GlobalObject.GeneralFunction.IsNullOrEmpty(m_error)) { MessageDialog.ShowErrorMessage(m_error); return(null); } goods.单位 = basicGoodsInfo.单位; } return(goods); }
/// <summary> /// 插入临时表 /// </summary> /// <param name="code">产品型号</param> /// <param name="count">数量</param> public void AddTempTable(string code, decimal count) { DepotManagementDataContext dataContext = CommentParameter.DepotDataContext; S_ForWantingReportTemp lnqFor = new S_ForWantingReportTemp(); IBasicGoodsServer serverGoods = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); string error = ""; View_F_GoodsPlanCost tempLnq = serverGoods.GetGoodsInfo(code, "", out error); lnqFor.GoodsID = tempLnq == null ? 0 : tempLnq.序号; lnqFor.Count = count; dataContext.S_ForWantingReportTemp.InsertOnSubmit(lnqFor); dataContext.SubmitChanges(); }
/// <summary> /// 获取计划价格表中的物品信息对话框 /// </summary> /// <returns>成功则返回获取到的对话框,失败返回null</returns> static public FormQueryInfo GetOrderFormGoodsDialog(string provider) { IBasicGoodsServer goodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); using (DepotManagementDataContext ctx = CommentParameter.DepotDataContext) { IQueryable <View_F_GoodsPlanCost> queryResult = (from a in ctx.View_F_GoodsPlanCost join b in ctx.Bus_PurchasingMG_UnitPriceList on a.序号 equals b.GoodsID where b.Provider == provider && b.ValidityStart <= ServerTime.Time && b.ValidityEnd >= ServerTime.Time && a.禁用 == false orderby a.图号型号, a.物品名称, a.规格 select a).Distinct(); FormQueryInfo form = new FormQueryInfo(queryResult); form.ShowColumns = new string[] { "图号型号", "物品名称", "规格", "单位", "物品类别", "物品类别名称", "序号" }; return(form); } }
/// <summary> /// 从行记录中提取物品对象信息 /// </summary> /// <param name="row">行记录</param> /// <returns>提取的物品信息</returns> View_S_MaterialDetainList GetGoodsInfo(DataGridViewRow row) { if (row == null) { return(null); } View_S_MaterialDetainList goods = new View_S_MaterialDetainList(); goods.序号 = (int)row.Cells["序号"].Value; goods.扣货单号 = (string)row.Cells["扣货单号"].Value; goods.物品ID = (int)row.Cells["物品ID"].Value; goods.图号型号 = (string)row.Cells["图号型号"].Value; goods.物品名称 = (string)row.Cells["物品名称"].Value; goods.规格 = (string)row.Cells["规格"].Value; goods.供应商 = (string)row.Cells["供应商"].Value; goods.批次号 = (string)row.Cells["批次号"].Value; goods.扣货数 = (decimal)row.Cells["扣货数"].Value; goods.备注 = (string)row.Cells["备注"].Value; goods.单位 = row.Cells["单位"].Value.ToString(); goods.关联订单号 = (string)row.Cells["关联订单号"].Value.ToString(); View_F_GoodsPlanCost basicGoodsInfo = null; IBasicGoodsServer basicGoodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); basicGoodsInfo = basicGoodsServer.GetGoodsInfo(goods.图号型号, goods.物品名称, goods.规格, out m_strErr); if (!GlobalObject.GeneralFunction.IsNullOrEmpty(m_strErr)) { MessageDialog.ShowErrorMessage(m_strErr); return(null); } return(goods); }
/// <summary> /// 更改数据CVT客户基础信息 /// </summary> /// <param name="cvtCustomer">CVT客户信息</param> /// <param name="error">c错误信息</param> /// <returns>更改成功返回True,更改失败返回False</returns> public bool UpdateCVTCustomerInformation(YX_CVTCustomerInformation cvtCustomer, out string error) { error = null; try { DepotManagementDataContext dataContext = CommentParameter.DepotDataContext; var varData = from a in dataContext.YX_CVTCustomerInformation where a.ID != cvtCustomer.ID && a.VehicleShelfNumber == cvtCustomer.VehicleShelfNumber select a; if (varData.Count() != 0) { error = "数据不唯一"; return(false); } else { var varCVT = from a in dataContext.YX_CVTCustomerInformation where a.ID == cvtCustomer.ID select a; if (varCVT.Count() == 1) { YX_CVTCustomerInformation lnqCustomer = varCVT.Single(); lnqCustomer.CarModelID = cvtCustomer.CarModelID; lnqCustomer.ClientName = cvtCustomer.ClientName; lnqCustomer.CVTNumber = cvtCustomer.CVTNumber; lnqCustomer.DealerName = cvtCustomer.DealerName; lnqCustomer.FullAddress = cvtCustomer.FullAddress; lnqCustomer.PhoneNumber = cvtCustomer.PhoneNumber; lnqCustomer.ProductID = cvtCustomer.ProductID; lnqCustomer.Remark = cvtCustomer.Remark; lnqCustomer.SellDate = cvtCustomer.SellDate; lnqCustomer.SiteCity = cvtCustomer.SiteCity; lnqCustomer.SiteProvince = cvtCustomer.SiteProvince; lnqCustomer.VehicleShelfNumber = cvtCustomer.VehicleShelfNumber; lnqCustomer.VKT = cvtCustomer.VKT; lnqCustomer.OverTheReason = cvtCustomer.OverTheReason; lnqCustomer.ProofNo = cvtCustomer.ProofNo; var varInfo = from a in dataContext.YX_CVTCustomerInformation where a.VehicleShelfNumber == cvtCustomer.VehicleShelfNumber select a; if (varInfo.Count() == 1) { YX_CVTCustomerInformation lnqInfo = varInfo.Single(); if (lnqInfo.CVTNumber != cvtCustomer.CVTNumber) { YX_CVTCustomerInformationHistory lnqCustomerHistory = new YX_CVTCustomerInformationHistory(); IProductListServer serverProcutList = ServerModuleFactory.GetServerModule <IProductListServer>(); lnqCustomerHistory.CarModel = serverProcutList.GetMotorcycleInfo(Convert.ToInt32(cvtCustomer.CarModelID)); lnqCustomerHistory.ClientName = cvtCustomer.ClientName; IBasicGoodsServer serverBasicGoods = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); F_GoodsPlanCost lnqGoods = serverBasicGoods.GetGoodsInfo(Convert.ToInt32(cvtCustomer.ProductID)); lnqCustomerHistory.CVTType = lnqGoods.GoodsCode; lnqCustomerHistory.DealerName = cvtCustomer.DealerName; lnqCustomerHistory.FinishDate = ServerTime.Time; lnqCustomerHistory.FinishPersonnel = BasicInfo.LoginName; lnqCustomerHistory.NewPartCode = cvtCustomer.CVTNumber; lnqCustomerHistory.OldPartCode = lnqInfo.CVTNumber; lnqCustomerHistory.Remark = "手动修改"; lnqCustomerHistory.ReplaceCode = lnqGoods.GoodsCode; lnqCustomerHistory.ReplaceName = lnqGoods.GoodsName; lnqCustomerHistory.ReplaceSpec = lnqGoods.Spec; lnqCustomerHistory.VehicleShelfNumber = cvtCustomer.VehicleShelfNumber; dataContext.YX_CVTCustomerInformationHistory.InsertOnSubmit(lnqCustomerHistory); } } } } dataContext.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
private void btnPrintCVTBarcodes_Click(object sender, EventArgs e) { StringBuilder error = new StringBuilder(); string errorTemp = null; 打印整台份返修箱条码 form = new 打印整台份返修箱条码(); form.ShowDialog(); List <View_ZPX_ReparativeBarcode> lstPrintData = form.PrintData; if (lstPrintData != null && form.blPrintFlag && lstPrintData.Count > 0) { if (MessageDialog.ShowEnquiryMessage("此过程需要一段时间,是否继续?") == DialogResult.No) { return; } List <View_S_InDepotGoodsBarCodeTable> lstBarCodeInfo = new List <View_S_InDepotGoodsBarCodeTable>(); DateTime dt = ServerModule.ServerTime.Time; IBasicGoodsServer basicGoodsServer = ServerModuleFactory.GetServerModule <IBasicGoodsServer>(); Dictionary <int, int> dicBarcode = new Dictionary <int, int>(); try { Cursor.Current = Cursors.WaitCursor; foreach (var item in lstPrintData) { // 装配挑选回收件 string batchCode = "ZTJ" + dt.ToString("yyyyMMdd"); string goodsCode = item.零部件编码; string goodsName = item.零部件名称; string spec = item.规格; string provider = item.供货单位; string StorageID = "01"; View_S_InDepotGoodsBarCodeTable barcode = null; S_InDepotGoodsBarCodeTable newBarcode = new S_InDepotGoodsBarCodeTable(); newBarcode.GoodsID = basicGoodsServer.GetGoodsID(goodsCode, goodsName, spec); if (newBarcode.GoodsID == 0) { error.AppendLine("[" + goodsCode + "]" + "[" + goodsName + "]" + "[" + spec + "] 无物品ID"); continue; } newBarcode.Provider = provider; newBarcode.BatchNo = batchCode; newBarcode.ProductFlag = "0"; newBarcode.StorageID = StorageID; barcode = m_barCodeServer.GetBarCodeInfo(goodsCode, goodsName, spec, provider, batchCode, StorageID); if (barcode == null) { if (!m_barCodeServer.Add(newBarcode, out errorTemp)) { MessageDialog.ShowErrorMessage(errorTemp); return; } } barcode = m_barCodeServer.GetBarCodeInfo(goodsCode, goodsName, spec, provider, batchCode, StorageID); barcode.物品ID = item.数量; dicBarcode.Add(barcode.条形码, item.数量); if (barcode.工位 != null) { string[] workBench = barcode.工位.Split(new char[] { ',' }); if (workBench.Length == 1) { lstBarCodeInfo.Add(barcode); } else { foreach (var wb in workBench) { View_S_InDepotGoodsBarCodeTable barCode = GlobalObject.CloneObject.CloneProperties <View_S_InDepotGoodsBarCodeTable>(barcode); barCode.工位 = wb; lstBarCodeInfo.Add(barCode); } } } else { barcode.工位 = ""; lstBarCodeInfo.Add(barcode); } } lstBarCodeInfo.Sort(this.SortMethod); foreach (var barcode in lstBarCodeInfo) { // barcode.物品ID 中保存的为数量 ServerModule.PrintPartBarcode.PrintBarcodeList(barcode, barcode.物品ID); } if (MessageDialog.ShowEnquiryMessage("是否将当前打印物品数量增加到多批次管理信息中?") == DialogResult.Yes) { IMultiBatchPartServer multiBatchPartServer = ServerModuleFactory.GetServerModule <IMultiBatchPartServer>(); if (!multiBatchPartServer.AddFromReparativePartList(GlobalObject.BasicInfo.LoginID, form.PurposeID, dicBarcode, out m_err)) { MessageDialog.ShowErrorMessage(m_err); } } } catch (Exception exce) { MessageDialog.ShowErrorMessage(exce.Message); } finally { Cursor.Current = Cursors.Arrow; } } if (error.Length > 0) { MessageDialog.ShowErrorMessage(error.ToString()); } }
/// <summary> /// 更新返修零件信息 /// </summary> /// <param name="lstInfo">要添加的条形码信息</param> /// <param name="error">出错时输出错误信息</param> /// <returns>返回操作是否成功的标志</returns> /// <remarks>打印条形码时如果找不到此物品的条形码时直接生成条形码用</remarks> public bool Update(List <StateData <View_ZPX_ReparativeBarcode> > lstInfo, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; IBasicGoodsServer serverBasicGoods = SCM_Level01_ServerFactory.GetServerModule <IBasicGoodsServer>(); int intGoodsID = 0; foreach (var item in lstInfo) { intGoodsID = serverBasicGoods.GetGoodsID(item.Data.零部件编码, item.Data.零部件名称, item.Data.规格); if (intGoodsID == 0) { error = string.Format("获取不到 {0}, {1}, 规格:{2} 的物品的物品编号,请与管理员联系", item.Data.零部件编码, item.Data.零部件名称, item.Data.规格); return(false); } ZPX_ReparativeBarcode data = new ZPX_ReparativeBarcode(); data.ID = item.Data.序号; data.Edition = item.Data.产品编码; data.GoodsID = intGoodsID; data.Amount = item.Data.数量; data.Provider = item.Data.供货单位; data.Position = item.Data.位置; IQueryable <ZPX_ReparativeBarcode> result = null; if (data.ID != 0) { result = from r in ctx.ZPX_ReparativeBarcode where r.ID == data.ID select r; } else { result = from r in ctx.ZPX_ReparativeBarcode where r.Edition == data.Edition && r.GoodsID == intGoodsID select r; } switch (item.DataStatus) { case StateData <View_ZPX_ReparativeBarcode> .DataStatusEnum.Add: if (result.Count() > 0) { error = string.Format("{0}, {1}, 规格:{2} 的物品已经存在不允许重复添加", item.Data.零部件编码, item.Data.零部件名称, item.Data.规格); return(false); } ctx.ZPX_ReparativeBarcode.InsertOnSubmit(data); break; case StateData <View_ZPX_ReparativeBarcode> .DataStatusEnum.Delete: if (result.Count() == 0) { error = string.Format("{0}, {1}, 规格:{2} 的物品不存在无法删除", item.Data.零部件编码, item.Data.零部件名称, item.Data.规格); return(false); } ctx.ZPX_ReparativeBarcode.DeleteOnSubmit(result.Single()); break; case StateData <View_ZPX_ReparativeBarcode> .DataStatusEnum.Update: if (result.Count() == 0) { error = string.Format("{0}, {1}, 规格:{2} 的物品不存在无法更新", item.Data.零部件编码, item.Data.零部件名称, item.Data.规格); return(false); } var record = result.Single(); record.Amount = data.Amount; record.Provider = data.Provider; record.Position = data.Position; break; } } ctx.SubmitChanges(); return(true); } catch (Exception exce) { error = exce.Message; return(false); } }
/// <summary> /// 产品编号处理 /// </summary> /// <param name="productTable">产品编号列表</param> /// <param name="code">产品型号</param> /// <param name="zcCode">总成号</param> /// <param name="goodsID">物品ID</param> /// <param name="djh">单据号</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>处理成功返回True,处理失败返回False</returns> public bool UpdateProducts(DataTable productTable, string code, string zcCode, int goodsID, string djh, out string error) { error = null; DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext; try { //删除原有的同物品同批次的所有产品的唯一编码 var varData_Del = from a in dataContxt.ProductsCodes where a.DJH == djh && a.GoodsID == goodsID select a; dataContxt.ProductsCodes.DeleteAllOnSubmit(varData_Del); dataContxt.SubmitChanges(); //FOR循环进行添加 List <ProductsCodes> lisList = new List <ProductsCodes>(); if (productTable.Rows.Count == 0) { return(true); } else { for (int i = 0; i < productTable.Rows.Count; i++) { var varData = from a in dataContxt.ProductsCodes where a.DJH == djh && a.GoodsID == goodsID && a.ProductCode == productTable.Rows[i]["ProductCode"].ToString() select a; if (varData.Count() == 0) { IBasicGoodsServer serverBasicGoods = SCM_Level01_ServerFactory.GetServerModule <IBasicGoodsServer>(); View_F_GoodsPlanCost tempGoodsLnq = UniversalFunction.GetGoodsInfo(goodsID); if (tempGoodsLnq == null) { throw new Exception("系统中无此物品信息"); } ProductsCodes lnqList = new ProductsCodes(); lnqList.ProductCode = productTable.Rows[i]["ProductCode"].ToString(); lnqList.GoodsName = tempGoodsLnq.物品名称; lnqList.GoodsCode = tempGoodsLnq.图号型号; lnqList.Spec = tempGoodsLnq.规格; lnqList.GoodsID = goodsID; lnqList.Code = code; lnqList.ZcCode = zcCode; lnqList.DJH = djh; lnqList.BoxNo = productTable.Rows[i]["BoxNo"].ToString(); lisList.Add(lnqList); } } dataContxt.ProductsCodes.InsertAllOnSubmit(lisList); dataContxt.SubmitChanges(); } return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
/// <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)); }