Example #1
0
        private DataTable ConvertBigUserDataTable(DataTable dt,int imanth )
        {
            int i = 0;
            PSP_BigUser_Values bigvalue = new PSP_BigUser_Values();
            bigvalue.Flag2 = typeFlag - 1;
            bigvalue.ItemID = ItemID;
            IList<PSP_BigUser_Values> listValues;
            listValues = Common.Services.BaseService.GetList<PSP_BigUser_Values>("SelectPSP_BigUser_ValuesListByFlag2", bigvalue);

            dt.Columns.Add("Title", typeof(string));
            dt.Columns.Add("SortID", typeof(int));
            dt.Columns.Add("ID", typeof(int));
            dt.Columns.Add("PartID", typeof(string));

            dt.Columns.Add("��ע", typeof(string));
            if (imanth > 13 && imanth < 26)
            {
                dt.Columns.Add("ȥ���ۼ�", typeof(string));
                dt.Columns.Add("ȥ��" + (imanth - 13) + "��", typeof(double));
            }
            for (i = 1; i <= 12; i++)
            {

                dt.Columns.Add(i + "��", typeof(string));
            }

            dt.Columns.Add("��������", typeof(double));
            DataCommon dsort = new DataCommon();
            DataTable dataTable2 = dsort.GetSortTable(dataTable, "ID", true);

            #region ���Ҫ��ʾ��Row
            int j = 1;
            int mintex = 0;
            double sum = 0;
            double sumtemp = 0;

            double[] bigusersum = new double[12];
            for (i = 0; i < dataTable2.Rows.Count + 1; i++)
            {
                DataRow dr = dt.NewRow();
                if (i < dataTable2.Rows.Count)
                    dr["Title"] = dataTable2.Rows[i]["Title"];
                else
                    dr["Title"] = "�󻧺ϼ�";
                sum = 0;
                sumtemp = 0;
                if (i < dataTable2.Rows.Count)
                {
                    for (mintex = 1; mintex <= 12; mintex++)
                    {
                        if (dataTable.Columns.Contains(mintex + "��"))
                        {
                            if (dataTable2.Rows[i][mintex + "��"] != null && dataTable2.Rows[i][mintex + "��"] != DBNull.Value)
                                sumtemp = Math.Round(Convert.ToDouble(dataTable2.Rows[i][mintex + "��"]) / 10000, 4);
                            else
                                sumtemp = 0;
                            dr[mintex + "��"] = sumtemp;
                        }
                        else
                        {
                            dr[mintex + "��"] = 0;
                            sumtemp = 0;
                        }
                        bigusersum[mintex - 1] += sumtemp;
                        sum += sumtemp;

                    }
                }
                else
                {
                    for (int imtemp = 1; imtemp <= 12; imtemp++)
                    {

                        dr[imtemp + "��"] = bigusersum[imtemp - 1];
                        sum += bigusersum[imtemp - 1];

                        bigusersum[imtemp - 1] = -1;
                    }
                }
                if (i < dataTable2.Rows.Count)
                dr["��ע"] = dataTable2.Rows[i]["S1"];
                dr["��������"] = sum;
                dr["SortID"] = j++;
                dr["PartID"] = i + 1;
                if (i < dataTable2.Rows.Count)
                    dr["ID"] = dataTable2.Rows[i]["ID"];
                else
                    dr["ID"] = 999999999;
                dt.Rows.Add(dr);
                dr = dt.NewRow();
                dr["Title"] = "�ۼ�";
                dr["SortID"] = j++;
                dr["PartID"] = i + 1;
                if (i < dataTable2.Rows.Count)
                    dr["ID"] = dataTable2.Rows[i]["ID"];
                else
                    dr["ID"] = 999999999;
                dt.Rows.Add(dr);
                dr = dt.NewRow();
                dr["Title"] = "��������";
                dr["SortID"] = j++;
                dr["PartID"] = i + 1;
                if (i < dataTable2.Rows.Count)
                    dr["ID"] = dataTable2.Rows[i]["ID"];
                else
                    dr["ID"] = 999999999;
                dt.Rows.Add(dr);
                dr = dt.NewRow();
                dr["Title"] = "�ۼ�����";
                dr["SortID"] = j++;
                dr["PartID"] = i + 1;
                if (i < dataTable2.Rows.Count)
                    dr["ID"] = dataTable2.Rows[i]["ID"];
                else
                    dr["ID"] = 999999999;
                dt.Rows.Add(dr);
            }

            #endregion
            #region ���Ҫ��ʾ��Value
            i = 0;
            j = 0;
            mintex = 0;
            sum = 0;
            sumtemp = 0;
            int yearmonth = 1;
            bool isHaveHisValue = true;
            double qnlji = -1;
            double qndyue = -1;
            for (j = 0; j < dt.Rows.Count; j += 4)
            {
                double ljitemp = -1;

                for (yearmonth = 1; yearmonth <= 12; yearmonth++)
                {
                    if (imanth < yearmonth)
                        break ;
                    isHaveHisValue = true;
                    if (i < listValues.Count)
                    {
                        if (listValues[i].TypeID.ToString() != dt.Rows[j]["ID"].ToString())
                        {
                            if (Convert.ToInt32(dt.Rows[j]["ID"]) != 999999999)
                            ljitemp = -1;
                            if (Convert.ToInt32(dt.Rows[j]["ID"]) == 999999999)
                                isHaveHisValue = false;
                            else if (listValues[i].TypeID > Convert.ToInt32(dt.Rows[j]["ID"]))
                                isHaveHisValue = false;
                            else if (listValues[i].TypeID < Convert.ToInt32(dt.Rows[j]["ID"]))
                            {
                                while (listValues[i].TypeID < Convert.ToInt32(dt.Rows[j]["ID"]))
                                {
                                    if (i >= listValues.Count - 1)
                                        break;
                                    i++;

                                }

                                if (listValues[i].TypeID > Convert.ToInt32(dt.Rows[j]["ID"]))
                                    isHaveHisValue = false;
                            }
                        }
                    }
                    else
                        isHaveHisValue = false;
                    if (isHaveHisValue)
                    {
                        if (listValues[i].Year != yearmonth.ToString())
                            isHaveHisValue = false;
                    }

                    if (dt.Rows[j][yearmonth + "��"] != null && dt.Rows[j][yearmonth + "��"] != DBNull.Value)
                        sum = Convert.ToDouble(dt.Rows[j][yearmonth + "��"]);
                    else
                        sum = 0;

                    switch (yearmonth)
                    {
                        case 1:

                            dt.Rows[j + 1][yearmonth + "��"] = Math.Round((sum), 0);
                            if (isHaveHisValue)
                            {
                                listValues[i].Value = Math.Round(listValues[i].Value / 10000, 4);
                                if (imanth > 13 && imanth < 26)
                                {
                                    if (dt.Rows[j]["ȥ���ۼ�"] != null && dt.Rows[j]["ȥ���ۼ�"] != DBNull.Value)
                                        dt.Rows[j]["ȥ���ۼ�"] = Convert.ToDouble(dt.Rows[j]["ȥ���ۼ�"]) + listValues[i].Value;
                                    else
                                        dt.Rows[j]["ȥ���ۼ�"] = listValues[i].Value;
                                }

                                if (imanth == 14)
                                {
                                    dt.Rows[j]["ȥ��" + listValues[i].Year + "��"] = listValues[i].Value;
                                    if (qndyue==-1)
                                       qndyue= listValues[i].Value;
                                    else
                                       qndyue += listValues[i].Value;
                                }

                                sumtemp = Math.Round(listValues[i].Value, 0);
                                dt.Rows[j + 2][listValues[i].Year + "��"] = Math.Round((sum - listValues[i].Value) * 100 / listValues[i].Value, 2) + "%";
                                sum = Convert.ToDouble(dt.Rows[j + 1][listValues[i].Year + "��"]);
                                dt.Rows[j + 3][listValues[i].Year + "��"] = Math.Round((sum - sumtemp) * 100 / sumtemp, 2) + "%";
                                ljitemp = sumtemp;
                                if (bigusersum[yearmonth - 1] == -1)
                                    bigusersum[yearmonth - 1] = 0;
                                bigusersum[yearmonth - 1] += listValues[i].Value;

                            }
                            if (Convert.ToInt32(dt.Rows[j]["ID"]) == 999999999)
                            {
                                if (bigusersum[yearmonth - 1] != -1)
                                {

                                    if (ljitemp == -1)
                                        ljitemp = 0;
                                    sumtemp = ljitemp + Math.Round(bigusersum[yearmonth - 1], 0);
                                    dt.Rows[j + 2][yearmonth + "��"] = Math.Round((sum - bigusersum[yearmonth - 1]) * 100 / bigusersum[yearmonth - 1], 2) + "%";
                                    sum = Convert.ToDouble(dt.Rows[j + 1][yearmonth + "��"]);
                                    dt.Rows[j + 3][yearmonth + "��"] = Math.Round((sum - sumtemp) * 100 / sumtemp, 2) + "%";
                                    ljitemp = sumtemp;
                                    //   bigusersum[yearmonth - 1] += sumtemp;
                                }
                                if (imanth == 14)
                                {
                                    if (qnlji!=-1)
                                        dt.Rows[j]["ȥ���ۼ�"] = qnlji;
                                    else
                                        dt.Rows[j]["ȥ���ۼ�"] = 0;

                                }
                            }
                            break;

                        default:

                            if (dt.Rows[j + 1][yearmonth - 1 + "��"] != null && dt.Rows[j + 1][yearmonth - 1 + "��"] != DBNull.Value)
                                sumtemp = Convert.ToDouble(dt.Rows[j + 1][yearmonth - 1 + "��"]);
                            else
                                sumtemp = 0;

                            dt.Rows[j + 1][yearmonth + "��"] = sumtemp + Math.Round((sum), 0);

                            if (isHaveHisValue)
                            {
                                listValues[i].Value = Math.Round(listValues[i].Value / 10000, 4);
                                if (imanth > 13 && imanth < 26)
                                {
                                    if (dt.Rows[j]["ȥ���ۼ�"] != null && dt.Rows[j]["ȥ���ۼ�"] != DBNull.Value)
                                        dt.Rows[j]["ȥ���ۼ�"] = Convert.ToDouble(dt.Rows[j]["ȥ���ۼ�"]) + listValues[i].Value;
                                    else
                                        dt.Rows[j]["ȥ���ۼ�"] = listValues[i].Value;
                                }

                                if (imanth > 13 && imanth < 26)
                                    if (listValues[i].Year == (imanth - 13) + "")
                                    {
                                        dt.Rows[j]["ȥ��" + listValues[i].Year + "��"] = listValues[i].Value;
                                        if (qndyue == -1)
                                            qndyue = 0;
                                        qndyue += listValues[i].Value;

                                    }

                                dt.Rows[j + 2][listValues[i].Year + "��"] = Math.Round((sum - listValues[i].Value) * 100 / listValues[i].Value, 2) + "%";
                                sum = Convert.ToDouble(dt.Rows[j + 1][listValues[i].Year + "��"]);
                                sumtemp = ljitemp + Math.Round((listValues[i].Value), 0);
                                ljitemp = sumtemp;
                                if (bigusersum[yearmonth - 1] == -1)
                                    bigusersum[yearmonth - 1] = 0;
                                bigusersum[yearmonth - 1] += (listValues[i].Value);
                                dt.Rows[j + 3][listValues[i].Year + "��"] = Math.Round((sum - sumtemp) * 100 / sumtemp, 2) + "%";
                            }
                            if (Convert.ToInt32(dt.Rows[j]["ID"]) == 999999999)
                            {
                                if (bigusersum[yearmonth - 1] != -1)
                                {

                                    if (ljitemp == -1)
                                        ljitemp = 0;
                                    sumtemp = ljitemp + Math.Round(bigusersum[yearmonth - 1], 0);
                                    dt.Rows[j + 2][yearmonth + "��"] = Math.Round((sum - bigusersum[yearmonth - 1]) * 100 / bigusersum[yearmonth - 1], 2) + "%";
                                    sum = Convert.ToDouble(dt.Rows[j + 1][yearmonth + "��"]);
                                    dt.Rows[j + 3][yearmonth + "��"] = Math.Round((sum - sumtemp) * 100 / sumtemp, 2) + "%";
                                    ljitemp = sumtemp;
                                    //bigusersum[yearmonth - 1] += sumtemp;
                                }
                                if (imanth > 13 && imanth < 26)
                                {
                                    if (qnlji != -1)
                                        dt.Rows[j]["ȥ���ۼ�"] = qnlji;
                                    else
                                        dt.Rows[j]["ȥ���ۼ�"] = 0;

                                    if (qndyue != -1)
                                        dt.Rows[j]["ȥ��" + (imanth-13) + "��"] = qndyue;
                                    else
                                        dt.Rows[j]["ȥ��" + (imanth - 13) + "��"] = 0;
                                }

                            }
                            if (yearmonth == 12)
                            {
                                if (ljitemp != -1)
                                    dt.Rows[j + 1]["��������"] = Convert.ToDouble(dt.Rows[j + 1][yearmonth + "��"]) - ljitemp;
                                if (imanth > 13 && imanth < 26)
                                {
                                    if (qnlji == -1)
                                    {
                                        if (dt.Rows[j]["ȥ���ۼ�"] != null && dt.Rows[j]["ȥ���ۼ�"] != DBNull.Value)
                                            qnlji = Convert.ToDouble(dt.Rows[j]["ȥ���ۼ�"]);
                                    }
                                    else
                                    {
                                        if (dt.Rows[j]["ȥ���ۼ�"] != null && dt.Rows[j]["ȥ���ۼ�"] != DBNull.Value)
                                            qnlji += Convert.ToDouble(dt.Rows[j]["ȥ���ۼ�"]);
                                    }
                                }

                            }
                            break;
                    }
                    if (isHaveHisValue) i++;

                }
            }
            #endregion
            return dt;
        }
Example #2
0
        private void barButtonItem5_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            string baseyear = "";
               //     baseyear = EnsureBaseYear(baseyear);
            if (treeList1.FocusedColumn == null)
            {
                return;
            }

            //���������
            if (treeList1.FocusedColumn.FieldName.IndexOf("��") == -1)
            {
                return;
            }
            if (treeList1.FocusedColumn.FieldName.Contains(baseyear) && baseyear != "")
            {
                return;
            }
            if (!DeleteRight)
            {
                MsgBox.Show("��û��Ȩ�޽��д��������");
                return;
            }

            if (MsgBox.ShowYesNo("�Ƿ�ɾ�� " + treeList1.FocusedColumn.FieldName + " �����е��������ݣ�") != DialogResult.Yes)
            {
                return;
            }

            PSP_BigUser_Values psp_Values = new PSP_BigUser_Values();
            psp_Values.ID = typeFlag;//����ID���Դ��Flag2
            psp_Values.Year = (string)treeList1.FocusedColumn.Tag;
            psp_Values.ItemID = ItemID;
            psp_Values.Flag2 = typeFlag;
            try
            {
                //DeletePSP_ValuesByYearɾ�����ݺ����
                int colIndex = treeList1.FocusedColumn.AbsoluteIndex;
                Common.Services.BaseService.Update("DeletePSP_BigUser_ValuesByYear", psp_Values);
                dataTable.Columns.Remove(treeList1.FocusedColumn.FieldName);
                treeList1.Columns.Remove(treeList1.FocusedColumn);

                if (colIndex >= treeList1.Columns.Count)
                {
                    colIndex--;
                }
                treeList1.FocusedColumn = treeList1.Columns[colIndex];
            }
            catch (Exception ex)
            {
                MsgBox.Show("ɾ�������" + ex.Message);
            }
        }
Example #3
0
        private void barButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (treeList1.FocusedNode == null)
            {
                return;
            }

            if (treeList1.FocusedNode.HasChildren)
            {
                MsgBox.Show("�˷��������ӷ��࣬����ɾ���ӷ��࣡");
                return;
            }

            if (!DeleteRight)
            {
                MsgBox.Show("��û��Ȩ�޽��д��������");
                return;
            }

            if (MsgBox.ShowYesNo("�Ƿ�ɾ������ " + treeList1.FocusedNode.GetValue("Title") + "��") == DialogResult.Yes)
            {
                PSP_BigUser_Types psp_Type = new PSP_BigUser_Types();
                Class1.TreeNodeToDataObject<PSP_BigUser_Types>(psp_Type, treeList1.FocusedNode);
                PSP_BigUser_Values psp_Values = new PSP_BigUser_Values();
                psp_Values.TypeID = psp_Type.ID;
                psp_Values.Flag2 = typeFlag;
                psp_Values.ItemID = ItemID;
                try
                {
                    string[] yearitem = psp_Type.S2.Split(',');
                    if (yearitem.Length == 1)

                        //DeletePSP_ValuesByType����ɾ�����ݺͷ���
                        Common.Services.BaseService.Update("DeletePSP_BigUser_ValuesByType", psp_Values);
                    else
                    {
                        psp_Type.S2 = "";
                        foreach(string strtemp in yearitem)
                        {
                            if (strtemp != typeFlag.ToString())
                            {
                                if (psp_Type.S2 == "")
                                {

                                    psp_Type.S2 = strtemp;
                                }
                                else
                                    psp_Type.S2 += "," + strtemp;
                            }
                        }
                        Common.Services.BaseService.Update<PSP_BigUser_Types>(psp_Type);
                        Common.Services.BaseService.Update("DeletePSP_BigUser_ValuesByType2", psp_Values);
                    }

                    //TreeListNode brotherNode = null;
                    //if (treeList1.FocusedNode.ParentNode.Nodes.Count > 1)
                    //{
                    //    brotherNode = treeList1.FocusedNode.PrevNode;
                    //    if (brotherNode == null)
                    //    {
                    //        brotherNode = treeList1.FocusedNode.NextNode;
                    //    }
                    //}
                    treeList1.DeleteNode(treeList1.FocusedNode);

                    //ɾ�������ͬ�������������࣬�����¼������������������
                    //if (brotherNode != null)
                    //{
                    //    foreach (TreeListColumn column in treeList1.Columns)
                    //    {
                    //        if (column.FieldName.IndexOf("��") > 0)
                    //        {
                    //            CalculateSum(brotherNode, column);
                    //        }
                    //    }
                    //}
                }
                catch (Exception ex)
                {
                    MsgBox.Show("ɾ�������" + ex.Message);
                }
            }
        }
Example #4
0
        private bool SaveCellValue(string year, int typeID, double value)
        {
            PSP_BigUser_Values psp_values = new PSP_BigUser_Values();

            psp_values.Value = value;
            psp_values.Year = year;
            psp_values.ItemID = ItemID;
            psp_values.TypeID = typeID;
            psp_values.Flag2 = typeFlag;
            try
            {
                Common.Services.BaseService.Update<PSP_BigUser_Values>(psp_values);
            }
            catch (Exception ex)
            {
                MsgBox.Show("�������ݳ����" + ex.Message);
                return false;
            }
            return true;
        }
Example #5
0
        //��ȡ����
        private void LoadValues(bool Isfirstload)
        {
            PSP_BigUser_Values psp_Values = new PSP_BigUser_Values();
            IList<PSP_BigUser_Values> listValues;
               psp_Values.ItemID = ItemID;
               //     psp_Values.ID = typeFlag;//��ID�ֶδ��Flag2��ֵ
            psp_Values.Flag2 = typeFlag;
            listValues = Common.Services.BaseService.GetList<PSP_BigUser_Values>("SelectPSP_BigUser_ValuesListByFlag2", psp_Values);

            foreach (PSP_BigUser_Values value in listValues)
            {

                TreeListNode node = treeList1.FindNodeByFieldValue("ID", value.TypeID);
                if (node != null)
                {

                     node.SetValue(value.Year+"��",Math.Round(value.Value,2));
               //     SetRateYearValue(node, Math.Round(value.Value,2));
                }
            }
        }
Example #6
0
        private void InsertSubstation_Info()
        {
            string columnname = "";

            try
            {
                DataTable dts = new DataTable();
                OpenFileDialog op = new OpenFileDialog();
                op.Filter = "Excel�ļ�(*.xls)|*.xls";
                if (op.ShowDialog() == DialogResult.OK)
                {
                    WaitDialogForm wait = new WaitDialogForm("", "���ڵ�������, ���Ժ�...");
                    dts = GetExcel(op.FileName);

                    //DateTime s8 = DateTime.Now;
                    for (int i = 0; i < dts.Rows.Count; i++)
                    {

                        PSP_BigUser_Values l1 = new PSP_BigUser_Values();
                        int treelistid=0;
                        if (dts.Rows[i]["Title"] != null)
                        if(dts.Rows[i]["Title"].ToString()!="")
                        {
                          PSP_BigUser_Types psp_Type = new PSP_BigUser_Types();
                          PSP_BigUser_Types psp_Type2 = new PSP_BigUser_Types();
                            psp_Type.Title = dts.Rows[i]["Title"].ToString();
                            psp_Type.ItemID = ItemID;
                            if (Common.Services.BaseService.GetObject("SelectPSP_BigUser_TypesByTitleItemID", psp_Type) == null)
                            {
                                psp_Type.S2 = typeFlag.ToString();
                                Common.Services.BaseService.Create("InsertPSP_BigUser_Types", psp_Type);
                            }
                            else
                            {
                                psp_Type2 = (PSP_BigUser_Types)Common.Services.BaseService.GetObject("SelectPSP_BigUser_TypesByTitleItemID", psp_Type);
                                if (!psp_Type2.S2.Contains(typeFlag.ToString()))

                                {
                                    psp_Type.ID = psp_Type2.ID;
                                    if (psp_Type2.S2 != "")
                                        psp_Type.S2 = psp_Type2.S2 + "," + typeFlag.ToString();
                                    Common.Services.BaseService.Update<PSP_BigUser_Types>(psp_Type);
                                }
                            }
                            psp_Type = (PSP_BigUser_Types)Common.Services.BaseService.GetObject("SelectPSP_BigUser_TypesByTitleItemID", psp_Type);
                            if(psp_Type!=null)
                            treelistid=psp_Type.ID;
                        }
                        foreach (DataColumn dc in dts.Columns)
                        {
                            columnname = dc.ColumnName;
                            if (dts.Rows[i][dc.ColumnName].ToString() == "")
                                continue;
                             PSP_BigUser_Years biguseryear = new PSP_BigUser_Years();
                             if (columnname != "Title")
                            {
                                 biguseryear.Year =  columnname ;
                                 biguseryear.Flag = typeFlag;
                                 biguseryear.ItemID = ItemID;
                                 if (Common.Services.BaseService.GetObject("SelectPSP_BigUser_YearsByYearFlag", biguseryear) == null)
                                     {
                                         Common.Services.BaseService.Create<PSP_BigUser_Years>(biguseryear);
                                       //  AddColumn(columnname);
                                      }

                            }
                            switch (dc.ColumnName)
                            {
                                case "Title":

                                    break;
                                default:

                                    double LL2 = 0;
                                    try
                                    {
                                        LL2 = Convert.ToDouble(dts.Rows[i][dc.ColumnName].ToString());
                                       if (columnname != "Title")
                                     {
                                        l1.Value= LL2;
                                        l1.ItemID=ItemID;
                                        l1.TypeID=treelistid;
                                        l1.Flag2=typeFlag;
                                        l1.Year= columnname;
                                       Common.Services.BaseService.Update<PSP_BigUser_Values>(l1);
                                     }
                                    }
                                    catch { }

                                    break;
                            }
                        }
                    }
                    wait.Close();

                    //foreach (Substation_Info lwl in lii)
                    //{
                    //    Substation_Info l1 = new Substation_Info();
                    //    //  l1.AreaName = lwl.AreaName;
                    //    l1.Title = lwl.Title;
                    //    l1.Flag = lwl.Flag;
                    //    //l1.L1 = lwl.L1;
                    //    object obj = Services.BaseService.GetObject("SelectSubstation_InfoByTitleFlag", l1);
                    //    if (obj != null)
                    //    {
                    //        lwl.UID = ((Substation_Info)obj).UID;
                    //        lwl.Code = ((Substation_Info)obj).Code;
                    //        Services.BaseService.Update("UpdateSubstation_InfoAreaName", lwl);
                    //    }
                    //    else
                    //    {
                    //        Services.BaseService.Create<Substation_Info>(lwl);
                    //    }
                    //}
                    //this.ctrlSubstation_Info_TongLing1.RefreshData1();
                     wait = new WaitDialogForm("", "���ڼ�������, ���Ժ�...");
                    this.Cursor = Cursors.WaitCursor;
                    LoadData();
                    this.Cursor = Cursors.Default;
                    wait.Close();
                }
            }
            catch (Exception ex) { MsgBox.Show(columnname + ex.Message); MsgBox.Show("�����ʽ����ȷ��"); }
        }