This commit is contained in:
jackchenyang
2024-05-12 22:53:47 +08:00
parent af8a1dd0ad
commit e8a1998e0c
9 changed files with 106 additions and 95 deletions
@@ -162,19 +162,23 @@ namespace FineUIPro.Web.WeldingProcess.PMI
{
weldJointIds = hdItemsString.Text.Substring(0, hdItemsString.Text.LastIndexOf('|'));
List<Model.View_PMI_DelegationDetails> lists = BLL.PMIDelegation_Service.GetPMI_DelegationAddItem(weldJointIds);
var lists = GetGridDataTable(weldJointIds);
this.BindGrid(lists);
//获取单位
string unitCode = Funs.DB.Base_Unit.FirstOrDefault(t => t.UnitId == drpUnitId.SelectedValue)?.UnitCode;
//获取区域code
var workdAreaIdList = lists.Select(t => t.WorkAreaId).ToList();
if (string.IsNullOrEmpty(this.txtDelegationNo.Text))
{
//获取单位
string unitCode = Funs.DB.Base_Unit.FirstOrDefault(t => t.UnitId == drpUnitId.SelectedValue)?.UnitCode;
//获取区域code
var workdAreaIdList = lists.Select(t => t.WorkAreaId).ToList();
var workAreaCode = Funs.DB.Project_WorkArea.AsQueryable().Where(t => workdAreaIdList.Contains(t.WorkAreaId)).Distinct().FirstOrDefault()?.WorkAreaCode;
var workAreaCode = Funs.DB.Project_WorkArea.AsQueryable().Where(t => workdAreaIdList.Contains(t.WorkAreaId)).Distinct().FirstOrDefault()?.WorkAreaCode;
string perfix = string.Empty;
perfix = $"PMI-{unitCode}-{workAreaCode}-PI-";
this.txtDelegationNo.Text = BLL.SQLHelper.RunProcNewId("SpGetNewCode", "dbo.PMI_Delegation", "DelegationNo", this.CurrUser.LoginProjectId, perfix);
}
string perfix = string.Empty;
perfix = $"PMI-{unitCode}-{workAreaCode}-PI-";
this.txtDelegationNo.Text = BLL.SQLHelper.RunProcNewId("SpGetNewCode", "dbo.PMI_Delegation", "DelegationNo", this.CurrUser.LoginProjectId, perfix);
}
}
#endregion
@@ -276,7 +280,59 @@ namespace FineUIPro.Web.WeldingProcess.PMI
}
#endregion
#region Grid里面的数据返回集合
private List<View_PMI_DelegationDetails> GetGridDataTable(string weldJointIds)
{
string[] arr = weldJointIds.Split('|');
JArray mergedData = Grid1.GetMergedData();
var result = Funs.DB.View_Pipeline_WeldJoint.Select(t => new View_PMI_DelegationDetails {
WeldJointId= t.WeldJointId,
PipelineCode= t.PipelineCode,
ProjectId= t.ProjectId,
Acceptance="",
QualityNo="",
WeldJointCode=t.WeldJointCode,
Specification=t.Specification,
MaterialCode=t.MaterialCode,
WorkAreaId=t.WorkAreaId,
Status=0,
PMIId=this.PMIDelegationId
}).Where(t => arr.Contains(t.WeldJointId)).ToList();
result.ForEach(item =>
{
item.Id = SQLHelper.GetNewID(typeof(PMI_DelegationDetails));
});
if (mergedData.Count == 0)
{
return result;
}
else
{
foreach (JObject mergedRow in mergedData)
{
JObject values = mergedRow.Value<JObject>("values");
Model.View_PMI_DelegationDetails newTrustItem = new Model.View_PMI_DelegationDetails();
newTrustItem.Id = values.Value<string>("Id").ToString();
newTrustItem.PipelineCode = values.Value<string>("PipelineCode").ToString();
newTrustItem.WeldJointId = values.Value<string>("WeldJointId").ToString();
newTrustItem.Acceptance = values.Value<string>("Acceptance").ToString();
newTrustItem.QualityNo = values.Value<string>("QualityNo").ToString();
newTrustItem.WeldJointCode = values.Value<string>("WeldJointCode").ToString();
newTrustItem.Specification =HttpUtility.HtmlDecode(values.Value<string>("Specification").ToString());
newTrustItem.MaterialCode = values.Value<string>("MaterialCode").ToString();
newTrustItem.Status = 0;
newTrustItem.PMIId = this.PMIDelegationId;
result.Add(newTrustItem);
}
}
return result;
}
#endregion
#region Grid页面信息,
/// <summary>
/// 收集Grid页面信息,提交明细
/// </summary>
@@ -315,28 +371,19 @@ namespace FineUIPro.Web.WeldingProcess.PMI
{
this.hdItemsString.Text = this.hdItemsString.Text.Substring(0, this.hdItemsString.Text.LastIndexOf('|'));
}
var trust = Funs.DB.PMI_Delegation.FirstOrDefault(t=>t.Id==this.PMIDelegationId);
if (Grid1.SelectedRowIndexArray.Length > 0)
{
List<Model.View_PMI_DelegationDetails> GetHotProessTrustItem = new List<Model.View_PMI_DelegationDetails>();
if (!string.IsNullOrEmpty(this.hdItemsString.Text))
{
GetHotProessTrustItem = BLL.PMIDelegation_Service.GetPMI_DelegationAddItem(this.hdItemsString.Text);
}
else if (string.IsNullOrEmpty(this.hdItemsString.Text) && this.PMIDelegationId != null)
{
GetHotProessTrustItem = BLL.PMIDelegation_Service.GetPMI_DelegationItem(this.CurrUser.LoginProjectId, this.PMIDelegationId);
}
var listData = GetGridDataTable("");
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var item = GetHotProessTrustItem.FirstOrDefault(x => x.WeldJointId == rowID);
var item = listData.FirstOrDefault(x => x.WeldJointId == rowID);
if (item != null)
{
GetHotProessTrustItem.Remove(item);
listData.Remove(item);
}
}
BindGrid(GetHotProessTrustItem);
BindGrid(listData);
ShowNotify(Resources.Lan.DeletedSuccessfully, MessageBoxIcon.Success);
}
}