コード例 #1
0
        protected VM_Fusioncharts_Line getSensorLineChart <T>(int machineID, int paramCodeID, int top = 12) where T : MesWeb.BLL.T_CollectedDataParameters, new()
        {
            var vmChart = new VM_Fusioncharts_Line();
            // var bllParamData = new MesWeb.BLL.T_CollectedDataParameters();
            var bllParamData    = new T();
            var bllParamUnit    = new MesWeb.BLL.T_ParameterUnit();
            var bllParamSetting = new MesWeb.BLL.T_ParametersCol();
            var bllParamCode    = new MesWeb.BLL.T_ParameterCode();
            var paramCode       = bllParamCode.GetModel(paramCodeID);

            //   var dataList = bllParamData.GetModelList(top,"MachineID = " + machineID + "and ParameterCodeID = " + paramCode.ParameterCodeID,"ParameterCodeID Desc");
            var dataList = bllParamData.GetModelList("MachineID = " + machineID + "and ParameterCodeID = " + paramCode.ParameterCodeID);

            var paramSetting = bllParamSetting.GetModelList("ParameterCodeID = " + (int)paramCode.ParameterCodeID).FirstOrDefault();

            var paramUnit = bllParamUnit.GetModel((int)paramCode.ParameterUnitID);
            var chart     = new FusionChart {
                caption      = paramCode.ParameterName,
                numberSuffix = paramUnit.ParameterUnitSymbol,
                yAxisName    = paramUnit.ParameterUnitName,
                xAxisName    = "时间"
            };

            var maxLine = new FusionLine {
                startvalue   = paramSetting.ParametersColMaxiumValue,
                displayvalue = "最大值"
            };
            var minLine = new FusionLine {
                startvalue   = paramSetting.ParametersColMiniumValue,
                displayvalue = "最小值"
            };
            var trendline = new FusionTrendLine();

            trendline.line.Add(maxLine);
            trendline.line.Add(minLine);

            vmChart.chart = chart;
            vmChart.trendlines.Add(trendline);

            for (int i = 0; i < dataList.Count; i++)
            {
                vmChart.data.Add(new FusionData {
                    //    label = ((DateTime)dataList[i].CollectedTime).ToUniversalTime().Subtract(
                    //                    //  new DateTime(1969,12,30,16,0,0,DateTimeKind.Utc)
                    label = dataList[i].CollectedTime.ToString(),
                    value = dataList[i].CollectedValue.ToString()
                });
            }
            ;
            return(vmChart);
        }
コード例 #2
0
        protected List <VM_Fusioncharts_Line> getParamsChartList(int machineID, params MesWeb.Model.T_ParameterCode[] paramCodeIDList)
        {
            List <VM_Fusioncharts_Line> vmChartsList = new List <VM_Fusioncharts_Line>();
            var bllParamData       = new MesWeb.BLL.T_CollectedDataParameters();
            var bllSensorParamCode = new MesWeb.BLL.T_SensorModule_T_ParameterCode();
            var bllParamUnit       = new MesWeb.BLL.T_ParameterUnit();
            var bllParamSet        = new MesWeb.BLL.T_ParametersCol();

            foreach (var code in paramCodeIDList)
            {
                var dataList     = bllParamData.GetModelList("MachineID = " + machineID + "and ParameterCodeID = " + code.ParameterCodeID);
                var paramSetting = bllParamSet.GetModelList("ParameterCodeID = " + (int)code.ParameterCodeID).FirstOrDefault();
                var paramUnit    = bllParamUnit.GetModel((int)code.ParameterUnitID);
                var vmFusion     = new VM_Fusioncharts_Line();

                var chart = new FusionChart {
                    caption      = code.ParameterName,
                    numberSuffix = paramUnit.ParameterUnitSymbol,
                    yAxisName    = paramUnit.ParameterUnitName,
                    xAxisName    = "时间"
                };

                var maxLine = new FusionLine {
                    startvalue   = paramSetting.ParametersColMaxiumValue,
                    displayvalue = "最大值"
                };
                var minLine = new FusionLine {
                    startvalue   = paramSetting.ParametersColMiniumValue,
                    displayvalue = "最小值"
                };
                var trendline = new FusionTrendLine();
                trendline.line.Add(maxLine);
                trendline.line.Add(minLine);

                vmFusion.chart = chart;
                vmFusion.trendlines.Add(trendline);

                for (int i = 0; i < dataList.Count; i++)
                {
                    vmFusion.data.Add(new FusionData {
                        //    label = ((DateTime)dataList[i].CollectedTime).ToUniversalTime().Subtract(
                        //                    //  new DateTime(1969,12,30,16,0,0,DateTimeKind.Utc)
                        label = dataList[i].CollectedTime.ToString(),
                        value = dataList[i].CollectedValue.ToString()
                    });
                }
                ;
                vmChartsList.Add(vmFusion);
            }
            return(vmChartsList);
        }