using Gs.DevApp.Models;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using System;
using System.Data;
using System.Windows.Forms;
namespace Gs.DevApp.DevFrm.User
{
public partial class Organization : DevExpress.XtraEditors.XtraForm
{
public Organization()
{
InitializeComponent();
this.toolBarMenu1.btnAddClick += ToolBarMenu1_btnAddClick;
this.toolBarMenu1.btnEdtClick += ToolBarMenu1_btnEdtClick;
this.toolBarMenu1.btnSaveClick += ToolBarMenu1_btnSaveClick;
this.toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick;
this.toolBarMenu1.btnDelClick += ToolBarMenu1_btnDelClick1;
this.toolBarMenu1.btnEscClick += ToolBarMenu1_btnEscClick;
tlMenu.DoubleClick += TlMenu_DoubleClick;
GetTree();
UtilityHelper.SetFont(panel1);
}
private void TlMenu_DoubleClick(object sender, EventArgs e)
{
TreeNode clickedNode = tlMenu.SelectedNode;
if (clickedNode.FirstNode == null)
{
string rowGuid = clickedNode.Name.ToString();
GetModel(rowGuid, false, 999);
}
}
///
/// 取消事件
///
///
///
private void ToolBarMenu1_btnEscClick(object sender, EventArgs e)
{
UtilityHelper.ChangeTab(xtraTabControl1, 0);
}
///
/// 删除事件
///
///
///
private void ToolBarMenu1_btnDelClick1(object sender, EventArgs e)
{
TreeNode clickedNode = tlMenu.SelectedNode;
if (clickedNode.FirstNode != null)
return;
string rowGuid = clickedNode.Name.ToString();
if (string.IsNullOrEmpty(rowGuid))
{
ToolBox.MsgHelper.Warning("请先选择你要删除的行!");
return;
}
if (!MsgHelper.AskQuestion("你选择了【" + clickedNode.Text + "】,确定删除吗?"))
{
return;
}
var _obj = new
{
guid = rowGuid,//主建
};
string strJson = "";
try
{
strJson = UtilityHelper.HttpPost("", "Organization/DeleteModel", JsonConvert.SerializeObject(_obj));
ReturnModel _rtn = ToolBox.UtilityHelper.GetDataByJson(strJson);
if (_rtn.rtnCode > 0) { GetTree(); }
ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
///
/// 刷新事件
///
///
///
private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e)
{
UtilityHelper.ChangeTab(xtraTabControl1, 0);
GetTree();
}
///
/// 修改事件
///
///
///
private void ToolBarMenu1_btnEdtClick(object sender, EventArgs e)
{
TreeNode clickedNode = tlMenu.SelectedNode;
if (clickedNode.FirstNode != null)
return;
string rowGuid = clickedNode.Name.ToString();
if (string.IsNullOrEmpty(rowGuid))
{
ToolBox.MsgHelper.Warning("请先选择你要操作的行!");
return;
}
GetModel(rowGuid, true, 1);
}
///
/// 新增事件
///
///
///
private void ToolBarMenu1_btnAddClick(object sender, EventArgs e)
{
UtilityHelper.ChangeTab(xtraTabControl1, 1);
lbGuid.Text = "";
UtilityHelper.CleanValue(this.panel1.Controls, true);
}
///
/// 保存事件
///
///
///
private void ToolBarMenu1_btnSaveClick(object sender, EventArgs e)
{
toolBarMenu1.isSetBtn = false;
if (string.IsNullOrEmpty(txt_factory.Text.Trim()))
{
Gs.DevApp.ToolBox.MsgHelper.Warning("名称不能为空!");
txt_factory.Focus();
return;
}
if (string.IsNullOrEmpty(txt_name.Text.Trim()))
{
Gs.DevApp.ToolBox.MsgHelper.Warning("名称不能为空!");
txt_name.Focus();
return;
}
if (string.IsNullOrEmpty(txt_conPeople.Text.Trim()))
{
Gs.DevApp.ToolBox.MsgHelper.Warning("联系人不能为空!");
txt_conPeople.Focus();
return;
}
if (string.IsNullOrEmpty(txt_conTel.Text.Trim()))
{
Gs.DevApp.ToolBox.MsgHelper.Warning("联系电话不能为空!");
txt_conTel.Focus();
return;
}
if (txt_status.SelectedIndex <= 0)
{
Gs.DevApp.ToolBox.MsgHelper.Warning("状态不能为空!");
txt_status.Focus();
return;
}
string _upGuid = txt_upGuid.Text.Trim().Length > 0 ? txt_upGuid.SelectedValue.ToString() : "";
var _obj = new
{
guid = lbGuid.Text.Trim(),//主建
upGuid = _upGuid,//上级的主建
name = txt_name.Text.Trim(),//名称
conPeople = txt_conPeople.Text,//联系人
conTel = txt_conPeople.Text,//联系电话
status = txt_status.SelectedIndex,//状态
};
string strJson = "";
try
{
strJson = UtilityHelper.HttpPost("", "Organization/EditModel", JsonConvert.SerializeObject(_obj));
ReturnModel _rtn = ToolBox.UtilityHelper.GetDataByJson(strJson);
ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
if (_rtn.rtnCode > 0)
{
lbGuid.Text = _rtn.rtnData;
toolBarMenu1.isSetBtn = true;
UtilityHelper.ChangeEnable(this.panel1.Controls, false);
}
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
private void GetTree()
{
tlMenu.Nodes.Clear();
ImageList imageList = new ImageList();
imageList.Images.Add("icon1", Properties.Resources.publicfix_32x32);
imageList.Images.Add("icon2", Properties.Resources.user_16x16);
tlMenu.ImageList = imageList;
Models.PageQueryModel pgq = new Models.PageQueryModel(1, 999999, "name", "desc", "", "");
string json = JsonConvert.SerializeObject(pgq);
string strReturn = "";
try
{
strReturn = UtilityHelper.HttpPost("", "Organization/GetListPage", json);
ReturnModel dd = UtilityHelper.GetTableByJson(strReturn);
DataTable dt = dd.rtnData.list;
DataRow[] drGrp = dt.Select("upGuid=''");
DataTable dtComList = new DataTable();
dtComList.Columns.Add("guid", typeof(string));
dtComList.Columns.Add("name", typeof(string));
foreach (DataRow _dy in drGrp)
{
dtComList.Rows.Add(_dy["guid"].ToString(), _dy["name"].ToString());
TreeNode node = new TreeNode();//定义结点
node.Text = _dy["name"].ToString();//为结点赋值
node.Name = _dy["guid"].ToString();
node.ImageIndex = 0;
DataRow[] drItem = dt.Select("upGuid='" + _dy["guid"].ToString() + "'");
foreach (DataRow _dy2 in drItem)
{
TreeNode node22 = new TreeNode();//定义结点
node22.Text = _dy2["name"].ToString();//为结点赋值
node22.Name = _dy2["guid"].ToString();
node22.ImageIndex = 1;
node.Nodes.Add(node22);
}
node.ExpandAll();
tlMenu.Nodes.Add(node);
}
txt_upGuid.DataSource = dtComList;
txt_upGuid.DisplayMember = "name";
txt_upGuid.ValueMember = "guid";
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
private void GetModel(string strGuid, bool isEdit, int tabIdx)
{
if (string.IsNullOrEmpty(strGuid))
{
ToolBox.MsgHelper.Warning("请先选择你要操作的行!");
return;
}
UtilityHelper.ChangeTab(xtraTabControl1, tabIdx);
var _obj = new
{
guid = strGuid,//主建
};
string strJson = "";
try
{
strJson = UtilityHelper.HttpPost("", "Organization/GetModel", JsonConvert.SerializeObject(_obj));
ReturnModel _rtn = ToolBox.UtilityHelper.GetDataByJson(strJson);
if (_rtn.rtnCode > 0)
{
dynamic dy = _rtn.rtnData;
lbGuid.Text = strGuid;
UtilityHelper.SetValueByObj(this.panel1.Controls, dy, isEdit);
}
else
ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
}
}