/// <summary> /// 查找班别绑定 /// </summary> /// <param name="planDutyTableName"></param> /// <param name="fromTimeStart"></param> /// <param name="fromTimeEnd"></param> /// <param name="toTimeStart"></param> /// <param name="toTimeEnd"></param> /// <param name="AccountID"></param> /// <returns></returns> public List <PlanDutyTable> GetPlanDutyByCondition(string planDutyTableName, DateTime fromTimeStart, DateTime fromTimeEnd, DateTime toTimeStart, DateTime toTimeEnd, int AccountID) { List <PlanDutyTable> planDutyTables = new List <PlanDutyTable>(); SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Parameters.Add(_DbPlanDutyTableName, SqlDbType.NVarChar, 50).Value = planDutyTableName; sqlCommand.Parameters.Add(_DbFromTimeStart, SqlDbType.DateTime).Value = fromTimeStart; sqlCommand.Parameters.Add(_DbFromTimeEnd, SqlDbType.DateTime).Value = fromTimeEnd; sqlCommand.Parameters.Add(_DbToTimeStart, SqlDbType.DateTime).Value = toTimeStart; sqlCommand.Parameters.Add(_DbToTimeEnd, SqlDbType.DateTime).Value = toTimeEnd; sqlCommand.Parameters.Add(_DbAccountID, SqlDbType.Int).Value = AccountID; using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetPlanDutyByCondition", sqlCommand)) { while (sdr.Read()) { PlanDutyTable planDutyTable = new PlanDutyTable(); planDutyTable.PlanDutyTableID = Convert.ToInt32(sdr[_DbPKID]); planDutyTable.PlanDutyTableName = (sdr[_DbPlanDutyTableName]).ToString(); planDutyTable.Period = Convert.ToInt32(sdr[_DbPeriod]); planDutyTable.FromTime = Convert.ToDateTime(sdr[_DbFromTime]); planDutyTable.ToTime = Convert.ToDateTime(sdr[_DbToTime]); planDutyTables.Add(planDutyTable); } return(planDutyTables); } }
/// <summary> /// 组装数据 /// </summary> /// <param name="planDutyTable"></param> public void CompleteTheObject(PlanDutyTable planDutyTable) { planDutyTable.Period = period; DateTime temp = fromTime; planDutyTable.PlanDutyDetailList = new List <PlanDutyDetail>(); while (DateTime.Compare(new DateTime(temp.Year, temp.Month, 1), new DateTime(toTime.Year, toTime.Month, 1)) <= 0) { string yearMonth = temp.Year + ";" + temp.Month; List <PlanDutyDetail> planDutyDetailList = _ItsView.SetPlanDutyView.GetViewState(yearMonth); if (planDutyDetailList == null)//如果没有翻过页,没有存ViewState,则直接取值 { //如果是当前月,则在界面上取值 if (temp.Year == _ItsView.SetPlanDutyView.CurrentDay.Year && temp.Month == _ItsView.SetPlanDutyView.CurrentDay.Month) { planDutyDetailList = _ItsView.SetPlanDutyView.GetCurrentPlanDutyDetailList(temp); } else//如果没有初始化过 { planDutyDetailList = InitNewPlanDutyDetailList(temp); } } _Date = temp; planDutyTable.PlanDutyDetailList.AddRange(planDutyDetailList.FindAll(FindPlanDutyDetail)); //找下个月的1号 temp = temp.AddDays(1 - temp.Day).AddMonths(1); } planDutyTable.PlanDutyTableName = _ItsView.SetPlanDutyView.PlanDutyTableName; planDutyTable.FromTime = fromTime; planDutyTable.ToTime = toTime; planDutyTable.PlanDutyAccountList = _ItsView.EmployeeList; planDutyTable.PlanDutyEmployeeNameList = _ItsView.SetPlanDutyView.EmployeeList; }
private void SetPlanDutyView(PlanDutyTable theDataToBind) { _ItsView.SetPlanDutyView.CurrentDay = theDataToBind.FromTime; _ItsView.EmployeeList = theDataToBind.PlanDutyAccountList; _ItsView.SetPlanDutyView.EmployeeList = theDataToBind.PlanDutyEmployeeNameList; _ItsView.SetPlanDutyView.FromTime = theDataToBind.FromTime.ToShortDateString(); _ItsView.SetPlanDutyView.ToTime = theDataToBind.ToTime.ToShortDateString(); _ItsView.SetPlanDutyView.Period = theDataToBind.Period.ToString(); _ItsView.SetPlanDutyView.PlanDutyTableName = theDataToBind.PlanDutyTableName; DateTime temp = theDataToBind.FromTime; DateTime current = _ItsView.SetPlanDutyView.CurrentDay; List <PlanDutyDetail> planDutyDetailList = theDataToBind.PlanDutyDetailList; while (DateTime.Compare(new DateTime(temp.Year, temp.Month, 1), new DateTime(theDataToBind.ToTime.Year, theDataToBind.ToTime.Month, 1)) <= 0) { string yearMonth = temp.Year + ";" + temp.Month; _Date = temp; List <PlanDutyDetail> planDutyDetailListTemp = planDutyDetailList.FindAll(FindPlanDutyDetail); _ItsView.SetPlanDutyView.SavePlanDutyDetailListViewState(planDutyDetailListTemp, yearMonth); if (current.Year == temp.Year && current.Month == temp.Month) { _ItsView.SetPlanDutyView.PlanDutyDateSource = planDutyDetailList; } //找下个月的1号 temp = temp.AddDays(1 - temp.Day).AddMonths(1); } }
public void DataBind(PlanDutyTable theDataToBind) { try { SetPlanDutyView(theDataToBind); } catch { _ItsView.SetPlanDutyView.Message = "绑定信息失败"; } }
public void DataBind(int planDutyId) { try { PlanDutyTable theDataToBind = _IPlanDutyFacade.GetPlanDutyTableByPKID(planDutyId); SetPlanDutyView(theDataToBind); } catch { _ItsView.SetPlanDutyView.Message = "初始化信息失败"; } }
public void GetPlanDutyByID(string id) { int id_Int; if (!int.TryParse(id, out id_Int)) { _ItsView.SetPlanDutyView.Message = "排班表ID需为整数"; return; } _ItsView.SetPlanDutyView.PlanDutyID = id; PlanDutyTable planDutyTable = _IPlanDutyFacade.GetPlanDutyTableByPKID(id_Int); new PlanDudyBinder(_ItsView, _IPlanDutyFacade).DataBind(planDutyTable); }
/// <summary> /// 生成排班 /// </summary> public void CreatePlanDutyClickEvent() { SavePlanDutyViewStateEvent(); if (Validate()) { PlanDutyTable planDutyTable = new PlanDutyTable(); CompleteTheObject(planDutyTable); try { _IPlanDutyFacade.AddPlanDuty(planDutyTable); _ItsView.SetPlanDutyView.Message = "新增成功!"; } catch (ApplicationException ae) { _ItsView.SetPlanDutyView.Message = ae.Message; } } }
public void CopyEvent() { SavePlanDutyViewStateEvent(); if (Validate()) { PlanDutyTable planDutyTable = new PlanDutyTable(); CompleteTheObject(planDutyTable); try { _ItsView.SetPlanDutyView.SessionCopyPlanDutyTable = planDutyTable; _ItsView.SetPlanDutyView.Message = "复制成功!"; } catch (ApplicationException ae) { _ItsView.SetPlanDutyView.Message = ae.Message; } } }
/// <summary> /// 修改排班 /// </summary> public void UpdatePlanDutyClickEvent() { SavePlanDutyViewStateEvent(); if (Validate()) { PlanDutyTable planDutyTable = new PlanDutyTable(); planDutyTable.PlanDutyTableID = Convert.ToInt32(_ItsView.SetPlanDutyView.PlanDutyID); CompleteTheObject(planDutyTable); try { _IPlanDutyFacade.UpdatePlanDuty(planDutyTable); _ItsView.SetPlanDutyView.Message = "修改成功!"; } catch (ApplicationException ae) { _ItsView.SetPlanDutyView.Message = ae.Message; } } }
///<summary> /// 得到某一排班表 ///</summary> ///<param name="pkid"></param> ///<returns></returns> public PlanDutyTable GetPlanDutyTableByPKID(int pkid) { PlanDutyTable planDutyTable = _DalRull.GetPlanDutyTableByPkid(pkid); List <Account> accountList = new List <Account>(); for (int i = 0; i < planDutyTable.PlanDutyAccountList.Count; i++) { Account accountOperator = BllInstance.AccountBllInstance.GetAccountById(planDutyTable.PlanDutyAccountList[i].Id); accountList.Add(accountOperator); } planDutyTable.PlanDutyAccountList = accountList; for (int i = 0; i < planDutyTable.PlanDutyAccountList.Count; i++) { Account accountOperator = BllInstance.AccountBllInstance.GetAccountById(planDutyTable.PlanDutyAccountList[i].Id); planDutyTable.PlanDutyEmployeeNameList = planDutyTable.PlanDutyEmployeeNameList + accountOperator.Name + ","; } return(planDutyTable); }
private void CopyEvent(string id) { int id_Int; if (!int.TryParse(id, out id_Int)) { _View.TitleMessage = "排班表ID需为整数"; return; } PlanDutyTable planDutyTable = _IPlanDutyFacade.GetPlanDutyTableByPKID(id_Int); try { _View.SessionCopyPlanDutyTable = planDutyTable; _View.TitleMessage = "复制成功!"; } catch (ApplicationException ae) { _View.TitleMessage = ae.Message; } }
/// <summary> /// 查找排班表 /// </summary> /// <param name="pkid"></param> /// <returns></returns> public PlanDutyTable GetPlanDutyTableByPkid(int pkid) { PlanDutyTable planDutyTable = null; SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Parameters.Add(_ParmPKID, SqlDbType.Int).Value = pkid; using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetPlanDutyTableByPkid", sqlCommand)) { while (sdr.Read()) { planDutyTable = new PlanDutyTable(); planDutyTable.PlanDutyTableID = Convert.ToInt32(sdr[_DbPKID]); planDutyTable.PlanDutyTableName = (sdr[_DbPlanDutyTableName]).ToString(); planDutyTable.Period = Convert.ToInt32(sdr[_DbPeriod]); planDutyTable.FromTime = Convert.ToDateTime(sdr[_DbFromTime]); planDutyTable.ToTime = Convert.ToDateTime(sdr[_DbToTime]); planDutyTable.PlanDutyAccountList = GetPlanDutyByPlanDutyTableID(planDutyTable.PlanDutyTableID); planDutyTable.PlanDutyDetailList = GetPlanDutyDetailByPlanDutyTableID(pkid); } return(planDutyTable); } }
/// <summary> /// 更新排班表 /// </summary> /// <param name="planDutyTable"></param> /// <param name="accounts"></param> /// <returns></returns> public int UpdatePlanDutyTable(PlanDutyTable planDutyTable, List <Account> accounts) { InitializeTranscation(); try { SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Parameters.Add(_ParmPKID, SqlDbType.Int).Value = planDutyTable.PlanDutyTableID; sqlCommand.Parameters.Add(_PlanDutyTableName, SqlDbType.NVarChar, 50).Value = planDutyTable.PlanDutyTableName; sqlCommand.Parameters.Add(_Period, SqlDbType.Int).Value = planDutyTable.Period; sqlCommand.Parameters.Add(_FromTime, SqlDbType.DateTime).Value = planDutyTable.FromTime; sqlCommand.Parameters.Add(_ToTime, SqlDbType.DateTime).Value = planDutyTable.ToTime; SqlHelper.TransExecuteNonQuery("UpdatePlanDutyTable", sqlCommand, _Conn, _Trans); //删除原有的每一个项 DeletePlanDutyDetailByPlanDutyTableID(planDutyTable.PlanDutyTableID, _Conn, _Trans); DeletePlanDutyByPlanDutyTableID(planDutyTable.PlanDutyTableID, _Conn, _Trans); foreach (PlanDutyDetail planDutyDetail in planDutyTable.PlanDutyDetailList) { InsertPlanDutyDetail(planDutyDetail, planDutyTable.PlanDutyTableID, _Conn, _Trans); } foreach (Account account in accounts) { InsertTPlanDuty(planDutyTable.PlanDutyTableID, account.Id, _Conn, _Trans); } _Trans.Commit(); } catch { _Trans.Rollback(); throw; } finally { _Conn.Close(); } return(planDutyTable.PlanDutyTableID); }
/// <summary> /// 添加排班表 /// </summary> /// <param name="planDutyTable"></param> /// <param name="accounts"></param> /// <returns></returns> public int InsertPlanDutyTable(PlanDutyTable planDutyTable, List <Account> accounts) { InitializeTranscation(); int pkid; try { SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Parameters.Add(_ParmPKID, SqlDbType.Int).Direction = ParameterDirection.Output; sqlCommand.Parameters.Add(_PlanDutyTableName, SqlDbType.NVarChar, 50).Value = planDutyTable.PlanDutyTableName; sqlCommand.Parameters.Add(_Period, SqlDbType.Int).Value = planDutyTable.Period; sqlCommand.Parameters.Add(_FromTime, SqlDbType.DateTime).Value = planDutyTable.FromTime; sqlCommand.Parameters.Add(_ToTime, SqlDbType.DateTime).Value = planDutyTable.ToTime; SqlHelper.TransExecuteNonQueryReturnPKID("InsertPlanDutyTable", sqlCommand, _Conn, _Trans, out pkid); foreach (PlanDutyDetail planDutyDetail in planDutyTable.PlanDutyDetailList) { InsertPlanDutyDetail(planDutyDetail, pkid, _Conn, _Trans); } foreach (Account account in accounts) { InsertTPlanDuty(pkid, account.Id, _Conn, _Trans); } _Trans.Commit(); } catch { _Trans.Rollback(); throw; } finally { _Conn.Close(); } return(pkid); }
/// <summary> /// /// </summary> /// <param name="fromTime"></param> /// <param name="toTime"></param> /// <param name="accountid"></param> /// <returns></returns> public List <PlanDutyTable> GetPlanDutyTableByConditionAndAccountID(DateTime fromTime, DateTime toTime, int accountid) { List <PlanDutyTable> planDutyTables = new List <PlanDutyTable>(); SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Parameters.Add(_DbFromTime, SqlDbType.DateTime).Value = fromTime; sqlCommand.Parameters.Add(_DbToTime, SqlDbType.DateTime).Value = toTime; sqlCommand.Parameters.Add(_DbAccountID, SqlDbType.Int).Value = accountid; using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetPlanDutyTableByConditionAndAccountID", sqlCommand)) { while (sdr.Read()) { PlanDutyTable planDutyTable = new PlanDutyTable(); planDutyTable.PlanDutyTableID = Convert.ToInt32(sdr[_DbPKID]); planDutyTable.PlanDutyTableName = (sdr[_DbPlanDutyTableName]).ToString(); planDutyTable.Period = Convert.ToInt32(sdr[_DbPeriod]); planDutyTable.FromTime = Convert.ToDateTime(sdr[_DbFromTime]); planDutyTable.ToTime = Convert.ToDateTime(sdr[_DbToTime]); planDutyTable.PlanDutyAccountList = GetPlanDutyByPlanDutyTableID(planDutyTable.PlanDutyTableID); planDutyTables.Add(planDutyTable); } return(planDutyTables); } }
/// <summary> /// 修改班别,构造函数 /// </summary> public UpdatePlanDuty(PlanDutyTable planDutyTable) { _PlanDutyTable = planDutyTable; }
/// <summary> /// 新增班别构造函数 /// </summary> /// <param name="planDutyTable"></param> public InsertPlanDuty(PlanDutyTable planDutyTable) { _PlanDutyTable = planDutyTable; }
/// <summary> /// 修改排班 /// </summary> /// <returns></returns> /// <param name="planDutyTable"></param> public void UpdatePlanDuty(PlanDutyTable planDutyTable) { UpdatePlanDuty UpdatePlanDuty = new UpdatePlanDuty(planDutyTable); UpdatePlanDuty.Excute(); }
/// <summary> /// 新增排班 /// </summary> /// <returns></returns> /// <param name="planDutyTable"></param> public void AddPlanDuty(PlanDutyTable planDutyTable) { InsertPlanDuty InsertPlanDuty = new InsertPlanDuty(planDutyTable); InsertPlanDuty.Excute(); }
/// <summary> /// 新增班别构造函数,测试 /// </summary> /// <param name="planDutyTable"></param> /// <param name="ruleMock"></param> public InsertPlanDuty(PlanDutyTable planDutyTable, IPlanDutyDal ruleMock) { _PlanDutyTable = planDutyTable; _DalRull = ruleMock; }
/// <summary> /// 测试用 /// </summary> public UpdatePlanDuty(PlanDutyTable planDutyTable, IPlanDutyDal ruleMock) { _PlanDutyTable = planDutyTable; _DalRull = ruleMock; }