using BLL; using NPOI.POIFS.Crypt.Dsig; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.DataVisualization.Charting; using System.Web.UI.WebControls; namespace FineUIPro.Web.TestRun.DriverSub { public partial class DriverSubContactEdit : PageBase { #region 加载 /// /// 页面加载 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DriverSubPlanService.InitSubPlanDropDownList(drpSubPlanCode,this.CurrUser.LoginProjectId,true); DriverSubName.DataSource = DropListService.drpDriverSubNameList(); DriverSubName.DataTextField = "Text"; DriverSubName.DataValueField = "Value"; DriverSubName.DataBind(); string driverSubPlanId = Request.Params["DriverSubPlanId"]; if (!string.IsNullOrEmpty(driverSubPlanId)) { drpSubPlanCode.SelectedValue= driverSubPlanId; drpSubPlanCode_OnSelectedIndexChanged(null, null); } } } #endregion #region 附件上传 /// /// 附件上传 /// /// /// protected void btnAttach_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.hdId.Text)) //新增记录 { this.hdId.Text = SQLHelper.GetNewID(typeof(Model.DriverSub_DriverSubContact)); } PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/TestRun/DriverSub/DriverSubContact&menuId={1}", this.hdId.Text, BLL.Const.DriverSubContactMenuId))); } #endregion #region 保存 /// /// 保存按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(drpSubPlanCode.SelectedValue) || drpSubPlanCode.SelectedValue == Const._Null) { ShowNotify("请选择分包计划!", MessageBoxIcon.Warning); return; } DriverSubContactService.DeleteDriverSubContactByDriverSubPlanId(drpSubPlanCode.SelectedValue); GridSave(drpCatalystLoading.Values,"1"); GridSave(drpOven.Values,"2"); GridSave(drpChemicalCleaning.Values,"3"); GridSave(drpDrivingTeam.Values,"4"); ShowNotify("保存成功!", MessageBoxIcon.Success); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } void GridSave(string[] DriverSubContractorsIdArray,string type ) { string id = drpSubPlanCode.SelectedValue; foreach (var item in DriverSubContractorsIdArray) { Model.DriverSub_DriverSubContact newData = new Model.DriverSub_DriverSubContact(); newData.DriverSubContactId = SQLHelper.GetNewID(typeof(Model.DriverSub_DriverSubContact)); newData.ProjectId = this.CurrUser.LoginProjectId; newData.DriverSubPlanId = id; newData.DriverSubContractorsId = item; newData.SubcontractingType = type; BLL.DriverSubContactService.AddDriverSubContact(newData); } } #endregion void BindGrid(Grid grid, string type, string driverSubPlanId, string subUnitName) { //使用linq 查询DriverSub_DriverSubContact表 DriverSubPlanId下关联的分包经销商信息 var q = from x in Funs.DB.DriverSub_DriverSubContractors where x.IsUse == true && x.SubcontractingType== type select x; if (!string.IsNullOrEmpty(subUnitName)) { q = q.Where(x => x.SubUnitName.Contains(subUnitName)); } int count = q.Count(); q = q.Skip(grid.PageSize * grid.PageIndex).Take(grid.PageSize); grid.RecordCount= count; grid.DataSource = q; grid.DataBind(); } #region 加载表格 protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(Grid1,"1", drpSubPlanCode.SelectedValue, ttbSearch1.Text); } protected void ttbSearch1_Trigger1Click(object sender, EventArgs e) { ttbSearch1.Text = String.Empty; ttbSearch1.ShowTrigger1 = false; BindGrid(Grid1, "1", drpSubPlanCode.SelectedValue, ttbSearch1.Text); } protected void ttbSearch1_Trigger2Click(object sender, EventArgs e) { ttbSearch1.ShowTrigger1 = true; BindGrid(Grid1, "1", drpSubPlanCode.SelectedValue, ttbSearch1.Text); } protected void Grid2_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(Grid2, "2", drpSubPlanCode.SelectedValue, ttbSearch2.Text); } protected void ttbSearch2_Trigger1Click(object sender, EventArgs e) { ttbSearch2.Text = String.Empty; ttbSearch2.ShowTrigger1 = false; BindGrid(Grid2, "2", drpSubPlanCode.SelectedValue, ttbSearch2.Text); } protected void ttbSearch2_Trigger2Click(object sender, EventArgs e) { ttbSearch2.ShowTrigger1 = true; BindGrid(Grid2, "2", drpSubPlanCode.SelectedValue, ttbSearch2.Text); } protected void Grid3_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(Grid3, "3", drpSubPlanCode.SelectedValue, ttbSearch3.Text); } protected void ttbSearch3_Trigger1Click(object sender, EventArgs e) { ttbSearch3.Text = String.Empty; ttbSearch3.ShowTrigger1 = false; BindGrid(Grid3, "3", drpSubPlanCode.SelectedValue, ttbSearch3.Text); } protected void ttbSearch3_Trigger2Click(object sender, EventArgs e) { ttbSearch3.ShowTrigger1 = true; BindGrid(Grid3, "3", drpSubPlanCode.SelectedValue, ttbSearch3.Text); } protected void Grid4_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(Grid4, "4", drpSubPlanCode.SelectedValue, ttbSearch4.Text); } protected void ttbSearch4_Trigger1Click(object sender, EventArgs e) { ttbSearch4.Text = String.Empty; ttbSearch4.ShowTrigger1 = false; BindGrid(Grid4, "4", drpSubPlanCode.SelectedValue, ttbSearch4.Text); } protected void ttbSearch4_Trigger2Click(object sender, EventArgs e) { ttbSearch4.ShowTrigger1 = true; BindGrid(Grid4, "4", drpSubPlanCode.SelectedValue, ttbSearch4.Text); } #endregion #region 下拉列表事件 protected void drpSubPlanCode_OnSelectedIndexChanged(object sender, EventArgs e) { if (string.IsNullOrEmpty(drpSubPlanCode.SelectedValue)|| drpSubPlanCode.SelectedValue==Const._Null) { drpCatalystLoading.Hidden = true; drpOven.Hidden = true; drpChemicalCleaning.Hidden = true; drpDrivingTeam.Hidden = true; DriverSubName.SelectedValueArray=null; return; } var model = BLL.DriverSubPlanService.GetDriverSubPlanById(drpSubPlanCode.SelectedValue); if (model!=null) { BindGrid(Grid1, "1", drpSubPlanCode.SelectedValue, ttbSearch1.Text); BindGrid(Grid2, "2", drpSubPlanCode.SelectedValue, ttbSearch2.Text); BindGrid(Grid3, "3", drpSubPlanCode.SelectedValue, ttbSearch3.Text); BindGrid(Grid4, "4", drpSubPlanCode.SelectedValue, ttbSearch4.Text); this.DriverSubName.SelectedValueArray = model.SubcontractingTypes.Split(','); foreach (string item in DriverSubName.SelectedValueArray) { if (item.Contains("1")) { drpCatalystLoading.Hidden = false; drpCatalystLoading.Values = DriverSubContactService.GetDriverSubContactByDriverSubPlanId(drpSubPlanCode.SelectedValue) .Where(x => x.SubcontractingType == "1").Select(x => x.DriverSubContractorsId).ToArray(); } else if (item.Contains("2")) { drpOven.Hidden = false; drpOven.Values = DriverSubContactService.GetDriverSubContactByDriverSubPlanId(drpSubPlanCode.SelectedValue) .Where(x => x.SubcontractingType == "2").Select(x => x.DriverSubContractorsId).ToArray(); } else if (item.Contains("3")) { drpChemicalCleaning.Hidden = false; drpChemicalCleaning.Values = DriverSubContactService.GetDriverSubContactByDriverSubPlanId(drpSubPlanCode.SelectedValue) .Where(x => x.SubcontractingType == "3").Select(x => x.DriverSubContractorsId).ToArray(); } else if (item.Contains("4")) { drpDrivingTeam.Hidden= false; drpDrivingTeam.Values = DriverSubContactService.GetDriverSubContactByDriverSubPlanId(drpSubPlanCode.SelectedValue) .Where(x => x.SubcontractingType == "4").Select(x => x.DriverSubContractorsId).ToArray(); } } } } #endregion } }