/// <summary> /// 获得创建人的工作清单 /// </summary> /// <param name="xiangxian">象限</param> /// <returns></returns> public List <JJQingdanInfo> GetGongzuoqingdan(int start, string kw, int displaynum) { List <JJQingdanInfo> list = new List <JJQingdanInfo>(); DataTable mydt = new DataTable(); string str_sql = string.Empty; //string str_sql = $"select * from jjdbrenwutaizhang.工作清单表 where 创建人='{JJLoginInfo._shiming}' and 删除=0 and 象限='{xiangxian}' order by 完成时间"; str_sql = $"select * from jjdbrenwutaizhang.工作清单表 " + $"where 名称 like '%{kw}%' and 删除=0 and 创建人='{JJLoginInfo._shiming}' " + $"and 状态<>'已处理' " + $"order by 轻重缓急,完成时间 asc " + $"limit {displaynum * (start - 1)},{displaynum}"; mydt = _mysqlhelper.ExecuteDataTable(str_sql); foreach (DataRow mydr in mydt.Rows) { JJQingdanInfo info = new JJQingdanInfo() { _renwumingcheng = mydr["名称"].ToString(), _renwuneirong = mydr["任务内容"].ToString(), _chuangjianren = mydr["创建人"].ToString(), _wanchengshijian = mydr["完成时间"].ToString(), _qingzhonghuanji = mydr["轻重缓急"].ToString(), _chuangjianshijian = mydr["创建时间"].ToString(), //_zhuangtai = mydr["状态"].ToString(), //_xiaoxiang = Convert.ToInt32(mydr["销项"].ToString()), _beizhu = mydr["备注"].ToString(), _jingyanjiaoxun = mydr["经验教训"].ToString(), }; list.Add(info); } return(list); }
/// <summary> /// 构造函数,传递进来一个清单信息 /// </summary> /// <param name="q"></param> public WFgongzuoqingdan(JJQingdanInfo q) { InitializeComponent(); mytask = q; this.StartPosition = FormStartPosition.CenterParent; rb_a.Checked = q._qingzhonghuanji.Contains("A类") ? true : false; rb_b.Checked = q._qingzhonghuanji.Contains("B类") ? true : false; rb_c.Checked = q._qingzhonghuanji.Contains("C类") ? true : false; rb_d.Checked = q._qingzhonghuanji.Contains("D类") ? true : false; tb_renwumingcheng.Text = q._renwumingcheng; dtp_wanchengshijian.Value = Convert.ToDateTime(q._wanchengshijian); tb_beizhu.Text = q._beizhu; tb_renwuneirong.Text = q._renwuneirong; foreach (RadioButton rb in groupBox2.Controls) { if (rb.Text == q._qingzhonghuanji) { rb.Checked = true; } } //判断是否为创建人打开的 //如果是创建人代开的,不显示确定按钮 if (!JJLoginInfo._shiming.Equals(q._chuangjianren)) { lbl_queding.Visible = false; } }
public List <JJQingdanInfo> GetLishiziliao() { List <JJQingdanInfo> list = new List <JJQingdanInfo>(); string str_sql = "select * from jjdbrenwutaizhang.工作清单表 where " + "状态='已处理' and 删除=0"; DataTable mydt = _mysqlhelper.ExecuteDataTable(str_sql); foreach (DataRow mydr in mydt.Rows) { JJQingdanInfo info = new JJQingdanInfo() { _qingzhonghuanji = mydr["轻重缓急"].ToString(), _renwumingcheng = mydr["名称"].ToString(), _chuangjianren = mydr["创建人"].ToString(), _wanchengshijian = mydr["完成时间"].ToString(), _xiangxian = mydr["象限"].ToString(), _chuangjianshijian = mydr["创建时间"].ToString(), _zhuangtai = mydr["状态"].ToString(), //_xiaoxiang = Convert.ToInt32(mydr["销项"].ToString()), _beizhu = mydr["备注"].ToString(), _jingyanjiaoxun = mydr["经验教训"].ToString(), }; list.Add(info); } return(list); }
public bool Xiaoxiang(JJQingdanInfo info) { string str_sql = $"update jjdbrenwutaizhang.工作清单表 set 状态='已处理',经验教训='{info._jingyanjiaoxun}' " + $"where 名称='{info._renwumingcheng}' and 创建人='{info._chuangjianren}' " + $"and 删除=0"; int num = _mysql.ExecuteNonQuery(str_sql); return(num > 0 ? true : false); }
/// <summary> /// 删除任务清单 /// </summary> /// <param name="o"></param> /// <returns></returns> public bool DeleteGongzuoqingdan(object o) { JJQingdanInfo myinfo = o as JJQingdanInfo; string str_sql = $"update jjdbrenwutaizhang.工作清单表 set 删除=1 where 名称='{myinfo._renwumingcheng}' " + $"and 创建人='{myinfo._chuangjianren}' and 删除=0"; int num = _sql.ExecuteNonQuery(str_sql); return(num > 0 ? true : false); }
/// <summary> /// 点击确定按钮时触发的时间,用于保存工作清单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void lbl_queding_Click(object sender, EventArgs e) { //先判断数据库中是否有登陆人创建的同名工作清单 string str_sql = $"select count(*) from jjdbrenwutaizhang.工作清单表 " + $"where 创建人='{JJLoginInfo._shiming}' and 名称='{tb_renwumingcheng.Text}'"; int num = Convert.ToInt32(_mysql.ExecuteScalar(str_sql)); //如果该名字已经存在并且mytask等于null,判断为窗体处于新建状态,不允许名称重复 if (num > 0 && mytask == null) { MessageBox.Show("任务名称重复!请重新输入!"); return; } //保存任务,构建一个任务对象,保存到数据库 JJQingdanInfo myrenwu = new JJQingdanInfo() { _renwumingcheng = tb_renwumingcheng.Text, _chuangjianren = JJLoginInfo._shiming, _wanchengshijian = dtp_wanchengshijian.Value.ToString("yyyy年MM月dd日 hh:mm:ss"), _renwuneirong = tb_renwuneirong.Text, _chuangjianshijian = DateTime.Now.ToString("yyyy年MM月dd日 hh:mm:ss"), _beizhu = tb_beizhu.Text, _zhuangtai = "办理中" }; if (rb_a.Checked) { myrenwu._qingzhonghuanji = "A类紧急且重要"; } if (rb_b.Checked) { myrenwu._qingzhonghuanji = "B类紧急但不重要"; } if (rb_c.Checked) { myrenwu._qingzhonghuanji = "C类不急但重要"; } if (rb_d.Checked) { myrenwu._qingzhonghuanji = "D类不急且不重要"; } //保存工作清单任务 bool b = _mycontroller.SaveGongzuoqingdan(myrenwu); if (b) { MessageBox.Show("清单已添加!"); this.DialogResult = DialogResult.OK; } }
private void lbl_queding_Click(object sender, EventArgs e) { //将心得体会更新到工作清单表中,同时销项更新为1 JJQingdanInfo info = mytask as JJQingdanInfo; info._xiaoxiang = 1; info._jingyanjiaoxun = tb_xindetihui.Text; //更新工作清单 bool b = _myc.Xiaoxiang(info); if (b) { MessageBox.Show("销项成功!"); this.DialogResult = DialogResult.OK; } }
public JJQingdanInfo GetQingdanInfo(string s) { string str_sql = $"select * from jjdbrenwutaizhang.工作清单表 where 名称='{s}' and 删除=0"; DataRow mydr = _sql.ExecuteDataRow(str_sql); JJQingdanInfo ci = new JJQingdanInfo() { _renwumingcheng = mydr["任务名称"].ToString(), _chuangjianren = mydr["创建人"].ToString(), _wanchengshijian = mydr["完成时间"].ToString(), _xiangxian = mydr["象限"].ToString(), _chuangjianshijian = mydr["创建时间"].ToString(), _zhuangtai = mydr["状态"].ToString(), }; return(ci); }
/// <summary> /// 新建工作清单 /// </summary> /// <returns></returns> public bool SaveGongzuoqingdan(JJQingdanInfo renwu) { //先删除任务 string str_sql = $"delete from jjdbrenwutaizhang.工作清单表 where 创建人='{renwu._chuangjianren}' " + $"and 名称='{renwu._renwumingcheng}' and 删除=0"; _mysqlhelper.ExecuteNonQuery(str_sql); //保存任务 str_sql = $"insert into jjdbrenwutaizhang.工作清单表(名称,轻重缓急,完成时间,备注,任务内容,创建时间,创建人,删除,状态) " + $"values('{renwu._renwumingcheng}','{renwu._qingzhonghuanji}','{renwu._wanchengshijian}','{renwu._beizhu}'," + $"'{renwu._renwuneirong}','{renwu._chuangjianshijian}','{renwu._chuangjianren}',0,'{renwu._zhuangtai}')"; int num = _mysqlhelper.ExecuteNonQuery(str_sql); //返回值 return(num > 0 ? true : false); }
private void 编辑ToolStripMenuItem_Click(object sender, EventArgs e) { //获得按钮所在的contextmenustrip //获得选中行,构造一个清单info var mydr = dgv_right.CurrentRow; JJQingdanInfo myqi = new JJQingdanInfo() { _renwumingcheng = mydr.Cells["任务名称"].Value.ToString(), _xiangxian = mydr.Cells["象限"].Value.ToString(), _wanchengshijian = mydr.Cells["完成时间"].Value.ToString() }; //构造一个wfgongzuoqingdan WFgongzuoqingdan mywin = new WFgongzuoqingdan(myqi); if (mywin.ShowDialog() == DialogResult.OK) { //更新任务内容 UCmain_Load(null, null); } }
public UCMessage(object o) { InitializeComponent(); this.Dock = DockStyle.Top; task = o; if (o is JJQingdanInfo)//如果是工作清单 { JJQingdanInfo info = o as JJQingdanInfo; //在uc上显示 象限 名称 完成时间 this.lbl_leixing.Text = Regex.Match(info._xiangxian, @".类").Value; this.lbl_xiangxian.Text = info._xiangxian; this.lbl_mingcheng.Text = info._renwumingcheng; this.lbl_shijian.Text = Convert.ToDateTime(info._wanchengshijian).ToString("yyyy-MM-dd"); //获得当前时间 //计算完成时间和现在的差 DateTime dt0 = Convert.ToDateTime(info._wanchengshijian); DateTime dt = DateTime.Now; TimeSpan ts = dt0.Subtract(dt); //如果当前时间超过完成时间显示红点,如果完成时间比现在大不到三天显示黄点 if (dt > dt0) { pb_point.Image = Properties.Resources.redpoint; } if (dt < dt0 && dt.AddDays(3) > dt0) { pb_point.Image = Properties.Resources.yellowpoint; } } if (o is JJTongzhiInfo)//如果是通知公告 { JJTongzhiInfo info = o as JJTongzhiInfo; //不是清单关闭销项 lbl_leixing.Visible = false; pb_xiaoxiang.Visible = false; pb_shanchu.Visible = false; //如果创建人等于登陆人那么显示编辑和删除按钮 if (info._chuangjianren.Equals(JJLoginInfo._shiming)) { link_bianji.Visible = true; link_shanchu.Visible = true; } //在uc上显示 状态标题 发布时间 lbl_xiangxian.Text = string.Empty; this.lbl_shijian.Text = Convert.ToDateTime(info._shixian).ToString("yyyy-MM-dd"); if (info._zhuangtai.Equals("未读")) { this.lbl_mingcheng.Font = new System.Drawing.Font(this.Font.Name, 9, FontStyle.Bold); } this.lbl_mingcheng.Text = info._biaoti; this.lbl_shijian.Text = Convert.ToDateTime(info._fabushijian).ToString("yyyy-MM-dd"); //判断轻重缓急,如果是紧急,任务显示红色,如果是普通,正常显示为黑色 if (info._qingzhonghuanji.Equals("紧急")) { lbl_mingcheng.ForeColor = Color.Red; } } if (o is JJTaskInfo)//如果是四大任务直以 { //不是清单关闭销项 pb_xiaoxiang.Visible = false; pb_shanchu.Visible = false; JJTaskInfo info = o as JJTaskInfo; string leixing = string.Empty; if (info._leixing.Equals("请休假单")) { leixing = "假单"; //请假单时间赋值为终止时间 string end_time = Regex.Split(info._qizhishijian, @"\|")[1]; this.lbl_shijian.Text = Convert.ToDateTime(end_time).ToString("yyyy-MM-dd"); this.lbl_mingcheng.Text = info._shiyou; } else if (info._leixing.Equals("OKR事项")) { leixing = "OKR"; this.lbl_shijian.Visible = false; this.lbl_mingcheng.Text = info._mingcheng; } else if (info._leixing.Equals("常规事项")) { leixing = "事务"; this.lbl_shijian.Text = Convert.ToDateTime(info._shixian).ToString("yyyy-MM-dd"); this.lbl_mingcheng.Text = info._mingcheng; } else if (info._leixing.Equals("意见建议")) { leixing = "建言"; this.lbl_shijian.Visible = false; this.lbl_mingcheng.Text = info._biaoti; } if (info._zhuangtai.Equals("未读")) { lbl_zhuangtai.Text = info._zhuangtai; lbl_zhuangtai.Visible = true; } lbl_leixing.Text = leixing; lbl_leixing.Visible = true; this.lbl_xiangxian.Text = info._jinjichengdu; this.lbl_mingcheng.TextAlign = ContentAlignment.MiddleLeft; //判断紧急程度,如果是紧急,任务显示红色,如果是普通,正常显示为黑色 if (info._jinjichengdu.Equals("紧急")) { lbl_mingcheng.ForeColor = Color.Red; } try { this.lbl_shijian.Text = Convert.ToDateTime(info._shixian).ToString("yyyy-MM-dd"); } catch { } } }
/// <summary> /// 点击名称时触发的事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void label2_Click(object sender, EventArgs e) { //判断uc的类型,工作清单,通知公告,待办任务 if (task is JJTaskInfo) { var myti = task as JJTaskInfo; //如果myti的状态是未读,就把状态变成未处理,然后让信封消失 if (myti._zhuangtai.Equals("未读")) { lbl_zhuangtai.Visible = false; myti._zhuangtai = "办理中"; _myc.UpdateZhuangtai(myti); } //判断未读任务数量,如果是0,要取消主界面我的任务右侧的红点 int num = JJLoginInfo.GetWeiduTaskNum(); if (num > 0) { (this.ParentForm as Form1).lbl_newtask.Visible = true; (this.ParentForm as Form1).lbl_newtask.Text = $"{num}"; } else { (this.ParentForm as Form1).lbl_newtask.Visible = false; } //在这里,不能直接使用转换后的task,因为信息不完整,应当根据类型和名称获得状态为“保存的”taskinfo JJTaskInfo info0 = task as JJTaskInfo; JJTaskInfo info = GetBaocunTask(info0); Form mywin = null; if (info._leixing.Equals("OKR事项")) { mywin = new WFokrshixiang(info) { StartPosition = FormStartPosition.CenterParent }; } else if (info._leixing.Equals("常规事项")) { mywin = new WFchangguishixiang(info) { StartPosition = FormStartPosition.CenterParent }; } else if (info._leixing.Equals("请休假单")) { mywin = new WFqingxiujiadan(info) { StartPosition = FormStartPosition.CenterParent }; } else if (info._leixing.Equals("意见建议")) { mywin = new WFyijianjianyi(info) { StartPosition = FormStartPosition.CenterParent }; } if (mywin.ShowDialog() == DialogResult.OK) { //刷新数据 JJMethod.a_shuaxinzhuye(null, null); } } //如果是通知公告类型 if (task is JJTongzhiInfo) { //将该任务的状态变为已读,,字体从粗体变为常规 this.lbl_mingcheng.Font = new System.Drawing.Font(this.Font.Name, 9, FontStyle.Regular); JJTongzhiInfo info = task as JJTongzhiInfo; _myc.Yidu(info);//将状态从未读变为已读 WinFormTongzhi mywin = new WinFormTongzhi(info) { StartPosition = FormStartPosition.CenterParent }; if (mywin.ShowDialog() == DialogResult.OK) { JJMethod.a_shuaxinzhuye(null, null); } //WFtongzhigonggao mywin = new WFtongzhigonggao(info); //if (mywin.ShowDialog() == DialogResult.OK) //{ // //刷新数据 // _updatemaindata(null, null); //} } //如果是工作清单类型 if (task is JJQingdanInfo) { JJQingdanInfo ci = task as JJQingdanInfo; WFgongzuoqingdan mywin = new WFgongzuoqingdan(ci) { StartPosition = FormStartPosition.CenterParent }; if (mywin.ShowDialog() == DialogResult.OK) { //刷新数据 JJMethod.a_shuaxinzhuye(null, null); } } }
public void lbl_quanbu_Click(object sender, EventArgs e) { #region 老版本显示任务 ////更新按钮样式,选中的按钮 高亮 //foreach (Control c in tlp_button.Controls) //{ // c.BackColor = Color.Tomato; //} //lbl_quanbu.BackColor = Color.Salmon; ////清空界面首先 //panel_task.Controls.Clear(); ////获得全部任务 //string str_sql = $"select * from jjdbrenwutaizhang.任务信息表 where 状态<>'已删除' and (办理人员='{JJLoginInfo._shiming}' " + // $"or 创建人='{JJLoginInfo._shiming}' or 审核人员='{JJLoginInfo._shiming}' or 反馈对象='{JJLoginInfo._shiming}')"; //var list = _mycontroller.GetTaskinfo(str_sql); ////构造ucteakmsg //foreach (JJTaskInfo ti in list) //{ // UCTaskmsg myuc = new UCTaskmsg(ti); // myuc.a = () => { splitContainer1.Panel2Collapsed = false; }; // myuc._closepanel = () => { splitContainer1.Panel2Collapsed = true; }; // myuc._updatedata = () => { // //获得当前显示的数据 // string data = string.Empty; // foreach (Control c in tlp_button.Controls) // { // if (c.BackColor==Color.Salmon) // { // data = c.Text; // } // } // //模拟不同的按钮点击事件 // if (data.Equals("全部")) // { // lbl_quanbu_Click(null,null); // } // else if(data.Equals("我发起的")) // { // lbl_wofaqide_Click(null, null); // } // else if (data.Equals("我的待办")) // { // lbl_daiban_Click(null, null); // } // else if (data.Equals("我参与的")) // { // lbl_canyu_Click(null, null); // } // else if (data.Equals("已处理")) // { // lbl_chuli_Click(null, null); // } // else if (data.Equals("回收站")) // { // lbl_huishou_Click(null, null); // } // }; // myuc._p = p_taskdetail; // //添加到panel_task // panel_task.Controls.Add(myuc); //} #endregion List <object> _list_my = new List <object>(); //获得我创建的工作清单 string str_sql = $"select * from jjdbrenwutaizhang.工作清单表 " + $"where 创建人='{JJLoginInfo._shiming}'"; DataTable _mydt = _mysql.ExecuteDataTable(str_sql); foreach (DataRow dataRow in _mydt.Rows) { JJQingdanInfo _myInfo = new JJQingdanInfo() { _renwumingcheng = dataRow[""].ToString(), _qingzhonghuanji = dataRow[""].ToString(), _jingyanjiaoxun = dataRow[""].ToString(), _beizhu = dataRow[""].ToString(), _wanchengshijian = dataRow[""].ToString(), }; _list_my.Add(_myInfo); } //获得我创建的通知公告 str_sql = $"select * from jjdbrenwutaizhang.通知公告表 " + $"where 创建人='{JJLoginInfo._shiming}'"; _mydt = _mysql.ExecuteDataTable(str_sql); foreach (DataRow dataRow in _mydt.Rows) { JJTongzhiInfo _myInfo = new JJTongzhiInfo() { _biaoti = dataRow[""].ToString(), _neirongpath = dataRow[""].ToString(), _qingzhonghuanji = dataRow[""].ToString(), _yuedufanwei = dataRow[""].ToString(), }; _list_my.Add(_myInfo); } //获得我创建的任务 str_sql = $"select * from jjdbrenwutaizhang.任务信息表 " + $"where 创建人='{JJLoginInfo._shiming}'"; _mydt = _mysql.ExecuteDataTable(str_sql); foreach (DataRow dataRow in _mydt.Rows) { JJTaskInfo _myInfo = new JJTaskInfo() { _mingcheng = dataRow[""].ToString(), _leixing = dataRow[""].ToString(), _xiangqing = dataRow[""].ToString(), _shixian = dataRow[""].ToString(), _jinjichengdu = dataRow[""].ToString(), _mubiao = dataRow[""].ToString(), _chengguoji = dataRow[""].ToString(), _shenqingren = dataRow[""].ToString(), _weituoduixiang = dataRow[""].ToString(), _shenheyijian = dataRow[""].ToString(), _biaoti = dataRow[""].ToString(), _fankuiren = dataRow[""].ToString(), _fankuiduixiang = dataRow[""].ToString(), _neirong = dataRow[""].ToString(), _shiyou = dataRow[""].ToString(), _banliyijian = dataRow[""].ToString(), _banlirenyuan = dataRow[""].ToString(), _jinzhanqingkuang = dataRow[""].ToString(), _shenherenyuan = dataRow[""].ToString(), _jutiyaoqiu = dataRow[""].ToString(), _fujian = dataRow[""].ToString(), _qizhishijian = dataRow[""].ToString(), }; _list_my.Add(_myInfo); } }