public IActionResult p41CreateChild(Models.p41CreateChildViewModel v, string oper) { RefreshState_p41CreateChild(ref v); if (ModelState.IsValid) { if (oper == "postback") { return(View(v)); } if (oper == "save" && (v.lisDestOper == null || v.lisDestOper.Where(p => p.IsSelected == true).Count() == 0)) { this.AddMessage("Musíte zaškrtnout minimálně jednu operaci."); return(View(v)); } var c = new BO.p41Task() { p41Name = v.p41Name, p27ID = v.SelectedP27ID }; int x = Factory.p41TaskBL.CreateChild(c, v.RecMasterP41, v.lisDestOper.Where(p => p.IsSelected == true).ToList(), v.p18flag); if (x > 0) { v.SetJavascript_CallOnLoad(0, "p41"); return(View(v)); } } return(View(v)); }
public BO.p41Task TestRecord(int pid) { var c = new BO.p41Task() { p41ID = pid, p41Name = "hovado" }; return(c); }
private TechnologickyRozpis handle_one_rozpis(BO.p41Task recP41) { var ret = new TechnologickyRozpis(); var recP11 = _f.p11ClientProductBL.Load(recP41.p11ID); ret.Hlavicka = new HlavickaZakazky { VyrobniZakazka = recP41.p41Code, KodPolozky = recP11.p11Code, NazevPolozky = recP11.p11Name, Mnozstvi = recP41.p41PlanUnitsCount, Datum = recP41.DateInsert, Cas = recP41.DateInsert }; ret.Hlavicka.ZPStart = recP41.PlanStartClear; ret.Hlavicka.ZPStop = recP41.p41PlanEnd; ret.PlanovaneMnozstvi = recP41.p41PlanUnitsCount; ret.Stav = recP41.b02ID; var mq = new BO.myQuery("p44TaskOperPlan"); mq.p18flags = new List <int>() { 1, 3 }; mq.p41id = recP41.pid; var lis = _f.p44TaskOperPlanBL.GetList(mq); ret.Polozky = new List <PolozkaVyroby>(); foreach (var c in lis) { var recP18 = _f.p18OperCodeBL.Load(c.p18ID); var polozka = new PolozkaVyroby() { KodOperace = BO.BAS.InInt(recP18.p18Code), CisloOperace = c.p44OperNum, Start = c.p44Start, Stop = c.p44End, Popis = recP18.p18Name }; polozka.Parametr = c.p44OperParam; if (c.p19ID > 0) { var recP19 = _f.p19MaterialBL.Load(c.p19ID); polozka.MaterialKod = recP19.p19Code; polozka.MaterialNazev = recP19.p19Name; } polozka.VahaPozadovana = c.p44MaterialUnitsCount; polozka.DelkaTrvani = c.p44TotalDurationOperMin; ret.Polozky.Add(polozka); } return(ret); }
public IActionResult Record(Models.p41RecordViewModel v) { if (ModelState.IsValid) { BO.p41Task c = new BO.p41Task(); if (v.Rec.pid > 0) { c = Factory.p41TaskBL.Load(v.Rec.pid); } c.p52ID = v.Rec.p52ID; c.b02ID = v.Rec.b02ID; c.p27ID = v.Rec.p27ID; c.j02ID_Owner = v.Rec.j02ID_Owner; c.p41IsDraft = v.Rec.p41IsDraft; c.p41Code = v.Rec.p41Code; c.p41Name = v.Rec.p41Name; c.p41Memo = v.Rec.p41Memo; c.p41StockCode = v.Rec.p41StockCode; c.p41PlanStart = v.Rec.p41PlanStart; //c.p41Duration = v.Rec.p41Duration; c.p41PlanUnitsCount = v.Rec.p41PlanUnitsCount; v.Rec.pid = Factory.p41TaskBL.Save(c); if (v.Rec.pid > 0) { Factory.o51TagBL.SaveTagging("p41", v.Rec.pid, v.TagPids); v.SetJavascript_CallOnLoad(v.Rec.pid); return(View(v)); } } RefreshState_Record(v); this.Notify_RecNotSaved(); return(View(v)); }
private void handle_create_by_p52(int p52id) { if (_lisP27.Count == 0 || p52id == 0) { return; } var cP52 = _f.p52OrderItemBL.Load(p52id); var cP11 = _f.p11ClientProductBL.Load(cP52.p11ID); double dblTotalKG = cP52.Recalc2Kg - cP52.p52Task_Kg; double dblUsedKG = 0; DateTime dat0 = _dat0; var mq = new BO.myQuery("p41Task"); mq.p52id = p52id; int x = 1; string strLastCode = ""; if (dblTotalKG <= 0) { _f.CurrentUser.AddMessage(string.Format("Položka objednávky [{0}] je již kompletně rozplánovaná.", cP52.p52Code)); } while (dblUsedKG < dblTotalKG) { foreach (var kotel in _lisP27) { var rec = new BO.p41Task(); rec.p52ID = p52id; rec.p52Code = cP52.p52Code; rec.p27ID = kotel.pid; rec.p27Name = kotel.p27Name; rec.p41Name = cP11.p11Name + " [" + cP11.p11Code + "]"; rec.p41PlanUnitsCount = kotel.p27Capacity; if (rec.p41PlanUnitsCount + dblUsedKG > dblTotalKG) { rec.p41PlanUnitsCount = dblTotalKG - dblUsedKG; } double dur = _f.p12ClientTpvBL.Simulate_Total_Duration(cP11.p12ID, rec.p41PlanUnitsCount, kotel.pid); dat0 = kotel.DateInsert; rec.p41PlanStart = dat0; rec.p41Duration = dur; rec.p41Code = _f.p41TaskBL.EstimateTaskCode(cP52.p52Code, x); while (strLastCode == rec.p41Code) { x += 1; rec.p41Code = _f.p41TaskBL.EstimateTaskCode(cP52.p52Code, x); } //kotel.DateInsert = rec.p41PlanEnd.AddSeconds(1); kotel.DateInsert = rec.p41PlanEnd; _tasks.Add(rec); dblUsedKG += rec.p41PlanUnitsCount; if (dblUsedKG >= dblTotalKG) { return; } x += 1; strLastCode = rec.p41Code; } } }
public IActionResult Create(Models.p41CreateViewModel v, string rec_oper, int p27id) { if (rec_oper == "p51id_change") { v.p52ID = 0; v.p52Code = ""; } if (v.p51ID > 0) { v.RecP51 = Factory.p51OrderBL.Load(v.p51ID); } if (v.p52ID > 0) { v.RecP52 = Factory.p52OrderItemBL.Load(v.p52ID); v.RecP51 = Factory.p51OrderBL.Load(v.RecP52.p51ID); } if (rec_oper == "simulation_p51") { if (v.p51ID == 0) { Factory.CurrentUser.AddMessage("Musíte vybrat objednávku."); } else { var simul = new UI.TaskSimulation(Factory); simul.Date0 = getDate0(v); v.Tasks = simul.getTasksByP51(v.p51ID); } } if (rec_oper == "simulation_p52") { if (v.p52ID == 0) { Factory.CurrentUser.AddMessage("Musíte vybrat položku objednávky."); } else { var simul = new UI.TaskSimulation(Factory); simul.Date0 = getDate0(v); v.Tasks = simul.getTasksByP52(v.p52ID, v.p27ID); } } if (rec_oper == "simulation_p52ids") { var simul = new UI.TaskSimulation(Factory); simul.Date0 = getDate0(v); v.Tasks = simul.getTasksByP52IDs(BO.BAS.ConvertString2ListInt(v.SelectedP52IDs)); } if (rec_oper == "newitem") { if (v.Tasks == null) { v.Tasks = new List <BO.p41Task>(); } var c = new BO.p41Task(); if (v.Tasks.Where(p => p.p41PlanEnd != null).Count() > 0) { c.p41PlanStart = v.Tasks.Where(p => p.p41PlanEnd != null).Last().p41PlanEnd; } else { c.p41PlanStart = DateTime.Now.AddHours(1); } c.p41Duration = 60; if (p27id > 0) { c.p27ID = p27id; c.p27Name = Factory.p27MszUnitBL.Load(p27id).p27Name; } if (v.RecP52 != null) { c.p52ID = v.RecP52.pid; c.p52Code = v.RecP52.p52Code; //c.p41Name = v.RecP52.p11Name + " [" + v.RecP52.p11Code + "]"; } v.Tasks.Add(c); return(View(v)); } if (rec_oper == "clear") { v.Tasks = new List <BO.p41Task>(); } if (rec_oper == "delete") { //došlo k virtuálnímu odstranění řádku zakázky - pouze postback } if (rec_oper == "postback") //pouze postback { } if (v.Tasks == null) { v.Tasks = new List <BO.p41Task>(); } if (ModelState.IsValid) { if (rec_oper == "save") { int x = Factory.p41TaskBL.SaveBatch(v.Tasks.Where(p => p.IsTempDeleted == false).ToList()); if (x > 0) { v.SetJavascript_CallOnLoad(0, "p41"); return(View(v)); } } } if (v.RecP52 != null) { BO.p11ClientProduct cP11 = Factory.p11ClientProductBL.Load(v.RecP52.p11ID); if (cP11.p10ID_Master > 0) { v.p25ID = Factory.p10MasterProductBL.Load(cP11.p10ID_Master).p25ID; //z RecP10 se bere typ zařízení pro combo nabídku zařízení } else { if (cP11.p12ID > 0) { v.p25ID = Factory.p12ClientTpvBL.Load(cP11.p12ID).p25ID; //vlastní klientská receptura } } var mq = new BO.myQuery("p27MszUnit"); mq.p25id = v.p25ID; v.lisP27 = Factory.p27MszUnitBL.GetList(mq).ToList(); } return(View(v)); }