/// <summary> /// 方法说明:新增物料卡片关联记录 /// 作 者:jason.tang /// 完成时间:2013-03-26 /// </summary> /// <param name="materialCardRelation">物料卡片关联实体</param> /// <returns></returns> public static Guid AddMaterialCardRelationData(MaterialCardRelation materialCardRelation) { try { Guid id = MaterialCardRelationDAL.AddMaterialCardRelationData(materialCardRelation); return(id); } catch { throw; } }
/// <summary> /// 方法说明:新增物料卡片关联记录 /// 作 者:jason.tang /// 完成时间:2013-03-26 /// </summary> /// <param name="materialCardRelation">物料卡片关联实体</param> /// <returns></returns> public static Guid AddMaterialCardRelationData(MaterialCardRelation materialCardRelation) { try { string strsql = @" INSERT INTO [dbo].[MaterialCardRelation] ([MaterialCardRelationId] ,[MaterialId] ,[ProcessCardId] ,[CardSort] ,[Type]) VALUES (@MaterialCardRelationId ,@MaterialId ,@ProcessCardId ,@CardSort ,@Type);"; int cardSort = GetMaxCardSort(materialCardRelation.MaterialId); using (DbCommand cmd = db.GetSqlStringCommand(strsql)) { db.AddInParameter(cmd, "@MaterialCardRelationId", DbType.Guid, materialCardRelation.MaterialCardRelationId); db.AddInParameter(cmd, "@MaterialId", DbType.Guid, materialCardRelation.MaterialId); db.AddInParameter(cmd, "@ProcessCardId", DbType.Guid, materialCardRelation.ProcessCardId); db.AddInParameter(cmd, "@CardSort", DbType.Int32, cardSort); db.AddInParameter(cmd, "@Type", DbType.Int32, materialCardRelation.Type); db.ExecuteScalar(cmd); return(materialCardRelation.MaterialCardRelationId); } } catch (Exception ex) { throw ex; } }
private void btnConfirm_Click(object sender, EventArgs e) { if (tvProcessProcedure.SelectedNode.SelectedImageKey == "card") { string tag = tvProcessProcedure.SelectedNode.Parent.Tag.ToString(); string processPlanningId = tag.Substring(0, tag.IndexOf("@")); string foderId = tag.Substring(tag.IndexOf("@") + 1); List <ProcessCard> processCards = PlanningCardRelationBLL.GetProcessCardListByProcessPlanningId(new Guid(processPlanningId)); string cardId = tvProcessProcedure.SelectedNode.Tag.ToString().Substring(0, tvProcessProcedure.SelectedNode.Tag.ToString().IndexOf("@")); ProcessCard card = processCards.FirstOrDefault(c => c.ID == new Guid(cardId)); if (card != null) { //添加节点 string baseid = MaterialStructureNavigate.materialNavigateFrm.AddNodeInMaterial(card, foderId); if (string.IsNullOrEmpty(baseid)) { return; } MaterialCardRelation materialCardRelation = new MaterialCardRelation(); materialCardRelation.MaterialCardRelationId = Guid.NewGuid(); materialCardRelation.MaterialId = new Guid(baseid); materialCardRelation.ProcessCardId = card.ID; materialCardRelation.Type = ViewType; Kingdee.CAPP.BLL.MaterialCardRelationBLL.AddMaterialCardRelationData(materialCardRelation); } } else if (tvProcessProcedure.SelectedNode.SelectedImageKey == "planning") { string tag = tvProcessProcedure.SelectedNode.Tag.ToString(); string processPlanningId = tag.Substring(0, tag.IndexOf("@")); string foderId = tag.Substring(tag.IndexOf("@") + 1); List <ProcessCard> processCards = PlanningCardRelationBLL.GetProcessCardListByProcessPlanningId(new Guid(processPlanningId)); if (processCards.Count > 0) { foreach (ProcessCard card in processCards) { //添加节点 string baseid = MaterialStructureNavigate.materialNavigateFrm.AddNodeInMaterial(card, foderId); if (string.IsNullOrEmpty(baseid)) { continue; } MaterialCardRelation materialCardRelation = new MaterialCardRelation(); materialCardRelation.MaterialCardRelationId = Guid.NewGuid(); materialCardRelation.MaterialId = new Guid(baseid); materialCardRelation.ProcessCardId = card.ID; materialCardRelation.Type = ViewType; Kingdee.CAPP.BLL.MaterialCardRelationBLL.AddMaterialCardRelationData(materialCardRelation); } } } this.DialogResult = System.Windows.Forms.DialogResult.OK; }
/// <summary> /// 方法说明:新建卡片 /// 作 者:jason.tang /// 完成时间:2013-03-05 /// </summary> private void NewCard() { using (CardModuleChooseFrm chooseFrm = new CardModuleChooseFrm()) { if (chooseFrm.ShowDialog() == System.Windows.Forms.DialogResult.OK) { ProcessCardFrm frm = new ProcessCardFrm(); frm.ProcessFolderId = chooseFrm.ProcessFolderId; if (tcDesignView.SelectedTab == tbMaterial) { frm.Name = string.Format("ProcessCardFrm-{0}-NAVG", Guid.NewGuid().ToString()); } else { frm.Name = string.Format("ProcessCardFrm-{0}-NAVP", Guid.NewGuid().ToString()); } if (!string.IsNullOrEmpty(chooseFrm.ProcessCardId)) { //frm.TabText = chooseFrm.ProcessCardName; //MainFrm.mainFrm.OpenModule(frm); //bool result = frm.OpenCard(null, chooseFrm.ProcessCardId, true); //if (!result) //{ // MainFrm.mainFrm.CloseModule(frm); //} //添加节点 ProcessCardBLL bll = new ProcessCardBLL(); ProcessCard card = bll.GetProcessCard(new Guid(chooseFrm.ProcessCardId)); string baseid = AddNodeInMaterial(card, frm.ProcessFolderId); if (string.IsNullOrEmpty(baseid)) { MessageBox.Show("该物料下已包含相同的卡片", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } MaterialCardRelation materialCardRelation = new MaterialCardRelation(); materialCardRelation.MaterialCardRelationId = Guid.NewGuid(); materialCardRelation.MaterialId = new Guid(baseid); materialCardRelation.ProcessCardId = card.ID; if (tcDesignView.SelectedTab == tbMaterial) { materialCardRelation.Type = 1; } else { materialCardRelation.Type = 2; } Kingdee.CAPP.BLL.MaterialCardRelationBLL.AddMaterialCardRelationData(materialCardRelation); return; } #region 设置新增卡片Tab的TabText及Name int tag = 1; int index = 1; List <int> listIndex = new List <int>(); foreach (DockContent form in this.MdiChildren) { if (form.Name.StartsWith("ProcessCardFrm") && form.TabText.StartsWith(chooseFrm.ModuleName)) { tag = int.Parse(form.TabText.Substring(form.TabText.IndexOf("-") + 1)); listIndex.Add(tag); } } listIndex.Sort(); foreach (var i in listIndex) { if (i > 1 && index == 1) { index = 1; break; } if (index > 1) { if (i - listIndex[index - 2] > 1) { index = listIndex[index - 2] + 1; break; } } index++; } frm.TabText = string.Format("{0}-{1}", chooseFrm.ModuleName, index); #endregion frm.ModuleId = chooseFrm.ModuleId; frm.ModuleName = chooseFrm.ModuleName; if (tcDesignView.SelectedTab == tbMaterial) { frm.ModuleObject = tvMaterialDesign.SelectedNode.Tag; frm.PBomID = string.Empty; } else { frm.ModuleObject = tvMaterialPBom.SelectedNode.Tag; frm.PBomID = tvMaterialPBom.SelectedNode.Name; } MainFrm.mainFrm.OpenModule(frm); } } }