private void barButtonItem9_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (MsgBox.ShowYesNo("该操作将清除所有数据,清除数据以后无法恢复,可能对其他用户的数据产生影响,请谨慎操作,你确定继续吗?") == DialogResult.No) { return; } PSP_Types psp_Type = new PSP_Types(); PSP_Values psp_Values = new PSP_Values(); foreach (DataRow dr in dataTable.Rows) { if (dr["Title"].ToString().Contains("全社会")) { continue; } // Class1.TreeNodeToDataObject<PSP_Types>(psp_Type, treeList1.FocusedNode); psp_Values.TypeID = Convert.ToInt32(dr["id"]); //DeletePSP_ValuesByType里面删除数据和分类 Common.Services.BaseService.Update("DeletePSP_ValuesByType", psp_Values); } Application.DoEvents(); SetValuesTo0(); this.Cursor = Cursors.WaitCursor; treeList1.BeginUpdate(); LoadData(); treeList1.EndUpdate(); this.Cursor = Cursors.Default; }
//读取数据 private void LoadValues(bool Isfirstload) { string baseyear = ""; baseyear = EnsureBaseYear(baseyear); PSP_Values psp_Values = new PSP_Values(); IList <PSP_Values> listValues; if (baseyear == "") { psp_Values.ID = typeFlag2;//用ID字段存放Flag2的值 listValues = Common.Services.BaseService.GetList <PSP_Values>("SelectPSP_ValuesListByFlag2", psp_Values); } else { Hashtable ha = new Hashtable(); ha.Add("ID", typeFlag2); ha.Add("Year", Convert.ToInt32(baseyear)); listValues = Common.Services.BaseService.GetList <PSP_Values>("SelectPSP_ValuesListByFlag2Year", ha); } foreach (PSP_Values value in listValues) { TreeListNode node = treeList1.FindNodeByFieldValue("ID", value.TypeID); if (node != null) { if (Isfirstload) { node.SetValue(value.Year + "年", Math.Round(value.Value, 2)); } SetRateYearValue(node, Math.Round(value.Value, 2)); } } }
private void InitValues(PSP_Values pv, PSP_P_Values pv1) { pv1.ID = pv.ID; pv1.TypeID = pv.TypeID; pv1.Flag2 = typeFlag2; pv1.Value = pv.Value; pv1.Year = pv.Year; }
//读取历史数据 private void LoadHistoryValue() { IList <PSP_P_Years> listYears; if (!formselect) { PSP_P_Years psp_Year = new PSP_P_Years(); psp_Year.Flag = forecastReport.ID; listYears = Common.Services.BaseService.GetList <PSP_P_Years>("SelectPSP_P_YearsListByFlag", psp_Year); } else { PSP_P_Years psp_Year = new PSP_P_Years(); psp_Year.Flag = forecastReport.ID; psp_Year.Flag2 = typeFlag; listYears = Common.Services.BaseService.GetList <PSP_P_Years>("SelectPSP_P_YearsListhaveflag2ByFlag", psp_Year); } foreach (PSP_P_Years item in listYears) { try { dataTable2.Columns.Add(item.Year + "Y", typeof(double)); TreeListColumn column = treeList2.Columns.Add(); column.FieldName = item.Year + "Y"; column.Tag = item.Year; column.VisibleIndex = -1; } catch { } } PSP_Values psp_Values = new PSP_Values(); psp_Values.ID = forecastReport.ID; //用ID字段存放Flag2的值 IList <PSP_P_Values> listValues = Common.Services.BaseService.GetList <PSP_P_Values>("SelectPSP_P_ValuesListByFlag2", psp_Values); foreach (PSP_P_Values value in listValues) { TreeListNode node = treeList2.FindNodeByFieldValue("ID", value.TypeID); if (node != null) { node.SetValue(value.Year + "Y", value.Value); if (value.Year == forecastReport.StartYear) { node.SetValue(value.Year + "年", value.Value); } } } }
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 (!base.DeleteRight) { MsgBox.Show("您没有权限进行此项操作!"); return; } if (MsgBox.ShowYesNo("是否删除 " + treeList1.FocusedColumn.FieldName + " 及该年的所有数据?") != DialogResult.Yes) { return; } PSP_Values psp_Values = new PSP_Values(); psp_Values.ID = typeFlag2;//借用ID属性存放Flag2 psp_Values.Year = (int)treeList1.FocusedColumn.Tag; try { //DeletePSP_ValuesByYear删除数据和年份 int colIndex = treeList1.FocusedColumn.AbsoluteIndex; Common.Services.BaseService.Update("DeletePSP_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); } }
private void SetValuesTo0() { PSP_Values psp_Values = new PSP_Values(); psp_Values.ID = typeFlag2;//用ID字段存放Flag2的值 IList <PSP_Values> listValues = Common.Services.BaseService.GetList <PSP_Values>("SelectPSP_ValuesListByFlag2", psp_Values); foreach (PSP_Values value in listValues) { value.Value = 0; Common.Services.BaseService.Update <PSP_Values>(value); } }
//读取数据 private void LoadValues() { PSP_Values psp_Values = new PSP_Values(); psp_Values.ID = typeFlag2;//用ID字段存放Flag2的值 IList <PSP_Values> listValues = Common.Services.BaseService.GetList <PSP_Values>("SelectPSP_ValuesListByFlag2", psp_Values); foreach (PSP_Values value in listValues) { TreeListNode node = treeList1.FindNodeByFieldValue("ID", value.TypeID); if (node != null) { node.SetValue(value.Year + "年", value.Value); } } }
private bool SaveCellValue(int year, int typeID, double value) { PSP_Values psp_values = new PSP_Values(); psp_values.TypeID = typeID; psp_values.Value = value; psp_values.Year = year; try { Common.Services.BaseService.Update <PSP_Values>(psp_values); } catch (Exception ex) { MsgBox.Show("保存数据出错:" + ex.Message); return(false); } return(true); }
private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { PSP_ForecastReports ct = (PSP_ForecastReports)this.ctrlPSP_ForecastReports1.GridView.GetRow(this.ctrlPSP_ForecastReports1.GridView.FocusedRowHandle); if (ct == null) { return; } typeFlag2 = ct.ID; Form1_Fs ffs = new Form1_Fs(); ffs.Type = type; if (ffs.ShowDialog() != DialogResult.OK) { return; } int fl2 = ffs.FL2; bool bl = ffs.IsJingJi; Hashtable hs = ffs.HS; if (hs.Count == 0) { return; } if (bl) { fl2 = 1; PSP_Years py = new PSP_Years(); py.Flag = fl2; IList <PSP_Years> listyear = Services.BaseService.GetList <PSP_Years>("SelectPSP_YearsListByFlag", py); Hashtable hsa = new Hashtable(); foreach (DictionaryEntry de3 in hs) { PSP_Types pt = (PSP_Types)de3.Value; PSP_P_Types ppta = new PSP_P_Types(); ppta.ID = pt.ID; ppta.Flag2 = typeFlag2; IList <PSP_P_Types> listppt = Services.BaseService.GetList <PSP_P_Types>("SelectPSP_P_TypesByFlag2ID", ppta); if (listppt.Count > 0) { continue; } PSP_P_Types ppt = new PSP_P_Types(); InitTypes(pt, ppt); Services.BaseService.Create <PSP_P_Types>(ppt); hsa.Add(Guid.NewGuid().ToString(), ""); PSP_Values pv = new PSP_Values(); pv.TypeID = pt.ID; IList <PSP_Values> listppt1 = Services.BaseService.GetList <PSP_Values>("SelectPSP_ValuesList", pv); Hashtable httss = new Hashtable(); foreach (PSP_Values pv1 in listppt1) { PSP_P_Values ppv = new PSP_P_Values(); InitValues(pv1, ppv); try { Services.BaseService.Create <PSP_P_Values>(ppv); } catch { } } } if (hsa.Count > 0) { foreach (PSP_Years py1 in listyear) { PSP_P_Years ppy = new PSP_P_Years(); InitYears(py1, ppy); try { Services.BaseService.Create <PSP_P_Years>(ppy); } catch { } } } } else { PSP_P_Years py = new PSP_P_Years(); py.Flag = fl2; IList <PSP_P_Years> listyear = Services.BaseService.GetList <PSP_P_Years>("SelectPSP_P_YearsListByFlag", py); Hashtable hsa = new Hashtable(); foreach (DictionaryEntry de3 in hs) { PSP_P_Types pt = (PSP_P_Types)de3.Value; pt.Flag2 = typeFlag2; IList <PSP_P_Types> listppt = Services.BaseService.GetList <PSP_P_Types>("SelectPSP_P_TypesByFlag2ID", pt); if (listppt.Count > 0) { continue; } Services.BaseService.Create <PSP_P_Types>(pt); hsa.Add(Guid.NewGuid().ToString(), ""); PSP_P_Values pv = new PSP_P_Values(); pv.TypeID = pt.ID; IList <PSP_P_Values> listppt1 = Services.BaseService.GetList <PSP_P_Values>("SelectPSP_P_ValuesList", pv); foreach (PSP_P_Values pv1 in listppt1) { try { pv1.Flag2 = typeFlag2; Services.BaseService.Create <PSP_P_Values>(pv1); } catch { } } } if (hsa.Count > 0) { foreach (PSP_P_Years py1 in listyear) { try { py1.Flag = typeFlag2; Services.BaseService.Create <PSP_P_Years>(py1); } catch { } } } } Application.DoEvents(); this.Cursor = Cursors.WaitCursor; treeList1.BeginUpdate(); LoadData(); treeList1.EndUpdate(); this.Cursor = Cursors.Default; }
private void barButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (treeList1.FocusedNode == null) { return; } if (!base.DeleteRight) { MsgBox.Show("您没有权限进行此项操作!"); return; } //if(treeList1.FocusedNode.ParentNode == null) //{ // MsgBox.Show("一级分类为固定内容,不能删除!"); // return; //} if (treeList1.FocusedNode.HasChildren) { MsgBox.Show("此分类下有子分类,请先删除子分类!"); return; } if (MsgBox.ShowYesNo("是否删除分类 " + treeList1.FocusedNode.GetValue("Title") + "?") == DialogResult.Yes) { PSP_Types psp_Type = new PSP_Types(); Class1.TreeNodeToDataObject <PSP_Types>(psp_Type, treeList1.FocusedNode); PSP_Values psp_Values = new PSP_Values(); psp_Values.TypeID = psp_Type.ID; try { //DeletePSP_ValuesByType里面删除数据和分类 Common.Services.BaseService.Update("DeletePSP_ValuesByType", psp_Values); TreeListNode brotherNode = null; if (treeList1.FocusedNode.ParentNode != 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); } } }
private void Insertdata() { //LayoutList ll1 = this.ctrlLayoutList1.FocusedObject; //if (ll1 == null) // return; string columnname = ""; DataTable dts = new DataTable(); OpenFileDialog op = new OpenFileDialog(); op.Filter = "Excel文件(*.xls)|*.xls"; if (op.ShowDialog() == DialogResult.OK) { WaitDialogForm wait = new WaitDialogForm("", "正在导入数据, 请稍候..."); try { dts = GetExcel(op.FileName); IList <PSP_Types> lii = new List <PSP_Types>(); IList <PSP_Values> liiValues = new List <PSP_Values>(); DateTime s8 = DateTime.Now; PSP_Values psp_Values = new PSP_Values(); int x = 0; for (int i = 0; i < dts.Rows.Count; i++) { this.Cursor = Cursors.WaitCursor; PSP_Types l1 = new PSP_Types(); l1.ID = i; l1.Flag2 = typeFlag2; l1.ProjectID = ProjectUID; foreach (DataColumn dc in dts.Columns) { columnname = dc.ColumnName; //if (dts.Rows[i][dc.ColumnName].ToString() == "") // continue; psp_Values = new PSP_Values(); switch (dc.ColumnName) { case "Title": l1.GetType().GetProperty(dc.ColumnName).SetValue(l1, dts.Rows[i][dc.ColumnName], null); break; case "ParentID": if (dts.Rows[i][dc.ColumnName] == null || dts.Rows[i][dc.ColumnName].ToString() == "" || dts.Rows[i][dc.ColumnName] == DBNull.Value) { l1.GetType().GetProperty(dc.ColumnName).SetValue(l1, 0, null); break; } l1.GetType().GetProperty(dc.ColumnName).SetValue(l1, Convert.ToInt32(dts.Rows[i][dc.ColumnName]), null); break; default: if (dts.Rows[i][dc.ColumnName] == null || dts.Rows[i][dc.ColumnName].ToString() == "" || dts.Rows[i][dc.ColumnName] == DBNull.Value) { psp_Values.Value = 0; } else { psp_Values.Value = Convert.ToDouble(dts.Rows[i][dc.ColumnName]); } psp_Values.Year = Convert.ToInt32(dc.ColumnName.Replace("年", "")); psp_Values.TypeID = i; psp_Values.ID = typeFlag2; liiValues.Add(psp_Values); break; } } lii.Add(l1); } int parenti = -4; //foreach (Ps_History l1 in lii) PSP_Types psl1; PSP_Values psp_values; int ti = 0; for (int i = 0, j = 0; i < lii.Count; i++) { psl1 = lii[i]; ti = psl1.ID; string con = "Flag2='" + typeFlag2 + "' and Title='" + psl1.Title + "'and ParentID ='" + psl1.ParentID + "' and ProjectID='" + ProjectUID + "'"; object obj = Services.BaseService.GetObject("SelectPSP_TypesByWhere", con); if (obj != null) { psl1.ID = ((PSP_Types)obj).ID; if (psl1.ParentID < 0) { psl1.ParentID = ((PSP_Types)obj).ParentID; psl1.Flag = ((PSP_Types)obj).Flag; } Services.BaseService.Update <PSP_Types>(psl1); } else { Services.BaseService.Create <PSP_Types>(psl1); obj = Services.BaseService.GetObject("SelectPSP_TypesByWhere", con); if (obj != null) { psl1.ID = ((PSP_Types)obj).ID; } } for (int jtemp = i + 1; jtemp < lii.Count; jtemp++) { if (lii[jtemp].ParentID == parenti) { lii[jtemp].ParentID = psl1.ID; lii[jtemp].Flag = psl1.Flag; } } for (; j < liiValues.Count; j++) { psp_values = liiValues[j]; if (psp_values.TypeID > ti) { break; } con = "TypeID='" + psl1.ID + "' and Year='" + psp_values.Year + "'"; obj = Services.BaseService.GetObject("SelectPSP_ValuesByWhere", con); psp_values.TypeID = psl1.ID; if (obj != null) { psp_values.ID = ((PSP_Values)obj).ID; Services.BaseService.Update <PSP_Values>(psp_values); } else { Services.BaseService.Create <PSP_Values>(psp_values); } } parenti--; } this.Cursor = Cursors.Default; wait.Close(); treeList1.BeginUpdate(); LoadData(); treeList1.EndUpdate(); MsgBox.Show("导入成功!"); } catch (Exception ex) { this.Cursor = Cursors.Default; wait.Close(); MsgBox.Show(columnname + ex.Message); MsgBox.Show("导入格式不正确!"); } } }