191 lines
		
	
	
		
			7.4 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			191 lines
		
	
	
		
			7.4 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Data; | |||
|  | using System.Data.SqlClient; | |||
|  | using System.Linq; | |||
|  | using System.Text; | |||
|  | using System.Web.UI.WebControls; | |||
|  | using BLL; | |||
|  | using Model; | |||
|  | using AspNet = System.Web.UI.WebControls; | |||
|  | 
 | |||
|  | namespace FineUIPro.Web.CQMS.Performance | |||
|  | { | |||
|  |     public partial class PerformanceConfig : PageBase | |||
|  |     { | |||
|  | 
 | |||
|  |         protected void Page_Load(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (!IsPostBack) | |||
|  |             { | |||
|  |                 //当前年份 | |||
|  |                 dpYear.Text = DateTime.Now.Year.ToString(); | |||
|  |                 var model = Funs.DB.CQMS_Performance_SetUp.FirstOrDefault(x => x.CreateYear == dpYear.Text); | |||
|  |                 if (model != null) | |||
|  |                 { | |||
|  |                     BindGrid(); | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         protected void btnSearch_searach(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (string.IsNullOrEmpty(dpYear.Text.Trim())) | |||
|  |             { | |||
|  |                 ShowNotify("年份不能为空。", MessageBoxIcon.Warning); | |||
|  |                 PageContext.RegisterStartupScript("CloseRefresh()"); | |||
|  |                 return; | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 BindGrid(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 判断生成操作 | |||
|  |         /// </summary> | |||
|  |         protected void btnNew_Juge(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (string.IsNullOrEmpty(dpYear.Text.Trim())) | |||
|  |             { | |||
|  |                 ShowNotify("年份不能为空。", MessageBoxIcon.Warning); | |||
|  |                 PageContext.RegisterStartupScript("CloseRefresh()"); | |||
|  |                 return; | |||
|  |             } | |||
|  |             //根据年份查询是否有数据 | |||
|  |             var modelSum = Funs.DB.CQMS_Performance_SetUp.Where(x => x.CreateYear == dpYear.Text.Trim()).FirstOrDefault(); | |||
|  |             //查到数据,二次确认 | |||
|  |             if (modelSum != null) | |||
|  |             { | |||
|  |                 PageContext.RegisterStartupScript(Confirm.GetShowReference("该日期已生成数据,是否确认重新生成?", String.Empty, MessageBoxIcon.Question, | |||
|  |                     PageManager1.GetCustomEventReference(false, "Confirmgd_OK"), PageManager1.GetCustomEventReference("Confirm_Cancel"))); | |||
|  |                 PageContext.RegisterStartupScript("CloseRefresh()"); | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 //生成数据 | |||
|  |                 AddPerformanceConfig(); | |||
|  |             } | |||
|  | 
 | |||
|  |         } | |||
|  |         private void BindGrid() | |||
|  |         { | |||
|  |             string strSql = @"SELECT * FROM CQMS_Performance_SetUp  where 1=1 "; | |||
|  |             List<SqlParameter> listStr = new List<SqlParameter>(); | |||
|  |             if (!string.IsNullOrEmpty(dpYear.Text.Trim())) | |||
|  |             { | |||
|  |                 strSql += " AND CreateYear = @CreateYear"; | |||
|  |                 listStr.Add(new SqlParameter("@CreateYear", dpYear.Text.Trim())); | |||
|  |             } | |||
|  |             strSql += " order by SortIndex "; | |||
|  |             SqlParameter[] parameter = listStr.ToArray(); | |||
|  |             DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); | |||
|  | 
 | |||
|  |             Grid1.RecordCount = tb.Rows.Count; | |||
|  |             var table = tb; | |||
|  |             Grid1.DataSource = table; | |||
|  |             Grid1.DataBind(); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 生成 | |||
|  |         /// </summary> | |||
|  |         private void AddPerformanceConfig() | |||
|  |         { | |||
|  |             List<Model.CQMS_Performance_SetUp> modelList = new List<CQMS_Performance_SetUp>(); | |||
|  |             for (int i = 0; i < 12; i++) | |||
|  |             { | |||
|  |                 Model.CQMS_Performance_SetUp model = new CQMS_Performance_SetUp(); | |||
|  |                 model.PerformanceSteUpGid = Guid.NewGuid().ToString(); | |||
|  | 
 | |||
|  |                 //第一次是上一年的12月份 | |||
|  |                 if (i==0) | |||
|  |                 { | |||
|  |                     model.SetUpMonth = (Convert.ToInt32(dpYear.Text.Trim()) - 1).ToString() +"-" + 12; | |||
|  |                     model.SetUpStartDate = (Convert.ToInt32(dpYear.Text.Trim()) - 1).ToString() + "-" + 12 + "-" + "01"; | |||
|  |                     var dates = Convert.ToDateTime((dpYear.Text.Trim() + "-" + (i + 1) + "-" + "01")).AddMonths(1).AddDays(-1); | |||
|  |                     model.SetUpEndDate = (Convert.ToInt32(dpYear.Text.Trim()) - 1).ToString() + "-12-" + dates.Day; | |||
|  |                     model.CreateDate = Convert.ToDateTime(dpYear.Text.Trim() + "-" + 12); | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     model.SetUpMonth = dpYear.Text.Trim() + "-" + (i); | |||
|  |                     model.SetUpStartDate = dpYear.Text.Trim() + "-" + (i ) + "-" + "01"; | |||
|  |                     var dates = Convert.ToDateTime((dpYear.Text.Trim() + "-" + (i ) + "-" + "01")).AddMonths(1).AddDays(-1); | |||
|  |                     model.SetUpEndDate = dates.Year.ToString() + "-" + dates.Month + "-" + dates.Day; | |||
|  |                     model.CreateDate = Convert.ToDateTime(dpYear.Text.Trim() + "-" + (i)); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 model.SetUpWeek = 4; | |||
|  |                 model.CreateYear = dpYear.Text.Trim(); | |||
|  |                 model.SortIndex = (i + 1); | |||
|  | 
 | |||
|  |                  | |||
|  |                 modelList.Add(model); | |||
|  |             } | |||
|  |             Funs.DB.CQMS_Performance_SetUp.InsertAllOnSubmit(modelList); | |||
|  |             Funs.DB.SubmitChanges(); | |||
|  |             BindGrid(); | |||
|  |         } | |||
|  | 
 | |||
|  |         // <summary> | |||
|  |         /// 重新生成确认按钮 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void PageManager1_CustomEvent(object sender, CustomEventArgs e) | |||
|  |         { | |||
|  |             if (e.EventArgument == "Confirmgd_OK" || e.EventArgument == "Confirmgy_OK") | |||
|  |             { | |||
|  |                 // 根据日期查询是否有数据 | |||
|  |                 var modelSum = Funs.DB.CQMS_Performance_SetUp.Where(x => x.CreateYear == dpYear.Text.Trim()).ToList(); | |||
|  |                 if (modelSum.Count > 0) | |||
|  |                 { | |||
|  |                     //删除所有数据 | |||
|  |                     using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |                     { | |||
|  |                         db.CQMS_Performance_SetUp.DeleteAllOnSubmit(modelSum); | |||
|  |                         //生成数据 | |||
|  | 
 | |||
|  |                     } | |||
|  |                 } | |||
|  | 
 | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         protected void Button2_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 Dictionary<int, Dictionary<string, object>> modifiedDict = Grid1.GetModifiedDict(); | |||
|  | 
 | |||
|  |                 foreach (int rowIndex in modifiedDict.Keys) | |||
|  |                 { | |||
|  |                     Model.CQMS_Performance_SetUp model = new CQMS_Performance_SetUp(); | |||
|  |                     model.PerformanceSteUpGid = Grid1.DataKeys[rowIndex][0].ToString(); | |||
|  |                     model = db.CQMS_Performance_SetUp.FirstOrDefault(x => x.PerformanceSteUpGid == model.PerformanceSteUpGid); | |||
|  |                     if (modifiedDict[rowIndex].ContainsKey("SetUpStartDate")) | |||
|  |                     { | |||
|  |                         model.SetUpStartDate = modifiedDict[rowIndex]["SetUpStartDate"].ToString(); | |||
|  |                     } | |||
|  |                     if (modifiedDict[rowIndex].ContainsKey("SetUpEndDate")) | |||
|  |                     { | |||
|  |                         model.SetUpEndDate = modifiedDict[rowIndex]["SetUpEndDate"].ToString(); | |||
|  |                     } | |||
|  |                     if (modifiedDict[rowIndex].ContainsKey("SetUpWeek")) | |||
|  |                     { | |||
|  |                         model.SetUpWeek = Convert.ToInt32(modifiedDict[rowIndex]["SetUpWeek"].ToString()); | |||
|  |                     } | |||
|  |                     db.SubmitChanges(); | |||
|  |                 } | |||
|  |                 BindGrid(); | |||
|  |                 ShowNotify("保存成功。", MessageBoxIcon.Success); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |     } | |||
|  | } |