コード例 #1
0
 /// <summary>
 /// 表格行鼠标双击事件
 /// </summary>
 /// <param name="sender">事件对象</param>
 /// <param name="e">事件参数</param>
 private void t_pgg_Bill_MouseDoubleClick(object sender, MouseButtonEventArgs e)
 {
     try
     {
         if (t_pgg_Bill.SelectedItem == null)
         {
             return;
         }
         XTreeNode myItem    = t_tvw_Module.SelectedItem as XTreeNode;
         string    myTag     = string.Empty;
         string    parentTag = string.Empty;
         if (myItem == null && m_MQuery != null)
         {
             myTag = m_MQuery.BillType;
         }
         else
         {
             myTag = myItem.Tag.ToString();
             if (myItem.Parent != null)
             {
                 parentTag = myItem.Parent.Tag.ToString();
             }
         }
         if (myTag == "Q" || parentTag == "Q")
         {
             PT_B_Quotation myModel = (PT_B_Quotation)t_pgg_Bill.SelectedItem;
             FrmQuotation   myForm  = new FrmQuotation();
             myForm.PTBQuotation = myModel;
             myForm.ShowDialog();
             m_Entities.Dispose();
             m_Entities = new ProjectTrackingEntities();
             RefreshTreeNode();
         }
         else
         {
             PT_B_Project myModel = (PT_B_Project)t_pgg_Bill.SelectedItem;
             FrmProject   myForm  = new FrmProject();
             myForm.PTBProject = myModel;
             myForm.ShowDialog();
             m_Entities.Dispose();
             m_Entities = new ProjectTrackingEntities();
             RefreshTreeNode();
         }
     }
     catch (Exception ex)
     {
         XMessageBox.Exception(ex);
     }
 }
コード例 #2
0
 /// <summary>
 /// 新建报价单窗口
 /// </summary>
 /// <param name="sender">事件对象</param>
 /// <param name="e">事件参数</param>
 private void t_btn_New_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         FrmQuotation myForm = new FrmQuotation();
         myForm.ShowDialog();
         m_Entities.Dispose();
         m_Entities = new ProjectTrackingEntities();
         RefreshTreeNode();
     }
     catch (Exception ex)
     {
         XMessageBox.Exception(ex);
     }
 }
コード例 #3
0
        /// <summary>
        /// 保存方法
        /// </summary>
        private bool SaveMethod()
        {
            //新单模式
            if (string.IsNullOrEmpty(PTBQuotation.Bill_Status))
            {
                string newQuotationNo = string.Empty;
                //手动录入单号情况
                if (m_IsHand)
                {
                    //校验是否新单
                    if (t_txt_QuotationNo.Text.Trim() == "新单" || string.IsNullOrEmpty(t_txt_QuotationNo.Text.Trim()))
                    {
                        XMessageBox.Warning("报价单号不能为空或包含【新单】字符!");
                        t_txt_QuotationNo.Focus();
                        return(false);
                    }
                    //校验是否重号
                    var temp = from p in m_Entities.PT_B_Quotation
                               where p.Quotation_No == t_txt_QuotationNo.Text.Trim()
                               select p;
                    if (temp.ToList().Count > 0)
                    {
                        string mes = string.Format("报价单号:{0} 已存在,请修改!", t_txt_QuotationNo.Text.Trim());
                        XMessageBox.Warning(mes);
                        t_txt_QuotationNo.Focus();
                        return(false);
                    }
                    newQuotationNo = t_txt_QuotationNo.Text.Trim();
                }
                else
                {
                    //单号自动生成
                    newQuotationNo = m_SerialNumberMethod.GetMaxQNumber();
                }

                PTBQuotation.Quotation_Id = Guid.NewGuid().ToString("N");
                SaveModel(newQuotationNo);
                m_Entities.PT_B_Quotation.Add(PTBQuotation);
                t_txt_QuotationNo.Text = newQuotationNo;
                t_tslStateText.Text    = "已入库";
            }
            else
            {
                //打开单证,手动录入单号情况
                if (m_IsHand)
                {
                    //校验是否新单
                    if (t_txt_QuotationNo.Text.Trim() == "新单" || string.IsNullOrEmpty(t_txt_QuotationNo.Text.Trim()))
                    {
                        XMessageBox.Warning("报价单号不能为空或包含【新单】字符!");
                        t_txt_QuotationNo.Focus();
                        return(false);
                    }
                    //当报价单号有修改时
                    if (t_txt_QuotationNo.Text.Trim() != PTBQuotation.Quotation_No)
                    {
                        //读取数据库判断是否有重号
                        ProjectTrackingEntities qEntities = new ProjectTrackingEntities();
                        var temp = from p in qEntities.PT_B_Quotation
                                   where p.Quotation_No == t_txt_QuotationNo.Text.Trim()
                                   select p;
                        if (temp.ToList().Count > 0)
                        {
                            string mes = string.Format("报价单号:{0} 已存在,请修改!", t_txt_QuotationNo.Text.Trim());
                            XMessageBox.Warning(mes);
                            t_txt_QuotationNo.Focus();
                            return(false);
                        }
                        ProjectTrackingEntities pEntities = new ProjectTrackingEntities();
                        //读取原报价单所关联的项目单
                        var project = from p in pEntities.PT_B_Project
                                      where p.Quotation_No == PTBQuotation.Quotation_No
                                      orderby p.Project_No
                                      select p;
                        //修改项目单的关联报价单号
                        foreach (PT_B_Project projectModel in project)
                        {
                            projectModel.Quotation_No           = t_txt_QuotationNo.Text.Trim();
                            pEntities.Entry(projectModel).State = System.Data.Entity.EntityState.Modified;
                        }
                        if (project.ToList().Count > 0)
                        {
                            pEntities.SaveChanges();
                        }
                    }
                }
                SaveModel(t_txt_QuotationNo.Text);
                m_Entities.Entry(PTBQuotation).State = System.Data.Entity.EntityState.Modified;
            }
            m_Entities.SaveChanges();
            return(true);
        }