using System;
using System.Collections.Generic;
using System.Linq;
using BLL;
namespace FineUIPro.Web.WeldingProcess.CheckManage
{
public partial class RepairNotice : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
string ndeItemId = Request.Params["NDEItemID"];
var q = BLL.Batch_NDEItemService.GetNDEItemViewById(ndeItemId);
txtPipeCode.Text = q.PipelineCode;
txtWeldJointCode.Text = q.WeldJointCode;
txtWelder.Text = q.WelderCode;
txtJudgeGrade.Text = q.JudgeGrade;
txtRepairLocation.Text = q.RepairLocation;
txtCheckDefects.Text = BLL.Base_DefectService.GetDefectNameStrByDefectIdStr(q.CheckDefects);
var repair = BLL.RepairRecordService.GetRepairRecordByNdeItemId(ndeItemId);
if (repair == null)
{
var mark = from x in BLL.Funs.DB.Repair_RepairRecord
where x.WeldJointId == q.WeldJointId && x.DetectionTypeId == q.DetectionTypeId
orderby x.RepairMark descending
select x;
if (mark.Count() == 0)
{
txtRepairMark.Text = "R1";
}
else
{
string m = mark.First().RepairMark;
string first = m.Substring(0, 1);
string last = m.Substring(1, 1);
int n = Convert.ToInt32(last) + 1;
txtRepairMark.Text = first + n.ToString();
}
btnSubmit.Hidden = false;
}
else
{
btnSubmit.Hidden = true;
txtRepairMark.Text = "R1";
if (!string.IsNullOrEmpty(repair.PhotoUrl))
{
imgPhoto.ImageUrl = repair.PhotoUrl;
}
}
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
string ndeItemId = Request.Params["NDEItemID"];
var q = BLL.Batch_NDEItemService.GetNDEItemViewById(ndeItemId);
var repair = BLL.RepairRecordService.GetRepairRecordByNdeItemId(ndeItemId);
Model.Repair_RepairRecord newItem = new Model.Repair_RepairRecord();
if (repair == null)
{
newItem.RepairRecordId = SQLHelper.GetNewID(typeof(Model.Repair_RepairRecord));
string code = q.TrustBatchCode;
if (code.Substring(code.Length - 2, 1) == "R")
{
string first = code.Substring(0, code.Length - 1);
string last = code.Substring(code.Length - 1);
int n = Convert.ToInt32(last) + 1;
newItem.RepairRecordCode = first + n.ToString();
}
else
{
if (code.Substring(code.Length - 2, 1) == "K")
{
newItem.RepairRecordCode = q.TrustBatchCode.Substring(0, code.Length - 2) + "-" + q.WeldJointCode + "K1R1";
}
else
{
if (q.JudgeGrade == "修磨" || q.JudgeGrade == "异物")
{
newItem.RepairRecordCode = q.TrustBatchCode + "-" + q.WeldJointCode + "M1";
}
else
{
newItem.RepairRecordCode = q.TrustBatchCode + "-" + q.WeldJointCode + "R1";
}
}
}
newItem.ProjectId = q.ProjectId;
newItem.UnitId = q.UnitId;
newItem.InstallationId = q.InstallationId;
newItem.WorkAreaId = q.WorkAreaId;
newItem.NoticeDate = DateTime.Now;
newItem.NDEItemID = ndeItemId;
newItem.WeldJointId = q.WeldJointId;
newItem.DetectionTypeId = q.DetectionTypeId;
newItem.WelderId = q.BackingWelderId;
newItem.RepairLocation = q.RepairLocation;
newItem.CheckDefects = txtCheckDefects.Text;
newItem.RepairMark = txtRepairMark.Text;
newItem.PhotoUrl = imgPhoto.ImageUrl;
BLL.RepairRecordService.AddRepairRecord(newItem);
}
else
{
ShowNotify("已生成返修通知单!不能重复生成", MessageBoxIcon.Warning);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
//repair.CheckDefects = txtCheckDefects.Text;
//repair.RepairMark = txtRepairMark.Text;
//repair.PhotoUrl = imgPhoto.ImageUrl;
//BLL.RepairRecordService.UpdateRepairRecord(repair);
}
ShowNotify("生成返修通知单!", MessageBoxIcon.Success);
}
#region 上传电子签名图片
///
/// 上传照片
///
///
///
protected void filePhoto_FileSelected(object sender, EventArgs e)
{
if (filePhoto.HasFile)
{
string fileName = filePhoto.ShortFileName;
if (!ValidateFileType(fileName))
{
ShowNotify("无效的文件类型!");
return;
}
fileName = fileName.Replace(":", "_").Replace(" ", "_").Replace("\\", "_").Replace("/", "_");
fileName = DateTime.Now.Ticks.ToString() + "_" + fileName;
filePhoto.SaveAs(Server.MapPath("~/upload/" + fileName));
imgPhoto.ImageUrl = "~/upload/" + fileName;
// 清空文件上传组件
filePhoto.Reset();
}
}
#endregion
}
}