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 CoreFS.CA06;using Pur.Entity;
using Pur.Entity.pur_orderEntiy;
using Infragistics.Win.UltraWinGrid;
using Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm.Tool;
using com.hnshituo.pur.vo;
using System.Collections;
using Infragistics.Win;
using Infragistics.Win.UltraWinEditors;
using Core.Mes.Client.Comm.Server;
namespace Pur.order
{
public partial class FrmPurOrderClause : FrmPmsBase
{
public FrmPurOrderClause()
{
InitializeComponent();
this.IsLoadUserView = true;
}
///
/// 页面加载
///
///
///
private void FrmPurOrderClause_Load(object sender, EventArgs e)
{
init();
GetPUR_ORDER_CLAUSE();
}
#region toolbar菜单按钮菜单
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "Query":
GetPUR_ORDER_CLAUSE();
break;
case "Add":
AddPUR_ORDER_CLAUSE();
break;
case "Update":
UpdPUR_ORDER_CLAUSE();
break;
case "Delete":
DelPUR_ORDER_CLAUSE();
break;
}
}
#endregion
#region toolbar响应事件
///
/// 删除
///
private void DelPUR_ORDER_CLAUSE()//作废
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowTips("请选择条款行!");
return;
}
String strCauseId = uge.GetCellValue("ClauseId").ToString().Trim();
if (String.IsNullOrEmpty(strCauseId))
{
MessageUtil.ShowTips("选择的条款行编号为空!");
return;
}
OrderClause POC = new OrderClause();
POC.DeleteName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
POC.DeleteUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
POC.DeleteTime = DateTime.Now;
POC.ClauseId = strCauseId;
POC.Validflag = "0";
if (MessageBox.Show("确定作废合同条款[" + strCauseId + "]?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
{
return;
}
CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderClauseService", "doUpdate", new object[] { POC });
if (rt.Resultcode != 0)
{
MessageUtil.ShowTips( "操作失败!" + rt.Resultmsg);
return;
}
Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("操作成功!");
GetPUR_ORDER_CLAUSE();
}
///
/// 修改
///
private void UpdPUR_ORDER_CLAUSE()
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowTips("请选择条款行!");
return;
}
String strCauseId = uge.GetCellValue("ClauseId").ToString().Trim();
if (String.IsNullOrEmpty(strCauseId))
{
MessageUtil.ShowTips("选择的条款行编号为空!");
return;
}
//校验数据
if (testValid() == false)
{
return;
}
OrderClause POC = new OrderClause();
POC.ClauseId = strCauseId;
POC.ClauseName = txt_CopClauseName.Text;
POC.ClauseDesc = txt_ClauseDesc.Text;
POC.OrderType = (txt_OrderType.Value == null ? null : txt_OrderType.Value.ToString());
POC.ClauseType = txt_ClauseType.Value.ToString();
POC.ClauseOrderBy = Convert.ToInt32(txt_ClauseOrderBy.Text.Trim());
POC.UpdateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
POC.UpdateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
POC.UpdateTime = DateTime.Now;
if (radioButton2.Checked)
POC.ClauseDefault = "0";
else
POC.ClauseDefault = "1";
if (MessageBox.Show("确定修改合同条款[" + POC.ClauseId + "]?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
{
return;
}
CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderClauseService", "doUpdate_OrderClause", new object[] { POC });
if (rt.Resultcode != 0)
{
MessageUtil.ShowTips("修改失败!" + rt.Resultmsg);
return;
}
Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("操作成功!");
GetPUR_ORDER_CLAUSE();
doActiveSelRow(ultraGrid1, "ClauseId", POC.ClauseId);
}
///
/// 查询
///
private void GetPUR_ORDER_CLAUSE()
{
clearTab();
dataTable1.Clear();
OrderClause POC = new OrderClause();
POC.ClauseId = txt_ClauseId.Text;
POC.ClauseName = txt_ClauseName.Text;
POC.ClauseType = cop_clauseType.Value.ToString().Trim();
POC.OrderType = cop_orderType.Value.ToString().Trim();
POC.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderClauseService", "find_Order", new object[] { POC, 0, 0 });
GridHelper.CopyDataToDatatable(dt,dataTable1,true);
//GridHelper.RefreshAndAutoSize(ultraGrid1);
GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid1, new UltraGridColumn[] { ultraGrid1.DisplayLayout.Bands[0].Columns["ClauseDesc"] });
}
///
/// 新增
///
private void AddPUR_ORDER_CLAUSE()
{
//校验数据
if (testValid() == false)
{
return;
}
OrderClause POC = new OrderClause();
//POC.ClauseId = txt_CopClauseId.Text;
POC.Validflag = "1";
POC.ClauseName = txt_CopClauseName.Text;
POC.ClauseDesc = txt_ClauseDesc.Text;
POC.OrderType = (txt_OrderType.Value == null ? null : txt_OrderType.Value.ToString());
POC.ClauseType = txt_ClauseType.Value.ToString().Trim();
POC.ClauseOrderBy = Convert.ToInt32(txt_ClauseOrderBy.Text.Trim());
POC.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
POC.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
POC.CreateTime = DateTime.Now;
if (radioButton2.Checked)
POC.ClauseDefault = "0";
else
POC.ClauseDefault = "1";
CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderClauseService", "insert_OrderClause", new object[] { POC });
if (rt.Resultcode != 0)
{
Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("新增失败!"+rt.Resultmsg);
return;
}
Core.Mes.Client.Comm.Tool.MessageUtil.ShowTips("新增成功!");
GetPUR_ORDER_CLAUSE();
doActiveSelRow(ultraGrid1,"ClauseName",POC.ClauseName);
}
#endregion
#region 界面事件
///
/// 点击表格行事件
///
///
///
private void ultraGrid1_ClickCell(object sender, ClickCellEventArgs e)// 点击表格行事件
{
UltraGridRow uge = e.Cell.Row;
String strClauseId = uge.GetCellValue("ClauseId").ToString().Trim();
if (String.IsNullOrEmpty(strClauseId))
{
return;
}
OrderClause orderClause = this.execute("com.hnshituo.pur.order.service.OrderClauseService", "findById", new object[] { strClauseId });
if (orderClause == null)
{
return;
}
txt_CopClauseId.Text = strClauseId;
txt_CopClauseName.Text = orderClause.ClauseName;
txt_ClauseDesc.Text = orderClause.ClauseDesc.Replace("\n", "\r\n");
txt_ClauseType.Value = orderClause.ClauseType;
txt_OrderType.Value = orderClause.OrderType;
txt_ClauseOrderBy.Text = orderClause.ClauseOrderBy.ToString().Trim();
if (orderClause.ClauseDefault == "1")
radioButton1.Checked = true;
else
radioButton2.Checked = true;
}
#endregion
#region 界面初始化
private void init()
{
//加载条款类型下拉框
DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1218" }, this.ob);
foreach (DataRow row in dt1.Rows)
{
row["baseName"] ="["+ row["memo"] + "]" + row["baseName"];
}
comm.FilComboboxAdd(txt_ClauseType, dt1, "baseCode", "baseName", "validflag NOT in ('0')", false, "全部", "");
comm.FilComboboxAdd(cop_clauseType, dt1, "baseCode", "baseName", "validflag NOT in ('0')", true, "全部", "");
cop_clauseType.SelectedIndex = 0;
//FillComboxItems(txt_ClauseType, dt1, "baseCode", "baseName", "validflag NOT in ('0')");
//加载适用合同类别
DataTable dt2 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1200" }, this.ob);
comm.FilComboboxAdd(txt_OrderType, dt2, "baseCode", "baseName", "validflag NOT in ('0')", true, "全部", "");
comm.FilComboboxAdd(cop_orderType, dt2, "baseCode", "baseName", "validflag NOT in ('0')", true, "全部", "");
cop_orderType.SelectedIndex = 0;
txt_OrderType.SelectedIndex = 0;
ultraExpandableGroupBox1.Expanded = false;
GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0], new string[] { });
}
#endregion
#region 公共函数
///
/// 激活输入当前值行数据
///
/// ultragrid
/// 列名
/// 列值
public static string doActiveSelRow(UltraGrid ug, string strColumn, string strKey)//激活行
{
try
{
if (strKey != "")
{
foreach (UltraGridRow row in ug.Rows)
{
if (row.Cells[strColumn].Text.ToString() == strKey)
{
row.Activated = true;
if (row.ChildBands != null)
row.Expanded = true;
}
}
}
return "";
}
catch (Exception ex)
{
return ex.ToString();
}
}
///
/// 获取条款分类排序
///
///
///
private void txt_ClauseType_ValueChanged(object sender, EventArgs e)// 获取条款分类排序
{
try
{
if (txt_ClauseType.SelectedIndex != -1)
{
string strBaseCode = txt_ClauseType.Value.ToString().Trim();
BaseInfo baseInfo=this.execute("com.hnshituo.pur.configure.service.BaseInfoService", "findById", new object[] { strBaseCode });
if (baseInfo != null)
{
if (String.IsNullOrEmpty(baseInfo.Memo.Trim()))
{
MessageUtil.ShowTips("未维护条款分类默认打印排序!请在基础数据表里维护!");
return;
}
txt_ClauseOrderBy.Text = baseInfo.Memo;
}
}
}
catch (Exception ex)
{
MessageUtil.ShowTips(ex.Message);
txt_ClauseOrderBy.Text="";
}
}
///
/// 验证数据的有效性
///
///
private bool testValid()//验证数据的有效性
{
if (String.IsNullOrEmpty(txt_CopClauseName.Text.Trim()))
{
MessageUtil.ShowWarning("条款名称不能为空!");
txt_CopClauseName.Focus();
return false;
}
if (String.IsNullOrEmpty(txt_ClauseDesc.Text.Trim()))
{
MessageUtil.ShowWarning("条款内容不能为空!");
txt_ClauseDesc.Focus();
return false;
}
if (txt_ClauseType.Value == null)
{
MessageUtil.ShowWarning("条款分类不能为空!");
txt_ClauseType.Focus();
return false;
}
if (txt_ClauseOrderBy.Value == null)
{
MessageUtil.ShowWarning("条款排序不能为空!");
txt_ClauseOrderBy.Focus();
return false;
}
return true;
}
///
/// 清空编辑区
///
private void clearTab()
{
txt_CopClauseId.Clear();
txt_CopClauseName.Clear();
txt_ClauseDesc.Clear();
txt_ClauseType.SelectedIndex = -1;
txt_OrderType.SelectedIndex = -1;
txt_ClauseOrderBy.Clear();
}
#endregion
}
}