Beispiel #1
0
        private void itemDeleteProject_Click(object sender, EventArgs e)
        {
            if (dataGridViewProjects.Rows.Count > 0 && dataGridViewProjects.SelectedRows.Count > 0)
            {
                // int selectedrowindex = dataGridViewProjects.SelectedCells[0].RowIndex;
                // DataGridViewRow selectedRow = dataGridViewProjects.Rows[selectedrowindex];
                // _projectCode = Convert.ToDecimal(selectedRow.Cells["ProjectCode"].Value);

                //// _dtProjects.Rows.Remove(selectedRow);
                // dataGridViewProjects.DataSource = _dtProjects;

                foreach (DataGridViewRow sr in this.dataGridViewProjects.SelectedRows)
                {
                    //Project project = (Project)item.DataBoundItem;
                    decimal   version = Convert.ToDecimal(sr.Cells[0].Value);
                    MRVersion mrv     = _LstMRVs.Where(x => x.Id == version).FirstOrDefault();
                    if (mrv != null)
                    {
                        _LstMRVs.Remove(mrv);
                    }
                    _dtMRVs.Rows.RemoveAt(sr.Index);
                    //_LstProjects.RemoveAt()
                    _mrvc.DeleteModel(mrv.Id);

                    DataView dv = _dtMRVs.DefaultView;
                    dv.Sort = "ProjectCode desc";
                    _dtMRVs = dv.ToTable();
                    dataGridViewProjects.DataSource = _dtMRVs;

                    if (_dtMRVs.Rows.Count == 0)
                    {
                        //_mrc.ReseedPk();
                        _newMode = true;
                    }


                    //dataGridViewProjects.Refresh();
                }
            }
            else
            {
            }
        }
 public void UpdateModel(MRVersion model)
 {
     interfaceObj.UpdateModel(model);
     interfaceObj.Save();
 }
        private void btnSave_Click(object sender, EventArgs e)
        {
            //DialogResult dialogResult = MessageBox.Show("Do you want to save?", "Confirmation", MessageBoxButtons.YesNo);
            //if (dialogResult == DialogResult.No) return;
            SaveFileDialog savefile = new SaveFileDialog();
            // set a default file name
            string datetime = DateTime.Now.ToString("yyyyMMddHHmmss");

            datetime = datetime.Replace(":", "");

            savefile.FileName = "Material Request " + datetime + ".xlsx";
            // set filters - this can be done in properties as well
            savefile.Filter = "Excel Workbook (*.xlsx)|*.xlsx|All files (*.*)|*.*";

            if (savefile.ShowDialog() == DialogResult.OK)
            {
                this.Enabled = false;
                Project projModel;
                ProjectEmployeeDetail ped;

                if (_newMode == true)
                {
                    //SaveData();
                    projModel             = FillProjectModel();
                    projModel.CreatedBy   = LoginInfo.LoginEmployee.EmployeeCode;
                    projModel.CreatedDate = DateTime.Now;
                    _pc = new ProjectController(projModel);
                    _pc.Save();

                    ped = new ProjectEmployeeDetail();
                    ped.EmployeeCode = LoginInfo.LoginEmployee.EmployeeCode; //_EmployeeCode;
                    ped.ProjectCode  = projModel.ProjectCode;                //(decimal)row1["ProjectCode"];

                    _pedc = new ProjectEmployeeDetailController(ped);
                    _pedc.Save();
                    //-------------------

                    _newMode = false;
                }
                else
                {
                    //UpdateData();
                    projModel             = FillProjectModel();
                    projModel.CreatedBy   = _currentLoadedProject.CreatedBy;
                    projModel.CreatedDate = _currentLoadedProject.CreatedDate;
                    projModel.UpdatedBy   = LoginInfo.LoginEmployee.EmployeeCode;
                    projModel.UpdateDate  = DateTime.Now;
                    _pc = new ProjectController(projModel);
                    _pc.UpdateModel(projModel);
                }

                //fill MR Verion first
                _mrvc = new MRVersionController();
                _maxMRVersionAutoRowId = _mrvc.GetMaxMRVersionAutoRowId();

                MRVersion mrvModel = new MRVersion();
                mrvModel.ProjectCode = _currentLoadedProject.ProjectCode;
                //mrvModel.Version = _maxMRVersion
                mrvModel.IsVersion = false;
                mrvModel.Reason    = textBox1.Text;
                string strVerNo = string.Empty;
                if (_currentMRVersionDesc.Substring(_currentMRVersionDesc.IndexOf("-MR-")).Contains("-REV"))
                {
                    strVerNo = _currentMRVersionDesc.Substring(0, _currentMRVersionDesc.IndexOf("-REV"));

                    mrvModel.Revision  = _mrvc.GetMaxMRVersionNo(mrvModel.IsVersion.Value, strVerNo).ToString("00");
                    mrvModel.VersionNo = strVerNo + "-REV" + mrvModel.Revision;
                }
                else
                {
                    //decimal returnedValue = _mrvc.GetMaxMRVersionNo(mrvModel.IsVersion.Value, _currentMRVersionDesc)-1;
                    //returnedValue -= 1;
                    mrvModel.Revision  = _mrvc.GetMaxMRVersionNo(mrvModel.IsVersion.Value, _currentMRVersionDesc).ToString("00");
                    mrvModel.VersionNo = _currentMRVersionDesc + "-REV" + mrvModel.Revision;
                }

                //mrvModel.VersionNo = _currentLoadedProject.ProjectCode.ToString() + "-MR-" + mrvModel.Revision;
                //mrvModel.VersionNo = _currentMRVerionDesc + "-REV01" +



                //string strVer =string.Empty;
                //int intVer = 0;
                //if (_currentMRVersionDesc.Substring(_currentMRVersionDesc.IndexOf("-MR-")).Contains("-REV"))
                //{
                //    strVer = _currentMRVersionDesc.Substring(_currentMRVersionDesc.IndexOf("-MR-"));
                //    intVer = int.Parse( strVer.Substring(strVer.IndexOf("-REV") + 4));
                //    intVer += 1;
                //    //"20200626120629-MR-05-REV1"
                //    mrvModel.VersionNo = _currentMRVersionDesc.Replace("-REV1", "-REV" + intVer);//      //+ "-REV" + intLastVer;
                //}
                //else
                //{
                //    mrvModel.VersionNo = _currentMRVersionDesc + "-REV1";
                //}


                mrvModel.IsModified  = true;
                mrvModel.DateCreated = DateTime.Now;
                _mrvc = new MRVersionController(mrvModel);
                _mrvc.Save();
                //

                _LstObjBoms = new List <MR>();
                FillBOMModel2();

                _mrc = new MRController(_LstObjBoms);
                _mrc.SaveList(projModel.ProjectCode, _maxMRVersionAutoRowId);



                ///////////////export to excel/////////////////
                // Here is main process
                Microsoft.Office.Interop.Excel.Application objexcelapp = new Microsoft.Office.Interop.Excel.Application();
                objexcelapp.Application.Workbooks.Add(Type.Missing);
                objexcelapp.Columns.AutoFit();


                for (int i = _dtExportMRtoExcel.Columns.Count - 1; i >= 0; i--)
                {
                    if (!(_dtExportMRtoExcel.Columns[i].ColumnName == "PartNo" || _dtExportMRtoExcel.Columns[i].ColumnName == "Qty"))
                    {
                        _dtExportMRtoExcel.Columns.RemoveAt(i);
                    }
                }

                for (int i = 1; i < _dtExportMRtoExcel.Columns.Count + 1; i++)
                {
                    if (_dtExportMRtoExcel.Columns[i - 1].ColumnName == "PartNo" || _dtExportMRtoExcel.Columns[i - 1].ColumnName == "Qty")
                    {
                        Microsoft.Office.Interop.Excel.Range xlRange = (Microsoft.Office.Interop.Excel.Range)objexcelapp.Cells[1, i];
                        xlRange.Font.Bold           = -1;
                        xlRange.Borders.LineStyle   = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                        xlRange.Borders.Weight      = 1d;
                        xlRange.HorizontalAlignment = Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignCenter;
                        objexcelapp.Cells[1, i]     = _dtExportMRtoExcel.Columns[i - 1].ColumnName;
                    }
                }
                /*For storing Each row and column value to excel sheet*/
                for (int i = 0; i < _dtExportMRtoExcel.Rows.Count; i++)
                {
                    for (int j = 0; j < _dtExportMRtoExcel.Columns.Count; j++)
                    {
                        if (_dtExportMRtoExcel.Columns[j].ColumnName == "PartNo" || _dtExportMRtoExcel.Columns[j].ColumnName == "Qty")
                        {
                            if (_dtExportMRtoExcel.Rows[i][j] != null)
                            {
                                Microsoft.Office.Interop.Excel.Range xlRange = (Microsoft.Office.Interop.Excel.Range)objexcelapp.Cells[i + 2, j + 1];
                                xlRange.Borders.LineStyle       = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                                xlRange.Borders.Weight          = 1d;
                                objexcelapp.Cells[i + 2, j + 1] = _dtExportMRtoExcel.Rows[i][j].ToString();
                            }
                        }
                    }
                }
                objexcelapp.Columns.AutoFit(); // Auto fix the columns size
                System.Windows.Forms.Application.DoEvents();
                MessageBox.Show("Save and exported successfully");
                //if (Directory.Exists("C:\\CTR_Data\\")) // Folder dic
                //{
                //    objexcelapp.ActiveWorkbook.SaveCopyAs("C:\\CTR_Data\\" + "excelFilename" + ".xlsx");
                //}
                //else
                //{
                //    Directory.CreateDirectory("C:\\CTR_Data\\");
                //    objexcelapp.ActiveWorkbook.SaveCopyAs("C:\\CTR_Data\\" + "excelFilename" + ".xlsx");
                //}
                objexcelapp.ActiveWorkbook.SaveCopyAs(savefile.FileName);
                objexcelapp.ActiveWorkbook.Saved = true;
                System.Windows.Forms.Application.DoEvents();
                //foreach (Process proc in System.Diagnostics.Process.GetProcessesByName("EXCEL"))
                //{
                //    proc.Kill();
                //}

                ///////

                //System.Diagnostics.Process.Start(savefile.FileName);

                //////////////update shared object///////////////////
                _pc = new ProjectController();
                CurrentOpenProject.CurrentProject = _pc.GetModelByID(CurrentOpenProject.CurrentProject.ProjectCode);
                //////////////
                this.Enabled = true;
                //this.Close();
            }
        }
 public MRVersionController(MRVersion pMRModel)
 {
     interfaceObj = new ProcurementRepository <MRVersion>();
     _gMRModel    = pMRModel;
 }