public string GenTable()
    {
        string          result = "";
        MDProcductivity oMDPro = new MDProcductivity();
        DateTime        dt     = new DateTime();

        if (txtDate.Text != "")
        {
            dt = Convert.ToDateTime(txtDate.Text.Trim());
        }
        else
        {
            dt = DateTime.Now;
        }
        oMDPro = oPro.GetProductivityByMonth(dt.Month, dt.Year);

        hidMonth.Value = dt.Month.ToString();
        hidYear.Value  = dt.Year.ToString();

        int days = DateTime.DaysInMonth(dt.Year, dt.Month);

        result += "" + Environment.NewLine;
        result += "<table class='table' style='width: 3800px;' border=\"1\">" + Environment.NewLine;
        result += "    <tr>" + Environment.NewLine;
        result += "        <td rowspan=\"3\">Line" + Environment.NewLine;
        result += "        </td>" + Environment.NewLine;
        result += "        <td rowspan=\"3\" width='100px'>Process" + Environment.NewLine;
        result += "        </td>" + Environment.NewLine;
        result += "        <td colspan=\"" + days * 2 + "\">" + GetMonth() + "" + Environment.NewLine;
        result += "        </td>" + Environment.NewLine;
        result += "    </tr>" + Environment.NewLine;
        result += "    <tr>" + Environment.NewLine;

        for (int day = 1; day <= days; day++)
        {
            if (day == DateTime.Now.Day && dt.Month == DateTime.Now.Month)
            {
                result += "        <td colspan=\"2\" style='background-color: yellow;'>" + Environment.NewLine;
            }
            else
            {
                result += "        <td colspan=\"2\" style='background-color: white;'>" + Environment.NewLine;
            }

            result += "        " + day + "" + Environment.NewLine;
            result += "        </td>" + Environment.NewLine;
        }

        result += "    </tr>" + Environment.NewLine;
        result += "    <tr>" + Environment.NewLine;

        for (int day = 1; day <= days; day++)
        {
            if (day == DateTime.Now.Day && dt.Month == DateTime.Now.Month)
            {
                result += "        <td style='background-color: yellow; border-top: 1px solid #000000;'>" + Environment.NewLine;
                result += "        D" + Environment.NewLine;
                result += "        </td>" + Environment.NewLine;
                result += "        <td style='background-color: yellow; border-top: 1px solid #000000;'>" + Environment.NewLine;
                result += "        N" + Environment.NewLine;
                result += "        </td>" + Environment.NewLine;
            }
            else
            {
                result += "        <td style='background-color: white; border-top: 1px solid #000000;'>" + Environment.NewLine;
                result += "        D" + Environment.NewLine;
                result += "        </td>" + Environment.NewLine;
                result += "        <td style='background-color: white; border-top: 1px solid #000000;'>" + Environment.NewLine;
                result += "        N" + Environment.NewLine;
                result += "        </td>" + Environment.NewLine;
            }
        }


        result += "    </tr>" + Environment.NewLine;


        // Loop by Day
        foreach (MDProcductivity.CMDProductivity oMD in oMDPro.ListOfProductivity)
        {
            result += "    <tr>" + Environment.NewLine;
            result += "        <td rowspan=\"3\">" + Environment.NewLine;
            result += "            " + oMD.LineName + "" + Environment.NewLine;
            result += "        </td>" + Environment.NewLine;
            result += "        <td style='border-top: 1px solid #000000;'>" + Environment.NewLine;
            result += "            Plan" + Environment.NewLine;
            result += "        </td>" + Environment.NewLine;

            // Loop
            for (int day = 1; day <= days; day++)
            {
                if (day == DateTime.Now.Day && dt.Month == DateTime.Now.Month)
                {
                    result += "        <td width='60px' style='background-color: yellow; border-top: 1px solid #000000;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].PlanD + "" + Environment.NewLine; // Plan Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: yellow; border-top: 1px solid #000000;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].PlanN + "" + Environment.NewLine; // Plan Night
                    result += "        </td>" + Environment.NewLine;
                }
                else
                {
                    result += "        <td width='60px' style='background-color: white; border-top: 1px solid #000000;'>" + Environment.NewLine;
                    result += "             " + oMD.ListOfQty[day - 1].PlanD + "" + Environment.NewLine; // Plan Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: white; border-top: 1px solid #000000;'>" + Environment.NewLine;
                    result += "           " + oMD.ListOfQty[day - 1].PlanN + "" + Environment.NewLine; // Plan Night
                    result += "        </td>" + Environment.NewLine;
                }
            }

            result += "    </tr>" + Environment.NewLine;
            result += "    <tr>" + Environment.NewLine;
            result += "         <td>" + Environment.NewLine;
            result += "            Start" + Environment.NewLine;
            result += "        </td>" + Environment.NewLine;

            // Loop
            for (int day = 1; day <= days; day++)
            {
                if (day == DateTime.Now.Day && dt.Month == DateTime.Now.Month)
                {
                    result += "        <td width='60px' style='background-color: yellow;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].StartD + "" + Environment.NewLine; // Start Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: yellow;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].StartN + "" + Environment.NewLine; // Start Night
                    result += "        </td>" + Environment.NewLine;
                }
                else
                {
                    result += "        <td width='60px' style='background-color: white;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].StartD + "" + Environment.NewLine; // Start Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: white;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].StartN + "" + Environment.NewLine; // Start Night
                    result += "        </td>" + Environment.NewLine;
                }
            }

            result += "    </tr>" + Environment.NewLine;
            result += "    <tr>" + Environment.NewLine;
            result += "         <td>" + Environment.NewLine;
            result += "            Last" + Environment.NewLine;
            result += "        </td>" + Environment.NewLine;

            // Loop
            for (int day = 1; day <= days; day++)
            {
                if (day == DateTime.Now.Day && dt.Month == DateTime.Now.Month)
                {
                    result += "        <td width='60px' style='background-color: yellow;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].LastD + "" + Environment.NewLine; // End Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: yellow;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].LastN + "" + Environment.NewLine; // End Night
                    result += "        </td>" + Environment.NewLine;
                }
                else
                {
                    result += "        <td width='60px' style='background-color: white;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].LastD + "" + Environment.NewLine; // End Day
                    result += "        </td>" + Environment.NewLine;
                    result += "        <td width='60px' style='background-color: white;'>" + Environment.NewLine;
                    result += "            " + oMD.ListOfQty[day - 1].LastN + "" + Environment.NewLine; // End Night
                    result += "        </td>" + Environment.NewLine;
                }
            }

            result += "    </tr>" + Environment.NewLine;
        }
        result += "</table>" + Environment.NewLine;

        return(result);
    }
Exemplo n.º 2
0
    public string GenGraph()
    {
        string          result  = "";
        MDProcductivity oMDProc = new MDProcductivity();
        DateTime        _Date   = new DateTime();

        if (txtDate.Text != "")
        {
            _Date = Convert.ToDateTime(txtDate.Text.Trim());
        }
        else
        {
            _Date = DateTime.Now;
        }

        oMDProc = oPro.GetProductivityNow(_Date, dropDownShift.SelectedValue);
        if (oMDProc.ListOfProductivity.Count > 0)
        {
            string Shift = "";
            if (dropDownShift.SelectedValue != "")
            {
                Shift = dropDownShift.SelectedValue;
            }
            //if (DateTime.Now.TimeOfDay.Hours >= 20 || DateTime.Now.TimeOfDay.Hours < 8)
            //{
            //    Shift = "Night";
            //}
            //else
            //{
            //    Shift = "Day";
            //}

            //if (dropDownShift.SelectedValue == "NIGHT")
            //{
            //    Shift = "Night";
            //}
            //else
            //{
            //    Shift = "Day";
            //}

            result += "<script type='text/javascript'>" + Environment.NewLine;
            result += "Highcharts.chart('container', {" + Environment.NewLine;
            result += "    chart: {" + Environment.NewLine;
            result += "        type: 'column'" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    title: {" + Environment.NewLine;
            result += "        text: 'Productivity Factory 3'" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    subtitle: {" + Environment.NewLine;
            result += "        text: '" + _Date.ToString("dd MMMM yyyy") + " " + Shift + "'" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    xAxis: {" + Environment.NewLine;
            result += "        categories: [" + Environment.NewLine;

            for (int i = 0; i < oMDProc.ListOfProductivity.Count; i++)
            {
                if (i == oMDProc.ListOfProductivity.Count - 1)
                {
                    result += "            '" + oMDProc.ListOfProductivity[i].LineName + "'" + Environment.NewLine;
                }
                else
                {
                    result += "            '" + oMDProc.ListOfProductivity[i].LineName + "'," + Environment.NewLine;
                }
            }

            //result += "            'Rear Head'," + Environment.NewLine;
            //result += "            'Cylinder'," + Environment.NewLine;
            //result += "            'Crank Shaft'," + Environment.NewLine;
            //result += "            'Front Head'," + Environment.NewLine;
            //result += "            'Piston'," + Environment.NewLine;
            //result += "            'Pipe'," + Environment.NewLine;
            //result += "            'Mecha'," + Environment.NewLine;
            //result += "            'Main Assy'," + Environment.NewLine;
            //result += "            'Final'" + Environment.NewLine;
            result += "        ]," + Environment.NewLine;
            result += "        crosshair: true" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    yAxis: {" + Environment.NewLine;
            result += "        min: 0," + Environment.NewLine;
            result += "        title: {" + Environment.NewLine;
            result += "            text: 'Quantity (pcs)'" + Environment.NewLine;
            result += "        }" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    tooltip: {" + Environment.NewLine;
            result += "        headerFormat: '<span style=\"font-size:10px\">{point.key}</span><table>'," + Environment.NewLine;
            result += "        pointFormat: '<tr><td style=\"color:{series.color};padding:0\">{series.name}: </td>' +" + Environment.NewLine;
            result += "            '<td style=\"padding:0\"><b>{point.y:.1f} mm</b></td></tr>'," + Environment.NewLine;
            result += "        footerFormat: '</table>'," + Environment.NewLine;
            result += "        shared: true," + Environment.NewLine;
            result += "        useHTML: true" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    plotOptions: {" + Environment.NewLine;
            result += "        column: {" + Environment.NewLine;
            result += "            pointPadding: 0.2," + Environment.NewLine;
            result += "            borderWidth: 0," + Environment.NewLine;
            result += "            dataLabels: {" + Environment.NewLine;
            result += "                enabled: true," + Environment.NewLine;
            //result += "                format: '{point.y:.1f}'," + Environment.NewLine;
            result += "                y: 0," + Environment.NewLine;
            result += "                color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'black'" + Environment.NewLine;
            result += "            }" + Environment.NewLine;
            result += "        }" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    tooltip: {" + Environment.NewLine;
            result += "        shared: true" + Environment.NewLine;
            result += "    }," + Environment.NewLine;
            result += "    series: [{" + Environment.NewLine;
            result += "        name: 'Plan'," + Environment.NewLine;

            result += "        data: [" + Environment.NewLine;
            for (int i = 0; i < oMDProc.ListOfProductivity.Count; i++)
            {
                if (i == oMDProc.ListOfProductivity.Count - 1)
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].PlanD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].PlanD : "0" + "" + Environment.NewLine;
                }
                else
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].PlanD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].PlanD + "," : "0" + "," + Environment.NewLine;
                }
            }
            result += "        ]," + Environment.NewLine;

            //result += "        data: [49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4]," + Environment.NewLine;
            result += "        tooltip: {" + Environment.NewLine;
            result += "            valueSuffix: ' pcs'" + Environment.NewLine;
            result += "        }" + Environment.NewLine;
            result += "    }, {" + Environment.NewLine;
            result += "        name: 'Start'," + Environment.NewLine;

            result += "        data: [" + Environment.NewLine;
            for (int i = 0; i < oMDProc.ListOfProductivity.Count; i++)
            {
                if (i == oMDProc.ListOfProductivity.Count - 1)
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].StartD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].StartD : "0" + "" + Environment.NewLine;
                }
                else
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].StartD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].StartD + "," : "0" + "," + Environment.NewLine;
                }
            }
            result += "        ]," + Environment.NewLine;

            //result += "        data: [83.6, 78.8, 98.5, 93.4, 106.0, 84.5, 105.0, 104.3, 91.2]," + Environment.NewLine;
            result += "        tooltip: {" + Environment.NewLine;
            result += "            valueSuffix: ' pcs'" + Environment.NewLine;
            result += "        }" + Environment.NewLine;
            result += "    }, {" + Environment.NewLine;
            result += "        name: 'Last'," + Environment.NewLine;

            result += "        data: [" + Environment.NewLine;
            for (int i = 0; i < oMDProc.ListOfProductivity.Count; i++)
            {
                if (i == oMDProc.ListOfProductivity.Count - 1)
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].LastD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].LastD : "0" + "" + Environment.NewLine;
                }
                else
                {
                    result += "            " + oMDProc.ListOfProductivity[i].ListOfQty[0].LastD != DBNull.Value.ToString()
                        ? oMDProc.ListOfProductivity[i].ListOfQty[0].LastD + "," : "0" + "," + Environment.NewLine;
                }
            }
            result += "        ]," + Environment.NewLine;

            //result += "        data: [83.6, 78.8, 98.5, 93.4, 106.0, 84.5, 105.0, 104.3, 91.2]," + Environment.NewLine;
            result += "        tooltip: {" + Environment.NewLine;
            result += "            valueSuffix: ' pcs'" + Environment.NewLine;
            result += "        }" + Environment.NewLine;
            result += "    }]" + Environment.NewLine;
            result += "});" + Environment.NewLine;
            result += "</script>" + Environment.NewLine;
        }
        return(result);
    }