public void BoyahaneProcessSec(vPartiProcessleri partiProcess) { vBoyahaneProcess process = null; if (partiProcess != null) { process = db.GetGeneric <vBoyahaneProcess>(c => c.PartiId == partiProcess.PartiId && c.ProcessId == partiProcess.ProcessId && c.Sira == partiProcess.Sira).LastOrDefault(); } if (process != null) { _SecilenProcess = process; } else if (partiProcess != null) { _SecilenProcess = new vBoyahaneProcess() { PartiId = partiProcess.PartiId, ProcessId = partiProcess.ProcessId, Sira = partiProcess.Sira }; } else if (partiProcess == null) { _SecilenProcess = new vBoyahaneProcess(); } }
//Gökhan 16.05.2014 public DateTime TarihiGetir(string partiNo) { vBoyahaneProcess instance = db.GetGeneric <vBoyahaneProcess>(c => c.PartiNo == partiNo && c.CikisSaat.HasValue == false).LastOrDefault(); if (instance == null) { return(DateTime.Now); } else { return(instance.Saat); } }
//Gökhan 16.05.2014 public string SureyiHesapla(string partiNo) { vBoyahaneProcess instance = db.GetGeneric <vBoyahaneProcess>(c => c.PartiNo == partiNo && c.CikisTarih.HasValue == false).LastOrDefault(); if (instance != null) { TimeSpan ts = DateTime.Now - instance.Saat; return(ts.ToString()); } else { return(null); } }
public static bool ProcessSil(vBoyahaneProcess silinecek) { DBEvents db = new DBEvents(); if (db.DeleteGeneric <tblBoyahaneProcess>(silinecek.ViewToTbl())) { if (silinecek.ReProcess.HasValue && silinecek.ReProcess.Value) //silinecek process reprocess ise parti duruma göre tekrar set edilmelidir. { List <tblBoyahaneProcess> list = db.GetGeneric <tblBoyahaneProcess>(c => c.ReProcess == true); if (list == null || list.Count == 0) { tblPartiler parti = db.GetGeneric <tblPartiler>(c => c.Id == silinecek.PartiId).FirstOrDefault(); parti.ReProcessVarMi = false; db.UpdateGeneric <tblPartiler>(parti); } } return(true); } return(false); }
//Gökhan 16.05.2014 public bool BesDakikaOlduMu(string partiNo, string processKodu) { vBoyahaneProcess instance = new vBoyahaneProcess(); instance = db.GetGeneric <vBoyahaneProcess>(c => c.PartiNo == partiNo && c.ProcessKodu == processKodu && c.CikisTarih.HasValue == false && c.Durdu != true).LastOrDefault(); if (instance != null) { TimeSpan ts = new TimeSpan(); ts = DateTime.Now - instance.Saat; if (ts.Minutes >= 5) { return(true); } else { return(false); } } else { return(false); } }
public bool BarkodOkut(string barkod) { vMamuleHazirPartiler okutulan = db.GetGeneric <vMamuleHazirPartiler>(c => c.PartiNo == barkod).FirstOrDefault(); Partisi = okutulan; if (okutulan == null || okutulan.ProcessId != 60) { // paketleme prosesi okutulmuşsa normal mamul barkod alınır durum sütunundaki ayracı 'Mamul'dür. // Paketleme prosesi okutulmamış ve fason proses okutulmuş ise _FasonamiGidecek değişkeni true olur // ve kumaş kesme esnasında bu değişken kontrol edilerek mamul barkodun Durum sütunundaki ayracı 'Fason' olarak işaretlenir. vBoyahaneProcess paketleme = db.GetGeneric <vBoyahaneProcess>(c => c.PartiNo == barkod && c.ProcessId == 60).FirstOrDefault(); if (paketleme == null) { vBoyahaneProcess fasonProcess = db.GetGeneric <vBoyahaneProcess>(c => c.PartiNo == barkod).OrderByDescending(c => c.Sira).FirstOrDefault(); if (fasonProcess.FasonMu == false) { FasonamiGidecek = false; throw new Exception("Paketleme prosesi okutulmamış..!"); } else if (fasonProcess.FasonMu == true) { vMamulKumaslar kumaslar = db.GetGeneric <vMamulKumaslar>(c => c.PartiNo == barkod && c.Durum == "Fason").FirstOrDefault(); if (kumaslar == null) { FasonamiGidecek = true; } else { FasonamiGidecek = false; throw new Exception("Fasondan kumaş gelmiş. Şimdi paketleme processini okutun!"); } } } } if (okutulan == null) { YeniMamulKumas = null; throw new Exception("Partilenmiş barkod bulunamadı..!"); } YeniMamulKumas.TipId = okutulan.TipId; YeniMamulKumas.TipNo = okutulan.TipNo; YeniMamulKumas.RenkNo = okutulan.RenkNo; YeniMamulKumas.TopMetre = okutulan.TopMetre; YeniMamulKumas.DyeBatchNo = barkod; YeniMamulKumas.RefRenkAdi = okutulan.RefRenkAdi; YeniMamulKumas.RefRenkNo = okutulan.RefRenkNo; YeniMamulKumas.RefTipNo = okutulan.RefTipNo; YeniMamulKumas.SozlesmeNo = okutulan.SozlesmeNo; YeniMamulKumas.SevkiyatNotu = (db.GetGeneric <vPartiler>(f => f.PartiNo == okutulan.PartiNo).FirstOrDefault()).BoyaNotu; if (okutulan.RePartiMi) { RePartiKumaslari = db.GetGenericWithSQLQuery <vReProcessBarkodlari>("execute dbo.spRePartiBarkodlariGetir " + okutulan.PartiId.ToString(), new string[0]); } else { PartiHamKumaslari = db.GetGeneric <vHamKumaslar>(c => c.PartiId == okutulan.PartiId); } MamulKumaslar = db.GetGeneric <vMamulKumaslar>(c => c.PartiId == okutulan.PartiId); if ((okutulan.RePartiMi == false) && (PartiHamKumaslari == null || PartiHamKumaslari.Count == 0)) { throw new Exception("Partide ham kumaş yok.\n\nBarkod okutulamaz..!"); } if (MamulKumaslar == null) { MamulKumaslar = new List <vMamulKumaslar>(); } YeniMamulKumas = new vMamulKumaslar() { MusteriId = okutulan.MusteriId, MusteriKodu = okutulan.MusteriKodu, MusteriAdi = okutulan.MusteriAdi, PartiId = okutulan.PartiId, PartiNo = okutulan.PartiNo.ToString(), SozlesmeNo = okutulan.SozlesmeNo, ToplamKalan = Math.Round((PartiHamKumaslari == null ? 0 : PartiHamKumaslari.Sum(c => c.Metre)) - MamulKumaslar.Sum(c => c.Metre), 2), Tarih = DateTime.Today, TopMetre = okutulan.TopMetre, Finish = okutulan.FinishNo, TipId = okutulan.TipId, TipNo = okutulan.TipNo, RenkNo = okutulan.RenkNo, RenkVaryant = okutulan.RenkVaryant, TipVaryant = okutulan.TipVaryant, DyeBatchNo = barkod, RefRenkAdi = okutulan.RefRenkAdi, RefRenkNo = okutulan.RefRenkNo, RefTipNo = okutulan.RefTipNo, SevkiyatNotu = (db.GetGeneric <vPartiler>(f => f.PartiNo == okutulan.PartiNo).FirstOrDefault()).BoyaNotu }; return(true); }
//Gökhan 16.05.2014 public bool ProcessKaydet(vPartiProcessleri partiProcess, string btn, string comment, double metre) { if (PartiProcessleri.Exists(c => c.ProcessId == _SecilenProcess.ProcessId)) { if (btn == "Bitir") { if (SecilenProcess.Metre < Parti.PartiMetre * 0.90) { throw new Exception("Az kumaş açılmış..!"); } if (SecilenProcess.Metre > Parti.PartiMetre * 1.10) { throw new Exception("Fazla kumaş açılmış..!"); } } vBoyahaneProcess sonOkutulan = db.GetGeneric <vBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.Silindi == false).OrderBy(e => e.Sira).LastOrDefault(); if (sonOkutulan != null) { //25.06.15 Mehmet //Fasona sevk edildi mi kontrolü yapılacak. bool FasonaSevkEdilmisMi = Mamul.FasonaSevkEdilmisMi(Parti.Id); if (sonOkutulan.FasonMu && FasonaSevkEdilmisMi == false) { throw new Exception("Fason gönderime hazır.\n\nMamul kaliteye geçmelisiniz..!"); } if (DateTime.Now.TimeOfDay.Subtract(sonOkutulan.Saat.TimeOfDay) < new TimeSpan(0, 15, 0)) //process okutma hızı kontrolü { if (CabukOkutmaIsaretle() == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!\nHiZ"); } } tblBoyahaneProcess cikisiOkutulmayan = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.CikisTarih.HasValue == false && c.Silindi == false && c.Id != _SecilenProcess.Id).FirstOrDefault(); tblBoyahaneProcess durmusVarMi = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.CikisTarih.HasValue == false && c.Durdu == true).FirstOrDefault(); if (cikisiOkutulmayan != null) { if (cikisiOkutulmayan.ProcessId != this._SecilenProcess.ProcessId) { throw new Exception("Devam eden Process var.\n\nEklenemez..!"); } } int ind = PartiProcessleri.FindIndex(c => c.Sira == sonOkutulan.Sira && c.ProcessId == sonOkutulan.ProcessId); if (PartiProcessleri.Count() != (ind + 1)) { if (PartiProcessleri[ind + 1].Sira < partiProcess.Sira) { throw new Exception("Daha önceki process okutulmamış.\n\nEklenemez...!"); } } } else { if (this.PartiProcessleri[0].ProcessId != this._SecilenProcess.ProcessId) { throw new Exception("Daha önceki process okutulmamış.\n\nEklenemez..!"); } } } else { throw new Exception("Process bulunamadı..!"); } tblBoyahaneProcess tblProcess = _SecilenProcess.ViewToTbl(); tblProcess.PartiId = Parti.Id; int tempControl = -1; if (tblProcess.Id == 0) { tblProcess.Tarih = DateTime.Today; tblProcess.Saat = DateTime.Now; } else { tblBoyahaneProcess iptalEdilecek; try { iptalEdilecek = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id).OrderBy(e => e.Id).Last(); if (iptalEdilecek.CikisTarih.HasValue != false) { iptalEdilecek = null; } } catch (Exception) { iptalEdilecek = null; } tblBoyahaneProcess cikisiOkutulmayan = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.CikisTarih.HasValue == false && c.Durdu != true).OrderBy(e => e.Sira).LastOrDefault(); tblBoyahaneProcess ikinciBaslami = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.CikisTarih.HasValue == false && c.Durdu != false).OrderBy(e => e.Sira).LastOrDefault(); if (btn == "Başla") { if (cikisiOkutulmayan == null) { tblProcess.Id = 0; tblProcess.CikisTarih = null; tblProcess.CikisSaat = null; tblProcess.Tarih = DateTime.Today; tblProcess.Saat = DateTime.Now; tblProcess.Durdu = false; tblProcess.Silindi = false; tblProcess.Aciklama = null; tblProcess.ArizaId = null; tempControl = 0; } else { if (ikinciBaslami != null) { tblProcess.CikisTarih = DateTime.Today; tblProcess.CikisSaat = DateTime.Now; tblProcess.Durdu = true; tempControl = 3; } else { throw new Exception("Devam eden process var!..."); } } } else if (btn == "Bitir") { if (cikisiOkutulmayan != null) { if (ikinciBaslami == null) { tblProcess = cikisiOkutulmayan; tempControl = 2; tblProcess.CikisTarih = DateTime.Today; tblProcess.CikisSaat = DateTime.Now; tblProcess.Durdu = false; } else { throw new Exception("Devam eden process var!..."); } } else { throw new Exception("Başlatılmış process yok!..."); } } else if (btn == "Dur") { if (cikisiOkutulmayan != null) { if (ikinciBaslami == null) { tblProcess.Id = 0; tblProcess.CikisTarih = null; tblProcess.CikisSaat = null; tblProcess.Tarih = DateTime.Today; tblProcess.Saat = DateTime.Now; tblProcess.Durdu = true; tblProcess.ArizaId = Convert.ToInt32(comment.Substring(0, comment.IndexOf("?"))); if ((comment.Length - comment.IndexOf("?") > 1)) { tblProcess.Aciklama = comment.Substring(comment.IndexOf("?") + 1, (comment.Length - comment.IndexOf("?") - 1)); } else { tblProcess.Aciklama = null; } tblProcess.Silindi = false; tempControl = 1; } else { throw new Exception("Durdurulmuş işlem var!..."); } } else { throw new Exception("Başlatılmış process yok!..."); } } else if (btn == "Iptal") { if (iptalEdilecek != null) { tblProcess = iptalEdilecek; tempControl = 3; tblProcess.Silindi = true; tblProcess.CikisTarih = DateTime.Today; tblProcess.CikisSaat = DateTime.Now; } else { throw new Exception("İptal edilebilecek process yok!..."); } } else if (btn == "Not") { tblProcess.Aciklama = comment; tempControl = 4; } } tblProcess.Sira = partiProcess.Sira; tblProcess.Metre = metre; //txtmetre alanından geliyor. if (btn == "Başla") { if (tblProcess.Id == 0) { tblProcess.Durdu = false; tblProcess.Silindi = false; if (tblProcess.Id == 0) { if (tblProcess.ProcessId == 60) { tblProcess.CikisSaat = DateTime.Now; tblProcess.CikisTarih = DateTime.Now; } if (db.SaveGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } if (tblProcess.Id != 0) { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } } else { if (tempControl == 0) { if (db.SaveGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } else { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } } } else if (btn == "Dur") { if (tempControl == 1) { if (db.SaveGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } else { throw new Exception("Başlamamış Processi duraklatamazsın..!"); } } else if (btn == "Bitir") { if (tempControl == 2) { if (BesDakikaOlduMu(tblProcess.PartiId, tblProcess.ProcessId)) { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } else { throw new Exception("5 dakika dolmadan process bitirilemez..!"); } } else { throw new Exception("Önce Processi başlatmalısınız..!"); } } else if (btn == "Iptal") { if (tempControl == 3) { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } else { throw new Exception("İptal edilecek Process bulunamadı..!"); } } else { if (tempControl == 4) { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } else { throw new Exception("not edilecek Process bulunamadı..!"); } } return(true); }
public bool ProcessKaydet(vPartiProcessleri partiProcess) { if (PartiProcessleri.Exists(c => c.ProcessId == _SecilenProcess.ProcessId)) { //List<tblBoyahaneProcess> listBoyahane = db.GetGeneric<tblBoyahaneProcess>(c => c.PartiId == Parti.Id); if (SecilenProcess.Metre < Parti.PartiMetre * 0.90) { throw new Exception("Az kumaş açılmış..!"); } if (SecilenProcess.Metre > Parti.PartiMetre * 1.10) { throw new Exception("Fazla kumaş açılmış..!"); } vBoyahaneProcess sonOkutulan = db.GetGeneric <vBoyahaneProcess>(c => c.PartiId == this.Parti.Id).OrderBy(e => e.Sira).LastOrDefault(); if (sonOkutulan != null) { if (sonOkutulan.FasonMu) { throw new Exception("Fason gönderime hazır.\n\nMamul kaliteye geçmelisiniz..!"); } if (DateTime.Now.TimeOfDay.Subtract(sonOkutulan.Saat.TimeOfDay) < new TimeSpan(0, 15, 0)) //process okutma hızı kontrolü { if (CabukOkutmaIsaretle() == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!\nHiZ"); } } tblBoyahaneProcess cikisiOkutulmayan = db.GetGeneric <tblBoyahaneProcess>(c => c.PartiId == this.Parti.Id && c.CikisTarih.HasValue == false && c.Id != _SecilenProcess.Id).FirstOrDefault(); if (cikisiOkutulmayan != null) { throw new Exception("Önceki process'in çıkış okutması yapılmamış.\n\nEklenemez..!"); } int ind = PartiProcessleri.FindIndex(c => c.Sira == sonOkutulan.Sira && c.ProcessId == sonOkutulan.ProcessId); if (PartiProcessleri[ind + 1].Sira < partiProcess.Sira) { throw new Exception("Daha önceki process okutulmamış.\n\nEklenemez..!"); } if (ReProcessIsaretle() == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!\nReP"); } } else { if (this.PartiProcessleri[0].ProcessId != this._SecilenProcess.ProcessId) { throw new Exception("Daha önceki process okutulmamış.\n\nEklenemez..!"); } } } else { throw new Exception("Process bulunamadı..!"); } tblBoyahaneProcess tblProcess = _SecilenProcess.ViewToTbl(); tblProcess.PartiId = Parti.Id; if (tblProcess.Id == 0) { tblProcess.Tarih = DateTime.Today; tblProcess.Saat = DateTime.Now; } else { if (tblProcess.CikisTarih.HasValue == false) { tblProcess.CikisTarih = DateTime.Today; tblProcess.CikisSaat = DateTime.Now; } else { tblProcess.Id = 0; tblProcess.CikisTarih = null; tblProcess.CikisSaat = null; tblProcess.Tarih = DateTime.Today; tblProcess.Saat = DateTime.Now; } } tblProcess.Sira = partiProcess.Sira; if (tblProcess.Id == 0) { if (db.SaveGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } if (tblProcess.Id != 0) { if (db.UpdateGeneric <tblBoyahaneProcess>(tblProcess) == false) { throw new Exception("Hata oluştu.\n\nKaydedilemedi..!"); } } return(true); }