using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.common.BaseInfo
{
public partial class ProjectYlrqSave : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadData();
IsPostLoad();
}
}
///
/// 关闭按钮加载
///
private void LoadData()
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
}
///
/// 首次加载
///
public void IsPostLoad()
{
string projectId = Request.QueryString["ProjectId"];
///创建人
this.drpCreateMan.SelectedValue = this.CurrUser.UserId;
this.drpCreateMan.DataTextField = "UserName";
this.drpCreateMan.DataValueField = "UserId";
this.drpCreateMan.DataSource = BLL.Sys_UserService.GetUserList();
this.drpCreateMan.DataBind();
Funs.FineUIPleaseSelect(this.drpCreateMan);
this.drpCreateMan.SelectedValue = this.CurrUser.UserId;
//项目经理
this.ddlProjectPrincipal.SelectedValue = this.CurrUser.UserId;
this.ddlProjectPrincipal.DataTextField = "UserName";
this.ddlProjectPrincipal.DataValueField = "UserName";
this.ddlProjectPrincipal.DataSource = BLL.Sys_UserService.GetUserList();
this.ddlProjectPrincipal.DataBind();
Funs.FineUIPleaseSelect(this.ddlProjectPrincipal);
if (!String.IsNullOrEmpty(projectId))
{
var q = BLL.Base_ProjectService.GetProjectByProjectId(projectId);
if (q != null)
{
txtProjectCode.Text = q.ProjectCode;
txtProjectName.Text = q.ProjectName;
if (q.StartDate.HasValue)
{
txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", q.StartDate);
}
if (q.EndDate.HasValue)
{
txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", q.EndDate);
}
if (!string.IsNullOrEmpty(q.CreateManId))
{
this.drpCreateMan.SelectedValue = q.CreateManId;
}
this.ddlProjectPrincipal.SelectedValue = q.ProjectPrincipal;
txtEquipmentName.Text = q.EquipmentName;
txtTagNum.Text = q.TagNum;
txtProductNum.Text = q.ProductNum;
txtBodyMaterial.Text = q.BodyMaterial;
}
}
}
///
/// 保存
///
protected void btnSave_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.ProjectMenuId, Const.BtnSave))
{
if (this.drpCreateMan.SelectedValue == BLL.Const._Null)
{
ShowNotify("请选择创建人!");
return;
}
if (this.ddlProjectPrincipal.SelectedValue == BLL.Const._Null)
{
ShowNotify("请选择项目经理!");
return;
}
Model.Base_Project project = new Base_Project();
string projectId = Request.QueryString["ProjectId"];
project.ProjectCode = txtProjectCode.Text.Trim();
project.ProjectName = txtProjectName.Text.Trim();
if (!string.IsNullOrEmpty(txtStartDate.Text.Trim()))
{
project.StartDate = Convert.ToDateTime(txtStartDate.Text.Trim());
}
if (!string.IsNullOrEmpty(txtEndDate.Text.Trim()))
{
project.EndDate = Convert.ToDateTime(txtEndDate.Text.Trim());
}
project.ProjectPrincipal = this.ddlProjectPrincipal.SelectedValue;
project.CreateManId = this.drpCreateMan.SelectedValue;
project.ProjectSoft = "2";
project.EquipmentName = txtEquipmentName.Text;
project.TagNum = txtTagNum.Text;
project.ProductNum = txtProductNum.Text;
project.BodyMaterial = txtBodyMaterial.Text;
project.IsClosed = false;
if (string.IsNullOrEmpty(projectId))
{
//var exProjectNameCount = Funs.DB.Base_Project.Count(p => p.ProjectName == txtProjectName.Text.Trim());
//if (exProjectNameCount > 0)
//{
// Alert.ShowInParent($"项目名称({txtProjectName.Text.Trim()})已存在!");
// return;
//}
string newProjectId = SQLHelper.GetNewID(typeof(Model.Base_Project));
projectId = newProjectId;
project.ProjectId = newProjectId;
if (Funs.DB.Base_Project.Count(p => p.ProjectCode == txtProjectCode.Text.Trim() && p.EquipmentName == txtEquipmentName.Text.Trim() && p.ProductNum == txtProductNum.Text.Trim()) == 0)
{
BLL.Base_ProjectService.AddProject(project);
if (this.CurrUser.UserId != BLL.Const.GlyId)
{
// 给新项目项目单位插入当前用户单位
Model.Project_Unit newUnit = new Model.Project_Unit();
newUnit.ProjectId = newProjectId;
newUnit.UnitId = this.CurrUser.UnitId;
newUnit.InTime = System.DateTime.Now;
BLL.Project_UnitService.AddProject_Unit(newUnit);
// 给新项目项目用户插入当前用户
Model.Project_User newUser = new Model.Project_User();
newUser.ProjectId = newProjectId;
newUser.UserId = this.CurrUser.UserId;
newUser.IsPost = true;
BLL.Project_UserService.AddProject_User(newUser);
}
//if (project.ProjectSoft == "2")//当选择压力容器时,在新项目中增加制造分公司
//{
// Model.Project_Unit projectUnit = new Project_Unit();
// projectUnit.UnitId = BLL.Const.zzfgsId;//制造分公司Id
// projectUnit.ProjectId = newProjectId;
// projectUnit.UnitType = BLL.Const.UnitType_4; // 施工
// BLL.Project_UnitService.AddProject_Unit(projectUnit);
//}
BLL.Sys_LogService.AddLog(BLL.Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "添加压力容器项目信息");
}
else
{
Alert.ShowInParent($"施工号({txtProjectCode.Text.Trim()}),设备名称({txtEquipmentName.Text.Trim()}),产品编号({txtProductNum.Text.Trim()})已存在!");
return;
}
}
else
{
//var exProjectNameCount = Funs.DB.Base_Project.Count(p => p.ProjectName == txtProjectName.Text.Trim() && p.ProjectId != projectId);
//if (exProjectNameCount > 0)
//{
// Alert.ShowInParent($"项目名称({txtProjectName.Text.Trim()})已存在!");
// return;
//}
if (Funs.DB.Base_Project.Count(p => p.ProjectCode == txtProjectCode.Text.Trim() && p.EquipmentName == txtEquipmentName.Text.Trim() && p.ProductNum == txtProductNum.Text.Trim() && p.ProjectId != projectId) == 0)
{
Model.Base_Project oldProject = BLL.Base_ProjectService.GetProjectByProjectId(projectId);
project.ProjectId = projectId;
project.TestEngineeringCode = oldProject.TestEngineeringCode;
BLL.Base_ProjectService.UpdateProject(project);
BLL.Sys_LogService.AddLog(BLL.Const.System_1, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "修改项目信息");
}
else
{
Alert.ShowInParent($"施工号({txtProjectCode.Text.Trim()}),设备名称({txtEquipmentName.Text.Trim()}),产品编号({txtProductNum.Text.Trim()})已存在!");
return;
}
}
// 关闭本窗体,然后回发父窗体
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!");
}
}
}
}