/// <summary> /// 复制事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tsCopy_Click(object sender, EventArgs e) { DateTime dtNow = dtDateTime.Value; frmCopyShowPlan frm = new frmCopyShowPlan(dataManager, txtTheter.Text); if (frm.ShowDialog() == DialogResult.OK) { //数组保存顺序: //(0)被复制信息的日期 //(1)被复制信息的影厅(null表示复制全部影厅) //(2)目标日期 //(3)目标影厅(null表示复制全部影厅) string[] str = frm.GetStr; if (str[0] == str[2] || spPanShowPlan.IsSave == true) { try { //检查是否符合复制的要求 try { dataManager.CheckCopy(str); } catch (Exception info) { if (info.Message.EndsWith("?") == true) { if (MessageBox.Show(info.Message, "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) { return; } } else { throw new NotImplementedException(info.Message); } } string mess; if (str[1] != null && str[3] != null) { mess = string.Format("确定将日期为:{0} 的 {1} 影厅的放映计划复制到日期为:{2} 的 {3} 影厅", str[0], dataManager.DailyShowPlan.HallList.Where(P => P.HallId == str[1]).FirstOrDefault().HallName, str[2], dataManager.DailyShowPlan.HallList.Where(P => P.HallId == str[3]).FirstOrDefault().HallName); } else { mess = string.Format("确定将日期为:{0} 的 {1} 影厅的放映计划复制到日期为:{2} 的 {1} 影厅", str[0], "全部", str[2]); } if (MessageBox.Show(mess, "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) { return; } if (str[0] != str[2]) { dtDateTime.Value = Convert.ToDateTime(str[2]); } //复制放映计划 dataManager.CopyShowPlan(str); //刷新放映计划 spPanShowPlan.RefreshShowPlan(); //改变保存状态 spPanShowPlan.IsSave = false; if (str[3] != null) { spPanShowPlan.SetPage(Convert.ToInt32(str[3]) / 7 + 1); tsCopy.Enabled = true; } } catch (Exception error) { MessageBox.Show(error.Message, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { MessageBox.Show("当前日期的放映计划还没保存,不能复制!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } } }