コード例 #1
0
ファイル: DrawingBll.cs プロジェクト: amuthagan/Invoic
        public bool DeleteIssueDetails(DrawingModel1 drwgModel)
        {
            bool _status = false;

            drwgModel.Status = "";
            try
            {
                if (drwgModel.SelectedItem["ISSUE_NO"].ToString() != "")
                {
                    int           dwg_type     = (drwgModel.DWG_TYPE_DESC == "Sequence Drawing") ? 1 : 0;
                    PRD_DWG_ISSUE prddwgIssues = (from o in DB.PRD_DWG_ISSUE
                                                  where o.ISSUE_NO == Convert.ToDecimal(drwgModel.SelectedItem["ISSUE_NO"].ToString()) && o.PART_NO == drwgModel.PART_NO && o.DWG_TYPE == dwg_type
                                                  select o).SingleOrDefault <PRD_DWG_ISSUE>();

                    if (prddwgIssues != null)
                    {
                        DB.PRD_DWG_ISSUE.DeleteOnSubmit(prddwgIssues);
                        DB.SubmitChanges();
                        _status = true;
                    }
                }
            }
            catch (System.Data.Linq.ChangeConflictException)
            {
                DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges);
                _status = true;
            }
            catch (Exception ex)
            {
                ex.LogException();
            }
            return(_status);
        }
コード例 #2
0
ファイル: DrawingBll.cs プロジェクト: amuthagan/Invoic
        public bool GetDrawingModel(DrawingModel1 drwgModel)
        {
            try
            {
                DataTable dt       = new DataTable();
                string    getquery = "select pd.part_no,pdis.dwg_type,pdis.issue_no,pdis.issue_date,pdis.issue_alter,pd.PAGE_NO,pd.PRD_DWG"
                                     + " from prd_dwg_issue pdis "
                                     + " join prod_drawing pd on pd.PART_NO = pdis.PART_NO "
                                     + " where pd.part_no ='0' and pdis.dwg_type ='0'";

                dt = ToDataTable(DB.ExecuteQuery <DrawingModel>(getquery).ToList());
                if (dt != null)
                {
                    drwgModel.DVType = dt.DefaultView;
                    drwgModel.DVType.AddNew();
                }
                else
                {
                    drwgModel.DVType = null;
                }
                return(true);
            }
            catch (Exception ex)
            {
                ex.LogException();
                return(false);
            }
        }
コード例 #3
0
ファイル: DrawingBll.cs プロジェクト: amuthagan/Invoic
        public bool DeleteDrawingDetails(DrawingModel1 drwgModel)
        {
            bool _status = false;

            drwgModel.Status = "";
            try
            {
                if (drwgModel.PART_NO != "")
                {
                    int          dwg_type     = (drwgModel.DWG_TYPE_DESC == "Sequence Drawing") ? 1 : 0;
                    PROD_DRAWING prddwgIssues = (from o in DB.PROD_DRAWING
                                                 where o.PART_NO == drwgModel.PART_NO && o.DWG_TYPE == dwg_type && o.PAGE_NO == drwgModel.PAGE_NO
                                                 select o).SingleOrDefault <PROD_DRAWING>();

                    if (prddwgIssues != null)
                    {
                        DB.PROD_DRAWING.DeleteOnSubmit(prddwgIssues);
                        DB.SubmitChanges();
                        drwgModel.Status = PDMsg.DeletedSuccessfully;
                        _status          = true;
                    }

                    List <PROD_DRAWING> updatePage = (from o in DB.PROD_DRAWING
                                                      where o.PART_NO == drwgModel.PART_NO && o.DWG_TYPE == dwg_type
                                                      select o).OrderBy(item => item.PAGE_NO).ToList();
                    int pageNo = 1;
                    foreach (PROD_DRAWING dr in updatePage)
                    {
                        //PROD_DRAWING updatePageNumber = (from o in DB.PROD_DRAWING
                        //                                 where o.PART_NO == dr.PART_NO && o.DWG_TYPE == dr.DWG_TYPE && o.PAGE_NO == dr.PAGE_NO
                        //                                 select o).FirstOrDefault<PROD_DRAWING>();
                        //updatePageNumber.PAGE_NO = pageNo;
                        //DB.SubmitChanges();
                        string            query  = "UPDATE PROD_DRAWING set PAGE_NO='" + pageNo + "' WHERE PART_NO='" + dr.PART_NO + "' AND DWG_TYPE='" + dr.DWG_TYPE + "' AND PAGE_NO='" + dr.PAGE_NO + "'";
                        IEnumerable <int> result = DB.ExecuteQuery <int>(query);
                        DB.SubmitChanges();
                        pageNo++;
                    }
                }
            }
            catch (System.Data.Linq.ChangeConflictException)
            {
                DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges);
                _status = true;
            }
            catch (Exception ex)
            {
                ex.LogException();
            }
            return(_status);
        }
コード例 #4
0
ファイル: DrawingBll.cs プロジェクト: amuthagan/Invoic
        public bool InsertDrawingRevisionDetails(DrawingModel1 drawingModel, DataView dV_PROD_DWG_ISSUE)
        {
            PRD_DWG_ISSUE prdDwgIssue = new PRD_DWG_ISSUE();
            bool          insert      = false;
            bool          update      = false;
            bool          submit      = false;

            try
            {
                int dwg_type = (drawingModel.DWG_TYPE_DESC == "Sequence Drawing") ? 1 : 0;

                List <PRD_DWG_ISSUE> lstexistingDatas = new List <PRD_DWG_ISSUE>();
                lstexistingDatas = ((from o in DB.PRD_DWG_ISSUE
                                     where o.PART_NO == drawingModel.PART_NO && o.DWG_TYPE == dwg_type
                                     select o).ToList());
                if (lstexistingDatas.Count > 0)
                {
                    DB.PRD_DWG_ISSUE.DeleteAllOnSubmit(lstexistingDatas);
                    DB.SubmitChanges();
                }

                foreach (DataRow dr in dV_PROD_DWG_ISSUE.ToTable().AsEnumerable())
                {
                    if (dr["ISSUE_NO"].ToString() != "")
                    {
                        prdDwgIssue = (from o in DB.PRD_DWG_ISSUE
                                       where o.ISSUE_NO == Convert.ToDecimal(dr["issue_No"].ToString()) && o.PART_NO == drawingModel.PART_NO && o.DWG_TYPE == dwg_type
                                       select o).FirstOrDefault <PRD_DWG_ISSUE>();
                        if (prdDwgIssue == null)
                        {
                            prdDwgIssue             = new PRD_DWG_ISSUE();
                            prdDwgIssue.PART_NO     = drawingModel.PART_NO;
                            prdDwgIssue.DWG_TYPE    = dwg_type;
                            prdDwgIssue.Loc_Code    = dr["Loc_Code"].ToValueAsString();
                            prdDwgIssue.ISSUE_NO    = Convert.ToDecimal(dr["issue_No"]);
                            prdDwgIssue.ISSUE_DATE  = Convert.ToDateTime(dr["ISSUE_DATE"]);
                            prdDwgIssue.ISSUE_ALTER = dr["issue_alter"].ToString();
                            prdDwgIssue.COMPILED_BY = dr["COMPILED_BY"].ToString();
                            insert = true;
                            DB.PRD_DWG_ISSUE.InsertOnSubmit(prdDwgIssue);
                            submit = true;
                            DB.SubmitChanges();
                        }
                        else
                        {
                            prdDwgIssue.PART_NO     = drawingModel.PART_NO;
                            prdDwgIssue.DWG_TYPE    = dwg_type;
                            prdDwgIssue.Loc_Code    = dr["Loc_Code"].ToValueAsString();
                            prdDwgIssue.ISSUE_NO    = Convert.ToDecimal(dr["issue_No"]);
                            prdDwgIssue.ISSUE_DATE  = Convert.ToDateTime(dr["ISSUE_DATE"]);
                            prdDwgIssue.ISSUE_ALTER = dr["issue_alter"].ToString();
                            prdDwgIssue.COMPILED_BY = dr["COMPILED_BY"].ToString();
                            update = true;
                            submit = true;
                            DB.SubmitChanges();
                        }
                    }
                }
                //DB.Transaction.Commit();
            }
            catch (System.Data.Linq.ChangeConflictException)
            {
                DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges);
                drawingModel.Status = PDMsg.UpdatedSuccessfully;
                return(false);
            }
            catch (Exception ex)
            {
                if (submit == true)
                {
                    if (insert == true)
                    {
                        DB.PRD_DWG_ISSUE.DeleteOnSubmit(prdDwgIssue);
                    }
                    if (update == true)
                    {
                        DB.PRD_DWG_ISSUE.Context.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, prdDwgIssue);
                    }
                }
                //DB.Transaction.Rollback();
                ex.LogException();
                return(false);
            }
            drawingModel.Status = PDMsg.UpdatedSuccessfully;
            return(true);
        }
コード例 #5
0
ファイル: DrawingBll.cs プロジェクト: amuthagan/Invoic
        public bool InsertDrawingDetails(DrawingModel1 drawingModel)
        {
            try
            {
                if (drawingModel.Mode == "Add")
                {
                    PROD_DRAWING fastnersM = (from o in DB.PROD_DRAWING
                                              where o.PART_NO == drawingModel.PART_NO
                                              select o).FirstOrDefault <PROD_DRAWING>();
                    int dwg_type = (drawingModel.DWG_TYPE_DESC == "Sequence Drawing") ? 1 : 0;
                    if (fastnersM == null)
                    {
                        fastnersM                = new PROD_DRAWING();
                        fastnersM.PART_NO        = drawingModel.PART_NO;
                        fastnersM.PRD_DWG        = drawingModel.FilePath;
                        fastnersM.DWG_TYPE       = dwg_type;
                        fastnersM.PAGE_NO        = 1;
                        fastnersM.PROD_DRW_IMAGE = drawingModel.ImageByte;
                        fastnersM.ROWID          = Guid.NewGuid();
                        DB.PROD_DRAWING.InsertOnSubmit(fastnersM);
                        DB.SubmitChanges();
                        fastnersM           = null;
                        drawingModel.Status = PDMsg.SavedSuccessfully;
                    }
                    else
                    {
                        PROD_DRAWING objProdDwg = new PROD_DRAWING();
                        //var duplicates = (from o in DB.PROD_DRAWING
                        //                  where o.PART_NO == drawingModel.PART_NO && o.DWG_TYPE == dwg_type
                        //                  select o).AsEnumerable().GroupBy(i => new { PAGE_NO = i.PAGE_NO }).Where(g => g.Count() > 0).Select(g => new { g.Key.PAGE_NO }).ToList();
                        string            query  = "SELECT Count(*) As Counts FROM prod_drawing WHERE PART_NO='" + drawingModel.PART_NO + "' AND DWG_TYPE='" + dwg_type + "'";
                        IEnumerable <int> result = DB.ExecuteQuery <int>(query).ToList();
                        DB.SubmitChanges();
                        if (result != null && result.Count() > 0)
                        {
                            int get = result.Max();
                            objProdDwg.PAGE_NO = get + 1;
                        }
                        else
                        {
                            objProdDwg.PAGE_NO = 1;
                        }
                        objProdDwg.PART_NO        = drawingModel.PART_NO;
                        objProdDwg.PRD_DWG        = drawingModel.FilePath;
                        objProdDwg.DWG_TYPE       = dwg_type;
                        objProdDwg.PROD_DRW_IMAGE = drawingModel.ImageByte;
                        objProdDwg.ROWID          = Guid.NewGuid();
                        DB.PROD_DRAWING.InsertOnSubmit(objProdDwg);
                        DB.SubmitChanges();
                        objProdDwg          = null;
                        drawingModel.Status = PDMsg.SavedSuccessfully;
                    }
                }

                if (drawingModel.Mode == "Edit")
                {
                    PROD_DRAWING prdDwgIssue = (from o in DB.PROD_DRAWING
                                                where o.PART_NO == drawingModel.PART_NO && o.DWG_TYPE == drawingModel.DWG_TYPE && o.PAGE_NO == drawingModel.PAGE_NO
                                                select o).FirstOrDefault <PROD_DRAWING>();
                    if (prdDwgIssue != null)
                    {
                        prdDwgIssue.PART_NO        = drawingModel.PART_NO;
                        prdDwgIssue.DWG_TYPE       = drawingModel.DWG_TYPE;
                        prdDwgIssue.PAGE_NO        = drawingModel.PAGE_NO;
                        prdDwgIssue.PRD_DWG        = drawingModel.FilePath;
                        prdDwgIssue.PROD_DRW_IMAGE = drawingModel.ImageByte;
                        DB.SubmitChanges();
                        prdDwgIssue         = null;
                        drawingModel.Status = PDMsg.UpdatedSuccessfully;
                    }
                }
            }
            catch (System.Data.Linq.ChangeConflictException)
            {
                DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges);
                drawingModel.Status = PDMsg.UpdatedSuccessfully;
                return(false);
            }
            catch (Exception ex)
            {
                DB.Transaction.Rollback();
                ex.LogException();
                return(false);
            }
            drawingModel.Status = PDMsg.UpdatedSuccessfully;
            return(true);
        }