public FrmLichPhatSonNew(DOLichPhatSongNew sourceLichPhatSong, DOLichPhatSongNew saveOrDeleteLichPhatSong, IPhieuFix parentFix, ReplaceType replaceType) { _bkGioPhat = null; _replaceType = replaceType; _parentFix = parentFix; _sourceLichPhatSong = sourceLichPhatSong; _saveOrDeleteLichPhatSong = saveOrDeleteLichPhatSong; if (sourceLichPhatSong == null) _replaceType = ReplaceType.NONE; Init("-2", true); }
public void SetNext() { //LockControls = false; string idT = GetIDsThu(); _doLichPhatSong = DALichPhatSongNew.I.LoadAll(-2); _rootLichPhatSong = null; _isAdd = true; btnCreateDetail.Text = "Tạo chi tiết LPS >>"; var qr = new QueryBuilder(@"select first 1 ngay_phat_song from ql_lich_phat_song_ct lpsct inner join ql_lich_phat_song lps on lps.lps_id=lpsct.lps_id where extract(weekday from ngay_phat_song) in(" + idT + ") and 1=1"); qr.add(QL_LICH_PHAT_SONG_CT.NGAY_PHAT_SONG, Operator.GreaterEqual, NgayPhatCuoi.DateTime, DbType.DateTime); qr.addID("lps." + QL_LICH_PHAT_SONG.KENH_PHAT, KenhPhat._getSelectedID()); qr.add(string.Format("extract(hour from {0})", "LPS." + QL_LICH_PHAT_SONG.GIO_PHAT_SONG), Operator.Equal, GioPhat.Time.Hour, DbType.Int32); qr.add(string.Format("extract(minute from {0})", "LPS." + QL_LICH_PHAT_SONG.GIO_PHAT_SONG), Operator.Equal, GioPhat.Time.Minute, DbType.Int32); qr.setDescOrderBy(QL_LICH_PHAT_SONG_CT.NGAY_PHAT_SONG); var ds = HelpDB.getDatabase().LoadDataSet(qr); var thus = AppCtrl.GetThuTrongTuan(ThuTrongTuan._getSelectedIDs()); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { NgayBatDau.DateTime = AppCtrl.GetNextDate((DateTime)ds.Tables[0].Rows[0][0], thus); } else NgayBatDau.DateTime = AppCtrl.GetNextDate(NgayPhatCuoi.DateTime, thus); _replaceType = ReplaceType.NONE; NgayPhatCuoi.EditValue = null; SoNgayPhat.EditValue = null; GhiChu.Text = ""; NoiDung._setSelectedID(-1); TenGoc.Text = ""; Category.Text = ""; TongTapPhat.EditValue = null; TongTapCT.EditValue = null; NuocSX._setSelectedIDs(new long[] { -1 }); NamSX.EditValue = null; TietMuc._setSelectedID(-1); PostMaster._setSelectedID(-1); ThoiLuong.Text = ""; // LockControls = false; _dsDetail.Clear(); gridControlDetail.DataSource = _dsDetail.Tables[0]; btnNext.Enabled = false; btnDelete.Enabled = false; btnCopy.Enabled = false; Title.Text = "TẠO MỚI LỊCH PHÁT SÓNG"; ColStart.Visible = false; NgayBatDau.Properties.ReadOnly = false; KenhPhat.MainCtrl.Properties.ReadOnly = false; ThuTrongTuan.Properties.ReadOnly = false; GioPhat.Properties.ReadOnly = false; _error.ClearErrors(); groupBox1.Visible = false; }
private void UpdateControls() { AppCtrl.SetInfoBox(Info, _doLichPhatSong.NGUOI_TAO, _doLichPhatSong.NGAY_TAO, _doLichPhatSong.PHONG_BAN, _doLichPhatSong.CONG_TY, _doLichPhatSong.NGUOI_CAP_NHAT, _doLichPhatSong.NGAY_CAP_NHAT); HelpPhieu.InitBtnPhieu(this, _isAdd, null, null, null, btnSave, btnDelete, btnClose); btnCreateDetail.Image = HelpImage.getImage1616("NghiepVu005.png"); btnNext.Image = HelpImage.getImage1616("btnAddNext.png"); btnCopy.Image = HelpImage.getImage1616("copy.png"); if (_isAdd == false) _rootLichPhatSong = _doLichPhatSong.Copy(); if (_doLichPhatSong.GIO_PHAT_SONG == null) GioPhat.EditValue = null; else GioPhat.EditValue = _doLichPhatSong.GIO_PHAT_SONG.Value; KenhPhat._setSelectedID(_doLichPhatSong.KENH_PHAT); HelpDate.SetDateEdit(NgayBatDau, _doLichPhatSong.NGAY_BAT_DAU); AppCtrl.SetDecimal(SoTapNgay, _doLichPhatSong.SO_TAP_NGAY); AppCtrl.SetMuitiValues(ThuTrongTuan, _doLichPhatSong.THU_TRONG_TUAN); PhatLai.EditValue = _doLichPhatSong.IS_PHAT_LAI; HienThiKhungLich.EditValue = _doLichPhatSong.HIEN_THI_TONG_TAP; GhiChu.Text = _doLichPhatSong.GHI_CHU; NoiDung._setSelectedID(_doLichPhatSong.CT_PM_ID); TenGoc.Text = _doLichPhatSong.TEN_GOC; Category.Text = _doLichPhatSong.CATEGORY; AppCtrl.SetDecimal(TongTapPhat, _doLichPhatSong.TONG_TAP); AppCtrl.SetDecimal(TongTapCT, _doLichPhatSong.TONG_TAP_CT); AppCtrl.SetMuitiValues(NuocSX, _doLichPhatSong.NUOC_SAN_XUAT); AppCtrl.SetDecimal(NamSX, _doLichPhatSong.NAM_SAN_XUAT); AppCtrl.SetDecimal(Run, _doLichPhatSong.RUN); TietMuc._setSelectedID(_doLichPhatSong.TIET_MUC); ThoiLuong.Text = _doLichPhatSong.THOI_LUONG; //LockControls = _doLichPhatSong.IS_AO == "N"; PostMaster._setSelectedID(_doLichPhatSong.POST_MASTER); HelpDate.SetDateEdit(NgayPhatCuoi, _doLichPhatSong.NGAY_PHAT_CUOI); AppCtrl.SetDecimal(SoNgayPhat, _doLichPhatSong.SO_NGAY_PHAT); ckcTapSoNull.Checked = _doLichPhatSong.IS_TAP_SO_NULL == "Y"; ckcTSLienTuc.Checked = _doLichPhatSong.IS_TS_LIEN_TUC == "Y"; CodeQC.Text = _doLichPhatSong.CODE_QC; CodeCT.Text = _doLichPhatSong.CODE_CT; TietMuc.SelectedIndexChanged += TietMuc_SelectedIndexChanged; TongTapCT.EditValueChanged += TongTapCtEditValueChanged; if (_isAdd == false) { btnCopy.Enabled = true; btnNext.Enabled = true; btnCreateDetail.Text = "Cập nhật chi tiết LPS >>"; groupBox1.Visible = true; Title.Text = "SỬA LỊCH PHÁT SÓNG" + (_doLichPhatSong.IsInsert ? " (LỊCH CHÈN)" : ""); Title.Visible = true; KenhPhat.MainCtrl.Properties.ReadOnly = true; } else if (_isAdd == null) { btnCopy.Visible = false; btnNext.Visible = false; btnCreateDetail.Visible = false; btnSearch.Visible = false; Title.Text = "XEM LỊCH PHÁT SÓNG"; if (_isDeleted) Title.Text = "LỊCH PHÁT SÓNG VỪA XÓA"; Title.Visible = true; ckcTapSoNull.Visible = false; } else { btnNext.Enabled = false; btnCopy.Enabled = false; if (_replaceType == ReplaceType.NONE) { Title.Visible = true; Title.Text = @"TẠO MỚI LỊCH PHÁT SÓNG"; } else if (_replaceType == ReplaceType.INSERT) { Title.Text = @"CHÈN LỊCH PHÁT SÓNG"; Title.Visible = true; } else if (_replaceType == ReplaceType.DELETED) { Title2.Text = @"LỊCH PHÁT SÓNG VỪA XÓA"; Title.Visible = false; } else if (_replaceType == ReplaceType.DAY_OF_WEEK) { Title.Visible = true; Title.Text = string.Format("TẠO MỚI LỊCH PHÁT SÓNG THAY THẾ VÀO THỨ {0}", AppCtrl.GetThuTrongTuanTitle(_sourceLichPhatSong.THU_TRONG_TUAN).ToUpper()); } else if (_replaceType == ReplaceType.TIME) { Title.Visible = true; if (_sourceLichPhatSong.GIO_PHAT_SONG != null) Title.Text = string.Format(@"TẠO MỚI LỊCH PHÁT SÓNG THAY THẾ VÀO GIỜ PHÁT SÓNG {0}:{1}", _sourceLichPhatSong.GIO_PHAT_SONG.Value.Hour.ToString("00"), _sourceLichPhatSong.GIO_PHAT_SONG.Value.Minute.ToString("00")); else Title.Text = string.Format(@"TẠO MỚI LỊCH PHÁT SÓNG THAY THẾ VÀO GIỜ PHÁT SÓNG"); } } Title1.Visible = !Title.Visible; Title2.Visible = !Title.Visible; Title3.Visible = !Title.Visible; if (_replaceType != ReplaceType.NONE || _doLichPhatSong.IsInsert) { NgayBatDau.Properties.ReadOnly = true; KenhPhat.MainCtrl.Properties.ReadOnly = true; ThuTrongTuan.Properties.ReadOnly = true; GioPhat.Properties.ReadOnly = true; FrmLichPhatSonNewResize(null, null); Resize += FrmLichPhatSonNewResize; } LoadBackUp(); NoiDung.MainCtrl.Properties.Buttons.Add(new EditorButton(ButtonPredefines.Glyph) { Caption = "Xem CT", Tag = "OPEN" }); NoiDung.MainCtrl.EditValueChanged += delegate { long id = NoiDung._getSelectedID(); if (id == -1) { NoiDung.MainCtrl.Properties.Buttons[1].Enabled = false; MapControls( ((DataTable) NoiDung.MainCtrl.Properties.DataSource). NewRow()); } else { NoiDung.MainCtrl.Properties.Buttons[1].Enabled = true; var view = (DataRowView) NoiDung.MainCtrl.Properties. GetDataSourceRowByKeyValue(id); if (view == null) return; MapControls(view.Row); } }; NoiDung.MainCtrl.MouseWheel += delegate(object sender, MouseEventArgs e) { if (NoiDung.MainCtrl.IsPopupOpen) return; DXMouseEventArgs.GetMouseArgs(e).Handled = true; }; NoiDung.MainCtrl.KeyDown += delegate(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down) e.Handled = true; }; }
public void SetCopy() { _doLichPhatSong.LPS_ID = -1; _doLichPhatSong.INSERT_LPS_ID = -1; _replaceType = ReplaceType.NONE; _isAdd = true; _rootLichPhatSong = null; NgayBatDau.Properties.ReadOnly = false; KenhPhat.MainCtrl.Properties.ReadOnly = false; ThuTrongTuan.Properties.ReadOnly = false; GioPhat.Properties.ReadOnly = false; _doLichPhatSong.DSDetail.AcceptChanges(); Title.Text = "TẠO LỊCH PHÁT SÓNG (COPY)"; btnCreateDetail.Text = "Tạo chi tiết LPS >>"; btnNext.Enabled = false; btnCopy.Enabled = false; Info.Enabled = false; _error.SetError(GioPhat, "Đây là lịch copy, có nên thay đổi giờ phát cho khác với lịch gốc(?)", ErrorType.Information); _error.SetIconAlignment(GioPhat, ErrorIconAlignment.MiddleRight); foreach (DataRow r in _dsDetail.Tables[0].Rows) { r[QL_LICH_PHAT_SONG_CT.LPS_CT_ID] = DBNull.Value; r[QL_LICH_PHAT_SONG_CT.LPS_ID] = DBNull.Value; } GioPhat.BackColor = Color.Pink; GioPhat.EditValueChanged += GioPhatEditValueChanged; }
private bool? Save2() { if (GetValidData() == false) return false; if (_isAdd == true) { #region Thêm mới ConfirmSaveLPSResult cfRs = ShowConfirm(); if (cfRs == ConfirmSaveLPSResult.NONE) return null; bool ok = true; if (cfRs == ConfirmSaveLPSResult.SAVE_NORMAL) { ok = _replaceType == ReplaceType.DELETED ? DALichPhatSongNew.I.UpdateDelete(_doLichPhatSong, _saveOrDeleteLichPhatSong, false) : DALichPhatSongNew.I.Update(_doLichPhatSong, _saveOrDeleteLichPhatSong, false); } else if (cfRs == ConfirmSaveLPSResult.SAVE_ARRANGE) { ok = _replaceType == ReplaceType.DELETED ? DALichPhatSongNew.I.UpdateDelete(_doLichPhatSong, _saveOrDeleteLichPhatSong, true) : DALichPhatSongNew.I.Update(_doLichPhatSong, _saveOrDeleteLichPhatSong, true); } if (ok == false) { HelpPhieuMsg.ErrorSave(this); return false; } if (_replaceType == ReplaceType.NONE) { _isAdd = false; btnNext.Enabled = true; btnCopy.Enabled = true; btnCreateDetail.Text = "Cập nhật chi tiết LPS >>"; btnDelete.Enabled = true; ColStart.VisibleIndex = 0; gridViewDetail.BestFitColumns(); Title.Text = "SỬA LỊCH PHÁT SÓNG"; groupBox1.Visible = false; HelpMsgBox.ShowNotificationMessage("Tạo lịch phát sóng mới thành công!"); } else { _noConfirm = true; ActionOK = true; HelpXtraForm.CloseFormNoConfirm(this); } #endregion } else if (_isAdd == false) { #region Sửa ConfirmSaveLPSResult cfRs; var replaceType = ReplaceType.NONE; if (_rootLichPhatSong.Compare(_doLichPhatSong) == false) { if (_rootLichPhatSong.THU_TRONG_TUAN != _doLichPhatSong.THU_TRONG_TUAN) { replaceType = ReplaceType.DAY_OF_WEEK; string oldtime = _rootLichPhatSong.GIO_PHAT_SONG == null ? "00:00" : _rootLichPhatSong.GIO_PHAT_SONG.Value.Hour.ToString("00") + ":" + _rootLichPhatSong.GIO_PHAT_SONG.Value.Minute.ToString("00"); cfRs = ConfirmSaveLPSRepalceDialog.ShowConfirm(this, "Lịch phát sóng đã thay đổi từ thứ \"" + AppCtrl.GetThuTrongTuanTitle( _rootLichPhatSong.THU_TRONG_TUAN) + " sang \"" + AppCtrl.GetThuTrongTuanTitle( _doLichPhatSong.THU_TRONG_TUAN) + "\".\nCác thứ \"" + AppCtrl.GetThuTrongTuanTitle( _rootLichPhatSong.THU_TRONG_TUAN) + "\" sẽ bị trống lịch trên vệt giờ " + oldtime + ".\nBạn có muốn lưu? "); } else if (_rootLichPhatSong.GIO_PHAT_SONG != _doLichPhatSong.GIO_PHAT_SONG) { string oldtime = _rootLichPhatSong.GIO_PHAT_SONG == null ? "00:00" : _rootLichPhatSong.GIO_PHAT_SONG.Value.Hour.ToString("00") + ":" + _rootLichPhatSong.GIO_PHAT_SONG.Value.Minute.ToString("00"); string newtime = _doLichPhatSong.GIO_PHAT_SONG == null ? "00:00" : _doLichPhatSong.GIO_PHAT_SONG.Value.Hour.ToString("00") + ":" + _doLichPhatSong.GIO_PHAT_SONG.Value.Minute.ToString("00"); replaceType = ReplaceType.TIME; cfRs = ConfirmSaveLPSRepalceDialog.ShowConfirm(this, "Lịch phát sóng đã thay đổi từ giờ phát " + oldtime + " sang " + newtime + ".\nCác thứ \"" + AppCtrl.GetThuTrongTuanTitle( _rootLichPhatSong.THU_TRONG_TUAN) + "\" sẽ bị trống lịch trên vệt giờ " + newtime + ".\nBạn có muốn lưu? "); } else cfRs = ShowConfirm(); } else cfRs = ShowConfirm(); if (cfRs == ConfirmSaveLPSResult.NONE) { return null; } if (cfRs == ConfirmSaveLPSResult.SAVE_REPLACE) { var frm = new FrmLichPhatSonNew(_rootLichPhatSong, _doLichPhatSong, _parentFix, replaceType); HelpXtraForm.ShowModalDialog(this, frm); if (frm.ActionOK == null) { HelpMsgBox.ShowNotificationMessage("Bạn chưa tạo lịch thay thế mới, lịch đang sửa vẫn chưa lưu!"); return null; } if (frm.ActionOK == false) { HelpPhieuMsg.ErrorSave(this); return false; } HelpMsgBox.ShowNotificationMessage("Đã cập nhật lịch phát sóng và tạo lịch phát sóng mới thay thế thành công!"); } else if (cfRs == ConfirmSaveLPSResult.SAVE_NORMAL) { if (DALichPhatSongNew.I.Update(_doLichPhatSong, _saveOrDeleteLichPhatSong, false) == false) { HelpPhieuMsg.ErrorSave(this); return false; } HelpMsgBox.ShowNotificationMessage("Cập lịch phát sóng thành công!"); } else if (cfRs == ConfirmSaveLPSResult.SAVE_ARRANGE) { if (DALichPhatSongNew.I.Update(_doLichPhatSong, _saveOrDeleteLichPhatSong, true) == false) { HelpPhieuMsg.ErrorSave(this); return false; } HelpMsgBox.ShowNotificationMessage("Cập lịch phát sóng thành công!"); } #endregion } foreach (DataRow r in _doLichPhatSong.DSDetail.Tables[0].Rows) { r[QL_LICH_PHAT_SONG_CT.STATE] = DBNull.Value; } if (_doLichPhatSong.NGAY_BAT_DAU != null && NgayBatDau.DateTime.Date != _doLichPhatSong.NGAY_BAT_DAU.Value.Date) { _error.SetError(NgayBatDau, "Chương trình đã tự sắp lại ngày bắt đầu so với ngày đã chọn là <" + NgayBatDau.DateTime.ToString("ddd, " + FrameworkParams.option.dateFormat) + ">", ErrorType.Information); HelpDate.SetDateEdit(NgayBatDau, _doLichPhatSong.NGAY_BAT_DAU); } HelpDate.SetDateEdit(NgayPhatCuoi, _doLichPhatSong.NGAY_PHAT_CUOI); AppCtrl.SetDecimal(SoNgayPhat, _doLichPhatSong.SO_NGAY_PHAT); _doLichPhatSong.DSDetail.AcceptChanges(); _dsDetail = _doLichPhatSong.DSDetail.Copy(); gridControlDetail.DataSource = _dsDetail.Tables[0]; _rootLichPhatSong = _doLichPhatSong.Copy(); LoadBackUp(); if (_parentFix != null) _parentFix.PLRefresh(); GioPhat.EditValueChanged -= GioPhatEditValueChanged; return true; }
private bool InitDOData(object id) { if (id is DOLichPhatSongNew) { _doLichPhatSong = id as DOLichPhatSongNew; return true; } if (!((id is Int64) || (id is string))) return false; _doLichPhatSong = DALichPhatSongNew.I.LoadAll(HelpNumber.ParseInt64(id)); if (id.ToString() == "-2") { if (_sourceLichPhatSong != null) { _doLichPhatSong.NGAY_BAT_DAU = _sourceLichPhatSong.NGAY_BAT_DAU; _doLichPhatSong.KENH_PHAT = _sourceLichPhatSong.KENH_PHAT; _doLichPhatSong.THU_TRONG_TUAN = _sourceLichPhatSong.THU_TRONG_TUAN; _doLichPhatSong.SO_TAP_NGAY = _sourceLichPhatSong.SO_TAP_NGAY; _doLichPhatSong.TONG_TAP = _sourceLichPhatSong.TONG_TAP; _doLichPhatSong.GIO_PHAT_SONG = _sourceLichPhatSong.GIO_PHAT_SONG; if (_replaceType == ReplaceType.INSERT) { _doLichPhatSong.INSERT_LPS_ID = _sourceLichPhatSong.LPS_ID; _doLichPhatSong.NGAY_PHAT_CUOI = _sourceLichPhatSong.NGAY_PHAT_CUOI; _doLichPhatSong.SO_NGAY_PHAT = _sourceLichPhatSong.SO_NGAY_PHAT; _doLichPhatSong.THOI_LUONG = _sourceLichPhatSong.THOI_LUONG; _doLichPhatSong.THOI_LUONG_NUM = _sourceLichPhatSong.THOI_LUONG_NUM; // AppCtrl.SetMuitiValues(ThuTrongTuan, sourceLichPhatSong.THU_TRONG_TUAN); for (int i = 0; i < _sourceLichPhatSong.TONG_TAP; i++) { DataRow nR = _doLichPhatSong.DSDetail.Tables[0].NewRow(); _doLichPhatSong.DSDetail.Tables[0].Rows.Add(nR); nR[QL_LICH_PHAT_SONG_CT.NGAY_PHAT_SONG] = _sourceLichPhatSong.NGAY_BAT_DAU; nR[QL_LICH_PHAT_SONG_CT.TAP_SO] = i + 1; nR[QL_LICH_PHAT_SONG_CT.THU_TRONG_TUAN] = _sourceLichPhatSong.THU_TRONG_TUAN; nR[QL_LICH_PHAT_SONG_CT.SO_TAP_NGAY] = _sourceLichPhatSong.SO_NGAY_PHAT; nR[QL_LICH_PHAT_SONG_CT.THOI_LUONG] = _sourceLichPhatSong.THOI_LUONG; nR[QL_LICH_PHAT_SONG_CT.THOI_LUONG_NUM] = _sourceLichPhatSong.THOI_LUONG_NUM; nR[QL_LICH_PHAT_SONG_CT.GIO_PHAT_SONG] = _sourceLichPhatSong.GIO_PHAT_SONG; // nR[ColThuTrongTuan.FieldName] = ThuTrongTuan.Text; } } //doLichPhatSong.IS_PHAT_LAI = sourceLichPhatSong.IS_PHAT_LAI; } else { _doLichPhatSong.SO_TAP_NGAY = 1; } } return true; }