2
This commit is contained in:
@@ -11,7 +11,7 @@ namespace FineUIPro.Web.CLGL
|
||||
public partial class OutPlanMasterSelect : PageBase
|
||||
{
|
||||
#region 定义项
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 单位工程主键
|
||||
/// </summary>
|
||||
@@ -52,7 +52,10 @@ namespace FineUIPro.Web.CLGL
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
UnitWorkId=Request.QueryString["UnitWorkId"];
|
||||
Id = Request.QueryString["Id"];
|
||||
this.InitTreeMenu();//加载树
|
||||
InitDropList();
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
@@ -209,20 +212,64 @@ namespace FineUIPro.Web.CLGL
|
||||
/// </summary>
|
||||
private void BindGrid()
|
||||
{
|
||||
//var tb=from x in Funs.DB.HJGL_PipeLineMat
|
||||
// join y in Funs.DB.HJGL_Pipeline on x.PipelineId equals y.PipelineId
|
||||
// join z in Funs.DB.Tw_MaterialStock on x.MaterialCode equals z.PipeLineMatCode
|
||||
// where y.ProjectId == this.CurrUser.LoginProjectId && y.UnitWorkId == this.UnitWorkId && y.PipelineId== this.tvControlItem.SelectedNodeID
|
||||
// 确保 SelectedNodeID 不为空
|
||||
if (this.tvControlItem.SelectedNodeID == null)
|
||||
{
|
||||
|
||||
return; // 或者显示一个提示
|
||||
}
|
||||
int Category=(int)TwInOutplanmasterService.GetById(Id).Category;
|
||||
var tb = (from x in Funs.DB.HJGL_PipeLineMat
|
||||
join y in Funs.DB.HJGL_Pipeline on x.PipelineId equals y.PipelineId
|
||||
join z in Funs.DB.Tw_MaterialStock on x.MaterialCode equals z.PipeLineMatCode into zz
|
||||
from z in zz.DefaultIfEmpty()
|
||||
join lib in Funs.DB.HJGL_MaterialCodeLib on x.MaterialCode equals lib.MaterialCode
|
||||
where y.ProjectId == this.CurrUser.LoginProjectId
|
||||
&& y.UnitWorkId == this.UnitWorkId
|
||||
&& y.PipelineId == this.tvControlItem.SelectedNodeID
|
||||
&& (x.PrefabricatedComponents==null||x.PrefabricatedComponents=="")
|
||||
select new
|
||||
{
|
||||
x.PipeLineMatId,
|
||||
x.PipelineId,
|
||||
x.MaterialCode,
|
||||
lib.MaterialName,
|
||||
lib.MaterialSpec,
|
||||
lib.MaterialUnit,
|
||||
PlanNum = x.Number,
|
||||
StockNum=z.StockNum??0,
|
||||
x.IsLooseParts,
|
||||
}).ToList();
|
||||
if (Category == (int)TwConst.Category.管段)
|
||||
{
|
||||
tb=tb.Where(x=>x.MaterialUnit.Contains("米")).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
tb = tb.Where(x => x.MaterialUnit.Contains("个")).ToList();
|
||||
|
||||
}
|
||||
var inoutplandetail = (from x in Funs.DB.Tw_InOutPlanDetail_Relation
|
||||
where x.InOutPlanMasterId == Id && x.PipelineId == this.tvControlItem.SelectedNodeID
|
||||
select x).ToList();
|
||||
|
||||
// 优化 Linq 过滤条件
|
||||
tb = (from x in tb
|
||||
join y in inoutplandetail on x.MaterialCode equals y.MaterialCode into yy
|
||||
from y in yy.DefaultIfEmpty()
|
||||
where y == null
|
||||
select x).ToList();
|
||||
|
||||
|
||||
////var tb = PipelineMatService.GetPipeLineMatsByPipelineId(this.tvControlItem.SelectedNodeID);
|
||||
//Grid1.DataSource = tb;
|
||||
//Grid1.DataBind();
|
||||
Grid1.RecordCount = tb.Count;
|
||||
Grid1.DataSource = tb;
|
||||
Grid1.DataBind();
|
||||
}
|
||||
|
||||
|
||||
private void InitDropList()
|
||||
{
|
||||
/* var pipeline = (from x in Funs.DB.HJGL_Pipeline
|
||||
var pipeline = (from x in Funs.DB.HJGL_Pipeline
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId
|
||||
&& x.UnitWorkId == this.UnitWorkId
|
||||
select x.FlowingSection).Distinct().ToList();
|
||||
@@ -230,7 +277,7 @@ namespace FineUIPro.Web.CLGL
|
||||
this.drpFlowingSection.DataValueField = "Value";
|
||||
this.drpFlowingSection.DataSource = pipeline;
|
||||
this.drpFlowingSection.DataBind();
|
||||
Funs.FineUIPleaseSelect(drpFlowingSection);*/
|
||||
Funs.FineUIPleaseSelect(drpFlowingSection);
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -268,254 +315,43 @@ namespace FineUIPro.Web.CLGL
|
||||
/// <param name="e"></param>
|
||||
protected void btnAccept_Click(object sender, EventArgs e)
|
||||
{
|
||||
//PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(txtTaskDate.Text) + ActiveWindow.GetHidePostBackReference());
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
/*if (string.IsNullOrEmpty(this.txtTaskCode.Text.Trim()))
|
||||
{
|
||||
ShowNotify("请输入焊接任务单编号", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (!string.IsNullOrEmpty(txtTaskDate.Text))
|
||||
{
|
||||
if (!string.IsNullOrEmpty(TaskDate))
|
||||
{
|
||||
SaveTask(false);
|
||||
BindGrid();
|
||||
}
|
||||
else
|
||||
{
|
||||
var task = from x in Funs.DB.HJGL_WeldTask
|
||||
where x.UnitWorkId == UnitWorkId && x.UnitId == this.drpUnit.SelectedValue
|
||||
&& x.TaskDate.Value.Date.ToString() == Convert.ToDateTime(txtTaskDate.Text.Trim()).ToString("yyyy-MM-dd")
|
||||
select x;
|
||||
if (task.Count() > 0)
|
||||
{
|
||||
ShowNotify("所选预计焊接日期已存在,请重新选择!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
SaveTask(false);
|
||||
TaskDate = txtTaskDate.Text;
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
ShowNotify("请选择预计焊接日期", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}*/
|
||||
|
||||
}
|
||||
private void SaveTask(bool IsCloseForm)
|
||||
{
|
||||
/*var weldingRods = from x in Funs.DB.Base_Consumables where x.ConsumablesType == "2" select x;
|
||||
var weldingWires = from x in Funs.DB.Base_Consumables where x.ConsumablesType == "1" select x;
|
||||
string[] selectRowId = Grid1.SelectedRowIDArray;
|
||||
for (int i = 0; i < selectRowId.Count(); i++)
|
||||
{
|
||||
string canWeldingRodName = string.Empty;
|
||||
string canWeldingWireName = string.Empty;
|
||||
Model.HJGL_WeldTask NewTask = new Model.HJGL_WeldTask();
|
||||
NewTask.ProjectId = this.CurrUser.LoginProjectId;
|
||||
NewTask.UnitWorkId = this.UnitWorkId;
|
||||
NewTask.UnitId = drpUnit.SelectedValue;
|
||||
|
||||
NewTask.TaskCode = this.txtTaskCode.Text.Trim();
|
||||
NewTask.WeldTaskId = SQLHelper.GetNewID();
|
||||
NewTask.WeldJointId = selectRowId[i];
|
||||
var oldWeldTask = BLL.WeldTaskService.GetWeldTaskByWeldJointId(NewTask.WeldJointId);
|
||||
if (oldWeldTask != null)
|
||||
{
|
||||
ShowNotify("所选焊口已存在任务单,无法保存!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
Model.HJGL_WeldJoint weldJoint = BLL.WeldJointService.GetWeldJointByWeldJointId(NewTask.WeldJointId);
|
||||
if (weldJoint != null)
|
||||
{
|
||||
NewTask.WeldingRod = weldJoint.WeldingRod;
|
||||
NewTask.WeldingWire = weldJoint.WeldingWire;
|
||||
//获取可替代焊丝焊条
|
||||
var mat = BLL.Base_MaterialService.GetMaterialByMaterialId(weldJoint.Material1Id);
|
||||
string matClass = mat.MaterialClass;
|
||||
var matRod = weldingRods.FirstOrDefault(x => x.ConsumablesId == weldJoint.WeldingRod);
|
||||
if (matRod != null)
|
||||
{
|
||||
foreach (var item in weldingRods)
|
||||
{
|
||||
if (matClass == "Fe-1" || matClass == "Fe-3")
|
||||
{
|
||||
if (IsCoverClass(matRod.SteelType, item.SteelType))
|
||||
{
|
||||
canWeldingRodName = canWeldingRodName + item.ConsumablesName + ",";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (matRod.SteelType == item.SteelType)
|
||||
{
|
||||
canWeldingRodName = canWeldingRodName + item.ConsumablesName + ",";
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(canWeldingRodName))
|
||||
{
|
||||
NewTask.CanWeldingRodName = canWeldingRodName.Substring(0, canWeldingRodName.Length - 1);
|
||||
}
|
||||
}
|
||||
var matWire = weldingWires.FirstOrDefault(x => x.ConsumablesId == weldJoint.WeldingWire);
|
||||
if (matWire != null)
|
||||
{
|
||||
foreach (var item in weldingWires)
|
||||
{
|
||||
if (matClass == "Fe-1" || matClass == "Fe-3")
|
||||
{
|
||||
if (IsCoverClass(matWire.SteelType, item.SteelType))
|
||||
{
|
||||
canWeldingWireName = canWeldingWireName + item.ConsumablesName + ",";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (matWire.SteelType == item.SteelType)
|
||||
{
|
||||
canWeldingWireName = canWeldingWireName + item.ConsumablesName + ",";
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(canWeldingWireName))
|
||||
{
|
||||
NewTask.CanWeldingWireName = canWeldingWireName.Substring(0, canWeldingWireName.Length - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
//NewTask.JointAttribute = drpJointAttribute.SelectedValue;
|
||||
NewTask.JointAttribute = weldJoint.JointAttribute;
|
||||
NewTask.WeldingMode = drpWeldingMode.SelectedValue;
|
||||
|
||||
NewTask.TaskDate = Convert.ToDateTime(txtTaskDate.Text);
|
||||
NewTask.Tabler = this.CurrUser.PersonId;
|
||||
NewTask.TableDate = DateTime.Now;
|
||||
|
||||
weldJoint.WeldingMode = drpWeldingMode.SelectedValue;
|
||||
BLL.WeldJointService.UpdateWeldJoint(weldJoint);
|
||||
BLL.WeldTaskService.AddWeldTask(NewTask);
|
||||
}
|
||||
//string pipelineId = this.tvControlItem.SelectedNodeID;
|
||||
//var model = BLL.PipelineService.GetPipelineByPipelineId(pipelineId);
|
||||
//model.State = 1;
|
||||
//PipelineService.UpdatePipeline(model);
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
if (IsCloseForm)
|
||||
{
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(txtTaskDate.Text) + ActiveWindow.GetHidePostBackReference());
|
||||
|
||||
}*/
|
||||
//PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 判断耗材强度是否大于WPS耗材强度,如是为true,否则为false
|
||||
/// </summary>
|
||||
/// <param name="wpsClass"></param>
|
||||
/// <param name="matClass"></param>
|
||||
/// <returns></returns>
|
||||
private bool IsCoverClass(string wpsClass, string matClass)
|
||||
{
|
||||
bool isCover = false;
|
||||
/*int wpsSn = 0;
|
||||
int matSn = 0;
|
||||
if (wpsClass.Length > 2 && matClass.Length > 2)
|
||||
{
|
||||
string wpsPre = wpsClass.Substring(0, wpsClass.Length - 2);
|
||||
string matPre = matClass.Substring(0, matClass.Length - 2);
|
||||
|
||||
string wps = wpsClass.Substring(wpsClass.Length - 1, 1);
|
||||
wpsSn = Funs.GetNewInt(wps).HasValue ? Funs.GetNewInt(wps).Value : 0;
|
||||
|
||||
string mat = matClass.Substring(matClass.Length - 1, 1);
|
||||
matSn = Funs.GetNewInt(mat).HasValue ? Funs.GetNewInt(mat).Value : 0;
|
||||
|
||||
if (wpsPre == matPre && matSn >= wpsSn)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}*/
|
||||
return isCover;
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void txtTaskDate_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
// this.txtTaskCode.Text = BLL.WeldTaskService.GetTaskCodeByDate(this.CurrUser.LoginProjectId, this.txtTaskDate.Text, UnitWorkId, drpUnit.SelectedValue);
|
||||
}
|
||||
protected void drpUnit_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
//this.txtTaskCode.Text = BLL.WeldTaskService.GetTaskCodeByDate(this.CurrUser.LoginProjectId, this.txtTaskDate.Text, UnitWorkId, drpUnit.SelectedValue);
|
||||
|
||||
}
|
||||
protected void drpJointAttribute_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Save();
|
||||
BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 行绑定事件(没有焊接方法无法选择)
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
|
||||
private void Save()
|
||||
{
|
||||
/*DataRowView row = e.DataItem as DataRowView;
|
||||
if (string.IsNullOrEmpty(row["WeldingMethodCode"].ToString()))
|
||||
var List_Id = Grid1.SelectedRowIDArray;
|
||||
if (List_Id != null)
|
||||
{
|
||||
e.RowSelectable = false;
|
||||
|
||||
};*/
|
||||
}
|
||||
|
||||
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||
{
|
||||
|
||||
if (e.CommandName == "ResetWpq")
|
||||
{
|
||||
/*var weldJointId = e.RowID;
|
||||
var model = WeldJointService.GetWeldJointByWeldJointId(weldJointId);
|
||||
if (model != null)
|
||||
foreach (var id in List_Id)
|
||||
{
|
||||
model.WPQId = null;
|
||||
WeldJointService.UpdateWeldJoint(model);
|
||||
|
||||
List<Model.View_HJGL_WPQ> wpqList = BLL.WPQListServiceService.GetMatchWPQ(model, this.CurrUser.LoginProjectId, drpUnit.SelectedValue);
|
||||
if (wpqList != null)
|
||||
var hJGL_PipeLineMat = BLL.PipelineMatService.GetPipeLineMat(id);
|
||||
if (hJGL_PipeLineMat != null)
|
||||
{
|
||||
Model.HJGL_WeldJoint newJot = new Model.HJGL_WeldJoint();
|
||||
Model.WPQ_WPQList wps = BLL.WPQListServiceService.GetWPQById(wpqList.First().WPQId);
|
||||
|
||||
newJot.WPQId = wps.WPQId;
|
||||
newJot.WeldJointId = model.WeldJointId;
|
||||
newJot.WeldingRod = wps.WeldingRod;
|
||||
newJot.WeldingWire = wps.WeldingWire;
|
||||
newJot.WeldingMethodId = wps.WeldingMethodId;
|
||||
newJot.GrooveTypeId = wps.GrooveType;
|
||||
newJot.PreTemperature = wps.PreTemperature;
|
||||
newJot.IsHotProess = wps.IsHotProess;
|
||||
newJot.MatchableWPQ = string.Join(",", wpqList.Select(x => x.WPQCode));
|
||||
|
||||
BLL.WeldJointService.UpdateConWeldJoint(newJot);
|
||||
var model = new Model.Tw_InOutPlanDetail_Relation()
|
||||
{
|
||||
Id = SQLHelper.GetNewID(),
|
||||
PipelineId = hJGL_PipeLineMat.PipelineId,
|
||||
MaterialCode = hJGL_PipeLineMat.MaterialCode,
|
||||
Number = hJGL_PipeLineMat.Number,
|
||||
PrefabricatedComponents = hJGL_PipeLineMat.PrefabricatedComponents,
|
||||
InOutPlanMasterId = Id,
|
||||
};
|
||||
TwInoutplandetailRelationService.Add(model);
|
||||
}
|
||||
|
||||
BindGrid();
|
||||
ShowNotify("焊评已重置!", MessageBoxIcon.Success);
|
||||
}*/
|
||||
}
|
||||
}
|
||||
}
|
||||
TwInOutplandetailService.GenInOutPlanDetailByInoutPlanMasterId(Id);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user