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); }
public System.IO.MemoryStream ShowImage(string partNo, decimal drwType, int issueNo) { PROD_DRAWING ddDrawing = null; byte[] photosource = null; System.IO.MemoryStream strm; try { ddDrawing = (from c in DB.PROD_DRAWING where c.PART_NO == partNo && c.DWG_TYPE == drwType && c.PAGE_NO == issueNo select c).SingleOrDefault <PROD_DRAWING>(); if (ddDrawing.IsNotNullOrEmpty()) { if (ddDrawing.PROD_DRW_IMAGE != null) { photosource = ddDrawing.PROD_DRW_IMAGE.ToArray(); strm = new System.IO.MemoryStream(photosource); return(strm); } else { return(null); } } else { return(null); } } catch (System.Data.Linq.ChangeConflictException) { DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges); return(null); } catch (Exception ex) { ex.LogException(); DB.PROD_DRAWING.Context.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, ddDrawing); return(null); } }
public string ShowDrawing(string part_no) { PROD_DRAWING ddDrawing = null; //PROD_DRAWING //byte[] photosource = null; //System.IO.MemoryStream strm=null; try { ddDrawing = (from c in DB.PROD_DRAWING where c.PART_NO == part_no select c).FirstOrDefault <PROD_DRAWING>(); if (ddDrawing.IsNotNullOrEmpty()) { if (ddDrawing.PRD_DWG != null) { return(ddDrawing.PRD_DWG.ToString()); } else { return(""); } } else { return(""); } //return ""; } catch (System.Data.Linq.ChangeConflictException) { DB.ChangeConflicts.ResolveAll(System.Data.Linq.RefreshMode.KeepChanges); return(""); } catch (Exception ex) { throw ex.LogException(); } }
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); }