943 lines
44 KiB
C#
943 lines
44 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using BLL;
|
|
using FineUIPro.Web.HSSE.Solution;
|
|
using Model;
|
|
using AspNet = System.Web.UI.WebControls;
|
|
|
|
namespace FineUIPro.Web.TestRun
|
|
{
|
|
public partial class DriverSchemeEdit : PageBase
|
|
{
|
|
#region 定义变量
|
|
|
|
/// <summary>
|
|
/// 方案审查主键
|
|
/// </summary>
|
|
public string ConstructSolutionId
|
|
{
|
|
get => (string)ViewState["ConstructSolutionId"];
|
|
set => ViewState["ConstructSolutionId"] = value;
|
|
}
|
|
|
|
#endregion
|
|
|
|
public int ContactImg
|
|
{
|
|
get => Convert.ToInt32(ViewState["ContactImg"]);
|
|
set => ViewState["ContactImg"] = value;
|
|
}
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
InitDropDownList(); //加载下拉框
|
|
ContactImg = 0;
|
|
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
|
|
ConstructSolutionId = Request.Params["constructSolutionId"];
|
|
rblIsAgree.Hidden = true;
|
|
txtProjectName.Text = ProjectService.GetProjectByProjectId(CurrUser.LoginProjectId).ProjectName;
|
|
|
|
if (!string.IsNullOrWhiteSpace(ConstructSolutionId))
|
|
{
|
|
bindApprove();
|
|
|
|
#region 初始化表单
|
|
|
|
HFConstructSolutionId.Text = ConstructSolutionId;
|
|
var constructSolution =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
txtCode.Text = constructSolution.Code;
|
|
if (!string.IsNullOrEmpty(constructSolution.UnitId))
|
|
{
|
|
drpUnit.SelectedValue = constructSolution.UnitId;
|
|
}
|
|
|
|
if (!string.IsNullOrEmpty(constructSolution.SolutionType))
|
|
{
|
|
this.hdSolutionType.Text = constructSolution.SolutionType;
|
|
this.txtSolutionType.Text = TestRunConstructSolutionService.ConvertSolutionType(constructSolution.SolutionType);
|
|
}
|
|
|
|
txtSystem.Text = constructSolution.System;
|
|
|
|
if (constructSolution.CompileDate != null)
|
|
{
|
|
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", constructSolution.CompileDate);
|
|
}
|
|
|
|
txtUnitWork.Text = constructSolution.UnitWorkIds;
|
|
|
|
if (constructSolution.Edition != null)
|
|
{
|
|
txtEdition.Text = constructSolution.Edition.ToString();
|
|
}
|
|
|
|
txtSolutionName.Text = constructSolution.SolutionName;
|
|
txtDocContent.Text = HttpUtility.HtmlDecode(constructSolution.Content);
|
|
|
|
#endregion
|
|
if (constructSolution.State != BLL.Const.TestRunConstructSolution_Complete)
|
|
{
|
|
TestRunConstructSolutionService.Init(drpHandleType, constructSolution.State, false);
|
|
}
|
|
if (constructSolution.State == BLL.Const.TestRunConstructSolution_Compile || constructSolution.State == BLL.Const.TestRunConstructSolution_ReCompile)
|
|
{
|
|
this.rblIsAgree.Hidden = true;
|
|
UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
|
|
this.drpHandleMan.SelectedIndex = 1;
|
|
}
|
|
else
|
|
{
|
|
UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
|
|
//Funs.Bind(drpHandleMan, UserService.GetMainUserList(this.CurrUser.LoginProjectId));
|
|
this.rblIsAgree.Hidden = false;
|
|
}
|
|
if (constructSolution.State == Const.TestRunConstructSolution_ReCompile)
|
|
{
|
|
options.Hidden = true;
|
|
optio.Hidden = true;
|
|
}
|
|
|
|
if (constructSolution.State == Const.TestRunConstructSolution_Audit || constructSolution.State == Const.TestRunConstructSolution_Audit2)
|
|
{
|
|
txtProjectName.Enabled = false;
|
|
txtCode.Enabled = false;
|
|
drpUnit.Enabled = false;
|
|
//txtSolutionType.Enabled = false;
|
|
txtSystem.Enabled = false;
|
|
txtCompileDate.Enabled = false;
|
|
txtSolutionName.Enabled = false;
|
|
txtUnitWork.Enabled = false;
|
|
ContactImg = -2;
|
|
btnSave.Hidden = true;
|
|
txtDocContent.Readonly = true;
|
|
if (constructSolution.State == Const.TestRunConstructSolution_Audit2)
|
|
{
|
|
this.drpHandleMan.Items.Clear();
|
|
this.drpHandleMan.Enabled = false;
|
|
}
|
|
}
|
|
|
|
////提交版本人多次修改
|
|
//if (constructSolution.CompileMan.Equals(CurrUser.UserId))
|
|
//{
|
|
// txtProjectName.Enabled = true;
|
|
// txtCode.Enabled = true;
|
|
// drpUnit.Enabled = true;
|
|
// drpModelType.Enabled = true;
|
|
// drpSpecialType.Enabled = true;
|
|
// txtCompileDate.Enabled = true;
|
|
// txtSolutionName.Enabled = true;
|
|
// txtCNProfessional.Enabled = true;
|
|
// txtUnitWork.Enabled = true;
|
|
// ContactImg = 0;
|
|
// Panel2.Enabled = true;
|
|
// rblIsAgree.Hidden = true;
|
|
// rblIsAgree.Required = false;
|
|
// options.Hidden = true;
|
|
// txtOptions.Required = false;
|
|
// optio.Hidden = true;
|
|
//}
|
|
|
|
// if (drpModelType.SelectedItem.Text == "施工组织设计") drpSpecialType.Enabled = false;
|
|
}
|
|
else
|
|
{
|
|
txtEdition.Text = "0";
|
|
options.Hidden = true;
|
|
optio.Hidden = true;
|
|
plApprove2.Hidden = true;
|
|
txtCode.Text = SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId",
|
|
"dbo.Solution_TestRunConstructSolution", "Code", CurrUser.LoginProjectId);
|
|
this.txtSolutionType.Text = TestRunConstructSolutionService.ConvertSolutionType(Request.Params["SolutionType"]);
|
|
this.hdSolutionType.Text = Request.Params["SolutionType"];
|
|
TestRunConstructSolutionService.Init(drpHandleType, Const.TestRunConstructSolution_Compile, false);
|
|
UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
|
|
|
|
}
|
|
if (this.hdSolutionType.Text == "12")
|
|
{
|
|
this.txtUnitWork.Hidden = true;
|
|
this.txtSystem.Hidden = true;
|
|
}
|
|
AddAttachTab();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 向tab增加
|
|
/// </summary>
|
|
private void AddAttachTab()
|
|
{
|
|
if (string.IsNullOrEmpty(HFConstructSolutionId.Text)) //新增记录
|
|
HFConstructSolutionId.Text = SQLHelper.GetNewID(typeof(Solution_TestRunConstructSolution));
|
|
PageContext.RegisterStartupScript(TabStrip1.GetAddTabReference("dynamic_tab2",
|
|
string.Format(
|
|
"../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
|
ContactImg, HFConstructSolutionId.Text, Const.TestRunConstructSolutionMenuId), "附件",
|
|
IconHelper.GetIconUrl(Icon.Attach), false));
|
|
|
|
// PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/DocManage&menuId={1}", hdDocId.Text, Const.DocManageMenuId)));
|
|
}
|
|
|
|
private void InitDropDownList()
|
|
{
|
|
//SolutionTempleteTypeService.InitSolutionTempleteDropDownList(drpModelType, false);
|
|
UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpUnit, CurrUser.LoginProjectId,
|
|
Const.ProjectUnitType_2, false);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 审批列表
|
|
/// </summary>
|
|
private void bindApprove()
|
|
{
|
|
var list = TestRunConstructSolutionApproveService.getListData(ConstructSolutionId);
|
|
gvApprove.DataSource = list;
|
|
gvApprove.DataBind();
|
|
}
|
|
|
|
public string man(object man)
|
|
{
|
|
var appman = string.Empty;
|
|
if (UserService.GetUserByUserId(man.ToString()) != null)
|
|
appman = UserService.GetUserByUserId(man.ToString()).UserName;
|
|
return appman;
|
|
}
|
|
|
|
private void Save(string saveType)
|
|
{
|
|
var constructSolution = new Solution_TestRunConstructSolution();
|
|
if (!string.IsNullOrEmpty(ConstructSolutionId))
|
|
{
|
|
constructSolution =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
}
|
|
constructSolution.Code = txtCode.Text.Trim();
|
|
constructSolution.ProjectId = CurrUser.LoginProjectId;
|
|
if (drpUnit.SelectedValue != "0")
|
|
{
|
|
constructSolution.UnitId = drpUnit.SelectedValue;
|
|
}
|
|
constructSolution.SolutionType = this.hdSolutionType.Text.Trim();
|
|
|
|
constructSolution.System = txtSystem.Text.Trim();
|
|
|
|
constructSolution.SolutionName = txtSolutionName.Text.Trim();
|
|
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
|
{
|
|
constructSolution.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
|
}
|
|
|
|
constructSolution.UnitWorkIds = txtUnitWork.Text.Trim();
|
|
|
|
constructSolution.Edition = Convert.ToInt32(txtEdition.Text);
|
|
if (constructSolution.State == BLL.Const.TestRunConstructSolution_ReCompile)
|
|
{
|
|
constructSolution.Edition++;
|
|
}
|
|
constructSolution.ConstructSolutionId = HFConstructSolutionId.Text;
|
|
constructSolution.Content = txtDocContent.Text.Trim();
|
|
if (saveType == "submit")
|
|
{
|
|
constructSolution.State = drpHandleType.SelectedValue.Trim();
|
|
}
|
|
else
|
|
{
|
|
var constructSolution1 =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
|
|
if (constructSolution1 != null)
|
|
{
|
|
if (string.IsNullOrEmpty(constructSolution1.State))
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = constructSolution1.State;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(ConstructSolutionId))
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = BLL.TestRunConstructSolutionApproveService.GetThisApproveByConstructSolutionId(ConstructSolutionId);
|
|
if (approve1 != null && saveType == "submit")
|
|
{
|
|
approve1.ApproveDate = DateTime.Now;
|
|
approve1.ApproveIdea = txtOptions.Text.Trim();
|
|
approve1.IsAgree = Convert.ToBoolean(this.rblIsAgree.SelectedValue);
|
|
BLL.TestRunConstructSolutionApproveService.UpdateConstructSolutionApprove(approve1);
|
|
}
|
|
if (saveType == "submit")
|
|
{
|
|
if (this.drpHandleMan.Enabled == true)
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve.ConstructSolutionId = ConstructSolutionId;
|
|
if (this.drpHandleMan.SelectedValue != "0")
|
|
{
|
|
approve.ApproveMan = this.drpHandleMan.SelectedValue;
|
|
}
|
|
approve.ApproveType = this.drpHandleType.SelectedValue;
|
|
if (this.drpHandleType.SelectedValue == BLL.Const.TestRunConstructSolution_Complete)
|
|
{
|
|
approve.ApproveDate = DateTime.Now.AddMinutes(1);
|
|
}
|
|
approve.Edition = Convert.ToInt32(txtEdition.Text);
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
|
}
|
|
}
|
|
TestRunConstructSolutionService.UpdateConstructSolution(constructSolution);
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "修改施工方案");
|
|
}
|
|
else
|
|
{
|
|
constructSolution.CompileMan = CurrUser.UserId;
|
|
TestRunConstructSolutionService.AddConstructSolution(constructSolution);
|
|
if (saveType == "submit")
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
approve1.ApproveDate = DateTime.Now;
|
|
approve1.ApproveMan = this.CurrUser.UserId;
|
|
approve1.ApproveType = BLL.Const.TestRunConstructSolution_Compile;
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
|
|
|
Model.Solution_TestRunConstructSolutionApprove approve = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
if (this.drpHandleMan.SelectedValue != "0")
|
|
{
|
|
approve.ApproveMan = this.drpHandleMan.SelectedValue;
|
|
}
|
|
approve.ApproveType = this.drpHandleType.SelectedValue;
|
|
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
|
}
|
|
else
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
approve1.ApproveMan = this.CurrUser.UserId;
|
|
approve1.ApproveType = BLL.Const.TestRunConstructSolution_Compile;
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
|
}
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "添加施工方案");
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 判断是否全部同意
|
|
/// </summary>
|
|
private void CheckIsAllAgree()
|
|
{
|
|
var edtion = Convert.ToInt32(txtEdition.Text);
|
|
var constructSolution =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
var allApproves = TestRunConstructSolutionApproveService.GetHandleConstructSolutionApprovesByConstructSolutionId(ConstructSolutionId,
|
|
constructSolution.Edition == null ? 0 : Convert.ToInt32(constructSolution.Edition));
|
|
|
|
var needApporveCount = allApproves.Where(x => x.ApproveDate == null).Count();
|
|
if (needApporveCount > 0) return; //判断是否最后一个审批
|
|
|
|
var count = allApproves.Where(p =>
|
|
p.ApproveDate != null && p.IsAgree != null && Convert.ToBoolean(p.IsAgree)).Count(); //查询会签同意的
|
|
var fcount = allApproves.Where(p =>
|
|
p.ApproveDate != null && p.IsAgree != null && !Convert.ToBoolean(p.IsAgree)).Count(); //查询会签不同意的
|
|
if (count == allApproves.Count)//全部同意
|
|
{
|
|
var cons =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(
|
|
ConstructSolutionId);
|
|
cons.State = Const.TestRunConstructSolution_Complete;
|
|
cons.CompileDate = DateTime.Now;
|
|
TestRunConstructSolutionService.UpdateConstructSolution(cons);
|
|
}
|
|
|
|
//有不同意意见,打回重新编制
|
|
if (fcount > 0)
|
|
{
|
|
var cons =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(
|
|
ConstructSolutionId);
|
|
var reApprove = new Solution_TestRunConstructSolutionApprove();
|
|
reApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
reApprove.ApproveMan = cons.CompileMan;
|
|
reApprove.ApproveType = Const.TestRunConstructSolution_ReCompile;
|
|
edtion++;
|
|
reApprove.Edition = edtion;
|
|
TestRunConstructSolutionApproveService.AddConstructSolutionApprove(reApprove);
|
|
|
|
cons.State = Const.TestRunConstructSolution_ReCompile;
|
|
cons.CompileDate = DateTime.Now;
|
|
cons.Edition = edtion;
|
|
constructSolution.State = Const.TestRunConstructSolution_ReCompile;
|
|
TestRunConstructSolutionService.UpdateConstructSolution(cons);
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "修改施工方案");
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存验证
|
|
/// </summary>
|
|
/// <param name="buttonName"></param>
|
|
/// <param name="tip"></param>
|
|
public void validate(string buttonName, string tip)
|
|
{
|
|
if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.UserId,
|
|
Const.TestRunConstructSolutionMenuId, buttonName))
|
|
{
|
|
var err = string.Empty;
|
|
if (!AttachFileService.Getfile(HFConstructSolutionId.Text, Const.TestRunConstructSolutionMenuId))
|
|
err += "请上传附件,";
|
|
|
|
if (!string.IsNullOrWhiteSpace(err))
|
|
{
|
|
err = err.Substring(0, err.LastIndexOf(","));
|
|
err += "!";
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(err))
|
|
{
|
|
Alert.ShowInTop(err, MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(ConstructSolutionId))
|
|
{
|
|
//更新时操作
|
|
if (tip == "save")
|
|
EditConstructSol("save");
|
|
else
|
|
EditConstructSol("submit");
|
|
}
|
|
else
|
|
{
|
|
if (tip == "save")
|
|
SaveTestRunConstructSolution("save");
|
|
else
|
|
SaveTestRunConstructSolution("submit");
|
|
//添加时操作
|
|
}
|
|
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
|
if (tip == "save")
|
|
{
|
|
tip = "保存成功!";
|
|
}
|
|
else
|
|
{
|
|
tip = "提交成功!";
|
|
TestRunConstructSolutionApproveService.PushMessageToNextMan(ConstructSolutionId);
|
|
}
|
|
|
|
Alert.ShowInTop(tip, MessageBoxIcon.Success);
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
}
|
|
}
|
|
#region 添加时候的保存
|
|
|
|
/// <summary>
|
|
/// 保存方案审查
|
|
/// </summary>
|
|
/// <param name="saveType">保存类型</param>
|
|
private void SaveTestRunConstructSolution(string saveType)
|
|
{
|
|
var constructSolution = new Solution_TestRunConstructSolution();
|
|
constructSolution.Code = txtCode.Text.Trim();
|
|
constructSolution.ProjectId = CurrUser.LoginProjectId;
|
|
if (drpUnit.SelectedValue != "0")
|
|
{
|
|
constructSolution.UnitId = drpUnit.SelectedValue;
|
|
}
|
|
|
|
constructSolution.SolutionType = this.hdSolutionType.Text.Trim();
|
|
|
|
constructSolution.System = txtSystem.Text.Trim();
|
|
|
|
constructSolution.SolutionName = txtSolutionName.Text.Trim();
|
|
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
|
{
|
|
constructSolution.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
|
}
|
|
|
|
constructSolution.UnitWorkIds = txtUnitWork.Text.Trim();
|
|
|
|
if (saveType == "submit")
|
|
{
|
|
constructSolution.State = drpHandleType.SelectedValue.Trim();
|
|
}
|
|
else
|
|
{
|
|
var constructSolution1 =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
|
|
if (constructSolution1 != null)
|
|
{
|
|
if (string.IsNullOrEmpty(constructSolution1.State))
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = constructSolution1.State;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
}
|
|
|
|
constructSolution.CompileMan = CurrUser.UserId;
|
|
constructSolution.Edition = Convert.ToInt32(txtEdition.Text);
|
|
constructSolution.ConstructSolutionId = HFConstructSolutionId.Text;
|
|
constructSolution.Content = txtDocContent.Text.Trim();
|
|
|
|
if (!string.IsNullOrEmpty(ConstructSolutionId))
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = BLL.TestRunConstructSolutionApproveService.GetThisApproveByConstructSolutionId(ConstructSolutionId);
|
|
if (approve1 != null && saveType == "submit")
|
|
{
|
|
approve1.ApproveDate = DateTime.Now;
|
|
approve1.ApproveIdea = txtOptions.Text.Trim();
|
|
approve1.IsAgree = Convert.ToBoolean(this.rblIsAgree.SelectedValue);
|
|
BLL.TestRunConstructSolutionApproveService.UpdateConstructSolutionApprove(approve1);
|
|
}
|
|
if (saveType == "submit")
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve.ConstructSolutionId = ConstructSolutionId;
|
|
if (this.drpHandleMan.SelectedValue != "0")
|
|
{
|
|
approve.ApproveMan = this.drpHandleMan.SelectedValue;
|
|
}
|
|
approve.ApproveType = this.drpHandleType.SelectedValue;
|
|
if (this.drpHandleType.SelectedValue == BLL.Const.TestRunConstructSolution_Complete)
|
|
{
|
|
approve.ApproveDate = DateTime.Now.AddMinutes(1);
|
|
}
|
|
approve.Edition = Convert.ToInt32(txtEdition.Text);
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
|
}
|
|
TestRunConstructSolutionService.UpdateConstructSolution(constructSolution);
|
|
}
|
|
else
|
|
{
|
|
TestRunConstructSolutionService.AddConstructSolution(constructSolution);
|
|
if (saveType == "submit")
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
approve1.ApproveDate = DateTime.Now;
|
|
approve1.ApproveMan = this.CurrUser.UserId;
|
|
approve1.ApproveType = BLL.Const.TestRunConstructSolution_Compile;
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
|
|
|
Model.Solution_TestRunConstructSolutionApprove approve = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
if (this.drpHandleMan.SelectedValue != "0")
|
|
{
|
|
approve.ApproveMan = this.drpHandleMan.SelectedValue;
|
|
}
|
|
approve.ApproveType = this.drpHandleType.SelectedValue;
|
|
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
|
}
|
|
else
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
approve1.ApproveMan = this.CurrUser.UserId;
|
|
approve1.ApproveType = BLL.Const.TestRunConstructSolution_Compile;
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
|
}
|
|
}
|
|
|
|
|
|
//if (saveType == "submit")
|
|
//{
|
|
// var approve1 = new Solution_TestRunConstructSolutionApprove();
|
|
// approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
// approve1.ApproveDate = DateTime.Now;
|
|
// approve1.ApproveMan = CurrUser.UserId;
|
|
// approve1.ApproveType = Const.TestRunConstructSolution_Compile;
|
|
// approve1.Edition = Convert.ToInt32(txtEdition.Text);
|
|
// TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
|
//}
|
|
|
|
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "添加施工方案");
|
|
|
|
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "编制方案审查");
|
|
}
|
|
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// 删除未选择的代办记录
|
|
/// </summary>
|
|
/// <param name="constructSolutionId"></param>
|
|
private void delSolutionApprove(string constructSolutionId, string man, string signType)
|
|
{
|
|
var count = TestRunConstructSolutionApproveService.getListSolutionApproveCount(constructSolutionId, man,
|
|
signType);
|
|
if (count > 0) TestRunConstructSolutionApproveService.delSolutionApprove(constructSolutionId, man);
|
|
}
|
|
|
|
//protected void imgBtnFile_Click(object sender, EventArgs e)
|
|
//{
|
|
// if (string.IsNullOrEmpty(HFConstructSolutionId.Text)) //新增记录
|
|
// HFConstructSolutionId.Text = SQLHelper.GetNewID(typeof(Solution_TestRunConstructSolution));
|
|
// PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
|
// string.Format(
|
|
// "../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
|
// ContactImg, HFConstructSolutionId.Text, Const.TestRunConstructSolutionMenuId)));
|
|
//}
|
|
|
|
protected void btnapprove_Click(object sender, EventArgs e)
|
|
{
|
|
//HFConstructSolutionId.Text
|
|
var approve =
|
|
TestRunConstructSolutionApproveService.GetConstructSolutionApproveByApproveMan(HFConstructSolutionId.Text,
|
|
CurrUser.UserId);
|
|
if (approve != null)
|
|
{
|
|
var approveId = approve.ConstructSolutionApproveId;
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
|
string.Format(
|
|
"../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
|
0, approveId, Const.TestRunConstructSolutionMenuId)));
|
|
}
|
|
}
|
|
|
|
|
|
protected void gvApprove_RowCommand(object sender, GridCommandEventArgs e)
|
|
{
|
|
var keys = gvApprove.DataKeys[e.RowIndex];
|
|
var fileId = string.Empty;
|
|
if (keys == null)
|
|
return;
|
|
fileId = keys[0].ToString();
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
|
string.Format(
|
|
"../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
|
-1, fileId, Const.TestRunConstructSolutionMenuId)));
|
|
}
|
|
|
|
#region 保存/提交
|
|
|
|
protected void btnSave_Click(object sender, EventArgs e)
|
|
{
|
|
//validate(Const.BtnSave, "save");
|
|
if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.UserId,
|
|
Const.TestRunConstructSolutionMenuId, Const.BtnSave))
|
|
{
|
|
// SaveTestRunConstructSolution("save");
|
|
Save("save");
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
|
Alert.ShowInTop("保存成功!", MessageBoxIcon.Success);
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
}
|
|
}
|
|
|
|
protected void btnSubmit_Click(object sender, EventArgs e)
|
|
{
|
|
// validate(Const.BtnSubmit, "submmit");
|
|
//if (!CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.UserId,
|
|
// Const.TestRunConstructSolutionMenuId, Const.BtnSubmit))
|
|
//{
|
|
// Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
// return;
|
|
//}
|
|
var err = string.Empty;
|
|
if (!AttachFileService.Getfile(HFConstructSolutionId.Text, Const.TestRunConstructSolutionMenuId))
|
|
err += "请上传附件,";
|
|
|
|
if (!string.IsNullOrWhiteSpace(err))
|
|
{
|
|
err = err.Substring(0, err.LastIndexOf(","));
|
|
err += "!";
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(err))
|
|
{
|
|
Alert.ShowInTop(err, MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
|
|
Save("submit");
|
|
//TestRunConstructSolutionApproveService.PushMessageToNextMan(ConstructSolutionId);
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
|
Alert.ShowInTop("提交成功!", MessageBoxIcon.Success);
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 编辑时候保存
|
|
/// </summary>
|
|
private void EditConstructSol(string saveType)
|
|
{
|
|
var constructSolution = new Solution_TestRunConstructSolution();
|
|
constructSolution.Code = txtCode.Text.Trim();
|
|
constructSolution.ProjectId = CurrUser.LoginProjectId;
|
|
if (drpUnit.SelectedValue != "0")
|
|
{
|
|
constructSolution.UnitId = drpUnit.SelectedValue;
|
|
}
|
|
|
|
constructSolution.SolutionType = this.hdSolutionType.Text.Trim();
|
|
|
|
constructSolution.System = txtSystem.Text.Trim();
|
|
|
|
constructSolution.SolutionName = txtSolutionName.Text.Trim();
|
|
var edtion = Convert.ToInt32(txtEdition.Text);
|
|
constructSolution.Edition = edtion;
|
|
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
|
{
|
|
constructSolution.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
|
}
|
|
|
|
|
|
constructSolution.UnitWorkIds = txtUnitWork.Text.Trim();
|
|
if (saveType == "submit")
|
|
{
|
|
constructSolution.State = drpHandleType.SelectedValue.Trim();
|
|
}
|
|
else
|
|
{
|
|
var constructSolution1 =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
|
|
if (constructSolution1 != null)
|
|
{
|
|
if (string.IsNullOrEmpty(constructSolution1.State))
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = constructSolution1.State;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
constructSolution.State = BLL.Const.TestRunConstructSolution_Compile;
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(ConstructSolutionId))
|
|
{
|
|
constructSolution.ConstructSolutionId = ConstructSolutionId;
|
|
Model.Solution_TestRunConstructSolutionApprove approve1 = BLL.TestRunConstructSolutionApproveService.GetThisApproveByConstructSolutionId(ConstructSolutionId);
|
|
if (approve1 != null && saveType == "submit")
|
|
{
|
|
approve1.ApproveDate = DateTime.Now;
|
|
approve1.ApproveIdea = txtOptions.Text.Trim();
|
|
approve1.IsAgree = Convert.ToBoolean(this.rblIsAgree.SelectedValue);
|
|
BLL.TestRunConstructSolutionApproveService.UpdateConstructSolutionApprove(approve1);
|
|
}
|
|
if (saveType == "submit")
|
|
{
|
|
Model.Solution_TestRunConstructSolutionApprove approve = new Model.Solution_TestRunConstructSolutionApprove();
|
|
approve.ConstructSolutionId = ConstructSolutionId;
|
|
if (this.drpHandleMan.SelectedValue != "0")
|
|
{
|
|
approve.ApproveMan = this.drpHandleMan.SelectedValue;
|
|
}
|
|
approve.ApproveType = this.drpHandleType.SelectedValue;
|
|
if (this.drpHandleType.SelectedValue == BLL.Const.TestRunConstructSolution_Complete)
|
|
{
|
|
approve.ApproveDate = DateTime.Now.AddMinutes(1);
|
|
}
|
|
approve.Edition = Convert.ToInt32(txtEdition.Text);
|
|
BLL.TestRunConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
|
}
|
|
TestRunConstructSolutionService.UpdateConstructSolution(constructSolution);
|
|
//var constructSolution1 =
|
|
// TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
//if (saveType == "submit")
|
|
//{
|
|
// if (CurrUser.UserId != constructSolution1.CompileMan) //办理人不是编制人,提示查看审批信息
|
|
// {
|
|
// if (constructSolution1.State == Const.TestRunConstructSolution_Audit)
|
|
// {
|
|
// constructSolution.State = constructSolution1.State;
|
|
// }
|
|
// else
|
|
// {
|
|
// constructSolution.State = Const.TestRunConstructSolution_Audit;
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// constructSolution.State = constructSolution1.State;
|
|
// }
|
|
|
|
// if (!CurrUser.UserId.Equals(constructSolution1.CompileMan))
|
|
// {
|
|
// var approve = TestRunConstructSolutionApproveService.GetConstructSoluAppByApproveMan(
|
|
// ConstructSolutionId, CurrUser.UserId, Convert.ToInt32(constructSolution1.Edition));
|
|
// if (saveType == "submit")
|
|
// {
|
|
// approve.ApproveDate = DateTime.Now;
|
|
// }
|
|
|
|
// approve.Edition = Convert.ToInt32(edtion);
|
|
// approve.IsAgree = Convert.ToBoolean(rblIsAgree.SelectedValue);
|
|
// approve.ApproveIdea = txtOptions.Text.Trim();
|
|
// TestRunConstructSolutionApproveService.UpdateConstructSolutionApprove(approve);
|
|
// }
|
|
// else
|
|
// {
|
|
// if (saveType == "submit")
|
|
// {
|
|
// if (constructSolution1.State == Const.TestRunConstructSolution_Audit) //==会签状态升级版本
|
|
// {
|
|
// var reApprove = new Solution_TestRunConstructSolutionApprove();
|
|
// reApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
// reApprove.ApproveDate = DateTime.Now;
|
|
// reApprove.ApproveMan = constructSolution1.CompileMan;
|
|
// reApprove.ApproveType = Const.TestRunConstructSolution_ReCompile;
|
|
// edtion++;
|
|
// reApprove.Edition = edtion;
|
|
// TestRunConstructSolutionApproveService.AddConstructSolutionApprove(reApprove);
|
|
// }
|
|
// else
|
|
// {
|
|
// var approves =
|
|
// TestRunConstructSolutionApproveService.GetConstructSolApproveByApproveMan(
|
|
// ConstructSolutionId, constructSolution1.CompileMan);
|
|
// approves.ApproveDate = DateTime.Now;
|
|
// TestRunConstructSolutionApproveService.UpdateConstructSolutionApprove(approves);
|
|
// }
|
|
// }
|
|
// }
|
|
//}
|
|
//else
|
|
//{
|
|
// constructSolution.State = constructSolution1.State;
|
|
//}
|
|
|
|
////提交时候,更新提交版本
|
|
//if (CurrUser.UserId.Equals(constructSolution1.CompileMan))
|
|
//{
|
|
// if (constructSolution1.State != Const.TestRunConstructSolution_Audit)
|
|
// {
|
|
// edtion++;
|
|
// }
|
|
|
|
// constructSolution.Edition = Convert.ToInt32(edtion);
|
|
// constructSolution.State = Const.TestRunConstructSolution_Audit;
|
|
//}
|
|
|
|
//TestRunConstructSolutionService.UpdateConstructSolution(constructSolution);
|
|
////判断状态,全部会签同意,则审批完成
|
|
//if (saveType == "submit")
|
|
//{
|
|
// var allApproves =
|
|
// TestRunConstructSolutionApproveService.GetHandleConstructSolutionApprovesByConstructSolutionId(
|
|
// ConstructSolutionId,
|
|
// constructSolution.Edition == null ? 0 : Convert.ToInt32(constructSolution.Edition));
|
|
// var count = allApproves.Where(p =>
|
|
// p.ApproveDate != null && p.IsAgree != null && Convert.ToBoolean(p.IsAgree)).Count(); //查询会签同意的
|
|
// var fcount = allApproves.Where(p =>
|
|
// p.ApproveDate != null && p.IsAgree != null && !Convert.ToBoolean(p.IsAgree)).Count(); //查询会签不同意的
|
|
// if (count + fcount == allApproves.Count)
|
|
// {
|
|
// if (count == allApproves.Count)
|
|
// {
|
|
// var cons =
|
|
// TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(
|
|
// ConstructSolutionId);
|
|
// cons.State = Const.TestRunConstructSolution_Complete;
|
|
// cons.CompileDate = DateTime.Now;
|
|
// TestRunConstructSolutionService.UpdateConstructSolution(cons);
|
|
// }
|
|
|
|
// //有不同意意见,打回重新编制
|
|
// if (fcount > 0)
|
|
// {
|
|
// var cons =
|
|
// TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(
|
|
// ConstructSolutionId);
|
|
// var reApprove = new Solution_TestRunConstructSolutionApprove();
|
|
// reApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
|
// reApprove.ApproveMan = cons.CompileMan;
|
|
// reApprove.ApproveType = Const.TestRunConstructSolution_ReCompile;
|
|
// edtion++;
|
|
// reApprove.Edition = edtion;
|
|
// TestRunConstructSolutionApproveService.AddConstructSolutionApprove(reApprove);
|
|
|
|
// cons.State = Const.TestRunConstructSolution_ReCompile;
|
|
// cons.CompileDate = DateTime.Now;
|
|
// constructSolution.State = Const.TestRunConstructSolution_ReCompile;
|
|
// TestRunConstructSolutionService.UpdateConstructSolution(cons);
|
|
// }
|
|
// }
|
|
//}
|
|
|
|
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId,
|
|
Const.TestRunConstructSolutionMenuId, "修改施工方案");
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
protected void rblIsAgree_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
this.drpHandleMan.Enabled = true;
|
|
var constructSolution =
|
|
TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
|
if (this.rblIsAgree.SelectedValue == "true")
|
|
{
|
|
this.drpHandleType.SelectedIndex = 0;
|
|
UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
|
|
this.drpHandleMan.SelectedIndex = 0;
|
|
if (constructSolution.State == Const.TestRunConstructSolution_Audit2)
|
|
{
|
|
this.drpHandleMan.Items.Clear();
|
|
this.drpHandleMan.Enabled = false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
this.drpHandleType.SelectedIndex = 1;
|
|
var approve = (from x in Funs.DB.Solution_TestRunConstructSolutionApprove where x.ConstructSolutionId == ConstructSolutionId && x.ApproveType == BLL.Const.TestRunConstructSolution_Compile select x).FirstOrDefault();
|
|
if (approve != null)
|
|
{
|
|
ListItem[] list = new ListItem[1];
|
|
list[0] = new ListItem(BLL.UserService.GetUserByUserId(approve.ApproveMan).UserName ?? "", approve.ApproveMan);
|
|
drpHandleMan.DataValueField = "Value";
|
|
drpHandleMan.DataTextField = "Text";
|
|
drpHandleMan.DataSource = list;
|
|
drpHandleMan.DataBind();
|
|
this.drpHandleMan.SelectedIndex = 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
protected void drpHandleType_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
}
|
|
} |