private void a_Imported(object sender, PackProcessEventArgs e) { Trace.WriteIf(ZeroCommonClasses.Environment.Config.LogLevel.TraceInfo, string.Format("Import Finished: Status = {3}, ConnID = {0}, DB Pack = {1}, Pack Module = {2}", e.ConnectionID, e.Pack.Code, e.PackInfo != null ? e.PackInfo.ModuleCode : -1, (PackManager.PackStatus)e.Pack.PackStatusCode), "Information"); if (e.Pack.PackStatusCode == (int)PackManager.PackStatus.Imported) { if ((e.Pack.IsMasterData.GetValueOrDefault()) || (e.Pack.IsUpgrade.GetValueOrDefault())) { using (var packEnt = new CommonEntitiesManager()) { using (var ent = new ConfigurationModelManager()) { foreach (var item in ent.Terminals.Where(t => t.Code != e.PackInfo.TerminalCode)) { Trace.WriteIf(ZeroCommonClasses.Environment.Config.LogLevel.TraceVerbose, string.Format("Saved to Pendings of Terminal {0}", item.Code), "Verbose"); PackPending pp = PackPending.CreatePackPending(e.Pack.Code, item.Code); pp.Stamp = DateTime.Now; packEnt.PackPendings.AddObject(pp); } } packEnt.SaveChanges(); } } else { if (e.PackInfo != null && e.PackInfo.TerminalToCodes.Count > 0) { using (var packEnt = new CommonEntitiesManager()) { using (var ent = new ConfigurationModelManager()) { foreach (int terminal in e.PackInfo.TerminalToCodes.Where(c => c != e.PackInfo.TerminalCode)) { if (ent.Terminals.FirstOrDefault(t => t.Code == terminal) != null) { Trace.WriteIf(ZeroCommonClasses.Environment.Config.LogLevel.TraceVerbose, string.Format("Saved to Pendings of Terminal {0}", terminal), "Verbose"); PackPending pp = PackPending.CreatePackPending(e.Pack.Code, terminal); pp.Stamp = DateTime.Now; packEnt.PackPendings.AddObject(pp); } } } packEnt.SaveChanges(); } } } } }
private static void UpdatePackStatus(Entities.Pack aPack, CommonEntitiesManager dbent, PackStatus newStatus, string message) { aPack.Stamp = DateTime.Now; aPack.PackStatusCode = (int)newStatus; aPack.Result = message != null ? aPack.Result +"\n"+ message : aPack.Result; dbent.SaveChanges(); }
private Entities.Pack InsertPackInDb(string packFilePath, CommonEntitiesManager dbent) { if (dbent == null) throw new ArgumentNullException("dbent"); string name = Path.GetFileName(packFilePath); Entities.Pack P = dbent.Packs.FirstOrDefault(p => p.Name == name); if (default(Entities.Pack) == P) { P = Entities.Pack.CreatePack(0, true); P.Name = name; P.Data = File.ReadAllBytes(packFilePath); if (!string.IsNullOrWhiteSpace(ConnectionID)) P.ConnectionCode = ConnectionID; dbent.AddToPacks(P); dbent.SaveChanges(); } return P; }
public void MarkPackReceived(int terminalCode,int packCode) { PackPending packPending; using (var ent = new CommonEntitiesManager()) { packPending = ent.PackPendings.FirstOrDefault(pp => pp.PackCode == packCode && pp.TerminalCode == terminalCode); if (packPending != null) { ent.PackPendings.DeleteObject(packPending); ent.SaveChanges(); } bool mark = Enumerable.All(ent.Packs.Where(p => p.Code == packCode), item => !item.IsMasterData.HasValue || !item.IsMasterData.Value); if (!mark) { } } }