using BLL;
using System;
using System.Linq;
namespace FineUIPro.Web.JDGL.SGManPower
{
    public partial class ManPowerPlanEdit : PageBase
    {
        #region 定义项
        /// 
        /// 主键
        /// 
        private string Id
        {
            get
            {
                return (string)ViewState["Id"];
            }
            set
            {
                ViewState["Id"] = value;
            }
        }
        /// 
        /// 项目主键
        /// 
        public string ProjectId
        {
            get
            {
                return (string)ViewState["ProjectId"];
            }
            set
            {
                ViewState["ProjectId"] = value;
            }
        }
        #endregion
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                this.Id = Request.Params["Id"];
                this.ProjectId = this.CurrUser.LoginProjectId;
                BLL.UnitService.GetUnit(this.drpUnit, ProjectId, false);//单位
                UnitWorkService.InitUnitWorkDownList(drpUnitWork, ProjectId, false);//单位工程(装置)
                WorkPostService.InitWorkPostDropDownList(this.drpWorkPost, false);//岗位
                if (!string.IsNullOrEmpty(Id))
                {
                    var model = Funs.DB.JDGL_SGManPower.FirstOrDefault(x => x.Id == Id);
                    if (model != null)
                    {
                        drpUnit.SelectedValue = model.UnitId;
                        drpUnitWork.SelectedValue = model.UnitWorkId;
                        drpWorkPost.SelectedValue = model.WorkPostId;
                        txtVersion.Text = model.Version;
                        txtQuantity.Text = model.Quantity.HasValue ? model.Quantity.Value.ToString() : "";
                        if (model.PlanDate != null)
                        {
                            this.txtPlanDate.Text = Convert.ToDateTime(model.PlanDate).ToString("yyyy-MM-dd");
                        }
                        txtRemarks.Text = model.Remarks;
                    }
                }
                
            }
        }
        
        /// 
        /// 保存
        /// 
        /// 
        /// 
        protected void btnSave_Click(object sender, EventArgs e)
        {
            var model = new Model.JDGL_SGManPower
            {
                CompileMan = this.CurrUser.UserId,
                CompileTime = DateTime.Now,
                Remarks = this.txtRemarks.Text,
            };
            if (this.drpUnit.SelectedValue != Const._Null)
            {
                model.UnitId = drpUnit.SelectedValue;
            }
            if (this.drpUnitWork.SelectedValue != Const._Null)
            {
                model.UnitWorkId = drpUnitWork.SelectedValue;
            }
            if (this.drpWorkPost.SelectedValue != Const._Null)
            {
                model.WorkPostId = drpWorkPost.SelectedValue;
            }
            
            if (!string.IsNullOrEmpty(this.txtVersion.Text))
            {
                model.Version = this.txtVersion.Text;
            }
            
            if (!string.IsNullOrEmpty(this.txtQuantity.Text))
            {
                model.Quantity = int.Parse(this.txtQuantity.Text);
            }
            
            if (!string.IsNullOrEmpty(this.txtPlanDate.Text))
            {
                model.PlanDate = Funs.GetNewDateTime(this.txtPlanDate.Text);
            }
            if (!string.IsNullOrEmpty(Id))
            {
                model.Id = Id;
                BLL.ManPowerPlanService.UpdateSGManPower(model);
            }
            else
            {
                model.Id = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan));
                model.ProjectId = this.ProjectId;
                BLL.ManPowerPlanService.AddSGManPower(model);
            }
            Funs.DB.SubmitChanges();
            ShowNotify("保存成功", MessageBoxIcon.Success);
            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
        }
    }
}