private void savedate() { string baseyear = ""; baseyear = EnsureBaseYear(baseyear); if (baseyear != "") { PSP_BaseYearRate yearrate = new PSP_BaseYearRate(); IList listTypes = Common.Services.BaseService.GetList("SelectPSP_BaseYearRateList", yearrate); try { foreach (PSP_BaseYearRate yearratetemp in listTypes) { if (yearratetemp.BaseYear == baseyear) { continue; } TreeListNode node = treeList1.FindNodeByFieldValue("ID", yearratetemp.TypeID); if (node != null) { yearrate.BaseYear = yearratetemp.BaseYear; yearrate.YearRate = Convert.ToString(node[yearratetemp.BaseYear + "年"]); yearrate.TypeID = yearratetemp.TypeID; yearrate.UID = Guid.NewGuid().ToString(); Common.Services.BaseService.Update("UpdatePSP_BaseYearRateByYear", yearrate); } } this.DialogResult = DialogResult.OK; } catch (Exception ex) { // MsgBox.Show("出错啦:" + ex.Message); } } }
private string EnsureBaseYear(string baseyear) { PSP_BaseYearRate BaseYearrate = (PSP_BaseYearRate)Common.Services.BaseService.GetObject("SelectPSP_BaseYearRateByKey", baseyearFlag); if (BaseYearrate == null) { BaseYearrate = new PSP_BaseYearRate(); BaseYearrate.UID = "4132ae36-36b3-47ed-a9b9-163a6479d5d3"; BaseYearrate.BaseYear = "1990"; BaseYearrate.YearRate = "0"; Services.BaseService.Create <PSP_BaseYearRate>(BaseYearrate); // } if (BaseYearrate.BaseYear != "0") { Hashtable ha = new Hashtable(); ha.Add("Flag", typeFlag2); ha.Add("Year", Convert.ToInt32(BaseYearrate.BaseYear)); PSP_Years baseyearlistYears = (PSP_Years)Common.Services.BaseService.GetObject("SelectPSP_YearsByYearFlag", ha); if (baseyearlistYears != null) { baseyear = baseyearlistYears.Year.ToString(); } } return(baseyear); }
//添加年份后,新增一列 private void AddColumn(int year) { int nInsertIndex = GetInsertIndex(year); dataTable.Columns.Add(year + "年", typeof(double)); TreeListColumn column = treeList1.Columns.Insert(nInsertIndex); column.FieldName = year + "年"; column.Tag = year; column.Caption = year + "年"; column.Width = 70; column.OptionsColumn.AllowSort = false; column.VisibleIndex = nInsertIndex - 2;//有两列隐藏列 column.ColumnEdit = repositoryItemTextEdit1; //treeList1.RefreshDataSource(); PSP_Types psp_Type = new PSP_Types(); psp_Type.Flag2 = typeFlag2; IList listTypes = Common.Services.BaseService.GetList("SelectPSP_TypesByFlag2", psp_Type); foreach (PSP_Types psp_Typetemp in listTypes) { PSP_BaseYearRate psp_Yeartemp = new PSP_BaseYearRate(); psp_Yeartemp.BaseYear = year.ToString(); psp_Yeartemp.TypeID = psp_Typetemp.ID; try { IList <PSP_BaseYearRate> list1 = Common.Services.BaseService.GetList <PSP_BaseYearRate>("SelectPSP_BaseYearRateByYear", psp_Yeartemp); if (list1.Count == 0) { try { psp_Yeartemp.UID = Guid.NewGuid().ToString(); psp_Yeartemp.YearRate = "0"; Common.Services.BaseService.Create <PSP_BaseYearRate>(psp_Yeartemp); this.DialogResult = DialogResult.OK; } catch (Exception ex) { MsgBox.Show("出错啦:" + ex.Message); } } } catch (Exception ex) { MsgBox.Show(ex.ToString()); } } }
private void barButtonItem8_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Form7_BaseYear baseyear = new Form7_BaseYear(); baseyear.Text = "设置基准年!"; int nFixedColumns = typeof(PSP_Types).GetProperties().Length; int nColumns = treeList1.Columns.Count; if (nFixedColumns == nColumns + 2)//相等时,表示还没有年份,返回 { MsgBox.Show("年份不存在,请添加后再操作!"); return; } else { string baseyearnum = ""; baseyearnum = EnsureBaseYear(baseyearnum); //有年份时,默认为基准年 if (baseyearnum != "") { baseyear.BaseYear = baseyearnum; } else { baseyear.BaseYear = treeList1.Columns[nFixedColumns - 2].Tag.ToString(); } } if (baseyear.ShowDialog() == DialogResult.OK) { PSP_BaseYearRate byear = new PSP_BaseYearRate(); byear.BaseYear = baseyear.BaseYear.ToString(); byear.UID = baseyearFlag; Common.Services.BaseService.Update("UpdatePSP_BaseYear", byear); treeList1.BeginUpdate(); LoadData(); treeList1.EndUpdate(); treeList1.Columns[3].AppearanceCell.BackColor = Color.GreenYellow; this.Cursor = Cursors.Default; } else { baseyear.Close(); } }
private string EnsureBaseYear(string baseyear) { PSP_BaseYearRate BaseYearrate = (PSP_BaseYearRate)Common.Services.BaseService.GetObject("SelectPSP_BaseYearRateByKey", baseyearFlag); if (BaseYearrate.BaseYear != "0") { Hashtable ha = new Hashtable(); ha.Add("Flag", typeFlag2); ha.Add("Year", Convert.ToInt32(BaseYearrate.BaseYear)); PSP_Years baseyearlistYears = (PSP_Years)Common.Services.BaseService.GetObject("SelectPSP_YearsByYearFlag", ha); if (baseyearlistYears != null) { baseyear = baseyearlistYears.Year.ToString(); } } return(baseyear); }
private void SetRateYearValue(TreeListNode node, double sum) { string baseyear = ""; baseyear = EnsureBaseYear(baseyear); if (baseyear != "") { double rate = 0; double sumtemp = sum; int yeartemp = 0; PSP_Years psp_Year = new PSP_Years(); psp_Year.Flag = typeFlag2; psp_Year.Year = Convert.ToInt32(baseyear); IList <PSP_Years> listYears = Common.Services.BaseService.GetList <PSP_Years>("SelectPSP_YearsListByFlagAndYear", psp_Year); yeartemp = Convert.ToInt32(baseyear); foreach (PSP_Years yearvalue in listYears) { if (yearvalue.Year == Convert.ToInt32(baseyear)) { continue; } try { PSP_BaseYearRate yearvaluetemp = new PSP_BaseYearRate(); yearvaluetemp.BaseYear = yearvalue.Year.ToString(); yearvaluetemp.TypeID = Convert.ToInt32(node.GetValue("ID")); IList <PSP_BaseYearRate> list1 = Common.Services.BaseService.GetList <PSP_BaseYearRate>("SelectPSP_BaseYearRateByYear", yearvaluetemp); if (list1.Count == 1) { rate = Convert.ToDouble(list1[0].YearRate); } sumtemp = sumtemp * Math.Pow(1 + rate, yearvalue.Year - yeartemp); node.SetValue(yearvalue.Year + "年", Math.Round(sumtemp, 2)); yeartemp = yearvalue.Year; SaveCellValue((int)yearvalue.Year, (int)node.GetValue("ID"), Convert.ToDouble(sumtemp)); } catch { } } } }
private void Form7_BaseYearRate_Load(object sender, EventArgs e) { if (dt1 != null) { dt1.Columns.Clear(); treeList1.Columns.Clear(); } //this.gridColumn2.ColumnEdit = this.repositoryItemTextEdit1; PSP_Types psp_Type = new PSP_Types(); psp_Type.Flag2 = typeFlag2; IList listTypes = Common.Services.BaseService.GetList("SelectPSP_TypesByFlag2", psp_Type); dt1 = Itop.Common.DataConverter.ToDataTable(listTypes, typeof(PSP_Types)); treeList1.DataSource = dt1; treeList1.Columns["Title"].Caption = "分类名"; treeList1.Columns["Title"].Width = 180; treeList1.Columns["Title"].OptionsColumn.AllowEdit = false; treeList1.Columns["Title"].OptionsColumn.AllowSort = false; treeList1.Columns["Flag"].VisibleIndex = -1; treeList1.Columns["Flag"].OptionsColumn.ShowInCustomizationForm = false; treeList1.Columns["Flag2"].VisibleIndex = -1; treeList1.Columns["Flag2"].OptionsColumn.ShowInCustomizationForm = false; string baseyear = ""; baseyear = EnsureBaseYear(baseyear); PSP_Years psp_Year = new PSP_Years(); IList <PSP_Years> listYears; if (baseyear != "") { psp_Year.Flag = typeFlag2; psp_Year.Year = Convert.ToInt32(baseyear); listYears = Common.Services.BaseService.GetList <PSP_Years>("SelectPSP_YearsListByFlagAndYear", psp_Year); } else { MsgBox.Show("没有添加基准年,请添加后再操作!"); return; } if (listYears.Count > 1) { endyear = listYears[listYears.Count - 1].Year; } else { MsgBox.Show("没有添加预测年,请添加后再操作!"); this.DialogResult = DialogResult.OK; return; } foreach (PSP_Years item in listYears) { if (item.Year.ToString() == baseyear) { continue; } AddColumn(item.Year); PSP_BaseYearRate psp_Yeartemp = new PSP_BaseYearRate(); foreach (PSP_Types psp_Typetemp in listTypes) { psp_Yeartemp.BaseYear = item.Year.ToString(); psp_Yeartemp.TypeID = psp_Typetemp.ID; try { IList <PSP_BaseYearRate> list1 = Common.Services.BaseService.GetList <PSP_BaseYearRate>("SelectPSP_BaseYearRateByYear", psp_Yeartemp); if (list1.Count == 1) { TreeListNode node = treeList1.FindNodeByFieldValue("ID", Convert.ToInt32(list1[0].TypeID)); if (node != null) { if (list1[0].YearRate != "") { node.SetValue(list1[0].BaseYear + "年", Convert.ToDouble(list1[0].YearRate)); } else { node.SetValue(psp_Yeartemp.BaseYear + "年", "0"); } } } else if (list1.Count == 0) { try { psp_Yeartemp.UID = Guid.NewGuid().ToString(); psp_Yeartemp.YearRate = "0"; Common.Services.BaseService.Create <PSP_BaseYearRate>(psp_Yeartemp); TreeListNode node = treeList1.FindNodeByFieldValue("ID", psp_Yeartemp.TypeID); if (node != null) { node.SetValue(psp_Yeartemp.BaseYear + "年", "0"); } } catch (Exception ex) { // MsgBox.Show("出错啦:" + ex.Message); } } } catch (Exception ex) { // MsgBox.Show(ex.ToString()); } } } treeList1.ExpandAll(); }