Ejemplo n.º 1
0
        public List <LocationsMac> GetLocationsMac(List <int> loc)
        {
            List <LocationsMac> cc = new List <LocationsMac>();

            using (var context = new organisationdatabaseEntities())
            {
                try
                {
                    cc = (from c in context.classdetails
                          where loc.Contains(c.classID)
                          select new
                    {
                        cid = c.classID,
                        ccmac = c.ccmac,
                        deskmac = c.deskmac
                    }).AsEnumerable().Select(x => new LocationsMac
                    {
                        ClassId = x.cid,
                        CCMac   = x.ccmac,
                        DeskMac = x.deskmac
                    }).ToList();
                }
                finally
                {
                    context.Dispose();
                }
            }
            return(cc);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// count the occurence of a ccmac in classdetails.
        /// </summary>
        /// <param name="machinemac">The machinemac.</param>
        /// <returns>System.Int32.</returns>
        public int MachineCount(List <string> machinemac)
        {
            int r     = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        try
                        {
                            using (var context = new organisationdatabaseEntities(c.Name))
                            {
                                r = context.classdetails.Where(x => machinemac.Contains(x.ccmac)).Count();
                                if (r > 0)
                                {
                                    found = true;
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex.Message);
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(r);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Saves the alarm messages
        /// </summary>
        /// <param name="ip">The ip.</param>
        /// <param name="msg">The MSG.</param>
        /// <param name="altime">The altime.</param>
        /// <returns>System.Int32.</returns>
        public int SaveMonitoringDetails(string ip, string msg, string altime)
        {
            int result = 0;

            try
            {
                using (var context = new organisationdatabaseEntities())
                {
                    var cid        = context.classdetails.Where(x => x.camipS == ip || x.camipT == ip).Select(x => x.classID).FirstOrDefault();
                    var monitorobj = new alarmmonitorlog()
                    {
                        almMessage = msg,
                        almTime    = Convert.ToDateTime(altime),
                        Classid    = cid,
                        deviceip   = ip
                    };
                    context.alarmmonitorlogs.Add(monitorobj);
                    result = context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return(result);
        }
Ejemplo n.º 4
0
        public KeyValuePair <string, string> GetMac(string[] mac)
        {
            KeyValuePair <string, string> result = new KeyValuePair <string, string>();

            using (var context = new organisationdatabaseEntities())
            {
                try
                {
                    foreach (string m in mac)
                    {
                        var temp = m.Replace(':', ' ').ToUpper();
                        if (context.classdetails.Any(x => x.deskmac.ToUpper() == temp))
                        {
                            var d = context.classdetails.Where(x => x.deskmac.ToUpper() == temp).Select(y => y.ccmac).SingleOrDefault();

                            result = new KeyValuePair <string, string>(temp, d.ToUpper());
                            break;
                        }
                    }
                }
                finally
                {
                    context.Dispose();
                }
            }



            return(result);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Gets the test time data.
        /// </summary>
        /// <param name="time">The time.</param>
        /// <param name="dbname">The dbname.</param>
        /// <returns>List&lt;StrategyDesc&gt;.</returns>
        public List <StrategyDesc> GetTestTimeData(string time, string dbname)
        {
            List <StrategyDesc> st = new List <StrategyDesc>();

            var dayOfMonth = DateTime.Now.Day;
            var dayOfWeek  = (int)DateTime.Now.DayOfWeek;
            var toDate     = DateTime.Now.Date;

            using (var context = new organisationdatabaseEntities(dbname))
            {
                try
                {
                    var temp = (from p in context.strategydescriptions
                                join e in context.strategyequipments
                                on p.Equipmentid equals e.id
                                join s in context.strategymanagements on p.StrategyRefId equals s.strategyId

                                where s.CurrentStatus != 0 && p.strategyTime == time && p.Equipmentid == 1 &&
                                p.StrategyTimeFrame1 == "TestTime"
                                select new
                    {
                        StrategyDescId = p.id,
                        StrategyTimeFrame1 = p.StrategyTimeFrame1,
                        StrategyTimeFrame2 = p.StrategyTimeFrame2,
                        EquipmentId = e.id,
                        EquipmentName = e.EquipmentsNames,
                        ServiceConfig = p.Config ?? "",
                        StrategyTime = p.strategyTime.ToString(),
                        Location = s.StrategyLocation,
                        StrategyId = s.strategyId
                    }).AsEnumerable().Select(x => new StrategyDesc
                    {
                        StrategyDescId     = x.StrategyDescId,
                        StrategyTimeFrame2 = x.StrategyTimeFrame2,
                        EquipmentId        = x.EquipmentId,
                        EquipmentName      = x.EquipmentName,
                        ServiceConfig      = JsonConvert.DeserializeObject(x.ServiceConfig),
                        StrategyTime       = x.StrategyTime,
                        Location           = x.Location,
                        StrategyId         = x.StrategyId
                    }).ToList();
                    if (temp.Count > 0)
                    {
                        st.AddRange(temp);
                    }
                    // var data = context.strategydescriptions.Where(x => x.strategyTime == time );
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    context.Dispose();
                }
            }

            return(st);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// save  desktop event or action as an asynchronous operation.
        /// </summary>
        /// <param name="deskmac">The deskmac.</param>
        /// <param name="action">The action.</param>
        /// <returns>A Task&lt;System.Int32&gt; representing the asynchronous operation.
        /// No. of updated rows</returns>
        public async Task <int> SaveInactiveDesktopAsync(string deskmac, string action)
        {
            var res   = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            try
                            {
                                var id = context.classdetails.Where(x => x.deskmac.ToUpper() == deskmac.ToUpper())
                                         .Select(x => x.classID).FirstOrDefault();
                                if (id != 0)
                                {
                                    found = true;
                                    temp_desktopevents tmp = new temp_desktopevents()
                                    {
                                        Action     = action,
                                        ActionTime = DateTime.Now,
                                        Deskmac    = deskmac,
                                        classid    = id
                                    };
                                    context.temp_desktopevents.Add(tmp);
                                    res = await context.SaveChangesAsync();
                                }
                            }
                            catch (Exception ex)
                            {
                                loggerFile.Debug(Environment.NewLine + DateTime.Now.ToLongDateString()
                                                 + " " + DateTime.Now.ToLongTimeString() + "exception in recording machine logs: "
                                                 + ex.StackTrace + " error message " + ex.InnerException);
                            }
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(res);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Updates the strategy status.
        /// </summary>
        /// <param name="instruction">The instruction.</param>
        /// <param name="machinemac">The machinemac.</param>
        /// <param name="stid">The stid.</param>
        /// <param name="status">The status.</param>
        /// <returns>System.Int32.</returns>
        public async Task <int> UpdateStrategyStatus(string instruction, string machinemac, int stid, string status)
        {
            int r       = 0;
            var classid = 0;
            var found   = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    try
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            classid = context.classdetails.Where(x => x.ccmac == machinemac).Select(x => x.classID).FirstOrDefault();
                            if (context.strategylogs.Any(x => x.Instruction == instruction && x.MachineMac == classid &&
                                                         x.StrategyDescId == stid))
                            {
                                found = true;
                                var log = context.strategylogs.Where(x => x.Instruction == instruction && x.MachineMac == classid && x.StrategyDescId == stid);
                                foreach (var l in log)
                                {
                                    if (DateTime.Now.Subtract(l.ExecutionTime).TotalSeconds < 180)
                                    {
                                        l.Status = status;
                                        break;
                                    }
                                }
                            }
                            r = await context.SaveChangesAsync();
                        }
                    }
                    catch (Exception ex)
                    {
                        loggerFile.Debug(Environment.NewLine + DateTime.Now.ToLongDateString() +
                                         " " + DateTime.Now.ToLongTimeString() + "exception in stratrgy logs: " +
                                         ex.InnerException + " error message " + ex.Message + " data: " +
                                         instruction + " " + machinemac + " " + stid + " " + status);
                    }
                }
                else
                {
                    break;
                }
            }
            return(r);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Saves the power usage information.
        /// </summary>
        /// <param name="pow">The pow.</param>
        /// <param name="mac">The mac.</param>
        /// <param name="typ">The typ.</param>
        /// <returns>System.Int32.</returns>
        public int SavePowerUsageInfo(int pow, string mac, string typ)
        {
            int r     = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        try
                        {
                            using (var context = new organisationdatabaseEntities(c.Name))
                            {
                                var cid = context.classdetails.Where(x => x.ccmac == mac)
                                          .Select(x => x.classID).FirstOrDefault();
                                if (cid > 0)
                                {
                                    found = true;
                                    machineusagelogs_minute m = new machineusagelogs_minute()
                                    {
                                        classid    = cid,
                                        value      = pow,
                                        attribute  = typ,
                                        recordtime = DateTime.Now
                                    };
                                    context.machineusagelogs_minute.Add(m);
                                    r = context.SaveChanges();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex.Message);
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(r);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Updates the projector configuration.
        /// </summary>
        /// <param name="mac">The mac.</param>
        /// <param name="val">The value.</param>
        /// <returns>System.Int32.</returns>
        public int UpdateProjectorConfig(string mac, string val)
        {
            int r = 0; string stat = "";
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        if (val == "True")
                        {
                            stat = "Registered";
                        }
                        else
                        {
                            stat = "Pending";
                        }

                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            var classid = context.classdetails.Where(x => x.ccmac == mac).Select(x => x.classID).FirstOrDefault();
                            if (classid != 0)
                            {
                                found = true;
                                var d = context.projectorconfiginfoes.Where(x => x.Classid == classid).Select(x => x).FirstOrDefault();
                                if (d != null)
                                {
                                    d.status = stat;
                                }
                            }

                            r = context.SaveChanges();
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(r);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Saves the strategy log information.
        /// </summary>
        /// <param name="instruction">The instruction.</param>
        /// <param name="stid">The stid.</param>
        /// <param name="status">The status.</param>
        /// <param name="machinemac">The machinemac.</param>
        /// <param name="equipid">The equipid.</param>
        public async Task SaveStrategyLogInfo(string instruction, int stid, string status, string machinemac, int equipid)
        {
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    try
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            var classid = context.classdetails.Where(x => x.ccmac == machinemac).Select(x => x.classID).FirstOrDefault();
                            if (classid != 0)
                            {
                                found = true;
                                var newLog = new strategylog()
                                {
                                    StrategyDescId = stid,
                                    MachineMac     = classid,
                                    ExecutionTime  = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm")),
                                    Instruction    = instruction,
                                    Status         = status,
                                    EquipmentId    = equipid
                                };
                                context.strategylogs.Add(newLog);
                                await context.SaveChangesAsync();
                            }
                        }
                    }

                    catch (Exception ex)
                    {
                        loggerFile.Debug(Environment.NewLine + DateTime.Now.ToLongDateString()
                                         + " " + DateTime.Now.ToLongTimeString() + "exception in stratrgy logs: "
                                         + ex.StackTrace + " error message " + ex.InnerException);
                    }
                }
                else
                {
                    break;
                }
            }
        }
Ejemplo n.º 11
0
        /// <summary>
        /// Gets the camera detail by machine mac address.
        /// </summary>
        /// <param name="ccmac">The ccmac.</param>
        /// <returns>CamDetails.</returns>
        public CamDetails GetDeviceDetailByMachine(string ccmac)
        {
            var result = new CamDetails();

            using (var context = new organisationdatabaseEntities())
            {
                result = context.classdetails.Where(x => x.ccmac == ccmac).Select(x => new CamDetails
                {
                    ClassId    = x.classID,
                    DeviceIpSt = x.camipS.Trim(),
                    DeviceIpT  = x.camipT.Trim(),
                    Password   = x.campass.Trim(),
                    UserId     = x.camuserid.Trim(),
                    Port       = x.camport,
                    Ccmac      = ccmac.ToUpper()
                }).FirstOrDefault();
            }
            return(result);
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Gets the power usage information.
        /// </summary>
        /// <param name="mac">The mac.</param>
        /// <param name="typ">The typ.</param>
        /// <returns>System.String.</returns>
        public string GetPowerUsageInfo(string mac, string typ)
        {
            int r     = 0;
            var data  = "";
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        try
                        {
                            using (var context = new organisationdatabaseEntities(c.Name))
                            {
                                var cid = context.classdetails.Where(x => x.ccmac == mac).OrderBy(x => x.classID)
                                          .Select(x => x.classID).FirstOrDefault();
                                if (cid > 0)
                                {
                                    found = true;
                                    data  = context.Database.ExecuteSqlCommand("SELECT sum(value) as " +
                                                                               "value from organisationdatabase.machineusagelogs_minute WHERE " +
                                                                               "date(recordtime)= date(now())  and attribute = 'Power'" +
                                                                               " and classid =" + cid).ToString();

                                    r = context.SaveChanges();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex.Message);
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(data);
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Saves the reader log.
        /// </summary>
        /// <param name="message">The message.</param>
        /// <param name="mac">The mac.</param>
        /// <param name="cardid">The cardid.</param>
        /// <returns>System.Int32.</returns>
        public int SaveReaderLog(string message, string mac, string cardid)
        {
            int result = 0;
            var found  = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        try
                        {
                            using (var context = new organisationdatabaseEntities(c.Name))
                            {
                                var classid = context.classdetails.Where(x => x.ccmac == mac).Select(x => x.classID).FirstOrDefault();
                                if (classid != 0)
                                {
                                    found = true;
                                    cardlog cardlog = new cardlog()
                                    {
                                        Message    = message,
                                        ClassId    = classid,
                                        cardId     = cardid,
                                        ActionTime = DateTime.Now
                                    };
                                    context.cardlogs.Add(cardlog);
                                    result = context.SaveChanges();
                                }
                            }
                        }
                        catch (Exception)
                        {
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(result);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Saves the machine logs.
        /// </summary>
        /// <param name="type">The type.</param>
        /// <param name="data">The data.</param>
        /// <param name="machinemac">The machinemac.</param>
        public async Task SaveMachineLogs(string type, string data, string machinemac)
        {
            int r     = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    try
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            var classid = context.classdetails.Where(x => x.ccmac == machinemac).Select(x => x.classID).FirstOrDefault();
                            if (classid != 0)
                            {
                                found = true;
                                var machineop = new machineoperationlog()
                                {
                                    Operation     = data,  //JsonSerializer.Serialize(data),
                                    Location      = classid,
                                    Type          = type,
                                    ExecutionTime = DateTime.Now
                                };
                                context.machineoperationlogs.Add(machineop);
                            }
                            r = await context.SaveChangesAsync();
                        }
                    }
                    catch (Exception ex)
                    {
                        loggerFile.Debug(Environment.NewLine + DateTime.Now.ToLongDateString()
                                         + " " + DateTime.Now.ToLongTimeString() + "exception in recording machine logs: "
                                         + ex.StackTrace + " error message " + ex.InnerException);
                    }
                }
                else
                {
                    break;
                }
            }
        }
Ejemplo n.º 15
0
        /// <summary>
        /// Gets the string by scheduleor section.
        /// </summary>
        /// <param name="timeFrameType">Type of the time frame.</param>
        /// <param name="dbname">The dbname.</param>
        /// <returns>List&lt;StrategyDesc&gt;.</returns>
        public List <StrategyDesc> GetStrByScheduleorSection(string timeFrameType, string dbname)
        {
            List <StrategyDesc> st = new List <StrategyDesc>();

            using (var context = new organisationdatabaseEntities(dbname))
            {
                var temp = (from p in context.strategydescriptions
                            join e in context.strategyequipments
                            on p.Equipmentid equals e.id
                            join s in context.strategymanagements on p.StrategyRefId equals s.strategyId
                            where s.CurrentStatus != 0 && p.StrategyTimeFrame1 == timeFrameType
                            select new
                {
                    StrategyDescId = p.id,
                    StrategyTimeFrame1 = p.StrategyTimeFrame1,
                    StrategyTimeFrame2 = p.StrategyTimeFrame2,
                    EquipmentId = e.id,
                    EquipmentName = e.EquipmentsNames,
                    ServiceConfig = p.Config ?? "",
                    StrategyTime = p.strategyTime.ToString(),
                    Location = s.StrategyLocation,
                    StrategyId = s.strategyId
                }).AsEnumerable().Select(x => new StrategyDesc
                {
                    StrategyDescId     = x.StrategyDescId,
                    StrategyTimeFrame1 = x.StrategyTimeFrame1,
                    StrategyTimeFrame2 = x.StrategyTimeFrame2,
                    EquipmentId        = x.EquipmentId,
                    EquipmentName      = x.EquipmentName,
                    ServiceConfig      = System.Text.Json.JsonSerializer.Deserialize <Dictionary <string, object> >(x.ServiceConfig),
                    StrategyTime       = x.StrategyTime,
                    Location           = x.Location,
                    StrategyId         = x.StrategyId
                }).ToList();
                if (temp.Count > 0)
                {
                    st.AddRange(temp);
                }
            }

            return(st);
        }
Ejemplo n.º 16
0
        /// <summary>
        /// Gets the mac.
        /// </summary>
        /// <param name="mac">The array of desktop mac address .</param>
        /// <returns>desktop mac and related central control machine mac(ccmac)</returns>
        public KeyValuePair <string, string> GetMac(string[] mac)
        {
            KeyValuePair <string, string> result = new KeyValuePair <string, string>();
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            try
                            {
                                foreach (string m in mac)
                                {
                                    var temp = m.Replace(':', ' ').ToUpper();
                                    var d    = context.classdetails.Where(x => x.deskmac.ToUpper() == temp).Select(y => y.ccmac).SingleOrDefault();
                                    if (d != null)
                                    {
                                        found  = true;
                                        result = new KeyValuePair <string, string>(temp, d.ToUpper());
                                        break;
                                    }
                                }
                            }
                            finally
                            {
                                context.Dispose();
                            }
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(result);
        }
Ejemplo n.º 17
0
        /// <summary>
        /// Updates the status of card reg.
        /// </summary>
        /// <param name="stat">The stat.</param>
        /// <param name="mac">The mac.</param>
        /// <param name="cid">The cid.</param>
        /// <returns>System.Int32.</returns>
        public int UpdateStatCardReg(string stat, string mac, string cid)
        {
            int result = 0;
            var found  = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            var classid = context.classdetails.Where(x => x.ccmac == mac).Select(x => x.classID).FirstOrDefault();
                            if (context.card_registration.Any(x => x.calssId == classid && x.OneCardId == cid))
                            {
                                var row = context.card_registration.Where(x => x.calssId == classid && x.OneCardId == cid)
                                          .Select(x => x).FirstOrDefault();

                                if (row != null)
                                {
                                    found = true;
                                    Console.WriteLine("status: " + row.Status);
                                    row.Status     = stat;
                                    row.UpdateTime = DateTime.Now;
                                }
                                result = context.SaveChanges();
                            }
                            Console.WriteLine("UpdatedRows:" + result);
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(result);
        }
Ejemplo n.º 18
0
        /// <summary>
        /// Updates the machine status.
        /// this is used to save the status of machine On/Off
        /// the table temp_machinestatus will be used in future purposes
        /// </summary>
        /// <param name="machinemac">The machinemac.</param>
        /// <param name="status">The status.</param>
        /// <returns>System.Int32.</returns>
        public async Task <int> UpdateMachineStatus(string machinemac, string status)
        {
            int r     = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    using (var context = new organisationdatabaseEntities(c.Name))
                    {
                        var cid = context.classdetails.Where(x => x.ccmac == machinemac).Select(x => x.classID).FirstOrDefault();
                        if (cid != 0)
                        {
                            found = true;
                            if (context.temp_machinestatus.Any(x => x.classid == cid))
                            {
                                var row = context.temp_machinestatus.Where(x => x.classid == cid).FirstOrDefault();
                                row.machineStatus = status;
                            }
                            else
                            {
                                var newrow = new temp_machinestatus {
                                    classid = cid, machineStatus = status
                                };
                                context.temp_machinestatus.Add(newrow);
                            }
                            r = await context.SaveChangesAsync();
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(r);
        }
Ejemplo n.º 19
0
        /// <summary>
        /// Gets the class identifier.
        /// </summary>
        /// <param name="mac">The ccmac.</param>
        /// <returns>System.Int32. classid</returns>
        public int GetClassID(string mac)
        {
            int id    = 0;
            var found = false;

            foreach (ConnectionStringSettings c in ConfigurationManager.ConnectionStrings)
            {
                if (!found)
                {
                    if (c.Name.Contains("Entities"))
                    {
                        using (var context = new organisationdatabaseEntities(c.Name))
                        {
                            try
                            {
                                id = context.classdetails.Where(x => x.ccmac.ToUpper() == mac.ToUpper())
                                     .Select(x => x.classID).FirstOrDefault();
                                if (id > 0)
                                {
                                    found = true;
                                }
                            }
                            catch (Exception ex)
                            {
                                loggerFile.Debug(Environment.NewLine + DateTime.Now.ToLongDateString()
                                                 + " " + DateTime.Now.ToLongTimeString() + "exception in getting classid from machine mac : "
                                                 + ex.StackTrace + " error message " + ex.InnerException);
                            }
                        }
                    }
                }
                else
                {
                    break;
                }
            }
            return(id);
        }
Ejemplo n.º 20
0
 public void SaveStrategyLogInfo(string instruction, int stid, int descid, string status, string machinemac)
 {
     try
     {
         using (var context = new organisationdatabaseEntities())
         {
             var newLog = new strategylog()
             {
                 StrategyDescId = descid,
                 StrategyId     = stid,
                 MachineMac     = machinemac,
                 ExecutionTime  = DateTime.Now,
                 Instruction    = instruction,
                 Status         = status
             };
             context.strategylogs.Add(newLog);
         }
     }
     catch (Exception ex)
     {
         File.WriteAllText(docPath, "exception in stratrgy logs: " + ex.StackTrace);
     }
 }
Ejemplo n.º 21
0
        /// <summary>
        /// Gets the data.
        /// </summary>
        /// <param name="time">The time.</param>
        /// <param name="dbname">The dbname.</param>
        /// <returns>List&lt;StrategyDesc&gt;.</returns>
        public List <StrategyDesc> GetData(string time, string dbname)
        {
            List <StrategyDesc> st = new List <StrategyDesc>();

            var dayOfMonth = DateTime.Now.Day;
            var dayOfWeek  = (int)DateTime.Now.DayOfWeek;
            var toDate     = DateTime.Now.Date;

            try
            {
                using (var context = new organisationdatabaseEntities(dbname))
                {
                    try
                    {
                        var temp = (from p in context.strategydescriptions
                                    join e in context.strategyequipments
                                    on p.Equipmentid equals e.id
                                    join s in context.strategymanagements on p.StrategyRefId equals s.strategyId
                                    where s.CurrentStatus != 0 && p.strategyTime == time
                                    select new
                        {
                            StrategyDescId = p.id,
                            StrategyTimeFrame1 = p.StrategyTimeFrame1,
                            StrategyTimeFrame2 = p.StrategyTimeFrame2,
                            EquipmentId = e.id,
                            EquipmentName = e.EquipmentsNames,
                            ServiceConfig = p.Config ?? "",
                            StrategyTime = p.strategyTime.ToString(),
                            Location = s.StrategyLocation,
                            StrategyId = s.strategyId
                        }).AsEnumerable().Select(x => new StrategyDesc
                        {
                            StrategyDescId     = x.StrategyDescId,
                            StrategyTimeFrame1 = x.StrategyTimeFrame1,
                            StrategyTimeFrame2 = x.StrategyTimeFrame2,
                            EquipmentId        = x.EquipmentId,
                            EquipmentName      = x.EquipmentName,
                            ServiceConfig      = System.Text.Json.JsonSerializer.Deserialize <Dictionary <string, dynamic> >(x.ServiceConfig),
                            StrategyTime       = x.StrategyTime,
                            Location           = x.Location,
                            StrategyId         = x.StrategyId
                        }).ToList();
                        if (temp.Count > 0)
                        {
                            st.AddRange(temp);
                        }
                        // var data = context.strategydescriptions.Where(x => x.strategyTime == time );
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                    finally
                    {
                        context.Dispose();
                    }
                }
            }
            catch (Exception ex)
            {
                loggerFile.Debug(Environment.NewLine + "error in method GetData for strategy: " + ex.Message);
            }

            return(st);
        }