Exemple #1
0
        public DataResult GetWarningLogDetail([FromQuery] int qId)
        {
            var now        = DateTime.Now;
            var workshopId = 1;
            var result     = new DataResult();
            var item       = WarningLogHelper.Instance.Get <WarningLog>(qId);
            var type       = item.WarningType;
            var dataType   = item.DataType;

            if (type == WarningType.设备 && dataType == WarningDataType.设备数据)
            {
                result.datas.AddRange(item.WarningData.Select(wd => new
                {
                    feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                    feild2 = new Tuple <string, dynamic>("值", wd.V),
                }));
            }
            else if (type == WarningType.设备 && dataType == WarningDataType.生产数据)
            {
                if (HWarningHelper.生产数据单设备加工信息字段.Any(x => x.Item2 != item.ItemType))
                {
                    result.datas.AddRange(item.WarningData.Select(wd => new
                    {
                        feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                        feild2 = new Tuple <string, dynamic>("流程卡", wd.S),
                        feild3 = new Tuple <string, dynamic>("值", wd.V),
                    }));
                }
                else
                {
                    result.datas.AddRange(item.WarningData.Select(wd => new
                    {
                        feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                        feild2 = new Tuple <string, dynamic>("值", wd.V),
                    }));
                }
            }
            else if (type == WarningType.设备 && dataType == WarningDataType.流程卡数据)
            {
                var ids  = item.WarningData.Select(x => x.Id);
                var gets = FlowCardReportGetHelper.GetReport(workshopId, default(DateTime), default(DateTime)
                                                             , 0, null, 0, null, 0, null, 0, null, 0, null, 0, null, 0, null, 0, ids);
                foreach (var wd in item.WarningData)
                {
                    var get = gets.FirstOrDefault(x => x.Id == wd.Id);
                    result.datas.Add(new
                    {
                        feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                        feild2 = new Tuple <string, dynamic>("流程卡", wd.S),
                        feild3 = new Tuple <string, dynamic>("工序", get?.StepName ?? ""),
                        feild4 = new Tuple <string, dynamic>("已耗时", ((int)wd.V).ToTimeStr()),
                    });
                }
            }
            return(result);
        }
Exemple #2
0
        public DataResult GetCurrentWarningDetail([FromQuery] int qId)
        {
            var now        = DateTime.Now;
            var workshopId = 1;
            var result     = new DataResult();

            if (HWarningHelper.CurrentData != null && HWarningHelper.CurrentData.Values.Any(x => x.Id == qId))
            {
                var item     = HWarningHelper.CurrentData.Values.First(x => x.Id == qId);
                var type     = item.WarningType;
                var dataType = item.DataType;
                if (type == WarningType.设备 && dataType == WarningDataType.设备数据)
                {
                    result.datas.AddRange(item.WarningData.Select(wd => new
                    {
                        feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                        feild2 = new Tuple <string, dynamic>("值", wd.V),
                    }));
                }
                else if (type == WarningType.设备 && dataType == WarningDataType.生产数据)
                {
                    if (HWarningHelper.生产数据单设备加工信息字段.Any(x => x.Item2 != item.ItemType))
                    {
                        result.datas.AddRange(item.WarningData.Select(wd => new
                        {
                            feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                            feild2 = new Tuple <string, dynamic>("流程卡", wd.S),
                            feild3 = new Tuple <string, dynamic>("值", wd.V),
                        }));
                    }
                    else
                    {
                        result.datas.AddRange(item.WarningData.Select(wd => new
                        {
                            feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                            feild2 = new Tuple <string, dynamic>("值", wd.V),
                        }));
                    }
                }
                else if (type == WarningType.设备 && dataType == WarningDataType.流程卡数据)
                {
                    var ids  = item.WarningData.Select(x => x.Id);
                    var gets = FlowCardReportGetHelper.GetReport(workshopId, default(DateTime), default(DateTime)
                                                                 , 0, null, 0, null, 0, null, 0, null, 0, null, 0, null, 0, null, 0, ids);
                    foreach (var wd in item.WarningData)
                    {
                        var get = gets.FirstOrDefault(x => x.Id == wd.Id);
                        result.datas.Add(new
                        {
                            feild1 = new Tuple <string, dynamic>("时间", wd.DT),
                            feild2 = new Tuple <string, dynamic>("流程卡", wd.S),
                            feild3 = new Tuple <string, dynamic>("当前工序", get?.StepName ?? ""),
                            feild4 = new Tuple <string, dynamic>("已完成", ((int)wd.V).ToTimeStr()),
                        });
                    }
                }
                //var classes = ServerConfig.ApiDb.Query<DeviceClass>("SELECT `Id`, `Class` FROM `device_class` WHERE `MarkedDelete` = 0 AND Id IN @Id;", new
                //{
                //    Id = data.Select(x => x.ClassId)
                //});
            }
            return(result);
        }