SVN-Revision: r635
This commit is contained in:
wyf
2025-05-23 07:23:01 +00:00
parent c4ea33a08e
commit c24d5f3118
+67 -9
View File
@@ -1177,7 +1177,17 @@ namespace Lskj.PubBill
{ {
gridColumn.Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridColumn.Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left;
} }
for (int i = 0; i < 7; i++) int dayCount = 0;
BaseUserControl baseUserControl = ControlObj.FindControl("bom_rdm_tianshu");
if (baseUserControl != null)
{
int.TryParse(baseUserControl.EditText, out dayCount);
}
if (dayCount <= 0)
{
dayCount = 7;
}
for (int i = 0; i < dayCount; i++)
{ {
GridColumn gridColumn = new GridColumn(); GridColumn gridColumn = new GridColumn();
gridColumn.AppearanceCell.Options.UseTextOptions = true; gridColumn.AppearanceCell.Options.UseTextOptions = true;
@@ -1199,6 +1209,25 @@ namespace Lskj.PubBill
gcMain.GridView.Columns.Add(gridColumn); gcMain.GridView.Columns.Add(gridColumn);
DateColumnList.Add(gridColumn); DateColumnList.Add(gridColumn);
} }
GridColumn sunColumn = new GridColumn();
sunColumn.AppearanceCell.Options.UseTextOptions = true;
sunColumn.AppearanceCell.TextOptions.HAlignment = HorzAlignment.Center;
sunColumn.AppearanceHeader.Options.UseTextOptions = true;
sunColumn.AppearanceHeader.TextOptions.HAlignment = HorzAlignment.Center;
sunColumn.OptionsColumn.AllowMove = false;
sunColumn.OptionsColumn.AllowSize = false;
sunColumn.OptionsFilter.AllowFilter = false;
sunColumn.OptionsColumn.AllowMerge = DefaultBoolean.False;
sunColumn.OptionsColumn.AllowSort = DefaultBoolean.False;
sunColumn.FieldName = $"workingsum";
sunColumn.Caption = $"工时合计";
sunColumn.Width = 70;
sunColumn.DisplayFormat.FormatType = FormatType.Numeric;
sunColumn.DisplayFormat.FormatString = "{0:#,##0.####}";
sunColumn.Visible = true;
sunColumn.SummaryItem.SummaryType = SummaryItemType.Sum;
sunColumn.SummaryItem.DisplayFormat = "{0:#,##0.####}";
gcMain.GridView.Columns.Add(sunColumn);
} }
/// <summary> /// <summary>
@@ -1207,7 +1236,17 @@ namespace Lskj.PubBill
/// <param name="currentDate"></param> /// <param name="currentDate"></param>
private void UpdateDynamicColumns(DateTime currentDate) private void UpdateDynamicColumns(DateTime currentDate)
{ {
DateTime endDate = currentDate.AddDays(7); int dayCount = 0;
BaseUserControl baseUserControl = ControlObj.FindControl("bom_rdm_tianshu");
if (baseUserControl != null)
{
int.TryParse(baseUserControl.EditText, out dayCount);
}
if (dayCount <= 0)
{
dayCount = 7;
}
DateTime endDate = currentDate.AddDays(dayCount);
gcMain.GridView.BeginUpdate(); gcMain.GridView.BeginUpdate();
try try
{ {
@@ -1228,7 +1267,7 @@ namespace Lskj.PubBill
gridColumn.Visible = false; gridColumn.Visible = false;
} }
} }
} }
finally finally
{ {
@@ -5434,17 +5473,24 @@ namespace Lskj.PubBill
/// 2) 把 dataDayPlan 中对应日期的 amount 值填入主表; /// 2) 把 dataDayPlan 中对应日期的 amount 值填入主表;
/// 3) 计算行级合计写入 “heji” 列。 /// 3) 计算行级合计写入 “heji” 列。
/// </summary> /// </summary>
private DataTable MergeMainDataWithDayPlan( private DataTable MergeMainDataWithDayPlan(DataTable dataMain, DataTable dataDayPlan, DateTime startDate)
DataTable dataMain,
DataTable dataDayPlan,
DateTime startDate)
{ {
const string rightPrimaryKey = "billdocument_id"; // dataDayPlan 主键 const string rightPrimaryKey = "billdocument_id"; // dataDayPlan 主键
const string dateField = "showday"; const string dateField = "showday";
const string amountField = "amount"; const string amountField = "amount";
string topPrimaryKey = BillModel.DetailUUIDKey; // dataMain 主键 string topPrimaryKey = BillModel.DetailUUIDKey; // dataMain 主键
DateTime endDate = startDate.AddDays(7); int dayCount = 0;
BaseUserControl baseUserControl = ControlObj.FindControl("bom_rdm_tianshu");
if (baseUserControl != null)
{
int.TryParse(baseUserControl.EditText, out dayCount);
}
if (dayCount <= 0)
{
dayCount = 7;
}
DateTime endDate = startDate.AddDays(dayCount);
// ---------- 1. 预索引 dataDayPlanbilldocument_id -> List<DataRow> ---------- // ---------- 1. 预索引 dataDayPlanbilldocument_id -> List<DataRow> ----------
var dayPlanMap = new Dictionary<string, List<DataRow>>(); var dayPlanMap = new Dictionary<string, List<DataRow>>();
@@ -5529,7 +5575,19 @@ namespace Lskj.PubBill
string dateField = "showday"; string dateField = "showday";
string amountField = "amount"; string amountField = "amount";
string topPrimaryKey = BillModel.DetailUUIDKey; string topPrimaryKey = BillModel.DetailUUIDKey;
DateTime endDate = startDate.AddDays(7); // 计算结束日期
int dayCount = 0;
BaseUserControl baseUserControl = ControlObj.FindControl("bom_rdm_tianshu");
if (baseUserControl != null)
{
int.TryParse(baseUserControl.EditText, out dayCount);
}
if (dayCount <= 0)
{
dayCount = 7;
}
DateTime endDate = startDate.AddDays(dayCount); // 计算结束日期
// **1. 预索引 dataDayPlan 数据(billdocument_id -> 该 key 相关的所有行)** // **1. 预索引 dataDayPlan 数据(billdocument_id -> 该 key 相关的所有行)**
Dictionary<string, List<DataRow>> dayPlanMap = new Dictionary<string, List<DataRow>>(); Dictionary<string, List<DataRow>> dayPlanMap = new Dictionary<string, List<DataRow>>();
foreach (DataRow row in dataDayPlan.Rows) foreach (DataRow row in dataDayPlan.Rows)