private void ShowRecord() { try { this.flpMealList.Visible = false; this.flpMealList.Controls.Clear(); this.lblRecordAmount.Text = ""; _smlList = new List<SetMealList>(); DateTime startTime = DateTime.Parse(dtpDateFrom.Value.ToString("yyyy/MM/dd")); DateTime endTime = DateTime.Parse(dtpDateTo.Value.ToString("yyyy/MM/dd")); int lastIndex = 0; if (endTime >= startTime) { System.TimeSpan ts = endTime.Subtract(startTime);//TimeSpan得到dt1和dt2的时间间隔 int countDays = ts.Days;//相隔天数 if (countDays > 60) { base.MessageDialog("提示", "最多只能查询前后60天的记录!"); startTime = startTime.AddDays(60); this.dtpDateTo.Value = startTime; return; } DateTime nowDate = DateTime.Parse(System.DateTime.Now.ToString("yyyy/MM/dd")); if (startTime < nowDate)//如果開始時間是小于當前時間,則查詢定餐使用記錄 { MealBookingHistory_mbh_Info mbhInfo = new MealBookingHistory_mbh_Info(); mbhInfo.mbh_cTargetID = _userInfo.ucp_cCUSID; mbhInfo.StartTime = startTime; if (endTime > nowDate) { mbhInfo.EndTime = nowDate; } else { mbhInfo.EndTime = endTime; } List<MealBookingHistory_mbh_Info> mbhList = _imbhBL.SearchRecords(mbhInfo); if (mbhList != null && mbhList.Count > 0) { //補全一個星期 int weekIndex = GetWeekIndex(mbhList[0].mbh_dMealDate); for (int index = 0; index < weekIndex - 1; index++) { SetMealList mealList = new SetMealList(null); _smlList.Add(mealList); //this.flpMealList.Controls.Add(mealList); } lastIndex = GetWeekIndex(mbhList[mbhList.Count - 1].mbh_dMealDate);//如果有定餐記錄,記下最后一日 for (DateTime dt = startTime; dt < nowDate; dt = dt.AddDays(1)) { SetMealInfo mealInfo = new SetMealInfo(); mealInfo.times = dt; bool isSet = false; foreach (MealBookingHistory_mbh_Info info in mbhList) { DateTime subDt = DateTime.Parse(info.mbh_dMealDate.ToString("yyyy/MM/dd")); if (subDt == dt) { if (info.mbh_cMealType == DefineConstantValue.MealType.Breakfast.ToString()) { mealInfo.Breakfast = info.mbh_lIsSet; isSet = true; } else if (info.mbh_cMealType == DefineConstantValue.MealType.Lunch.ToString()) { mealInfo.Lunch = info.mbh_lIsSet; isSet = true; } else if (info.mbh_cMealType == DefineConstantValue.MealType.Supper.ToString()) { mealInfo.Dinner = info.mbh_lIsSet; isSet = true; } } } if (isSet == true) { SetMealList mealList = new SetMealList(mealInfo); _smlList.Add(mealList); //this.flpMealList.Controls.Add(mealList); } isSet = false; } } } if (endTime >= nowDate)//如果結束日期大于當前日期,則查詢定餐設置記錄 { PaymentUDMealState_pms_Info pmsInfo = new PaymentUDMealState_pms_Info(); pmsInfo.pms_cCardUserID = _userInfo.ucp_cCUSID; pmsInfo.pms_cClassID = _userInfo.CardOwner.cus_cClassID; pmsInfo.pms_cGradeID = _userInfo.CardOwner.ClassInfo.csm_cGDMID; pmsInfo.TimeTo = dtpDateTo.Value; if (startTime > nowDate) { pmsInfo.TimeFrom = startTime; } else { pmsInfo.TimeFrom = nowDate; } List<PaymentUDMealState_pms_Info> pmsList = _ipumsBL.SearchMealRecords(pmsInfo); if (pmsList != null && pmsList.Count > 0) { ////補全一個星期 //int weekIndex = GetWeekIndex((DateTime)(pmsList[0].pms_dStartDate)); //if (lastIndex == 0) //{ // lastIndex = weekIndex - 1; //} //else //{ // lastIndex = 7 - lastIndex - weekIndex; //} //for (int index = 0; index < lastIndex; index++) //{ // SetMealList mealList = new SetMealList(null); // _smlList.Add(mealList); // //this.flpMealList.Controls.Add(mealList); //} this.lblRecordAmount.Text = pmsList.Count.ToString(); pmsList = pmsList.OrderBy(p => p.pms_dStartDate).ToList(); for (int index = 0; index < pmsList.Count; index++) { SetMealInfo mealInfo = new SetMealInfo(); mealInfo.times = (DateTime)pmsList[index].pms_dStartDate; mealInfo.Breakfast = pmsList[index].pms_cBreakfast; mealInfo.Lunch = pmsList[index].pms_cLunch; mealInfo.Dinner = pmsList[index].pms_cDinner; SetMealList mealList = new SetMealList(mealInfo); _smlList.Add(mealList); //this.flpMealList.Controls.Add(mealList); } } } } else { base.MessageDialog("提示", "结束时间不能小于开始时间!"); } } catch { } finally { this.flpMealList.Visible = true; //計算最大頁數 if (_smlList != null) { _MaxPage = _smlList.Count / _PageSize; if (_smlList.Count % _PageSize != 0) { _MaxPage++; } if (_MaxPage == 0) { _PageIndex = 0; } else { if (_PageIndex == 0) { _PageIndex = 1; } } ShowList();//顯示內容 } SetUpDownBtnStatus(); } }
private void btnSpecialSave_Click(object sender, EventArgs e) { if (this._EditState == Common.DefineConstantValue.EditStateEnum.OE_Insert) { PaymentUDMealState_pms_Info info = new PaymentUDMealState_pms_Info(); info.pms_dStartDate = DateTime.Parse(dtpStartDate.Value.ToString("yyyy/MM/dd")); info.pms_dEndDate = DateTime.Parse(dtpEndDate.Value.ToString("yyyy/MM/dd")); if (info.pms_dStartDate == info.pms_dEndDate) { info.pms_dEndDate = info.pms_dEndDate.Value.AddSeconds(1); } info.pms_cBreakfast = cbxSBreakfast.Checked; info.pms_cLunch = cbxSLunch.Checked; info.pms_cDinner = cbxSDinner.Checked; info.pms_cGradeID = this._CurrentGradeID; info.pms_cAdd = this.UserInformation.usm_cUserLoginID; info.pms_cLast = this.UserInformation.usm_cUserLoginID; ReturnValueInfo returnInfo = this._IPaymentUDMealStateBL.Save(info, Common.DefineConstantValue.EditStateEnum.OE_Insert); if (returnInfo.boolValue && !returnInfo.isError) { ShowInformationMessage("新增自定义定餐记录成功。"); } else { ShowErrorMessage("新增自定义定餐记录失败。" + returnInfo.messageText); } } else if (this._EditState == Common.DefineConstantValue.EditStateEnum.OE_Update) { if (this._CurrentSettingID != null) { PaymentUDMealState_pms_Info specialMeal = this._IPaymentUDMealStateBL.DisplayRecord(new PaymentUDMealState_pms_Info() { pms_cRecordID = this._CurrentSettingID.Value }); if (specialMeal != null) { specialMeal.pms_dStartDate = DateTime.Parse(dtpStartDate.Value.ToString("yyyy/MM/dd")); specialMeal.pms_dEndDate = DateTime.Parse(dtpEndDate.Value.ToString("yyyy/MM/dd")); if (specialMeal.pms_dStartDate == specialMeal.pms_dEndDate) { specialMeal.pms_dEndDate = specialMeal.pms_dEndDate.Value.AddSeconds(1); } specialMeal.pms_cBreakfast = cbxSBreakfast.Checked; specialMeal.pms_cLunch = cbxSLunch.Checked; specialMeal.pms_cDinner = cbxSDinner.Checked; specialMeal.pms_cGradeID = this._CurrentGradeID; specialMeal.pms_cLast = this.UserInformation.usm_cUserLoginID; ReturnValueInfo returnInfo = this._IPaymentUDMealStateBL.Save(specialMeal, Common.DefineConstantValue.EditStateEnum.OE_Update); if (returnInfo.boolValue && !returnInfo.isError) { ShowInformationMessage("修改自定义定餐记录成功。"); } else { ShowErrorMessage("修改自定义定餐记录失败。" + returnInfo.messageText); } } } } loadSpecialSettings(); ResetSpecialOrderForm(); }
/// <summary> /// 加载自定义定餐设置 /// </summary> void loadSpecialSettings() { PaymentUDMealState_pms_Info info = new PaymentUDMealState_pms_Info(); info.pms_cGradeID = new Guid(lvGradeList.SelectedItems[0].SubItems[0].Text); try { List<PaymentUDMealState_pms_Info> allRecord = this._IPaymentUDMealStateBL.SearchRecords(info); if (allRecord != null) { allRecord = allRecord.OrderByDescending(x => x.pms_dLastDate).ToList(); } lvSpecialOrder.SetDataSource(allRecord); } catch (Exception Ex) { ShowErrorMessage(Ex.Message); } }
private void btnSpecialDel_Click(object sender, EventArgs e) { if (this._CurrentSettingID != null) { if (ShowQuestionMessage("是否确认需要删除此记录?")) { PaymentUDMealState_pms_Info specialMeal = new PaymentUDMealState_pms_Info() { pms_cRecordID = this._CurrentSettingID.Value }; ReturnValueInfo rvInfo = this._IPaymentUDMealStateBL.Save(specialMeal, Common.DefineConstantValue.EditStateEnum.OE_Delete); if (rvInfo.boolValue && !rvInfo.isError) { ShowInformationMessage("删除自定义定餐记录成功。"); } else { ShowErrorMessage("删除自定义定餐记录失败。" + rvInfo.messageText); } } } else { ShowWarningMessage("未选定自定义定餐记录。"); } dtpStartDate.Enabled = false; dtpEndDate.Enabled = false; cbxSBreakfast.Enabled = false; cbxSLunch.Enabled = false; cbxSDinner.Enabled = false; btnSpecialSave.Enabled = false; btnSpecialAdd.Enabled = true; btnSpecialReset.Enabled = false; btnSpecialModify.Enabled = false; btnSpecialDel.Enabled = false; loadSpecialSettings(); }
/// <summary> /// 获取自定义定餐指定餐类型的定餐情况 /// </summary> /// <param name="strMealType"></param> /// <param name="customMeal"></param> /// <returns></returns> bool GetCustomMealSettings(string strMealType, PaymentUDMealState_pms_Info customMeal) { if (customMeal == null) { return false; } Common.DefineConstantValue.MealType mealType = GetMealType(strMealType); bool? res = false; switch (mealType) { case Common.DefineConstantValue.MealType.UnKnown: break; case Common.DefineConstantValue.MealType.Breakfast: res = customMeal.pms_cBreakfast; if (res != null) res = customMeal.pms_cBreakfast.Value; else res = true; break; case Common.DefineConstantValue.MealType.Lunch: res = customMeal.pms_cLunch; if (res != null) res = customMeal.pms_cLunch.Value; else res = true; break; case Common.DefineConstantValue.MealType.Supper: res = customMeal.pms_cDinner; if (res != null) res = customMeal.pms_cDinner.Value; else res = true; break; default: break; } return res.Value; }
public List<PaymentUDMealState_pms_Info> SearchMealRecords(IModelObject itemEntity) { List<PaymentUDMealState_pms_Info> returnList = new List<PaymentUDMealState_pms_Info>(); try { _ipugsBL = MasterBLLFactory.GetBLL<IPaymentUDGeneralSettingBL>(MasterBLLFactory.PaymentUDGeneralSetting); _ipumsBL = MasterBLLFactory.GetBLL<IPaymentUDMealStateBL>(MasterBLLFactory.PaymentUDMealState); PaymentUDMealState_pms_Info searchInfo = itemEntity as PaymentUDMealState_pms_Info; DateTime startTime = DateTime.Parse(((DateTime)(searchInfo.TimeFrom)).ToString("yyy/MM/dd")); DateTime endTime = DateTime.Parse(((DateTime)(searchInfo.TimeTo)).ToString("yyyy/MM/dd")); PaymentUDGeneralSetting_pus_Info pusInfo = new PaymentUDGeneralSetting_pus_Info(); pusInfo.pus_cCardUserID = searchInfo.pms_cCardUserID; List<PaymentUDGeneralSetting_pus_Info> userList_pus = _ipugsBL.SearchRecords(pusInfo);//用戶常規設置 pusInfo.pus_cCardUserID = null; pusInfo.pus_cClassID = searchInfo.pms_cClassID; List<PaymentUDGeneralSetting_pus_Info> classList_pus = _ipugsBL.SearchRecords(pusInfo);//班級常規設置 pusInfo.pus_cClassID = null; pusInfo.pus_cGradeID = searchInfo.pms_cGradeID; List<PaymentUDGeneralSetting_pus_Info> gradeList_pus = _ipugsBL.SearchRecords(pusInfo);//年級常規設置 PaymentUDMealState_pms_Info pmsInfo = new PaymentUDMealState_pms_Info(); pmsInfo.TimeFrom = startTime; pmsInfo.TimeTo = endTime; pmsInfo.pms_cCardUserID = searchInfo.pms_cCardUserID; List<PaymentUDMealState_pms_Info> userList_pms = _ipumsBL.SearchRecords(pmsInfo);//用戶自定義設置 pmsInfo.pms_cCardUserID = null; pmsInfo.pms_cClassID = searchInfo.pms_cClassID; List<PaymentUDMealState_pms_Info> classList_pms = _ipumsBL.SearchRecords(pmsInfo);//班級自定義設置 pmsInfo.pms_cClassID = null; pmsInfo.pms_cGradeID = searchInfo.pms_cGradeID; List<PaymentUDMealState_pms_Info> gradeList_pms = _ipumsBL.SearchRecords(pmsInfo);//年級自定義設置 for (DateTime dt = startTime; dt <= endTime; dt = dt.AddDays(1)) { PaymentUDMealState_pms_Info pmsInfos = new PaymentUDMealState_pms_Info(); pmsInfos.pms_dStartDate = dt; pmsInfos.pms_dEndDate = dt; bool? user; bool? clas; bool? grade; bool? zduser; bool? zdclas; bool? zdgrade; user=GetStateStatus(0, dt, userList_pms); clas=GetStateStatus(0, dt, classList_pms); grade=GetStateStatus(0, dt, gradeList_pms); zduser=GetSettingStatus(0, GetWeeks(dt), userList_pus); zdclas=GetSettingStatus(0, GetWeeks(dt), classList_pus); zdgrade=GetSettingStatus(0, GetWeeks(dt), gradeList_pus); pmsInfos.pms_cBreakfast = (user != null ? user : zduser != null ? zduser : true) & (clas != null ? clas : zdclas != null ? zdclas : true) & (grade != null ? grade : zdgrade != null ? zdgrade : true); user = GetStateStatus(1, dt, userList_pms); clas = GetStateStatus(1, dt, classList_pms); grade = GetStateStatus(1, dt, gradeList_pms); zduser = GetSettingStatus(1, GetWeeks(dt), userList_pus); zdclas = GetSettingStatus(1, GetWeeks(dt), classList_pus); zdgrade = GetSettingStatus(1, GetWeeks(dt), gradeList_pus); pmsInfos.pms_cLunch = (user != null ? user : zduser != null ? zduser : true) & (clas != null ? clas : zdclas != null ? zdclas : true) & (grade != null ? grade : zdgrade != null ? zdgrade : true); user = GetStateStatus(2, dt, userList_pms); clas = GetStateStatus(2, dt, classList_pms); grade = GetStateStatus(2, dt, gradeList_pms); zduser = GetSettingStatus(2, GetWeeks(dt), userList_pus); zdclas = GetSettingStatus(2, GetWeeks(dt), classList_pus); zdgrade = GetSettingStatus(2, GetWeeks(dt), gradeList_pus); pmsInfos.pms_cDinner = (user != null ? user : zduser != null ? zduser : true )& (clas != null ? clas : zdclas != null ? zdclas : true )& (grade != null ? grade : zdgrade != null ? zdgrade : true); //pmsInfos.pms_cBreakfast = GetStateStatus(0, dt, userList_pms) & GetStateStatus(0, dt, classList_pms) & GetStateStatus(0, dt, gradeList_pms) & GetSettingStatus(0, GetWeeks(dt), userList_pus) & GetSettingStatus(0, GetWeeks(dt), classList_pus) & GetSettingStatus(0, GetWeeks(dt), gradeList_pus); //pmsInfos.pms_cLunch = GetStateStatus(1, dt, userList_pms) & GetStateStatus(1, dt, classList_pms) & GetStateStatus(1, dt, gradeList_pms) & GetSettingStatus(1, GetWeeks(dt), userList_pus) & GetSettingStatus(1, GetWeeks(dt), classList_pus) & GetSettingStatus(1, GetWeeks(dt), gradeList_pus); //pmsInfos.pms_cDinner = GetStateStatus(2, dt, userList_pms) & GetStateStatus(2, dt, classList_pms) & GetStateStatus(2, dt, gradeList_pms) & GetSettingStatus(2, GetWeeks(dt), userList_pus) & GetSettingStatus(2, GetWeeks(dt), classList_pus) & GetSettingStatus(2, GetWeeks(dt), gradeList_pus); //bool? zdBreakfast = GetSettingStatus(0, GetWeeks(dt), userList_pus, classList_pus, gradeList_pus); //bool? zdLunch = GetSettingStatus(1, GetWeeks(dt), userList_pus, classList_pus, gradeList_pus); //bool? zdDinner = GetSettingStatus(2, GetWeeks(dt), userList_pus, classList_pus, //gradeList_pus); //bool? Breakfast = GetStateStatus(0, dt, userList_pms, classList_pms, gradeList_pms); //bool? Lunch = GetStateStatus(1, dt, userList_pms, classList_pms, gradeList_pms); //bool? Dinner = GetStateStatus(2, dt, userList_pms, classList_pms, gradeList_pms); //bool? zdBreakfast = GetSettingStatus(0, GetWeeks(dt), userList_pus, classList_pus, gradeList_pus); //bool? zdLunch = GetSettingStatus(1, GetWeeks(dt), userList_pus, classList_pus, gradeList_pus); //bool? zdDinner = GetSettingStatus(2, GetWeeks(dt), userList_pus, classList_pus, gradeList_pus); //if (Breakfast != null) //{ // if (zdBreakfast != null) // { // if (!(bool)Breakfast) // { // pmsInfos.pms_cBreakfast = Breakfast; // } // else // { // pmsInfos.pms_cBreakfast = zdBreakfast & Breakfast; // } // } // else // { // pmsInfos.pms_cBreakfast = Breakfast; // } //} //else //{ // pmsInfos.pms_cBreakfast = zdBreakfast; //} //if (Lunch != null) //{ // if (zdLunch != null) // { // if (!(bool)Lunch) // { // pmsInfos.pms_cLunch = Lunch; // } // else // { // pmsInfos.pms_cLunch = zdLunch & Lunch; // } // } // else // { // pmsInfos.pms_cLunch = Lunch; // } //} //else //{ // pmsInfos.pms_cLunch = zdLunch; //} //if (Dinner != null) //{ // if (zdDinner != null) // { // if (!(bool)Dinner) // { // pmsInfos.pms_cDinner = Dinner; // } // else // { // pmsInfos.pms_cDinner = zdDinner & Dinner; // } // } // else // { // pmsInfos.pms_cDinner = Dinner; // } //} //else //{ // pmsInfos.pms_cDinner = zdDinner; //} returnList.Add(pmsInfos); } } catch { } return returnList; }
public ReturnValueInfo InsertRecord(PaymentUDMealState_pms_Info infoObject) { ReturnValueInfo returnInfo = new ReturnValueInfo(false); if (infoObject != null) { try { using (SIOTSDB_HHZXDataContext db = new SIOTSDB_HHZXDataContext()) { PaymentUDMealState_pms insertData = Common.General.CopyObjectValue<PaymentUDMealState_pms_Info, PaymentUDMealState_pms>(infoObject); db.PaymentUDMealState_pms.InsertOnSubmit(insertData); db.SubmitChanges(); returnInfo.boolValue = true; } } catch (Exception Ex) { returnInfo.messageText = Ex.Message; } } return returnInfo; }
public ReturnValueInfo UpdateRecord(PaymentUDMealState_pms_Info infoObject) { ReturnValueInfo returnInfo = new ReturnValueInfo(false); if (infoObject != null) { try { using (SIOTSDB_HHZXDataContext db = new SIOTSDB_HHZXDataContext()) { PaymentUDMealState_pms updata = db.PaymentUDMealState_pms.FirstOrDefault(t => t.pms_cRecordID == infoObject.pms_cRecordID); if (updata != null) { updata.pms_dStartDate = infoObject.pms_dStartDate; updata.pms_dEndDate = infoObject.pms_dEndDate; updata.pms_cBreakfast = infoObject.pms_cBreakfast; updata.pms_cLunch = infoObject.pms_cLunch; updata.pms_cDinner = infoObject.pms_cDinner; updata.pms_cSnack = infoObject.pms_cSnack; updata.pms_cLast = infoObject.pms_cLast; updata.pms_dLastDate = infoObject.pms_dLastDate; db.SubmitChanges(); returnInfo.boolValue = true; } } } catch (Exception Ex) { returnInfo.messageText = Ex.Message; } } return returnInfo; }