using BLL;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class SuperviseCheckRectifyEdit : PageBase
{
#region 定义变量
///
/// 主键
///
public string SuperviseCheckRectifyId
{
get
{
return (string)ViewState["SuperviseCheckRectifyId"];
}
set
{
ViewState["SuperviseCheckRectifyId"] = value;
}
}
///
/// 定义集合
///
private static List superviseCheckRectifyItems = new List();
#endregion
#region 加载页面
///
/// 加载页面
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
////权限按钮方法
this.GetButtonPower();
this.SuperviseCheckRectifyId = Request.Params["SuperviseCheckRectifyId"];
if (!string.IsNullOrEmpty(this.SuperviseCheckRectifyId))
{
var rectify = Funs.DB.View_Supervise_SuperviseCheckRectify.FirstOrDefault(x => x.SuperviseCheckRectifyId == this.SuperviseCheckRectifyId);
if (rectify != null)
{
this.lbUnitName.Text = rectify.UnitName;
this.lbProjectName.Text = rectify.ProjectName;
this.lbSuperviseCheckRectifyCode.Text = rectify.SuperviseCheckRectifyCode;
if (!string.IsNullOrEmpty(rectify.IssueMan))
{
this.txtIssueMan.Text = rectify.IssueMan;
}
else
{
this.txtIssueMan.Text = this.CurrUser.UserName;
}
if (rectify.IssueDate != null)
{
this.txtIssueDate.Text = string.Format("{0:yyyy-MM-dd}", rectify.IssueDate);
}
else
{
this.txtIssueDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
}
//this.btnUpdata.Hidden = true;
//if (rectify.IsFromMainUnit == true)
//{
// this.btnUpdata.Hidden = false;
//}
superviseCheckRectifyItems = (from x in Funs.DB.View_Supervise_SuperviseCheckRectifyItem where x.SuperviseCheckRectifyId == this.SuperviseCheckRectifyId orderby x.RectifyCode select x).ToList();
Grid1.DataSource = superviseCheckRectifyItems;
Grid1.DataBind();
}
}
}
}
#endregion
#region 保存
///
/// 保存按钮
///
///
///
protected void btnSave_Click(object sender, EventArgs e)
{
Save("add");
}
//protected void btnUpdata_Click(object sender, EventArgs e)
//{
// Save("updata");
//}
///
/// 保存
///
///
private void Save(string type)
{
Model.Supervise_SuperviseCheckRectify superviseCheckRectify = BLL.SuperviseCheckRectifyService.GetSuperviseCheckRectifyById(Request.Params["SuperviseCheckRectifyId"]);
superviseCheckRectify.IssueMan = this.txtIssueMan.Text.Trim();
if (!string.IsNullOrEmpty(this.txtIssueDate.Text.Trim()))
{
superviseCheckRectify.IssueDate = Convert.ToDateTime(this.txtIssueDate.Text.Trim());
}
BLL.SuperviseCheckRectifyItemService.DeleteSuperviseCheckRectifyItemBySuperviseCheckRectifyId(Request.Params["SuperviseCheckRectifyId"]);
jerqueSaveList();
bool result = true;
bool resultAll = true;
foreach (var item in superviseCheckRectifyItems)
{
Model.Supervise_SuperviseCheckRectifyItem newSuperviseCheckRectifyItem = new Model.Supervise_SuperviseCheckRectifyItem
{
SuperviseCheckRectifyItemId = item.SuperviseCheckRectifyItemId,
SuperviseCheckRectifyId = item.SuperviseCheckRectifyId,
RectifyItemId = item.RectifyItemId,
ConfirmMan = item.ConfirmMan,
ConfirmDate = item.ConfirmDate,
OrderEndDate = item.OrderEndDate,
OrderEndPerson = item.OrderEndPerson,
RealEndDate = item.RealEndDate,
AttachUrl = item.AttachUrl,
VerifierName = item.VerifierName,
VerifierDate = item.VerifierDate,
};
if (!item.RealEndDate.HasValue)
{
result = false;
}
if (!item.VerifierDate.HasValue || string.IsNullOrEmpty(item.VerifierName))
{
resultAll = false;
}
BLL.SuperviseCheckRectifyItemService.AddSuperviseCheckRectifyItem(newSuperviseCheckRectifyItem);
}
if (result) //已全部确认完成
{
superviseCheckRectify.HandleState = "3"; //待验收
if (resultAll)
{
superviseCheckRectify.HandleState = "4"; //已闭环
}
}
else
{
superviseCheckRectify.HandleState = "2"; //已签发但未完成
}
BLL.SuperviseCheckRectifyService.UpdateSuperviseCheckRectify(superviseCheckRectify);
BLL.LogService.AddSys_Log(this.CurrUser, superviseCheckRectify.SuperviseCheckRectifyCode, superviseCheckRectify.SuperviseCheckRectifyId, BLL.Const.SuperviseCheckRectifyMenuId, Const.BtnModify);
if (type == "updata" && superviseCheckRectify.IsFromMainUnit == true) //保存并上报
{
Update(this.SuperviseCheckRectifyId);
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
#region 上传到集团公司
///
/// 上传到集团公司
///
///
private void Update(string superviseCheckRectifyId)
{
/////创建客户端服务
//var poxy = Web.ServiceProxy.CreateServiceClient();
//poxy.DataInsertSupervise_SuperviseCheckRectifyTableCompleted += new EventHandler(poxy_DataInsertSupervise_SuperviseCheckRectifyTableCompleted);
//var rectify = from x in Funs.DB.View_SuperviseCheckRectify
// where x.RealEndDate != null && x.SuperviseCheckRectifyId == superviseCheckRectifyId && x.IsFromMainUnit == true
// select new HSSEService.Supervise_SuperviseCheckRectify
// {
// SuperviseCheckRectifyId = x.SuperviseCheckRectifyId,
// SuperviseCheckRectifyCode = x.SuperviseCheckRectifyCode,
// ProjectId = x.ProjectId,
// UnitId = x.UnitId,
// CheckDate = x.CheckDate,
// IssueMan = x.IssueMan,
// IssueDate = x.IssueDate,
// SuperviseCheckReportId = x.SuperviseCheckReportId,
// HandleState = x.HandleState,
// SuperviseCheckRectifyItemId = x.SuperviseCheckRectifyItemId,
// RectifyItemId = x.RectifyItemId,
// ConfirmMan = x.ConfirmMan,
// ConfirmDate = x.ConfirmDate,
// OrderEndDate = x.OrderEndDate,
// OrderEndPerson = x.OrderEndPerson,
// RealEndDate = x.RealEndDate,
// };
//poxy.DataInsertSupervise_SuperviseCheckRectifyTableAsync(rectify.ToList());
}
#endregion
#region 安全监督检查整改
///
/// 安全监督检查整改
///
///
///
//private void poxy_DataInsertSupervise_SuperviseCheckRectifyTableCompleted(object sender, HSSEService.DataInsertSupervise_SuperviseCheckRectifyTableCompletedEventArgs e)
//{
// if (e.Error == null)
// {
// var idList = e.Result;
// BLL.LogService.AddSys_Log(this.CurrUser, "【安全监督检查整改】上传到服务器" + idList.Count.ToString() + "条数据;", string.Empty, BLL.Const.SuperviseCheckRectifyMenuId, Const.BtnUploadResources);
// }
// else
// {
// BLL.LogService.AddSys_Log(this.CurrUser, "【安全监督检查整改】上传到服务器失败;", string.Empty, BLL.Const.SuperviseCheckRectifyMenuId, Const.BtnUploadResources);
// }
//}
#endregion
#region 保存集合
///
/// 保存集合
///
private void jerqueSaveList()
{
JArray mergedData = Grid1.GetMergedData();
foreach (JObject mergedRow in mergedData)
{
string status = mergedRow.Value("status");
JObject values = mergedRow.Value("values");
var item = superviseCheckRectifyItems.FirstOrDefault(e => e.SuperviseCheckRectifyItemId == values.Value("SuperviseCheckRectifyItemId"));
item.ConfirmMan = values.Value("ConfirmMan");
item.ConfirmDate = Funs.GetNewDateTime(values.Value("ConfirmDate"));
item.OrderEndDate = Funs.GetNewDateTime(values.Value("OrderEndDate"));
item.OrderEndPerson = values.Value("OrderEndPerson");
item.RealEndDate = Funs.GetNewDateTime(values.Value("RealEndDate"));
item.VerifierName = values.Value("VerifierName");
item.VerifierDate = Funs.GetNewDateTime(values.Value("VerifierDate"));
}
}
#endregion
#region 获取按钮权限
///
/// 获取按钮权限
///
///
///
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.SuperviseCheckRectifyMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnSave))
{
this.btnSave.Hidden = false;
}
//if (buttonList.Contains(BLL.Const.BtnSaveUp))
//{
// this.btnUpdata.Hidden = false;
//}
}
}
#endregion
}
}