340 lines
12 KiB
C#
340 lines
12 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using CommonLib.data;
|
|
using DevExpress.XtraEditors;
|
|
using CommonLib;
|
|
using Lskj.Common;
|
|
|
|
namespace Lskj.PubAccraditation
|
|
{
|
|
public partial class frmRemindSelectForm : FormBase
|
|
{
|
|
// 传入参数
|
|
public string FieldValue;
|
|
|
|
// 需要返回的数据
|
|
public string ConfirmOpers = "";
|
|
public string RemindOpers = "";
|
|
|
|
// 左侧树,表名
|
|
private string Hr_PersonSpecTab = string.Empty;
|
|
|
|
public frmRemindSelectForm()
|
|
{
|
|
InitializeComponent();
|
|
|
|
tvLeft.GetTreeView.AfterSelect += new TreeViewEventHandler(tvLeft_AfterSelect);
|
|
}
|
|
|
|
protected override void OnLoad(EventArgs e)
|
|
{
|
|
this.GetPersonSpecTabName();
|
|
this.InitTreeViewEx();
|
|
this.InitGridViewEx();
|
|
}
|
|
|
|
#region 私有方法
|
|
private void GetPersonSpecTabName()
|
|
{
|
|
string sqlValue = "select * from p_SystemTab";
|
|
DataTable dtTable = SqlHelper.ExecuteDataSet(sqlValue).Tables[0];
|
|
|
|
if (dtTable.Columns.Contains("Hr_SpecTab"))
|
|
{
|
|
Hr_PersonSpecTab = dtTable.Rows[0]["Hr_SpecTab"] + "";
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 初始化树结构
|
|
/// </summary>
|
|
private void InitTreeViewEx()
|
|
{
|
|
string treeSql = string.Empty;
|
|
if (string.IsNullOrEmpty(Hr_PersonSpecTab))
|
|
{
|
|
treeSql = "select SpeciesNo,SpeciesName from Hr_PeraonnelSpecTab";
|
|
}
|
|
else
|
|
{
|
|
treeSql = "select SpeciesNo,SpeciesName from " + Hr_PersonSpecTab;
|
|
}
|
|
PubClass.BindTree(treeSql, tvLeft.GetTreeView);
|
|
}
|
|
/// <summary>
|
|
/// 初始化表格数据
|
|
/// </summary>
|
|
private void InitGridViewEx()
|
|
{
|
|
string sqlValue = "select employeeId id,loginaccount,employeename name from P_employeeTab where sign=0";
|
|
DataTable dtTable = SqlHelper.ExecuteDataSet(sqlValue).Tables[0];
|
|
gcMain.DataSource = dtTable;
|
|
|
|
string sqlValue2 = string.Format("select comfirmOpers,remindOpers from p_baseflowOper where modid = '{0}' and keyvalue='{1}'", ModuleId, FieldValue);
|
|
DataTable dtTable2 = SqlHelper.ExecuteDataSet(sqlValue2).Tables[0];
|
|
|
|
if (dtTable2.Rows.Count > 0)
|
|
{
|
|
string comfirm = dtTable2.Rows[0]["comfirmOpers"] + "";
|
|
string remind = dtTable2.Rows[0]["remindOpers"] + "";
|
|
|
|
string loginaccount = "loginaccount";
|
|
string name = "name";
|
|
|
|
if (!string.IsNullOrEmpty(comfirm))
|
|
{
|
|
DataTable dtConfirm = new DataTable();
|
|
dtConfirm.Columns.Add(loginaccount);
|
|
dtConfirm.Columns.Add(name);
|
|
|
|
comfirm = comfirm.Replace(" ", "").Replace(",,", ",").Trim(',');
|
|
string[] comfirms = comfirm.Split(',');
|
|
for (int i = 0; i < comfirms.Length; i++)
|
|
{
|
|
DataRow row = dtConfirm.NewRow();
|
|
row[name] = comfirms[i];
|
|
dtConfirm.Rows.Add(row);
|
|
}
|
|
gcConfirm.DataSource = dtConfirm;
|
|
}
|
|
|
|
if (!string.IsNullOrEmpty(remind))
|
|
{
|
|
DataTable dtRemind = new DataTable();
|
|
dtRemind.Columns.Add(loginaccount);
|
|
dtRemind.Columns.Add(name);
|
|
|
|
remind = remind.Replace(" ", "").Replace(",,", ",").Trim(',');
|
|
string[] reminds = remind.Split(',');
|
|
for (int i = 0; i < reminds.Length; i++)
|
|
{
|
|
DataRow row = dtRemind.NewRow();
|
|
row[name] = reminds[i];
|
|
dtRemind.Rows.Add(row);
|
|
}
|
|
gcRemind.DataSource = dtRemind;
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
protected void tvLeft_AfterSelect(object sender, TreeViewEventArgs e)
|
|
{
|
|
if (e.Action == TreeViewAction.ByMouse)
|
|
{
|
|
string strWhere = " and SpeciesNo like '" + e.Node.Name + "%'";
|
|
|
|
string sqlValue = "select employeeId id,loginaccount,employeename name from P_employeeTab where sign=0 " + strWhere;
|
|
DataTable dtTable = SqlHelper.ExecuteDataSet(sqlValue).Tables[0];
|
|
gcMain.DataSource = dtTable;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加提醒人
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btnAddRemind_Click(object sender, EventArgs e)
|
|
{
|
|
int[] rows = gvMain.GetSelectedRows();
|
|
if (rows.Length == 0)
|
|
{
|
|
XtraMessageBox.Show("请选择员工.");
|
|
}
|
|
else
|
|
{
|
|
string loginaccount = "loginaccount";
|
|
string name = "name";
|
|
|
|
DataTable dtTable = gcRemind.DataSource as DataTable;
|
|
if (dtTable == null)
|
|
{
|
|
dtTable = new DataTable();
|
|
dtTable.Columns.Add(loginaccount);
|
|
dtTable.Columns.Add(name);
|
|
}
|
|
|
|
for (int i = 0; i < rows.Length; i++)
|
|
{
|
|
DataRow row = gvMain.GetDataRow(rows[i]);
|
|
|
|
if (dtTable.Rows.Cast<DataRow>().FirstOrDefault(x => (x[name] + "") == (row[name] + "")) == null)
|
|
{
|
|
DataRow newRow = dtTable.NewRow();
|
|
newRow[loginaccount] = row[loginaccount];
|
|
newRow[name] = row[name];
|
|
dtTable.Rows.Add(newRow);
|
|
}
|
|
}
|
|
gcRemind.DataSource = dtTable;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加确认人
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btnAddConfirm_Click(object sender, EventArgs e)
|
|
{
|
|
int[] rows = gvMain.GetSelectedRows();
|
|
if (rows.Length == 0)
|
|
{
|
|
XtraMessageBox.Show("请选择员工.");
|
|
}
|
|
else
|
|
{
|
|
string loginaccount = "loginaccount";
|
|
string name = "name";
|
|
|
|
DataTable dtTable = gcConfirm.DataSource as DataTable;
|
|
if (dtTable == null)
|
|
{
|
|
dtTable = new DataTable();
|
|
dtTable.Columns.Add(loginaccount);
|
|
dtTable.Columns.Add(name);
|
|
}
|
|
|
|
for (int i = 0; i < rows.Length; i++)
|
|
{
|
|
DataRow row = gvMain.GetDataRow(rows[i]);
|
|
|
|
if (dtTable.Rows.Cast<DataRow>().FirstOrDefault(x => (x[name] + "") == (row[name] + "")) == null)
|
|
{
|
|
DataRow newRow = dtTable.NewRow();
|
|
newRow[loginaccount] = row[loginaccount];
|
|
newRow[name] = row[name];
|
|
dtTable.Rows.Add(newRow);
|
|
}
|
|
}
|
|
gcConfirm.DataSource = dtTable;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除提醒人
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btnDelRemind_Click(object sender, EventArgs e)
|
|
{
|
|
int[] rows = gvRemind.GetSelectedRows();
|
|
if (rows.Length == 0)
|
|
{
|
|
XtraMessageBox.Show("请选择要删除的员工.");
|
|
}
|
|
else
|
|
{
|
|
DataTable dtTable = gcRemind.DataSource as DataTable;
|
|
|
|
if (dtTable != null)
|
|
{
|
|
for (int i = 0; i < rows.Length; i++)
|
|
{
|
|
DataRow row = gvRemind.GetDataRow(rows[i]);
|
|
|
|
DataRow selectRow = dtTable.Rows.Cast<DataRow>().FirstOrDefault(x => x["name"] + "" == row["name"] + "");
|
|
if (selectRow != null)
|
|
{
|
|
if (string.IsNullOrEmpty(selectRow["loginaccount"] + ""))
|
|
{
|
|
XtraMessageBox.Show("无法删除[" + selectRow["name"] + "]员工.");
|
|
}
|
|
else
|
|
{
|
|
dtTable.Rows.Remove(selectRow);
|
|
}
|
|
}
|
|
}
|
|
gcRemind.DataSource = dtTable;
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除确认人
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btnDelConfirm_Click(object sender, EventArgs e)
|
|
{
|
|
int[] rows = gvConfirm.GetSelectedRows();
|
|
if (rows.Length == 0)
|
|
{
|
|
XtraMessageBox.Show("请选择要删除的员工.");
|
|
}
|
|
else
|
|
{
|
|
DataTable dtTable = gcConfirm.DataSource as DataTable;
|
|
|
|
if (dtTable != null)
|
|
{
|
|
for (int i = 0; i < rows.Length; i++)
|
|
{
|
|
DataRow row = gvConfirm.GetDataRow(rows[i]);
|
|
|
|
DataRow selectRow = dtTable.Rows.Cast<DataRow>().FirstOrDefault(x => x["name"] + "" == row["name"] + "");
|
|
if (selectRow != null)
|
|
{
|
|
if (string.IsNullOrEmpty(selectRow["loginaccount"] + ""))
|
|
{
|
|
XtraMessageBox.Show("无法删除[" + selectRow["name"] + "]员工.");
|
|
}
|
|
else
|
|
{
|
|
dtTable.Rows.Remove(selectRow);
|
|
}
|
|
}
|
|
}
|
|
gcConfirm.DataSource = dtTable;
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 关闭
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void frmRemindSelectForm_FormClosing(object sender, FormClosingEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
this.DialogResult = XtraMessageBox.Show("退出是否审核?", "系统提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
|
|
|
|
DataTable dtRemind = gcRemind.DataSource as DataTable;
|
|
DataTable dtConfirm = gcConfirm.DataSource as DataTable;
|
|
|
|
if (dtRemind != null && dtRemind.Rows.Count > 0)
|
|
{
|
|
foreach (DataRow item in dtRemind.Rows)
|
|
{
|
|
RemindOpers += item["name"] + ",";
|
|
}
|
|
}
|
|
|
|
if (dtConfirm != null && dtConfirm.Rows.Count > 0)
|
|
{
|
|
foreach (DataRow item in dtConfirm.Rows)
|
|
{
|
|
ConfirmOpers += item["name"] + ",";
|
|
}
|
|
}
|
|
|
|
RemindOpers = RemindOpers.TrimEnd(',');
|
|
ConfirmOpers = ConfirmOpers.TrimEnd(',');
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|