public int NomberProcessTankOrd() { var cdc = new CorporationDataContext(); int nomberProcessTankOrd = cdc.TankFuelOrders.Count(s => s.Status == "inprocess"); return(nomberProcessTankOrd); }
public int OpenTransOrdersQty() { var cdc = new CorporationDataContext(); int openTransOrdersQty = cdc.TransOrders.Where(s => s.Status == "open").Count(); return(openTransOrdersQty); }
public async void Produce(int ordId) { var cdc = new CorporationDataContext(); Random rand = new Random(); int tpro = rand.Next(30000); Thread.Sleep(tpro); try { var orderInProcess = cdc.ProductOrders.Where(s => s.MProdOrderID == ordId).First(); orderInProcess.Status = "onstock"; cdc.SubmitChanges(); Thread.Sleep(rand.Next(8000)); await Task.Run(() => ShipProdOrd(ordId)); // orderInProcess.Status = "shiped"; //cdc.SubmitChanges(); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } }
public int NomberWaitTankOrd() { var cdc = new CorporationDataContext(); int nomberWaitTankOrd = cdc.TankFuelOrders.Count(s => s.Status == "waiting"); return(nomberWaitTankOrd); }
public int OnstockOrdQty() { var cdc = new CorporationDataContext(); int onStock = cdc.ProductOrders.Count(s => s.Status == "onstock"); return(onStock); }
public decimal MomentalTankFuelAmount() { var cdc = new CorporationDataContext(); decimal momentalTankFuelAmount = Convert.ToDecimal(cdc.TankFuelOrders.Where(s => s.Status == "inprocess").Sum(s => s.TankFuelOrderAmount)); return(momentalTankFuelAmount); }
public int InProdOrdQty() { var cdc = new CorporationDataContext(); int inprodOrdNum = cdc.ProductOrders.Count(s => s.Status == "inproduction"); return(inprodOrdNum); }
public int OpenProdOrderQty() { var cdc = new CorporationDataContext(); int openOrdNum = cdc.ProductOrders.Count(s => s.Status == "open"); return(openOrdNum); }
public int TankfuelordersCancelledQty() { var cdc = new CorporationDataContext(); int nomberProcessTankOrd = cdc.TankFuelOrders.Count(s => s.Status == "canceled"); return(nomberProcessTankOrd); }
public int FreeTrucksCount() { var cdc = new CorporationDataContext(); int freeTrucksnomber = cdc.Trucks.Where(s => s.Status == "free").Count(); return(freeTrucksnomber); }
public int OnServiceTruckQty() { var cdc = new CorporationDataContext(); int onServiceTruckQty = cdc.Trucks.Where(s => s.Status == "onTechService").Count(); return(onServiceTruckQty); }
public int TrucksCount() { using (CorporationDataContext cdc = new CorporationDataContext()) { int nomberTrucks = cdc.Trucks.Count(); return(nomberTrucks); } }
public async void CheckTrucks(object source, ElapsedEventArgs e) { var cdc = new CorporationDataContext(); int itemsCount = cdc.Trucks.Count(); if (itemsCount < plantruckqty) { await Task.Run(() => PurchaseTruck()); } }
public async void NextTransOrder(object source, ElapsedEventArgs e) { using (CorporationDataContext cdc = new CorporationDataContext()) { int inprocTransOrdNomber = cdc.TransOrders.Where(s => s.Status == "inprocess").Count(); var oldestOpenTransOrd = cdc.TransOrders.Where(s => s.Status == "open").OrderBy(s => s.Date).FirstOrDefault(); var nextFreeTruck = cdc.Trucks.Where(s => s.Status == "free").OrderBy(s => s.TruckID).FirstOrDefault(); var openTripTruckCheck = cdc.TruckTrips.Where(t => t.TruckID == nextFreeTruck.TruckID && t.Status == "open"); if (oldestOpenTransOrd != null && nextFreeTruck != null && inprocTransOrdNomber < plantruckqty) //&& openTripTruckCheck==null { int trOrdID = oldestOpenTransOrd.TransOrderID; int truckID = nextFreeTruck.TruckID; try { await Task.Run(() => StartNewTrip(trOrdID, truckID)); // Thread.Sleep(1500); // await Task.Run(() => Deliver(trOrdID, truckID)); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } } var oldestInprocessTransOrd = cdc.TransOrders.Where(s => s.Status == "inprocess").OrderBy(s => s.Date).FirstOrDefault(); if (oldestInprocessTransOrd != null) { try { int ordid = oldestInprocessTransOrd.TransOrderID; int onTripTruckID = (int)cdc.TruckTrips.Where(s => s.TransOrderID == ordid).Select(m => m.TruckID).FirstOrDefault(); var onTripTruck = cdc.Trucks.Where(s => s.TruckID == onTripTruckID).FirstOrDefault(); //&& s.Status == "onTrip" if (onTripTruck != null) { await Task.Run(() => Deliver(ordid, onTripTruck.TruckID)); } } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } } } }
private void PurchaseTruck() { int lastItemID; int nextItemID; int itemsCount = 0; var cdc = new CorporationDataContext(); itemsCount = cdc.Trucks.Count(); if (itemsCount == 0) { nextItemID = 990001; } else { lastItemID = cdc.Trucks.OrderByDescending(s => s.TruckID).Select(s => s.TruckID).First(); nextItemID = lastItemID + 1; } try { cdc.Trucks.InsertOnSubmit( new Truck { TruckID = nextItemID, Status = "free" } ); cdc.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException e) { foreach (ObjectChangeConflict occ in cdc.ChangeConflicts) { occ.Resolve(RefreshMode.KeepChanges); } } try { cdc.SubmitChanges(ConflictMode.FailOnFirstConflict); } catch (Exception ex) { MessageBox.Show("Exception: " + ex.Message); } }
public void createTransaction(int?pinvID, int?payID, int?transID, int?fuelinvID) { using (var cdc = new CorporationDataContext()) { mutex.WaitOne(); int lastItemID = 0; int nextItemID = 0; int itemsCount = 0; itemsCount = cdc.BankTransactions.Count(); if (itemsCount == 0) { nextItemID = 440001; } else { lastItemID = cdc.BankTransactions.OrderByDescending(s => s.TransactionID).Select(s => s.TransactionID).First(); nextItemID = lastItemID + 1; } try { cdc.BankTransactions.InsertOnSubmit( new BankTransaction { TransactionID = nextItemID, PlantInvoiceID = pinvID, PaymentID = payID, TransInvoiceID = transID, TankFuelInvoiceID = fuelinvID, Status = "pending", Confirmed = "no", Date = DateTime.Now, FuelPaymentID = null, TransPaymentID = null } ); cdc.SubmitChanges(); mutex.ReleaseMutex(); } catch (Exception ex) { MessageBox.Show("Exception: " + ex.Message); } } }
public void PlaceProdOrder(object source, ElapsedEventArgs e) { int lastItemID; int nextItemID; int itemsCount = 0; var cdc = new CorporationDataContext(); itemsCount = cdc.ProductOrders.Count(); if (itemsCount == 0) { nextItemID = 110001; } else { lastItemID = cdc.ProductOrders.OrderByDescending(s => s.MProdOrderID).Select(s => s.MProdOrderID).First(); nextItemID = lastItemID + 1; } Random random = new Random(); int orderValue = random.Next(50000); List <int> payTerms = new List <int>() { 0, 30, 60, 90 }; int payIndex = random.Next(4); try { cdc.ProductOrders.InsertOnSubmit( new ProductOrder { MProdOrderID = nextItemID, ProdOrderValue = orderValue, Status = "open", OrderDate = DateTime.Now, PaymentTerm = payTerms[payIndex], InvoiceIssued = "no" } ); cdc.SubmitChanges(); } catch { } }
public void FuelPurchase() { decimal fr = FuelReserve(); decimal amountToPurchase = (FuelReserveUpperLimit - fr); var cdc = new CorporationDataContext(); BANK bank = new BANK(); if (bank.balance >= amountToPurchase * fuelPrice) { int lastItemID = 0; int nextItemID = 0; int itemsCount = 0; itemsCount = cdc.TankFuelPayments.Count(); if (itemsCount == 0) { nextItemID = 660001; } else { lastItemID = cdc.TankFuelPayments.OrderByDescending(s => s.FuelPaymentID).Select(s => s.FuelPaymentID).First(); nextItemID = lastItemID + 1; } try { cdc.TankFuelPayments.InsertOnSubmit( new TankFuelPayment { FuelPaymentID = nextItemID, FuelPaymentAmount = Convert.ToInt32(amountToPurchase), FuelPaymentValue = amountToPurchase * fuelPrice, Status = "requested", Date = DateTime.Now } ); cdc.SubmitChanges(); } catch (Exception ex) { MessageBox.Show("Exception: " + ex.Message); } } }
public async void checkInvoices(object source, ElapsedEventArgs e) { using (var cdc = new CorporationDataContext()) { try { var PlantInvoicesList = cdc.PlantInvoices.Join(cdc.ProductOrders, inv => inv.MProdOrderID, ord => ord.MProdOrderID, (inv, ord) => new { PlantInvID = inv.PlantInviceID, InvoiceValue = ord.ProdOrderValue, InvoiceStatus = inv.Status, Date = ord.OrderDate, PaymentTerm = ord.PaymentTerm }).ToList(); var oldestPendInvoice = PlantInvoicesList.Where(s => s.InvoiceStatus == "issued").OrderBy(s => s.Date).FirstOrDefault(); decimal PlantInvoicedTotalAmount = Convert.ToDecimal(PlantInvoicesList.Sum(s => s.InvoiceValue)); if (oldestPendInvoice != null) { int invID = oldestPendInvoice.PlantInvID; var invToProcess = cdc.PlantInvoices.Where(s => s.PlantInviceID == invID); int invPayTerm = (int)oldestPendInvoice.PaymentTerm; Thread.Sleep(invPayTerm * 100); await Task.Run(() => createTransaction(invID, null, null, null)); foreach (PlantInvoice inv in invToProcess) { inv.Status = "paid"; } cdc.SubmitChanges(); } } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } }; }
private void ShipProdOrd(int ordId) { var cdc = new CorporationDataContext(); try { var orderInProcess = cdc.ProductOrders.Where(s => s.MProdOrderID == ordId).First(); orderInProcess.Status = "shiped"; cdc.SubmitChanges(); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } }
public void PlaceTankFuelOrder(object source, ElapsedEventArgs e) { int lastItemID = 0; int nextItemID = 0; int itemsCount = 0; var cdc = new CorporationDataContext(); itemsCount = cdc.TankFuelOrders.Count(); if (itemsCount == 0) { nextItemID = 550001; } else { lastItemID = cdc.TankFuelOrders.OrderByDescending(s => s.TankFuelOrderID).Select(s => s.TankFuelOrderID).First(); nextItemID = lastItemID + 1; } Random random = new Random(); int orderAmount = random.Next(200); decimal fuelPrice = 29; decimal orderValue = orderAmount * fuelPrice; try { cdc.TankFuelOrders.InsertOnSubmit( new TankFuelOrder { TankFuelOrderID = nextItemID, TankFuelOrderValue = orderValue, TankFuelOrderAmount = orderAmount, Status = "waiting", Date = DateTime.Now, } ); cdc.SubmitChanges(); } catch { } }
public async void checkPayments(object source, ElapsedEventArgs e) { using (var cdc = new CorporationDataContext()) { try { var PaymentsList = cdc.Payments.Join(cdc.ProductOrders, pay => pay.MProdOrderID, ord => ord.MProdOrderID, (pay, ord) => new { CorpPaymID = pay.PaymentID, PaymentAmount = (ord.ProdOrderValue) * 7 / 10, PaymentStatus = pay.Status, Date = ord.OrderDate }); var oldestPendPayment = PaymentsList.Where(s => s.PaymentStatus == "requested").OrderBy(s => s.Date).FirstOrDefault(); if (oldestPendPayment != null) { int payID = oldestPendPayment.CorpPaymID; var payToProcess = cdc.Payments.Where(s => s.PaymentID == payID); decimal payamt = Convert.ToDecimal(oldestPendPayment.PaymentAmount); decimal currBalance = balance; if (currBalance - payamt >= 0) { await Task.Run(() => createTransaction(null, payID, null, null)); foreach (Payment pay in payToProcess) { pay.Status = "paid"; } cdc.SubmitChanges(); } } } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } } }
public async void CheckOrdersList(object source, ElapsedEventArgs e) { var cdc = new CorporationDataContext(); var nomberInvNotIssProdOrd = cdc.ProductOrders.Count(s => s.Status == "shiped" && s.InvoiceIssued == "no"); var invNotIssProdOrd = cdc.ProductOrders.Where(s => s.Status == "shiped" && s.InvoiceIssued == "no").OrderBy(s => s.OrderDate).FirstOrDefault(); var oldestInProdOrd = cdc.ProductOrders.Where(s => s.Status == "inproduction").OrderBy(s => s.OrderDate).FirstOrDefault(); var nomberOrdersInProduction = cdc.ProductOrders.Count(s => s.Status == "inproduction"); var notShipedProdOrd = cdc.ProductOrders.Where(s => s.Status == "onStock").OrderBy(s => s.OrderDate).FirstOrDefault(); if (notShipedProdOrd != null) { int ntordID = notShipedProdOrd.MProdOrderID; await Task.Run(() => ShipProdOrd(ntordID)); } if (invNotIssProdOrd != null) { await Task.Run(() => IssuePlantInvoice(invNotIssProdOrd.MProdOrderID)); await Task.Run(() => IssuePayment(invNotIssProdOrd.MProdOrderID)); try { invNotIssProdOrd.InvoiceIssued = "yes"; cdc.SubmitChanges(); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } } if (nomberOrdersInProduction < prodLinesnomber) { NextOpenOrderToProduction(); } if (oldestInProdOrd != null) { await Task.Run(() => Produce(oldestInProdOrd.MProdOrderID)); } }
public void PlaceTransOrder(object source, ElapsedEventArgs e) { int lastItemID = 0; int nextItemID = 0; int itemsCount = 0; var cdc = new CorporationDataContext(); itemsCount = cdc.TransOrders.Count(); if (itemsCount == 0) { nextItemID = 880001; } else { lastItemID = cdc.TransOrders.OrderByDescending(s => s.TransOrderID).Select(s => s.TransOrderID).First(); nextItemID = lastItemID + 1; } Random random = new Random(); int orderValue = random.Next(30000); int distance = random.Next(10000); try { cdc.TransOrders.InsertOnSubmit( new TransOrder { TransOrderID = nextItemID, OrderValue = orderValue, Status = "open", Date = DateTime.Now, Distance = distance, Attribute = null } ); cdc.SubmitChanges(); } catch { } }
private static void NextVehicleToTank(int ordID) { var cdc = new CorporationDataContext(); try { var waitingTankOrd = cdc.TankFuelOrders.Where(s => s.TankFuelOrderID == ordID); foreach (TankFuelOrder fuelOrder in waitingTankOrd) { fuelOrder.Status = "inprocess"; cdc.SubmitChanges(); } } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } }
public void IssuePayment(int ordId) { var cdc = new CorporationDataContext(); BANK bank = new BANK(); decimal balance = bank.balance; int lastItemID; int nextItemID; int itemsCount = 0; itemsCount = cdc.Payments.Count(); if (itemsCount == 0) { nextItemID = 220001; } else { lastItemID = cdc.Payments.OrderByDescending(s => s.PaymentID).Select(s => s.PaymentID).First(); nextItemID = lastItemID + 1; } try { cdc.Payments.InsertOnSubmit( new Payment { PaymentID = nextItemID, MProdOrderID = ordId, Status = "requested", TankFuelOrderID = null } ); cdc.SubmitChanges(); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } }
public decimal FuelReserve() { decimal fuelreserve = 0; decimal FuelSoldAmount = 0; decimal TotalFuelPurchasedAmount = 0; var cdc = new CorporationDataContext(); var TankFuelInvoicesList = cdc.TankFuelInvoices.Join(cdc.TankFuelOrders, inv => inv.TankFuelOrderID, ord => ord.TankFuelOrderID, (inv, ord) => new { TankFuelInvID = inv.TankFuelInvoiceID, InvoiceValue = ord.TankFuelOrderValue, InvoiceAmount = ord.TankFuelOrderAmount, InvoiceStatus = inv.Status, TankFuelInvDate = inv.Date }).ToList(); decimal soldFuel = Convert.ToDecimal(cdc.TankFuelOrders.Where(s => s.Status == "tanked").Sum(s => s.TankFuelOrderAmount)); var FuelPurchasesPaymentList = cdc.TankFuelPayments; int fuelpurchasesCount = cdc.TankFuelPayments.Count(); if (fuelpurchasesCount == 0) { TotalFuelPurchasedAmount = 0; } else { TotalFuelPurchasedAmount = Convert.ToDecimal(FuelPurchasesPaymentList.Sum(s => s.FuelPaymentAmount)); } FuelSoldAmount = soldFuel; fuelreserve = TotalFuelPurchasedAmount - FuelSoldAmount; return(fuelreserve); }
public int InProcessTransOrdersQty() { var cdc = new CorporationDataContext(); int inProcessTransOrdersQty = 0; /* * if (cdc.Trucks.Count()== plantruckqty) * { * * * inProcessTransOrdersQty = plantruckqty - FreeTrucksCount(); * } * else * { * inProcessTransOrdersQty = 0; * } */ inProcessTransOrdersQty = cdc.TransOrders.Where(s => s.Status == "inprocess").Count(); return(inProcessTransOrdersQty); }
public async void NextOpenOrderToProduction() { var cdc = new CorporationDataContext(); var oldestOpenOrd = cdc.ProductOrders.Where(s => s.Status == "open").OrderBy(s => s.OrderDate).FirstOrDefault(); if (oldestOpenOrd != null) { try { oldestOpenOrd.Status = "inproduction"; cdc.SubmitChanges(); await Task.Run(() => Produce(oldestOpenOrd.MProdOrderID)); } catch (Exception ex) { // MessageBox.Show("Exception: " + ex.Message); } } }
private static void TankVehicle(int tankOrdId) { var cdc = new CorporationDataContext(); var waitingTankOrd = cdc.TankFuelOrders.Where(s => s.TankFuelOrderID == tankOrdId); foreach (TankFuelOrder ord in waitingTankOrd) { int tankTime = (ord.TankFuelOrderAmount).GetValueOrDefault() * 100; Thread.Sleep(tankTime); ord.Status = "tanked"; try { cdc.SubmitChanges(); } catch { } } }