示例#1
0
文件: ComJobUC.cs 项目: ATGfx/MMSoft
        public ComJobUC(DatabaseManager DBManager_O, DocumentManager DocManager_O)
        {
            InitializeComponent();

            this.ComJobSelector.AddComToolStripBtn(this.ToolStripBtnCancelCmd);
            this.ComJobSelector.AddComToolStripBtn(this.ToolStripBtnAddCom);
            this.ToolStripCom.Visible = false;
            this.ComJobSelector.AddJobToolStripBtn(this.ToolStripBtnCancelJob);
            this.ComJobSelector.AddJobToolStripBtn(this.ToolStripBtnAddJob);
            this.ToolStripJob.Visible = false;

            mDBManager_O  = DBManager_O;
            mDocManager_O = DocManager_O;

            ComJobSelector.Initialize(mDBManager_O);

            SetComEditState(false);
            SetJobEditState(false);

            ComJobSelector.GetComListView().SelectionChanged += new DBListView.SelectionChangedHandler(this.ComClick);
            ComJobSelector.GetJobListView().SelectionChanged += new DBListView.SelectionChangedHandler(this.JobClick);

            JobAssociatedDep.Initialize(mDBManager_O);
            JobAssociatedDep.DepartmentsModified += new DepartmentSelector.DepartmentsModifiedHandler(this.JobValueChanged);

            ToolStripComTools.Renderer     = new BorderlessToolStripRenderer();
            ToolStripJobTools.Renderer     = new BorderlessToolStripRenderer();
            ToolStripComHeader.Renderer    = new BorderlessToolStripRenderer();
            ToolStripJobHeader.Renderer    = new BorderlessToolStripRenderer();
            ToolStripJobDocuments.Renderer = new BorderlessToolStripRenderer();
            ToolStripNEAndCertif.Renderer  = new BorderlessToolStripRenderer();
            ControlStyle.SetBackgroundStyle(this);
            ControlStyle.SetFrameHeaderStyle(this.ToolStripComTools);
            ControlStyle.SetFrameHeaderStyle(this.ToolStripJobTools);
            ControlStyle.SetBackgroundStyle(this.splitContainer1.Panel2);
            ControlStyle.SetFrameHeaderStyle(this.splitContainer2.Panel1);
            ControlStyle.SetFrameHeaderStyle(this.splitContainer2.Panel2);
            ControlStyle.SetFrameStyle(this.ToolStripComEditFooter);
            ControlStyle.SetFrameStyle(this.PanelCmdInfo);
            ControlStyle.SetFrameStyle(this.PanelJobInfo);
            ControlStyle.SetFrameStyle(this.ToolStripJobEditFooter);
            ControlStyle.SetFrameStyle(this.JobAssociatedDep);
            ControlStyle.SetFrameStyle(this.ToolStripJobDocuments);
            ControlStyle.SetFrameStyle(this.ToolStripNEAndCertif);
        }
示例#2
0
文件: ComJobUC.cs 项目: ATGfx/MMSoft
        private void ClearJobInfo()
        {
            mIgnoreJobValueChangedEvent_b = true;

            ToolStripBtnJobLib.Text   = "";
            TxtQte.Text               = "";
            TxtQteProd.Text           = "";
            TxtQteFact.Text           = "";
            TxtHEstim.Text            = "";
            TxtPVUnitEst.Text         = "";
            TxtPVUnitFact.Text        = "";
            TxtJobStatus.Text         = "";
            TxtJobInfo.Text           = "";
            CheckBoxRegieWork.Checked = false;
            DTPClientDelay.Value      = DTPClientDelay.MinDate;
            DTPPromiseDelay.Value     = DTPPromiseDelay.MinDate;
            JobAssociatedDep.Clear();
            TxtHPrest.Text    = "";
            JobProgress.Value = 0;

            mIgnoreJobValueChangedEvent_b = false;
        }
示例#3
0
文件: ComJobUC.cs 项目: ATGfx/MMSoft
        private void BtnSaveJobChanges_Click(object sender, EventArgs e)
        {
            if (mJobEditState_b)
            {
                UInt32 JobID_UL = ComJobSelector.GetJobListView().GetSelectedItemID();
                //Build update request
                if (mDBManager_O != null && mDBManager_O.mConnected_b)
                {
                    List <String> Param_O  = new List <String>();
                    List <Object> Values_O = new List <Object>();

                    String SQLCommand_st = @"UPDATE ComJob SET JobLib=@JobLib, Qte=@Qte, QteProd=@QteProd, HTravEstim=@HTravEstim, CoutEstim=@CoutEstim, DelaiClient=@DelaiClient," +
                                           "DelaiPromis=@DelaiPromis, ChkRegie=@ChkRegie, InfoJob=@InfoJob " +
                                           "WHERE ComJobID=@ComJobID";

                    Param_O.Add("@JobLib");
                    Param_O.Add("@Qte");
                    Param_O.Add("@QteProd");
                    Param_O.Add("@HTravEstim");
                    Param_O.Add("@CoutEstim");
                    Param_O.Add("@DelaiClient");
                    Param_O.Add("@DelaiPromis");
                    Param_O.Add("@ChkRegie");
                    Param_O.Add("@InfoJob");
                    Param_O.Add("@ComJobID");

                    Values_O.Add(ToolStripBtnJobLib.Text);
                    Values_O.Add(TxtQte.Text);
                    Values_O.Add(TxtQteProd.Text);
                    Values_O.Add(TxtHEstim.Text);
                    Values_O.Add(TxtPVUnitEst.Text);
                    Values_O.Add(DTPClientDelay.Value);
                    Values_O.Add(DTPPromiseDelay.Value);
                    Values_O.Add(CheckBoxRegieWork.Checked);
                    Values_O.Add(TxtJobInfo.Text);
                    Values_O.Add((int)JobID_UL);

                    mDBManager_O.ExecuteRequest(SQLCommand_st, Param_O, Values_O);
                    Param_O.Clear();
                    Values_O.Clear();

                    if (mUpdateDepartmentAssociation_b)
                    {
                        // Remove all association
                        SQLCommand_st = @"DELETE FROM RelJobTypeDep WHERE ComJobID=@ComJobID";
                        Param_O.Add("@ComJobID"); Values_O.Add((int)ComJobSelector.GetJobListView().GetSelectedItemID());
                        mDBManager_O.ExecuteRequest(SQLCommand_st, Param_O, Values_O);
                        Param_O.Clear();
                        Values_O.Clear();

                        // Add them back plus new ones
                        List <UInt32> IdList_UL = JobAssociatedDep.GetSelectedDepartmentsID();

                        for (int i = 0; i < IdList_UL.Count; i++)
                        {
                            SQLCommand_st = @"INSERT INTO RelJobTypeDep(TypeDepID, ComJobID) VALUES (@TypeDepID, @ComJobID)";
                            Param_O.Add("@TypeDepID"); Values_O.Add((int)IdList_UL[i]);
                            Param_O.Add("@ComJobID"); Values_O.Add((int)ComJobSelector.GetJobListView().GetSelectedItemID());
                            mDBManager_O.ExecuteRequest(SQLCommand_st, Param_O, Values_O);
                            Param_O.Clear();
                            Values_O.Clear();
                        }

                        mUpdateDepartmentAssociation_b = false;
                    }
                }

                SetJobEditState(false);
                ComJobSelector.GetJobListView().SetLockState(false);

                if (!mComEditState_b)
                {
                    ComJobSelector.GetComListView().SetLockState(false);
                }

                ComJobSelector.GetJobListView().Refresh();
                ComJobSelector.GetJobListView().SelectItemByID(JobID_UL);
            }
        }
示例#4
0
文件: ComJobUC.cs 项目: ATGfx/MMSoft
        private void JobClick(UInt32 ComJobID_UL)
        {
            // Load client info in each control
            String        SQLRequest_ST;
            SqlDataReader SqlDataReader_O;

            int RegieWork_i = 0;

            mInitializingJobData_b = true;

            // Fill info in panel edit controls
            ClearJobInfo();

            if (mDBManager_O != null && mDBManager_O.mConnected_b)
            {
                SQLRequest_ST   = "SELECT * FROM ComJobSelectPop WHERE ComJobID=" + ComJobID_UL;
                SqlDataReader_O = mDBManager_O.Select(SQLRequest_ST);

                while (SqlDataReader_O.Read())
                {
                    int.TryParse(SqlDataReader_O["ChkRegie"].ToString(), out RegieWork_i);

                    // Fill info in panel edit controls
                    ToolStripBtnJobLib.Text = SqlDataReader_O["JobLib"].ToString();
                    TxtQte.Text             = SqlDataReader_O["Qte"].ToString();
                    TxtQteProd.Text         = SqlDataReader_O["QteProd"].ToString();
                    TxtQteFact.Text         = SqlDataReader_O["QteFact"].ToString();
                    TxtHEstim.Text          = SqlDataReader_O["HTravEstim"].ToString();
                    TxtPVUnitEst.Text       = SqlDataReader_O["CoutEstim"].ToString();
                    TxtPVUnitFact.Text      = SqlDataReader_O["PVFact"].ToString();
                    TxtJobStatus.Text       = SqlDataReader_O["JobStatusLib"].ToString();

                    try
                    {
                        DTPClientDelay.Value = Convert.ToDateTime(SqlDataReader_O["DelaiClient"].ToString());
                    }
                    catch (FormatException e)
                    {
                        DTPClientDelay.Value = DTPClientDelay.MinDate;
                    }

                    try
                    {
                        DTPPromiseDelay.Value = Convert.ToDateTime(SqlDataReader_O["DelaiPromis"].ToString());
                    }
                    catch (FormatException e)
                    {
                        DTPPromiseDelay.Value = DTPPromiseDelay.MinDate;
                    }

                    try
                    {
                        DTPRealisedDelay.Value   = Convert.ToDateTime(SqlDataReader_O["DelaRealise"].ToString());
                        DTPRealisedDelay.Visible = true;
                    }
                    catch (FormatException e)
                    {
                        DTPRealisedDelay.Value   = DTPRealisedDelay.MinDate;
                        DTPRealisedDelay.Visible = false;
                    }

                    TxtJobInfo.Text           = SqlDataReader_O["InfoJob"].ToString();
                    CheckBoxRegieWork.Checked = RegieWork_i > 0;

                    // Fill sum hours prested on job
                    float NbrH_f = mDBManager_O.mFunctionManager_O.SCFNC_CountPointageHoursOnJob(ComJobID_UL);

                    if (!String.IsNullOrEmpty(TxtHEstim.Text))
                    {
                        TxtHPrest.Text      = NbrH_f.ToString();
                        JobProgress.Maximum = (int)Convert.ToDecimal(TxtHEstim.Text);
                        JobProgress.Value   = Math.Min((int)NbrH_f, JobProgress.Maximum);
                    }
                }

                SqlDataReader_O.Close();

                // Fill associated departments
                SQLRequest_ST   = "SELECT TypeDepID FROM RelJobTypeDep WHERE ComJobID=" + ComJobID_UL;
                SqlDataReader_O = mDBManager_O.Select(SQLRequest_ST);
                List <UInt32> DepID_UL = new List <UInt32>();
                UInt32        ID_UL;

                while (SqlDataReader_O.Read())
                {
                    if (UInt32.TryParse(SqlDataReader_O["TypeDepID"].ToString(), out ID_UL))
                    {
                        DepID_UL.Add(ID_UL);
                    }
                }

                JobAssociatedDep.CheckDepartments(DepID_UL);

                // Fill associated Send note
                FlowLayoutPaneSendNote.Controls.Clear();

                SQLRequest_ST   = "SELECT NoteEnvoiID FROM NoteEnvoiAndCertif WHERE ComJobID=" + ComJobID_UL;
                SqlDataReader_O = mDBManager_O.Select(SQLRequest_ST);

                while (SqlDataReader_O.Read())
                {
                    if (UInt32.TryParse(SqlDataReader_O["NoteEnvoiID"].ToString(), out ID_UL))
                    {
                        NECertifUC NewNECertifUC_O = new NECertifUC(mDBManager_O, mDocManager_O, ID_UL);
                        NewNECertifUC_O.Width = FlowLayoutPaneSendNote.Width;
                        FlowLayoutPaneSendNote.Controls.Add(NewNECertifUC_O);
                    }
                }
            }

            mInitializingJobData_b = false;
        }