提交代码

This commit is contained in:
2023-11-29 18:02:03 +08:00
parent a8799ec7bb
commit d7ae172c39
17 changed files with 1188 additions and 14 deletions
@@ -179,6 +179,28 @@ namespace FineUIPro.Web.PZHGL.InformationProject
summary2.Add("Num" + i.ToString(), sum2[i]);
}
Grid2.SummaryData = summary2;
decimal sumTodayCompleteSize = 0, sumTotalCompleteSize = 0, sumTotalSize = 0, sumTomorrowPlanSize = 0;
foreach (JObject mergedRow in Grid6.GetMergedData())
{
JObject values = mergedRow.Value<JObject>("values");
sumTodayCompleteSize += Funs.GetNewDecimalOrZero(values.Value<string>("TodayCompleteSize"));
sumTotalCompleteSize += Funs.GetNewDecimalOrZero(values.Value<string>("TotalCompleteSize"));
sumTotalSize += Funs.GetNewDecimalOrZero(values.Value<string>("TotalSize"));
sumTomorrowPlanSize += Funs.GetNewDecimalOrZero(values.Value<string>("TomorrowPlanSize"));
}
string sumRate = "/";
if (sumTotalSize > 0)
{
sumRate = decimal.Round(sumTotalCompleteSize / sumTotalSize * 100, 2) + "%";
}
JObject summary3 = new JObject();
summary3.Add("UnitWorkName", "合计");
summary3.Add("TodayCompleteSize", sumTodayCompleteSize);
summary3.Add("TotalCompleteSize", sumTotalCompleteSize);
summary3.Add("TotalSize", sumTotalSize);
summary3.Add("TotalRate", sumRate);
summary3.Add("TomorrowPlanSize", sumTomorrowPlanSize);
Grid6.SummaryData = summary3;
}
#region --
@@ -563,6 +585,17 @@ namespace FineUIPro.Web.PZHGL.InformationProject
this.Grid5.DataSource = records;
this.Grid5.DataBind();
}
var hjgls = BLL.ConstructionLogHJGLService.GetConstructionLogHJGLsByConstructionLogId(ConstructionLogId);
if (hjgls.Count > 0)
{
this.Grid6.DataSource = hjgls;
this.Grid6.DataBind();
}
else
{
this.Grid6.DataSource = null;
this.Grid6.DataBind();
}
ChangeText();
OutputSummaryData();
}
@@ -667,6 +700,7 @@ namespace FineUIPro.Web.PZHGL.InformationProject
this.Grid5.DataBind();
drpUnitWork_SelectedIndexChanged(null, null);
ChangeText();
OutputSummaryData();
}
private void TextEmpty()
@@ -700,6 +734,8 @@ namespace FineUIPro.Web.PZHGL.InformationProject
this.Grid4.DataBind();
this.Grid5.DataSource = null;
this.Grid5.DataBind();
this.Grid6.DataSource = null;
this.Grid6.DataBind();
}
#endregion
@@ -1084,6 +1120,7 @@ namespace FineUIPro.Web.PZHGL.InformationProject
sheet.AddMergedRegion(new CellRangeAddress(8, 8, 0, 1 + list.Count));
int rowCount = 10;
List<string> unitWorklist = Funs.GetStrListByStr(log.UnitWorks, ',');
int[] sum1 = new int[list.Count];
for (int i = 0; i < unitWorklist.Count; i++)
{
row1 = sheet.GetRow(rowCount + i);
@@ -1101,10 +1138,25 @@ namespace FineUIPro.Web.PZHGL.InformationProject
if (person != null && person.Num != null)
{
cell3.SetCellValue(person.Num.ToString());
sum1[j] += Funs.GetNewIntOrZero(person.Num.ToString());
}
}
}
rowCount += unitWorklist.Count;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("");
cell3 = row1.CreateCell(1);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("合计");
for (int i = 0; i < sum1.Length; i++)
{
cell3 = row1.CreateCell(i + 2);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sum1[i].ToString());
}
rowCount++;
int rowMachineTitle = rowCount;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
@@ -1130,6 +1182,7 @@ namespace FineUIPro.Web.PZHGL.InformationProject
cell3.CellStyle = cellStyle0;
sheet.AddMergedRegion(new CellRangeAddress(rowMachineTitle, rowMachineTitle, 0, 1 + list2.Count));
rowCount++;
int[] sum2 = new int[list2.Count];
for (int i = 0; i < unitWorklist.Count; i++)
{
row1 = sheet.GetRow(rowCount + i);
@@ -1147,12 +1200,126 @@ namespace FineUIPro.Web.PZHGL.InformationProject
if (machine != null && machine.Num != null)
{
cell3.SetCellValue(machine.Num.ToString());
sum2[j] += Funs.GetNewIntOrZero(machine.Num.ToString());
}
}
}
rowCount += unitWorklist.Count;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("");
cell3 = row1.CreateCell(1);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("合计");
for (int i = 0; i < sum2.Length; i++)
{
cell3 = row1.CreateCell(i + 2);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sum2[i].ToString());
}
rowCount++;
int rowHJGLTitle = rowCount;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle3;
cell3.SetCellValue("焊接数据");
rowCount++;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("序号");
cell3 = row1.CreateCell(1);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("单位工程");
cell3 = row1.CreateCell(2);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("今日完成(DIN");
cell3 = row1.CreateCell(3);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("累计完成(DIN");
cell3 = row1.CreateCell(4);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("总量(DIN");
cell3 = row1.CreateCell(5);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("累计完成百分比");
cell3 = row1.CreateCell(6);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("明日计划(DIN");
row1 = sheet.GetRow(rowHJGLTitle);
cell3 = row1.CreateCell(6);
cell3.CellStyle = cellStyle0;
sheet.AddMergedRegion(new CellRangeAddress(rowHJGLTitle, rowHJGLTitle, 0, 6));
rowCount++;
var hjgls = (from x in db.ZHGL_ConstructionLogHJGL
where x.ConstructionLogId == constructionLogId
orderby x.UnitWorkId
select x).ToList();
if (hjgls.Count > 0)
{
decimal sumTodayCompleteSize = 0, sumTotalCompleteSize = 0, sumTotalSize = 0, sumTomorrowPlanSize = 0;
for (int i = 0; i < hjgls.Count; i++)
{
row1 = sheet.GetRow(rowCount + i);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue((i + 1).ToString());
cell3 = row1.CreateCell(1);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(BLL.UnitWorkService.GetUnitWorkName(hjgls[i].UnitWorkId));
cell3 = row1.CreateCell(2);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(hjgls[i].TodayCompleteSize.Value.ToString("0.###"));
cell3 = row1.CreateCell(3);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(hjgls[i].TotalCompleteSize.Value.ToString("0.###"));
cell3 = row1.CreateCell(4);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(hjgls[i].TotalSize.Value.ToString("0.###"));
cell3 = row1.CreateCell(5);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(hjgls[i].TotalRate);
cell3 = row1.CreateCell(6);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(hjgls[i].TomorrowPlanSize.Value.ToString("0.###"));
sumTodayCompleteSize += hjgls[i].TodayCompleteSize.Value;
sumTotalCompleteSize += hjgls[i].TotalCompleteSize.Value;
sumTotalSize += hjgls[i].TotalSize.Value;
sumTomorrowPlanSize += hjgls[i].TomorrowPlanSize.Value;
}
rowCount += hjgls.Count;
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("");
cell3 = row1.CreateCell(1);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue("合计");
cell3 = row1.CreateCell(2);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sumTodayCompleteSize.ToString("0.###"));
cell3 = row1.CreateCell(3);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sumTotalCompleteSize.ToString("0.###"));
cell3 = row1.CreateCell(4);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sumTotalSize.ToString("0.###"));
cell3 = row1.CreateCell(5);
cell3.CellStyle = cellStyle0;
string sumRate = "/";
if (sumTotalSize > 0)
{
sumRate = decimal.Round(sumTotalCompleteSize / sumTotalSize * 100, 2) + "%";
}
cell3.SetCellValue(sumRate);
cell3 = row1.CreateCell(6);
cell3.CellStyle = cellStyle0;
cell3.SetCellValue(sumTomorrowPlanSize.ToString("0.###"));
rowCount++;
}
row1 = sheet.GetRow(rowCount);
cell3 = row1.CreateCell(0);
cell3.CellStyle = cellStyle3;
cell3.SetCellValue("专业管理");
cell3 = row1.CreateCell(2);
@@ -1932,6 +2099,22 @@ namespace FineUIPro.Web.PZHGL.InformationProject
newItem.Remark = values.Value<string>("Remark");
ConstructionLogRecordService.AddConstructionLogRecord(newItem);
}
BLL.ConstructionLogHJGLService.DeleteConstructionLogHJGLsByConstructionLogId(this.ConstructionLogId);
foreach (JObject mergedRow in Grid6.GetMergedData()) //需要协调解决的问题
{
Model.ZHGL_ConstructionLogHJGL newItem = new Model.ZHGL_ConstructionLogHJGL();
int i = mergedRow.Value<int>("index");
JObject values = mergedRow.Value<JObject>("values");
newItem.ConstructionLogHJGLId = SQLHelper.GetNewID();
newItem.ConstructionLogId = this.ConstructionLogId;
newItem.UnitWorkId = values.Value<string>("UnitWorkId");
newItem.TodayCompleteSize = Funs.GetNewDecimalOrZero(values.Value<string>("TodayCompleteSize"));
newItem.TotalCompleteSize = Funs.GetNewDecimalOrZero(values.Value<string>("TotalCompleteSize"));
newItem.TotalSize = Funs.GetNewDecimalOrZero(values.Value<string>("TotalSize"));
newItem.TotalRate = values.Value<string>("TotalRate");
newItem.TomorrowPlanSize = Funs.GetNewDecimalOrZero(values.Value<string>("TomorrowPlanSize"));
ConstructionLogHJGLService.AddConstructionLogHJGL(newItem);
}
ShowNotify("保存成功!", MessageBoxIcon.Success);
InitTreeMenu();
}
@@ -1987,6 +2170,7 @@ namespace FineUIPro.Web.PZHGL.InformationProject
BLL.ConstructionLogWorkEfficiencyService.DeleteConstructionLogWorkEfficiencysByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogPersonService.DeleteConstructionLogPersonsByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogMachineService.DeleteConstructionLogMachinesByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogHJGLService.DeleteConstructionLogHJGLsByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogManagementService.DeleteConstructionLogManagementsByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogProblemService.DeleteConstructionLogProblemsByConstructionLogId(ConstructionLogId);
BLL.ConstructionLogRecordService.DeleteConstructionLogRecordsByConstructionLogId(ConstructionLogId);
@@ -2064,6 +2248,8 @@ namespace FineUIPro.Web.PZHGL.InformationProject
this.Grid3.DataBind();
this.Grid4.DataSource = null;
this.Grid4.DataBind();
this.Grid6.DataSource = null;
this.Grid6.DataBind();
}
else
{
@@ -2093,6 +2279,47 @@ namespace FineUIPro.Web.PZHGL.InformationProject
}
this.Grid2.DataSource = machines;
this.Grid2.DataBind();
DateTime today = DateTime.Now.Date;
if (!string.IsNullOrEmpty(this.txtCompileDate.Text.Trim()))
{
today = Convert.ToDateTime(this.txtCompileDate.Text.Trim()).Date;
}
Model.SGGLDB db = Funs.DB;
var allWeldJoints = from x in db.View_HJGL_WeldJoint
where x.ProjectId == this.CurrUser.LoginProjectId
select new
{
x.UnitWorkId,
x.WeldJointId,
Size = x.Size ?? 0,
x.WeldingDateD,
};
List<Model.ZHGL_ConstructionLogHJGL> hjgls = new List<Model.ZHGL_ConstructionLogHJGL>();
foreach (var item in this.drpUnitWork.SelectedValueArray)
{
if (item != BLL.Const._Null)
{
Model.ZHGL_ConstructionLogHJGL hjgl = new Model.ZHGL_ConstructionLogHJGL();
hjgl.ConstructionLogHJGLId = SQLHelper.GetNewID();
hjgl.UnitWorkId = item;
hjgl.TodayCompleteSize = allWeldJoints.Where(x => x.UnitWorkId == item && x.WeldingDateD == today).ToList().Sum(x => x.Size);
decimal totalCompleteSize = allWeldJoints.Where(x => x.UnitWorkId == item && x.WeldingDateD <= today).ToList().Sum(x => x.Size);
hjgl.TotalCompleteSize = totalCompleteSize;
decimal totalSize = allWeldJoints.Where(x => x.UnitWorkId == item).ToList().Sum(x => x.Size);
hjgl.TotalSize = totalSize;
if (totalSize > 0)
{
hjgl.TotalRate = decimal.Round(totalCompleteSize / totalSize * 100, 2) + "%";
}
else
{
hjgl.TotalRate = "/";
}
hjgls.Add(hjgl);
}
}
this.Grid6.DataSource = hjgls;
this.Grid6.DataBind();
List<Model.ZHGL_ConstructionLogManagement> managements = new List<Model.ZHGL_ConstructionLogManagement>();
foreach (var item in this.drpUnitWork.SelectedValueArray)
{